From ae88196e27057210a2694daac86b55f5382a2da8 Mon Sep 17 00:00:00 2001 From: Sofia Leon Date: Fri, 8 Jan 2021 20:12:06 +0000 Subject: [PATCH 01/92] chore: add initial files for launch --- packages/google-cloud-gkehub/synth.py | 44 +++++++++++++++++++++++++++ 1 file changed, 44 insertions(+) create mode 100644 packages/google-cloud-gkehub/synth.py diff --git a/packages/google-cloud-gkehub/synth.py b/packages/google-cloud-gkehub/synth.py new file mode 100644 index 00000000000..6875fd5629a --- /dev/null +++ b/packages/google-cloud-gkehub/synth.py @@ -0,0 +1,44 @@ +# 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. +"""This script is used to synthesize generated parts of this library.""" + +import synthtool as s +import synthtool.gcp as gcp +import synthtool.languages.node as node +import subprocess +import logging + +logging.basicConfig(level=logging.DEBUG) + +# run the gapic generator +gapic = gcp.GAPICBazel() +versions = ["v1alpha2","v1beta1"] +name = 'gkehub' +for version in versions: + library = gapic.node_library( + name, + version, + bazel_target=f"//google/cloud/gkehub/{version}:file was automatically generated by BuildFileGenerator + +# This is an API workspace, having public visibility by default makes perfect sense. +package(default_visibility = [") + s.copy(library, excludes=[]) + +# Copy common templates +common_templates = gcp.CommonTemplates() +templates = common_templates.node_library( + source_location='build/src', versions=["v1alpha2","v1beta1"], default_version="v1beta1") +s.copy(templates, excludes=[]) + +node.postprocess_gapic_library() From 26a66562174c0bbb16fbca4982d67ffaccd80750 Mon Sep 17 00:00:00 2001 From: Sofia Leon Date: Fri, 8 Jan 2021 20:58:42 +0000 Subject: [PATCH 02/92] chore: add initial files for launch --- .../google-cloud-gkehub/CODE_OF_CONDUCT.md | 94 ++++++++ packages/google-cloud-gkehub/CONTRIBUTING.md | 74 +++++++ packages/google-cloud-gkehub/LICENSE | 202 ++++++++++++++++++ packages/google-cloud-gkehub/README.md | 1 + packages/google-cloud-gkehub/synth.py | 9 +- 5 files changed, 374 insertions(+), 6 deletions(-) create mode 100644 packages/google-cloud-gkehub/CODE_OF_CONDUCT.md create mode 100644 packages/google-cloud-gkehub/CONTRIBUTING.md create mode 100644 packages/google-cloud-gkehub/LICENSE create mode 100644 packages/google-cloud-gkehub/README.md diff --git a/packages/google-cloud-gkehub/CODE_OF_CONDUCT.md b/packages/google-cloud-gkehub/CODE_OF_CONDUCT.md new file mode 100644 index 00000000000..2add2547a81 --- /dev/null +++ b/packages/google-cloud-gkehub/CODE_OF_CONDUCT.md @@ -0,0 +1,94 @@ + +# Code of Conduct + +## Our Pledge + +In the interest of fostering an open and welcoming environment, we as +contributors and maintainers pledge to making participation in our project and +our community a harassment-free experience for everyone, regardless of age, body +size, disability, ethnicity, gender identity and expression, level of +experience, education, socio-economic status, nationality, personal appearance, +race, religion, or sexual identity and orientation. + +## Our Standards + +Examples of behavior that contributes to creating a positive environment +include: + +* Using welcoming and inclusive language +* Being respectful of differing viewpoints and experiences +* Gracefully accepting constructive criticism +* Focusing on what is best for the community +* Showing empathy towards other community members + +Examples of unacceptable behavior by participants include: + +* The use of sexualized language or imagery and unwelcome sexual attention or + advances +* Trolling, insulting/derogatory comments, and personal or political attacks +* Public or private harassment +* Publishing others' private information, such as a physical or electronic + address, without explicit permission +* Other conduct which could reasonably be considered inappropriate in a + professional setting + +## Our Responsibilities + +Project maintainers are responsible for clarifying the standards of acceptable +behavior and are expected to take appropriate and fair corrective action in +response to any instances of unacceptable behavior. + +Project maintainers have the right and responsibility to remove, edit, or reject +comments, commits, code, wiki edits, issues, and other contributions that are +not aligned to this Code of Conduct, or to ban temporarily or permanently any +contributor for other behaviors that they deem inappropriate, threatening, +offensive, or harmful. + +## Scope + +This Code of Conduct applies both within project spaces and in public spaces +when an individual is representing the project or its community. Examples of +representing a project or community include using an official project e-mail +address, posting via an official social media account, or acting as an appointed +representative at an online or offline event. Representation of a project may be +further defined and clarified by project maintainers. + +This Code of Conduct also applies outside the project spaces when the Project +Steward has a reasonable belief that an individual's behavior may have a +negative impact on the project or its community. + +## Conflict Resolution + +We do not believe that all conflict is bad; healthy debate and disagreement +often yield positive results. However, it is never okay to be disrespectful or +to engage in behavior that violates the project’s code of conduct. + +If you see someone violating the code of conduct, you are encouraged to address +the behavior directly with those involved. Many issues can be resolved quickly +and easily, and this gives people more control over the outcome of their +dispute. If you are unable to resolve the matter for any reason, or if the +behavior is threatening or harassing, report it. We are dedicated to providing +an environment where participants feel welcome and safe. + +Reports should be directed to *googleapis-stewards@google.com*, the +Project Steward(s) for *Google Cloud Client Libraries*. It is the Project Steward’s duty to +receive and address reported violations of the code of conduct. They will then +work with a committee consisting of representatives from the Open Source +Programs Office and the Google Open Source Strategy team. If for any reason you +are uncomfortable reaching out to the Project Steward, please email +opensource@google.com. + +We will investigate every complaint, but you may not receive a direct response. +We will use our discretion in determining when and how to follow up on reported +incidents, which may range from not taking action to permanent expulsion from +the project and project-sponsored spaces. We will notify the accused of the +report and provide them an opportunity to discuss it before any action is taken. +The identity of the reporter will be omitted from the details of the report +supplied to the accused. In potentially harmful situations, such as ongoing +harassment or threats to anyone's safety, we may take action without notice. + +## Attribution + +This Code of Conduct is adapted from the Contributor Covenant, version 1.4, +available at +https://www.contributor-covenant.org/version/1/4/code-of-conduct.html \ No newline at end of file diff --git a/packages/google-cloud-gkehub/CONTRIBUTING.md b/packages/google-cloud-gkehub/CONTRIBUTING.md new file mode 100644 index 00000000000..72c44cada5e --- /dev/null +++ b/packages/google-cloud-gkehub/CONTRIBUTING.md @@ -0,0 +1,74 @@ +# 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. [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 + +[auth]: https://cloud.google.com/docs/authentication/getting-started \ No newline at end of file diff --git a/packages/google-cloud-gkehub/LICENSE b/packages/google-cloud-gkehub/LICENSE new file mode 100644 index 00000000000..d6456956733 --- /dev/null +++ b/packages/google-cloud-gkehub/LICENSE @@ -0,0 +1,202 @@ + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. diff --git a/packages/google-cloud-gkehub/README.md b/packages/google-cloud-gkehub/README.md new file mode 100644 index 00000000000..f922950c787 --- /dev/null +++ b/packages/google-cloud-gkehub/README.md @@ -0,0 +1 @@ +Gkehub: Nodejs Client diff --git a/packages/google-cloud-gkehub/synth.py b/packages/google-cloud-gkehub/synth.py index 6875fd5629a..c74cb664f69 100644 --- a/packages/google-cloud-gkehub/synth.py +++ b/packages/google-cloud-gkehub/synth.py @@ -23,22 +23,19 @@ # run the gapic generator gapic = gcp.GAPICBazel() -versions = ["v1alpha2","v1beta1"] +versions = ["v1beta1"] name = 'gkehub' for version in versions: library = gapic.node_library( name, version, - bazel_target=f"//google/cloud/gkehub/{version}:file was automatically generated by BuildFileGenerator - -# This is an API workspace, having public visibility by default makes perfect sense. -package(default_visibility = [") + bazel_target=f"//google/cloud/gkehub/{version}:gkehub-{version}-nodejs") s.copy(library, excludes=[]) # Copy common templates common_templates = gcp.CommonTemplates() templates = common_templates.node_library( - source_location='build/src', versions=["v1alpha2","v1beta1"], default_version="v1beta1") + source_location='build/src', versions=["v1beta1"], default_version="v1beta1") s.copy(templates, excludes=[]) node.postprocess_gapic_library() From 1984a98543393c160273cea0d7541e8ffaa7978f Mon Sep 17 00:00:00 2001 From: Sofia Leon Date: Tue, 12 Jan 2021 07:36:21 +0000 Subject: [PATCH 03/92] feat!: initial stub of library --- packages/google-cloud-gkehub/.eslintignore | 6 + packages/google-cloud-gkehub/.eslintrc.json | 3 + packages/google-cloud-gkehub/.gitattributes | 4 + packages/google-cloud-gkehub/.gitignore | 14 + packages/google-cloud-gkehub/.jsdoc.js | 55 + packages/google-cloud-gkehub/.mocharc.js | 29 + packages/google-cloud-gkehub/.nycrc | 24 + packages/google-cloud-gkehub/.prettierignore | 6 + packages/google-cloud-gkehub/.prettierrc.js | 17 + .../google-cloud-gkehub/api-extractor.json | 369 + .../linkinator.config.json | 1 + packages/google-cloud-gkehub/package.json | 66 + .../cloud/gkehub/v1beta1/membership.proto | 681 + .../google-cloud-gkehub/protos/protos.d.ts | 8055 ++++++ packages/google-cloud-gkehub/protos/protos.js | 20307 ++++++++++++++++ .../google-cloud-gkehub/protos/protos.json | 2271 ++ .../google-cloud-gkehub/samples/package.json | 23 + .../google-cloud-gkehub/samples/quickstart.js | 51 + .../samples/test/quickstart.js | 50 + packages/google-cloud-gkehub/src/index.ts | 27 + .../src/v1beta1/gapic_metadata.json | 107 + .../gke_hub_membership_service_client.ts | 1622 ++ ..._hub_membership_service_client_config.json | 78 + ...gke_hub_membership_service_proto_list.json | 3 + .../google-cloud-gkehub/src/v1beta1/index.ts | 19 + packages/google-cloud-gkehub/synth.metadata | 37 + packages/google-cloud-gkehub/synth.py | 2 +- .../system-test/fixtures/sample/src/index.js | 26 + .../system-test/fixtures/sample/src/index.ts | 34 + .../system-test/install.ts | 51 + ...apic_gke_hub_membership_service_v1beta1.ts | 1747 ++ packages/google-cloud-gkehub/tsconfig.json | 19 + .../google-cloud-gkehub/webpack.config.js | 64 + 33 files changed, 35867 insertions(+), 1 deletion(-) create mode 100644 packages/google-cloud-gkehub/.eslintignore create mode 100644 packages/google-cloud-gkehub/.eslintrc.json create mode 100644 packages/google-cloud-gkehub/.gitattributes create mode 100644 packages/google-cloud-gkehub/.gitignore create mode 100644 packages/google-cloud-gkehub/.jsdoc.js create mode 100644 packages/google-cloud-gkehub/.mocharc.js create mode 100644 packages/google-cloud-gkehub/.nycrc create mode 100644 packages/google-cloud-gkehub/.prettierignore create mode 100644 packages/google-cloud-gkehub/.prettierrc.js create mode 100644 packages/google-cloud-gkehub/api-extractor.json create mode 100644 packages/google-cloud-gkehub/linkinator.config.json create mode 100644 packages/google-cloud-gkehub/package.json create mode 100644 packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1beta1/membership.proto create mode 100644 packages/google-cloud-gkehub/protos/protos.d.ts create mode 100644 packages/google-cloud-gkehub/protos/protos.js create mode 100644 packages/google-cloud-gkehub/protos/protos.json create mode 100644 packages/google-cloud-gkehub/samples/package.json create mode 100644 packages/google-cloud-gkehub/samples/quickstart.js create mode 100644 packages/google-cloud-gkehub/samples/test/quickstart.js create mode 100644 packages/google-cloud-gkehub/src/index.ts create mode 100644 packages/google-cloud-gkehub/src/v1beta1/gapic_metadata.json create mode 100644 packages/google-cloud-gkehub/src/v1beta1/gke_hub_membership_service_client.ts create mode 100644 packages/google-cloud-gkehub/src/v1beta1/gke_hub_membership_service_client_config.json create mode 100644 packages/google-cloud-gkehub/src/v1beta1/gke_hub_membership_service_proto_list.json create mode 100644 packages/google-cloud-gkehub/src/v1beta1/index.ts create mode 100644 packages/google-cloud-gkehub/synth.metadata create mode 100644 packages/google-cloud-gkehub/system-test/fixtures/sample/src/index.js create mode 100644 packages/google-cloud-gkehub/system-test/fixtures/sample/src/index.ts create mode 100644 packages/google-cloud-gkehub/system-test/install.ts create mode 100644 packages/google-cloud-gkehub/test/gapic_gke_hub_membership_service_v1beta1.ts create mode 100644 packages/google-cloud-gkehub/tsconfig.json create mode 100644 packages/google-cloud-gkehub/webpack.config.js diff --git a/packages/google-cloud-gkehub/.eslintignore b/packages/google-cloud-gkehub/.eslintignore new file mode 100644 index 00000000000..9340ad9b86d --- /dev/null +++ b/packages/google-cloud-gkehub/.eslintignore @@ -0,0 +1,6 @@ +**/node_modules +**/coverage +test/fixtures +build/ +docs/ +protos/ diff --git a/packages/google-cloud-gkehub/.eslintrc.json b/packages/google-cloud-gkehub/.eslintrc.json new file mode 100644 index 00000000000..78215349546 --- /dev/null +++ b/packages/google-cloud-gkehub/.eslintrc.json @@ -0,0 +1,3 @@ +{ + "extends": "./node_modules/gts" +} diff --git a/packages/google-cloud-gkehub/.gitattributes b/packages/google-cloud-gkehub/.gitattributes new file mode 100644 index 00000000000..33739cb74e4 --- /dev/null +++ b/packages/google-cloud-gkehub/.gitattributes @@ -0,0 +1,4 @@ +*.ts text eol=lf +*.js text eol=lf +protos/* linguist-generated +**/api-extractor.json linguist-language=JSON-with-Comments diff --git a/packages/google-cloud-gkehub/.gitignore b/packages/google-cloud-gkehub/.gitignore new file mode 100644 index 00000000000..5d32b23782f --- /dev/null +++ b/packages/google-cloud-gkehub/.gitignore @@ -0,0 +1,14 @@ +**/*.log +**/node_modules +.coverage +coverage +.nyc_output +docs/ +out/ +build/ +system-test/secrets.js +system-test/*key.json +*.lock +.DS_Store +package-lock.json +__pycache__ diff --git a/packages/google-cloud-gkehub/.jsdoc.js b/packages/google-cloud-gkehub/.jsdoc.js new file mode 100644 index 00000000000..bc12a9d7e63 --- /dev/null +++ b/packages/google-cloud-gkehub/.jsdoc.js @@ -0,0 +1,55 @@ +// 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 +// +// 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 2021 Google LLC', + includeDate: false, + sourceFiles: false, + systemName: '@google-cloud/gkehub', + theme: 'lumen', + default: { + outputSourceFiles: false + } + }, + markdown: { + idInHeadings: true + } +}; diff --git a/packages/google-cloud-gkehub/.mocharc.js b/packages/google-cloud-gkehub/.mocharc.js new file mode 100644 index 00000000000..0b600509bed --- /dev/null +++ b/packages/google-cloud-gkehub/.mocharc.js @@ -0,0 +1,29 @@ +// Copyright 2020 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +const config = { + "enable-source-maps": true, + "throw-deprecation": true, + "timeout": 10000, + "recursive": true +} +if (process.env.MOCHA_THROW_DEPRECATION === 'false') { + delete config['throw-deprecation']; +} +if (process.env.MOCHA_REPORTER) { + config.reporter = process.env.MOCHA_REPORTER; +} +if (process.env.MOCHA_REPORTER_OUTPUT) { + config['reporter-option'] = `output=${process.env.MOCHA_REPORTER_OUTPUT}`; +} +module.exports = config diff --git a/packages/google-cloud-gkehub/.nycrc b/packages/google-cloud-gkehub/.nycrc new file mode 100644 index 00000000000..b18d5472b62 --- /dev/null +++ b/packages/google-cloud-gkehub/.nycrc @@ -0,0 +1,24 @@ +{ + "report-dir": "./.coverage", + "reporter": ["text", "lcov"], + "exclude": [ + "**/*-test", + "**/.coverage", + "**/apis", + "**/benchmark", + "**/conformance", + "**/docs", + "**/samples", + "**/scripts", + "**/protos", + "**/test", + "**/*.d.ts", + ".jsdoc.js", + "**/.jsdoc.js", + "karma.conf.js", + "webpack-tests.config.js", + "webpack.config.js" + ], + "exclude-after-remap": false, + "all": true +} diff --git a/packages/google-cloud-gkehub/.prettierignore b/packages/google-cloud-gkehub/.prettierignore new file mode 100644 index 00000000000..9340ad9b86d --- /dev/null +++ b/packages/google-cloud-gkehub/.prettierignore @@ -0,0 +1,6 @@ +**/node_modules +**/coverage +test/fixtures +build/ +docs/ +protos/ diff --git a/packages/google-cloud-gkehub/.prettierrc.js b/packages/google-cloud-gkehub/.prettierrc.js new file mode 100644 index 00000000000..d1b95106f4c --- /dev/null +++ b/packages/google-cloud-gkehub/.prettierrc.js @@ -0,0 +1,17 @@ +// Copyright 2020 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// https://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +module.exports = { + ...require('gts/.prettierrc.json') +} diff --git a/packages/google-cloud-gkehub/api-extractor.json b/packages/google-cloud-gkehub/api-extractor.json new file mode 100644 index 00000000000..de228294b23 --- /dev/null +++ b/packages/google-cloud-gkehub/api-extractor.json @@ -0,0 +1,369 @@ +/** + * Config file for API Extractor. For more info, please visit: https://api-extractor.com + */ +{ + "$schema": "https://developer.microsoft.com/json-schemas/api-extractor/v7/api-extractor.schema.json", + + /** + * Optionally specifies another JSON config file that this file extends from. This provides a way for + * standard settings to be shared across multiple projects. + * + * If the path starts with "./" or "../", the path is resolved relative to the folder of the file that contains + * the "extends" field. Otherwise, the first path segment is interpreted as an NPM package name, and will be + * resolved using NodeJS require(). + * + * SUPPORTED TOKENS: none + * DEFAULT VALUE: "" + */ + // "extends": "./shared/api-extractor-base.json" + // "extends": "my-package/include/api-extractor-base.json" + + /** + * Determines the "" token that can be used with other config file settings. The project folder + * typically contains the tsconfig.json and package.json config files, but the path is user-defined. + * + * The path is resolved relative to the folder of the config file that contains the setting. + * + * The default value for "projectFolder" is the token "", which means the folder is determined by traversing + * parent folders, starting from the folder containing api-extractor.json, and stopping at the first folder + * that contains a tsconfig.json file. If a tsconfig.json file cannot be found in this way, then an error + * will be reported. + * + * SUPPORTED TOKENS: + * DEFAULT VALUE: "" + */ + // "projectFolder": "..", + + /** + * (REQUIRED) Specifies the .d.ts file to be used as the starting point for analysis. API Extractor + * analyzes the symbols exported by this module. + * + * The file extension must be ".d.ts" and not ".ts". + * + * The path is resolved relative to the folder of the config file that contains the setting; to change this, + * prepend a folder token such as "". + * + * SUPPORTED TOKENS: , , + */ + "mainEntryPointFilePath": "/protos/protos.d.ts", + + /** + * A list of NPM package names whose exports should be treated as part of this package. + * + * For example, suppose that Webpack is used to generate a distributed bundle for the project "library1", + * and another NPM package "library2" is embedded in this bundle. Some types from library2 may become part + * of the exported API for library1, but by default API Extractor would generate a .d.ts rollup that explicitly + * imports library2. To avoid this, we can specify: + * + * "bundledPackages": [ "library2" ], + * + * This would direct API Extractor to embed those types directly in the .d.ts rollup, as if they had been + * local files for library1. + */ + "bundledPackages": [ ], + + /** + * Determines how the TypeScript compiler engine will be invoked by API Extractor. + */ + "compiler": { + /** + * Specifies the path to the tsconfig.json file to be used by API Extractor when analyzing the project. + * + * The path is resolved relative to the folder of the config file that contains the setting; to change this, + * prepend a folder token such as "". + * + * Note: This setting will be ignored if "overrideTsconfig" is used. + * + * SUPPORTED TOKENS: , , + * DEFAULT VALUE: "/tsconfig.json" + */ + // "tsconfigFilePath": "/tsconfig.json", + + /** + * Provides a compiler configuration that will be used instead of reading the tsconfig.json file from disk. + * The object must conform to the TypeScript tsconfig schema: + * + * http://json.schemastore.org/tsconfig + * + * If omitted, then the tsconfig.json file will be read from the "projectFolder". + * + * DEFAULT VALUE: no overrideTsconfig section + */ + // "overrideTsconfig": { + // . . . + // } + + /** + * This option causes the compiler to be invoked with the --skipLibCheck option. This option is not recommended + * and may cause API Extractor to produce incomplete or incorrect declarations, but it may be required when + * dependencies contain declarations that are incompatible with the TypeScript engine that API Extractor uses + * for its analysis. Where possible, the underlying issue should be fixed rather than relying on skipLibCheck. + * + * DEFAULT VALUE: false + */ + // "skipLibCheck": true, + }, + + /** + * Configures how the API report file (*.api.md) will be generated. + */ + "apiReport": { + /** + * (REQUIRED) Whether to generate an API report. + */ + "enabled": true, + + /** + * The filename for the API report files. It will be combined with "reportFolder" or "reportTempFolder" to produce + * a full file path. + * + * The file extension should be ".api.md", and the string should not contain a path separator such as "\" or "/". + * + * SUPPORTED TOKENS: , + * DEFAULT VALUE: ".api.md" + */ + // "reportFileName": ".api.md", + + /** + * Specifies the folder where the API report file is written. The file name portion is determined by + * the "reportFileName" setting. + * + * The API report file is normally tracked by Git. Changes to it can be used to trigger a branch policy, + * e.g. for an API review. + * + * The path is resolved relative to the folder of the config file that contains the setting; to change this, + * prepend a folder token such as "". + * + * SUPPORTED TOKENS: , , + * DEFAULT VALUE: "/etc/" + */ + // "reportFolder": "/etc/", + + /** + * Specifies the folder where the temporary report file is written. The file name portion is determined by + * the "reportFileName" setting. + * + * After the temporary file is written to disk, it is compared with the file in the "reportFolder". + * If they are different, a production build will fail. + * + * The path is resolved relative to the folder of the config file that contains the setting; to change this, + * prepend a folder token such as "". + * + * SUPPORTED TOKENS: , , + * DEFAULT VALUE: "/temp/" + */ + // "reportTempFolder": "/temp/" + }, + + /** + * Configures how the doc model file (*.api.json) will be generated. + */ + "docModel": { + /** + * (REQUIRED) Whether to generate a doc model file. + */ + "enabled": true, + + /** + * The output path for the doc model file. The file extension should be ".api.json". + * + * The path is resolved relative to the folder of the config file that contains the setting; to change this, + * prepend a folder token such as "". + * + * SUPPORTED TOKENS: , , + * DEFAULT VALUE: "/temp/.api.json" + */ + // "apiJsonFilePath": "/temp/.api.json" + }, + + /** + * Configures how the .d.ts rollup file will be generated. + */ + "dtsRollup": { + /** + * (REQUIRED) Whether to generate the .d.ts rollup file. + */ + "enabled": true, + + /** + * Specifies the output path for a .d.ts rollup file to be generated without any trimming. + * This file will include all declarations that are exported by the main entry point. + * + * If the path is an empty string, then this file will not be written. + * + * The path is resolved relative to the folder of the config file that contains the setting; to change this, + * prepend a folder token such as "". + * + * SUPPORTED TOKENS: , , + * DEFAULT VALUE: "/dist/.d.ts" + */ + // "untrimmedFilePath": "/dist/.d.ts", + + /** + * Specifies the output path for a .d.ts rollup file to be generated with trimming for a "beta" release. + * This file will include only declarations that are marked as "@public" or "@beta". + * + * The path is resolved relative to the folder of the config file that contains the setting; to change this, + * prepend a folder token such as "". + * + * SUPPORTED TOKENS: , , + * DEFAULT VALUE: "" + */ + // "betaTrimmedFilePath": "/dist/-beta.d.ts", + + + /** + * Specifies the output path for a .d.ts rollup file to be generated with trimming for a "public" release. + * This file will include only declarations that are marked as "@public". + * + * If the path is an empty string, then this file will not be written. + * + * The path is resolved relative to the folder of the config file that contains the setting; to change this, + * prepend a folder token such as "". + * + * SUPPORTED TOKENS: , , + * DEFAULT VALUE: "" + */ + // "publicTrimmedFilePath": "/dist/-public.d.ts", + + /** + * When a declaration is trimmed, by default it will be replaced by a code comment such as + * "Excluded from this release type: exampleMember". Set "omitTrimmingComments" to true to remove the + * declaration completely. + * + * DEFAULT VALUE: false + */ + // "omitTrimmingComments": true + }, + + /** + * Configures how the tsdoc-metadata.json file will be generated. + */ + "tsdocMetadata": { + /** + * Whether to generate the tsdoc-metadata.json file. + * + * DEFAULT VALUE: true + */ + // "enabled": true, + + /** + * Specifies where the TSDoc metadata file should be written. + * + * The path is resolved relative to the folder of the config file that contains the setting; to change this, + * prepend a folder token such as "". + * + * The default value is "", which causes the path to be automatically inferred from the "tsdocMetadata", + * "typings" or "main" fields of the project's package.json. If none of these fields are set, the lookup + * falls back to "tsdoc-metadata.json" in the package folder. + * + * SUPPORTED TOKENS: , , + * DEFAULT VALUE: "" + */ + // "tsdocMetadataFilePath": "/dist/tsdoc-metadata.json" + }, + + /** + * Specifies what type of newlines API Extractor should use when writing output files. By default, the output files + * will be written with Windows-style newlines. To use POSIX-style newlines, specify "lf" instead. + * To use the OS's default newline kind, specify "os". + * + * DEFAULT VALUE: "crlf" + */ + // "newlineKind": "crlf", + + /** + * Configures how API Extractor reports error and warning messages produced during analysis. + * + * There are three sources of messages: compiler messages, API Extractor messages, and TSDoc messages. + */ + "messages": { + /** + * Configures handling of diagnostic messages reported by the TypeScript compiler engine while analyzing + * the input .d.ts files. + * + * TypeScript message identifiers start with "TS" followed by an integer. For example: "TS2551" + * + * DEFAULT VALUE: A single "default" entry with logLevel=warning. + */ + "compilerMessageReporting": { + /** + * Configures the default routing for messages that don't match an explicit rule in this table. + */ + "default": { + /** + * Specifies whether the message should be written to the the tool's output log. Note that + * the "addToApiReportFile" property may supersede this option. + * + * Possible values: "error", "warning", "none" + * + * Errors cause the build to fail and return a nonzero exit code. Warnings cause a production build fail + * and return a nonzero exit code. For a non-production build (e.g. when "api-extractor run" includes + * the "--local" option), the warning is displayed but the build will not fail. + * + * DEFAULT VALUE: "warning" + */ + "logLevel": "warning", + + /** + * When addToApiReportFile is true: If API Extractor is configured to write an API report file (.api.md), + * then the message will be written inside that file; otherwise, the message is instead logged according to + * the "logLevel" option. + * + * DEFAULT VALUE: false + */ + // "addToApiReportFile": false + }, + + // "TS2551": { + // "logLevel": "warning", + // "addToApiReportFile": true + // }, + // + // . . . + }, + + /** + * Configures handling of messages reported by API Extractor during its analysis. + * + * API Extractor message identifiers start with "ae-". For example: "ae-extra-release-tag" + * + * DEFAULT VALUE: See api-extractor-defaults.json for the complete table of extractorMessageReporting mappings + */ + "extractorMessageReporting": { + "default": { + "logLevel": "warning", + // "addToApiReportFile": false + }, + + // "ae-extra-release-tag": { + // "logLevel": "warning", + // "addToApiReportFile": true + // }, + // + // . . . + }, + + /** + * Configures handling of messages reported by the TSDoc parser when analyzing code comments. + * + * TSDoc message identifiers start with "tsdoc-". For example: "tsdoc-link-tag-unescaped-text" + * + * DEFAULT VALUE: A single "default" entry with logLevel=warning. + */ + "tsdocMessageReporting": { + "default": { + "logLevel": "warning", + // "addToApiReportFile": false + } + + // "tsdoc-link-tag-unescaped-text": { + // "logLevel": "warning", + // "addToApiReportFile": true + // }, + // + // . . . + } + } + +} diff --git a/packages/google-cloud-gkehub/linkinator.config.json b/packages/google-cloud-gkehub/linkinator.config.json new file mode 100644 index 00000000000..0947c2e0e5b --- /dev/null +++ b/packages/google-cloud-gkehub/linkinator.config.json @@ -0,0 +1 @@ +{"recurse":true,"skip":["https://codecov.io/gh/googleapis/","www.googleapis.com","img.shields.io"],"silent":true,"concurrency":10} \ No newline at end of file diff --git a/packages/google-cloud-gkehub/package.json b/packages/google-cloud-gkehub/package.json new file mode 100644 index 00000000000..b007e0c002a --- /dev/null +++ b/packages/google-cloud-gkehub/package.json @@ -0,0 +1,66 @@ +{ + "name": "@google-cloud/gke-hub", + "version": "0.1.0", + "description": "Gkehub client for Node.js", + "repository": "googleapis/nodejs-gkehub", + "license": "Apache-2.0", + "author": "Google LLC", + "main": "build/src/index.js", + "files": [ + "build/src", + "build/protos" + ], + "keywords": [ + "google apis client", + "google api client", + "google apis", + "google api", + "google", + "google cloud platform", + "google cloud", + "cloud", + "google gkehub", + "gkehub", + "gke hub membership service" + ], + "scripts": { + "clean": "gts clean", + "compile": "tsc -p . && cp -r protos build/", + "compile-protos": "compileProtos src", + "docs": "jsdoc -c .jsdoc.js", + "predocs-test": "npm run docs", + "docs-test": "linkinator docs", + "fix": "gts fix", + "lint": "gts check", + "prepare": "npm run compile-protos && npm run compile", + "system-test": "c8 mocha build/system-test", + "test": "c8 mocha build/test", + "samples-test": "cd samples/ && npm link ../ && npm test", + "prelint": "cd samples; npm link ../; npm i" + }, + "dependencies": { + "google-gax": "^2.9.2" + }, + "devDependencies": { + "@types/mocha": "^8.0.4", + "@types/node": "^14.14.10", + "@types/sinon": "^9.0.9", + "c8": "^7.3.5", + "gts": "^3.0.3", + "jsdoc": "^3.6.6", + "jsdoc-fresh": "^1.0.2", + "jsdoc-region-tag": "^1.0.6", + "linkinator": "^2.7.0", + "mocha": "^8.2.1", + "null-loader": "^4.0.1", + "pack-n-play": "^1.0.0-2", + "sinon": "^9.2.1", + "ts-loader": "^8.0.11", + "typescript": "^4.1.2", + "webpack": "^5.9.0", + "webpack-cli": "^4.2.0" + }, + "engines": { + "node": ">=10.0.0" + } +} diff --git a/packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1beta1/membership.proto b/packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1beta1/membership.proto new file mode 100644 index 00000000000..9830dd35953 --- /dev/null +++ b/packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1beta1/membership.proto @@ -0,0 +1,681 @@ +// Copyright 2020 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.cloud.gkehub.v1beta1; + +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/longrunning/operations.proto"; +import "google/protobuf/field_mask.proto"; +import "google/protobuf/timestamp.proto"; +import "google/rpc/status.proto"; + +option go_package = "google.golang.org/genproto/googleapis/cloud/gkehub/v1beta1;gkehub"; +option java_multiple_files = true; +option java_package = "com.google.cloud.gkehub.v1beta1"; + +// GKE Hub CRUD API for the Membership resource. +// The Membership service is currently only available in the global location. +service GkeHubMembershipService { + option (google.api.default_host) = "gkehub.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/cloud-platform"; + + // Lists Memberships in a given project and location. + rpc ListMemberships(ListMembershipsRequest) returns (ListMembershipsResponse) { + option (google.api.http) = { + get: "/v1beta1/{parent=projects/*/locations/*}/memberships" + }; + option (google.api.method_signature) = "parent"; + } + + // Gets details of a single Membership. + rpc GetMembership(GetMembershipRequest) returns (Membership) { + option (google.api.http) = { + get: "/v1beta1/{name=projects/*/locations/*/memberships/*}" + }; + option (google.api.method_signature) = "name"; + } + + // Adds a new Membership. + rpc CreateMembership(CreateMembershipRequest) returns (google.longrunning.Operation) { + option (google.api.http) = { + post: "/v1beta1/{parent=projects/*/locations/*}/memberships" + body: "resource" + }; + option (google.api.method_signature) = "parent,resource,membership_id"; + option (google.longrunning.operation_info) = { + response_type: "Membership" + metadata_type: "OperationMetadata" + }; + } + + // Removes a single Membership. + rpc DeleteMembership(DeleteMembershipRequest) returns (google.longrunning.Operation) { + option (google.api.http) = { + delete: "/v1beta1/{name=projects/*/locations/*/memberships/*}" + }; + option (google.api.method_signature) = "name"; + option (google.longrunning.operation_info) = { + response_type: "google.protobuf.Empty" + metadata_type: "OperationMetadata" + }; + } + + // Updates an existing Membership. + rpc UpdateMembership(UpdateMembershipRequest) returns (google.longrunning.Operation) { + option (google.api.http) = { + patch: "/v1beta1/{name=projects/*/locations/*/memberships/*}" + body: "resource" + }; + option (google.api.method_signature) = "name,resource,update_mask"; + option (google.longrunning.operation_info) = { + response_type: "Membership" + metadata_type: "OperationMetadata" + }; + } + + // Generate the manifest for deployment of GKE connect agent. + rpc GenerateConnectManifest(GenerateConnectManifestRequest) returns (GenerateConnectManifestResponse) { + option (google.api.http) = { + get: "/v1beta1/{name=projects/*/locations/*/memberships/*}:generateConnectManifest" + }; + } + + // ValidateExclusivity validates the state of exclusivity in the cluster. + // The validation does not depend on an existing Hub membership resource. + rpc ValidateExclusivity(ValidateExclusivityRequest) returns (ValidateExclusivityResponse) { + option (google.api.http) = { + get: "/v1beta1/{parent=projects/*/locations/*}/memberships:validateExclusivity" + }; + } + + // GenerateExclusivityManifest generates the manifests to update the + // exclusivity artifacts in the cluster if needed. + // Exclusivity artifacts include the membership customer resource definition + // (CRD) and the singleton membership custom resource (CR). + // Combined with ValidateExclusivity, exclusivity + // artifacts guarantee that a Kubernetes cluster is only registered to + // a single GKE Hub. + // The membership CRD is versioned, and may require conversion when the GKE + // Hub API server begins serving a newer version of the CRD and + // corresponding CR. The response will be the converted CRD and CR if there + // are any differences between the versions. + rpc GenerateExclusivityManifest(GenerateExclusivityManifestRequest) returns (GenerateExclusivityManifestResponse) { + option (google.api.http) = { + get: "/v1beta1/{name=projects/*/locations/*/memberships/*}:generateExclusivityManifest" + }; + } +} + +// Membership contains information about a member cluster. +message Membership { + option (google.api.resource) = { + type: "gkehub.googleapis.com/Membership" + pattern: "projects/{project}/locations/{location}/memberships/{membership}" + }; + + // Specifies the infrastructure type that the API server represented by + // membership is running on. We use this field to determine pricing among + // other behavior. Each GKE distribution (on-GCP, on-Prem, on-X,...) + // will set a default while Attached Clusters + // customers will specify the type. If left unset, UNSPECIFIED is the + // default. + enum InfrastructureType { + // Default value for backward compatibility. Some Hub functionality may + // require users to set this value if left unspecified. + INFRASTRUCTURE_TYPE_UNSPECIFIED = 0; + + // OnPrem specifies Memberships running on infrastructure that is owned or + // operated by customers on private infrastructure. GKE Distributions like + // GKE-OnPrem and GKE-OnBareMetal will set this value at Membership creation + // time by default. + ON_PREM = 1; + + // This value indicates the membership is running on public cloud + // infrastructure. + MULTI_CLOUD = 2; + } + + // Output only. The unique name of this domain resource in the format: + // `projects/[project_id]/locations/global/memberships/[membership_id]`. + // `membership_id` can only be set at creation time using the `membership_id` + // field in the creation request. `membership_id` must be a valid RFC 1123 + // compliant DNS label. In particular, it must be: + // 1. At most 63 characters in length + // 2. It must consist of lower case alphanumeric characters or `-` + // 3. It must start and end with an alphanumeric character + // I.e. `membership_id` must match the regex: `[a-z0-9]([-a-z0-9]*[a-z0-9])?` + // with at most 63 characters. + string name = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Optional. GCP labels for this membership. + map labels = 2 [(google.api.field_behavior) = OPTIONAL]; + + // Required. Description of this membership, limited to 63 characters. + // It must match the regex: `[a-zA-Z0-9][a-zA-Z0-9_\-\.\ ]*` + string description = 3 [(google.api.field_behavior) = REQUIRED]; + + // Type of resource represented by this Membership + oneof type { + // Optional. Endpoint information to reach this member. + MembershipEndpoint endpoint = 4 [(google.api.field_behavior) = OPTIONAL]; + } + + // Output only. State of the Membership resource. + MembershipState state = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Optional. How to identify workloads from this Membership. + // See the documentation on workload identity for more details: + // https://cloud.google.com/kubernetes-engine/docs/how-to/workload-identity + Authority authority = 9 [(google.api.field_behavior) = OPTIONAL]; + + // Output only. Timestamp for when the Membership was created. + google.protobuf.Timestamp create_time = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Timestamp for when the Membership was last updated. + google.protobuf.Timestamp update_time = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Timestamp for when the Membership was deleted. + google.protobuf.Timestamp delete_time = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Optional. An externally-generated and managed ID for this Membership. This ID may + // still be modified after creation but it is not recommended to do so. + // The ID must match the regex: `[a-zA-Z0-9][a-zA-Z0-9_\-\.]*` + // If this Membership represents a Kubernetes cluster, this value should be + // set to the UUID of the kube-system namespace object. + string external_id = 10 [(google.api.field_behavior) = OPTIONAL]; + + // Output only. For clusters using Connect, the timestamp of the most recent connection + // established with Google Cloud. This time is updated every several minutes, + // not continuously. For clusters that do not use GKE Connect, or that have + // never connected successfully, this field will be unset. + google.protobuf.Timestamp last_connection_time = 11 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Google-generated UUID for this resource. This is unique across all + // Membership resources. If a Membership resource is deleted and another + // resource with the same name is created, it gets a different unique_id. + string unique_id = 12 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Optional. Specifies the infrastructure type that the API server represented by + // membership is running on. + InfrastructureType infrastructure_type = 13 [(google.api.field_behavior) = OPTIONAL]; +} + +// MembershipEndpoint contains the information to reach a member. +message MembershipEndpoint { + // Optional. If this Membership is a Kubernetes API server hosted on GKE, this field + // will be populated and contain GKE-specific information. + GkeCluster gke_cluster = 4 [(google.api.field_behavior) = OPTIONAL]; + + // Output only. For Memberships that point to Kubernetes Endpoints, this field provides + // useful metadata. + KubernetesMetadata kubernetes_metadata = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Optional. A correctly registered cluster should have the Kubernetes resources + // applied to the clusters and settle at steady states. These resources are + // needed in order to: + // * Ensure that the cluster is exclusively registered to one and only one Hub + // Membership. + // * Propagate Workload Pool Information available in the Membership Authority + // field. + // * Ensure proper initial configuration of default Hub Features. + KubernetesResource kubernetes_resource = 6 [(google.api.field_behavior) = OPTIONAL]; +} + +// KubernetesResource contains the YAML manifests and configs for Kubernetes +// resources of the Membership in the cluster. +// Upon CreateMembership: +// - The caller should provide membership_cr_manifest if a Membership CR +// exists in the cluster. +// - The caller should provide connect_version if they wish to also install +// the Connect agent. +// - The caller should then apply resources from the successful +// GetMembership request. +// Upon UpdateMembership: +// - The caller should provide membership_cr_manifest if a Membership CR +// exists in the cluster. +// - The caller should re-apply the resources from the returned Membership. +message KubernetesResource { + // Input only. The YAML representation of the Membership CR if already exists in the + // cluster. Leave empty if no Membership CR exists. + // The CR manifest will be used to validate that the cluster has not been + // registered with another Membership. For GKE clusters, the input from the + // caller will be ignored as Hub API server will directly fetch the + // Membership CR from the cluster. + string membership_cr_manifest = 1 [(google.api.field_behavior) = INPUT_ONLY]; + + // Output only. The additional Kubernetes resources that need to be applied to the cluster + // after the membership creation and every update. + // This field is only populated in the Membership returned after the + // long-running operation of Create/UpdateMembership finished, but not in + // standalone Get/ListMembership requests. + // To get the resource manifest after the initial registration, the caller + // could make an UpdateMembership call with an empty field mask. + repeated ResourceManifest membership_resources = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The Kubernetes resources for installing GKE Connect agent. + // This field is only populated in the Membership returned after the + // long-running operation of Create/UpdateMembership finished, but not in + // standalone Get/ListMembership requests. + // To get the resource manifest after the initial registration, the caller + // could make an UpdateMembership call with an empty field mask. + repeated ResourceManifest connect_resources = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Optional. The options to generate Kubernetes resources other than the default + // value supplied by the Hub API. + // Empty or unset fields will use the default value. + ResourceOptions resource_options = 4 [(google.api.field_behavior) = OPTIONAL]; +} + +// ResourceOptions represents the supported options for generating the +// Kubernetes resources. +message ResourceOptions { + // Optional. The connect version to generate for connect_resources. If unset, default + // to the latest GKE Connect version. + // If set to a specific Connect version, the Connect resources of the + // version will be generated. If the version does not exist or is already + // out of support window, an INVALID_ARGUMENT error will be returned. + string connect_version = 1 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. Use apiextensions/v1beta1 instead of apiextensions/v1 for + // CustomResourceDefinition resource. + // This option should be set for clusters with Kubernetes apiserver version + // <1.16. + bool v1beta1_crd = 2 [(google.api.field_behavior) = OPTIONAL]; +} + +// ResourceManifest represents a Kubernetes resource to be applied to +// the cluster. +message ResourceManifest { + // YAML manifest of the resource. + string manifest = 1; + + // Specifies whether the resource provided in the manifest is cluster_scoped. + // If set to false, the assumption is that it is namespace scoped. + // This field is used for default REST mapper when applying the resource + // to a cluster. + bool cluster_scoped = 2; +} + +// GkeCluster represents a k8s cluster on GKE. +message GkeCluster { + // Immutable. Self-link of the GCP resource for the GKE cluster. + // For example: + // //container.googleapis.com/projects/my-project/locations/us-west1-a/clusters/my-cluster + // Using "zones" instead of "locations" is also valid. + // It can be at the most 1000 characters in length. + string resource_link = 1 [(google.api.field_behavior) = IMMUTABLE]; +} + +// KubernetesMetadata provides informational metadata for Memberships +// that are created from Kubernetes Endpoints (currently, these are equivalent +// to Kubernetes clusters). +message KubernetesMetadata { + // Output only. Kubernetes API server version string as reported by '/version'. + string kubernetes_api_server_version = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Node providerID as reported by the first node in the list of nodes on + // the Kubernetes endpoint. It should be noted that some Kubernetes platforms + // (like GKE-on-GCP) support zero-node clusters. For these platforms, the + // node_count will be zero and the node_provider_id will be empty. + string node_provider_id = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Node count as reported by Kubernetes nodes resources. + int32 node_count = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. vCPU count as reported by Kubernetes nodes resources. + int32 vcpu_count = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The total memory capacity as reported by the sum of all Kubernetes nodes + // resources, defined in MB. + int32 memory_mb = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The time at which these details were last updated. This update_time is + // different from the Membership-level update_time since EndpointDetails are + // updated internally for API consumers. + google.protobuf.Timestamp update_time = 100 [(google.api.field_behavior) = OUTPUT_ONLY]; +} + +// Authority encodes how Google will recognize identities from this Membership. +// A workload with a token from this oidc_issuer can call the IAM credentials +// API for the provided identity_namespace and identity_provider; the workload +// will receive a Google OAuth token that it can use for further API calls. +// See the workload identity documentation for more details: +// https://cloud.google.com/kubernetes-engine/docs/how-to/workload-identity +message Authority { + // Optional. A JWT issuer URI. + // If set, then Google will attempt OIDC discovery on this URI, and allow + // valid OIDC tokens from this issuer to authenticate within the below + // identity namespace. + // + // This can be updated from a non-empty to empty value and vice-versa. + // But cannot be changed from one non-empty value to another. + // Setting to empty will disable Workload Identity. issuer should be a valid + // URL of length < 2000 that can be parsed, and must start with https://. + string issuer = 1 [(google.api.field_behavior) = OPTIONAL]; + + // Output only. The name of the workload identity pool in which the above issuer will be + // recognized. There is a single Workload Identity Pool per Hub that is shared + // between all Memberships that belong to this Hub. For a Hub hosted in + // {PROJECT_ID}, the workload pool format is {PROJECT_ID}.hub.id.goog, + // although this is subject to change in newer versions of this API. + string workload_identity_pool = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. An identity provider that reflects this issuer in the workload identity + // pool. + string identity_provider = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; +} + +// State of the Membership resource. +message MembershipState { + // Possible states of a Membership resources. + enum Code { + // Not set. + CODE_UNSPECIFIED = 0; + + // CREATING indicates the cluster is being registered. + CREATING = 1; + + // READY indicates the cluster is registered. + READY = 2; + + // DELETING indicates that the cluster is being unregistered. + DELETING = 3; + + // UPDATING indicates the Membership is being updated. + UPDATING = 4; + + // SERVICE_UPDATING indicates the Membership is being updated by + // the Hub Service. + SERVICE_UPDATING = 5; + } + + // Output only. Code indicating the state of the Membership resource. + Code code = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Human readable description of the issue. + // This field is deprecated, and is never set by the Hub Service. + string description = 2 [deprecated = true]; + + // The last update time of this state by the controllers + // This field is deprecated, and is never set by the Hub Service. + google.protobuf.Timestamp update_time = 3 [deprecated = true]; +} + +// Request message for `GkeHubMembershipService.ListMemberships` method. +message ListMembershipsRequest { + // Required. The parent in whose context the memberships are listed. The parent value + // is in the format: `projects/[project_id]/locations/global`. + string parent = 1 [(google.api.field_behavior) = REQUIRED]; + + // Optional. When requesting a 'page' of resources, `page_size` specifies number of + // resources to return. If unspecified or set to 0, all resources will + // be returned. + int32 page_size = 2 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. Token returned by previous call to `ListMemberships` which + // specifies the position in the list from where to continue listing the + // resources. + string page_token = 3 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. Lists the Memberships that match the filter expression. A filter expression + // filters the resources listed in the response. The expression must be of + // the form ` ` where operators: `<`, `>`, `<=`, + // `>=`, + // `!=`, `=`, `:` are supported (colon `:` represents a HAS operator which is + // roughly synonymous with equality). can refer to a proto or JSON + // field, or a synthetic field. Field names can be camelCase or snake_case. + // + // Examples: + // - Filter by name: + // name = "projects/foo-proj/locations/global/membership/bar + // + // - Filter by labels: + // - Resources that have a key called `foo` + // labels.foo:* + // - Resources that have a key called `foo` whose value is `bar` + // labels.foo = bar + // + // - Filter by state: + // - Members in CREATING state. + // state = CREATING + string filter = 4 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. Field to use to sort the list. + string order_by = 5 [(google.api.field_behavior) = OPTIONAL]; +} + +// Response message for the `GkeHubMembershipService.ListMemberships` method. +message ListMembershipsResponse { + // The list of Memberships contained within the parent. + repeated Membership resources = 1; + + // A token to request the next page of resources from the + // `ListMemberships` method. The value of an empty string means that + // there are no more resources to return. + string next_page_token = 2; + + // List of locations that could not be reached while fetching this list. + repeated string unreachable = 3; +} + +// Request message for `GkeHubMembershipService.GetMembership` method. +message GetMembershipRequest { + // Required. The Membership resource name in the format: + // `projects/[project_id]/locations/global/memberships/[membership_id]` + string name = 1 [(google.api.field_behavior) = REQUIRED]; +} + +// Request message for the `GkeHubMembershipService.CreateMembership` method. +message CreateMembershipRequest { + // Required. The parent in whose context the membership is created. The parent value is + // in the format: `projects/[project_id]/locations/global`. + string parent = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. Client chosen ID for the membership. The ID must be a valid RFC 1123 + // compliant DNS label. In particular, the ID must be: + // 1. At most 63 characters in length + // 2. It must consist of lower case alphanumeric characters or `-` + // 3. It must start and end with an alphanumeric character + // I.e. ID must match the regex: `[a-z0-9]([-a-z0-9]*[a-z0-9])?` with at most + // 63 characters. + string membership_id = 2 [(google.api.field_behavior) = REQUIRED]; + + // Required. The resource to add. + Membership resource = 3 [(google.api.field_behavior) = REQUIRED]; +} + +// Request message for `GkeHubMembershipService.DeleteMembership` method. +message DeleteMembershipRequest { + // Required. The membership resource name in the format: + // `projects/[project_id]/locations/global/memberships/[membership_id]` + string name = 1 [(google.api.field_behavior) = REQUIRED]; +} + +// Request message for `GkeHubMembershipService.UpdateMembership` method. +message UpdateMembershipRequest { + // Required. The membership resource name in the format: + // `projects/[project_id]/locations/global/memberships/[membership_id]` + string name = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. Mask of fields to update. At least one field path must be specified in this + // mask. + google.protobuf.FieldMask update_mask = 2 [(google.api.field_behavior) = REQUIRED]; + + // Required. Only fields specified in update_mask are updated. + // If you specify a field in the update_mask but don't specify its value here + // that field will be deleted. + // If you are updating a map field, set the value of a key to null or empty + // string to delete the key from the map. It's not possible to update a key's + // value to the empty string. + Membership resource = 3 [(google.api.field_behavior) = REQUIRED]; +} + +// Request message for `GkeHubMembershipService.GenerateConnectManifest` +// method. +// Bes ure to follow the practice in go/gkeconnect_agent_manifest before +// making changes to the proto. +message GenerateConnectManifestRequest { + // Required. The membership resource the connect agent is associated with. + // `projects/[project_id]/locations/global/memberships/[membership_id]`. + string name = 1 [(google.api.field_behavior) = REQUIRED]; + + // Optional. The connect agent to generate manifest for. + ConnectAgent connect_agent = 2 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. The version to use for connect agent. + // If empty, the current default version will be used. + string version = 3 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. If true, generate the resources for upgrade only. Some resources + // (e.g. secrets) generated for installation will be excluded. + bool is_upgrade = 4 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. The registry to fetch connect agent image; default to + // gcr.io/gkeconnect. + string registry = 5 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. The image pull secret content for the registry, if not public. + bytes image_pull_secret_content = 6 [(google.api.field_behavior) = OPTIONAL]; +} + +// Response message for `GkeHubService.GenerateConnectManifest` +// method. +message GenerateConnectManifestResponse { + // The ordered list of Kubernetes resources that need to be applied to the + // cluster for GKE Connect agent installation/upgrade. + repeated ConnectAgentResource manifest = 1; +} + +// ConnectAgentResource represents a Kubernetes resource manifest for connect +// agent deployment. +message ConnectAgentResource { + // Kubernetes type of the resource. + TypeMeta type = 1; + + // YAML manifest of the resource. + string manifest = 2; +} + +// TypeMeta is the type information needed for content unmarshalling of the +// Kubernetes resources in the manifest. +message TypeMeta { + // Kind of the resource (e.g. Deployment). + string kind = 1; + + // APIVersion of the resource (e.g. v1). + string api_version = 2; +} + +// The information required from end users to use GKE Connect. +message ConnectAgent { + // Optional. Deprecated. Do not set. + string name = 1 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. URI of the proxy to reach gkeconnect.googleapis.com. + // The format must be in the form http(s)://{proxy_address}, + // depends on HTTP/HTTPS protocol supported by the proxy. This will direct + // connect agent's outbound traffic through a HTTP(S) proxy. + bytes proxy = 2 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. Namespace for GKE Connect agent resources. If empty, uses 'gke-connect'. + string namespace = 3 [(google.api.field_behavior) = OPTIONAL]; +} + +// The request to validate the existing state of the membership CR in the +// cluster. +message ValidateExclusivityRequest { + // Required. The desired parent collection of the membership to be created in the + // format: + // `projects/[project_id]/locations/global`. + string parent = 1 [(google.api.field_behavior) = REQUIRED]; + + // Optional. The YAML of the membership CR in the cluster. Empty if the membership + // CR does not exist. + string cr_manifest = 2 [(google.api.field_behavior) = OPTIONAL]; + + // Required. The membership name under the "name" that could be created if the + // validation succeed. The method only does validation in anticipation + // of a CreateMembership call. + string intended_membership = 3 [(google.api.field_behavior) = REQUIRED]; +} + +// The response of exclusivity artifacts validation result status. +message ValidateExclusivityResponse { + // The status.Code contains the validation result. As such, + // * OK means that exclusivity may be obtained if the manifest produced by + // GenerateExclusivityManifest can successfully be applied. + // * ALREADY_EXISTS means that the Membership CRD is already owned by another + // Hub. See status.message for more information when this occurs. + google.rpc.Status status = 1; +} + +// The request to generate the manifests for exclusivity artifacts. +message GenerateExclusivityManifestRequest { + // Required. The membership the cluster corresponds to in the format: + // `projects/[project_id]/locations/global/memberships/[membership_id]`. + string name = 1 [(google.api.field_behavior) = REQUIRED]; + + // Optional. The YAML manifest of the membership CRD retrieved by + // `kubectl get customresourcedefinitions membership`. + // Leave empty if the resource does not exist. + string crd_manifest = 2 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. The YAML manifest of the membership CR retrieved by + // `kubectl get memberships membership`. + // Leave empty if the resource does not exist. + string cr_manifest = 3 [(google.api.field_behavior) = OPTIONAL]; +} + +// The response of the exclusivity artifacts manifests for the client to apply. +message GenerateExclusivityManifestResponse { + // The YAML manifest of the membership CRD to apply if a newer version of the + // CRD is available. Empty if no update needs to be applied. + string crd_manifest = 1; + + // The YAML manifest of the membership CR to apply if a new version of the + // CR is available. Empty if no update needs to be applied. + string cr_manifest = 2; +} + +// Represents the metadata of the long-running operation. +message OperationMetadata { + // Output only. The time the operation was created. + google.protobuf.Timestamp create_time = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The time the operation finished running. + google.protobuf.Timestamp end_time = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Server-defined resource path for the target of the operation. + string target = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Name of the verb executed by the operation. + string verb = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Human-readable status of the operation, if any. + string status_detail = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Identifies whether the user has requested cancellation + // of the operation. Operations that have successfully been cancelled + // have [Operation.error][] value with a [google.rpc.Status.code][google.rpc.Status.code] of 1, + // corresponding to `Code.CANCELLED`. + bool cancel_requested = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. API version used to start the operation. + string api_version = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; +} diff --git a/packages/google-cloud-gkehub/protos/protos.d.ts b/packages/google-cloud-gkehub/protos/protos.d.ts new file mode 100644 index 00000000000..f6b5d325770 --- /dev/null +++ b/packages/google-cloud-gkehub/protos/protos.d.ts @@ -0,0 +1,8055 @@ +// 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. + +import * as Long from "long"; +import {protobuf as $protobuf} from "google-gax"; +/** Namespace google. */ +export namespace google { + + /** Namespace cloud. */ + namespace cloud { + + /** Namespace gkehub. */ + namespace gkehub { + + /** Namespace v1beta1. */ + namespace v1beta1 { + + /** Represents a GkeHubMembershipService */ + class GkeHubMembershipService extends $protobuf.rpc.Service { + + /** + * Constructs a new GkeHubMembershipService 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 GkeHubMembershipService 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): GkeHubMembershipService; + + /** + * Calls ListMemberships. + * @param request ListMembershipsRequest message or plain object + * @param callback Node-style callback called with the error, if any, and ListMembershipsResponse + */ + public listMemberships(request: google.cloud.gkehub.v1beta1.IListMembershipsRequest, callback: google.cloud.gkehub.v1beta1.GkeHubMembershipService.ListMembershipsCallback): void; + + /** + * Calls ListMemberships. + * @param request ListMembershipsRequest message or plain object + * @returns Promise + */ + public listMemberships(request: google.cloud.gkehub.v1beta1.IListMembershipsRequest): Promise; + + /** + * Calls GetMembership. + * @param request GetMembershipRequest message or plain object + * @param callback Node-style callback called with the error, if any, and Membership + */ + public getMembership(request: google.cloud.gkehub.v1beta1.IGetMembershipRequest, callback: google.cloud.gkehub.v1beta1.GkeHubMembershipService.GetMembershipCallback): void; + + /** + * Calls GetMembership. + * @param request GetMembershipRequest message or plain object + * @returns Promise + */ + public getMembership(request: google.cloud.gkehub.v1beta1.IGetMembershipRequest): Promise; + + /** + * Calls CreateMembership. + * @param request CreateMembershipRequest message or plain object + * @param callback Node-style callback called with the error, if any, and Operation + */ + public createMembership(request: google.cloud.gkehub.v1beta1.ICreateMembershipRequest, callback: google.cloud.gkehub.v1beta1.GkeHubMembershipService.CreateMembershipCallback): void; + + /** + * Calls CreateMembership. + * @param request CreateMembershipRequest message or plain object + * @returns Promise + */ + public createMembership(request: google.cloud.gkehub.v1beta1.ICreateMembershipRequest): Promise; + + /** + * Calls DeleteMembership. + * @param request DeleteMembershipRequest message or plain object + * @param callback Node-style callback called with the error, if any, and Operation + */ + public deleteMembership(request: google.cloud.gkehub.v1beta1.IDeleteMembershipRequest, callback: google.cloud.gkehub.v1beta1.GkeHubMembershipService.DeleteMembershipCallback): void; + + /** + * Calls DeleteMembership. + * @param request DeleteMembershipRequest message or plain object + * @returns Promise + */ + public deleteMembership(request: google.cloud.gkehub.v1beta1.IDeleteMembershipRequest): Promise; + + /** + * Calls UpdateMembership. + * @param request UpdateMembershipRequest message or plain object + * @param callback Node-style callback called with the error, if any, and Operation + */ + public updateMembership(request: google.cloud.gkehub.v1beta1.IUpdateMembershipRequest, callback: google.cloud.gkehub.v1beta1.GkeHubMembershipService.UpdateMembershipCallback): void; + + /** + * Calls UpdateMembership. + * @param request UpdateMembershipRequest message or plain object + * @returns Promise + */ + public updateMembership(request: google.cloud.gkehub.v1beta1.IUpdateMembershipRequest): Promise; + + /** + * Calls GenerateConnectManifest. + * @param request GenerateConnectManifestRequest message or plain object + * @param callback Node-style callback called with the error, if any, and GenerateConnectManifestResponse + */ + public generateConnectManifest(request: google.cloud.gkehub.v1beta1.IGenerateConnectManifestRequest, callback: google.cloud.gkehub.v1beta1.GkeHubMembershipService.GenerateConnectManifestCallback): void; + + /** + * Calls GenerateConnectManifest. + * @param request GenerateConnectManifestRequest message or plain object + * @returns Promise + */ + public generateConnectManifest(request: google.cloud.gkehub.v1beta1.IGenerateConnectManifestRequest): Promise; + + /** + * Calls ValidateExclusivity. + * @param request ValidateExclusivityRequest message or plain object + * @param callback Node-style callback called with the error, if any, and ValidateExclusivityResponse + */ + public validateExclusivity(request: google.cloud.gkehub.v1beta1.IValidateExclusivityRequest, callback: google.cloud.gkehub.v1beta1.GkeHubMembershipService.ValidateExclusivityCallback): void; + + /** + * Calls ValidateExclusivity. + * @param request ValidateExclusivityRequest message or plain object + * @returns Promise + */ + public validateExclusivity(request: google.cloud.gkehub.v1beta1.IValidateExclusivityRequest): Promise; + + /** + * Calls GenerateExclusivityManifest. + * @param request GenerateExclusivityManifestRequest message or plain object + * @param callback Node-style callback called with the error, if any, and GenerateExclusivityManifestResponse + */ + public generateExclusivityManifest(request: google.cloud.gkehub.v1beta1.IGenerateExclusivityManifestRequest, callback: google.cloud.gkehub.v1beta1.GkeHubMembershipService.GenerateExclusivityManifestCallback): void; + + /** + * Calls GenerateExclusivityManifest. + * @param request GenerateExclusivityManifestRequest message or plain object + * @returns Promise + */ + public generateExclusivityManifest(request: google.cloud.gkehub.v1beta1.IGenerateExclusivityManifestRequest): Promise; + } + + namespace GkeHubMembershipService { + + /** + * Callback as used by {@link google.cloud.gkehub.v1beta1.GkeHubMembershipService#listMemberships}. + * @param error Error, if any + * @param [response] ListMembershipsResponse + */ + type ListMembershipsCallback = (error: (Error|null), response?: google.cloud.gkehub.v1beta1.ListMembershipsResponse) => void; + + /** + * Callback as used by {@link google.cloud.gkehub.v1beta1.GkeHubMembershipService#getMembership}. + * @param error Error, if any + * @param [response] Membership + */ + type GetMembershipCallback = (error: (Error|null), response?: google.cloud.gkehub.v1beta1.Membership) => void; + + /** + * Callback as used by {@link google.cloud.gkehub.v1beta1.GkeHubMembershipService#createMembership}. + * @param error Error, if any + * @param [response] Operation + */ + type CreateMembershipCallback = (error: (Error|null), response?: google.longrunning.Operation) => void; + + /** + * Callback as used by {@link google.cloud.gkehub.v1beta1.GkeHubMembershipService#deleteMembership}. + * @param error Error, if any + * @param [response] Operation + */ + type DeleteMembershipCallback = (error: (Error|null), response?: google.longrunning.Operation) => void; + + /** + * Callback as used by {@link google.cloud.gkehub.v1beta1.GkeHubMembershipService#updateMembership}. + * @param error Error, if any + * @param [response] Operation + */ + type UpdateMembershipCallback = (error: (Error|null), response?: google.longrunning.Operation) => void; + + /** + * Callback as used by {@link google.cloud.gkehub.v1beta1.GkeHubMembershipService#generateConnectManifest}. + * @param error Error, if any + * @param [response] GenerateConnectManifestResponse + */ + type GenerateConnectManifestCallback = (error: (Error|null), response?: google.cloud.gkehub.v1beta1.GenerateConnectManifestResponse) => void; + + /** + * Callback as used by {@link google.cloud.gkehub.v1beta1.GkeHubMembershipService#validateExclusivity}. + * @param error Error, if any + * @param [response] ValidateExclusivityResponse + */ + type ValidateExclusivityCallback = (error: (Error|null), response?: google.cloud.gkehub.v1beta1.ValidateExclusivityResponse) => void; + + /** + * Callback as used by {@link google.cloud.gkehub.v1beta1.GkeHubMembershipService#generateExclusivityManifest}. + * @param error Error, if any + * @param [response] GenerateExclusivityManifestResponse + */ + type GenerateExclusivityManifestCallback = (error: (Error|null), response?: google.cloud.gkehub.v1beta1.GenerateExclusivityManifestResponse) => void; + } + + /** Properties of a Membership. */ + interface IMembership { + + /** Membership name */ + name?: (string|null); + + /** Membership labels */ + labels?: ({ [k: string]: string }|null); + + /** Membership description */ + description?: (string|null); + + /** Membership endpoint */ + endpoint?: (google.cloud.gkehub.v1beta1.IMembershipEndpoint|null); + + /** Membership state */ + state?: (google.cloud.gkehub.v1beta1.IMembershipState|null); + + /** Membership authority */ + authority?: (google.cloud.gkehub.v1beta1.IAuthority|null); + + /** Membership createTime */ + createTime?: (google.protobuf.ITimestamp|null); + + /** Membership updateTime */ + updateTime?: (google.protobuf.ITimestamp|null); + + /** Membership deleteTime */ + deleteTime?: (google.protobuf.ITimestamp|null); + + /** Membership externalId */ + externalId?: (string|null); + + /** Membership lastConnectionTime */ + lastConnectionTime?: (google.protobuf.ITimestamp|null); + + /** Membership uniqueId */ + uniqueId?: (string|null); + + /** Membership infrastructureType */ + infrastructureType?: (google.cloud.gkehub.v1beta1.Membership.InfrastructureType|keyof typeof google.cloud.gkehub.v1beta1.Membership.InfrastructureType|null); + } + + /** Represents a Membership. */ + class Membership implements IMembership { + + /** + * Constructs a new Membership. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.v1beta1.IMembership); + + /** Membership name. */ + public name: string; + + /** Membership labels. */ + public labels: { [k: string]: string }; + + /** Membership description. */ + public description: string; + + /** Membership endpoint. */ + public endpoint?: (google.cloud.gkehub.v1beta1.IMembershipEndpoint|null); + + /** Membership state. */ + public state?: (google.cloud.gkehub.v1beta1.IMembershipState|null); + + /** Membership authority. */ + public authority?: (google.cloud.gkehub.v1beta1.IAuthority|null); + + /** Membership createTime. */ + public createTime?: (google.protobuf.ITimestamp|null); + + /** Membership updateTime. */ + public updateTime?: (google.protobuf.ITimestamp|null); + + /** Membership deleteTime. */ + public deleteTime?: (google.protobuf.ITimestamp|null); + + /** Membership externalId. */ + public externalId: string; + + /** Membership lastConnectionTime. */ + public lastConnectionTime?: (google.protobuf.ITimestamp|null); + + /** Membership uniqueId. */ + public uniqueId: string; + + /** Membership infrastructureType. */ + public infrastructureType: (google.cloud.gkehub.v1beta1.Membership.InfrastructureType|keyof typeof google.cloud.gkehub.v1beta1.Membership.InfrastructureType); + + /** Membership type. */ + public type?: "endpoint"; + + /** + * Creates a new Membership instance using the specified properties. + * @param [properties] Properties to set + * @returns Membership instance + */ + public static create(properties?: google.cloud.gkehub.v1beta1.IMembership): google.cloud.gkehub.v1beta1.Membership; + + /** + * Encodes the specified Membership message. Does not implicitly {@link google.cloud.gkehub.v1beta1.Membership.verify|verify} messages. + * @param message Membership message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.v1beta1.IMembership, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified Membership message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta1.Membership.verify|verify} messages. + * @param message Membership message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.v1beta1.IMembership, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a Membership message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns Membership + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.v1beta1.Membership; + + /** + * Decodes a Membership message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns Membership + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.v1beta1.Membership; + + /** + * Verifies a Membership message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a Membership message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns Membership + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.v1beta1.Membership; + + /** + * Creates a plain object from a Membership message. Also converts values to other types if specified. + * @param message Membership + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.v1beta1.Membership, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this Membership to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + + namespace Membership { + + /** InfrastructureType enum. */ + enum InfrastructureType { + INFRASTRUCTURE_TYPE_UNSPECIFIED = 0, + ON_PREM = 1, + MULTI_CLOUD = 2 + } + } + + /** Properties of a MembershipEndpoint. */ + interface IMembershipEndpoint { + + /** MembershipEndpoint gkeCluster */ + gkeCluster?: (google.cloud.gkehub.v1beta1.IGkeCluster|null); + + /** MembershipEndpoint kubernetesMetadata */ + kubernetesMetadata?: (google.cloud.gkehub.v1beta1.IKubernetesMetadata|null); + + /** MembershipEndpoint kubernetesResource */ + kubernetesResource?: (google.cloud.gkehub.v1beta1.IKubernetesResource|null); + } + + /** Represents a MembershipEndpoint. */ + class MembershipEndpoint implements IMembershipEndpoint { + + /** + * Constructs a new MembershipEndpoint. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.v1beta1.IMembershipEndpoint); + + /** MembershipEndpoint gkeCluster. */ + public gkeCluster?: (google.cloud.gkehub.v1beta1.IGkeCluster|null); + + /** MembershipEndpoint kubernetesMetadata. */ + public kubernetesMetadata?: (google.cloud.gkehub.v1beta1.IKubernetesMetadata|null); + + /** MembershipEndpoint kubernetesResource. */ + public kubernetesResource?: (google.cloud.gkehub.v1beta1.IKubernetesResource|null); + + /** + * Creates a new MembershipEndpoint instance using the specified properties. + * @param [properties] Properties to set + * @returns MembershipEndpoint instance + */ + public static create(properties?: google.cloud.gkehub.v1beta1.IMembershipEndpoint): google.cloud.gkehub.v1beta1.MembershipEndpoint; + + /** + * Encodes the specified MembershipEndpoint message. Does not implicitly {@link google.cloud.gkehub.v1beta1.MembershipEndpoint.verify|verify} messages. + * @param message MembershipEndpoint message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.v1beta1.IMembershipEndpoint, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified MembershipEndpoint message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta1.MembershipEndpoint.verify|verify} messages. + * @param message MembershipEndpoint message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.v1beta1.IMembershipEndpoint, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a MembershipEndpoint message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns MembershipEndpoint + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.v1beta1.MembershipEndpoint; + + /** + * Decodes a MembershipEndpoint message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns MembershipEndpoint + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.v1beta1.MembershipEndpoint; + + /** + * Verifies a MembershipEndpoint message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a MembershipEndpoint message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns MembershipEndpoint + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.v1beta1.MembershipEndpoint; + + /** + * Creates a plain object from a MembershipEndpoint message. Also converts values to other types if specified. + * @param message MembershipEndpoint + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.v1beta1.MembershipEndpoint, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this MembershipEndpoint to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + + /** Properties of a KubernetesResource. */ + interface IKubernetesResource { + + /** KubernetesResource membershipCrManifest */ + membershipCrManifest?: (string|null); + + /** KubernetesResource membershipResources */ + membershipResources?: (google.cloud.gkehub.v1beta1.IResourceManifest[]|null); + + /** KubernetesResource connectResources */ + connectResources?: (google.cloud.gkehub.v1beta1.IResourceManifest[]|null); + + /** KubernetesResource resourceOptions */ + resourceOptions?: (google.cloud.gkehub.v1beta1.IResourceOptions|null); + } + + /** Represents a KubernetesResource. */ + class KubernetesResource implements IKubernetesResource { + + /** + * Constructs a new KubernetesResource. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.v1beta1.IKubernetesResource); + + /** KubernetesResource membershipCrManifest. */ + public membershipCrManifest: string; + + /** KubernetesResource membershipResources. */ + public membershipResources: google.cloud.gkehub.v1beta1.IResourceManifest[]; + + /** KubernetesResource connectResources. */ + public connectResources: google.cloud.gkehub.v1beta1.IResourceManifest[]; + + /** KubernetesResource resourceOptions. */ + public resourceOptions?: (google.cloud.gkehub.v1beta1.IResourceOptions|null); + + /** + * Creates a new KubernetesResource instance using the specified properties. + * @param [properties] Properties to set + * @returns KubernetesResource instance + */ + public static create(properties?: google.cloud.gkehub.v1beta1.IKubernetesResource): google.cloud.gkehub.v1beta1.KubernetesResource; + + /** + * Encodes the specified KubernetesResource message. Does not implicitly {@link google.cloud.gkehub.v1beta1.KubernetesResource.verify|verify} messages. + * @param message KubernetesResource message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.v1beta1.IKubernetesResource, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified KubernetesResource message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta1.KubernetesResource.verify|verify} messages. + * @param message KubernetesResource message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.v1beta1.IKubernetesResource, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a KubernetesResource message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns KubernetesResource + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.v1beta1.KubernetesResource; + + /** + * Decodes a KubernetesResource message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns KubernetesResource + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.v1beta1.KubernetesResource; + + /** + * Verifies a KubernetesResource message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a KubernetesResource message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns KubernetesResource + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.v1beta1.KubernetesResource; + + /** + * Creates a plain object from a KubernetesResource message. Also converts values to other types if specified. + * @param message KubernetesResource + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.v1beta1.KubernetesResource, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this KubernetesResource to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + + /** Properties of a ResourceOptions. */ + interface IResourceOptions { + + /** ResourceOptions connectVersion */ + connectVersion?: (string|null); + + /** ResourceOptions v1beta1Crd */ + v1beta1Crd?: (boolean|null); + } + + /** Represents a ResourceOptions. */ + class ResourceOptions implements IResourceOptions { + + /** + * Constructs a new ResourceOptions. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.v1beta1.IResourceOptions); + + /** ResourceOptions connectVersion. */ + public connectVersion: string; + + /** ResourceOptions v1beta1Crd. */ + public v1beta1Crd: boolean; + + /** + * Creates a new ResourceOptions instance using the specified properties. + * @param [properties] Properties to set + * @returns ResourceOptions instance + */ + public static create(properties?: google.cloud.gkehub.v1beta1.IResourceOptions): google.cloud.gkehub.v1beta1.ResourceOptions; + + /** + * Encodes the specified ResourceOptions message. Does not implicitly {@link google.cloud.gkehub.v1beta1.ResourceOptions.verify|verify} messages. + * @param message ResourceOptions message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.v1beta1.IResourceOptions, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified ResourceOptions message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta1.ResourceOptions.verify|verify} messages. + * @param message ResourceOptions message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.v1beta1.IResourceOptions, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a ResourceOptions message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns ResourceOptions + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.v1beta1.ResourceOptions; + + /** + * Decodes a ResourceOptions message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns ResourceOptions + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.v1beta1.ResourceOptions; + + /** + * Verifies a ResourceOptions message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a ResourceOptions message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns ResourceOptions + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.v1beta1.ResourceOptions; + + /** + * Creates a plain object from a ResourceOptions message. Also converts values to other types if specified. + * @param message ResourceOptions + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.v1beta1.ResourceOptions, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this ResourceOptions to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + + /** Properties of a ResourceManifest. */ + interface IResourceManifest { + + /** ResourceManifest manifest */ + manifest?: (string|null); + + /** ResourceManifest clusterScoped */ + clusterScoped?: (boolean|null); + } + + /** Represents a ResourceManifest. */ + class ResourceManifest implements IResourceManifest { + + /** + * Constructs a new ResourceManifest. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.v1beta1.IResourceManifest); + + /** ResourceManifest manifest. */ + public manifest: string; + + /** ResourceManifest clusterScoped. */ + public clusterScoped: boolean; + + /** + * Creates a new ResourceManifest instance using the specified properties. + * @param [properties] Properties to set + * @returns ResourceManifest instance + */ + public static create(properties?: google.cloud.gkehub.v1beta1.IResourceManifest): google.cloud.gkehub.v1beta1.ResourceManifest; + + /** + * Encodes the specified ResourceManifest message. Does not implicitly {@link google.cloud.gkehub.v1beta1.ResourceManifest.verify|verify} messages. + * @param message ResourceManifest message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.v1beta1.IResourceManifest, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified ResourceManifest message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta1.ResourceManifest.verify|verify} messages. + * @param message ResourceManifest message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.v1beta1.IResourceManifest, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a ResourceManifest message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns ResourceManifest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.v1beta1.ResourceManifest; + + /** + * Decodes a ResourceManifest message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns ResourceManifest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.v1beta1.ResourceManifest; + + /** + * Verifies a ResourceManifest message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a ResourceManifest message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns ResourceManifest + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.v1beta1.ResourceManifest; + + /** + * Creates a plain object from a ResourceManifest message. Also converts values to other types if specified. + * @param message ResourceManifest + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.v1beta1.ResourceManifest, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this ResourceManifest to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + + /** Properties of a GkeCluster. */ + interface IGkeCluster { + + /** GkeCluster resourceLink */ + resourceLink?: (string|null); + } + + /** Represents a GkeCluster. */ + class GkeCluster implements IGkeCluster { + + /** + * Constructs a new GkeCluster. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.v1beta1.IGkeCluster); + + /** GkeCluster resourceLink. */ + public resourceLink: string; + + /** + * Creates a new GkeCluster instance using the specified properties. + * @param [properties] Properties to set + * @returns GkeCluster instance + */ + public static create(properties?: google.cloud.gkehub.v1beta1.IGkeCluster): google.cloud.gkehub.v1beta1.GkeCluster; + + /** + * Encodes the specified GkeCluster message. Does not implicitly {@link google.cloud.gkehub.v1beta1.GkeCluster.verify|verify} messages. + * @param message GkeCluster message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.v1beta1.IGkeCluster, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified GkeCluster message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta1.GkeCluster.verify|verify} messages. + * @param message GkeCluster message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.v1beta1.IGkeCluster, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a GkeCluster message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns GkeCluster + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.v1beta1.GkeCluster; + + /** + * Decodes a GkeCluster message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns GkeCluster + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.v1beta1.GkeCluster; + + /** + * Verifies a GkeCluster message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a GkeCluster message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns GkeCluster + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.v1beta1.GkeCluster; + + /** + * Creates a plain object from a GkeCluster message. Also converts values to other types if specified. + * @param message GkeCluster + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.v1beta1.GkeCluster, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this GkeCluster to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + + /** Properties of a KubernetesMetadata. */ + interface IKubernetesMetadata { + + /** KubernetesMetadata kubernetesApiServerVersion */ + kubernetesApiServerVersion?: (string|null); + + /** KubernetesMetadata nodeProviderId */ + nodeProviderId?: (string|null); + + /** KubernetesMetadata nodeCount */ + nodeCount?: (number|null); + + /** KubernetesMetadata vcpuCount */ + vcpuCount?: (number|null); + + /** KubernetesMetadata memoryMb */ + memoryMb?: (number|null); + + /** KubernetesMetadata updateTime */ + updateTime?: (google.protobuf.ITimestamp|null); + } + + /** Represents a KubernetesMetadata. */ + class KubernetesMetadata implements IKubernetesMetadata { + + /** + * Constructs a new KubernetesMetadata. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.v1beta1.IKubernetesMetadata); + + /** KubernetesMetadata kubernetesApiServerVersion. */ + public kubernetesApiServerVersion: string; + + /** KubernetesMetadata nodeProviderId. */ + public nodeProviderId: string; + + /** KubernetesMetadata nodeCount. */ + public nodeCount: number; + + /** KubernetesMetadata vcpuCount. */ + public vcpuCount: number; + + /** KubernetesMetadata memoryMb. */ + public memoryMb: number; + + /** KubernetesMetadata updateTime. */ + public updateTime?: (google.protobuf.ITimestamp|null); + + /** + * Creates a new KubernetesMetadata instance using the specified properties. + * @param [properties] Properties to set + * @returns KubernetesMetadata instance + */ + public static create(properties?: google.cloud.gkehub.v1beta1.IKubernetesMetadata): google.cloud.gkehub.v1beta1.KubernetesMetadata; + + /** + * Encodes the specified KubernetesMetadata message. Does not implicitly {@link google.cloud.gkehub.v1beta1.KubernetesMetadata.verify|verify} messages. + * @param message KubernetesMetadata message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.v1beta1.IKubernetesMetadata, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified KubernetesMetadata message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta1.KubernetesMetadata.verify|verify} messages. + * @param message KubernetesMetadata message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.v1beta1.IKubernetesMetadata, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a KubernetesMetadata message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns KubernetesMetadata + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.v1beta1.KubernetesMetadata; + + /** + * Decodes a KubernetesMetadata message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns KubernetesMetadata + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.v1beta1.KubernetesMetadata; + + /** + * Verifies a KubernetesMetadata message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a KubernetesMetadata message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns KubernetesMetadata + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.v1beta1.KubernetesMetadata; + + /** + * Creates a plain object from a KubernetesMetadata message. Also converts values to other types if specified. + * @param message KubernetesMetadata + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.v1beta1.KubernetesMetadata, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this KubernetesMetadata to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + + /** Properties of an Authority. */ + interface IAuthority { + + /** Authority issuer */ + issuer?: (string|null); + + /** Authority workloadIdentityPool */ + workloadIdentityPool?: (string|null); + + /** Authority identityProvider */ + identityProvider?: (string|null); + } + + /** Represents an Authority. */ + class Authority implements IAuthority { + + /** + * Constructs a new Authority. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.v1beta1.IAuthority); + + /** Authority issuer. */ + public issuer: string; + + /** Authority workloadIdentityPool. */ + public workloadIdentityPool: string; + + /** Authority identityProvider. */ + public identityProvider: string; + + /** + * Creates a new Authority instance using the specified properties. + * @param [properties] Properties to set + * @returns Authority instance + */ + public static create(properties?: google.cloud.gkehub.v1beta1.IAuthority): google.cloud.gkehub.v1beta1.Authority; + + /** + * Encodes the specified Authority message. Does not implicitly {@link google.cloud.gkehub.v1beta1.Authority.verify|verify} messages. + * @param message Authority message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.v1beta1.IAuthority, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified Authority message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta1.Authority.verify|verify} messages. + * @param message Authority message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.v1beta1.IAuthority, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes an Authority message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns Authority + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.v1beta1.Authority; + + /** + * Decodes an Authority message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns Authority + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.v1beta1.Authority; + + /** + * Verifies an Authority message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates an Authority message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns Authority + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.v1beta1.Authority; + + /** + * Creates a plain object from an Authority message. Also converts values to other types if specified. + * @param message Authority + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.v1beta1.Authority, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this Authority to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + + /** Properties of a MembershipState. */ + interface IMembershipState { + + /** MembershipState code */ + code?: (google.cloud.gkehub.v1beta1.MembershipState.Code|keyof typeof google.cloud.gkehub.v1beta1.MembershipState.Code|null); + + /** MembershipState description */ + description?: (string|null); + + /** MembershipState updateTime */ + updateTime?: (google.protobuf.ITimestamp|null); + } + + /** Represents a MembershipState. */ + class MembershipState implements IMembershipState { + + /** + * Constructs a new MembershipState. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.v1beta1.IMembershipState); + + /** MembershipState code. */ + public code: (google.cloud.gkehub.v1beta1.MembershipState.Code|keyof typeof google.cloud.gkehub.v1beta1.MembershipState.Code); + + /** MembershipState description. */ + public description: string; + + /** MembershipState updateTime. */ + public updateTime?: (google.protobuf.ITimestamp|null); + + /** + * Creates a new MembershipState instance using the specified properties. + * @param [properties] Properties to set + * @returns MembershipState instance + */ + public static create(properties?: google.cloud.gkehub.v1beta1.IMembershipState): google.cloud.gkehub.v1beta1.MembershipState; + + /** + * Encodes the specified MembershipState message. Does not implicitly {@link google.cloud.gkehub.v1beta1.MembershipState.verify|verify} messages. + * @param message MembershipState message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.v1beta1.IMembershipState, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified MembershipState message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta1.MembershipState.verify|verify} messages. + * @param message MembershipState message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.v1beta1.IMembershipState, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a MembershipState message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns MembershipState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.v1beta1.MembershipState; + + /** + * Decodes a MembershipState message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns MembershipState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.v1beta1.MembershipState; + + /** + * Verifies a MembershipState message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a MembershipState message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns MembershipState + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.v1beta1.MembershipState; + + /** + * Creates a plain object from a MembershipState message. Also converts values to other types if specified. + * @param message MembershipState + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.v1beta1.MembershipState, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this MembershipState to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + + namespace MembershipState { + + /** Code enum. */ + enum Code { + CODE_UNSPECIFIED = 0, + CREATING = 1, + READY = 2, + DELETING = 3, + UPDATING = 4, + SERVICE_UPDATING = 5 + } + } + + /** Properties of a ListMembershipsRequest. */ + interface IListMembershipsRequest { + + /** ListMembershipsRequest parent */ + parent?: (string|null); + + /** ListMembershipsRequest pageSize */ + pageSize?: (number|null); + + /** ListMembershipsRequest pageToken */ + pageToken?: (string|null); + + /** ListMembershipsRequest filter */ + filter?: (string|null); + + /** ListMembershipsRequest orderBy */ + orderBy?: (string|null); + } + + /** Represents a ListMembershipsRequest. */ + class ListMembershipsRequest implements IListMembershipsRequest { + + /** + * Constructs a new ListMembershipsRequest. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.v1beta1.IListMembershipsRequest); + + /** ListMembershipsRequest parent. */ + public parent: string; + + /** ListMembershipsRequest pageSize. */ + public pageSize: number; + + /** ListMembershipsRequest pageToken. */ + public pageToken: string; + + /** ListMembershipsRequest filter. */ + public filter: string; + + /** ListMembershipsRequest orderBy. */ + public orderBy: string; + + /** + * Creates a new ListMembershipsRequest instance using the specified properties. + * @param [properties] Properties to set + * @returns ListMembershipsRequest instance + */ + public static create(properties?: google.cloud.gkehub.v1beta1.IListMembershipsRequest): google.cloud.gkehub.v1beta1.ListMembershipsRequest; + + /** + * Encodes the specified ListMembershipsRequest message. Does not implicitly {@link google.cloud.gkehub.v1beta1.ListMembershipsRequest.verify|verify} messages. + * @param message ListMembershipsRequest message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.v1beta1.IListMembershipsRequest, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified ListMembershipsRequest message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta1.ListMembershipsRequest.verify|verify} messages. + * @param message ListMembershipsRequest message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.v1beta1.IListMembershipsRequest, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a ListMembershipsRequest message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns ListMembershipsRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.v1beta1.ListMembershipsRequest; + + /** + * Decodes a ListMembershipsRequest message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns ListMembershipsRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.v1beta1.ListMembershipsRequest; + + /** + * Verifies a ListMembershipsRequest message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a ListMembershipsRequest message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns ListMembershipsRequest + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.v1beta1.ListMembershipsRequest; + + /** + * Creates a plain object from a ListMembershipsRequest message. Also converts values to other types if specified. + * @param message ListMembershipsRequest + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.v1beta1.ListMembershipsRequest, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this ListMembershipsRequest to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + + /** Properties of a ListMembershipsResponse. */ + interface IListMembershipsResponse { + + /** ListMembershipsResponse resources */ + resources?: (google.cloud.gkehub.v1beta1.IMembership[]|null); + + /** ListMembershipsResponse nextPageToken */ + nextPageToken?: (string|null); + + /** ListMembershipsResponse unreachable */ + unreachable?: (string[]|null); + } + + /** Represents a ListMembershipsResponse. */ + class ListMembershipsResponse implements IListMembershipsResponse { + + /** + * Constructs a new ListMembershipsResponse. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.v1beta1.IListMembershipsResponse); + + /** ListMembershipsResponse resources. */ + public resources: google.cloud.gkehub.v1beta1.IMembership[]; + + /** ListMembershipsResponse nextPageToken. */ + public nextPageToken: string; + + /** ListMembershipsResponse unreachable. */ + public unreachable: string[]; + + /** + * Creates a new ListMembershipsResponse instance using the specified properties. + * @param [properties] Properties to set + * @returns ListMembershipsResponse instance + */ + public static create(properties?: google.cloud.gkehub.v1beta1.IListMembershipsResponse): google.cloud.gkehub.v1beta1.ListMembershipsResponse; + + /** + * Encodes the specified ListMembershipsResponse message. Does not implicitly {@link google.cloud.gkehub.v1beta1.ListMembershipsResponse.verify|verify} messages. + * @param message ListMembershipsResponse message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.v1beta1.IListMembershipsResponse, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified ListMembershipsResponse message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta1.ListMembershipsResponse.verify|verify} messages. + * @param message ListMembershipsResponse message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.v1beta1.IListMembershipsResponse, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a ListMembershipsResponse message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns ListMembershipsResponse + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.v1beta1.ListMembershipsResponse; + + /** + * Decodes a ListMembershipsResponse message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns ListMembershipsResponse + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.v1beta1.ListMembershipsResponse; + + /** + * Verifies a ListMembershipsResponse message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a ListMembershipsResponse message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns ListMembershipsResponse + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.v1beta1.ListMembershipsResponse; + + /** + * Creates a plain object from a ListMembershipsResponse message. Also converts values to other types if specified. + * @param message ListMembershipsResponse + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.v1beta1.ListMembershipsResponse, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this ListMembershipsResponse to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + + /** Properties of a GetMembershipRequest. */ + interface IGetMembershipRequest { + + /** GetMembershipRequest name */ + name?: (string|null); + } + + /** Represents a GetMembershipRequest. */ + class GetMembershipRequest implements IGetMembershipRequest { + + /** + * Constructs a new GetMembershipRequest. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.v1beta1.IGetMembershipRequest); + + /** GetMembershipRequest name. */ + public name: string; + + /** + * Creates a new GetMembershipRequest instance using the specified properties. + * @param [properties] Properties to set + * @returns GetMembershipRequest instance + */ + public static create(properties?: google.cloud.gkehub.v1beta1.IGetMembershipRequest): google.cloud.gkehub.v1beta1.GetMembershipRequest; + + /** + * Encodes the specified GetMembershipRequest message. Does not implicitly {@link google.cloud.gkehub.v1beta1.GetMembershipRequest.verify|verify} messages. + * @param message GetMembershipRequest message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.v1beta1.IGetMembershipRequest, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified GetMembershipRequest message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta1.GetMembershipRequest.verify|verify} messages. + * @param message GetMembershipRequest message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.v1beta1.IGetMembershipRequest, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a GetMembershipRequest message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns GetMembershipRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.v1beta1.GetMembershipRequest; + + /** + * Decodes a GetMembershipRequest message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns GetMembershipRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.v1beta1.GetMembershipRequest; + + /** + * Verifies a GetMembershipRequest message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a GetMembershipRequest message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns GetMembershipRequest + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.v1beta1.GetMembershipRequest; + + /** + * Creates a plain object from a GetMembershipRequest message. Also converts values to other types if specified. + * @param message GetMembershipRequest + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.v1beta1.GetMembershipRequest, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this GetMembershipRequest to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + + /** Properties of a CreateMembershipRequest. */ + interface ICreateMembershipRequest { + + /** CreateMembershipRequest parent */ + parent?: (string|null); + + /** CreateMembershipRequest membershipId */ + membershipId?: (string|null); + + /** CreateMembershipRequest resource */ + resource?: (google.cloud.gkehub.v1beta1.IMembership|null); + } + + /** Represents a CreateMembershipRequest. */ + class CreateMembershipRequest implements ICreateMembershipRequest { + + /** + * Constructs a new CreateMembershipRequest. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.v1beta1.ICreateMembershipRequest); + + /** CreateMembershipRequest parent. */ + public parent: string; + + /** CreateMembershipRequest membershipId. */ + public membershipId: string; + + /** CreateMembershipRequest resource. */ + public resource?: (google.cloud.gkehub.v1beta1.IMembership|null); + + /** + * Creates a new CreateMembershipRequest instance using the specified properties. + * @param [properties] Properties to set + * @returns CreateMembershipRequest instance + */ + public static create(properties?: google.cloud.gkehub.v1beta1.ICreateMembershipRequest): google.cloud.gkehub.v1beta1.CreateMembershipRequest; + + /** + * Encodes the specified CreateMembershipRequest message. Does not implicitly {@link google.cloud.gkehub.v1beta1.CreateMembershipRequest.verify|verify} messages. + * @param message CreateMembershipRequest message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.v1beta1.ICreateMembershipRequest, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified CreateMembershipRequest message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta1.CreateMembershipRequest.verify|verify} messages. + * @param message CreateMembershipRequest message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.v1beta1.ICreateMembershipRequest, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a CreateMembershipRequest message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns CreateMembershipRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.v1beta1.CreateMembershipRequest; + + /** + * Decodes a CreateMembershipRequest message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns CreateMembershipRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.v1beta1.CreateMembershipRequest; + + /** + * Verifies a CreateMembershipRequest message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a CreateMembershipRequest message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns CreateMembershipRequest + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.v1beta1.CreateMembershipRequest; + + /** + * Creates a plain object from a CreateMembershipRequest message. Also converts values to other types if specified. + * @param message CreateMembershipRequest + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.v1beta1.CreateMembershipRequest, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this CreateMembershipRequest to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + + /** Properties of a DeleteMembershipRequest. */ + interface IDeleteMembershipRequest { + + /** DeleteMembershipRequest name */ + name?: (string|null); + } + + /** Represents a DeleteMembershipRequest. */ + class DeleteMembershipRequest implements IDeleteMembershipRequest { + + /** + * Constructs a new DeleteMembershipRequest. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.v1beta1.IDeleteMembershipRequest); + + /** DeleteMembershipRequest name. */ + public name: string; + + /** + * Creates a new DeleteMembershipRequest instance using the specified properties. + * @param [properties] Properties to set + * @returns DeleteMembershipRequest instance + */ + public static create(properties?: google.cloud.gkehub.v1beta1.IDeleteMembershipRequest): google.cloud.gkehub.v1beta1.DeleteMembershipRequest; + + /** + * Encodes the specified DeleteMembershipRequest message. Does not implicitly {@link google.cloud.gkehub.v1beta1.DeleteMembershipRequest.verify|verify} messages. + * @param message DeleteMembershipRequest message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.v1beta1.IDeleteMembershipRequest, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified DeleteMembershipRequest message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta1.DeleteMembershipRequest.verify|verify} messages. + * @param message DeleteMembershipRequest message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.v1beta1.IDeleteMembershipRequest, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a DeleteMembershipRequest message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns DeleteMembershipRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.v1beta1.DeleteMembershipRequest; + + /** + * Decodes a DeleteMembershipRequest message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns DeleteMembershipRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.v1beta1.DeleteMembershipRequest; + + /** + * Verifies a DeleteMembershipRequest message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a DeleteMembershipRequest message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns DeleteMembershipRequest + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.v1beta1.DeleteMembershipRequest; + + /** + * Creates a plain object from a DeleteMembershipRequest message. Also converts values to other types if specified. + * @param message DeleteMembershipRequest + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.v1beta1.DeleteMembershipRequest, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this DeleteMembershipRequest to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + + /** Properties of an UpdateMembershipRequest. */ + interface IUpdateMembershipRequest { + + /** UpdateMembershipRequest name */ + name?: (string|null); + + /** UpdateMembershipRequest updateMask */ + updateMask?: (google.protobuf.IFieldMask|null); + + /** UpdateMembershipRequest resource */ + resource?: (google.cloud.gkehub.v1beta1.IMembership|null); + } + + /** Represents an UpdateMembershipRequest. */ + class UpdateMembershipRequest implements IUpdateMembershipRequest { + + /** + * Constructs a new UpdateMembershipRequest. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.v1beta1.IUpdateMembershipRequest); + + /** UpdateMembershipRequest name. */ + public name: string; + + /** UpdateMembershipRequest updateMask. */ + public updateMask?: (google.protobuf.IFieldMask|null); + + /** UpdateMembershipRequest resource. */ + public resource?: (google.cloud.gkehub.v1beta1.IMembership|null); + + /** + * Creates a new UpdateMembershipRequest instance using the specified properties. + * @param [properties] Properties to set + * @returns UpdateMembershipRequest instance + */ + public static create(properties?: google.cloud.gkehub.v1beta1.IUpdateMembershipRequest): google.cloud.gkehub.v1beta1.UpdateMembershipRequest; + + /** + * Encodes the specified UpdateMembershipRequest message. Does not implicitly {@link google.cloud.gkehub.v1beta1.UpdateMembershipRequest.verify|verify} messages. + * @param message UpdateMembershipRequest message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.v1beta1.IUpdateMembershipRequest, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified UpdateMembershipRequest message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta1.UpdateMembershipRequest.verify|verify} messages. + * @param message UpdateMembershipRequest message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.v1beta1.IUpdateMembershipRequest, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes an UpdateMembershipRequest message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns UpdateMembershipRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.v1beta1.UpdateMembershipRequest; + + /** + * Decodes an UpdateMembershipRequest message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns UpdateMembershipRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.v1beta1.UpdateMembershipRequest; + + /** + * Verifies an UpdateMembershipRequest message. + * @param message Plain 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 UpdateMembershipRequest message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns UpdateMembershipRequest + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.v1beta1.UpdateMembershipRequest; + + /** + * Creates a plain object from an UpdateMembershipRequest message. Also converts values to other types if specified. + * @param message UpdateMembershipRequest + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.v1beta1.UpdateMembershipRequest, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this UpdateMembershipRequest to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + + /** Properties of a GenerateConnectManifestRequest. */ + interface IGenerateConnectManifestRequest { + + /** GenerateConnectManifestRequest name */ + name?: (string|null); + + /** GenerateConnectManifestRequest connectAgent */ + connectAgent?: (google.cloud.gkehub.v1beta1.IConnectAgent|null); + + /** GenerateConnectManifestRequest version */ + version?: (string|null); + + /** GenerateConnectManifestRequest isUpgrade */ + isUpgrade?: (boolean|null); + + /** GenerateConnectManifestRequest registry */ + registry?: (string|null); + + /** GenerateConnectManifestRequest imagePullSecretContent */ + imagePullSecretContent?: (Uint8Array|string|null); + } + + /** Represents a GenerateConnectManifestRequest. */ + class GenerateConnectManifestRequest implements IGenerateConnectManifestRequest { + + /** + * Constructs a new GenerateConnectManifestRequest. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.v1beta1.IGenerateConnectManifestRequest); + + /** GenerateConnectManifestRequest name. */ + public name: string; + + /** GenerateConnectManifestRequest connectAgent. */ + public connectAgent?: (google.cloud.gkehub.v1beta1.IConnectAgent|null); + + /** GenerateConnectManifestRequest version. */ + public version: string; + + /** GenerateConnectManifestRequest isUpgrade. */ + public isUpgrade: boolean; + + /** GenerateConnectManifestRequest registry. */ + public registry: string; + + /** GenerateConnectManifestRequest imagePullSecretContent. */ + public imagePullSecretContent: (Uint8Array|string); + + /** + * Creates a new GenerateConnectManifestRequest instance using the specified properties. + * @param [properties] Properties to set + * @returns GenerateConnectManifestRequest instance + */ + public static create(properties?: google.cloud.gkehub.v1beta1.IGenerateConnectManifestRequest): google.cloud.gkehub.v1beta1.GenerateConnectManifestRequest; + + /** + * Encodes the specified GenerateConnectManifestRequest message. Does not implicitly {@link google.cloud.gkehub.v1beta1.GenerateConnectManifestRequest.verify|verify} messages. + * @param message GenerateConnectManifestRequest message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.v1beta1.IGenerateConnectManifestRequest, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified GenerateConnectManifestRequest message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta1.GenerateConnectManifestRequest.verify|verify} messages. + * @param message GenerateConnectManifestRequest message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.v1beta1.IGenerateConnectManifestRequest, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a GenerateConnectManifestRequest message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns GenerateConnectManifestRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.v1beta1.GenerateConnectManifestRequest; + + /** + * Decodes a GenerateConnectManifestRequest message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns GenerateConnectManifestRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.v1beta1.GenerateConnectManifestRequest; + + /** + * Verifies a GenerateConnectManifestRequest message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a GenerateConnectManifestRequest message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns GenerateConnectManifestRequest + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.v1beta1.GenerateConnectManifestRequest; + + /** + * Creates a plain object from a GenerateConnectManifestRequest message. Also converts values to other types if specified. + * @param message GenerateConnectManifestRequest + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.v1beta1.GenerateConnectManifestRequest, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this GenerateConnectManifestRequest to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + + /** Properties of a GenerateConnectManifestResponse. */ + interface IGenerateConnectManifestResponse { + + /** GenerateConnectManifestResponse manifest */ + manifest?: (google.cloud.gkehub.v1beta1.IConnectAgentResource[]|null); + } + + /** Represents a GenerateConnectManifestResponse. */ + class GenerateConnectManifestResponse implements IGenerateConnectManifestResponse { + + /** + * Constructs a new GenerateConnectManifestResponse. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.v1beta1.IGenerateConnectManifestResponse); + + /** GenerateConnectManifestResponse manifest. */ + public manifest: google.cloud.gkehub.v1beta1.IConnectAgentResource[]; + + /** + * Creates a new GenerateConnectManifestResponse instance using the specified properties. + * @param [properties] Properties to set + * @returns GenerateConnectManifestResponse instance + */ + public static create(properties?: google.cloud.gkehub.v1beta1.IGenerateConnectManifestResponse): google.cloud.gkehub.v1beta1.GenerateConnectManifestResponse; + + /** + * Encodes the specified GenerateConnectManifestResponse message. Does not implicitly {@link google.cloud.gkehub.v1beta1.GenerateConnectManifestResponse.verify|verify} messages. + * @param message GenerateConnectManifestResponse message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.v1beta1.IGenerateConnectManifestResponse, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified GenerateConnectManifestResponse message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta1.GenerateConnectManifestResponse.verify|verify} messages. + * @param message GenerateConnectManifestResponse message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.v1beta1.IGenerateConnectManifestResponse, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a GenerateConnectManifestResponse message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns GenerateConnectManifestResponse + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.v1beta1.GenerateConnectManifestResponse; + + /** + * Decodes a GenerateConnectManifestResponse message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns GenerateConnectManifestResponse + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.v1beta1.GenerateConnectManifestResponse; + + /** + * Verifies a GenerateConnectManifestResponse message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a GenerateConnectManifestResponse message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns GenerateConnectManifestResponse + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.v1beta1.GenerateConnectManifestResponse; + + /** + * Creates a plain object from a GenerateConnectManifestResponse message. Also converts values to other types if specified. + * @param message GenerateConnectManifestResponse + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.v1beta1.GenerateConnectManifestResponse, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this GenerateConnectManifestResponse to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + + /** Properties of a ConnectAgentResource. */ + interface IConnectAgentResource { + + /** ConnectAgentResource type */ + type?: (google.cloud.gkehub.v1beta1.ITypeMeta|null); + + /** ConnectAgentResource manifest */ + manifest?: (string|null); + } + + /** Represents a ConnectAgentResource. */ + class ConnectAgentResource implements IConnectAgentResource { + + /** + * Constructs a new ConnectAgentResource. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.v1beta1.IConnectAgentResource); + + /** ConnectAgentResource type. */ + public type?: (google.cloud.gkehub.v1beta1.ITypeMeta|null); + + /** ConnectAgentResource manifest. */ + public manifest: string; + + /** + * Creates a new ConnectAgentResource instance using the specified properties. + * @param [properties] Properties to set + * @returns ConnectAgentResource instance + */ + public static create(properties?: google.cloud.gkehub.v1beta1.IConnectAgentResource): google.cloud.gkehub.v1beta1.ConnectAgentResource; + + /** + * Encodes the specified ConnectAgentResource message. Does not implicitly {@link google.cloud.gkehub.v1beta1.ConnectAgentResource.verify|verify} messages. + * @param message ConnectAgentResource message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.v1beta1.IConnectAgentResource, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified ConnectAgentResource message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta1.ConnectAgentResource.verify|verify} messages. + * @param message ConnectAgentResource message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.v1beta1.IConnectAgentResource, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a ConnectAgentResource message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns ConnectAgentResource + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.v1beta1.ConnectAgentResource; + + /** + * Decodes a ConnectAgentResource message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns ConnectAgentResource + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.v1beta1.ConnectAgentResource; + + /** + * Verifies a ConnectAgentResource message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a ConnectAgentResource message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns ConnectAgentResource + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.v1beta1.ConnectAgentResource; + + /** + * Creates a plain object from a ConnectAgentResource message. Also converts values to other types if specified. + * @param message ConnectAgentResource + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.v1beta1.ConnectAgentResource, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this ConnectAgentResource to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + + /** Properties of a TypeMeta. */ + interface ITypeMeta { + + /** TypeMeta kind */ + kind?: (string|null); + + /** TypeMeta apiVersion */ + apiVersion?: (string|null); + } + + /** Represents a TypeMeta. */ + class TypeMeta implements ITypeMeta { + + /** + * Constructs a new TypeMeta. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.v1beta1.ITypeMeta); + + /** TypeMeta kind. */ + public kind: string; + + /** TypeMeta apiVersion. */ + public apiVersion: string; + + /** + * Creates a new TypeMeta instance using the specified properties. + * @param [properties] Properties to set + * @returns TypeMeta instance + */ + public static create(properties?: google.cloud.gkehub.v1beta1.ITypeMeta): google.cloud.gkehub.v1beta1.TypeMeta; + + /** + * Encodes the specified TypeMeta message. Does not implicitly {@link google.cloud.gkehub.v1beta1.TypeMeta.verify|verify} messages. + * @param message TypeMeta message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.v1beta1.ITypeMeta, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified TypeMeta message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta1.TypeMeta.verify|verify} messages. + * @param message TypeMeta message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.v1beta1.ITypeMeta, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a TypeMeta message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns TypeMeta + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.v1beta1.TypeMeta; + + /** + * Decodes a TypeMeta message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns TypeMeta + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.v1beta1.TypeMeta; + + /** + * Verifies a TypeMeta message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a TypeMeta message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns TypeMeta + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.v1beta1.TypeMeta; + + /** + * Creates a plain object from a TypeMeta message. Also converts values to other types if specified. + * @param message TypeMeta + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.v1beta1.TypeMeta, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this TypeMeta to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + + /** Properties of a ConnectAgent. */ + interface IConnectAgent { + + /** ConnectAgent name */ + name?: (string|null); + + /** ConnectAgent proxy */ + proxy?: (Uint8Array|string|null); + + /** ConnectAgent namespace */ + namespace?: (string|null); + } + + /** Represents a ConnectAgent. */ + class ConnectAgent implements IConnectAgent { + + /** + * Constructs a new ConnectAgent. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.v1beta1.IConnectAgent); + + /** ConnectAgent name. */ + public name: string; + + /** ConnectAgent proxy. */ + public proxy: (Uint8Array|string); + + /** ConnectAgent namespace. */ + public namespace: string; + + /** + * Creates a new ConnectAgent instance using the specified properties. + * @param [properties] Properties to set + * @returns ConnectAgent instance + */ + public static create(properties?: google.cloud.gkehub.v1beta1.IConnectAgent): google.cloud.gkehub.v1beta1.ConnectAgent; + + /** + * Encodes the specified ConnectAgent message. Does not implicitly {@link google.cloud.gkehub.v1beta1.ConnectAgent.verify|verify} messages. + * @param message ConnectAgent message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.v1beta1.IConnectAgent, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified ConnectAgent message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta1.ConnectAgent.verify|verify} messages. + * @param message ConnectAgent message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.v1beta1.IConnectAgent, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a ConnectAgent message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns ConnectAgent + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.v1beta1.ConnectAgent; + + /** + * Decodes a ConnectAgent message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns ConnectAgent + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.v1beta1.ConnectAgent; + + /** + * Verifies a ConnectAgent message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a ConnectAgent message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns ConnectAgent + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.v1beta1.ConnectAgent; + + /** + * Creates a plain object from a ConnectAgent message. Also converts values to other types if specified. + * @param message ConnectAgent + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.v1beta1.ConnectAgent, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this ConnectAgent to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + + /** Properties of a ValidateExclusivityRequest. */ + interface IValidateExclusivityRequest { + + /** ValidateExclusivityRequest parent */ + parent?: (string|null); + + /** ValidateExclusivityRequest crManifest */ + crManifest?: (string|null); + + /** ValidateExclusivityRequest intendedMembership */ + intendedMembership?: (string|null); + } + + /** Represents a ValidateExclusivityRequest. */ + class ValidateExclusivityRequest implements IValidateExclusivityRequest { + + /** + * Constructs a new ValidateExclusivityRequest. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.v1beta1.IValidateExclusivityRequest); + + /** ValidateExclusivityRequest parent. */ + public parent: string; + + /** ValidateExclusivityRequest crManifest. */ + public crManifest: string; + + /** ValidateExclusivityRequest intendedMembership. */ + public intendedMembership: string; + + /** + * Creates a new ValidateExclusivityRequest instance using the specified properties. + * @param [properties] Properties to set + * @returns ValidateExclusivityRequest instance + */ + public static create(properties?: google.cloud.gkehub.v1beta1.IValidateExclusivityRequest): google.cloud.gkehub.v1beta1.ValidateExclusivityRequest; + + /** + * Encodes the specified ValidateExclusivityRequest message. Does not implicitly {@link google.cloud.gkehub.v1beta1.ValidateExclusivityRequest.verify|verify} messages. + * @param message ValidateExclusivityRequest message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.v1beta1.IValidateExclusivityRequest, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified ValidateExclusivityRequest message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta1.ValidateExclusivityRequest.verify|verify} messages. + * @param message ValidateExclusivityRequest message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.v1beta1.IValidateExclusivityRequest, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a ValidateExclusivityRequest message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns ValidateExclusivityRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.v1beta1.ValidateExclusivityRequest; + + /** + * Decodes a ValidateExclusivityRequest message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns ValidateExclusivityRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.v1beta1.ValidateExclusivityRequest; + + /** + * Verifies a ValidateExclusivityRequest message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a ValidateExclusivityRequest message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns ValidateExclusivityRequest + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.v1beta1.ValidateExclusivityRequest; + + /** + * Creates a plain object from a ValidateExclusivityRequest message. Also converts values to other types if specified. + * @param message ValidateExclusivityRequest + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.v1beta1.ValidateExclusivityRequest, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this ValidateExclusivityRequest to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + + /** Properties of a ValidateExclusivityResponse. */ + interface IValidateExclusivityResponse { + + /** ValidateExclusivityResponse status */ + status?: (google.rpc.IStatus|null); + } + + /** Represents a ValidateExclusivityResponse. */ + class ValidateExclusivityResponse implements IValidateExclusivityResponse { + + /** + * Constructs a new ValidateExclusivityResponse. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.v1beta1.IValidateExclusivityResponse); + + /** ValidateExclusivityResponse status. */ + public status?: (google.rpc.IStatus|null); + + /** + * Creates a new ValidateExclusivityResponse instance using the specified properties. + * @param [properties] Properties to set + * @returns ValidateExclusivityResponse instance + */ + public static create(properties?: google.cloud.gkehub.v1beta1.IValidateExclusivityResponse): google.cloud.gkehub.v1beta1.ValidateExclusivityResponse; + + /** + * Encodes the specified ValidateExclusivityResponse message. Does not implicitly {@link google.cloud.gkehub.v1beta1.ValidateExclusivityResponse.verify|verify} messages. + * @param message ValidateExclusivityResponse message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.v1beta1.IValidateExclusivityResponse, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified ValidateExclusivityResponse message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta1.ValidateExclusivityResponse.verify|verify} messages. + * @param message ValidateExclusivityResponse message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.v1beta1.IValidateExclusivityResponse, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a ValidateExclusivityResponse message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns ValidateExclusivityResponse + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.v1beta1.ValidateExclusivityResponse; + + /** + * Decodes a ValidateExclusivityResponse message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns ValidateExclusivityResponse + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.v1beta1.ValidateExclusivityResponse; + + /** + * Verifies a ValidateExclusivityResponse message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a ValidateExclusivityResponse message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns ValidateExclusivityResponse + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.v1beta1.ValidateExclusivityResponse; + + /** + * Creates a plain object from a ValidateExclusivityResponse message. Also converts values to other types if specified. + * @param message ValidateExclusivityResponse + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.v1beta1.ValidateExclusivityResponse, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this ValidateExclusivityResponse to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + + /** Properties of a GenerateExclusivityManifestRequest. */ + interface IGenerateExclusivityManifestRequest { + + /** GenerateExclusivityManifestRequest name */ + name?: (string|null); + + /** GenerateExclusivityManifestRequest crdManifest */ + crdManifest?: (string|null); + + /** GenerateExclusivityManifestRequest crManifest */ + crManifest?: (string|null); + } + + /** Represents a GenerateExclusivityManifestRequest. */ + class GenerateExclusivityManifestRequest implements IGenerateExclusivityManifestRequest { + + /** + * Constructs a new GenerateExclusivityManifestRequest. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.v1beta1.IGenerateExclusivityManifestRequest); + + /** GenerateExclusivityManifestRequest name. */ + public name: string; + + /** GenerateExclusivityManifestRequest crdManifest. */ + public crdManifest: string; + + /** GenerateExclusivityManifestRequest crManifest. */ + public crManifest: string; + + /** + * Creates a new GenerateExclusivityManifestRequest instance using the specified properties. + * @param [properties] Properties to set + * @returns GenerateExclusivityManifestRequest instance + */ + public static create(properties?: google.cloud.gkehub.v1beta1.IGenerateExclusivityManifestRequest): google.cloud.gkehub.v1beta1.GenerateExclusivityManifestRequest; + + /** + * Encodes the specified GenerateExclusivityManifestRequest message. Does not implicitly {@link google.cloud.gkehub.v1beta1.GenerateExclusivityManifestRequest.verify|verify} messages. + * @param message GenerateExclusivityManifestRequest message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.v1beta1.IGenerateExclusivityManifestRequest, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified GenerateExclusivityManifestRequest message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta1.GenerateExclusivityManifestRequest.verify|verify} messages. + * @param message GenerateExclusivityManifestRequest message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.v1beta1.IGenerateExclusivityManifestRequest, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a GenerateExclusivityManifestRequest message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns GenerateExclusivityManifestRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.v1beta1.GenerateExclusivityManifestRequest; + + /** + * Decodes a GenerateExclusivityManifestRequest message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns GenerateExclusivityManifestRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.v1beta1.GenerateExclusivityManifestRequest; + + /** + * Verifies a GenerateExclusivityManifestRequest message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a GenerateExclusivityManifestRequest message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns GenerateExclusivityManifestRequest + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.v1beta1.GenerateExclusivityManifestRequest; + + /** + * Creates a plain object from a GenerateExclusivityManifestRequest message. Also converts values to other types if specified. + * @param message GenerateExclusivityManifestRequest + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.v1beta1.GenerateExclusivityManifestRequest, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this GenerateExclusivityManifestRequest to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + + /** Properties of a GenerateExclusivityManifestResponse. */ + interface IGenerateExclusivityManifestResponse { + + /** GenerateExclusivityManifestResponse crdManifest */ + crdManifest?: (string|null); + + /** GenerateExclusivityManifestResponse crManifest */ + crManifest?: (string|null); + } + + /** Represents a GenerateExclusivityManifestResponse. */ + class GenerateExclusivityManifestResponse implements IGenerateExclusivityManifestResponse { + + /** + * Constructs a new GenerateExclusivityManifestResponse. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.v1beta1.IGenerateExclusivityManifestResponse); + + /** GenerateExclusivityManifestResponse crdManifest. */ + public crdManifest: string; + + /** GenerateExclusivityManifestResponse crManifest. */ + public crManifest: string; + + /** + * Creates a new GenerateExclusivityManifestResponse instance using the specified properties. + * @param [properties] Properties to set + * @returns GenerateExclusivityManifestResponse instance + */ + public static create(properties?: google.cloud.gkehub.v1beta1.IGenerateExclusivityManifestResponse): google.cloud.gkehub.v1beta1.GenerateExclusivityManifestResponse; + + /** + * Encodes the specified GenerateExclusivityManifestResponse message. Does not implicitly {@link google.cloud.gkehub.v1beta1.GenerateExclusivityManifestResponse.verify|verify} messages. + * @param message GenerateExclusivityManifestResponse message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.v1beta1.IGenerateExclusivityManifestResponse, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified GenerateExclusivityManifestResponse message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta1.GenerateExclusivityManifestResponse.verify|verify} messages. + * @param message GenerateExclusivityManifestResponse message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.v1beta1.IGenerateExclusivityManifestResponse, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a GenerateExclusivityManifestResponse message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns GenerateExclusivityManifestResponse + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.v1beta1.GenerateExclusivityManifestResponse; + + /** + * Decodes a GenerateExclusivityManifestResponse message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns GenerateExclusivityManifestResponse + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.v1beta1.GenerateExclusivityManifestResponse; + + /** + * Verifies a GenerateExclusivityManifestResponse message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a GenerateExclusivityManifestResponse message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns GenerateExclusivityManifestResponse + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.v1beta1.GenerateExclusivityManifestResponse; + + /** + * Creates a plain object from a GenerateExclusivityManifestResponse message. Also converts values to other types if specified. + * @param message GenerateExclusivityManifestResponse + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.v1beta1.GenerateExclusivityManifestResponse, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this GenerateExclusivityManifestResponse to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + + /** Properties of an OperationMetadata. */ + interface IOperationMetadata { + + /** OperationMetadata createTime */ + createTime?: (google.protobuf.ITimestamp|null); + + /** OperationMetadata endTime */ + endTime?: (google.protobuf.ITimestamp|null); + + /** OperationMetadata target */ + target?: (string|null); + + /** OperationMetadata verb */ + verb?: (string|null); + + /** OperationMetadata statusDetail */ + statusDetail?: (string|null); + + /** OperationMetadata cancelRequested */ + cancelRequested?: (boolean|null); + + /** OperationMetadata apiVersion */ + apiVersion?: (string|null); + } + + /** Represents an OperationMetadata. */ + class OperationMetadata implements IOperationMetadata { + + /** + * Constructs a new OperationMetadata. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.v1beta1.IOperationMetadata); + + /** OperationMetadata createTime. */ + public createTime?: (google.protobuf.ITimestamp|null); + + /** OperationMetadata endTime. */ + public endTime?: (google.protobuf.ITimestamp|null); + + /** OperationMetadata target. */ + public target: string; + + /** OperationMetadata verb. */ + public verb: string; + + /** OperationMetadata statusDetail. */ + public statusDetail: string; + + /** OperationMetadata cancelRequested. */ + public cancelRequested: boolean; + + /** OperationMetadata apiVersion. */ + public apiVersion: string; + + /** + * Creates a new OperationMetadata instance using the specified properties. + * @param [properties] Properties to set + * @returns OperationMetadata instance + */ + public static create(properties?: google.cloud.gkehub.v1beta1.IOperationMetadata): google.cloud.gkehub.v1beta1.OperationMetadata; + + /** + * Encodes the specified OperationMetadata message. Does not implicitly {@link google.cloud.gkehub.v1beta1.OperationMetadata.verify|verify} messages. + * @param message OperationMetadata message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.v1beta1.IOperationMetadata, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified OperationMetadata message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta1.OperationMetadata.verify|verify} messages. + * @param message OperationMetadata message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.v1beta1.IOperationMetadata, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes an OperationMetadata message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns OperationMetadata + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.v1beta1.OperationMetadata; + + /** + * Decodes an OperationMetadata message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns OperationMetadata + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.v1beta1.OperationMetadata; + + /** + * Verifies an OperationMetadata message. + * @param message Plain 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 OperationMetadata message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns OperationMetadata + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.v1beta1.OperationMetadata; + + /** + * Creates a plain object from an OperationMetadata message. Also converts values to other types if specified. + * @param message OperationMetadata + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.v1beta1.OperationMetadata, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this OperationMetadata to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + } + } + } + + /** 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 }; + } + + /** 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; + + /** HttpRule put. */ + public put: string; + + /** HttpRule post. */ + public post: string; + + /** HttpRule delete. */ + public delete: string; + + /** HttpRule patch. */ + public patch: string; + + /** 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 }; + } + + /** 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 }; + } + + /** FieldBehavior enum. */ + enum FieldBehavior { + FIELD_BEHAVIOR_UNSPECIFIED = 0, + OPTIONAL = 1, + REQUIRED = 2, + OUTPUT_ONLY = 3, + INPUT_ONLY = 4, + IMMUTABLE = 5 + } + + /** 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 }; + } + + 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 }; + } + } + + /** 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 }; + } + + /** 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); + } + + /** 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; + + /** + * 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 }; + } + + /** 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 }; + } + + 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 }; + } + + /** 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 }; + } + } + + /** 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 }; + } + + /** 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 }; + } + + 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 }; + } + + /** 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 }; + } + + 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 }; + } + } + + /** 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 }; + } + + /** 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 }; + } + + /** 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 }; + } + + /** 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 }; + } + + 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 }; + } + + /** 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 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 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 }; + } + + 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 }; + } + + /** 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 }; + } + + /** 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 }; + } + + /** 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 }; + } + + /** Properties of a MethodOptions. */ + interface IMethodOptions { + + /** MethodOptions deprecated */ + deprecated?: (boolean|null); + + /** MethodOptions idempotencyLevel */ + idempotencyLevel?: (google.protobuf.MethodOptions.IdempotencyLevel|keyof typeof google.protobuf.MethodOptions.IdempotencyLevel|null); + + /** MethodOptions uninterpretedOption */ + uninterpretedOption?: (google.protobuf.IUninterpretedOption[]|null); + + /** MethodOptions .google.api.http */ + ".google.api.http"?: (google.api.IHttpRule|null); + + /** MethodOptions .google.api.methodSignature */ + ".google.api.methodSignature"?: (string[]|null); + + /** MethodOptions .google.longrunning.operationInfo */ + ".google.longrunning.operationInfo"?: (google.longrunning.IOperationInfo|null); + } + + /** Represents a MethodOptions. */ + class MethodOptions implements IMethodOptions { + + /** + * Constructs a new MethodOptions. + * @param [properties] Properties to set + */ + constructor(properties?: google.protobuf.IMethodOptions); + + /** MethodOptions deprecated. */ + public deprecated: boolean; + + /** MethodOptions idempotencyLevel. */ + public idempotencyLevel: (google.protobuf.MethodOptions.IdempotencyLevel|keyof typeof google.protobuf.MethodOptions.IdempotencyLevel); + + /** MethodOptions uninterpretedOption. */ + public uninterpretedOption: google.protobuf.IUninterpretedOption[]; + + /** + * Creates a new MethodOptions instance using the specified properties. + * @param [properties] Properties to set + * @returns MethodOptions instance + */ + public static create(properties?: google.protobuf.IMethodOptions): google.protobuf.MethodOptions; + + /** + * Encodes the specified MethodOptions message. Does not implicitly {@link google.protobuf.MethodOptions.verify|verify} messages. + * @param message MethodOptions message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.protobuf.IMethodOptions, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified MethodOptions message, length delimited. Does not implicitly {@link google.protobuf.MethodOptions.verify|verify} messages. + * @param message MethodOptions message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.protobuf.IMethodOptions, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a MethodOptions message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns MethodOptions + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.MethodOptions; + + /** + * Decodes a MethodOptions message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns MethodOptions + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.MethodOptions; + + /** + * Verifies a MethodOptions message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a MethodOptions message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns MethodOptions + */ + public static fromObject(object: { [k: string]: any }): google.protobuf.MethodOptions; + + /** + * Creates a plain object from a MethodOptions message. Also converts values to other types if specified. + * @param message MethodOptions + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.protobuf.MethodOptions, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this MethodOptions to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + + 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 }; + } + + 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 }; + } + } + + /** 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 }; + } + + 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 }; + } + } + + /** 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 }; + } + + 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); + } + + /** 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; + + /** + * 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 }; + } + } + + /** 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 }; + } + + /** 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 }; + } + + /** 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 }; + } + + /** Properties of a FieldMask. */ + interface IFieldMask { + + /** FieldMask paths */ + paths?: (string[]|null); + } + + /** Represents a FieldMask. */ + class FieldMask implements IFieldMask { + + /** + * Constructs a new FieldMask. + * @param [properties] Properties to set + */ + constructor(properties?: google.protobuf.IFieldMask); + + /** FieldMask paths. */ + public paths: string[]; + + /** + * Creates a new FieldMask instance using the specified properties. + * @param [properties] Properties to set + * @returns FieldMask instance + */ + public static create(properties?: google.protobuf.IFieldMask): google.protobuf.FieldMask; + + /** + * Encodes the specified FieldMask message. Does not implicitly {@link google.protobuf.FieldMask.verify|verify} messages. + * @param message FieldMask message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.protobuf.IFieldMask, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified FieldMask message, length delimited. Does not implicitly {@link google.protobuf.FieldMask.verify|verify} messages. + * @param message FieldMask message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.protobuf.IFieldMask, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a FieldMask message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns FieldMask + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.FieldMask; + + /** + * Decodes a FieldMask message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns FieldMask + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.FieldMask; + + /** + * Verifies a FieldMask message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a FieldMask message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns FieldMask + */ + public static fromObject(object: { [k: string]: any }): google.protobuf.FieldMask; + + /** + * Creates a plain object from a FieldMask message. Also converts values to other types if specified. + * @param message FieldMask + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.protobuf.FieldMask, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this FieldMask to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + + /** 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 }; + } + } + + /** Namespace longrunning. */ + namespace longrunning { + + /** Represents an Operations */ + class Operations extends $protobuf.rpc.Service { + + /** + * Constructs a new Operations service. + * @param rpcImpl RPC implementation + * @param [requestDelimited=false] Whether requests are length-delimited + * @param [responseDelimited=false] Whether responses are length-delimited + */ + constructor(rpcImpl: $protobuf.RPCImpl, requestDelimited?: boolean, responseDelimited?: boolean); + + /** + * Creates new Operations service using the specified rpc implementation. + * @param rpcImpl RPC implementation + * @param [requestDelimited=false] Whether requests are length-delimited + * @param [responseDelimited=false] Whether responses are length-delimited + * @returns RPC service. Useful where requests and/or responses are streamed. + */ + public static create(rpcImpl: $protobuf.RPCImpl, requestDelimited?: boolean, responseDelimited?: boolean): Operations; + + /** + * Calls ListOperations. + * @param request ListOperationsRequest message or plain object + * @param callback Node-style callback called with the error, if any, and ListOperationsResponse + */ + public listOperations(request: google.longrunning.IListOperationsRequest, callback: google.longrunning.Operations.ListOperationsCallback): void; + + /** + * Calls ListOperations. + * @param request ListOperationsRequest message or plain object + * @returns Promise + */ + public listOperations(request: google.longrunning.IListOperationsRequest): Promise; + + /** + * Calls GetOperation. + * @param request GetOperationRequest message or plain object + * @param callback Node-style callback called with the error, if any, and Operation + */ + public getOperation(request: google.longrunning.IGetOperationRequest, callback: google.longrunning.Operations.GetOperationCallback): void; + + /** + * Calls GetOperation. + * @param request GetOperationRequest message or plain object + * @returns Promise + */ + public getOperation(request: google.longrunning.IGetOperationRequest): Promise; + + /** + * Calls DeleteOperation. + * @param request DeleteOperationRequest message or plain object + * @param callback Node-style callback called with the error, if any, and Empty + */ + public deleteOperation(request: google.longrunning.IDeleteOperationRequest, callback: google.longrunning.Operations.DeleteOperationCallback): void; + + /** + * Calls DeleteOperation. + * @param request DeleteOperationRequest message or plain object + * @returns Promise + */ + public deleteOperation(request: google.longrunning.IDeleteOperationRequest): Promise; + + /** + * Calls CancelOperation. + * @param request CancelOperationRequest message or plain object + * @param callback Node-style callback called with the error, if any, and Empty + */ + public cancelOperation(request: google.longrunning.ICancelOperationRequest, callback: google.longrunning.Operations.CancelOperationCallback): void; + + /** + * Calls CancelOperation. + * @param request CancelOperationRequest message or plain object + * @returns Promise + */ + public cancelOperation(request: google.longrunning.ICancelOperationRequest): Promise; + + /** + * Calls WaitOperation. + * @param request WaitOperationRequest message or plain object + * @param callback Node-style callback called with the error, if any, and Operation + */ + public waitOperation(request: google.longrunning.IWaitOperationRequest, callback: google.longrunning.Operations.WaitOperationCallback): void; + + /** + * Calls WaitOperation. + * @param request WaitOperationRequest message or plain object + * @returns Promise + */ + public waitOperation(request: google.longrunning.IWaitOperationRequest): Promise; + } + + namespace Operations { + + /** + * Callback as used by {@link google.longrunning.Operations#listOperations}. + * @param error Error, if any + * @param [response] ListOperationsResponse + */ + type ListOperationsCallback = (error: (Error|null), response?: google.longrunning.ListOperationsResponse) => void; + + /** + * Callback as used by {@link google.longrunning.Operations#getOperation}. + * @param error Error, if any + * @param [response] Operation + */ + type GetOperationCallback = (error: (Error|null), response?: google.longrunning.Operation) => void; + + /** + * Callback as used by {@link google.longrunning.Operations#deleteOperation}. + * @param error Error, if any + * @param [response] Empty + */ + type DeleteOperationCallback = (error: (Error|null), response?: google.protobuf.Empty) => void; + + /** + * Callback as used by {@link google.longrunning.Operations#cancelOperation}. + * @param error Error, if any + * @param [response] Empty + */ + type CancelOperationCallback = (error: (Error|null), response?: google.protobuf.Empty) => void; + + /** + * Callback as used by {@link google.longrunning.Operations#waitOperation}. + * @param error Error, if any + * @param [response] Operation + */ + type WaitOperationCallback = (error: (Error|null), response?: google.longrunning.Operation) => void; + } + + /** Properties of an Operation. */ + interface IOperation { + + /** Operation name */ + name?: (string|null); + + /** Operation metadata */ + metadata?: (google.protobuf.IAny|null); + + /** Operation done */ + done?: (boolean|null); + + /** Operation error */ + error?: (google.rpc.IStatus|null); + + /** Operation response */ + response?: (google.protobuf.IAny|null); + } + + /** Represents an Operation. */ + class Operation implements IOperation { + + /** + * Constructs a new Operation. + * @param [properties] Properties to set + */ + constructor(properties?: google.longrunning.IOperation); + + /** Operation name. */ + public name: string; + + /** Operation metadata. */ + public metadata?: (google.protobuf.IAny|null); + + /** Operation done. */ + public done: boolean; + + /** Operation error. */ + public error?: (google.rpc.IStatus|null); + + /** Operation response. */ + public response?: (google.protobuf.IAny|null); + + /** Operation result. */ + public result?: ("error"|"response"); + + /** + * Creates a new Operation instance using the specified properties. + * @param [properties] Properties to set + * @returns Operation instance + */ + public static create(properties?: google.longrunning.IOperation): google.longrunning.Operation; + + /** + * Encodes the specified Operation message. Does not implicitly {@link google.longrunning.Operation.verify|verify} messages. + * @param message Operation message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.longrunning.IOperation, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified Operation message, length delimited. Does not implicitly {@link google.longrunning.Operation.verify|verify} messages. + * @param message Operation message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.longrunning.IOperation, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes an Operation message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns Operation + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.longrunning.Operation; + + /** + * Decodes an Operation message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns Operation + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.longrunning.Operation; + + /** + * Verifies an Operation message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates an Operation message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns Operation + */ + public static fromObject(object: { [k: string]: any }): google.longrunning.Operation; + + /** + * Creates a plain object from an Operation message. Also converts values to other types if specified. + * @param message Operation + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.longrunning.Operation, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this Operation to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + + /** Properties of a GetOperationRequest. */ + interface IGetOperationRequest { + + /** GetOperationRequest name */ + name?: (string|null); + } + + /** Represents a GetOperationRequest. */ + class GetOperationRequest implements IGetOperationRequest { + + /** + * Constructs a new GetOperationRequest. + * @param [properties] Properties to set + */ + constructor(properties?: google.longrunning.IGetOperationRequest); + + /** GetOperationRequest name. */ + public name: string; + + /** + * Creates a new GetOperationRequest instance using the specified properties. + * @param [properties] Properties to set + * @returns GetOperationRequest instance + */ + public static create(properties?: google.longrunning.IGetOperationRequest): google.longrunning.GetOperationRequest; + + /** + * Encodes the specified GetOperationRequest message. Does not implicitly {@link google.longrunning.GetOperationRequest.verify|verify} messages. + * @param message GetOperationRequest message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.longrunning.IGetOperationRequest, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified GetOperationRequest message, length delimited. Does not implicitly {@link google.longrunning.GetOperationRequest.verify|verify} messages. + * @param message GetOperationRequest message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.longrunning.IGetOperationRequest, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a GetOperationRequest message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns GetOperationRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.longrunning.GetOperationRequest; + + /** + * Decodes a GetOperationRequest message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns GetOperationRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.longrunning.GetOperationRequest; + + /** + * Verifies a GetOperationRequest message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a GetOperationRequest message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns GetOperationRequest + */ + public static fromObject(object: { [k: string]: any }): google.longrunning.GetOperationRequest; + + /** + * Creates a plain object from a GetOperationRequest message. Also converts values to other types if specified. + * @param message GetOperationRequest + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.longrunning.GetOperationRequest, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this GetOperationRequest to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + + /** Properties of a ListOperationsRequest. */ + interface IListOperationsRequest { + + /** ListOperationsRequest name */ + name?: (string|null); + + /** ListOperationsRequest filter */ + filter?: (string|null); + + /** ListOperationsRequest pageSize */ + pageSize?: (number|null); + + /** ListOperationsRequest pageToken */ + pageToken?: (string|null); + } + + /** Represents a ListOperationsRequest. */ + class ListOperationsRequest implements IListOperationsRequest { + + /** + * Constructs a new ListOperationsRequest. + * @param [properties] Properties to set + */ + constructor(properties?: google.longrunning.IListOperationsRequest); + + /** ListOperationsRequest name. */ + public name: string; + + /** ListOperationsRequest filter. */ + public filter: string; + + /** ListOperationsRequest pageSize. */ + public pageSize: number; + + /** ListOperationsRequest pageToken. */ + public pageToken: string; + + /** + * Creates a new ListOperationsRequest instance using the specified properties. + * @param [properties] Properties to set + * @returns ListOperationsRequest instance + */ + public static create(properties?: google.longrunning.IListOperationsRequest): google.longrunning.ListOperationsRequest; + + /** + * Encodes the specified ListOperationsRequest message. Does not implicitly {@link google.longrunning.ListOperationsRequest.verify|verify} messages. + * @param message ListOperationsRequest message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.longrunning.IListOperationsRequest, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified ListOperationsRequest message, length delimited. Does not implicitly {@link google.longrunning.ListOperationsRequest.verify|verify} messages. + * @param message ListOperationsRequest message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.longrunning.IListOperationsRequest, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a ListOperationsRequest message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns ListOperationsRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.longrunning.ListOperationsRequest; + + /** + * Decodes a ListOperationsRequest message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns ListOperationsRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.longrunning.ListOperationsRequest; + + /** + * Verifies a ListOperationsRequest message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a ListOperationsRequest message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns ListOperationsRequest + */ + public static fromObject(object: { [k: string]: any }): google.longrunning.ListOperationsRequest; + + /** + * Creates a plain object from a ListOperationsRequest message. Also converts values to other types if specified. + * @param message ListOperationsRequest + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.longrunning.ListOperationsRequest, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this ListOperationsRequest to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + + /** Properties of a ListOperationsResponse. */ + interface IListOperationsResponse { + + /** ListOperationsResponse operations */ + operations?: (google.longrunning.IOperation[]|null); + + /** ListOperationsResponse nextPageToken */ + nextPageToken?: (string|null); + } + + /** Represents a ListOperationsResponse. */ + class ListOperationsResponse implements IListOperationsResponse { + + /** + * Constructs a new ListOperationsResponse. + * @param [properties] Properties to set + */ + constructor(properties?: google.longrunning.IListOperationsResponse); + + /** ListOperationsResponse operations. */ + public operations: google.longrunning.IOperation[]; + + /** ListOperationsResponse nextPageToken. */ + public nextPageToken: string; + + /** + * Creates a new ListOperationsResponse instance using the specified properties. + * @param [properties] Properties to set + * @returns ListOperationsResponse instance + */ + public static create(properties?: google.longrunning.IListOperationsResponse): google.longrunning.ListOperationsResponse; + + /** + * Encodes the specified ListOperationsResponse message. Does not implicitly {@link google.longrunning.ListOperationsResponse.verify|verify} messages. + * @param message ListOperationsResponse message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.longrunning.IListOperationsResponse, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified ListOperationsResponse message, length delimited. Does not implicitly {@link google.longrunning.ListOperationsResponse.verify|verify} messages. + * @param message ListOperationsResponse message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.longrunning.IListOperationsResponse, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a ListOperationsResponse message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns ListOperationsResponse + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.longrunning.ListOperationsResponse; + + /** + * Decodes a ListOperationsResponse message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns ListOperationsResponse + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.longrunning.ListOperationsResponse; + + /** + * Verifies a ListOperationsResponse message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a ListOperationsResponse message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns ListOperationsResponse + */ + public static fromObject(object: { [k: string]: any }): google.longrunning.ListOperationsResponse; + + /** + * Creates a plain object from a ListOperationsResponse message. Also converts values to other types if specified. + * @param message ListOperationsResponse + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.longrunning.ListOperationsResponse, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this ListOperationsResponse to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + + /** Properties of a CancelOperationRequest. */ + interface ICancelOperationRequest { + + /** CancelOperationRequest name */ + name?: (string|null); + } + + /** Represents a CancelOperationRequest. */ + class CancelOperationRequest implements ICancelOperationRequest { + + /** + * Constructs a new CancelOperationRequest. + * @param [properties] Properties to set + */ + constructor(properties?: google.longrunning.ICancelOperationRequest); + + /** CancelOperationRequest name. */ + public name: string; + + /** + * Creates a new CancelOperationRequest instance using the specified properties. + * @param [properties] Properties to set + * @returns CancelOperationRequest instance + */ + public static create(properties?: google.longrunning.ICancelOperationRequest): google.longrunning.CancelOperationRequest; + + /** + * Encodes the specified CancelOperationRequest message. Does not implicitly {@link google.longrunning.CancelOperationRequest.verify|verify} messages. + * @param message CancelOperationRequest message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.longrunning.ICancelOperationRequest, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified CancelOperationRequest message, length delimited. Does not implicitly {@link google.longrunning.CancelOperationRequest.verify|verify} messages. + * @param message CancelOperationRequest message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.longrunning.ICancelOperationRequest, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a CancelOperationRequest message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns CancelOperationRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.longrunning.CancelOperationRequest; + + /** + * Decodes a CancelOperationRequest message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns CancelOperationRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.longrunning.CancelOperationRequest; + + /** + * Verifies a CancelOperationRequest message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a CancelOperationRequest message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns CancelOperationRequest + */ + public static fromObject(object: { [k: string]: any }): google.longrunning.CancelOperationRequest; + + /** + * Creates a plain object from a CancelOperationRequest message. Also converts values to other types if specified. + * @param message CancelOperationRequest + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.longrunning.CancelOperationRequest, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this CancelOperationRequest to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + + /** Properties of a DeleteOperationRequest. */ + interface IDeleteOperationRequest { + + /** DeleteOperationRequest name */ + name?: (string|null); + } + + /** Represents a DeleteOperationRequest. */ + class DeleteOperationRequest implements IDeleteOperationRequest { + + /** + * Constructs a new DeleteOperationRequest. + * @param [properties] Properties to set + */ + constructor(properties?: google.longrunning.IDeleteOperationRequest); + + /** DeleteOperationRequest name. */ + public name: string; + + /** + * Creates a new DeleteOperationRequest instance using the specified properties. + * @param [properties] Properties to set + * @returns DeleteOperationRequest instance + */ + public static create(properties?: google.longrunning.IDeleteOperationRequest): google.longrunning.DeleteOperationRequest; + + /** + * Encodes the specified DeleteOperationRequest message. Does not implicitly {@link google.longrunning.DeleteOperationRequest.verify|verify} messages. + * @param message DeleteOperationRequest message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.longrunning.IDeleteOperationRequest, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified DeleteOperationRequest message, length delimited. Does not implicitly {@link google.longrunning.DeleteOperationRequest.verify|verify} messages. + * @param message DeleteOperationRequest message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.longrunning.IDeleteOperationRequest, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a DeleteOperationRequest message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns DeleteOperationRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.longrunning.DeleteOperationRequest; + + /** + * Decodes a DeleteOperationRequest message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns DeleteOperationRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.longrunning.DeleteOperationRequest; + + /** + * Verifies a DeleteOperationRequest message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a DeleteOperationRequest message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns DeleteOperationRequest + */ + public static fromObject(object: { [k: string]: any }): google.longrunning.DeleteOperationRequest; + + /** + * Creates a plain object from a DeleteOperationRequest message. Also converts values to other types if specified. + * @param message DeleteOperationRequest + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.longrunning.DeleteOperationRequest, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this DeleteOperationRequest to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + + /** Properties of a WaitOperationRequest. */ + interface IWaitOperationRequest { + + /** WaitOperationRequest name */ + name?: (string|null); + + /** WaitOperationRequest timeout */ + timeout?: (google.protobuf.IDuration|null); + } + + /** Represents a WaitOperationRequest. */ + class WaitOperationRequest implements IWaitOperationRequest { + + /** + * Constructs a new WaitOperationRequest. + * @param [properties] Properties to set + */ + constructor(properties?: google.longrunning.IWaitOperationRequest); + + /** WaitOperationRequest name. */ + public name: string; + + /** WaitOperationRequest timeout. */ + public timeout?: (google.protobuf.IDuration|null); + + /** + * Creates a new WaitOperationRequest instance using the specified properties. + * @param [properties] Properties to set + * @returns WaitOperationRequest instance + */ + public static create(properties?: google.longrunning.IWaitOperationRequest): google.longrunning.WaitOperationRequest; + + /** + * Encodes the specified WaitOperationRequest message. Does not implicitly {@link google.longrunning.WaitOperationRequest.verify|verify} messages. + * @param message WaitOperationRequest message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.longrunning.IWaitOperationRequest, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified WaitOperationRequest message, length delimited. Does not implicitly {@link google.longrunning.WaitOperationRequest.verify|verify} messages. + * @param message WaitOperationRequest message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.longrunning.IWaitOperationRequest, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a WaitOperationRequest message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns WaitOperationRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.longrunning.WaitOperationRequest; + + /** + * Decodes a WaitOperationRequest message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns WaitOperationRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.longrunning.WaitOperationRequest; + + /** + * Verifies a WaitOperationRequest message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a WaitOperationRequest message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns WaitOperationRequest + */ + public static fromObject(object: { [k: string]: any }): google.longrunning.WaitOperationRequest; + + /** + * Creates a plain object from a WaitOperationRequest message. Also converts values to other types if specified. + * @param message WaitOperationRequest + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.longrunning.WaitOperationRequest, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this WaitOperationRequest to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + + /** Properties of an OperationInfo. */ + interface IOperationInfo { + + /** OperationInfo responseType */ + responseType?: (string|null); + + /** OperationInfo metadataType */ + metadataType?: (string|null); + } + + /** Represents an OperationInfo. */ + class OperationInfo implements IOperationInfo { + + /** + * Constructs a new OperationInfo. + * @param [properties] Properties to set + */ + constructor(properties?: google.longrunning.IOperationInfo); + + /** OperationInfo responseType. */ + public responseType: string; + + /** OperationInfo metadataType. */ + public metadataType: string; + + /** + * Creates a new OperationInfo instance using the specified properties. + * @param [properties] Properties to set + * @returns OperationInfo instance + */ + public static create(properties?: google.longrunning.IOperationInfo): google.longrunning.OperationInfo; + + /** + * Encodes the specified OperationInfo message. Does not implicitly {@link google.longrunning.OperationInfo.verify|verify} messages. + * @param message OperationInfo message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.longrunning.IOperationInfo, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified OperationInfo message, length delimited. Does not implicitly {@link google.longrunning.OperationInfo.verify|verify} messages. + * @param message OperationInfo message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.longrunning.IOperationInfo, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes an OperationInfo message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns OperationInfo + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.longrunning.OperationInfo; + + /** + * Decodes an OperationInfo message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns OperationInfo + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.longrunning.OperationInfo; + + /** + * Verifies an OperationInfo message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates an OperationInfo message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns OperationInfo + */ + public static fromObject(object: { [k: string]: any }): google.longrunning.OperationInfo; + + /** + * Creates a plain object from an OperationInfo message. Also converts values to other types if specified. + * @param message OperationInfo + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.longrunning.OperationInfo, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this OperationInfo to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + } + + /** Namespace rpc. */ + namespace rpc { + + /** Properties of a Status. */ + interface IStatus { + + /** Status code */ + code?: (number|null); + + /** Status message */ + message?: (string|null); + + /** Status details */ + details?: (google.protobuf.IAny[]|null); + } + + /** Represents a Status. */ + class Status implements IStatus { + + /** + * Constructs a new Status. + * @param [properties] Properties to set + */ + constructor(properties?: google.rpc.IStatus); + + /** Status code. */ + public code: number; + + /** Status message. */ + public message: string; + + /** Status details. */ + public details: google.protobuf.IAny[]; + + /** + * Creates a new Status instance using the specified properties. + * @param [properties] Properties to set + * @returns Status instance + */ + public static create(properties?: google.rpc.IStatus): google.rpc.Status; + + /** + * Encodes the specified Status message. Does not implicitly {@link google.rpc.Status.verify|verify} messages. + * @param message Status message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.rpc.IStatus, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified Status message, length delimited. Does not implicitly {@link google.rpc.Status.verify|verify} messages. + * @param message Status message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.rpc.IStatus, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a Status message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns Status + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.rpc.Status; + + /** + * Decodes a Status message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns Status + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.rpc.Status; + + /** + * Verifies a Status message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a Status message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns Status + */ + public static fromObject(object: { [k: string]: any }): google.rpc.Status; + + /** + * Creates a plain object from a Status message. Also converts values to other types if specified. + * @param message Status + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.rpc.Status, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this Status to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + } +} diff --git a/packages/google-cloud-gkehub/protos/protos.js b/packages/google-cloud-gkehub/protos/protos.js new file mode 100644 index 00000000000..4496f97b0a6 --- /dev/null +++ b/packages/google-cloud-gkehub/protos/protos.js @@ -0,0 +1,20307 @@ +// 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. + +/*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").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_gke_hub_protos || ($protobuf.roots._google_cloud_gke_hub_protos = {}); + + $root.google = (function() { + + /** + * Namespace google. + * @exports google + * @namespace + */ + var google = {}; + + google.cloud = (function() { + + /** + * Namespace cloud. + * @memberof google + * @namespace + */ + var cloud = {}; + + cloud.gkehub = (function() { + + /** + * Namespace gkehub. + * @memberof google.cloud + * @namespace + */ + var gkehub = {}; + + gkehub.v1beta1 = (function() { + + /** + * Namespace v1beta1. + * @memberof google.cloud.gkehub + * @namespace + */ + var v1beta1 = {}; + + v1beta1.GkeHubMembershipService = (function() { + + /** + * Constructs a new GkeHubMembershipService service. + * @memberof google.cloud.gkehub.v1beta1 + * @classdesc Represents a GkeHubMembershipService + * @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 GkeHubMembershipService(rpcImpl, requestDelimited, responseDelimited) { + $protobuf.rpc.Service.call(this, rpcImpl, requestDelimited, responseDelimited); + } + + (GkeHubMembershipService.prototype = Object.create($protobuf.rpc.Service.prototype)).constructor = GkeHubMembershipService; + + /** + * Creates new GkeHubMembershipService service using the specified rpc implementation. + * @function create + * @memberof google.cloud.gkehub.v1beta1.GkeHubMembershipService + * @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 {GkeHubMembershipService} RPC service. Useful where requests and/or responses are streamed. + */ + GkeHubMembershipService.create = function create(rpcImpl, requestDelimited, responseDelimited) { + return new this(rpcImpl, requestDelimited, responseDelimited); + }; + + /** + * Callback as used by {@link google.cloud.gkehub.v1beta1.GkeHubMembershipService#listMemberships}. + * @memberof google.cloud.gkehub.v1beta1.GkeHubMembershipService + * @typedef ListMembershipsCallback + * @type {function} + * @param {Error|null} error Error, if any + * @param {google.cloud.gkehub.v1beta1.ListMembershipsResponse} [response] ListMembershipsResponse + */ + + /** + * Calls ListMemberships. + * @function listMemberships + * @memberof google.cloud.gkehub.v1beta1.GkeHubMembershipService + * @instance + * @param {google.cloud.gkehub.v1beta1.IListMembershipsRequest} request ListMembershipsRequest message or plain object + * @param {google.cloud.gkehub.v1beta1.GkeHubMembershipService.ListMembershipsCallback} callback Node-style callback called with the error, if any, and ListMembershipsResponse + * @returns {undefined} + * @variation 1 + */ + Object.defineProperty(GkeHubMembershipService.prototype.listMemberships = function listMemberships(request, callback) { + return this.rpcCall(listMemberships, $root.google.cloud.gkehub.v1beta1.ListMembershipsRequest, $root.google.cloud.gkehub.v1beta1.ListMembershipsResponse, request, callback); + }, "name", { value: "ListMemberships" }); + + /** + * Calls ListMemberships. + * @function listMemberships + * @memberof google.cloud.gkehub.v1beta1.GkeHubMembershipService + * @instance + * @param {google.cloud.gkehub.v1beta1.IListMembershipsRequest} request ListMembershipsRequest message or plain object + * @returns {Promise} Promise + * @variation 2 + */ + + /** + * Callback as used by {@link google.cloud.gkehub.v1beta1.GkeHubMembershipService#getMembership}. + * @memberof google.cloud.gkehub.v1beta1.GkeHubMembershipService + * @typedef GetMembershipCallback + * @type {function} + * @param {Error|null} error Error, if any + * @param {google.cloud.gkehub.v1beta1.Membership} [response] Membership + */ + + /** + * Calls GetMembership. + * @function getMembership + * @memberof google.cloud.gkehub.v1beta1.GkeHubMembershipService + * @instance + * @param {google.cloud.gkehub.v1beta1.IGetMembershipRequest} request GetMembershipRequest message or plain object + * @param {google.cloud.gkehub.v1beta1.GkeHubMembershipService.GetMembershipCallback} callback Node-style callback called with the error, if any, and Membership + * @returns {undefined} + * @variation 1 + */ + Object.defineProperty(GkeHubMembershipService.prototype.getMembership = function getMembership(request, callback) { + return this.rpcCall(getMembership, $root.google.cloud.gkehub.v1beta1.GetMembershipRequest, $root.google.cloud.gkehub.v1beta1.Membership, request, callback); + }, "name", { value: "GetMembership" }); + + /** + * Calls GetMembership. + * @function getMembership + * @memberof google.cloud.gkehub.v1beta1.GkeHubMembershipService + * @instance + * @param {google.cloud.gkehub.v1beta1.IGetMembershipRequest} request GetMembershipRequest message or plain object + * @returns {Promise} Promise + * @variation 2 + */ + + /** + * Callback as used by {@link google.cloud.gkehub.v1beta1.GkeHubMembershipService#createMembership}. + * @memberof google.cloud.gkehub.v1beta1.GkeHubMembershipService + * @typedef CreateMembershipCallback + * @type {function} + * @param {Error|null} error Error, if any + * @param {google.longrunning.Operation} [response] Operation + */ + + /** + * Calls CreateMembership. + * @function createMembership + * @memberof google.cloud.gkehub.v1beta1.GkeHubMembershipService + * @instance + * @param {google.cloud.gkehub.v1beta1.ICreateMembershipRequest} request CreateMembershipRequest message or plain object + * @param {google.cloud.gkehub.v1beta1.GkeHubMembershipService.CreateMembershipCallback} callback Node-style callback called with the error, if any, and Operation + * @returns {undefined} + * @variation 1 + */ + Object.defineProperty(GkeHubMembershipService.prototype.createMembership = function createMembership(request, callback) { + return this.rpcCall(createMembership, $root.google.cloud.gkehub.v1beta1.CreateMembershipRequest, $root.google.longrunning.Operation, request, callback); + }, "name", { value: "CreateMembership" }); + + /** + * Calls CreateMembership. + * @function createMembership + * @memberof google.cloud.gkehub.v1beta1.GkeHubMembershipService + * @instance + * @param {google.cloud.gkehub.v1beta1.ICreateMembershipRequest} request CreateMembershipRequest message or plain object + * @returns {Promise} Promise + * @variation 2 + */ + + /** + * Callback as used by {@link google.cloud.gkehub.v1beta1.GkeHubMembershipService#deleteMembership}. + * @memberof google.cloud.gkehub.v1beta1.GkeHubMembershipService + * @typedef DeleteMembershipCallback + * @type {function} + * @param {Error|null} error Error, if any + * @param {google.longrunning.Operation} [response] Operation + */ + + /** + * Calls DeleteMembership. + * @function deleteMembership + * @memberof google.cloud.gkehub.v1beta1.GkeHubMembershipService + * @instance + * @param {google.cloud.gkehub.v1beta1.IDeleteMembershipRequest} request DeleteMembershipRequest message or plain object + * @param {google.cloud.gkehub.v1beta1.GkeHubMembershipService.DeleteMembershipCallback} callback Node-style callback called with the error, if any, and Operation + * @returns {undefined} + * @variation 1 + */ + Object.defineProperty(GkeHubMembershipService.prototype.deleteMembership = function deleteMembership(request, callback) { + return this.rpcCall(deleteMembership, $root.google.cloud.gkehub.v1beta1.DeleteMembershipRequest, $root.google.longrunning.Operation, request, callback); + }, "name", { value: "DeleteMembership" }); + + /** + * Calls DeleteMembership. + * @function deleteMembership + * @memberof google.cloud.gkehub.v1beta1.GkeHubMembershipService + * @instance + * @param {google.cloud.gkehub.v1beta1.IDeleteMembershipRequest} request DeleteMembershipRequest message or plain object + * @returns {Promise} Promise + * @variation 2 + */ + + /** + * Callback as used by {@link google.cloud.gkehub.v1beta1.GkeHubMembershipService#updateMembership}. + * @memberof google.cloud.gkehub.v1beta1.GkeHubMembershipService + * @typedef UpdateMembershipCallback + * @type {function} + * @param {Error|null} error Error, if any + * @param {google.longrunning.Operation} [response] Operation + */ + + /** + * Calls UpdateMembership. + * @function updateMembership + * @memberof google.cloud.gkehub.v1beta1.GkeHubMembershipService + * @instance + * @param {google.cloud.gkehub.v1beta1.IUpdateMembershipRequest} request UpdateMembershipRequest message or plain object + * @param {google.cloud.gkehub.v1beta1.GkeHubMembershipService.UpdateMembershipCallback} callback Node-style callback called with the error, if any, and Operation + * @returns {undefined} + * @variation 1 + */ + Object.defineProperty(GkeHubMembershipService.prototype.updateMembership = function updateMembership(request, callback) { + return this.rpcCall(updateMembership, $root.google.cloud.gkehub.v1beta1.UpdateMembershipRequest, $root.google.longrunning.Operation, request, callback); + }, "name", { value: "UpdateMembership" }); + + /** + * Calls UpdateMembership. + * @function updateMembership + * @memberof google.cloud.gkehub.v1beta1.GkeHubMembershipService + * @instance + * @param {google.cloud.gkehub.v1beta1.IUpdateMembershipRequest} request UpdateMembershipRequest message or plain object + * @returns {Promise} Promise + * @variation 2 + */ + + /** + * Callback as used by {@link google.cloud.gkehub.v1beta1.GkeHubMembershipService#generateConnectManifest}. + * @memberof google.cloud.gkehub.v1beta1.GkeHubMembershipService + * @typedef GenerateConnectManifestCallback + * @type {function} + * @param {Error|null} error Error, if any + * @param {google.cloud.gkehub.v1beta1.GenerateConnectManifestResponse} [response] GenerateConnectManifestResponse + */ + + /** + * Calls GenerateConnectManifest. + * @function generateConnectManifest + * @memberof google.cloud.gkehub.v1beta1.GkeHubMembershipService + * @instance + * @param {google.cloud.gkehub.v1beta1.IGenerateConnectManifestRequest} request GenerateConnectManifestRequest message or plain object + * @param {google.cloud.gkehub.v1beta1.GkeHubMembershipService.GenerateConnectManifestCallback} callback Node-style callback called with the error, if any, and GenerateConnectManifestResponse + * @returns {undefined} + * @variation 1 + */ + Object.defineProperty(GkeHubMembershipService.prototype.generateConnectManifest = function generateConnectManifest(request, callback) { + return this.rpcCall(generateConnectManifest, $root.google.cloud.gkehub.v1beta1.GenerateConnectManifestRequest, $root.google.cloud.gkehub.v1beta1.GenerateConnectManifestResponse, request, callback); + }, "name", { value: "GenerateConnectManifest" }); + + /** + * Calls GenerateConnectManifest. + * @function generateConnectManifest + * @memberof google.cloud.gkehub.v1beta1.GkeHubMembershipService + * @instance + * @param {google.cloud.gkehub.v1beta1.IGenerateConnectManifestRequest} request GenerateConnectManifestRequest message or plain object + * @returns {Promise} Promise + * @variation 2 + */ + + /** + * Callback as used by {@link google.cloud.gkehub.v1beta1.GkeHubMembershipService#validateExclusivity}. + * @memberof google.cloud.gkehub.v1beta1.GkeHubMembershipService + * @typedef ValidateExclusivityCallback + * @type {function} + * @param {Error|null} error Error, if any + * @param {google.cloud.gkehub.v1beta1.ValidateExclusivityResponse} [response] ValidateExclusivityResponse + */ + + /** + * Calls ValidateExclusivity. + * @function validateExclusivity + * @memberof google.cloud.gkehub.v1beta1.GkeHubMembershipService + * @instance + * @param {google.cloud.gkehub.v1beta1.IValidateExclusivityRequest} request ValidateExclusivityRequest message or plain object + * @param {google.cloud.gkehub.v1beta1.GkeHubMembershipService.ValidateExclusivityCallback} callback Node-style callback called with the error, if any, and ValidateExclusivityResponse + * @returns {undefined} + * @variation 1 + */ + Object.defineProperty(GkeHubMembershipService.prototype.validateExclusivity = function validateExclusivity(request, callback) { + return this.rpcCall(validateExclusivity, $root.google.cloud.gkehub.v1beta1.ValidateExclusivityRequest, $root.google.cloud.gkehub.v1beta1.ValidateExclusivityResponse, request, callback); + }, "name", { value: "ValidateExclusivity" }); + + /** + * Calls ValidateExclusivity. + * @function validateExclusivity + * @memberof google.cloud.gkehub.v1beta1.GkeHubMembershipService + * @instance + * @param {google.cloud.gkehub.v1beta1.IValidateExclusivityRequest} request ValidateExclusivityRequest message or plain object + * @returns {Promise} Promise + * @variation 2 + */ + + /** + * Callback as used by {@link google.cloud.gkehub.v1beta1.GkeHubMembershipService#generateExclusivityManifest}. + * @memberof google.cloud.gkehub.v1beta1.GkeHubMembershipService + * @typedef GenerateExclusivityManifestCallback + * @type {function} + * @param {Error|null} error Error, if any + * @param {google.cloud.gkehub.v1beta1.GenerateExclusivityManifestResponse} [response] GenerateExclusivityManifestResponse + */ + + /** + * Calls GenerateExclusivityManifest. + * @function generateExclusivityManifest + * @memberof google.cloud.gkehub.v1beta1.GkeHubMembershipService + * @instance + * @param {google.cloud.gkehub.v1beta1.IGenerateExclusivityManifestRequest} request GenerateExclusivityManifestRequest message or plain object + * @param {google.cloud.gkehub.v1beta1.GkeHubMembershipService.GenerateExclusivityManifestCallback} callback Node-style callback called with the error, if any, and GenerateExclusivityManifestResponse + * @returns {undefined} + * @variation 1 + */ + Object.defineProperty(GkeHubMembershipService.prototype.generateExclusivityManifest = function generateExclusivityManifest(request, callback) { + return this.rpcCall(generateExclusivityManifest, $root.google.cloud.gkehub.v1beta1.GenerateExclusivityManifestRequest, $root.google.cloud.gkehub.v1beta1.GenerateExclusivityManifestResponse, request, callback); + }, "name", { value: "GenerateExclusivityManifest" }); + + /** + * Calls GenerateExclusivityManifest. + * @function generateExclusivityManifest + * @memberof google.cloud.gkehub.v1beta1.GkeHubMembershipService + * @instance + * @param {google.cloud.gkehub.v1beta1.IGenerateExclusivityManifestRequest} request GenerateExclusivityManifestRequest message or plain object + * @returns {Promise} Promise + * @variation 2 + */ + + return GkeHubMembershipService; + })(); + + v1beta1.Membership = (function() { + + /** + * Properties of a Membership. + * @memberof google.cloud.gkehub.v1beta1 + * @interface IMembership + * @property {string|null} [name] Membership name + * @property {Object.|null} [labels] Membership labels + * @property {string|null} [description] Membership description + * @property {google.cloud.gkehub.v1beta1.IMembershipEndpoint|null} [endpoint] Membership endpoint + * @property {google.cloud.gkehub.v1beta1.IMembershipState|null} [state] Membership state + * @property {google.cloud.gkehub.v1beta1.IAuthority|null} [authority] Membership authority + * @property {google.protobuf.ITimestamp|null} [createTime] Membership createTime + * @property {google.protobuf.ITimestamp|null} [updateTime] Membership updateTime + * @property {google.protobuf.ITimestamp|null} [deleteTime] Membership deleteTime + * @property {string|null} [externalId] Membership externalId + * @property {google.protobuf.ITimestamp|null} [lastConnectionTime] Membership lastConnectionTime + * @property {string|null} [uniqueId] Membership uniqueId + * @property {google.cloud.gkehub.v1beta1.Membership.InfrastructureType|null} [infrastructureType] Membership infrastructureType + */ + + /** + * Constructs a new Membership. + * @memberof google.cloud.gkehub.v1beta1 + * @classdesc Represents a Membership. + * @implements IMembership + * @constructor + * @param {google.cloud.gkehub.v1beta1.IMembership=} [properties] Properties to set + */ + function Membership(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]]; + } + + /** + * Membership name. + * @member {string} name + * @memberof google.cloud.gkehub.v1beta1.Membership + * @instance + */ + Membership.prototype.name = ""; + + /** + * Membership labels. + * @member {Object.} labels + * @memberof google.cloud.gkehub.v1beta1.Membership + * @instance + */ + Membership.prototype.labels = $util.emptyObject; + + /** + * Membership description. + * @member {string} description + * @memberof google.cloud.gkehub.v1beta1.Membership + * @instance + */ + Membership.prototype.description = ""; + + /** + * Membership endpoint. + * @member {google.cloud.gkehub.v1beta1.IMembershipEndpoint|null|undefined} endpoint + * @memberof google.cloud.gkehub.v1beta1.Membership + * @instance + */ + Membership.prototype.endpoint = null; + + /** + * Membership state. + * @member {google.cloud.gkehub.v1beta1.IMembershipState|null|undefined} state + * @memberof google.cloud.gkehub.v1beta1.Membership + * @instance + */ + Membership.prototype.state = null; + + /** + * Membership authority. + * @member {google.cloud.gkehub.v1beta1.IAuthority|null|undefined} authority + * @memberof google.cloud.gkehub.v1beta1.Membership + * @instance + */ + Membership.prototype.authority = null; + + /** + * Membership createTime. + * @member {google.protobuf.ITimestamp|null|undefined} createTime + * @memberof google.cloud.gkehub.v1beta1.Membership + * @instance + */ + Membership.prototype.createTime = null; + + /** + * Membership updateTime. + * @member {google.protobuf.ITimestamp|null|undefined} updateTime + * @memberof google.cloud.gkehub.v1beta1.Membership + * @instance + */ + Membership.prototype.updateTime = null; + + /** + * Membership deleteTime. + * @member {google.protobuf.ITimestamp|null|undefined} deleteTime + * @memberof google.cloud.gkehub.v1beta1.Membership + * @instance + */ + Membership.prototype.deleteTime = null; + + /** + * Membership externalId. + * @member {string} externalId + * @memberof google.cloud.gkehub.v1beta1.Membership + * @instance + */ + Membership.prototype.externalId = ""; + + /** + * Membership lastConnectionTime. + * @member {google.protobuf.ITimestamp|null|undefined} lastConnectionTime + * @memberof google.cloud.gkehub.v1beta1.Membership + * @instance + */ + Membership.prototype.lastConnectionTime = null; + + /** + * Membership uniqueId. + * @member {string} uniqueId + * @memberof google.cloud.gkehub.v1beta1.Membership + * @instance + */ + Membership.prototype.uniqueId = ""; + + /** + * Membership infrastructureType. + * @member {google.cloud.gkehub.v1beta1.Membership.InfrastructureType} infrastructureType + * @memberof google.cloud.gkehub.v1beta1.Membership + * @instance + */ + Membership.prototype.infrastructureType = 0; + + // OneOf field names bound to virtual getters and setters + var $oneOfFields; + + /** + * Membership type. + * @member {"endpoint"|undefined} type + * @memberof google.cloud.gkehub.v1beta1.Membership + * @instance + */ + Object.defineProperty(Membership.prototype, "type", { + get: $util.oneOfGetter($oneOfFields = ["endpoint"]), + set: $util.oneOfSetter($oneOfFields) + }); + + /** + * Creates a new Membership instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.v1beta1.Membership + * @static + * @param {google.cloud.gkehub.v1beta1.IMembership=} [properties] Properties to set + * @returns {google.cloud.gkehub.v1beta1.Membership} Membership instance + */ + Membership.create = function create(properties) { + return new Membership(properties); + }; + + /** + * Encodes the specified Membership message. Does not implicitly {@link google.cloud.gkehub.v1beta1.Membership.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.v1beta1.Membership + * @static + * @param {google.cloud.gkehub.v1beta1.IMembership} message Membership message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + Membership.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.name != null && Object.hasOwnProperty.call(message, "name")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.name); + if (message.labels != null && Object.hasOwnProperty.call(message, "labels")) + for (var keys = Object.keys(message.labels), i = 0; i < keys.length; ++i) + writer.uint32(/* id 2, wireType 2 =*/18).fork().uint32(/* id 1, wireType 2 =*/10).string(keys[i]).uint32(/* id 2, wireType 2 =*/18).string(message.labels[keys[i]]).ldelim(); + if (message.description != null && Object.hasOwnProperty.call(message, "description")) + writer.uint32(/* id 3, wireType 2 =*/26).string(message.description); + if (message.endpoint != null && Object.hasOwnProperty.call(message, "endpoint")) + $root.google.cloud.gkehub.v1beta1.MembershipEndpoint.encode(message.endpoint, writer.uint32(/* id 4, wireType 2 =*/34).fork()).ldelim(); + if (message.state != null && Object.hasOwnProperty.call(message, "state")) + $root.google.cloud.gkehub.v1beta1.MembershipState.encode(message.state, writer.uint32(/* id 5, wireType 2 =*/42).fork()).ldelim(); + if (message.createTime != null && Object.hasOwnProperty.call(message, "createTime")) + $root.google.protobuf.Timestamp.encode(message.createTime, writer.uint32(/* id 6, wireType 2 =*/50).fork()).ldelim(); + if (message.updateTime != null && Object.hasOwnProperty.call(message, "updateTime")) + $root.google.protobuf.Timestamp.encode(message.updateTime, writer.uint32(/* id 7, wireType 2 =*/58).fork()).ldelim(); + if (message.deleteTime != null && Object.hasOwnProperty.call(message, "deleteTime")) + $root.google.protobuf.Timestamp.encode(message.deleteTime, writer.uint32(/* id 8, wireType 2 =*/66).fork()).ldelim(); + if (message.authority != null && Object.hasOwnProperty.call(message, "authority")) + $root.google.cloud.gkehub.v1beta1.Authority.encode(message.authority, writer.uint32(/* id 9, wireType 2 =*/74).fork()).ldelim(); + if (message.externalId != null && Object.hasOwnProperty.call(message, "externalId")) + writer.uint32(/* id 10, wireType 2 =*/82).string(message.externalId); + if (message.lastConnectionTime != null && Object.hasOwnProperty.call(message, "lastConnectionTime")) + $root.google.protobuf.Timestamp.encode(message.lastConnectionTime, writer.uint32(/* id 11, wireType 2 =*/90).fork()).ldelim(); + if (message.uniqueId != null && Object.hasOwnProperty.call(message, "uniqueId")) + writer.uint32(/* id 12, wireType 2 =*/98).string(message.uniqueId); + if (message.infrastructureType != null && Object.hasOwnProperty.call(message, "infrastructureType")) + writer.uint32(/* id 13, wireType 0 =*/104).int32(message.infrastructureType); + return writer; + }; + + /** + * Encodes the specified Membership message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta1.Membership.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.v1beta1.Membership + * @static + * @param {google.cloud.gkehub.v1beta1.IMembership} message Membership message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + Membership.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a Membership message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.v1beta1.Membership + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.v1beta1.Membership} Membership + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + Membership.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.v1beta1.Membership(), key, value; + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.name = reader.string(); + break; + case 2: + 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 3: + message.description = reader.string(); + break; + case 4: + message.endpoint = $root.google.cloud.gkehub.v1beta1.MembershipEndpoint.decode(reader, reader.uint32()); + break; + case 5: + message.state = $root.google.cloud.gkehub.v1beta1.MembershipState.decode(reader, reader.uint32()); + break; + case 9: + message.authority = $root.google.cloud.gkehub.v1beta1.Authority.decode(reader, reader.uint32()); + break; + case 6: + message.createTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + break; + case 7: + message.updateTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + break; + case 8: + message.deleteTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + break; + case 10: + message.externalId = reader.string(); + break; + case 11: + message.lastConnectionTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + break; + case 12: + message.uniqueId = reader.string(); + break; + case 13: + message.infrastructureType = reader.int32(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a Membership message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.v1beta1.Membership + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.v1beta1.Membership} Membership + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + Membership.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a Membership message. + * @function verify + * @memberof google.cloud.gkehub.v1beta1.Membership + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + Membership.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + var properties = {}; + if (message.name != null && message.hasOwnProperty("name")) + if (!$util.isString(message.name)) + return "name: 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.description != null && message.hasOwnProperty("description")) + if (!$util.isString(message.description)) + return "description: string expected"; + if (message.endpoint != null && message.hasOwnProperty("endpoint")) { + properties.type = 1; + { + var error = $root.google.cloud.gkehub.v1beta1.MembershipEndpoint.verify(message.endpoint); + if (error) + return "endpoint." + error; + } + } + if (message.state != null && message.hasOwnProperty("state")) { + var error = $root.google.cloud.gkehub.v1beta1.MembershipState.verify(message.state); + if (error) + return "state." + error; + } + if (message.authority != null && message.hasOwnProperty("authority")) { + var error = $root.google.cloud.gkehub.v1beta1.Authority.verify(message.authority); + if (error) + return "authority." + error; + } + if (message.createTime != null && message.hasOwnProperty("createTime")) { + var error = $root.google.protobuf.Timestamp.verify(message.createTime); + if (error) + return "createTime." + error; + } + if (message.updateTime != null && message.hasOwnProperty("updateTime")) { + var error = $root.google.protobuf.Timestamp.verify(message.updateTime); + if (error) + return "updateTime." + error; + } + if (message.deleteTime != null && message.hasOwnProperty("deleteTime")) { + var error = $root.google.protobuf.Timestamp.verify(message.deleteTime); + if (error) + return "deleteTime." + error; + } + if (message.externalId != null && message.hasOwnProperty("externalId")) + if (!$util.isString(message.externalId)) + return "externalId: string expected"; + if (message.lastConnectionTime != null && message.hasOwnProperty("lastConnectionTime")) { + var error = $root.google.protobuf.Timestamp.verify(message.lastConnectionTime); + if (error) + return "lastConnectionTime." + error; + } + if (message.uniqueId != null && message.hasOwnProperty("uniqueId")) + if (!$util.isString(message.uniqueId)) + return "uniqueId: string expected"; + if (message.infrastructureType != null && message.hasOwnProperty("infrastructureType")) + switch (message.infrastructureType) { + default: + return "infrastructureType: enum value expected"; + case 0: + case 1: + case 2: + break; + } + return null; + }; + + /** + * Creates a Membership message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.v1beta1.Membership + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.v1beta1.Membership} Membership + */ + Membership.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.v1beta1.Membership) + return object; + var message = new $root.google.cloud.gkehub.v1beta1.Membership(); + if (object.name != null) + message.name = String(object.name); + if (object.labels) { + if (typeof object.labels !== "object") + throw TypeError(".google.cloud.gkehub.v1beta1.Membership.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.description != null) + message.description = String(object.description); + if (object.endpoint != null) { + if (typeof object.endpoint !== "object") + throw TypeError(".google.cloud.gkehub.v1beta1.Membership.endpoint: object expected"); + message.endpoint = $root.google.cloud.gkehub.v1beta1.MembershipEndpoint.fromObject(object.endpoint); + } + if (object.state != null) { + if (typeof object.state !== "object") + throw TypeError(".google.cloud.gkehub.v1beta1.Membership.state: object expected"); + message.state = $root.google.cloud.gkehub.v1beta1.MembershipState.fromObject(object.state); + } + if (object.authority != null) { + if (typeof object.authority !== "object") + throw TypeError(".google.cloud.gkehub.v1beta1.Membership.authority: object expected"); + message.authority = $root.google.cloud.gkehub.v1beta1.Authority.fromObject(object.authority); + } + if (object.createTime != null) { + if (typeof object.createTime !== "object") + throw TypeError(".google.cloud.gkehub.v1beta1.Membership.createTime: object expected"); + message.createTime = $root.google.protobuf.Timestamp.fromObject(object.createTime); + } + if (object.updateTime != null) { + if (typeof object.updateTime !== "object") + throw TypeError(".google.cloud.gkehub.v1beta1.Membership.updateTime: object expected"); + message.updateTime = $root.google.protobuf.Timestamp.fromObject(object.updateTime); + } + if (object.deleteTime != null) { + if (typeof object.deleteTime !== "object") + throw TypeError(".google.cloud.gkehub.v1beta1.Membership.deleteTime: object expected"); + message.deleteTime = $root.google.protobuf.Timestamp.fromObject(object.deleteTime); + } + if (object.externalId != null) + message.externalId = String(object.externalId); + if (object.lastConnectionTime != null) { + if (typeof object.lastConnectionTime !== "object") + throw TypeError(".google.cloud.gkehub.v1beta1.Membership.lastConnectionTime: object expected"); + message.lastConnectionTime = $root.google.protobuf.Timestamp.fromObject(object.lastConnectionTime); + } + if (object.uniqueId != null) + message.uniqueId = String(object.uniqueId); + switch (object.infrastructureType) { + case "INFRASTRUCTURE_TYPE_UNSPECIFIED": + case 0: + message.infrastructureType = 0; + break; + case "ON_PREM": + case 1: + message.infrastructureType = 1; + break; + case "MULTI_CLOUD": + case 2: + message.infrastructureType = 2; + break; + } + return message; + }; + + /** + * Creates a plain object from a Membership message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.v1beta1.Membership + * @static + * @param {google.cloud.gkehub.v1beta1.Membership} message Membership + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + Membership.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.objects || options.defaults) + object.labels = {}; + if (options.defaults) { + object.name = ""; + object.description = ""; + object.state = null; + object.createTime = null; + object.updateTime = null; + object.deleteTime = null; + object.authority = null; + object.externalId = ""; + object.lastConnectionTime = null; + object.uniqueId = ""; + object.infrastructureType = options.enums === String ? "INFRASTRUCTURE_TYPE_UNSPECIFIED" : 0; + } + if (message.name != null && message.hasOwnProperty("name")) + object.name = message.name; + 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]]; + } + if (message.description != null && message.hasOwnProperty("description")) + object.description = message.description; + if (message.endpoint != null && message.hasOwnProperty("endpoint")) { + object.endpoint = $root.google.cloud.gkehub.v1beta1.MembershipEndpoint.toObject(message.endpoint, options); + if (options.oneofs) + object.type = "endpoint"; + } + if (message.state != null && message.hasOwnProperty("state")) + object.state = $root.google.cloud.gkehub.v1beta1.MembershipState.toObject(message.state, options); + if (message.createTime != null && message.hasOwnProperty("createTime")) + object.createTime = $root.google.protobuf.Timestamp.toObject(message.createTime, options); + if (message.updateTime != null && message.hasOwnProperty("updateTime")) + object.updateTime = $root.google.protobuf.Timestamp.toObject(message.updateTime, options); + if (message.deleteTime != null && message.hasOwnProperty("deleteTime")) + object.deleteTime = $root.google.protobuf.Timestamp.toObject(message.deleteTime, options); + if (message.authority != null && message.hasOwnProperty("authority")) + object.authority = $root.google.cloud.gkehub.v1beta1.Authority.toObject(message.authority, options); + if (message.externalId != null && message.hasOwnProperty("externalId")) + object.externalId = message.externalId; + if (message.lastConnectionTime != null && message.hasOwnProperty("lastConnectionTime")) + object.lastConnectionTime = $root.google.protobuf.Timestamp.toObject(message.lastConnectionTime, options); + if (message.uniqueId != null && message.hasOwnProperty("uniqueId")) + object.uniqueId = message.uniqueId; + if (message.infrastructureType != null && message.hasOwnProperty("infrastructureType")) + object.infrastructureType = options.enums === String ? $root.google.cloud.gkehub.v1beta1.Membership.InfrastructureType[message.infrastructureType] : message.infrastructureType; + return object; + }; + + /** + * Converts this Membership to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.v1beta1.Membership + * @instance + * @returns {Object.} JSON object + */ + Membership.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + /** + * InfrastructureType enum. + * @name google.cloud.gkehub.v1beta1.Membership.InfrastructureType + * @enum {number} + * @property {number} INFRASTRUCTURE_TYPE_UNSPECIFIED=0 INFRASTRUCTURE_TYPE_UNSPECIFIED value + * @property {number} ON_PREM=1 ON_PREM value + * @property {number} MULTI_CLOUD=2 MULTI_CLOUD value + */ + Membership.InfrastructureType = (function() { + var valuesById = {}, values = Object.create(valuesById); + values[valuesById[0] = "INFRASTRUCTURE_TYPE_UNSPECIFIED"] = 0; + values[valuesById[1] = "ON_PREM"] = 1; + values[valuesById[2] = "MULTI_CLOUD"] = 2; + return values; + })(); + + return Membership; + })(); + + v1beta1.MembershipEndpoint = (function() { + + /** + * Properties of a MembershipEndpoint. + * @memberof google.cloud.gkehub.v1beta1 + * @interface IMembershipEndpoint + * @property {google.cloud.gkehub.v1beta1.IGkeCluster|null} [gkeCluster] MembershipEndpoint gkeCluster + * @property {google.cloud.gkehub.v1beta1.IKubernetesMetadata|null} [kubernetesMetadata] MembershipEndpoint kubernetesMetadata + * @property {google.cloud.gkehub.v1beta1.IKubernetesResource|null} [kubernetesResource] MembershipEndpoint kubernetesResource + */ + + /** + * Constructs a new MembershipEndpoint. + * @memberof google.cloud.gkehub.v1beta1 + * @classdesc Represents a MembershipEndpoint. + * @implements IMembershipEndpoint + * @constructor + * @param {google.cloud.gkehub.v1beta1.IMembershipEndpoint=} [properties] Properties to set + */ + function MembershipEndpoint(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]]; + } + + /** + * MembershipEndpoint gkeCluster. + * @member {google.cloud.gkehub.v1beta1.IGkeCluster|null|undefined} gkeCluster + * @memberof google.cloud.gkehub.v1beta1.MembershipEndpoint + * @instance + */ + MembershipEndpoint.prototype.gkeCluster = null; + + /** + * MembershipEndpoint kubernetesMetadata. + * @member {google.cloud.gkehub.v1beta1.IKubernetesMetadata|null|undefined} kubernetesMetadata + * @memberof google.cloud.gkehub.v1beta1.MembershipEndpoint + * @instance + */ + MembershipEndpoint.prototype.kubernetesMetadata = null; + + /** + * MembershipEndpoint kubernetesResource. + * @member {google.cloud.gkehub.v1beta1.IKubernetesResource|null|undefined} kubernetesResource + * @memberof google.cloud.gkehub.v1beta1.MembershipEndpoint + * @instance + */ + MembershipEndpoint.prototype.kubernetesResource = null; + + /** + * Creates a new MembershipEndpoint instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.v1beta1.MembershipEndpoint + * @static + * @param {google.cloud.gkehub.v1beta1.IMembershipEndpoint=} [properties] Properties to set + * @returns {google.cloud.gkehub.v1beta1.MembershipEndpoint} MembershipEndpoint instance + */ + MembershipEndpoint.create = function create(properties) { + return new MembershipEndpoint(properties); + }; + + /** + * Encodes the specified MembershipEndpoint message. Does not implicitly {@link google.cloud.gkehub.v1beta1.MembershipEndpoint.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.v1beta1.MembershipEndpoint + * @static + * @param {google.cloud.gkehub.v1beta1.IMembershipEndpoint} message MembershipEndpoint message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + MembershipEndpoint.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.gkeCluster != null && Object.hasOwnProperty.call(message, "gkeCluster")) + $root.google.cloud.gkehub.v1beta1.GkeCluster.encode(message.gkeCluster, writer.uint32(/* id 4, wireType 2 =*/34).fork()).ldelim(); + if (message.kubernetesMetadata != null && Object.hasOwnProperty.call(message, "kubernetesMetadata")) + $root.google.cloud.gkehub.v1beta1.KubernetesMetadata.encode(message.kubernetesMetadata, writer.uint32(/* id 5, wireType 2 =*/42).fork()).ldelim(); + if (message.kubernetesResource != null && Object.hasOwnProperty.call(message, "kubernetesResource")) + $root.google.cloud.gkehub.v1beta1.KubernetesResource.encode(message.kubernetesResource, writer.uint32(/* id 6, wireType 2 =*/50).fork()).ldelim(); + return writer; + }; + + /** + * Encodes the specified MembershipEndpoint message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta1.MembershipEndpoint.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.v1beta1.MembershipEndpoint + * @static + * @param {google.cloud.gkehub.v1beta1.IMembershipEndpoint} message MembershipEndpoint message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + MembershipEndpoint.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a MembershipEndpoint message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.v1beta1.MembershipEndpoint + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.v1beta1.MembershipEndpoint} MembershipEndpoint + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + MembershipEndpoint.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.v1beta1.MembershipEndpoint(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 4: + message.gkeCluster = $root.google.cloud.gkehub.v1beta1.GkeCluster.decode(reader, reader.uint32()); + break; + case 5: + message.kubernetesMetadata = $root.google.cloud.gkehub.v1beta1.KubernetesMetadata.decode(reader, reader.uint32()); + break; + case 6: + message.kubernetesResource = $root.google.cloud.gkehub.v1beta1.KubernetesResource.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a MembershipEndpoint message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.v1beta1.MembershipEndpoint + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.v1beta1.MembershipEndpoint} MembershipEndpoint + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + MembershipEndpoint.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a MembershipEndpoint message. + * @function verify + * @memberof google.cloud.gkehub.v1beta1.MembershipEndpoint + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + MembershipEndpoint.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.gkeCluster != null && message.hasOwnProperty("gkeCluster")) { + var error = $root.google.cloud.gkehub.v1beta1.GkeCluster.verify(message.gkeCluster); + if (error) + return "gkeCluster." + error; + } + if (message.kubernetesMetadata != null && message.hasOwnProperty("kubernetesMetadata")) { + var error = $root.google.cloud.gkehub.v1beta1.KubernetesMetadata.verify(message.kubernetesMetadata); + if (error) + return "kubernetesMetadata." + error; + } + if (message.kubernetesResource != null && message.hasOwnProperty("kubernetesResource")) { + var error = $root.google.cloud.gkehub.v1beta1.KubernetesResource.verify(message.kubernetesResource); + if (error) + return "kubernetesResource." + error; + } + return null; + }; + + /** + * Creates a MembershipEndpoint message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.v1beta1.MembershipEndpoint + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.v1beta1.MembershipEndpoint} MembershipEndpoint + */ + MembershipEndpoint.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.v1beta1.MembershipEndpoint) + return object; + var message = new $root.google.cloud.gkehub.v1beta1.MembershipEndpoint(); + if (object.gkeCluster != null) { + if (typeof object.gkeCluster !== "object") + throw TypeError(".google.cloud.gkehub.v1beta1.MembershipEndpoint.gkeCluster: object expected"); + message.gkeCluster = $root.google.cloud.gkehub.v1beta1.GkeCluster.fromObject(object.gkeCluster); + } + if (object.kubernetesMetadata != null) { + if (typeof object.kubernetesMetadata !== "object") + throw TypeError(".google.cloud.gkehub.v1beta1.MembershipEndpoint.kubernetesMetadata: object expected"); + message.kubernetesMetadata = $root.google.cloud.gkehub.v1beta1.KubernetesMetadata.fromObject(object.kubernetesMetadata); + } + if (object.kubernetesResource != null) { + if (typeof object.kubernetesResource !== "object") + throw TypeError(".google.cloud.gkehub.v1beta1.MembershipEndpoint.kubernetesResource: object expected"); + message.kubernetesResource = $root.google.cloud.gkehub.v1beta1.KubernetesResource.fromObject(object.kubernetesResource); + } + return message; + }; + + /** + * Creates a plain object from a MembershipEndpoint message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.v1beta1.MembershipEndpoint + * @static + * @param {google.cloud.gkehub.v1beta1.MembershipEndpoint} message MembershipEndpoint + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + MembershipEndpoint.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.gkeCluster = null; + object.kubernetesMetadata = null; + object.kubernetesResource = null; + } + if (message.gkeCluster != null && message.hasOwnProperty("gkeCluster")) + object.gkeCluster = $root.google.cloud.gkehub.v1beta1.GkeCluster.toObject(message.gkeCluster, options); + if (message.kubernetesMetadata != null && message.hasOwnProperty("kubernetesMetadata")) + object.kubernetesMetadata = $root.google.cloud.gkehub.v1beta1.KubernetesMetadata.toObject(message.kubernetesMetadata, options); + if (message.kubernetesResource != null && message.hasOwnProperty("kubernetesResource")) + object.kubernetesResource = $root.google.cloud.gkehub.v1beta1.KubernetesResource.toObject(message.kubernetesResource, options); + return object; + }; + + /** + * Converts this MembershipEndpoint to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.v1beta1.MembershipEndpoint + * @instance + * @returns {Object.} JSON object + */ + MembershipEndpoint.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return MembershipEndpoint; + })(); + + v1beta1.KubernetesResource = (function() { + + /** + * Properties of a KubernetesResource. + * @memberof google.cloud.gkehub.v1beta1 + * @interface IKubernetesResource + * @property {string|null} [membershipCrManifest] KubernetesResource membershipCrManifest + * @property {Array.|null} [membershipResources] KubernetesResource membershipResources + * @property {Array.|null} [connectResources] KubernetesResource connectResources + * @property {google.cloud.gkehub.v1beta1.IResourceOptions|null} [resourceOptions] KubernetesResource resourceOptions + */ + + /** + * Constructs a new KubernetesResource. + * @memberof google.cloud.gkehub.v1beta1 + * @classdesc Represents a KubernetesResource. + * @implements IKubernetesResource + * @constructor + * @param {google.cloud.gkehub.v1beta1.IKubernetesResource=} [properties] Properties to set + */ + function KubernetesResource(properties) { + this.membershipResources = []; + this.connectResources = []; + 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]]; + } + + /** + * KubernetesResource membershipCrManifest. + * @member {string} membershipCrManifest + * @memberof google.cloud.gkehub.v1beta1.KubernetesResource + * @instance + */ + KubernetesResource.prototype.membershipCrManifest = ""; + + /** + * KubernetesResource membershipResources. + * @member {Array.} membershipResources + * @memberof google.cloud.gkehub.v1beta1.KubernetesResource + * @instance + */ + KubernetesResource.prototype.membershipResources = $util.emptyArray; + + /** + * KubernetesResource connectResources. + * @member {Array.} connectResources + * @memberof google.cloud.gkehub.v1beta1.KubernetesResource + * @instance + */ + KubernetesResource.prototype.connectResources = $util.emptyArray; + + /** + * KubernetesResource resourceOptions. + * @member {google.cloud.gkehub.v1beta1.IResourceOptions|null|undefined} resourceOptions + * @memberof google.cloud.gkehub.v1beta1.KubernetesResource + * @instance + */ + KubernetesResource.prototype.resourceOptions = null; + + /** + * Creates a new KubernetesResource instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.v1beta1.KubernetesResource + * @static + * @param {google.cloud.gkehub.v1beta1.IKubernetesResource=} [properties] Properties to set + * @returns {google.cloud.gkehub.v1beta1.KubernetesResource} KubernetesResource instance + */ + KubernetesResource.create = function create(properties) { + return new KubernetesResource(properties); + }; + + /** + * Encodes the specified KubernetesResource message. Does not implicitly {@link google.cloud.gkehub.v1beta1.KubernetesResource.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.v1beta1.KubernetesResource + * @static + * @param {google.cloud.gkehub.v1beta1.IKubernetesResource} message KubernetesResource message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + KubernetesResource.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.membershipCrManifest != null && Object.hasOwnProperty.call(message, "membershipCrManifest")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.membershipCrManifest); + if (message.membershipResources != null && message.membershipResources.length) + for (var i = 0; i < message.membershipResources.length; ++i) + $root.google.cloud.gkehub.v1beta1.ResourceManifest.encode(message.membershipResources[i], writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim(); + if (message.connectResources != null && message.connectResources.length) + for (var i = 0; i < message.connectResources.length; ++i) + $root.google.cloud.gkehub.v1beta1.ResourceManifest.encode(message.connectResources[i], writer.uint32(/* id 3, wireType 2 =*/26).fork()).ldelim(); + if (message.resourceOptions != null && Object.hasOwnProperty.call(message, "resourceOptions")) + $root.google.cloud.gkehub.v1beta1.ResourceOptions.encode(message.resourceOptions, writer.uint32(/* id 4, wireType 2 =*/34).fork()).ldelim(); + return writer; + }; + + /** + * Encodes the specified KubernetesResource message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta1.KubernetesResource.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.v1beta1.KubernetesResource + * @static + * @param {google.cloud.gkehub.v1beta1.IKubernetesResource} message KubernetesResource message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + KubernetesResource.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a KubernetesResource message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.v1beta1.KubernetesResource + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.v1beta1.KubernetesResource} KubernetesResource + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + KubernetesResource.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.v1beta1.KubernetesResource(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.membershipCrManifest = reader.string(); + break; + case 2: + if (!(message.membershipResources && message.membershipResources.length)) + message.membershipResources = []; + message.membershipResources.push($root.google.cloud.gkehub.v1beta1.ResourceManifest.decode(reader, reader.uint32())); + break; + case 3: + if (!(message.connectResources && message.connectResources.length)) + message.connectResources = []; + message.connectResources.push($root.google.cloud.gkehub.v1beta1.ResourceManifest.decode(reader, reader.uint32())); + break; + case 4: + message.resourceOptions = $root.google.cloud.gkehub.v1beta1.ResourceOptions.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a KubernetesResource message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.v1beta1.KubernetesResource + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.v1beta1.KubernetesResource} KubernetesResource + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + KubernetesResource.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a KubernetesResource message. + * @function verify + * @memberof google.cloud.gkehub.v1beta1.KubernetesResource + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + KubernetesResource.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.membershipCrManifest != null && message.hasOwnProperty("membershipCrManifest")) + if (!$util.isString(message.membershipCrManifest)) + return "membershipCrManifest: string expected"; + if (message.membershipResources != null && message.hasOwnProperty("membershipResources")) { + if (!Array.isArray(message.membershipResources)) + return "membershipResources: array expected"; + for (var i = 0; i < message.membershipResources.length; ++i) { + var error = $root.google.cloud.gkehub.v1beta1.ResourceManifest.verify(message.membershipResources[i]); + if (error) + return "membershipResources." + error; + } + } + if (message.connectResources != null && message.hasOwnProperty("connectResources")) { + if (!Array.isArray(message.connectResources)) + return "connectResources: array expected"; + for (var i = 0; i < message.connectResources.length; ++i) { + var error = $root.google.cloud.gkehub.v1beta1.ResourceManifest.verify(message.connectResources[i]); + if (error) + return "connectResources." + error; + } + } + if (message.resourceOptions != null && message.hasOwnProperty("resourceOptions")) { + var error = $root.google.cloud.gkehub.v1beta1.ResourceOptions.verify(message.resourceOptions); + if (error) + return "resourceOptions." + error; + } + return null; + }; + + /** + * Creates a KubernetesResource message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.v1beta1.KubernetesResource + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.v1beta1.KubernetesResource} KubernetesResource + */ + KubernetesResource.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.v1beta1.KubernetesResource) + return object; + var message = new $root.google.cloud.gkehub.v1beta1.KubernetesResource(); + if (object.membershipCrManifest != null) + message.membershipCrManifest = String(object.membershipCrManifest); + if (object.membershipResources) { + if (!Array.isArray(object.membershipResources)) + throw TypeError(".google.cloud.gkehub.v1beta1.KubernetesResource.membershipResources: array expected"); + message.membershipResources = []; + for (var i = 0; i < object.membershipResources.length; ++i) { + if (typeof object.membershipResources[i] !== "object") + throw TypeError(".google.cloud.gkehub.v1beta1.KubernetesResource.membershipResources: object expected"); + message.membershipResources[i] = $root.google.cloud.gkehub.v1beta1.ResourceManifest.fromObject(object.membershipResources[i]); + } + } + if (object.connectResources) { + if (!Array.isArray(object.connectResources)) + throw TypeError(".google.cloud.gkehub.v1beta1.KubernetesResource.connectResources: array expected"); + message.connectResources = []; + for (var i = 0; i < object.connectResources.length; ++i) { + if (typeof object.connectResources[i] !== "object") + throw TypeError(".google.cloud.gkehub.v1beta1.KubernetesResource.connectResources: object expected"); + message.connectResources[i] = $root.google.cloud.gkehub.v1beta1.ResourceManifest.fromObject(object.connectResources[i]); + } + } + if (object.resourceOptions != null) { + if (typeof object.resourceOptions !== "object") + throw TypeError(".google.cloud.gkehub.v1beta1.KubernetesResource.resourceOptions: object expected"); + message.resourceOptions = $root.google.cloud.gkehub.v1beta1.ResourceOptions.fromObject(object.resourceOptions); + } + return message; + }; + + /** + * Creates a plain object from a KubernetesResource message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.v1beta1.KubernetesResource + * @static + * @param {google.cloud.gkehub.v1beta1.KubernetesResource} message KubernetesResource + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + KubernetesResource.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.arrays || options.defaults) { + object.membershipResources = []; + object.connectResources = []; + } + if (options.defaults) { + object.membershipCrManifest = ""; + object.resourceOptions = null; + } + if (message.membershipCrManifest != null && message.hasOwnProperty("membershipCrManifest")) + object.membershipCrManifest = message.membershipCrManifest; + if (message.membershipResources && message.membershipResources.length) { + object.membershipResources = []; + for (var j = 0; j < message.membershipResources.length; ++j) + object.membershipResources[j] = $root.google.cloud.gkehub.v1beta1.ResourceManifest.toObject(message.membershipResources[j], options); + } + if (message.connectResources && message.connectResources.length) { + object.connectResources = []; + for (var j = 0; j < message.connectResources.length; ++j) + object.connectResources[j] = $root.google.cloud.gkehub.v1beta1.ResourceManifest.toObject(message.connectResources[j], options); + } + if (message.resourceOptions != null && message.hasOwnProperty("resourceOptions")) + object.resourceOptions = $root.google.cloud.gkehub.v1beta1.ResourceOptions.toObject(message.resourceOptions, options); + return object; + }; + + /** + * Converts this KubernetesResource to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.v1beta1.KubernetesResource + * @instance + * @returns {Object.} JSON object + */ + KubernetesResource.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return KubernetesResource; + })(); + + v1beta1.ResourceOptions = (function() { + + /** + * Properties of a ResourceOptions. + * @memberof google.cloud.gkehub.v1beta1 + * @interface IResourceOptions + * @property {string|null} [connectVersion] ResourceOptions connectVersion + * @property {boolean|null} [v1beta1Crd] ResourceOptions v1beta1Crd + */ + + /** + * Constructs a new ResourceOptions. + * @memberof google.cloud.gkehub.v1beta1 + * @classdesc Represents a ResourceOptions. + * @implements IResourceOptions + * @constructor + * @param {google.cloud.gkehub.v1beta1.IResourceOptions=} [properties] Properties to set + */ + function ResourceOptions(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]]; + } + + /** + * ResourceOptions connectVersion. + * @member {string} connectVersion + * @memberof google.cloud.gkehub.v1beta1.ResourceOptions + * @instance + */ + ResourceOptions.prototype.connectVersion = ""; + + /** + * ResourceOptions v1beta1Crd. + * @member {boolean} v1beta1Crd + * @memberof google.cloud.gkehub.v1beta1.ResourceOptions + * @instance + */ + ResourceOptions.prototype.v1beta1Crd = false; + + /** + * Creates a new ResourceOptions instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.v1beta1.ResourceOptions + * @static + * @param {google.cloud.gkehub.v1beta1.IResourceOptions=} [properties] Properties to set + * @returns {google.cloud.gkehub.v1beta1.ResourceOptions} ResourceOptions instance + */ + ResourceOptions.create = function create(properties) { + return new ResourceOptions(properties); + }; + + /** + * Encodes the specified ResourceOptions message. Does not implicitly {@link google.cloud.gkehub.v1beta1.ResourceOptions.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.v1beta1.ResourceOptions + * @static + * @param {google.cloud.gkehub.v1beta1.IResourceOptions} message ResourceOptions message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + ResourceOptions.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.connectVersion != null && Object.hasOwnProperty.call(message, "connectVersion")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.connectVersion); + if (message.v1beta1Crd != null && Object.hasOwnProperty.call(message, "v1beta1Crd")) + writer.uint32(/* id 2, wireType 0 =*/16).bool(message.v1beta1Crd); + return writer; + }; + + /** + * Encodes the specified ResourceOptions message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta1.ResourceOptions.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.v1beta1.ResourceOptions + * @static + * @param {google.cloud.gkehub.v1beta1.IResourceOptions} message ResourceOptions message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + ResourceOptions.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a ResourceOptions message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.v1beta1.ResourceOptions + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.v1beta1.ResourceOptions} ResourceOptions + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + ResourceOptions.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.v1beta1.ResourceOptions(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.connectVersion = reader.string(); + break; + case 2: + message.v1beta1Crd = reader.bool(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a ResourceOptions message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.v1beta1.ResourceOptions + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.v1beta1.ResourceOptions} ResourceOptions + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + ResourceOptions.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a ResourceOptions message. + * @function verify + * @memberof google.cloud.gkehub.v1beta1.ResourceOptions + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + ResourceOptions.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.connectVersion != null && message.hasOwnProperty("connectVersion")) + if (!$util.isString(message.connectVersion)) + return "connectVersion: string expected"; + if (message.v1beta1Crd != null && message.hasOwnProperty("v1beta1Crd")) + if (typeof message.v1beta1Crd !== "boolean") + return "v1beta1Crd: boolean expected"; + return null; + }; + + /** + * Creates a ResourceOptions message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.v1beta1.ResourceOptions + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.v1beta1.ResourceOptions} ResourceOptions + */ + ResourceOptions.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.v1beta1.ResourceOptions) + return object; + var message = new $root.google.cloud.gkehub.v1beta1.ResourceOptions(); + if (object.connectVersion != null) + message.connectVersion = String(object.connectVersion); + if (object.v1beta1Crd != null) + message.v1beta1Crd = Boolean(object.v1beta1Crd); + return message; + }; + + /** + * Creates a plain object from a ResourceOptions message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.v1beta1.ResourceOptions + * @static + * @param {google.cloud.gkehub.v1beta1.ResourceOptions} message ResourceOptions + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + ResourceOptions.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.connectVersion = ""; + object.v1beta1Crd = false; + } + if (message.connectVersion != null && message.hasOwnProperty("connectVersion")) + object.connectVersion = message.connectVersion; + if (message.v1beta1Crd != null && message.hasOwnProperty("v1beta1Crd")) + object.v1beta1Crd = message.v1beta1Crd; + return object; + }; + + /** + * Converts this ResourceOptions to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.v1beta1.ResourceOptions + * @instance + * @returns {Object.} JSON object + */ + ResourceOptions.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return ResourceOptions; + })(); + + v1beta1.ResourceManifest = (function() { + + /** + * Properties of a ResourceManifest. + * @memberof google.cloud.gkehub.v1beta1 + * @interface IResourceManifest + * @property {string|null} [manifest] ResourceManifest manifest + * @property {boolean|null} [clusterScoped] ResourceManifest clusterScoped + */ + + /** + * Constructs a new ResourceManifest. + * @memberof google.cloud.gkehub.v1beta1 + * @classdesc Represents a ResourceManifest. + * @implements IResourceManifest + * @constructor + * @param {google.cloud.gkehub.v1beta1.IResourceManifest=} [properties] Properties to set + */ + function ResourceManifest(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]]; + } + + /** + * ResourceManifest manifest. + * @member {string} manifest + * @memberof google.cloud.gkehub.v1beta1.ResourceManifest + * @instance + */ + ResourceManifest.prototype.manifest = ""; + + /** + * ResourceManifest clusterScoped. + * @member {boolean} clusterScoped + * @memberof google.cloud.gkehub.v1beta1.ResourceManifest + * @instance + */ + ResourceManifest.prototype.clusterScoped = false; + + /** + * Creates a new ResourceManifest instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.v1beta1.ResourceManifest + * @static + * @param {google.cloud.gkehub.v1beta1.IResourceManifest=} [properties] Properties to set + * @returns {google.cloud.gkehub.v1beta1.ResourceManifest} ResourceManifest instance + */ + ResourceManifest.create = function create(properties) { + return new ResourceManifest(properties); + }; + + /** + * Encodes the specified ResourceManifest message. Does not implicitly {@link google.cloud.gkehub.v1beta1.ResourceManifest.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.v1beta1.ResourceManifest + * @static + * @param {google.cloud.gkehub.v1beta1.IResourceManifest} message ResourceManifest message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + ResourceManifest.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.manifest != null && Object.hasOwnProperty.call(message, "manifest")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.manifest); + if (message.clusterScoped != null && Object.hasOwnProperty.call(message, "clusterScoped")) + writer.uint32(/* id 2, wireType 0 =*/16).bool(message.clusterScoped); + return writer; + }; + + /** + * Encodes the specified ResourceManifest message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta1.ResourceManifest.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.v1beta1.ResourceManifest + * @static + * @param {google.cloud.gkehub.v1beta1.IResourceManifest} message ResourceManifest message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + ResourceManifest.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a ResourceManifest message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.v1beta1.ResourceManifest + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.v1beta1.ResourceManifest} ResourceManifest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + ResourceManifest.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.v1beta1.ResourceManifest(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.manifest = reader.string(); + break; + case 2: + message.clusterScoped = reader.bool(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a ResourceManifest message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.v1beta1.ResourceManifest + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.v1beta1.ResourceManifest} ResourceManifest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + ResourceManifest.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a ResourceManifest message. + * @function verify + * @memberof google.cloud.gkehub.v1beta1.ResourceManifest + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + ResourceManifest.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.manifest != null && message.hasOwnProperty("manifest")) + if (!$util.isString(message.manifest)) + return "manifest: string expected"; + if (message.clusterScoped != null && message.hasOwnProperty("clusterScoped")) + if (typeof message.clusterScoped !== "boolean") + return "clusterScoped: boolean expected"; + return null; + }; + + /** + * Creates a ResourceManifest message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.v1beta1.ResourceManifest + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.v1beta1.ResourceManifest} ResourceManifest + */ + ResourceManifest.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.v1beta1.ResourceManifest) + return object; + var message = new $root.google.cloud.gkehub.v1beta1.ResourceManifest(); + if (object.manifest != null) + message.manifest = String(object.manifest); + if (object.clusterScoped != null) + message.clusterScoped = Boolean(object.clusterScoped); + return message; + }; + + /** + * Creates a plain object from a ResourceManifest message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.v1beta1.ResourceManifest + * @static + * @param {google.cloud.gkehub.v1beta1.ResourceManifest} message ResourceManifest + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + ResourceManifest.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.manifest = ""; + object.clusterScoped = false; + } + if (message.manifest != null && message.hasOwnProperty("manifest")) + object.manifest = message.manifest; + if (message.clusterScoped != null && message.hasOwnProperty("clusterScoped")) + object.clusterScoped = message.clusterScoped; + return object; + }; + + /** + * Converts this ResourceManifest to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.v1beta1.ResourceManifest + * @instance + * @returns {Object.} JSON object + */ + ResourceManifest.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return ResourceManifest; + })(); + + v1beta1.GkeCluster = (function() { + + /** + * Properties of a GkeCluster. + * @memberof google.cloud.gkehub.v1beta1 + * @interface IGkeCluster + * @property {string|null} [resourceLink] GkeCluster resourceLink + */ + + /** + * Constructs a new GkeCluster. + * @memberof google.cloud.gkehub.v1beta1 + * @classdesc Represents a GkeCluster. + * @implements IGkeCluster + * @constructor + * @param {google.cloud.gkehub.v1beta1.IGkeCluster=} [properties] Properties to set + */ + function GkeCluster(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]]; + } + + /** + * GkeCluster resourceLink. + * @member {string} resourceLink + * @memberof google.cloud.gkehub.v1beta1.GkeCluster + * @instance + */ + GkeCluster.prototype.resourceLink = ""; + + /** + * Creates a new GkeCluster instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.v1beta1.GkeCluster + * @static + * @param {google.cloud.gkehub.v1beta1.IGkeCluster=} [properties] Properties to set + * @returns {google.cloud.gkehub.v1beta1.GkeCluster} GkeCluster instance + */ + GkeCluster.create = function create(properties) { + return new GkeCluster(properties); + }; + + /** + * Encodes the specified GkeCluster message. Does not implicitly {@link google.cloud.gkehub.v1beta1.GkeCluster.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.v1beta1.GkeCluster + * @static + * @param {google.cloud.gkehub.v1beta1.IGkeCluster} message GkeCluster message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + GkeCluster.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.resourceLink != null && Object.hasOwnProperty.call(message, "resourceLink")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.resourceLink); + return writer; + }; + + /** + * Encodes the specified GkeCluster message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta1.GkeCluster.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.v1beta1.GkeCluster + * @static + * @param {google.cloud.gkehub.v1beta1.IGkeCluster} message GkeCluster message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + GkeCluster.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a GkeCluster message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.v1beta1.GkeCluster + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.v1beta1.GkeCluster} GkeCluster + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + GkeCluster.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.v1beta1.GkeCluster(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.resourceLink = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a GkeCluster message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.v1beta1.GkeCluster + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.v1beta1.GkeCluster} GkeCluster + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + GkeCluster.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a GkeCluster message. + * @function verify + * @memberof google.cloud.gkehub.v1beta1.GkeCluster + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + GkeCluster.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.resourceLink != null && message.hasOwnProperty("resourceLink")) + if (!$util.isString(message.resourceLink)) + return "resourceLink: string expected"; + return null; + }; + + /** + * Creates a GkeCluster message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.v1beta1.GkeCluster + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.v1beta1.GkeCluster} GkeCluster + */ + GkeCluster.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.v1beta1.GkeCluster) + return object; + var message = new $root.google.cloud.gkehub.v1beta1.GkeCluster(); + if (object.resourceLink != null) + message.resourceLink = String(object.resourceLink); + return message; + }; + + /** + * Creates a plain object from a GkeCluster message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.v1beta1.GkeCluster + * @static + * @param {google.cloud.gkehub.v1beta1.GkeCluster} message GkeCluster + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + GkeCluster.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) + object.resourceLink = ""; + if (message.resourceLink != null && message.hasOwnProperty("resourceLink")) + object.resourceLink = message.resourceLink; + return object; + }; + + /** + * Converts this GkeCluster to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.v1beta1.GkeCluster + * @instance + * @returns {Object.} JSON object + */ + GkeCluster.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return GkeCluster; + })(); + + v1beta1.KubernetesMetadata = (function() { + + /** + * Properties of a KubernetesMetadata. + * @memberof google.cloud.gkehub.v1beta1 + * @interface IKubernetesMetadata + * @property {string|null} [kubernetesApiServerVersion] KubernetesMetadata kubernetesApiServerVersion + * @property {string|null} [nodeProviderId] KubernetesMetadata nodeProviderId + * @property {number|null} [nodeCount] KubernetesMetadata nodeCount + * @property {number|null} [vcpuCount] KubernetesMetadata vcpuCount + * @property {number|null} [memoryMb] KubernetesMetadata memoryMb + * @property {google.protobuf.ITimestamp|null} [updateTime] KubernetesMetadata updateTime + */ + + /** + * Constructs a new KubernetesMetadata. + * @memberof google.cloud.gkehub.v1beta1 + * @classdesc Represents a KubernetesMetadata. + * @implements IKubernetesMetadata + * @constructor + * @param {google.cloud.gkehub.v1beta1.IKubernetesMetadata=} [properties] Properties to set + */ + function KubernetesMetadata(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]]; + } + + /** + * KubernetesMetadata kubernetesApiServerVersion. + * @member {string} kubernetesApiServerVersion + * @memberof google.cloud.gkehub.v1beta1.KubernetesMetadata + * @instance + */ + KubernetesMetadata.prototype.kubernetesApiServerVersion = ""; + + /** + * KubernetesMetadata nodeProviderId. + * @member {string} nodeProviderId + * @memberof google.cloud.gkehub.v1beta1.KubernetesMetadata + * @instance + */ + KubernetesMetadata.prototype.nodeProviderId = ""; + + /** + * KubernetesMetadata nodeCount. + * @member {number} nodeCount + * @memberof google.cloud.gkehub.v1beta1.KubernetesMetadata + * @instance + */ + KubernetesMetadata.prototype.nodeCount = 0; + + /** + * KubernetesMetadata vcpuCount. + * @member {number} vcpuCount + * @memberof google.cloud.gkehub.v1beta1.KubernetesMetadata + * @instance + */ + KubernetesMetadata.prototype.vcpuCount = 0; + + /** + * KubernetesMetadata memoryMb. + * @member {number} memoryMb + * @memberof google.cloud.gkehub.v1beta1.KubernetesMetadata + * @instance + */ + KubernetesMetadata.prototype.memoryMb = 0; + + /** + * KubernetesMetadata updateTime. + * @member {google.protobuf.ITimestamp|null|undefined} updateTime + * @memberof google.cloud.gkehub.v1beta1.KubernetesMetadata + * @instance + */ + KubernetesMetadata.prototype.updateTime = null; + + /** + * Creates a new KubernetesMetadata instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.v1beta1.KubernetesMetadata + * @static + * @param {google.cloud.gkehub.v1beta1.IKubernetesMetadata=} [properties] Properties to set + * @returns {google.cloud.gkehub.v1beta1.KubernetesMetadata} KubernetesMetadata instance + */ + KubernetesMetadata.create = function create(properties) { + return new KubernetesMetadata(properties); + }; + + /** + * Encodes the specified KubernetesMetadata message. Does not implicitly {@link google.cloud.gkehub.v1beta1.KubernetesMetadata.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.v1beta1.KubernetesMetadata + * @static + * @param {google.cloud.gkehub.v1beta1.IKubernetesMetadata} message KubernetesMetadata message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + KubernetesMetadata.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.kubernetesApiServerVersion != null && Object.hasOwnProperty.call(message, "kubernetesApiServerVersion")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.kubernetesApiServerVersion); + if (message.nodeProviderId != null && Object.hasOwnProperty.call(message, "nodeProviderId")) + writer.uint32(/* id 2, wireType 2 =*/18).string(message.nodeProviderId); + if (message.nodeCount != null && Object.hasOwnProperty.call(message, "nodeCount")) + writer.uint32(/* id 3, wireType 0 =*/24).int32(message.nodeCount); + if (message.vcpuCount != null && Object.hasOwnProperty.call(message, "vcpuCount")) + writer.uint32(/* id 4, wireType 0 =*/32).int32(message.vcpuCount); + if (message.memoryMb != null && Object.hasOwnProperty.call(message, "memoryMb")) + writer.uint32(/* id 5, wireType 0 =*/40).int32(message.memoryMb); + if (message.updateTime != null && Object.hasOwnProperty.call(message, "updateTime")) + $root.google.protobuf.Timestamp.encode(message.updateTime, writer.uint32(/* id 100, wireType 2 =*/802).fork()).ldelim(); + return writer; + }; + + /** + * Encodes the specified KubernetesMetadata message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta1.KubernetesMetadata.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.v1beta1.KubernetesMetadata + * @static + * @param {google.cloud.gkehub.v1beta1.IKubernetesMetadata} message KubernetesMetadata message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + KubernetesMetadata.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a KubernetesMetadata message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.v1beta1.KubernetesMetadata + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.v1beta1.KubernetesMetadata} KubernetesMetadata + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + KubernetesMetadata.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.v1beta1.KubernetesMetadata(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.kubernetesApiServerVersion = reader.string(); + break; + case 2: + message.nodeProviderId = reader.string(); + break; + case 3: + message.nodeCount = reader.int32(); + break; + case 4: + message.vcpuCount = reader.int32(); + break; + case 5: + message.memoryMb = reader.int32(); + break; + case 100: + message.updateTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a KubernetesMetadata message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.v1beta1.KubernetesMetadata + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.v1beta1.KubernetesMetadata} KubernetesMetadata + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + KubernetesMetadata.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a KubernetesMetadata message. + * @function verify + * @memberof google.cloud.gkehub.v1beta1.KubernetesMetadata + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + KubernetesMetadata.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.kubernetesApiServerVersion != null && message.hasOwnProperty("kubernetesApiServerVersion")) + if (!$util.isString(message.kubernetesApiServerVersion)) + return "kubernetesApiServerVersion: string expected"; + if (message.nodeProviderId != null && message.hasOwnProperty("nodeProviderId")) + if (!$util.isString(message.nodeProviderId)) + return "nodeProviderId: string expected"; + if (message.nodeCount != null && message.hasOwnProperty("nodeCount")) + if (!$util.isInteger(message.nodeCount)) + return "nodeCount: integer expected"; + if (message.vcpuCount != null && message.hasOwnProperty("vcpuCount")) + if (!$util.isInteger(message.vcpuCount)) + return "vcpuCount: integer expected"; + if (message.memoryMb != null && message.hasOwnProperty("memoryMb")) + if (!$util.isInteger(message.memoryMb)) + return "memoryMb: integer expected"; + if (message.updateTime != null && message.hasOwnProperty("updateTime")) { + var error = $root.google.protobuf.Timestamp.verify(message.updateTime); + if (error) + return "updateTime." + error; + } + return null; + }; + + /** + * Creates a KubernetesMetadata message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.v1beta1.KubernetesMetadata + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.v1beta1.KubernetesMetadata} KubernetesMetadata + */ + KubernetesMetadata.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.v1beta1.KubernetesMetadata) + return object; + var message = new $root.google.cloud.gkehub.v1beta1.KubernetesMetadata(); + if (object.kubernetesApiServerVersion != null) + message.kubernetesApiServerVersion = String(object.kubernetesApiServerVersion); + if (object.nodeProviderId != null) + message.nodeProviderId = String(object.nodeProviderId); + if (object.nodeCount != null) + message.nodeCount = object.nodeCount | 0; + if (object.vcpuCount != null) + message.vcpuCount = object.vcpuCount | 0; + if (object.memoryMb != null) + message.memoryMb = object.memoryMb | 0; + if (object.updateTime != null) { + if (typeof object.updateTime !== "object") + throw TypeError(".google.cloud.gkehub.v1beta1.KubernetesMetadata.updateTime: object expected"); + message.updateTime = $root.google.protobuf.Timestamp.fromObject(object.updateTime); + } + return message; + }; + + /** + * Creates a plain object from a KubernetesMetadata message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.v1beta1.KubernetesMetadata + * @static + * @param {google.cloud.gkehub.v1beta1.KubernetesMetadata} message KubernetesMetadata + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + KubernetesMetadata.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.kubernetesApiServerVersion = ""; + object.nodeProviderId = ""; + object.nodeCount = 0; + object.vcpuCount = 0; + object.memoryMb = 0; + object.updateTime = null; + } + if (message.kubernetesApiServerVersion != null && message.hasOwnProperty("kubernetesApiServerVersion")) + object.kubernetesApiServerVersion = message.kubernetesApiServerVersion; + if (message.nodeProviderId != null && message.hasOwnProperty("nodeProviderId")) + object.nodeProviderId = message.nodeProviderId; + if (message.nodeCount != null && message.hasOwnProperty("nodeCount")) + object.nodeCount = message.nodeCount; + if (message.vcpuCount != null && message.hasOwnProperty("vcpuCount")) + object.vcpuCount = message.vcpuCount; + if (message.memoryMb != null && message.hasOwnProperty("memoryMb")) + object.memoryMb = message.memoryMb; + if (message.updateTime != null && message.hasOwnProperty("updateTime")) + object.updateTime = $root.google.protobuf.Timestamp.toObject(message.updateTime, options); + return object; + }; + + /** + * Converts this KubernetesMetadata to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.v1beta1.KubernetesMetadata + * @instance + * @returns {Object.} JSON object + */ + KubernetesMetadata.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return KubernetesMetadata; + })(); + + v1beta1.Authority = (function() { + + /** + * Properties of an Authority. + * @memberof google.cloud.gkehub.v1beta1 + * @interface IAuthority + * @property {string|null} [issuer] Authority issuer + * @property {string|null} [workloadIdentityPool] Authority workloadIdentityPool + * @property {string|null} [identityProvider] Authority identityProvider + */ + + /** + * Constructs a new Authority. + * @memberof google.cloud.gkehub.v1beta1 + * @classdesc Represents an Authority. + * @implements IAuthority + * @constructor + * @param {google.cloud.gkehub.v1beta1.IAuthority=} [properties] Properties to set + */ + function Authority(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]]; + } + + /** + * Authority issuer. + * @member {string} issuer + * @memberof google.cloud.gkehub.v1beta1.Authority + * @instance + */ + Authority.prototype.issuer = ""; + + /** + * Authority workloadIdentityPool. + * @member {string} workloadIdentityPool + * @memberof google.cloud.gkehub.v1beta1.Authority + * @instance + */ + Authority.prototype.workloadIdentityPool = ""; + + /** + * Authority identityProvider. + * @member {string} identityProvider + * @memberof google.cloud.gkehub.v1beta1.Authority + * @instance + */ + Authority.prototype.identityProvider = ""; + + /** + * Creates a new Authority instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.v1beta1.Authority + * @static + * @param {google.cloud.gkehub.v1beta1.IAuthority=} [properties] Properties to set + * @returns {google.cloud.gkehub.v1beta1.Authority} Authority instance + */ + Authority.create = function create(properties) { + return new Authority(properties); + }; + + /** + * Encodes the specified Authority message. Does not implicitly {@link google.cloud.gkehub.v1beta1.Authority.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.v1beta1.Authority + * @static + * @param {google.cloud.gkehub.v1beta1.IAuthority} message Authority message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + Authority.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.issuer != null && Object.hasOwnProperty.call(message, "issuer")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.issuer); + if (message.workloadIdentityPool != null && Object.hasOwnProperty.call(message, "workloadIdentityPool")) + writer.uint32(/* id 2, wireType 2 =*/18).string(message.workloadIdentityPool); + if (message.identityProvider != null && Object.hasOwnProperty.call(message, "identityProvider")) + writer.uint32(/* id 3, wireType 2 =*/26).string(message.identityProvider); + return writer; + }; + + /** + * Encodes the specified Authority message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta1.Authority.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.v1beta1.Authority + * @static + * @param {google.cloud.gkehub.v1beta1.IAuthority} message Authority message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + Authority.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes an Authority message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.v1beta1.Authority + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.v1beta1.Authority} Authority + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + Authority.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.v1beta1.Authority(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.issuer = reader.string(); + break; + case 2: + message.workloadIdentityPool = reader.string(); + break; + case 3: + message.identityProvider = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes an Authority message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.v1beta1.Authority + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.v1beta1.Authority} Authority + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + Authority.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies an Authority message. + * @function verify + * @memberof google.cloud.gkehub.v1beta1.Authority + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + Authority.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.issuer != null && message.hasOwnProperty("issuer")) + if (!$util.isString(message.issuer)) + return "issuer: string expected"; + if (message.workloadIdentityPool != null && message.hasOwnProperty("workloadIdentityPool")) + if (!$util.isString(message.workloadIdentityPool)) + return "workloadIdentityPool: string expected"; + if (message.identityProvider != null && message.hasOwnProperty("identityProvider")) + if (!$util.isString(message.identityProvider)) + return "identityProvider: string expected"; + return null; + }; + + /** + * Creates an Authority message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.v1beta1.Authority + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.v1beta1.Authority} Authority + */ + Authority.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.v1beta1.Authority) + return object; + var message = new $root.google.cloud.gkehub.v1beta1.Authority(); + if (object.issuer != null) + message.issuer = String(object.issuer); + if (object.workloadIdentityPool != null) + message.workloadIdentityPool = String(object.workloadIdentityPool); + if (object.identityProvider != null) + message.identityProvider = String(object.identityProvider); + return message; + }; + + /** + * Creates a plain object from an Authority message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.v1beta1.Authority + * @static + * @param {google.cloud.gkehub.v1beta1.Authority} message Authority + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + Authority.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.issuer = ""; + object.workloadIdentityPool = ""; + object.identityProvider = ""; + } + if (message.issuer != null && message.hasOwnProperty("issuer")) + object.issuer = message.issuer; + if (message.workloadIdentityPool != null && message.hasOwnProperty("workloadIdentityPool")) + object.workloadIdentityPool = message.workloadIdentityPool; + if (message.identityProvider != null && message.hasOwnProperty("identityProvider")) + object.identityProvider = message.identityProvider; + return object; + }; + + /** + * Converts this Authority to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.v1beta1.Authority + * @instance + * @returns {Object.} JSON object + */ + Authority.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return Authority; + })(); + + v1beta1.MembershipState = (function() { + + /** + * Properties of a MembershipState. + * @memberof google.cloud.gkehub.v1beta1 + * @interface IMembershipState + * @property {google.cloud.gkehub.v1beta1.MembershipState.Code|null} [code] MembershipState code + * @property {string|null} [description] MembershipState description + * @property {google.protobuf.ITimestamp|null} [updateTime] MembershipState updateTime + */ + + /** + * Constructs a new MembershipState. + * @memberof google.cloud.gkehub.v1beta1 + * @classdesc Represents a MembershipState. + * @implements IMembershipState + * @constructor + * @param {google.cloud.gkehub.v1beta1.IMembershipState=} [properties] Properties to set + */ + function MembershipState(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]]; + } + + /** + * MembershipState code. + * @member {google.cloud.gkehub.v1beta1.MembershipState.Code} code + * @memberof google.cloud.gkehub.v1beta1.MembershipState + * @instance + */ + MembershipState.prototype.code = 0; + + /** + * MembershipState description. + * @member {string} description + * @memberof google.cloud.gkehub.v1beta1.MembershipState + * @instance + */ + MembershipState.prototype.description = ""; + + /** + * MembershipState updateTime. + * @member {google.protobuf.ITimestamp|null|undefined} updateTime + * @memberof google.cloud.gkehub.v1beta1.MembershipState + * @instance + */ + MembershipState.prototype.updateTime = null; + + /** + * Creates a new MembershipState instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.v1beta1.MembershipState + * @static + * @param {google.cloud.gkehub.v1beta1.IMembershipState=} [properties] Properties to set + * @returns {google.cloud.gkehub.v1beta1.MembershipState} MembershipState instance + */ + MembershipState.create = function create(properties) { + return new MembershipState(properties); + }; + + /** + * Encodes the specified MembershipState message. Does not implicitly {@link google.cloud.gkehub.v1beta1.MembershipState.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.v1beta1.MembershipState + * @static + * @param {google.cloud.gkehub.v1beta1.IMembershipState} message MembershipState message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + MembershipState.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.code != null && Object.hasOwnProperty.call(message, "code")) + writer.uint32(/* id 1, wireType 0 =*/8).int32(message.code); + if (message.description != null && Object.hasOwnProperty.call(message, "description")) + writer.uint32(/* id 2, wireType 2 =*/18).string(message.description); + if (message.updateTime != null && Object.hasOwnProperty.call(message, "updateTime")) + $root.google.protobuf.Timestamp.encode(message.updateTime, writer.uint32(/* id 3, wireType 2 =*/26).fork()).ldelim(); + return writer; + }; + + /** + * Encodes the specified MembershipState message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta1.MembershipState.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.v1beta1.MembershipState + * @static + * @param {google.cloud.gkehub.v1beta1.IMembershipState} message MembershipState message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + MembershipState.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a MembershipState message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.v1beta1.MembershipState + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.v1beta1.MembershipState} MembershipState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + MembershipState.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.v1beta1.MembershipState(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.code = reader.int32(); + break; + case 2: + message.description = reader.string(); + break; + case 3: + message.updateTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a MembershipState message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.v1beta1.MembershipState + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.v1beta1.MembershipState} MembershipState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + MembershipState.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a MembershipState message. + * @function verify + * @memberof google.cloud.gkehub.v1beta1.MembershipState + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + MembershipState.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.code != null && message.hasOwnProperty("code")) + switch (message.code) { + default: + return "code: enum value expected"; + case 0: + case 1: + case 2: + case 3: + case 4: + case 5: + break; + } + if (message.description != null && message.hasOwnProperty("description")) + if (!$util.isString(message.description)) + return "description: string expected"; + if (message.updateTime != null && message.hasOwnProperty("updateTime")) { + var error = $root.google.protobuf.Timestamp.verify(message.updateTime); + if (error) + return "updateTime." + error; + } + return null; + }; + + /** + * Creates a MembershipState message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.v1beta1.MembershipState + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.v1beta1.MembershipState} MembershipState + */ + MembershipState.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.v1beta1.MembershipState) + return object; + var message = new $root.google.cloud.gkehub.v1beta1.MembershipState(); + switch (object.code) { + case "CODE_UNSPECIFIED": + case 0: + message.code = 0; + break; + case "CREATING": + case 1: + message.code = 1; + break; + case "READY": + case 2: + message.code = 2; + break; + case "DELETING": + case 3: + message.code = 3; + break; + case "UPDATING": + case 4: + message.code = 4; + break; + case "SERVICE_UPDATING": + case 5: + message.code = 5; + break; + } + if (object.description != null) + message.description = String(object.description); + if (object.updateTime != null) { + if (typeof object.updateTime !== "object") + throw TypeError(".google.cloud.gkehub.v1beta1.MembershipState.updateTime: object expected"); + message.updateTime = $root.google.protobuf.Timestamp.fromObject(object.updateTime); + } + return message; + }; + + /** + * Creates a plain object from a MembershipState message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.v1beta1.MembershipState + * @static + * @param {google.cloud.gkehub.v1beta1.MembershipState} message MembershipState + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + MembershipState.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.code = options.enums === String ? "CODE_UNSPECIFIED" : 0; + object.description = ""; + object.updateTime = null; + } + if (message.code != null && message.hasOwnProperty("code")) + object.code = options.enums === String ? $root.google.cloud.gkehub.v1beta1.MembershipState.Code[message.code] : message.code; + if (message.description != null && message.hasOwnProperty("description")) + object.description = message.description; + if (message.updateTime != null && message.hasOwnProperty("updateTime")) + object.updateTime = $root.google.protobuf.Timestamp.toObject(message.updateTime, options); + return object; + }; + + /** + * Converts this MembershipState to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.v1beta1.MembershipState + * @instance + * @returns {Object.} JSON object + */ + MembershipState.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + /** + * Code enum. + * @name google.cloud.gkehub.v1beta1.MembershipState.Code + * @enum {number} + * @property {number} CODE_UNSPECIFIED=0 CODE_UNSPECIFIED value + * @property {number} CREATING=1 CREATING value + * @property {number} READY=2 READY value + * @property {number} DELETING=3 DELETING value + * @property {number} UPDATING=4 UPDATING value + * @property {number} SERVICE_UPDATING=5 SERVICE_UPDATING value + */ + MembershipState.Code = (function() { + var valuesById = {}, values = Object.create(valuesById); + values[valuesById[0] = "CODE_UNSPECIFIED"] = 0; + values[valuesById[1] = "CREATING"] = 1; + values[valuesById[2] = "READY"] = 2; + values[valuesById[3] = "DELETING"] = 3; + values[valuesById[4] = "UPDATING"] = 4; + values[valuesById[5] = "SERVICE_UPDATING"] = 5; + return values; + })(); + + return MembershipState; + })(); + + v1beta1.ListMembershipsRequest = (function() { + + /** + * Properties of a ListMembershipsRequest. + * @memberof google.cloud.gkehub.v1beta1 + * @interface IListMembershipsRequest + * @property {string|null} [parent] ListMembershipsRequest parent + * @property {number|null} [pageSize] ListMembershipsRequest pageSize + * @property {string|null} [pageToken] ListMembershipsRequest pageToken + * @property {string|null} [filter] ListMembershipsRequest filter + * @property {string|null} [orderBy] ListMembershipsRequest orderBy + */ + + /** + * Constructs a new ListMembershipsRequest. + * @memberof google.cloud.gkehub.v1beta1 + * @classdesc Represents a ListMembershipsRequest. + * @implements IListMembershipsRequest + * @constructor + * @param {google.cloud.gkehub.v1beta1.IListMembershipsRequest=} [properties] Properties to set + */ + function ListMembershipsRequest(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]]; + } + + /** + * ListMembershipsRequest parent. + * @member {string} parent + * @memberof google.cloud.gkehub.v1beta1.ListMembershipsRequest + * @instance + */ + ListMembershipsRequest.prototype.parent = ""; + + /** + * ListMembershipsRequest pageSize. + * @member {number} pageSize + * @memberof google.cloud.gkehub.v1beta1.ListMembershipsRequest + * @instance + */ + ListMembershipsRequest.prototype.pageSize = 0; + + /** + * ListMembershipsRequest pageToken. + * @member {string} pageToken + * @memberof google.cloud.gkehub.v1beta1.ListMembershipsRequest + * @instance + */ + ListMembershipsRequest.prototype.pageToken = ""; + + /** + * ListMembershipsRequest filter. + * @member {string} filter + * @memberof google.cloud.gkehub.v1beta1.ListMembershipsRequest + * @instance + */ + ListMembershipsRequest.prototype.filter = ""; + + /** + * ListMembershipsRequest orderBy. + * @member {string} orderBy + * @memberof google.cloud.gkehub.v1beta1.ListMembershipsRequest + * @instance + */ + ListMembershipsRequest.prototype.orderBy = ""; + + /** + * Creates a new ListMembershipsRequest instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.v1beta1.ListMembershipsRequest + * @static + * @param {google.cloud.gkehub.v1beta1.IListMembershipsRequest=} [properties] Properties to set + * @returns {google.cloud.gkehub.v1beta1.ListMembershipsRequest} ListMembershipsRequest instance + */ + ListMembershipsRequest.create = function create(properties) { + return new ListMembershipsRequest(properties); + }; + + /** + * Encodes the specified ListMembershipsRequest message. Does not implicitly {@link google.cloud.gkehub.v1beta1.ListMembershipsRequest.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.v1beta1.ListMembershipsRequest + * @static + * @param {google.cloud.gkehub.v1beta1.IListMembershipsRequest} message ListMembershipsRequest message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + ListMembershipsRequest.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.parent != null && Object.hasOwnProperty.call(message, "parent")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.parent); + if (message.pageSize != null && Object.hasOwnProperty.call(message, "pageSize")) + writer.uint32(/* id 2, wireType 0 =*/16).int32(message.pageSize); + if (message.pageToken != null && Object.hasOwnProperty.call(message, "pageToken")) + writer.uint32(/* id 3, wireType 2 =*/26).string(message.pageToken); + if (message.filter != null && Object.hasOwnProperty.call(message, "filter")) + writer.uint32(/* id 4, wireType 2 =*/34).string(message.filter); + if (message.orderBy != null && Object.hasOwnProperty.call(message, "orderBy")) + writer.uint32(/* id 5, wireType 2 =*/42).string(message.orderBy); + return writer; + }; + + /** + * Encodes the specified ListMembershipsRequest message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta1.ListMembershipsRequest.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.v1beta1.ListMembershipsRequest + * @static + * @param {google.cloud.gkehub.v1beta1.IListMembershipsRequest} message ListMembershipsRequest message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + ListMembershipsRequest.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a ListMembershipsRequest message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.v1beta1.ListMembershipsRequest + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.v1beta1.ListMembershipsRequest} ListMembershipsRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + ListMembershipsRequest.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.v1beta1.ListMembershipsRequest(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.parent = reader.string(); + break; + case 2: + message.pageSize = reader.int32(); + break; + case 3: + message.pageToken = reader.string(); + break; + case 4: + message.filter = reader.string(); + break; + case 5: + message.orderBy = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a ListMembershipsRequest message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.v1beta1.ListMembershipsRequest + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.v1beta1.ListMembershipsRequest} ListMembershipsRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + ListMembershipsRequest.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a ListMembershipsRequest message. + * @function verify + * @memberof google.cloud.gkehub.v1beta1.ListMembershipsRequest + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + ListMembershipsRequest.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.parent != null && message.hasOwnProperty("parent")) + if (!$util.isString(message.parent)) + return "parent: string expected"; + if (message.pageSize != null && message.hasOwnProperty("pageSize")) + if (!$util.isInteger(message.pageSize)) + return "pageSize: integer expected"; + if (message.pageToken != null && message.hasOwnProperty("pageToken")) + if (!$util.isString(message.pageToken)) + return "pageToken: string expected"; + if (message.filter != null && message.hasOwnProperty("filter")) + if (!$util.isString(message.filter)) + return "filter: string expected"; + if (message.orderBy != null && message.hasOwnProperty("orderBy")) + if (!$util.isString(message.orderBy)) + return "orderBy: string expected"; + return null; + }; + + /** + * Creates a ListMembershipsRequest message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.v1beta1.ListMembershipsRequest + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.v1beta1.ListMembershipsRequest} ListMembershipsRequest + */ + ListMembershipsRequest.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.v1beta1.ListMembershipsRequest) + return object; + var message = new $root.google.cloud.gkehub.v1beta1.ListMembershipsRequest(); + if (object.parent != null) + message.parent = String(object.parent); + if (object.pageSize != null) + message.pageSize = object.pageSize | 0; + if (object.pageToken != null) + message.pageToken = String(object.pageToken); + if (object.filter != null) + message.filter = String(object.filter); + if (object.orderBy != null) + message.orderBy = String(object.orderBy); + return message; + }; + + /** + * Creates a plain object from a ListMembershipsRequest message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.v1beta1.ListMembershipsRequest + * @static + * @param {google.cloud.gkehub.v1beta1.ListMembershipsRequest} message ListMembershipsRequest + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + ListMembershipsRequest.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.parent = ""; + object.pageSize = 0; + object.pageToken = ""; + object.filter = ""; + object.orderBy = ""; + } + if (message.parent != null && message.hasOwnProperty("parent")) + object.parent = message.parent; + if (message.pageSize != null && message.hasOwnProperty("pageSize")) + object.pageSize = message.pageSize; + if (message.pageToken != null && message.hasOwnProperty("pageToken")) + object.pageToken = message.pageToken; + if (message.filter != null && message.hasOwnProperty("filter")) + object.filter = message.filter; + if (message.orderBy != null && message.hasOwnProperty("orderBy")) + object.orderBy = message.orderBy; + return object; + }; + + /** + * Converts this ListMembershipsRequest to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.v1beta1.ListMembershipsRequest + * @instance + * @returns {Object.} JSON object + */ + ListMembershipsRequest.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return ListMembershipsRequest; + })(); + + v1beta1.ListMembershipsResponse = (function() { + + /** + * Properties of a ListMembershipsResponse. + * @memberof google.cloud.gkehub.v1beta1 + * @interface IListMembershipsResponse + * @property {Array.|null} [resources] ListMembershipsResponse resources + * @property {string|null} [nextPageToken] ListMembershipsResponse nextPageToken + * @property {Array.|null} [unreachable] ListMembershipsResponse unreachable + */ + + /** + * Constructs a new ListMembershipsResponse. + * @memberof google.cloud.gkehub.v1beta1 + * @classdesc Represents a ListMembershipsResponse. + * @implements IListMembershipsResponse + * @constructor + * @param {google.cloud.gkehub.v1beta1.IListMembershipsResponse=} [properties] Properties to set + */ + function ListMembershipsResponse(properties) { + this.resources = []; + this.unreachable = []; + 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]]; + } + + /** + * ListMembershipsResponse resources. + * @member {Array.} resources + * @memberof google.cloud.gkehub.v1beta1.ListMembershipsResponse + * @instance + */ + ListMembershipsResponse.prototype.resources = $util.emptyArray; + + /** + * ListMembershipsResponse nextPageToken. + * @member {string} nextPageToken + * @memberof google.cloud.gkehub.v1beta1.ListMembershipsResponse + * @instance + */ + ListMembershipsResponse.prototype.nextPageToken = ""; + + /** + * ListMembershipsResponse unreachable. + * @member {Array.} unreachable + * @memberof google.cloud.gkehub.v1beta1.ListMembershipsResponse + * @instance + */ + ListMembershipsResponse.prototype.unreachable = $util.emptyArray; + + /** + * Creates a new ListMembershipsResponse instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.v1beta1.ListMembershipsResponse + * @static + * @param {google.cloud.gkehub.v1beta1.IListMembershipsResponse=} [properties] Properties to set + * @returns {google.cloud.gkehub.v1beta1.ListMembershipsResponse} ListMembershipsResponse instance + */ + ListMembershipsResponse.create = function create(properties) { + return new ListMembershipsResponse(properties); + }; + + /** + * Encodes the specified ListMembershipsResponse message. Does not implicitly {@link google.cloud.gkehub.v1beta1.ListMembershipsResponse.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.v1beta1.ListMembershipsResponse + * @static + * @param {google.cloud.gkehub.v1beta1.IListMembershipsResponse} message ListMembershipsResponse message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + ListMembershipsResponse.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.resources != null && message.resources.length) + for (var i = 0; i < message.resources.length; ++i) + $root.google.cloud.gkehub.v1beta1.Membership.encode(message.resources[i], writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim(); + if (message.nextPageToken != null && Object.hasOwnProperty.call(message, "nextPageToken")) + writer.uint32(/* id 2, wireType 2 =*/18).string(message.nextPageToken); + if (message.unreachable != null && message.unreachable.length) + for (var i = 0; i < message.unreachable.length; ++i) + writer.uint32(/* id 3, wireType 2 =*/26).string(message.unreachable[i]); + return writer; + }; + + /** + * Encodes the specified ListMembershipsResponse message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta1.ListMembershipsResponse.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.v1beta1.ListMembershipsResponse + * @static + * @param {google.cloud.gkehub.v1beta1.IListMembershipsResponse} message ListMembershipsResponse message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + ListMembershipsResponse.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a ListMembershipsResponse message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.v1beta1.ListMembershipsResponse + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.v1beta1.ListMembershipsResponse} ListMembershipsResponse + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + ListMembershipsResponse.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.v1beta1.ListMembershipsResponse(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + if (!(message.resources && message.resources.length)) + message.resources = []; + message.resources.push($root.google.cloud.gkehub.v1beta1.Membership.decode(reader, reader.uint32())); + break; + case 2: + message.nextPageToken = reader.string(); + break; + case 3: + if (!(message.unreachable && message.unreachable.length)) + message.unreachable = []; + message.unreachable.push(reader.string()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a ListMembershipsResponse message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.v1beta1.ListMembershipsResponse + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.v1beta1.ListMembershipsResponse} ListMembershipsResponse + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + ListMembershipsResponse.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a ListMembershipsResponse message. + * @function verify + * @memberof google.cloud.gkehub.v1beta1.ListMembershipsResponse + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + ListMembershipsResponse.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.resources != null && message.hasOwnProperty("resources")) { + if (!Array.isArray(message.resources)) + return "resources: array expected"; + for (var i = 0; i < message.resources.length; ++i) { + var error = $root.google.cloud.gkehub.v1beta1.Membership.verify(message.resources[i]); + if (error) + return "resources." + error; + } + } + if (message.nextPageToken != null && message.hasOwnProperty("nextPageToken")) + if (!$util.isString(message.nextPageToken)) + return "nextPageToken: string expected"; + if (message.unreachable != null && message.hasOwnProperty("unreachable")) { + if (!Array.isArray(message.unreachable)) + return "unreachable: array expected"; + for (var i = 0; i < message.unreachable.length; ++i) + if (!$util.isString(message.unreachable[i])) + return "unreachable: string[] expected"; + } + return null; + }; + + /** + * Creates a ListMembershipsResponse message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.v1beta1.ListMembershipsResponse + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.v1beta1.ListMembershipsResponse} ListMembershipsResponse + */ + ListMembershipsResponse.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.v1beta1.ListMembershipsResponse) + return object; + var message = new $root.google.cloud.gkehub.v1beta1.ListMembershipsResponse(); + if (object.resources) { + if (!Array.isArray(object.resources)) + throw TypeError(".google.cloud.gkehub.v1beta1.ListMembershipsResponse.resources: array expected"); + message.resources = []; + for (var i = 0; i < object.resources.length; ++i) { + if (typeof object.resources[i] !== "object") + throw TypeError(".google.cloud.gkehub.v1beta1.ListMembershipsResponse.resources: object expected"); + message.resources[i] = $root.google.cloud.gkehub.v1beta1.Membership.fromObject(object.resources[i]); + } + } + if (object.nextPageToken != null) + message.nextPageToken = String(object.nextPageToken); + if (object.unreachable) { + if (!Array.isArray(object.unreachable)) + throw TypeError(".google.cloud.gkehub.v1beta1.ListMembershipsResponse.unreachable: array expected"); + message.unreachable = []; + for (var i = 0; i < object.unreachable.length; ++i) + message.unreachable[i] = String(object.unreachable[i]); + } + return message; + }; + + /** + * Creates a plain object from a ListMembershipsResponse message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.v1beta1.ListMembershipsResponse + * @static + * @param {google.cloud.gkehub.v1beta1.ListMembershipsResponse} message ListMembershipsResponse + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + ListMembershipsResponse.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.arrays || options.defaults) { + object.resources = []; + object.unreachable = []; + } + if (options.defaults) + object.nextPageToken = ""; + if (message.resources && message.resources.length) { + object.resources = []; + for (var j = 0; j < message.resources.length; ++j) + object.resources[j] = $root.google.cloud.gkehub.v1beta1.Membership.toObject(message.resources[j], options); + } + if (message.nextPageToken != null && message.hasOwnProperty("nextPageToken")) + object.nextPageToken = message.nextPageToken; + if (message.unreachable && message.unreachable.length) { + object.unreachable = []; + for (var j = 0; j < message.unreachable.length; ++j) + object.unreachable[j] = message.unreachable[j]; + } + return object; + }; + + /** + * Converts this ListMembershipsResponse to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.v1beta1.ListMembershipsResponse + * @instance + * @returns {Object.} JSON object + */ + ListMembershipsResponse.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return ListMembershipsResponse; + })(); + + v1beta1.GetMembershipRequest = (function() { + + /** + * Properties of a GetMembershipRequest. + * @memberof google.cloud.gkehub.v1beta1 + * @interface IGetMembershipRequest + * @property {string|null} [name] GetMembershipRequest name + */ + + /** + * Constructs a new GetMembershipRequest. + * @memberof google.cloud.gkehub.v1beta1 + * @classdesc Represents a GetMembershipRequest. + * @implements IGetMembershipRequest + * @constructor + * @param {google.cloud.gkehub.v1beta1.IGetMembershipRequest=} [properties] Properties to set + */ + function GetMembershipRequest(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]]; + } + + /** + * GetMembershipRequest name. + * @member {string} name + * @memberof google.cloud.gkehub.v1beta1.GetMembershipRequest + * @instance + */ + GetMembershipRequest.prototype.name = ""; + + /** + * Creates a new GetMembershipRequest instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.v1beta1.GetMembershipRequest + * @static + * @param {google.cloud.gkehub.v1beta1.IGetMembershipRequest=} [properties] Properties to set + * @returns {google.cloud.gkehub.v1beta1.GetMembershipRequest} GetMembershipRequest instance + */ + GetMembershipRequest.create = function create(properties) { + return new GetMembershipRequest(properties); + }; + + /** + * Encodes the specified GetMembershipRequest message. Does not implicitly {@link google.cloud.gkehub.v1beta1.GetMembershipRequest.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.v1beta1.GetMembershipRequest + * @static + * @param {google.cloud.gkehub.v1beta1.IGetMembershipRequest} message GetMembershipRequest message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + GetMembershipRequest.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.name != null && Object.hasOwnProperty.call(message, "name")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.name); + return writer; + }; + + /** + * Encodes the specified GetMembershipRequest message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta1.GetMembershipRequest.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.v1beta1.GetMembershipRequest + * @static + * @param {google.cloud.gkehub.v1beta1.IGetMembershipRequest} message GetMembershipRequest message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + GetMembershipRequest.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a GetMembershipRequest message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.v1beta1.GetMembershipRequest + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.v1beta1.GetMembershipRequest} GetMembershipRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + GetMembershipRequest.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.v1beta1.GetMembershipRequest(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.name = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a GetMembershipRequest message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.v1beta1.GetMembershipRequest + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.v1beta1.GetMembershipRequest} GetMembershipRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + GetMembershipRequest.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a GetMembershipRequest message. + * @function verify + * @memberof google.cloud.gkehub.v1beta1.GetMembershipRequest + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + GetMembershipRequest.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.name != null && message.hasOwnProperty("name")) + if (!$util.isString(message.name)) + return "name: string expected"; + return null; + }; + + /** + * Creates a GetMembershipRequest message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.v1beta1.GetMembershipRequest + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.v1beta1.GetMembershipRequest} GetMembershipRequest + */ + GetMembershipRequest.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.v1beta1.GetMembershipRequest) + return object; + var message = new $root.google.cloud.gkehub.v1beta1.GetMembershipRequest(); + if (object.name != null) + message.name = String(object.name); + return message; + }; + + /** + * Creates a plain object from a GetMembershipRequest message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.v1beta1.GetMembershipRequest + * @static + * @param {google.cloud.gkehub.v1beta1.GetMembershipRequest} message GetMembershipRequest + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + GetMembershipRequest.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) + object.name = ""; + if (message.name != null && message.hasOwnProperty("name")) + object.name = message.name; + return object; + }; + + /** + * Converts this GetMembershipRequest to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.v1beta1.GetMembershipRequest + * @instance + * @returns {Object.} JSON object + */ + GetMembershipRequest.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return GetMembershipRequest; + })(); + + v1beta1.CreateMembershipRequest = (function() { + + /** + * Properties of a CreateMembershipRequest. + * @memberof google.cloud.gkehub.v1beta1 + * @interface ICreateMembershipRequest + * @property {string|null} [parent] CreateMembershipRequest parent + * @property {string|null} [membershipId] CreateMembershipRequest membershipId + * @property {google.cloud.gkehub.v1beta1.IMembership|null} [resource] CreateMembershipRequest resource + */ + + /** + * Constructs a new CreateMembershipRequest. + * @memberof google.cloud.gkehub.v1beta1 + * @classdesc Represents a CreateMembershipRequest. + * @implements ICreateMembershipRequest + * @constructor + * @param {google.cloud.gkehub.v1beta1.ICreateMembershipRequest=} [properties] Properties to set + */ + function CreateMembershipRequest(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]]; + } + + /** + * CreateMembershipRequest parent. + * @member {string} parent + * @memberof google.cloud.gkehub.v1beta1.CreateMembershipRequest + * @instance + */ + CreateMembershipRequest.prototype.parent = ""; + + /** + * CreateMembershipRequest membershipId. + * @member {string} membershipId + * @memberof google.cloud.gkehub.v1beta1.CreateMembershipRequest + * @instance + */ + CreateMembershipRequest.prototype.membershipId = ""; + + /** + * CreateMembershipRequest resource. + * @member {google.cloud.gkehub.v1beta1.IMembership|null|undefined} resource + * @memberof google.cloud.gkehub.v1beta1.CreateMembershipRequest + * @instance + */ + CreateMembershipRequest.prototype.resource = null; + + /** + * Creates a new CreateMembershipRequest instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.v1beta1.CreateMembershipRequest + * @static + * @param {google.cloud.gkehub.v1beta1.ICreateMembershipRequest=} [properties] Properties to set + * @returns {google.cloud.gkehub.v1beta1.CreateMembershipRequest} CreateMembershipRequest instance + */ + CreateMembershipRequest.create = function create(properties) { + return new CreateMembershipRequest(properties); + }; + + /** + * Encodes the specified CreateMembershipRequest message. Does not implicitly {@link google.cloud.gkehub.v1beta1.CreateMembershipRequest.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.v1beta1.CreateMembershipRequest + * @static + * @param {google.cloud.gkehub.v1beta1.ICreateMembershipRequest} message CreateMembershipRequest message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + CreateMembershipRequest.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.parent != null && Object.hasOwnProperty.call(message, "parent")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.parent); + if (message.membershipId != null && Object.hasOwnProperty.call(message, "membershipId")) + writer.uint32(/* id 2, wireType 2 =*/18).string(message.membershipId); + if (message.resource != null && Object.hasOwnProperty.call(message, "resource")) + $root.google.cloud.gkehub.v1beta1.Membership.encode(message.resource, writer.uint32(/* id 3, wireType 2 =*/26).fork()).ldelim(); + return writer; + }; + + /** + * Encodes the specified CreateMembershipRequest message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta1.CreateMembershipRequest.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.v1beta1.CreateMembershipRequest + * @static + * @param {google.cloud.gkehub.v1beta1.ICreateMembershipRequest} message CreateMembershipRequest message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + CreateMembershipRequest.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a CreateMembershipRequest message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.v1beta1.CreateMembershipRequest + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.v1beta1.CreateMembershipRequest} CreateMembershipRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + CreateMembershipRequest.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.v1beta1.CreateMembershipRequest(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.parent = reader.string(); + break; + case 2: + message.membershipId = reader.string(); + break; + case 3: + message.resource = $root.google.cloud.gkehub.v1beta1.Membership.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a CreateMembershipRequest message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.v1beta1.CreateMembershipRequest + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.v1beta1.CreateMembershipRequest} CreateMembershipRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + CreateMembershipRequest.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a CreateMembershipRequest message. + * @function verify + * @memberof google.cloud.gkehub.v1beta1.CreateMembershipRequest + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + CreateMembershipRequest.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.parent != null && message.hasOwnProperty("parent")) + if (!$util.isString(message.parent)) + return "parent: string expected"; + if (message.membershipId != null && message.hasOwnProperty("membershipId")) + if (!$util.isString(message.membershipId)) + return "membershipId: string expected"; + if (message.resource != null && message.hasOwnProperty("resource")) { + var error = $root.google.cloud.gkehub.v1beta1.Membership.verify(message.resource); + if (error) + return "resource." + error; + } + return null; + }; + + /** + * Creates a CreateMembershipRequest message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.v1beta1.CreateMembershipRequest + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.v1beta1.CreateMembershipRequest} CreateMembershipRequest + */ + CreateMembershipRequest.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.v1beta1.CreateMembershipRequest) + return object; + var message = new $root.google.cloud.gkehub.v1beta1.CreateMembershipRequest(); + if (object.parent != null) + message.parent = String(object.parent); + if (object.membershipId != null) + message.membershipId = String(object.membershipId); + if (object.resource != null) { + if (typeof object.resource !== "object") + throw TypeError(".google.cloud.gkehub.v1beta1.CreateMembershipRequest.resource: object expected"); + message.resource = $root.google.cloud.gkehub.v1beta1.Membership.fromObject(object.resource); + } + return message; + }; + + /** + * Creates a plain object from a CreateMembershipRequest message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.v1beta1.CreateMembershipRequest + * @static + * @param {google.cloud.gkehub.v1beta1.CreateMembershipRequest} message CreateMembershipRequest + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + CreateMembershipRequest.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.parent = ""; + object.membershipId = ""; + object.resource = null; + } + if (message.parent != null && message.hasOwnProperty("parent")) + object.parent = message.parent; + if (message.membershipId != null && message.hasOwnProperty("membershipId")) + object.membershipId = message.membershipId; + if (message.resource != null && message.hasOwnProperty("resource")) + object.resource = $root.google.cloud.gkehub.v1beta1.Membership.toObject(message.resource, options); + return object; + }; + + /** + * Converts this CreateMembershipRequest to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.v1beta1.CreateMembershipRequest + * @instance + * @returns {Object.} JSON object + */ + CreateMembershipRequest.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return CreateMembershipRequest; + })(); + + v1beta1.DeleteMembershipRequest = (function() { + + /** + * Properties of a DeleteMembershipRequest. + * @memberof google.cloud.gkehub.v1beta1 + * @interface IDeleteMembershipRequest + * @property {string|null} [name] DeleteMembershipRequest name + */ + + /** + * Constructs a new DeleteMembershipRequest. + * @memberof google.cloud.gkehub.v1beta1 + * @classdesc Represents a DeleteMembershipRequest. + * @implements IDeleteMembershipRequest + * @constructor + * @param {google.cloud.gkehub.v1beta1.IDeleteMembershipRequest=} [properties] Properties to set + */ + function DeleteMembershipRequest(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]]; + } + + /** + * DeleteMembershipRequest name. + * @member {string} name + * @memberof google.cloud.gkehub.v1beta1.DeleteMembershipRequest + * @instance + */ + DeleteMembershipRequest.prototype.name = ""; + + /** + * Creates a new DeleteMembershipRequest instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.v1beta1.DeleteMembershipRequest + * @static + * @param {google.cloud.gkehub.v1beta1.IDeleteMembershipRequest=} [properties] Properties to set + * @returns {google.cloud.gkehub.v1beta1.DeleteMembershipRequest} DeleteMembershipRequest instance + */ + DeleteMembershipRequest.create = function create(properties) { + return new DeleteMembershipRequest(properties); + }; + + /** + * Encodes the specified DeleteMembershipRequest message. Does not implicitly {@link google.cloud.gkehub.v1beta1.DeleteMembershipRequest.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.v1beta1.DeleteMembershipRequest + * @static + * @param {google.cloud.gkehub.v1beta1.IDeleteMembershipRequest} message DeleteMembershipRequest message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + DeleteMembershipRequest.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.name != null && Object.hasOwnProperty.call(message, "name")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.name); + return writer; + }; + + /** + * Encodes the specified DeleteMembershipRequest message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta1.DeleteMembershipRequest.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.v1beta1.DeleteMembershipRequest + * @static + * @param {google.cloud.gkehub.v1beta1.IDeleteMembershipRequest} message DeleteMembershipRequest message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + DeleteMembershipRequest.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a DeleteMembershipRequest message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.v1beta1.DeleteMembershipRequest + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.v1beta1.DeleteMembershipRequest} DeleteMembershipRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + DeleteMembershipRequest.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.v1beta1.DeleteMembershipRequest(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.name = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a DeleteMembershipRequest message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.v1beta1.DeleteMembershipRequest + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.v1beta1.DeleteMembershipRequest} DeleteMembershipRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + DeleteMembershipRequest.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a DeleteMembershipRequest message. + * @function verify + * @memberof google.cloud.gkehub.v1beta1.DeleteMembershipRequest + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + DeleteMembershipRequest.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.name != null && message.hasOwnProperty("name")) + if (!$util.isString(message.name)) + return "name: string expected"; + return null; + }; + + /** + * Creates a DeleteMembershipRequest message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.v1beta1.DeleteMembershipRequest + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.v1beta1.DeleteMembershipRequest} DeleteMembershipRequest + */ + DeleteMembershipRequest.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.v1beta1.DeleteMembershipRequest) + return object; + var message = new $root.google.cloud.gkehub.v1beta1.DeleteMembershipRequest(); + if (object.name != null) + message.name = String(object.name); + return message; + }; + + /** + * Creates a plain object from a DeleteMembershipRequest message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.v1beta1.DeleteMembershipRequest + * @static + * @param {google.cloud.gkehub.v1beta1.DeleteMembershipRequest} message DeleteMembershipRequest + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + DeleteMembershipRequest.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) + object.name = ""; + if (message.name != null && message.hasOwnProperty("name")) + object.name = message.name; + return object; + }; + + /** + * Converts this DeleteMembershipRequest to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.v1beta1.DeleteMembershipRequest + * @instance + * @returns {Object.} JSON object + */ + DeleteMembershipRequest.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return DeleteMembershipRequest; + })(); + + v1beta1.UpdateMembershipRequest = (function() { + + /** + * Properties of an UpdateMembershipRequest. + * @memberof google.cloud.gkehub.v1beta1 + * @interface IUpdateMembershipRequest + * @property {string|null} [name] UpdateMembershipRequest name + * @property {google.protobuf.IFieldMask|null} [updateMask] UpdateMembershipRequest updateMask + * @property {google.cloud.gkehub.v1beta1.IMembership|null} [resource] UpdateMembershipRequest resource + */ + + /** + * Constructs a new UpdateMembershipRequest. + * @memberof google.cloud.gkehub.v1beta1 + * @classdesc Represents an UpdateMembershipRequest. + * @implements IUpdateMembershipRequest + * @constructor + * @param {google.cloud.gkehub.v1beta1.IUpdateMembershipRequest=} [properties] Properties to set + */ + function UpdateMembershipRequest(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]]; + } + + /** + * UpdateMembershipRequest name. + * @member {string} name + * @memberof google.cloud.gkehub.v1beta1.UpdateMembershipRequest + * @instance + */ + UpdateMembershipRequest.prototype.name = ""; + + /** + * UpdateMembershipRequest updateMask. + * @member {google.protobuf.IFieldMask|null|undefined} updateMask + * @memberof google.cloud.gkehub.v1beta1.UpdateMembershipRequest + * @instance + */ + UpdateMembershipRequest.prototype.updateMask = null; + + /** + * UpdateMembershipRequest resource. + * @member {google.cloud.gkehub.v1beta1.IMembership|null|undefined} resource + * @memberof google.cloud.gkehub.v1beta1.UpdateMembershipRequest + * @instance + */ + UpdateMembershipRequest.prototype.resource = null; + + /** + * Creates a new UpdateMembershipRequest instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.v1beta1.UpdateMembershipRequest + * @static + * @param {google.cloud.gkehub.v1beta1.IUpdateMembershipRequest=} [properties] Properties to set + * @returns {google.cloud.gkehub.v1beta1.UpdateMembershipRequest} UpdateMembershipRequest instance + */ + UpdateMembershipRequest.create = function create(properties) { + return new UpdateMembershipRequest(properties); + }; + + /** + * Encodes the specified UpdateMembershipRequest message. Does not implicitly {@link google.cloud.gkehub.v1beta1.UpdateMembershipRequest.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.v1beta1.UpdateMembershipRequest + * @static + * @param {google.cloud.gkehub.v1beta1.IUpdateMembershipRequest} message UpdateMembershipRequest message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + UpdateMembershipRequest.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.name != null && Object.hasOwnProperty.call(message, "name")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.name); + if (message.updateMask != null && Object.hasOwnProperty.call(message, "updateMask")) + $root.google.protobuf.FieldMask.encode(message.updateMask, writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim(); + if (message.resource != null && Object.hasOwnProperty.call(message, "resource")) + $root.google.cloud.gkehub.v1beta1.Membership.encode(message.resource, writer.uint32(/* id 3, wireType 2 =*/26).fork()).ldelim(); + return writer; + }; + + /** + * Encodes the specified UpdateMembershipRequest message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta1.UpdateMembershipRequest.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.v1beta1.UpdateMembershipRequest + * @static + * @param {google.cloud.gkehub.v1beta1.IUpdateMembershipRequest} message UpdateMembershipRequest message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + UpdateMembershipRequest.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes an UpdateMembershipRequest message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.v1beta1.UpdateMembershipRequest + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.v1beta1.UpdateMembershipRequest} UpdateMembershipRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + UpdateMembershipRequest.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.v1beta1.UpdateMembershipRequest(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.name = reader.string(); + break; + case 2: + message.updateMask = $root.google.protobuf.FieldMask.decode(reader, reader.uint32()); + break; + case 3: + message.resource = $root.google.cloud.gkehub.v1beta1.Membership.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes an UpdateMembershipRequest message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.v1beta1.UpdateMembershipRequest + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.v1beta1.UpdateMembershipRequest} UpdateMembershipRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + UpdateMembershipRequest.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies an UpdateMembershipRequest message. + * @function verify + * @memberof google.cloud.gkehub.v1beta1.UpdateMembershipRequest + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + UpdateMembershipRequest.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.name != null && message.hasOwnProperty("name")) + if (!$util.isString(message.name)) + return "name: string expected"; + if (message.updateMask != null && message.hasOwnProperty("updateMask")) { + var error = $root.google.protobuf.FieldMask.verify(message.updateMask); + if (error) + return "updateMask." + error; + } + if (message.resource != null && message.hasOwnProperty("resource")) { + var error = $root.google.cloud.gkehub.v1beta1.Membership.verify(message.resource); + if (error) + return "resource." + error; + } + return null; + }; + + /** + * Creates an UpdateMembershipRequest message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.v1beta1.UpdateMembershipRequest + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.v1beta1.UpdateMembershipRequest} UpdateMembershipRequest + */ + UpdateMembershipRequest.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.v1beta1.UpdateMembershipRequest) + return object; + var message = new $root.google.cloud.gkehub.v1beta1.UpdateMembershipRequest(); + if (object.name != null) + message.name = String(object.name); + if (object.updateMask != null) { + if (typeof object.updateMask !== "object") + throw TypeError(".google.cloud.gkehub.v1beta1.UpdateMembershipRequest.updateMask: object expected"); + message.updateMask = $root.google.protobuf.FieldMask.fromObject(object.updateMask); + } + if (object.resource != null) { + if (typeof object.resource !== "object") + throw TypeError(".google.cloud.gkehub.v1beta1.UpdateMembershipRequest.resource: object expected"); + message.resource = $root.google.cloud.gkehub.v1beta1.Membership.fromObject(object.resource); + } + return message; + }; + + /** + * Creates a plain object from an UpdateMembershipRequest message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.v1beta1.UpdateMembershipRequest + * @static + * @param {google.cloud.gkehub.v1beta1.UpdateMembershipRequest} message UpdateMembershipRequest + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + UpdateMembershipRequest.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.name = ""; + object.updateMask = null; + object.resource = null; + } + if (message.name != null && message.hasOwnProperty("name")) + object.name = message.name; + if (message.updateMask != null && message.hasOwnProperty("updateMask")) + object.updateMask = $root.google.protobuf.FieldMask.toObject(message.updateMask, options); + if (message.resource != null && message.hasOwnProperty("resource")) + object.resource = $root.google.cloud.gkehub.v1beta1.Membership.toObject(message.resource, options); + return object; + }; + + /** + * Converts this UpdateMembershipRequest to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.v1beta1.UpdateMembershipRequest + * @instance + * @returns {Object.} JSON object + */ + UpdateMembershipRequest.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return UpdateMembershipRequest; + })(); + + v1beta1.GenerateConnectManifestRequest = (function() { + + /** + * Properties of a GenerateConnectManifestRequest. + * @memberof google.cloud.gkehub.v1beta1 + * @interface IGenerateConnectManifestRequest + * @property {string|null} [name] GenerateConnectManifestRequest name + * @property {google.cloud.gkehub.v1beta1.IConnectAgent|null} [connectAgent] GenerateConnectManifestRequest connectAgent + * @property {string|null} [version] GenerateConnectManifestRequest version + * @property {boolean|null} [isUpgrade] GenerateConnectManifestRequest isUpgrade + * @property {string|null} [registry] GenerateConnectManifestRequest registry + * @property {Uint8Array|null} [imagePullSecretContent] GenerateConnectManifestRequest imagePullSecretContent + */ + + /** + * Constructs a new GenerateConnectManifestRequest. + * @memberof google.cloud.gkehub.v1beta1 + * @classdesc Represents a GenerateConnectManifestRequest. + * @implements IGenerateConnectManifestRequest + * @constructor + * @param {google.cloud.gkehub.v1beta1.IGenerateConnectManifestRequest=} [properties] Properties to set + */ + function GenerateConnectManifestRequest(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]]; + } + + /** + * GenerateConnectManifestRequest name. + * @member {string} name + * @memberof google.cloud.gkehub.v1beta1.GenerateConnectManifestRequest + * @instance + */ + GenerateConnectManifestRequest.prototype.name = ""; + + /** + * GenerateConnectManifestRequest connectAgent. + * @member {google.cloud.gkehub.v1beta1.IConnectAgent|null|undefined} connectAgent + * @memberof google.cloud.gkehub.v1beta1.GenerateConnectManifestRequest + * @instance + */ + GenerateConnectManifestRequest.prototype.connectAgent = null; + + /** + * GenerateConnectManifestRequest version. + * @member {string} version + * @memberof google.cloud.gkehub.v1beta1.GenerateConnectManifestRequest + * @instance + */ + GenerateConnectManifestRequest.prototype.version = ""; + + /** + * GenerateConnectManifestRequest isUpgrade. + * @member {boolean} isUpgrade + * @memberof google.cloud.gkehub.v1beta1.GenerateConnectManifestRequest + * @instance + */ + GenerateConnectManifestRequest.prototype.isUpgrade = false; + + /** + * GenerateConnectManifestRequest registry. + * @member {string} registry + * @memberof google.cloud.gkehub.v1beta1.GenerateConnectManifestRequest + * @instance + */ + GenerateConnectManifestRequest.prototype.registry = ""; + + /** + * GenerateConnectManifestRequest imagePullSecretContent. + * @member {Uint8Array} imagePullSecretContent + * @memberof google.cloud.gkehub.v1beta1.GenerateConnectManifestRequest + * @instance + */ + GenerateConnectManifestRequest.prototype.imagePullSecretContent = $util.newBuffer([]); + + /** + * Creates a new GenerateConnectManifestRequest instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.v1beta1.GenerateConnectManifestRequest + * @static + * @param {google.cloud.gkehub.v1beta1.IGenerateConnectManifestRequest=} [properties] Properties to set + * @returns {google.cloud.gkehub.v1beta1.GenerateConnectManifestRequest} GenerateConnectManifestRequest instance + */ + GenerateConnectManifestRequest.create = function create(properties) { + return new GenerateConnectManifestRequest(properties); + }; + + /** + * Encodes the specified GenerateConnectManifestRequest message. Does not implicitly {@link google.cloud.gkehub.v1beta1.GenerateConnectManifestRequest.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.v1beta1.GenerateConnectManifestRequest + * @static + * @param {google.cloud.gkehub.v1beta1.IGenerateConnectManifestRequest} message GenerateConnectManifestRequest message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + GenerateConnectManifestRequest.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.name != null && Object.hasOwnProperty.call(message, "name")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.name); + if (message.connectAgent != null && Object.hasOwnProperty.call(message, "connectAgent")) + $root.google.cloud.gkehub.v1beta1.ConnectAgent.encode(message.connectAgent, writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim(); + if (message.version != null && Object.hasOwnProperty.call(message, "version")) + writer.uint32(/* id 3, wireType 2 =*/26).string(message.version); + if (message.isUpgrade != null && Object.hasOwnProperty.call(message, "isUpgrade")) + writer.uint32(/* id 4, wireType 0 =*/32).bool(message.isUpgrade); + if (message.registry != null && Object.hasOwnProperty.call(message, "registry")) + writer.uint32(/* id 5, wireType 2 =*/42).string(message.registry); + if (message.imagePullSecretContent != null && Object.hasOwnProperty.call(message, "imagePullSecretContent")) + writer.uint32(/* id 6, wireType 2 =*/50).bytes(message.imagePullSecretContent); + return writer; + }; + + /** + * Encodes the specified GenerateConnectManifestRequest message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta1.GenerateConnectManifestRequest.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.v1beta1.GenerateConnectManifestRequest + * @static + * @param {google.cloud.gkehub.v1beta1.IGenerateConnectManifestRequest} message GenerateConnectManifestRequest message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + GenerateConnectManifestRequest.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a GenerateConnectManifestRequest message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.v1beta1.GenerateConnectManifestRequest + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.v1beta1.GenerateConnectManifestRequest} GenerateConnectManifestRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + GenerateConnectManifestRequest.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.v1beta1.GenerateConnectManifestRequest(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.name = reader.string(); + break; + case 2: + message.connectAgent = $root.google.cloud.gkehub.v1beta1.ConnectAgent.decode(reader, reader.uint32()); + break; + case 3: + message.version = reader.string(); + break; + case 4: + message.isUpgrade = reader.bool(); + break; + case 5: + message.registry = reader.string(); + break; + case 6: + message.imagePullSecretContent = reader.bytes(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a GenerateConnectManifestRequest message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.v1beta1.GenerateConnectManifestRequest + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.v1beta1.GenerateConnectManifestRequest} GenerateConnectManifestRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + GenerateConnectManifestRequest.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a GenerateConnectManifestRequest message. + * @function verify + * @memberof google.cloud.gkehub.v1beta1.GenerateConnectManifestRequest + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + GenerateConnectManifestRequest.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.name != null && message.hasOwnProperty("name")) + if (!$util.isString(message.name)) + return "name: string expected"; + if (message.connectAgent != null && message.hasOwnProperty("connectAgent")) { + var error = $root.google.cloud.gkehub.v1beta1.ConnectAgent.verify(message.connectAgent); + if (error) + return "connectAgent." + error; + } + if (message.version != null && message.hasOwnProperty("version")) + if (!$util.isString(message.version)) + return "version: string expected"; + if (message.isUpgrade != null && message.hasOwnProperty("isUpgrade")) + if (typeof message.isUpgrade !== "boolean") + return "isUpgrade: boolean expected"; + if (message.registry != null && message.hasOwnProperty("registry")) + if (!$util.isString(message.registry)) + return "registry: string expected"; + if (message.imagePullSecretContent != null && message.hasOwnProperty("imagePullSecretContent")) + if (!(message.imagePullSecretContent && typeof message.imagePullSecretContent.length === "number" || $util.isString(message.imagePullSecretContent))) + return "imagePullSecretContent: buffer expected"; + return null; + }; + + /** + * Creates a GenerateConnectManifestRequest message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.v1beta1.GenerateConnectManifestRequest + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.v1beta1.GenerateConnectManifestRequest} GenerateConnectManifestRequest + */ + GenerateConnectManifestRequest.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.v1beta1.GenerateConnectManifestRequest) + return object; + var message = new $root.google.cloud.gkehub.v1beta1.GenerateConnectManifestRequest(); + if (object.name != null) + message.name = String(object.name); + if (object.connectAgent != null) { + if (typeof object.connectAgent !== "object") + throw TypeError(".google.cloud.gkehub.v1beta1.GenerateConnectManifestRequest.connectAgent: object expected"); + message.connectAgent = $root.google.cloud.gkehub.v1beta1.ConnectAgent.fromObject(object.connectAgent); + } + if (object.version != null) + message.version = String(object.version); + if (object.isUpgrade != null) + message.isUpgrade = Boolean(object.isUpgrade); + if (object.registry != null) + message.registry = String(object.registry); + if (object.imagePullSecretContent != null) + if (typeof object.imagePullSecretContent === "string") + $util.base64.decode(object.imagePullSecretContent, message.imagePullSecretContent = $util.newBuffer($util.base64.length(object.imagePullSecretContent)), 0); + else if (object.imagePullSecretContent.length) + message.imagePullSecretContent = object.imagePullSecretContent; + return message; + }; + + /** + * Creates a plain object from a GenerateConnectManifestRequest message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.v1beta1.GenerateConnectManifestRequest + * @static + * @param {google.cloud.gkehub.v1beta1.GenerateConnectManifestRequest} message GenerateConnectManifestRequest + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + GenerateConnectManifestRequest.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.name = ""; + object.connectAgent = null; + object.version = ""; + object.isUpgrade = false; + object.registry = ""; + if (options.bytes === String) + object.imagePullSecretContent = ""; + else { + object.imagePullSecretContent = []; + if (options.bytes !== Array) + object.imagePullSecretContent = $util.newBuffer(object.imagePullSecretContent); + } + } + if (message.name != null && message.hasOwnProperty("name")) + object.name = message.name; + if (message.connectAgent != null && message.hasOwnProperty("connectAgent")) + object.connectAgent = $root.google.cloud.gkehub.v1beta1.ConnectAgent.toObject(message.connectAgent, options); + if (message.version != null && message.hasOwnProperty("version")) + object.version = message.version; + if (message.isUpgrade != null && message.hasOwnProperty("isUpgrade")) + object.isUpgrade = message.isUpgrade; + if (message.registry != null && message.hasOwnProperty("registry")) + object.registry = message.registry; + if (message.imagePullSecretContent != null && message.hasOwnProperty("imagePullSecretContent")) + object.imagePullSecretContent = options.bytes === String ? $util.base64.encode(message.imagePullSecretContent, 0, message.imagePullSecretContent.length) : options.bytes === Array ? Array.prototype.slice.call(message.imagePullSecretContent) : message.imagePullSecretContent; + return object; + }; + + /** + * Converts this GenerateConnectManifestRequest to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.v1beta1.GenerateConnectManifestRequest + * @instance + * @returns {Object.} JSON object + */ + GenerateConnectManifestRequest.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return GenerateConnectManifestRequest; + })(); + + v1beta1.GenerateConnectManifestResponse = (function() { + + /** + * Properties of a GenerateConnectManifestResponse. + * @memberof google.cloud.gkehub.v1beta1 + * @interface IGenerateConnectManifestResponse + * @property {Array.|null} [manifest] GenerateConnectManifestResponse manifest + */ + + /** + * Constructs a new GenerateConnectManifestResponse. + * @memberof google.cloud.gkehub.v1beta1 + * @classdesc Represents a GenerateConnectManifestResponse. + * @implements IGenerateConnectManifestResponse + * @constructor + * @param {google.cloud.gkehub.v1beta1.IGenerateConnectManifestResponse=} [properties] Properties to set + */ + function GenerateConnectManifestResponse(properties) { + this.manifest = []; + 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]]; + } + + /** + * GenerateConnectManifestResponse manifest. + * @member {Array.} manifest + * @memberof google.cloud.gkehub.v1beta1.GenerateConnectManifestResponse + * @instance + */ + GenerateConnectManifestResponse.prototype.manifest = $util.emptyArray; + + /** + * Creates a new GenerateConnectManifestResponse instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.v1beta1.GenerateConnectManifestResponse + * @static + * @param {google.cloud.gkehub.v1beta1.IGenerateConnectManifestResponse=} [properties] Properties to set + * @returns {google.cloud.gkehub.v1beta1.GenerateConnectManifestResponse} GenerateConnectManifestResponse instance + */ + GenerateConnectManifestResponse.create = function create(properties) { + return new GenerateConnectManifestResponse(properties); + }; + + /** + * Encodes the specified GenerateConnectManifestResponse message. Does not implicitly {@link google.cloud.gkehub.v1beta1.GenerateConnectManifestResponse.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.v1beta1.GenerateConnectManifestResponse + * @static + * @param {google.cloud.gkehub.v1beta1.IGenerateConnectManifestResponse} message GenerateConnectManifestResponse message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + GenerateConnectManifestResponse.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.manifest != null && message.manifest.length) + for (var i = 0; i < message.manifest.length; ++i) + $root.google.cloud.gkehub.v1beta1.ConnectAgentResource.encode(message.manifest[i], writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim(); + return writer; + }; + + /** + * Encodes the specified GenerateConnectManifestResponse message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta1.GenerateConnectManifestResponse.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.v1beta1.GenerateConnectManifestResponse + * @static + * @param {google.cloud.gkehub.v1beta1.IGenerateConnectManifestResponse} message GenerateConnectManifestResponse message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + GenerateConnectManifestResponse.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a GenerateConnectManifestResponse message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.v1beta1.GenerateConnectManifestResponse + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.v1beta1.GenerateConnectManifestResponse} GenerateConnectManifestResponse + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + GenerateConnectManifestResponse.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.v1beta1.GenerateConnectManifestResponse(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + if (!(message.manifest && message.manifest.length)) + message.manifest = []; + message.manifest.push($root.google.cloud.gkehub.v1beta1.ConnectAgentResource.decode(reader, reader.uint32())); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a GenerateConnectManifestResponse message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.v1beta1.GenerateConnectManifestResponse + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.v1beta1.GenerateConnectManifestResponse} GenerateConnectManifestResponse + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + GenerateConnectManifestResponse.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a GenerateConnectManifestResponse message. + * @function verify + * @memberof google.cloud.gkehub.v1beta1.GenerateConnectManifestResponse + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + GenerateConnectManifestResponse.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.manifest != null && message.hasOwnProperty("manifest")) { + if (!Array.isArray(message.manifest)) + return "manifest: array expected"; + for (var i = 0; i < message.manifest.length; ++i) { + var error = $root.google.cloud.gkehub.v1beta1.ConnectAgentResource.verify(message.manifest[i]); + if (error) + return "manifest." + error; + } + } + return null; + }; + + /** + * Creates a GenerateConnectManifestResponse message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.v1beta1.GenerateConnectManifestResponse + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.v1beta1.GenerateConnectManifestResponse} GenerateConnectManifestResponse + */ + GenerateConnectManifestResponse.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.v1beta1.GenerateConnectManifestResponse) + return object; + var message = new $root.google.cloud.gkehub.v1beta1.GenerateConnectManifestResponse(); + if (object.manifest) { + if (!Array.isArray(object.manifest)) + throw TypeError(".google.cloud.gkehub.v1beta1.GenerateConnectManifestResponse.manifest: array expected"); + message.manifest = []; + for (var i = 0; i < object.manifest.length; ++i) { + if (typeof object.manifest[i] !== "object") + throw TypeError(".google.cloud.gkehub.v1beta1.GenerateConnectManifestResponse.manifest: object expected"); + message.manifest[i] = $root.google.cloud.gkehub.v1beta1.ConnectAgentResource.fromObject(object.manifest[i]); + } + } + return message; + }; + + /** + * Creates a plain object from a GenerateConnectManifestResponse message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.v1beta1.GenerateConnectManifestResponse + * @static + * @param {google.cloud.gkehub.v1beta1.GenerateConnectManifestResponse} message GenerateConnectManifestResponse + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + GenerateConnectManifestResponse.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.arrays || options.defaults) + object.manifest = []; + if (message.manifest && message.manifest.length) { + object.manifest = []; + for (var j = 0; j < message.manifest.length; ++j) + object.manifest[j] = $root.google.cloud.gkehub.v1beta1.ConnectAgentResource.toObject(message.manifest[j], options); + } + return object; + }; + + /** + * Converts this GenerateConnectManifestResponse to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.v1beta1.GenerateConnectManifestResponse + * @instance + * @returns {Object.} JSON object + */ + GenerateConnectManifestResponse.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return GenerateConnectManifestResponse; + })(); + + v1beta1.ConnectAgentResource = (function() { + + /** + * Properties of a ConnectAgentResource. + * @memberof google.cloud.gkehub.v1beta1 + * @interface IConnectAgentResource + * @property {google.cloud.gkehub.v1beta1.ITypeMeta|null} [type] ConnectAgentResource type + * @property {string|null} [manifest] ConnectAgentResource manifest + */ + + /** + * Constructs a new ConnectAgentResource. + * @memberof google.cloud.gkehub.v1beta1 + * @classdesc Represents a ConnectAgentResource. + * @implements IConnectAgentResource + * @constructor + * @param {google.cloud.gkehub.v1beta1.IConnectAgentResource=} [properties] Properties to set + */ + function ConnectAgentResource(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]]; + } + + /** + * ConnectAgentResource type. + * @member {google.cloud.gkehub.v1beta1.ITypeMeta|null|undefined} type + * @memberof google.cloud.gkehub.v1beta1.ConnectAgentResource + * @instance + */ + ConnectAgentResource.prototype.type = null; + + /** + * ConnectAgentResource manifest. + * @member {string} manifest + * @memberof google.cloud.gkehub.v1beta1.ConnectAgentResource + * @instance + */ + ConnectAgentResource.prototype.manifest = ""; + + /** + * Creates a new ConnectAgentResource instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.v1beta1.ConnectAgentResource + * @static + * @param {google.cloud.gkehub.v1beta1.IConnectAgentResource=} [properties] Properties to set + * @returns {google.cloud.gkehub.v1beta1.ConnectAgentResource} ConnectAgentResource instance + */ + ConnectAgentResource.create = function create(properties) { + return new ConnectAgentResource(properties); + }; + + /** + * Encodes the specified ConnectAgentResource message. Does not implicitly {@link google.cloud.gkehub.v1beta1.ConnectAgentResource.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.v1beta1.ConnectAgentResource + * @static + * @param {google.cloud.gkehub.v1beta1.IConnectAgentResource} message ConnectAgentResource message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + ConnectAgentResource.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.type != null && Object.hasOwnProperty.call(message, "type")) + $root.google.cloud.gkehub.v1beta1.TypeMeta.encode(message.type, writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim(); + if (message.manifest != null && Object.hasOwnProperty.call(message, "manifest")) + writer.uint32(/* id 2, wireType 2 =*/18).string(message.manifest); + return writer; + }; + + /** + * Encodes the specified ConnectAgentResource message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta1.ConnectAgentResource.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.v1beta1.ConnectAgentResource + * @static + * @param {google.cloud.gkehub.v1beta1.IConnectAgentResource} message ConnectAgentResource message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + ConnectAgentResource.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a ConnectAgentResource message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.v1beta1.ConnectAgentResource + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.v1beta1.ConnectAgentResource} ConnectAgentResource + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + ConnectAgentResource.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.v1beta1.ConnectAgentResource(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.type = $root.google.cloud.gkehub.v1beta1.TypeMeta.decode(reader, reader.uint32()); + break; + case 2: + message.manifest = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a ConnectAgentResource message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.v1beta1.ConnectAgentResource + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.v1beta1.ConnectAgentResource} ConnectAgentResource + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + ConnectAgentResource.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a ConnectAgentResource message. + * @function verify + * @memberof google.cloud.gkehub.v1beta1.ConnectAgentResource + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + ConnectAgentResource.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.type != null && message.hasOwnProperty("type")) { + var error = $root.google.cloud.gkehub.v1beta1.TypeMeta.verify(message.type); + if (error) + return "type." + error; + } + if (message.manifest != null && message.hasOwnProperty("manifest")) + if (!$util.isString(message.manifest)) + return "manifest: string expected"; + return null; + }; + + /** + * Creates a ConnectAgentResource message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.v1beta1.ConnectAgentResource + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.v1beta1.ConnectAgentResource} ConnectAgentResource + */ + ConnectAgentResource.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.v1beta1.ConnectAgentResource) + return object; + var message = new $root.google.cloud.gkehub.v1beta1.ConnectAgentResource(); + if (object.type != null) { + if (typeof object.type !== "object") + throw TypeError(".google.cloud.gkehub.v1beta1.ConnectAgentResource.type: object expected"); + message.type = $root.google.cloud.gkehub.v1beta1.TypeMeta.fromObject(object.type); + } + if (object.manifest != null) + message.manifest = String(object.manifest); + return message; + }; + + /** + * Creates a plain object from a ConnectAgentResource message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.v1beta1.ConnectAgentResource + * @static + * @param {google.cloud.gkehub.v1beta1.ConnectAgentResource} message ConnectAgentResource + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + ConnectAgentResource.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.type = null; + object.manifest = ""; + } + if (message.type != null && message.hasOwnProperty("type")) + object.type = $root.google.cloud.gkehub.v1beta1.TypeMeta.toObject(message.type, options); + if (message.manifest != null && message.hasOwnProperty("manifest")) + object.manifest = message.manifest; + return object; + }; + + /** + * Converts this ConnectAgentResource to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.v1beta1.ConnectAgentResource + * @instance + * @returns {Object.} JSON object + */ + ConnectAgentResource.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return ConnectAgentResource; + })(); + + v1beta1.TypeMeta = (function() { + + /** + * Properties of a TypeMeta. + * @memberof google.cloud.gkehub.v1beta1 + * @interface ITypeMeta + * @property {string|null} [kind] TypeMeta kind + * @property {string|null} [apiVersion] TypeMeta apiVersion + */ + + /** + * Constructs a new TypeMeta. + * @memberof google.cloud.gkehub.v1beta1 + * @classdesc Represents a TypeMeta. + * @implements ITypeMeta + * @constructor + * @param {google.cloud.gkehub.v1beta1.ITypeMeta=} [properties] Properties to set + */ + function TypeMeta(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]]; + } + + /** + * TypeMeta kind. + * @member {string} kind + * @memberof google.cloud.gkehub.v1beta1.TypeMeta + * @instance + */ + TypeMeta.prototype.kind = ""; + + /** + * TypeMeta apiVersion. + * @member {string} apiVersion + * @memberof google.cloud.gkehub.v1beta1.TypeMeta + * @instance + */ + TypeMeta.prototype.apiVersion = ""; + + /** + * Creates a new TypeMeta instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.v1beta1.TypeMeta + * @static + * @param {google.cloud.gkehub.v1beta1.ITypeMeta=} [properties] Properties to set + * @returns {google.cloud.gkehub.v1beta1.TypeMeta} TypeMeta instance + */ + TypeMeta.create = function create(properties) { + return new TypeMeta(properties); + }; + + /** + * Encodes the specified TypeMeta message. Does not implicitly {@link google.cloud.gkehub.v1beta1.TypeMeta.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.v1beta1.TypeMeta + * @static + * @param {google.cloud.gkehub.v1beta1.ITypeMeta} message TypeMeta message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + TypeMeta.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.kind != null && Object.hasOwnProperty.call(message, "kind")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.kind); + if (message.apiVersion != null && Object.hasOwnProperty.call(message, "apiVersion")) + writer.uint32(/* id 2, wireType 2 =*/18).string(message.apiVersion); + return writer; + }; + + /** + * Encodes the specified TypeMeta message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta1.TypeMeta.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.v1beta1.TypeMeta + * @static + * @param {google.cloud.gkehub.v1beta1.ITypeMeta} message TypeMeta message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + TypeMeta.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a TypeMeta message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.v1beta1.TypeMeta + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.v1beta1.TypeMeta} TypeMeta + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + TypeMeta.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.v1beta1.TypeMeta(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.kind = reader.string(); + break; + case 2: + message.apiVersion = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a TypeMeta message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.v1beta1.TypeMeta + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.v1beta1.TypeMeta} TypeMeta + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + TypeMeta.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a TypeMeta message. + * @function verify + * @memberof google.cloud.gkehub.v1beta1.TypeMeta + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + TypeMeta.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.kind != null && message.hasOwnProperty("kind")) + if (!$util.isString(message.kind)) + return "kind: string expected"; + if (message.apiVersion != null && message.hasOwnProperty("apiVersion")) + if (!$util.isString(message.apiVersion)) + return "apiVersion: string expected"; + return null; + }; + + /** + * Creates a TypeMeta message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.v1beta1.TypeMeta + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.v1beta1.TypeMeta} TypeMeta + */ + TypeMeta.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.v1beta1.TypeMeta) + return object; + var message = new $root.google.cloud.gkehub.v1beta1.TypeMeta(); + if (object.kind != null) + message.kind = String(object.kind); + if (object.apiVersion != null) + message.apiVersion = String(object.apiVersion); + return message; + }; + + /** + * Creates a plain object from a TypeMeta message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.v1beta1.TypeMeta + * @static + * @param {google.cloud.gkehub.v1beta1.TypeMeta} message TypeMeta + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + TypeMeta.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.kind = ""; + object.apiVersion = ""; + } + if (message.kind != null && message.hasOwnProperty("kind")) + object.kind = message.kind; + if (message.apiVersion != null && message.hasOwnProperty("apiVersion")) + object.apiVersion = message.apiVersion; + return object; + }; + + /** + * Converts this TypeMeta to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.v1beta1.TypeMeta + * @instance + * @returns {Object.} JSON object + */ + TypeMeta.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return TypeMeta; + })(); + + v1beta1.ConnectAgent = (function() { + + /** + * Properties of a ConnectAgent. + * @memberof google.cloud.gkehub.v1beta1 + * @interface IConnectAgent + * @property {string|null} [name] ConnectAgent name + * @property {Uint8Array|null} [proxy] ConnectAgent proxy + * @property {string|null} [namespace] ConnectAgent namespace + */ + + /** + * Constructs a new ConnectAgent. + * @memberof google.cloud.gkehub.v1beta1 + * @classdesc Represents a ConnectAgent. + * @implements IConnectAgent + * @constructor + * @param {google.cloud.gkehub.v1beta1.IConnectAgent=} [properties] Properties to set + */ + function ConnectAgent(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]]; + } + + /** + * ConnectAgent name. + * @member {string} name + * @memberof google.cloud.gkehub.v1beta1.ConnectAgent + * @instance + */ + ConnectAgent.prototype.name = ""; + + /** + * ConnectAgent proxy. + * @member {Uint8Array} proxy + * @memberof google.cloud.gkehub.v1beta1.ConnectAgent + * @instance + */ + ConnectAgent.prototype.proxy = $util.newBuffer([]); + + /** + * ConnectAgent namespace. + * @member {string} namespace + * @memberof google.cloud.gkehub.v1beta1.ConnectAgent + * @instance + */ + ConnectAgent.prototype.namespace = ""; + + /** + * Creates a new ConnectAgent instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.v1beta1.ConnectAgent + * @static + * @param {google.cloud.gkehub.v1beta1.IConnectAgent=} [properties] Properties to set + * @returns {google.cloud.gkehub.v1beta1.ConnectAgent} ConnectAgent instance + */ + ConnectAgent.create = function create(properties) { + return new ConnectAgent(properties); + }; + + /** + * Encodes the specified ConnectAgent message. Does not implicitly {@link google.cloud.gkehub.v1beta1.ConnectAgent.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.v1beta1.ConnectAgent + * @static + * @param {google.cloud.gkehub.v1beta1.IConnectAgent} message ConnectAgent message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + ConnectAgent.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.name != null && Object.hasOwnProperty.call(message, "name")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.name); + if (message.proxy != null && Object.hasOwnProperty.call(message, "proxy")) + writer.uint32(/* id 2, wireType 2 =*/18).bytes(message.proxy); + if (message.namespace != null && Object.hasOwnProperty.call(message, "namespace")) + writer.uint32(/* id 3, wireType 2 =*/26).string(message.namespace); + return writer; + }; + + /** + * Encodes the specified ConnectAgent message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta1.ConnectAgent.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.v1beta1.ConnectAgent + * @static + * @param {google.cloud.gkehub.v1beta1.IConnectAgent} message ConnectAgent message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + ConnectAgent.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a ConnectAgent message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.v1beta1.ConnectAgent + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.v1beta1.ConnectAgent} ConnectAgent + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + ConnectAgent.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.v1beta1.ConnectAgent(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.name = reader.string(); + break; + case 2: + message.proxy = reader.bytes(); + break; + case 3: + message.namespace = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a ConnectAgent message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.v1beta1.ConnectAgent + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.v1beta1.ConnectAgent} ConnectAgent + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + ConnectAgent.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a ConnectAgent message. + * @function verify + * @memberof google.cloud.gkehub.v1beta1.ConnectAgent + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + ConnectAgent.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.name != null && message.hasOwnProperty("name")) + if (!$util.isString(message.name)) + return "name: string expected"; + if (message.proxy != null && message.hasOwnProperty("proxy")) + if (!(message.proxy && typeof message.proxy.length === "number" || $util.isString(message.proxy))) + return "proxy: buffer expected"; + if (message.namespace != null && message.hasOwnProperty("namespace")) + if (!$util.isString(message.namespace)) + return "namespace: string expected"; + return null; + }; + + /** + * Creates a ConnectAgent message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.v1beta1.ConnectAgent + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.v1beta1.ConnectAgent} ConnectAgent + */ + ConnectAgent.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.v1beta1.ConnectAgent) + return object; + var message = new $root.google.cloud.gkehub.v1beta1.ConnectAgent(); + if (object.name != null) + message.name = String(object.name); + if (object.proxy != null) + if (typeof object.proxy === "string") + $util.base64.decode(object.proxy, message.proxy = $util.newBuffer($util.base64.length(object.proxy)), 0); + else if (object.proxy.length) + message.proxy = object.proxy; + if (object.namespace != null) + message.namespace = String(object.namespace); + return message; + }; + + /** + * Creates a plain object from a ConnectAgent message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.v1beta1.ConnectAgent + * @static + * @param {google.cloud.gkehub.v1beta1.ConnectAgent} message ConnectAgent + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + ConnectAgent.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.name = ""; + if (options.bytes === String) + object.proxy = ""; + else { + object.proxy = []; + if (options.bytes !== Array) + object.proxy = $util.newBuffer(object.proxy); + } + object.namespace = ""; + } + if (message.name != null && message.hasOwnProperty("name")) + object.name = message.name; + if (message.proxy != null && message.hasOwnProperty("proxy")) + object.proxy = options.bytes === String ? $util.base64.encode(message.proxy, 0, message.proxy.length) : options.bytes === Array ? Array.prototype.slice.call(message.proxy) : message.proxy; + if (message.namespace != null && message.hasOwnProperty("namespace")) + object.namespace = message.namespace; + return object; + }; + + /** + * Converts this ConnectAgent to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.v1beta1.ConnectAgent + * @instance + * @returns {Object.} JSON object + */ + ConnectAgent.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return ConnectAgent; + })(); + + v1beta1.ValidateExclusivityRequest = (function() { + + /** + * Properties of a ValidateExclusivityRequest. + * @memberof google.cloud.gkehub.v1beta1 + * @interface IValidateExclusivityRequest + * @property {string|null} [parent] ValidateExclusivityRequest parent + * @property {string|null} [crManifest] ValidateExclusivityRequest crManifest + * @property {string|null} [intendedMembership] ValidateExclusivityRequest intendedMembership + */ + + /** + * Constructs a new ValidateExclusivityRequest. + * @memberof google.cloud.gkehub.v1beta1 + * @classdesc Represents a ValidateExclusivityRequest. + * @implements IValidateExclusivityRequest + * @constructor + * @param {google.cloud.gkehub.v1beta1.IValidateExclusivityRequest=} [properties] Properties to set + */ + function ValidateExclusivityRequest(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]]; + } + + /** + * ValidateExclusivityRequest parent. + * @member {string} parent + * @memberof google.cloud.gkehub.v1beta1.ValidateExclusivityRequest + * @instance + */ + ValidateExclusivityRequest.prototype.parent = ""; + + /** + * ValidateExclusivityRequest crManifest. + * @member {string} crManifest + * @memberof google.cloud.gkehub.v1beta1.ValidateExclusivityRequest + * @instance + */ + ValidateExclusivityRequest.prototype.crManifest = ""; + + /** + * ValidateExclusivityRequest intendedMembership. + * @member {string} intendedMembership + * @memberof google.cloud.gkehub.v1beta1.ValidateExclusivityRequest + * @instance + */ + ValidateExclusivityRequest.prototype.intendedMembership = ""; + + /** + * Creates a new ValidateExclusivityRequest instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.v1beta1.ValidateExclusivityRequest + * @static + * @param {google.cloud.gkehub.v1beta1.IValidateExclusivityRequest=} [properties] Properties to set + * @returns {google.cloud.gkehub.v1beta1.ValidateExclusivityRequest} ValidateExclusivityRequest instance + */ + ValidateExclusivityRequest.create = function create(properties) { + return new ValidateExclusivityRequest(properties); + }; + + /** + * Encodes the specified ValidateExclusivityRequest message. Does not implicitly {@link google.cloud.gkehub.v1beta1.ValidateExclusivityRequest.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.v1beta1.ValidateExclusivityRequest + * @static + * @param {google.cloud.gkehub.v1beta1.IValidateExclusivityRequest} message ValidateExclusivityRequest message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + ValidateExclusivityRequest.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.parent != null && Object.hasOwnProperty.call(message, "parent")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.parent); + if (message.crManifest != null && Object.hasOwnProperty.call(message, "crManifest")) + writer.uint32(/* id 2, wireType 2 =*/18).string(message.crManifest); + if (message.intendedMembership != null && Object.hasOwnProperty.call(message, "intendedMembership")) + writer.uint32(/* id 3, wireType 2 =*/26).string(message.intendedMembership); + return writer; + }; + + /** + * Encodes the specified ValidateExclusivityRequest message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta1.ValidateExclusivityRequest.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.v1beta1.ValidateExclusivityRequest + * @static + * @param {google.cloud.gkehub.v1beta1.IValidateExclusivityRequest} message ValidateExclusivityRequest message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + ValidateExclusivityRequest.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a ValidateExclusivityRequest message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.v1beta1.ValidateExclusivityRequest + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.v1beta1.ValidateExclusivityRequest} ValidateExclusivityRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + ValidateExclusivityRequest.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.v1beta1.ValidateExclusivityRequest(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.parent = reader.string(); + break; + case 2: + message.crManifest = reader.string(); + break; + case 3: + message.intendedMembership = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a ValidateExclusivityRequest message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.v1beta1.ValidateExclusivityRequest + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.v1beta1.ValidateExclusivityRequest} ValidateExclusivityRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + ValidateExclusivityRequest.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a ValidateExclusivityRequest message. + * @function verify + * @memberof google.cloud.gkehub.v1beta1.ValidateExclusivityRequest + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + ValidateExclusivityRequest.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.parent != null && message.hasOwnProperty("parent")) + if (!$util.isString(message.parent)) + return "parent: string expected"; + if (message.crManifest != null && message.hasOwnProperty("crManifest")) + if (!$util.isString(message.crManifest)) + return "crManifest: string expected"; + if (message.intendedMembership != null && message.hasOwnProperty("intendedMembership")) + if (!$util.isString(message.intendedMembership)) + return "intendedMembership: string expected"; + return null; + }; + + /** + * Creates a ValidateExclusivityRequest message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.v1beta1.ValidateExclusivityRequest + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.v1beta1.ValidateExclusivityRequest} ValidateExclusivityRequest + */ + ValidateExclusivityRequest.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.v1beta1.ValidateExclusivityRequest) + return object; + var message = new $root.google.cloud.gkehub.v1beta1.ValidateExclusivityRequest(); + if (object.parent != null) + message.parent = String(object.parent); + if (object.crManifest != null) + message.crManifest = String(object.crManifest); + if (object.intendedMembership != null) + message.intendedMembership = String(object.intendedMembership); + return message; + }; + + /** + * Creates a plain object from a ValidateExclusivityRequest message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.v1beta1.ValidateExclusivityRequest + * @static + * @param {google.cloud.gkehub.v1beta1.ValidateExclusivityRequest} message ValidateExclusivityRequest + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + ValidateExclusivityRequest.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.parent = ""; + object.crManifest = ""; + object.intendedMembership = ""; + } + if (message.parent != null && message.hasOwnProperty("parent")) + object.parent = message.parent; + if (message.crManifest != null && message.hasOwnProperty("crManifest")) + object.crManifest = message.crManifest; + if (message.intendedMembership != null && message.hasOwnProperty("intendedMembership")) + object.intendedMembership = message.intendedMembership; + return object; + }; + + /** + * Converts this ValidateExclusivityRequest to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.v1beta1.ValidateExclusivityRequest + * @instance + * @returns {Object.} JSON object + */ + ValidateExclusivityRequest.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return ValidateExclusivityRequest; + })(); + + v1beta1.ValidateExclusivityResponse = (function() { + + /** + * Properties of a ValidateExclusivityResponse. + * @memberof google.cloud.gkehub.v1beta1 + * @interface IValidateExclusivityResponse + * @property {google.rpc.IStatus|null} [status] ValidateExclusivityResponse status + */ + + /** + * Constructs a new ValidateExclusivityResponse. + * @memberof google.cloud.gkehub.v1beta1 + * @classdesc Represents a ValidateExclusivityResponse. + * @implements IValidateExclusivityResponse + * @constructor + * @param {google.cloud.gkehub.v1beta1.IValidateExclusivityResponse=} [properties] Properties to set + */ + function ValidateExclusivityResponse(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]]; + } + + /** + * ValidateExclusivityResponse status. + * @member {google.rpc.IStatus|null|undefined} status + * @memberof google.cloud.gkehub.v1beta1.ValidateExclusivityResponse + * @instance + */ + ValidateExclusivityResponse.prototype.status = null; + + /** + * Creates a new ValidateExclusivityResponse instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.v1beta1.ValidateExclusivityResponse + * @static + * @param {google.cloud.gkehub.v1beta1.IValidateExclusivityResponse=} [properties] Properties to set + * @returns {google.cloud.gkehub.v1beta1.ValidateExclusivityResponse} ValidateExclusivityResponse instance + */ + ValidateExclusivityResponse.create = function create(properties) { + return new ValidateExclusivityResponse(properties); + }; + + /** + * Encodes the specified ValidateExclusivityResponse message. Does not implicitly {@link google.cloud.gkehub.v1beta1.ValidateExclusivityResponse.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.v1beta1.ValidateExclusivityResponse + * @static + * @param {google.cloud.gkehub.v1beta1.IValidateExclusivityResponse} message ValidateExclusivityResponse message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + ValidateExclusivityResponse.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.status != null && Object.hasOwnProperty.call(message, "status")) + $root.google.rpc.Status.encode(message.status, writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim(); + return writer; + }; + + /** + * Encodes the specified ValidateExclusivityResponse message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta1.ValidateExclusivityResponse.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.v1beta1.ValidateExclusivityResponse + * @static + * @param {google.cloud.gkehub.v1beta1.IValidateExclusivityResponse} message ValidateExclusivityResponse message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + ValidateExclusivityResponse.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a ValidateExclusivityResponse message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.v1beta1.ValidateExclusivityResponse + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.v1beta1.ValidateExclusivityResponse} ValidateExclusivityResponse + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + ValidateExclusivityResponse.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.v1beta1.ValidateExclusivityResponse(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.status = $root.google.rpc.Status.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a ValidateExclusivityResponse message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.v1beta1.ValidateExclusivityResponse + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.v1beta1.ValidateExclusivityResponse} ValidateExclusivityResponse + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + ValidateExclusivityResponse.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a ValidateExclusivityResponse message. + * @function verify + * @memberof google.cloud.gkehub.v1beta1.ValidateExclusivityResponse + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + ValidateExclusivityResponse.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.status != null && message.hasOwnProperty("status")) { + var error = $root.google.rpc.Status.verify(message.status); + if (error) + return "status." + error; + } + return null; + }; + + /** + * Creates a ValidateExclusivityResponse message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.v1beta1.ValidateExclusivityResponse + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.v1beta1.ValidateExclusivityResponse} ValidateExclusivityResponse + */ + ValidateExclusivityResponse.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.v1beta1.ValidateExclusivityResponse) + return object; + var message = new $root.google.cloud.gkehub.v1beta1.ValidateExclusivityResponse(); + if (object.status != null) { + if (typeof object.status !== "object") + throw TypeError(".google.cloud.gkehub.v1beta1.ValidateExclusivityResponse.status: object expected"); + message.status = $root.google.rpc.Status.fromObject(object.status); + } + return message; + }; + + /** + * Creates a plain object from a ValidateExclusivityResponse message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.v1beta1.ValidateExclusivityResponse + * @static + * @param {google.cloud.gkehub.v1beta1.ValidateExclusivityResponse} message ValidateExclusivityResponse + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + ValidateExclusivityResponse.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) + object.status = null; + if (message.status != null && message.hasOwnProperty("status")) + object.status = $root.google.rpc.Status.toObject(message.status, options); + return object; + }; + + /** + * Converts this ValidateExclusivityResponse to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.v1beta1.ValidateExclusivityResponse + * @instance + * @returns {Object.} JSON object + */ + ValidateExclusivityResponse.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return ValidateExclusivityResponse; + })(); + + v1beta1.GenerateExclusivityManifestRequest = (function() { + + /** + * Properties of a GenerateExclusivityManifestRequest. + * @memberof google.cloud.gkehub.v1beta1 + * @interface IGenerateExclusivityManifestRequest + * @property {string|null} [name] GenerateExclusivityManifestRequest name + * @property {string|null} [crdManifest] GenerateExclusivityManifestRequest crdManifest + * @property {string|null} [crManifest] GenerateExclusivityManifestRequest crManifest + */ + + /** + * Constructs a new GenerateExclusivityManifestRequest. + * @memberof google.cloud.gkehub.v1beta1 + * @classdesc Represents a GenerateExclusivityManifestRequest. + * @implements IGenerateExclusivityManifestRequest + * @constructor + * @param {google.cloud.gkehub.v1beta1.IGenerateExclusivityManifestRequest=} [properties] Properties to set + */ + function GenerateExclusivityManifestRequest(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]]; + } + + /** + * GenerateExclusivityManifestRequest name. + * @member {string} name + * @memberof google.cloud.gkehub.v1beta1.GenerateExclusivityManifestRequest + * @instance + */ + GenerateExclusivityManifestRequest.prototype.name = ""; + + /** + * GenerateExclusivityManifestRequest crdManifest. + * @member {string} crdManifest + * @memberof google.cloud.gkehub.v1beta1.GenerateExclusivityManifestRequest + * @instance + */ + GenerateExclusivityManifestRequest.prototype.crdManifest = ""; + + /** + * GenerateExclusivityManifestRequest crManifest. + * @member {string} crManifest + * @memberof google.cloud.gkehub.v1beta1.GenerateExclusivityManifestRequest + * @instance + */ + GenerateExclusivityManifestRequest.prototype.crManifest = ""; + + /** + * Creates a new GenerateExclusivityManifestRequest instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.v1beta1.GenerateExclusivityManifestRequest + * @static + * @param {google.cloud.gkehub.v1beta1.IGenerateExclusivityManifestRequest=} [properties] Properties to set + * @returns {google.cloud.gkehub.v1beta1.GenerateExclusivityManifestRequest} GenerateExclusivityManifestRequest instance + */ + GenerateExclusivityManifestRequest.create = function create(properties) { + return new GenerateExclusivityManifestRequest(properties); + }; + + /** + * Encodes the specified GenerateExclusivityManifestRequest message. Does not implicitly {@link google.cloud.gkehub.v1beta1.GenerateExclusivityManifestRequest.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.v1beta1.GenerateExclusivityManifestRequest + * @static + * @param {google.cloud.gkehub.v1beta1.IGenerateExclusivityManifestRequest} message GenerateExclusivityManifestRequest message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + GenerateExclusivityManifestRequest.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.name != null && Object.hasOwnProperty.call(message, "name")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.name); + if (message.crdManifest != null && Object.hasOwnProperty.call(message, "crdManifest")) + writer.uint32(/* id 2, wireType 2 =*/18).string(message.crdManifest); + if (message.crManifest != null && Object.hasOwnProperty.call(message, "crManifest")) + writer.uint32(/* id 3, wireType 2 =*/26).string(message.crManifest); + return writer; + }; + + /** + * Encodes the specified GenerateExclusivityManifestRequest message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta1.GenerateExclusivityManifestRequest.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.v1beta1.GenerateExclusivityManifestRequest + * @static + * @param {google.cloud.gkehub.v1beta1.IGenerateExclusivityManifestRequest} message GenerateExclusivityManifestRequest message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + GenerateExclusivityManifestRequest.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a GenerateExclusivityManifestRequest message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.v1beta1.GenerateExclusivityManifestRequest + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.v1beta1.GenerateExclusivityManifestRequest} GenerateExclusivityManifestRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + GenerateExclusivityManifestRequest.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.v1beta1.GenerateExclusivityManifestRequest(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.name = reader.string(); + break; + case 2: + message.crdManifest = reader.string(); + break; + case 3: + message.crManifest = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a GenerateExclusivityManifestRequest message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.v1beta1.GenerateExclusivityManifestRequest + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.v1beta1.GenerateExclusivityManifestRequest} GenerateExclusivityManifestRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + GenerateExclusivityManifestRequest.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a GenerateExclusivityManifestRequest message. + * @function verify + * @memberof google.cloud.gkehub.v1beta1.GenerateExclusivityManifestRequest + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + GenerateExclusivityManifestRequest.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.name != null && message.hasOwnProperty("name")) + if (!$util.isString(message.name)) + return "name: string expected"; + if (message.crdManifest != null && message.hasOwnProperty("crdManifest")) + if (!$util.isString(message.crdManifest)) + return "crdManifest: string expected"; + if (message.crManifest != null && message.hasOwnProperty("crManifest")) + if (!$util.isString(message.crManifest)) + return "crManifest: string expected"; + return null; + }; + + /** + * Creates a GenerateExclusivityManifestRequest message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.v1beta1.GenerateExclusivityManifestRequest + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.v1beta1.GenerateExclusivityManifestRequest} GenerateExclusivityManifestRequest + */ + GenerateExclusivityManifestRequest.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.v1beta1.GenerateExclusivityManifestRequest) + return object; + var message = new $root.google.cloud.gkehub.v1beta1.GenerateExclusivityManifestRequest(); + if (object.name != null) + message.name = String(object.name); + if (object.crdManifest != null) + message.crdManifest = String(object.crdManifest); + if (object.crManifest != null) + message.crManifest = String(object.crManifest); + return message; + }; + + /** + * Creates a plain object from a GenerateExclusivityManifestRequest message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.v1beta1.GenerateExclusivityManifestRequest + * @static + * @param {google.cloud.gkehub.v1beta1.GenerateExclusivityManifestRequest} message GenerateExclusivityManifestRequest + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + GenerateExclusivityManifestRequest.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.name = ""; + object.crdManifest = ""; + object.crManifest = ""; + } + if (message.name != null && message.hasOwnProperty("name")) + object.name = message.name; + if (message.crdManifest != null && message.hasOwnProperty("crdManifest")) + object.crdManifest = message.crdManifest; + if (message.crManifest != null && message.hasOwnProperty("crManifest")) + object.crManifest = message.crManifest; + return object; + }; + + /** + * Converts this GenerateExclusivityManifestRequest to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.v1beta1.GenerateExclusivityManifestRequest + * @instance + * @returns {Object.} JSON object + */ + GenerateExclusivityManifestRequest.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return GenerateExclusivityManifestRequest; + })(); + + v1beta1.GenerateExclusivityManifestResponse = (function() { + + /** + * Properties of a GenerateExclusivityManifestResponse. + * @memberof google.cloud.gkehub.v1beta1 + * @interface IGenerateExclusivityManifestResponse + * @property {string|null} [crdManifest] GenerateExclusivityManifestResponse crdManifest + * @property {string|null} [crManifest] GenerateExclusivityManifestResponse crManifest + */ + + /** + * Constructs a new GenerateExclusivityManifestResponse. + * @memberof google.cloud.gkehub.v1beta1 + * @classdesc Represents a GenerateExclusivityManifestResponse. + * @implements IGenerateExclusivityManifestResponse + * @constructor + * @param {google.cloud.gkehub.v1beta1.IGenerateExclusivityManifestResponse=} [properties] Properties to set + */ + function GenerateExclusivityManifestResponse(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]]; + } + + /** + * GenerateExclusivityManifestResponse crdManifest. + * @member {string} crdManifest + * @memberof google.cloud.gkehub.v1beta1.GenerateExclusivityManifestResponse + * @instance + */ + GenerateExclusivityManifestResponse.prototype.crdManifest = ""; + + /** + * GenerateExclusivityManifestResponse crManifest. + * @member {string} crManifest + * @memberof google.cloud.gkehub.v1beta1.GenerateExclusivityManifestResponse + * @instance + */ + GenerateExclusivityManifestResponse.prototype.crManifest = ""; + + /** + * Creates a new GenerateExclusivityManifestResponse instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.v1beta1.GenerateExclusivityManifestResponse + * @static + * @param {google.cloud.gkehub.v1beta1.IGenerateExclusivityManifestResponse=} [properties] Properties to set + * @returns {google.cloud.gkehub.v1beta1.GenerateExclusivityManifestResponse} GenerateExclusivityManifestResponse instance + */ + GenerateExclusivityManifestResponse.create = function create(properties) { + return new GenerateExclusivityManifestResponse(properties); + }; + + /** + * Encodes the specified GenerateExclusivityManifestResponse message. Does not implicitly {@link google.cloud.gkehub.v1beta1.GenerateExclusivityManifestResponse.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.v1beta1.GenerateExclusivityManifestResponse + * @static + * @param {google.cloud.gkehub.v1beta1.IGenerateExclusivityManifestResponse} message GenerateExclusivityManifestResponse message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + GenerateExclusivityManifestResponse.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.crdManifest != null && Object.hasOwnProperty.call(message, "crdManifest")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.crdManifest); + if (message.crManifest != null && Object.hasOwnProperty.call(message, "crManifest")) + writer.uint32(/* id 2, wireType 2 =*/18).string(message.crManifest); + return writer; + }; + + /** + * Encodes the specified GenerateExclusivityManifestResponse message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta1.GenerateExclusivityManifestResponse.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.v1beta1.GenerateExclusivityManifestResponse + * @static + * @param {google.cloud.gkehub.v1beta1.IGenerateExclusivityManifestResponse} message GenerateExclusivityManifestResponse message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + GenerateExclusivityManifestResponse.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a GenerateExclusivityManifestResponse message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.v1beta1.GenerateExclusivityManifestResponse + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.v1beta1.GenerateExclusivityManifestResponse} GenerateExclusivityManifestResponse + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + GenerateExclusivityManifestResponse.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.v1beta1.GenerateExclusivityManifestResponse(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.crdManifest = reader.string(); + break; + case 2: + message.crManifest = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a GenerateExclusivityManifestResponse message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.v1beta1.GenerateExclusivityManifestResponse + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.v1beta1.GenerateExclusivityManifestResponse} GenerateExclusivityManifestResponse + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + GenerateExclusivityManifestResponse.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a GenerateExclusivityManifestResponse message. + * @function verify + * @memberof google.cloud.gkehub.v1beta1.GenerateExclusivityManifestResponse + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + GenerateExclusivityManifestResponse.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.crdManifest != null && message.hasOwnProperty("crdManifest")) + if (!$util.isString(message.crdManifest)) + return "crdManifest: string expected"; + if (message.crManifest != null && message.hasOwnProperty("crManifest")) + if (!$util.isString(message.crManifest)) + return "crManifest: string expected"; + return null; + }; + + /** + * Creates a GenerateExclusivityManifestResponse message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.v1beta1.GenerateExclusivityManifestResponse + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.v1beta1.GenerateExclusivityManifestResponse} GenerateExclusivityManifestResponse + */ + GenerateExclusivityManifestResponse.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.v1beta1.GenerateExclusivityManifestResponse) + return object; + var message = new $root.google.cloud.gkehub.v1beta1.GenerateExclusivityManifestResponse(); + if (object.crdManifest != null) + message.crdManifest = String(object.crdManifest); + if (object.crManifest != null) + message.crManifest = String(object.crManifest); + return message; + }; + + /** + * Creates a plain object from a GenerateExclusivityManifestResponse message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.v1beta1.GenerateExclusivityManifestResponse + * @static + * @param {google.cloud.gkehub.v1beta1.GenerateExclusivityManifestResponse} message GenerateExclusivityManifestResponse + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + GenerateExclusivityManifestResponse.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.crdManifest = ""; + object.crManifest = ""; + } + if (message.crdManifest != null && message.hasOwnProperty("crdManifest")) + object.crdManifest = message.crdManifest; + if (message.crManifest != null && message.hasOwnProperty("crManifest")) + object.crManifest = message.crManifest; + return object; + }; + + /** + * Converts this GenerateExclusivityManifestResponse to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.v1beta1.GenerateExclusivityManifestResponse + * @instance + * @returns {Object.} JSON object + */ + GenerateExclusivityManifestResponse.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return GenerateExclusivityManifestResponse; + })(); + + v1beta1.OperationMetadata = (function() { + + /** + * Properties of an OperationMetadata. + * @memberof google.cloud.gkehub.v1beta1 + * @interface IOperationMetadata + * @property {google.protobuf.ITimestamp|null} [createTime] OperationMetadata createTime + * @property {google.protobuf.ITimestamp|null} [endTime] OperationMetadata endTime + * @property {string|null} [target] OperationMetadata target + * @property {string|null} [verb] OperationMetadata verb + * @property {string|null} [statusDetail] OperationMetadata statusDetail + * @property {boolean|null} [cancelRequested] OperationMetadata cancelRequested + * @property {string|null} [apiVersion] OperationMetadata apiVersion + */ + + /** + * Constructs a new OperationMetadata. + * @memberof google.cloud.gkehub.v1beta1 + * @classdesc Represents an OperationMetadata. + * @implements IOperationMetadata + * @constructor + * @param {google.cloud.gkehub.v1beta1.IOperationMetadata=} [properties] Properties to set + */ + function OperationMetadata(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]]; + } + + /** + * OperationMetadata createTime. + * @member {google.protobuf.ITimestamp|null|undefined} createTime + * @memberof google.cloud.gkehub.v1beta1.OperationMetadata + * @instance + */ + OperationMetadata.prototype.createTime = null; + + /** + * OperationMetadata endTime. + * @member {google.protobuf.ITimestamp|null|undefined} endTime + * @memberof google.cloud.gkehub.v1beta1.OperationMetadata + * @instance + */ + OperationMetadata.prototype.endTime = null; + + /** + * OperationMetadata target. + * @member {string} target + * @memberof google.cloud.gkehub.v1beta1.OperationMetadata + * @instance + */ + OperationMetadata.prototype.target = ""; + + /** + * OperationMetadata verb. + * @member {string} verb + * @memberof google.cloud.gkehub.v1beta1.OperationMetadata + * @instance + */ + OperationMetadata.prototype.verb = ""; + + /** + * OperationMetadata statusDetail. + * @member {string} statusDetail + * @memberof google.cloud.gkehub.v1beta1.OperationMetadata + * @instance + */ + OperationMetadata.prototype.statusDetail = ""; + + /** + * OperationMetadata cancelRequested. + * @member {boolean} cancelRequested + * @memberof google.cloud.gkehub.v1beta1.OperationMetadata + * @instance + */ + OperationMetadata.prototype.cancelRequested = false; + + /** + * OperationMetadata apiVersion. + * @member {string} apiVersion + * @memberof google.cloud.gkehub.v1beta1.OperationMetadata + * @instance + */ + OperationMetadata.prototype.apiVersion = ""; + + /** + * Creates a new OperationMetadata instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.v1beta1.OperationMetadata + * @static + * @param {google.cloud.gkehub.v1beta1.IOperationMetadata=} [properties] Properties to set + * @returns {google.cloud.gkehub.v1beta1.OperationMetadata} OperationMetadata instance + */ + OperationMetadata.create = function create(properties) { + return new OperationMetadata(properties); + }; + + /** + * Encodes the specified OperationMetadata message. Does not implicitly {@link google.cloud.gkehub.v1beta1.OperationMetadata.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.v1beta1.OperationMetadata + * @static + * @param {google.cloud.gkehub.v1beta1.IOperationMetadata} message OperationMetadata message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + OperationMetadata.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.createTime != null && Object.hasOwnProperty.call(message, "createTime")) + $root.google.protobuf.Timestamp.encode(message.createTime, writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim(); + if (message.endTime != null && Object.hasOwnProperty.call(message, "endTime")) + $root.google.protobuf.Timestamp.encode(message.endTime, writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim(); + if (message.target != null && Object.hasOwnProperty.call(message, "target")) + writer.uint32(/* id 3, wireType 2 =*/26).string(message.target); + if (message.verb != null && Object.hasOwnProperty.call(message, "verb")) + writer.uint32(/* id 4, wireType 2 =*/34).string(message.verb); + if (message.statusDetail != null && Object.hasOwnProperty.call(message, "statusDetail")) + writer.uint32(/* id 5, wireType 2 =*/42).string(message.statusDetail); + if (message.cancelRequested != null && Object.hasOwnProperty.call(message, "cancelRequested")) + writer.uint32(/* id 6, wireType 0 =*/48).bool(message.cancelRequested); + if (message.apiVersion != null && Object.hasOwnProperty.call(message, "apiVersion")) + writer.uint32(/* id 7, wireType 2 =*/58).string(message.apiVersion); + return writer; + }; + + /** + * Encodes the specified OperationMetadata message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta1.OperationMetadata.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.v1beta1.OperationMetadata + * @static + * @param {google.cloud.gkehub.v1beta1.IOperationMetadata} message OperationMetadata message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + OperationMetadata.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes an OperationMetadata message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.v1beta1.OperationMetadata + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.v1beta1.OperationMetadata} OperationMetadata + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + OperationMetadata.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.v1beta1.OperationMetadata(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.createTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + break; + case 2: + message.endTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + break; + case 3: + message.target = reader.string(); + break; + case 4: + message.verb = reader.string(); + break; + case 5: + message.statusDetail = reader.string(); + break; + case 6: + message.cancelRequested = reader.bool(); + break; + case 7: + message.apiVersion = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes an OperationMetadata message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.v1beta1.OperationMetadata + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.v1beta1.OperationMetadata} OperationMetadata + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + OperationMetadata.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies an OperationMetadata message. + * @function verify + * @memberof google.cloud.gkehub.v1beta1.OperationMetadata + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + OperationMetadata.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.createTime != null && message.hasOwnProperty("createTime")) { + var error = $root.google.protobuf.Timestamp.verify(message.createTime); + if (error) + return "createTime." + error; + } + if (message.endTime != null && message.hasOwnProperty("endTime")) { + var error = $root.google.protobuf.Timestamp.verify(message.endTime); + if (error) + return "endTime." + error; + } + if (message.target != null && message.hasOwnProperty("target")) + if (!$util.isString(message.target)) + return "target: string expected"; + if (message.verb != null && message.hasOwnProperty("verb")) + if (!$util.isString(message.verb)) + return "verb: string expected"; + if (message.statusDetail != null && message.hasOwnProperty("statusDetail")) + if (!$util.isString(message.statusDetail)) + return "statusDetail: string expected"; + if (message.cancelRequested != null && message.hasOwnProperty("cancelRequested")) + if (typeof message.cancelRequested !== "boolean") + return "cancelRequested: boolean expected"; + if (message.apiVersion != null && message.hasOwnProperty("apiVersion")) + if (!$util.isString(message.apiVersion)) + return "apiVersion: string expected"; + return null; + }; + + /** + * Creates an OperationMetadata message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.v1beta1.OperationMetadata + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.v1beta1.OperationMetadata} OperationMetadata + */ + OperationMetadata.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.v1beta1.OperationMetadata) + return object; + var message = new $root.google.cloud.gkehub.v1beta1.OperationMetadata(); + if (object.createTime != null) { + if (typeof object.createTime !== "object") + throw TypeError(".google.cloud.gkehub.v1beta1.OperationMetadata.createTime: object expected"); + message.createTime = $root.google.protobuf.Timestamp.fromObject(object.createTime); + } + if (object.endTime != null) { + if (typeof object.endTime !== "object") + throw TypeError(".google.cloud.gkehub.v1beta1.OperationMetadata.endTime: object expected"); + message.endTime = $root.google.protobuf.Timestamp.fromObject(object.endTime); + } + if (object.target != null) + message.target = String(object.target); + if (object.verb != null) + message.verb = String(object.verb); + if (object.statusDetail != null) + message.statusDetail = String(object.statusDetail); + if (object.cancelRequested != null) + message.cancelRequested = Boolean(object.cancelRequested); + if (object.apiVersion != null) + message.apiVersion = String(object.apiVersion); + return message; + }; + + /** + * Creates a plain object from an OperationMetadata message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.v1beta1.OperationMetadata + * @static + * @param {google.cloud.gkehub.v1beta1.OperationMetadata} message OperationMetadata + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + OperationMetadata.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.createTime = null; + object.endTime = null; + object.target = ""; + object.verb = ""; + object.statusDetail = ""; + object.cancelRequested = false; + object.apiVersion = ""; + } + if (message.createTime != null && message.hasOwnProperty("createTime")) + object.createTime = $root.google.protobuf.Timestamp.toObject(message.createTime, options); + if (message.endTime != null && message.hasOwnProperty("endTime")) + object.endTime = $root.google.protobuf.Timestamp.toObject(message.endTime, options); + if (message.target != null && message.hasOwnProperty("target")) + object.target = message.target; + if (message.verb != null && message.hasOwnProperty("verb")) + object.verb = message.verb; + if (message.statusDetail != null && message.hasOwnProperty("statusDetail")) + object.statusDetail = message.statusDetail; + if (message.cancelRequested != null && message.hasOwnProperty("cancelRequested")) + object.cancelRequested = message.cancelRequested; + if (message.apiVersion != null && message.hasOwnProperty("apiVersion")) + object.apiVersion = message.apiVersion; + return object; + }; + + /** + * Converts this OperationMetadata to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.v1beta1.OperationMetadata + * @instance + * @returns {Object.} JSON object + */ + OperationMetadata.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return OperationMetadata; + })(); + + return v1beta1; + })(); + + return gkehub; + })(); + + return cloud; + })(); + + google.api = (function() { + + /** + * Namespace api. + * @memberof google + * @namespace + */ + var api = {}; + + api.Http = (function() { + + /** + * Properties of a Http. + * @memberof google.api + * @interface IHttp + * @property {Array.|null} [rules] Http rules + * @property {boolean|null} [fullyDecodeReservedExpansion] Http fullyDecodeReservedExpansion + */ + + /** + * Constructs a new Http. + * @memberof google.api + * @classdesc Represents a Http. + * @implements IHttp + * @constructor + * @param {google.api.IHttp=} [properties] Properties to set + */ + function Http(properties) { + this.rules = []; + 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]]; + } + + /** + * Http rules. + * @member {Array.} rules + * @memberof google.api.Http + * @instance + */ + Http.prototype.rules = $util.emptyArray; + + /** + * Http fullyDecodeReservedExpansion. + * @member {boolean} fullyDecodeReservedExpansion + * @memberof google.api.Http + * @instance + */ + Http.prototype.fullyDecodeReservedExpansion = false; + + /** + * Creates a new Http instance using the specified properties. + * @function create + * @memberof google.api.Http + * @static + * @param {google.api.IHttp=} [properties] Properties to set + * @returns {google.api.Http} Http instance + */ + Http.create = function create(properties) { + return new Http(properties); + }; + + /** + * Encodes the specified Http message. Does not implicitly {@link google.api.Http.verify|verify} messages. + * @function encode + * @memberof google.api.Http + * @static + * @param {google.api.IHttp} message Http message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + Http.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.rules != null && message.rules.length) + for (var i = 0; i < message.rules.length; ++i) + $root.google.api.HttpRule.encode(message.rules[i], writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim(); + if (message.fullyDecodeReservedExpansion != null && Object.hasOwnProperty.call(message, "fullyDecodeReservedExpansion")) + writer.uint32(/* id 2, wireType 0 =*/16).bool(message.fullyDecodeReservedExpansion); + return writer; + }; + + /** + * Encodes the specified Http message, length delimited. Does not implicitly {@link google.api.Http.verify|verify} messages. + * @function encodeDelimited + * @memberof google.api.Http + * @static + * @param {google.api.IHttp} message Http message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + Http.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a Http message from the specified reader or buffer. + * @function decode + * @memberof google.api.Http + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.api.Http} Http + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + Http.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.api.Http(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + if (!(message.rules && message.rules.length)) + message.rules = []; + message.rules.push($root.google.api.HttpRule.decode(reader, reader.uint32())); + break; + case 2: + message.fullyDecodeReservedExpansion = reader.bool(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a Http message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.api.Http + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.api.Http} Http + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + Http.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a Http message. + * @function verify + * @memberof google.api.Http + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + Http.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.rules != null && message.hasOwnProperty("rules")) { + if (!Array.isArray(message.rules)) + return "rules: array expected"; + for (var i = 0; i < message.rules.length; ++i) { + var error = $root.google.api.HttpRule.verify(message.rules[i]); + if (error) + return "rules." + error; + } + } + if (message.fullyDecodeReservedExpansion != null && message.hasOwnProperty("fullyDecodeReservedExpansion")) + if (typeof message.fullyDecodeReservedExpansion !== "boolean") + return "fullyDecodeReservedExpansion: boolean expected"; + return null; + }; + + /** + * Creates a Http message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.api.Http + * @static + * @param {Object.} object Plain object + * @returns {google.api.Http} Http + */ + Http.fromObject = function fromObject(object) { + if (object instanceof $root.google.api.Http) + return object; + var message = new $root.google.api.Http(); + if (object.rules) { + if (!Array.isArray(object.rules)) + throw TypeError(".google.api.Http.rules: array expected"); + message.rules = []; + for (var i = 0; i < object.rules.length; ++i) { + if (typeof object.rules[i] !== "object") + throw TypeError(".google.api.Http.rules: object expected"); + message.rules[i] = $root.google.api.HttpRule.fromObject(object.rules[i]); + } + } + if (object.fullyDecodeReservedExpansion != null) + message.fullyDecodeReservedExpansion = Boolean(object.fullyDecodeReservedExpansion); + return message; + }; + + /** + * Creates a plain object from a Http message. Also converts values to other types if specified. + * @function toObject + * @memberof google.api.Http + * @static + * @param {google.api.Http} message Http + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + Http.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.arrays || options.defaults) + object.rules = []; + if (options.defaults) + object.fullyDecodeReservedExpansion = false; + if (message.rules && message.rules.length) { + object.rules = []; + for (var j = 0; j < message.rules.length; ++j) + object.rules[j] = $root.google.api.HttpRule.toObject(message.rules[j], options); + } + if (message.fullyDecodeReservedExpansion != null && message.hasOwnProperty("fullyDecodeReservedExpansion")) + object.fullyDecodeReservedExpansion = message.fullyDecodeReservedExpansion; + return object; + }; + + /** + * Converts this Http to JSON. + * @function toJSON + * @memberof google.api.Http + * @instance + * @returns {Object.} JSON object + */ + Http.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return Http; + })(); + + api.HttpRule = (function() { + + /** + * Properties of a HttpRule. + * @memberof google.api + * @interface IHttpRule + * @property {string|null} [selector] HttpRule selector + * @property {string|null} [get] HttpRule get + * @property {string|null} [put] HttpRule put + * @property {string|null} [post] HttpRule post + * @property {string|null} ["delete"] HttpRule delete + * @property {string|null} [patch] HttpRule patch + * @property {google.api.ICustomHttpPattern|null} [custom] HttpRule custom + * @property {string|null} [body] HttpRule body + * @property {string|null} [responseBody] HttpRule responseBody + * @property {Array.|null} [additionalBindings] HttpRule additionalBindings + */ + + /** + * Constructs a new HttpRule. + * @memberof google.api + * @classdesc Represents a HttpRule. + * @implements IHttpRule + * @constructor + * @param {google.api.IHttpRule=} [properties] Properties to set + */ + function HttpRule(properties) { + this.additionalBindings = []; + 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]]; + } + + /** + * HttpRule selector. + * @member {string} selector + * @memberof google.api.HttpRule + * @instance + */ + HttpRule.prototype.selector = ""; + + /** + * HttpRule get. + * @member {string} get + * @memberof google.api.HttpRule + * @instance + */ + HttpRule.prototype.get = ""; + + /** + * HttpRule put. + * @member {string} put + * @memberof google.api.HttpRule + * @instance + */ + HttpRule.prototype.put = ""; + + /** + * HttpRule post. + * @member {string} post + * @memberof google.api.HttpRule + * @instance + */ + HttpRule.prototype.post = ""; + + /** + * HttpRule delete. + * @member {string} delete + * @memberof google.api.HttpRule + * @instance + */ + HttpRule.prototype["delete"] = ""; + + /** + * HttpRule patch. + * @member {string} patch + * @memberof google.api.HttpRule + * @instance + */ + HttpRule.prototype.patch = ""; + + /** + * HttpRule custom. + * @member {google.api.ICustomHttpPattern|null|undefined} custom + * @memberof google.api.HttpRule + * @instance + */ + HttpRule.prototype.custom = null; + + /** + * HttpRule body. + * @member {string} body + * @memberof google.api.HttpRule + * @instance + */ + HttpRule.prototype.body = ""; + + /** + * HttpRule responseBody. + * @member {string} responseBody + * @memberof google.api.HttpRule + * @instance + */ + HttpRule.prototype.responseBody = ""; + + /** + * HttpRule additionalBindings. + * @member {Array.} additionalBindings + * @memberof google.api.HttpRule + * @instance + */ + HttpRule.prototype.additionalBindings = $util.emptyArray; + + // OneOf field names bound to virtual getters and setters + var $oneOfFields; + + /** + * HttpRule pattern. + * @member {"get"|"put"|"post"|"delete"|"patch"|"custom"|undefined} pattern + * @memberof google.api.HttpRule + * @instance + */ + Object.defineProperty(HttpRule.prototype, "pattern", { + get: $util.oneOfGetter($oneOfFields = ["get", "put", "post", "delete", "patch", "custom"]), + set: $util.oneOfSetter($oneOfFields) + }); + + /** + * Creates a new HttpRule instance using the specified properties. + * @function create + * @memberof google.api.HttpRule + * @static + * @param {google.api.IHttpRule=} [properties] Properties to set + * @returns {google.api.HttpRule} HttpRule instance + */ + HttpRule.create = function create(properties) { + return new HttpRule(properties); + }; + + /** + * Encodes the specified HttpRule message. Does not implicitly {@link google.api.HttpRule.verify|verify} messages. + * @function encode + * @memberof google.api.HttpRule + * @static + * @param {google.api.IHttpRule} message HttpRule message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + HttpRule.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.selector != null && Object.hasOwnProperty.call(message, "selector")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.selector); + if (message.get != null && Object.hasOwnProperty.call(message, "get")) + writer.uint32(/* id 2, wireType 2 =*/18).string(message.get); + if (message.put != null && Object.hasOwnProperty.call(message, "put")) + writer.uint32(/* id 3, wireType 2 =*/26).string(message.put); + if (message.post != null && Object.hasOwnProperty.call(message, "post")) + writer.uint32(/* id 4, wireType 2 =*/34).string(message.post); + if (message["delete"] != null && Object.hasOwnProperty.call(message, "delete")) + writer.uint32(/* id 5, wireType 2 =*/42).string(message["delete"]); + if (message.patch != null && Object.hasOwnProperty.call(message, "patch")) + writer.uint32(/* id 6, wireType 2 =*/50).string(message.patch); + if (message.body != null && Object.hasOwnProperty.call(message, "body")) + writer.uint32(/* id 7, wireType 2 =*/58).string(message.body); + if (message.custom != null && Object.hasOwnProperty.call(message, "custom")) + $root.google.api.CustomHttpPattern.encode(message.custom, writer.uint32(/* id 8, wireType 2 =*/66).fork()).ldelim(); + if (message.additionalBindings != null && message.additionalBindings.length) + for (var i = 0; i < message.additionalBindings.length; ++i) + $root.google.api.HttpRule.encode(message.additionalBindings[i], writer.uint32(/* id 11, wireType 2 =*/90).fork()).ldelim(); + if (message.responseBody != null && Object.hasOwnProperty.call(message, "responseBody")) + writer.uint32(/* id 12, wireType 2 =*/98).string(message.responseBody); + return writer; + }; + + /** + * Encodes the specified HttpRule message, length delimited. Does not implicitly {@link google.api.HttpRule.verify|verify} messages. + * @function encodeDelimited + * @memberof google.api.HttpRule + * @static + * @param {google.api.IHttpRule} message HttpRule message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + HttpRule.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a HttpRule message from the specified reader or buffer. + * @function decode + * @memberof google.api.HttpRule + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.api.HttpRule} HttpRule + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + HttpRule.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.api.HttpRule(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.selector = reader.string(); + break; + case 2: + message.get = reader.string(); + break; + case 3: + message.put = reader.string(); + break; + case 4: + message.post = reader.string(); + break; + case 5: + message["delete"] = reader.string(); + break; + case 6: + message.patch = reader.string(); + break; + case 8: + message.custom = $root.google.api.CustomHttpPattern.decode(reader, reader.uint32()); + break; + case 7: + message.body = reader.string(); + break; + case 12: + message.responseBody = reader.string(); + break; + case 11: + if (!(message.additionalBindings && message.additionalBindings.length)) + message.additionalBindings = []; + message.additionalBindings.push($root.google.api.HttpRule.decode(reader, reader.uint32())); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a HttpRule message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.api.HttpRule + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.api.HttpRule} HttpRule + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + HttpRule.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a HttpRule message. + * @function verify + * @memberof google.api.HttpRule + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + HttpRule.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + var properties = {}; + if (message.selector != null && message.hasOwnProperty("selector")) + if (!$util.isString(message.selector)) + return "selector: string expected"; + if (message.get != null && message.hasOwnProperty("get")) { + properties.pattern = 1; + if (!$util.isString(message.get)) + return "get: string expected"; + } + if (message.put != null && message.hasOwnProperty("put")) { + if (properties.pattern === 1) + return "pattern: multiple values"; + properties.pattern = 1; + if (!$util.isString(message.put)) + return "put: string expected"; + } + if (message.post != null && message.hasOwnProperty("post")) { + if (properties.pattern === 1) + return "pattern: multiple values"; + properties.pattern = 1; + if (!$util.isString(message.post)) + return "post: string expected"; + } + if (message["delete"] != null && message.hasOwnProperty("delete")) { + if (properties.pattern === 1) + return "pattern: multiple values"; + properties.pattern = 1; + if (!$util.isString(message["delete"])) + return "delete: string expected"; + } + if (message.patch != null && message.hasOwnProperty("patch")) { + if (properties.pattern === 1) + return "pattern: multiple values"; + properties.pattern = 1; + if (!$util.isString(message.patch)) + return "patch: string expected"; + } + if (message.custom != null && message.hasOwnProperty("custom")) { + if (properties.pattern === 1) + return "pattern: multiple values"; + properties.pattern = 1; + { + var error = $root.google.api.CustomHttpPattern.verify(message.custom); + if (error) + return "custom." + error; + } + } + if (message.body != null && message.hasOwnProperty("body")) + if (!$util.isString(message.body)) + return "body: string expected"; + if (message.responseBody != null && message.hasOwnProperty("responseBody")) + if (!$util.isString(message.responseBody)) + return "responseBody: string expected"; + if (message.additionalBindings != null && message.hasOwnProperty("additionalBindings")) { + if (!Array.isArray(message.additionalBindings)) + return "additionalBindings: array expected"; + for (var i = 0; i < message.additionalBindings.length; ++i) { + var error = $root.google.api.HttpRule.verify(message.additionalBindings[i]); + if (error) + return "additionalBindings." + error; + } + } + return null; + }; + + /** + * Creates a HttpRule message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.api.HttpRule + * @static + * @param {Object.} object Plain object + * @returns {google.api.HttpRule} HttpRule + */ + HttpRule.fromObject = function fromObject(object) { + if (object instanceof $root.google.api.HttpRule) + return object; + var message = new $root.google.api.HttpRule(); + if (object.selector != null) + message.selector = String(object.selector); + if (object.get != null) + message.get = String(object.get); + if (object.put != null) + message.put = String(object.put); + if (object.post != null) + message.post = String(object.post); + if (object["delete"] != null) + message["delete"] = String(object["delete"]); + if (object.patch != null) + message.patch = String(object.patch); + if (object.custom != null) { + if (typeof object.custom !== "object") + throw TypeError(".google.api.HttpRule.custom: object expected"); + message.custom = $root.google.api.CustomHttpPattern.fromObject(object.custom); + } + if (object.body != null) + message.body = String(object.body); + if (object.responseBody != null) + message.responseBody = String(object.responseBody); + if (object.additionalBindings) { + if (!Array.isArray(object.additionalBindings)) + throw TypeError(".google.api.HttpRule.additionalBindings: array expected"); + message.additionalBindings = []; + for (var i = 0; i < object.additionalBindings.length; ++i) { + if (typeof object.additionalBindings[i] !== "object") + throw TypeError(".google.api.HttpRule.additionalBindings: object expected"); + message.additionalBindings[i] = $root.google.api.HttpRule.fromObject(object.additionalBindings[i]); + } + } + return message; + }; + + /** + * Creates a plain object from a HttpRule message. Also converts values to other types if specified. + * @function toObject + * @memberof google.api.HttpRule + * @static + * @param {google.api.HttpRule} message HttpRule + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + HttpRule.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.arrays || options.defaults) + object.additionalBindings = []; + if (options.defaults) { + object.selector = ""; + object.body = ""; + object.responseBody = ""; + } + if (message.selector != null && message.hasOwnProperty("selector")) + object.selector = message.selector; + if (message.get != null && message.hasOwnProperty("get")) { + object.get = message.get; + if (options.oneofs) + object.pattern = "get"; + } + if (message.put != null && message.hasOwnProperty("put")) { + object.put = message.put; + if (options.oneofs) + object.pattern = "put"; + } + if (message.post != null && message.hasOwnProperty("post")) { + object.post = message.post; + if (options.oneofs) + object.pattern = "post"; + } + if (message["delete"] != null && message.hasOwnProperty("delete")) { + object["delete"] = message["delete"]; + if (options.oneofs) + object.pattern = "delete"; + } + if (message.patch != null && message.hasOwnProperty("patch")) { + object.patch = message.patch; + if (options.oneofs) + object.pattern = "patch"; + } + if (message.body != null && message.hasOwnProperty("body")) + object.body = message.body; + if (message.custom != null && message.hasOwnProperty("custom")) { + object.custom = $root.google.api.CustomHttpPattern.toObject(message.custom, options); + if (options.oneofs) + object.pattern = "custom"; + } + if (message.additionalBindings && message.additionalBindings.length) { + object.additionalBindings = []; + for (var j = 0; j < message.additionalBindings.length; ++j) + object.additionalBindings[j] = $root.google.api.HttpRule.toObject(message.additionalBindings[j], options); + } + if (message.responseBody != null && message.hasOwnProperty("responseBody")) + object.responseBody = message.responseBody; + return object; + }; + + /** + * Converts this HttpRule to JSON. + * @function toJSON + * @memberof google.api.HttpRule + * @instance + * @returns {Object.} JSON object + */ + HttpRule.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return HttpRule; + })(); + + api.CustomHttpPattern = (function() { + + /** + * Properties of a CustomHttpPattern. + * @memberof google.api + * @interface ICustomHttpPattern + * @property {string|null} [kind] CustomHttpPattern kind + * @property {string|null} [path] CustomHttpPattern path + */ + + /** + * Constructs a new CustomHttpPattern. + * @memberof google.api + * @classdesc Represents a CustomHttpPattern. + * @implements ICustomHttpPattern + * @constructor + * @param {google.api.ICustomHttpPattern=} [properties] Properties to set + */ + function CustomHttpPattern(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]]; + } + + /** + * CustomHttpPattern kind. + * @member {string} kind + * @memberof google.api.CustomHttpPattern + * @instance + */ + CustomHttpPattern.prototype.kind = ""; + + /** + * CustomHttpPattern path. + * @member {string} path + * @memberof google.api.CustomHttpPattern + * @instance + */ + CustomHttpPattern.prototype.path = ""; + + /** + * Creates a new CustomHttpPattern instance using the specified properties. + * @function create + * @memberof google.api.CustomHttpPattern + * @static + * @param {google.api.ICustomHttpPattern=} [properties] Properties to set + * @returns {google.api.CustomHttpPattern} CustomHttpPattern instance + */ + CustomHttpPattern.create = function create(properties) { + return new CustomHttpPattern(properties); + }; + + /** + * Encodes the specified CustomHttpPattern message. Does not implicitly {@link google.api.CustomHttpPattern.verify|verify} messages. + * @function encode + * @memberof google.api.CustomHttpPattern + * @static + * @param {google.api.ICustomHttpPattern} message CustomHttpPattern message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + CustomHttpPattern.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.kind != null && Object.hasOwnProperty.call(message, "kind")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.kind); + if (message.path != null && Object.hasOwnProperty.call(message, "path")) + writer.uint32(/* id 2, wireType 2 =*/18).string(message.path); + return writer; + }; + + /** + * Encodes the specified CustomHttpPattern message, length delimited. Does not implicitly {@link google.api.CustomHttpPattern.verify|verify} messages. + * @function encodeDelimited + * @memberof google.api.CustomHttpPattern + * @static + * @param {google.api.ICustomHttpPattern} message CustomHttpPattern message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + CustomHttpPattern.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a CustomHttpPattern message from the specified reader or buffer. + * @function decode + * @memberof google.api.CustomHttpPattern + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.api.CustomHttpPattern} CustomHttpPattern + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + CustomHttpPattern.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.api.CustomHttpPattern(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.kind = reader.string(); + break; + case 2: + message.path = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a CustomHttpPattern message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.api.CustomHttpPattern + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.api.CustomHttpPattern} CustomHttpPattern + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + CustomHttpPattern.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a CustomHttpPattern message. + * @function verify + * @memberof google.api.CustomHttpPattern + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + CustomHttpPattern.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.kind != null && message.hasOwnProperty("kind")) + if (!$util.isString(message.kind)) + return "kind: string expected"; + if (message.path != null && message.hasOwnProperty("path")) + if (!$util.isString(message.path)) + return "path: string expected"; + return null; + }; + + /** + * Creates a CustomHttpPattern message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.api.CustomHttpPattern + * @static + * @param {Object.} object Plain object + * @returns {google.api.CustomHttpPattern} CustomHttpPattern + */ + CustomHttpPattern.fromObject = function fromObject(object) { + if (object instanceof $root.google.api.CustomHttpPattern) + return object; + var message = new $root.google.api.CustomHttpPattern(); + if (object.kind != null) + message.kind = String(object.kind); + if (object.path != null) + message.path = String(object.path); + return message; + }; + + /** + * Creates a plain object from a CustomHttpPattern message. Also converts values to other types if specified. + * @function toObject + * @memberof google.api.CustomHttpPattern + * @static + * @param {google.api.CustomHttpPattern} message CustomHttpPattern + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + CustomHttpPattern.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.kind = ""; + object.path = ""; + } + if (message.kind != null && message.hasOwnProperty("kind")) + object.kind = message.kind; + if (message.path != null && message.hasOwnProperty("path")) + object.path = message.path; + return object; + }; + + /** + * Converts this CustomHttpPattern to JSON. + * @function toJSON + * @memberof google.api.CustomHttpPattern + * @instance + * @returns {Object.} JSON object + */ + CustomHttpPattern.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return CustomHttpPattern; + })(); + + /** + * FieldBehavior enum. + * @name google.api.FieldBehavior + * @enum {number} + * @property {number} FIELD_BEHAVIOR_UNSPECIFIED=0 FIELD_BEHAVIOR_UNSPECIFIED value + * @property {number} OPTIONAL=1 OPTIONAL value + * @property {number} REQUIRED=2 REQUIRED value + * @property {number} OUTPUT_ONLY=3 OUTPUT_ONLY value + * @property {number} INPUT_ONLY=4 INPUT_ONLY value + * @property {number} IMMUTABLE=5 IMMUTABLE value + */ + api.FieldBehavior = (function() { + var valuesById = {}, values = Object.create(valuesById); + values[valuesById[0] = "FIELD_BEHAVIOR_UNSPECIFIED"] = 0; + values[valuesById[1] = "OPTIONAL"] = 1; + values[valuesById[2] = "REQUIRED"] = 2; + values[valuesById[3] = "OUTPUT_ONLY"] = 3; + values[valuesById[4] = "INPUT_ONLY"] = 4; + values[valuesById[5] = "IMMUTABLE"] = 5; + return values; + })(); + + api.ResourceDescriptor = (function() { + + /** + * Properties of a ResourceDescriptor. + * @memberof google.api + * @interface IResourceDescriptor + * @property {string|null} [type] ResourceDescriptor type + * @property {Array.|null} [pattern] ResourceDescriptor pattern + * @property {string|null} [nameField] ResourceDescriptor nameField + * @property {google.api.ResourceDescriptor.History|null} [history] ResourceDescriptor history + * @property {string|null} [plural] ResourceDescriptor plural + * @property {string|null} [singular] ResourceDescriptor singular + * @property {Array.|null} [style] ResourceDescriptor style + */ + + /** + * Constructs a new ResourceDescriptor. + * @memberof google.api + * @classdesc Represents a ResourceDescriptor. + * @implements IResourceDescriptor + * @constructor + * @param {google.api.IResourceDescriptor=} [properties] Properties to set + */ + function ResourceDescriptor(properties) { + this.pattern = []; + this.style = []; + 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]]; + } + + /** + * ResourceDescriptor type. + * @member {string} type + * @memberof google.api.ResourceDescriptor + * @instance + */ + ResourceDescriptor.prototype.type = ""; + + /** + * ResourceDescriptor pattern. + * @member {Array.} pattern + * @memberof google.api.ResourceDescriptor + * @instance + */ + ResourceDescriptor.prototype.pattern = $util.emptyArray; + + /** + * ResourceDescriptor nameField. + * @member {string} nameField + * @memberof google.api.ResourceDescriptor + * @instance + */ + ResourceDescriptor.prototype.nameField = ""; + + /** + * ResourceDescriptor history. + * @member {google.api.ResourceDescriptor.History} history + * @memberof google.api.ResourceDescriptor + * @instance + */ + ResourceDescriptor.prototype.history = 0; + + /** + * ResourceDescriptor plural. + * @member {string} plural + * @memberof google.api.ResourceDescriptor + * @instance + */ + ResourceDescriptor.prototype.plural = ""; + + /** + * ResourceDescriptor singular. + * @member {string} singular + * @memberof google.api.ResourceDescriptor + * @instance + */ + ResourceDescriptor.prototype.singular = ""; + + /** + * ResourceDescriptor style. + * @member {Array.} style + * @memberof google.api.ResourceDescriptor + * @instance + */ + ResourceDescriptor.prototype.style = $util.emptyArray; + + /** + * Creates a new ResourceDescriptor instance using the specified properties. + * @function create + * @memberof google.api.ResourceDescriptor + * @static + * @param {google.api.IResourceDescriptor=} [properties] Properties to set + * @returns {google.api.ResourceDescriptor} ResourceDescriptor instance + */ + ResourceDescriptor.create = function create(properties) { + return new ResourceDescriptor(properties); + }; + + /** + * Encodes the specified ResourceDescriptor message. Does not implicitly {@link google.api.ResourceDescriptor.verify|verify} messages. + * @function encode + * @memberof google.api.ResourceDescriptor + * @static + * @param {google.api.IResourceDescriptor} message ResourceDescriptor message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + ResourceDescriptor.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.type != null && Object.hasOwnProperty.call(message, "type")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.type); + if (message.pattern != null && message.pattern.length) + for (var i = 0; i < message.pattern.length; ++i) + writer.uint32(/* id 2, wireType 2 =*/18).string(message.pattern[i]); + if (message.nameField != null && Object.hasOwnProperty.call(message, "nameField")) + writer.uint32(/* id 3, wireType 2 =*/26).string(message.nameField); + if (message.history != null && Object.hasOwnProperty.call(message, "history")) + writer.uint32(/* id 4, wireType 0 =*/32).int32(message.history); + if (message.plural != null && Object.hasOwnProperty.call(message, "plural")) + writer.uint32(/* id 5, wireType 2 =*/42).string(message.plural); + if (message.singular != null && Object.hasOwnProperty.call(message, "singular")) + writer.uint32(/* id 6, wireType 2 =*/50).string(message.singular); + if (message.style != null && message.style.length) { + writer.uint32(/* id 10, wireType 2 =*/82).fork(); + for (var i = 0; i < message.style.length; ++i) + writer.int32(message.style[i]); + writer.ldelim(); + } + return writer; + }; + + /** + * Encodes the specified ResourceDescriptor message, length delimited. Does not implicitly {@link google.api.ResourceDescriptor.verify|verify} messages. + * @function encodeDelimited + * @memberof google.api.ResourceDescriptor + * @static + * @param {google.api.IResourceDescriptor} message ResourceDescriptor message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + ResourceDescriptor.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a ResourceDescriptor message from the specified reader or buffer. + * @function decode + * @memberof google.api.ResourceDescriptor + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.api.ResourceDescriptor} ResourceDescriptor + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + ResourceDescriptor.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.api.ResourceDescriptor(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.type = reader.string(); + break; + case 2: + if (!(message.pattern && message.pattern.length)) + message.pattern = []; + message.pattern.push(reader.string()); + break; + case 3: + message.nameField = reader.string(); + break; + case 4: + message.history = reader.int32(); + break; + case 5: + message.plural = reader.string(); + break; + case 6: + message.singular = reader.string(); + break; + case 10: + if (!(message.style && message.style.length)) + message.style = []; + if ((tag & 7) === 2) { + var end2 = reader.uint32() + reader.pos; + while (reader.pos < end2) + message.style.push(reader.int32()); + } else + message.style.push(reader.int32()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a ResourceDescriptor message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.api.ResourceDescriptor + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.api.ResourceDescriptor} ResourceDescriptor + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + ResourceDescriptor.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a ResourceDescriptor message. + * @function verify + * @memberof google.api.ResourceDescriptor + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + ResourceDescriptor.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.type != null && message.hasOwnProperty("type")) + if (!$util.isString(message.type)) + return "type: string expected"; + if (message.pattern != null && message.hasOwnProperty("pattern")) { + if (!Array.isArray(message.pattern)) + return "pattern: array expected"; + for (var i = 0; i < message.pattern.length; ++i) + if (!$util.isString(message.pattern[i])) + return "pattern: string[] expected"; + } + if (message.nameField != null && message.hasOwnProperty("nameField")) + if (!$util.isString(message.nameField)) + return "nameField: string expected"; + if (message.history != null && message.hasOwnProperty("history")) + switch (message.history) { + default: + return "history: enum value expected"; + case 0: + case 1: + case 2: + break; + } + if (message.plural != null && message.hasOwnProperty("plural")) + if (!$util.isString(message.plural)) + return "plural: string expected"; + if (message.singular != null && message.hasOwnProperty("singular")) + if (!$util.isString(message.singular)) + return "singular: string expected"; + if (message.style != null && message.hasOwnProperty("style")) { + if (!Array.isArray(message.style)) + return "style: array expected"; + for (var i = 0; i < message.style.length; ++i) + switch (message.style[i]) { + default: + return "style: enum value[] expected"; + case 0: + case 1: + break; + } + } + return null; + }; + + /** + * Creates a ResourceDescriptor message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.api.ResourceDescriptor + * @static + * @param {Object.} object Plain object + * @returns {google.api.ResourceDescriptor} ResourceDescriptor + */ + ResourceDescriptor.fromObject = function fromObject(object) { + if (object instanceof $root.google.api.ResourceDescriptor) + return object; + var message = new $root.google.api.ResourceDescriptor(); + if (object.type != null) + message.type = String(object.type); + if (object.pattern) { + if (!Array.isArray(object.pattern)) + throw TypeError(".google.api.ResourceDescriptor.pattern: array expected"); + message.pattern = []; + for (var i = 0; i < object.pattern.length; ++i) + message.pattern[i] = String(object.pattern[i]); + } + if (object.nameField != null) + message.nameField = String(object.nameField); + switch (object.history) { + case "HISTORY_UNSPECIFIED": + case 0: + message.history = 0; + break; + case "ORIGINALLY_SINGLE_PATTERN": + case 1: + message.history = 1; + break; + case "FUTURE_MULTI_PATTERN": + case 2: + message.history = 2; + break; + } + if (object.plural != null) + message.plural = String(object.plural); + if (object.singular != null) + message.singular = String(object.singular); + if (object.style) { + if (!Array.isArray(object.style)) + throw TypeError(".google.api.ResourceDescriptor.style: array expected"); + message.style = []; + for (var i = 0; i < object.style.length; ++i) + switch (object.style[i]) { + default: + case "STYLE_UNSPECIFIED": + case 0: + message.style[i] = 0; + break; + case "DECLARATIVE_FRIENDLY": + case 1: + message.style[i] = 1; + break; + } + } + return message; + }; + + /** + * Creates a plain object from a ResourceDescriptor message. Also converts values to other types if specified. + * @function toObject + * @memberof google.api.ResourceDescriptor + * @static + * @param {google.api.ResourceDescriptor} message ResourceDescriptor + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + ResourceDescriptor.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.arrays || options.defaults) { + object.pattern = []; + object.style = []; + } + if (options.defaults) { + object.type = ""; + object.nameField = ""; + object.history = options.enums === String ? "HISTORY_UNSPECIFIED" : 0; + object.plural = ""; + object.singular = ""; + } + if (message.type != null && message.hasOwnProperty("type")) + object.type = message.type; + if (message.pattern && message.pattern.length) { + object.pattern = []; + for (var j = 0; j < message.pattern.length; ++j) + object.pattern[j] = message.pattern[j]; + } + if (message.nameField != null && message.hasOwnProperty("nameField")) + object.nameField = message.nameField; + if (message.history != null && message.hasOwnProperty("history")) + object.history = options.enums === String ? $root.google.api.ResourceDescriptor.History[message.history] : message.history; + if (message.plural != null && message.hasOwnProperty("plural")) + object.plural = message.plural; + if (message.singular != null && message.hasOwnProperty("singular")) + object.singular = message.singular; + if (message.style && message.style.length) { + object.style = []; + for (var j = 0; j < message.style.length; ++j) + object.style[j] = options.enums === String ? $root.google.api.ResourceDescriptor.Style[message.style[j]] : message.style[j]; + } + return object; + }; + + /** + * Converts this ResourceDescriptor to JSON. + * @function toJSON + * @memberof google.api.ResourceDescriptor + * @instance + * @returns {Object.} JSON object + */ + ResourceDescriptor.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + /** + * History enum. + * @name google.api.ResourceDescriptor.History + * @enum {number} + * @property {number} HISTORY_UNSPECIFIED=0 HISTORY_UNSPECIFIED value + * @property {number} ORIGINALLY_SINGLE_PATTERN=1 ORIGINALLY_SINGLE_PATTERN value + * @property {number} FUTURE_MULTI_PATTERN=2 FUTURE_MULTI_PATTERN value + */ + ResourceDescriptor.History = (function() { + var valuesById = {}, values = Object.create(valuesById); + values[valuesById[0] = "HISTORY_UNSPECIFIED"] = 0; + values[valuesById[1] = "ORIGINALLY_SINGLE_PATTERN"] = 1; + values[valuesById[2] = "FUTURE_MULTI_PATTERN"] = 2; + return values; + })(); + + /** + * Style enum. + * @name google.api.ResourceDescriptor.Style + * @enum {number} + * @property {number} STYLE_UNSPECIFIED=0 STYLE_UNSPECIFIED value + * @property {number} DECLARATIVE_FRIENDLY=1 DECLARATIVE_FRIENDLY value + */ + ResourceDescriptor.Style = (function() { + var valuesById = {}, values = Object.create(valuesById); + values[valuesById[0] = "STYLE_UNSPECIFIED"] = 0; + values[valuesById[1] = "DECLARATIVE_FRIENDLY"] = 1; + return values; + })(); + + return ResourceDescriptor; + })(); + + api.ResourceReference = (function() { + + /** + * Properties of a ResourceReference. + * @memberof google.api + * @interface IResourceReference + * @property {string|null} [type] ResourceReference type + * @property {string|null} [childType] ResourceReference childType + */ + + /** + * Constructs a new ResourceReference. + * @memberof google.api + * @classdesc Represents a ResourceReference. + * @implements IResourceReference + * @constructor + * @param {google.api.IResourceReference=} [properties] Properties to set + */ + function ResourceReference(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]]; + } + + /** + * ResourceReference type. + * @member {string} type + * @memberof google.api.ResourceReference + * @instance + */ + ResourceReference.prototype.type = ""; + + /** + * ResourceReference childType. + * @member {string} childType + * @memberof google.api.ResourceReference + * @instance + */ + ResourceReference.prototype.childType = ""; + + /** + * Creates a new ResourceReference instance using the specified properties. + * @function create + * @memberof google.api.ResourceReference + * @static + * @param {google.api.IResourceReference=} [properties] Properties to set + * @returns {google.api.ResourceReference} ResourceReference instance + */ + ResourceReference.create = function create(properties) { + return new ResourceReference(properties); + }; + + /** + * Encodes the specified ResourceReference message. Does not implicitly {@link google.api.ResourceReference.verify|verify} messages. + * @function encode + * @memberof google.api.ResourceReference + * @static + * @param {google.api.IResourceReference} message ResourceReference message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + ResourceReference.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.type != null && Object.hasOwnProperty.call(message, "type")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.type); + if (message.childType != null && Object.hasOwnProperty.call(message, "childType")) + writer.uint32(/* id 2, wireType 2 =*/18).string(message.childType); + return writer; + }; + + /** + * Encodes the specified ResourceReference message, length delimited. Does not implicitly {@link google.api.ResourceReference.verify|verify} messages. + * @function encodeDelimited + * @memberof google.api.ResourceReference + * @static + * @param {google.api.IResourceReference} message ResourceReference message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + ResourceReference.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a ResourceReference message from the specified reader or buffer. + * @function decode + * @memberof google.api.ResourceReference + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.api.ResourceReference} ResourceReference + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + ResourceReference.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.api.ResourceReference(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.type = reader.string(); + break; + case 2: + message.childType = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a ResourceReference message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.api.ResourceReference + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.api.ResourceReference} ResourceReference + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + ResourceReference.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a ResourceReference message. + * @function verify + * @memberof google.api.ResourceReference + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + ResourceReference.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.type != null && message.hasOwnProperty("type")) + if (!$util.isString(message.type)) + return "type: string expected"; + if (message.childType != null && message.hasOwnProperty("childType")) + if (!$util.isString(message.childType)) + return "childType: string expected"; + return null; + }; + + /** + * Creates a ResourceReference message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.api.ResourceReference + * @static + * @param {Object.} object Plain object + * @returns {google.api.ResourceReference} ResourceReference + */ + ResourceReference.fromObject = function fromObject(object) { + if (object instanceof $root.google.api.ResourceReference) + return object; + var message = new $root.google.api.ResourceReference(); + if (object.type != null) + message.type = String(object.type); + if (object.childType != null) + message.childType = String(object.childType); + return message; + }; + + /** + * Creates a plain object from a ResourceReference message. Also converts values to other types if specified. + * @function toObject + * @memberof google.api.ResourceReference + * @static + * @param {google.api.ResourceReference} message ResourceReference + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + ResourceReference.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.type = ""; + object.childType = ""; + } + if (message.type != null && message.hasOwnProperty("type")) + object.type = message.type; + if (message.childType != null && message.hasOwnProperty("childType")) + object.childType = message.childType; + return object; + }; + + /** + * Converts this ResourceReference to JSON. + * @function toJSON + * @memberof google.api.ResourceReference + * @instance + * @returns {Object.} JSON object + */ + ResourceReference.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return ResourceReference; + })(); + + return api; + })(); + + google.protobuf = (function() { + + /** + * Namespace protobuf. + * @memberof google + * @namespace + */ + var protobuf = {}; + + protobuf.FileDescriptorSet = (function() { + + /** + * Properties of a FileDescriptorSet. + * @memberof google.protobuf + * @interface IFileDescriptorSet + * @property {Array.|null} [file] FileDescriptorSet file + */ + + /** + * Constructs a new FileDescriptorSet. + * @memberof google.protobuf + * @classdesc Represents a FileDescriptorSet. + * @implements IFileDescriptorSet + * @constructor + * @param {google.protobuf.IFileDescriptorSet=} [properties] Properties to set + */ + function FileDescriptorSet(properties) { + this.file = []; + 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]]; + } + + /** + * FileDescriptorSet file. + * @member {Array.} file + * @memberof google.protobuf.FileDescriptorSet + * @instance + */ + FileDescriptorSet.prototype.file = $util.emptyArray; + + /** + * Creates a new FileDescriptorSet instance using the specified properties. + * @function create + * @memberof google.protobuf.FileDescriptorSet + * @static + * @param {google.protobuf.IFileDescriptorSet=} [properties] Properties to set + * @returns {google.protobuf.FileDescriptorSet} FileDescriptorSet instance + */ + FileDescriptorSet.create = function create(properties) { + return new FileDescriptorSet(properties); + }; + + /** + * Encodes the specified FileDescriptorSet message. Does not implicitly {@link google.protobuf.FileDescriptorSet.verify|verify} messages. + * @function encode + * @memberof google.protobuf.FileDescriptorSet + * @static + * @param {google.protobuf.IFileDescriptorSet} message FileDescriptorSet message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + FileDescriptorSet.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.file != null && message.file.length) + for (var i = 0; i < message.file.length; ++i) + $root.google.protobuf.FileDescriptorProto.encode(message.file[i], writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim(); + return writer; + }; + + /** + * Encodes the specified FileDescriptorSet message, length delimited. Does not implicitly {@link google.protobuf.FileDescriptorSet.verify|verify} messages. + * @function encodeDelimited + * @memberof google.protobuf.FileDescriptorSet + * @static + * @param {google.protobuf.IFileDescriptorSet} message FileDescriptorSet message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + FileDescriptorSet.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a FileDescriptorSet message from the specified reader or buffer. + * @function decode + * @memberof google.protobuf.FileDescriptorSet + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.protobuf.FileDescriptorSet} FileDescriptorSet + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + FileDescriptorSet.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.protobuf.FileDescriptorSet(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + if (!(message.file && message.file.length)) + message.file = []; + message.file.push($root.google.protobuf.FileDescriptorProto.decode(reader, reader.uint32())); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a FileDescriptorSet message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.protobuf.FileDescriptorSet + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.protobuf.FileDescriptorSet} FileDescriptorSet + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + FileDescriptorSet.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a FileDescriptorSet message. + * @function verify + * @memberof google.protobuf.FileDescriptorSet + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + FileDescriptorSet.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.file != null && message.hasOwnProperty("file")) { + if (!Array.isArray(message.file)) + return "file: array expected"; + for (var i = 0; i < message.file.length; ++i) { + var error = $root.google.protobuf.FileDescriptorProto.verify(message.file[i]); + if (error) + return "file." + error; + } + } + return null; + }; + + /** + * Creates a FileDescriptorSet message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.protobuf.FileDescriptorSet + * @static + * @param {Object.} object Plain object + * @returns {google.protobuf.FileDescriptorSet} FileDescriptorSet + */ + FileDescriptorSet.fromObject = function fromObject(object) { + if (object instanceof $root.google.protobuf.FileDescriptorSet) + return object; + var message = new $root.google.protobuf.FileDescriptorSet(); + if (object.file) { + if (!Array.isArray(object.file)) + throw TypeError(".google.protobuf.FileDescriptorSet.file: array expected"); + message.file = []; + for (var i = 0; i < object.file.length; ++i) { + if (typeof object.file[i] !== "object") + throw TypeError(".google.protobuf.FileDescriptorSet.file: object expected"); + message.file[i] = $root.google.protobuf.FileDescriptorProto.fromObject(object.file[i]); + } + } + return message; + }; + + /** + * Creates a plain object from a FileDescriptorSet message. Also converts values to other types if specified. + * @function toObject + * @memberof google.protobuf.FileDescriptorSet + * @static + * @param {google.protobuf.FileDescriptorSet} message FileDescriptorSet + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + FileDescriptorSet.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.arrays || options.defaults) + object.file = []; + if (message.file && message.file.length) { + object.file = []; + for (var j = 0; j < message.file.length; ++j) + object.file[j] = $root.google.protobuf.FileDescriptorProto.toObject(message.file[j], options); + } + return object; + }; + + /** + * Converts this FileDescriptorSet to JSON. + * @function toJSON + * @memberof google.protobuf.FileDescriptorSet + * @instance + * @returns {Object.} JSON object + */ + FileDescriptorSet.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return FileDescriptorSet; + })(); + + protobuf.FileDescriptorProto = (function() { + + /** + * Properties of a FileDescriptorProto. + * @memberof google.protobuf + * @interface IFileDescriptorProto + * @property {string|null} [name] FileDescriptorProto name + * @property {string|null} ["package"] FileDescriptorProto package + * @property {Array.|null} [dependency] FileDescriptorProto dependency + * @property {Array.|null} [publicDependency] FileDescriptorProto publicDependency + * @property {Array.|null} [weakDependency] FileDescriptorProto weakDependency + * @property {Array.|null} [messageType] FileDescriptorProto messageType + * @property {Array.|null} [enumType] FileDescriptorProto enumType + * @property {Array.|null} [service] FileDescriptorProto service + * @property {Array.|null} [extension] FileDescriptorProto extension + * @property {google.protobuf.IFileOptions|null} [options] FileDescriptorProto options + * @property {google.protobuf.ISourceCodeInfo|null} [sourceCodeInfo] FileDescriptorProto sourceCodeInfo + * @property {string|null} [syntax] FileDescriptorProto syntax + */ + + /** + * Constructs a new FileDescriptorProto. + * @memberof google.protobuf + * @classdesc Represents a FileDescriptorProto. + * @implements IFileDescriptorProto + * @constructor + * @param {google.protobuf.IFileDescriptorProto=} [properties] Properties to set + */ + function FileDescriptorProto(properties) { + this.dependency = []; + this.publicDependency = []; + this.weakDependency = []; + this.messageType = []; + this.enumType = []; + this.service = []; + this.extension = []; + 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]]; + } + + /** + * FileDescriptorProto name. + * @member {string} name + * @memberof google.protobuf.FileDescriptorProto + * @instance + */ + FileDescriptorProto.prototype.name = ""; + + /** + * FileDescriptorProto package. + * @member {string} package + * @memberof google.protobuf.FileDescriptorProto + * @instance + */ + FileDescriptorProto.prototype["package"] = ""; + + /** + * FileDescriptorProto dependency. + * @member {Array.} dependency + * @memberof google.protobuf.FileDescriptorProto + * @instance + */ + FileDescriptorProto.prototype.dependency = $util.emptyArray; + + /** + * FileDescriptorProto publicDependency. + * @member {Array.} publicDependency + * @memberof google.protobuf.FileDescriptorProto + * @instance + */ + FileDescriptorProto.prototype.publicDependency = $util.emptyArray; + + /** + * FileDescriptorProto weakDependency. + * @member {Array.} weakDependency + * @memberof google.protobuf.FileDescriptorProto + * @instance + */ + FileDescriptorProto.prototype.weakDependency = $util.emptyArray; + + /** + * FileDescriptorProto messageType. + * @member {Array.} messageType + * @memberof google.protobuf.FileDescriptorProto + * @instance + */ + FileDescriptorProto.prototype.messageType = $util.emptyArray; + + /** + * FileDescriptorProto enumType. + * @member {Array.} enumType + * @memberof google.protobuf.FileDescriptorProto + * @instance + */ + FileDescriptorProto.prototype.enumType = $util.emptyArray; + + /** + * FileDescriptorProto service. + * @member {Array.} service + * @memberof google.protobuf.FileDescriptorProto + * @instance + */ + FileDescriptorProto.prototype.service = $util.emptyArray; + + /** + * FileDescriptorProto extension. + * @member {Array.} extension + * @memberof google.protobuf.FileDescriptorProto + * @instance + */ + FileDescriptorProto.prototype.extension = $util.emptyArray; + + /** + * FileDescriptorProto options. + * @member {google.protobuf.IFileOptions|null|undefined} options + * @memberof google.protobuf.FileDescriptorProto + * @instance + */ + FileDescriptorProto.prototype.options = null; + + /** + * FileDescriptorProto sourceCodeInfo. + * @member {google.protobuf.ISourceCodeInfo|null|undefined} sourceCodeInfo + * @memberof google.protobuf.FileDescriptorProto + * @instance + */ + FileDescriptorProto.prototype.sourceCodeInfo = null; + + /** + * FileDescriptorProto syntax. + * @member {string} syntax + * @memberof google.protobuf.FileDescriptorProto + * @instance + */ + FileDescriptorProto.prototype.syntax = ""; + + /** + * Creates a new FileDescriptorProto instance using the specified properties. + * @function create + * @memberof google.protobuf.FileDescriptorProto + * @static + * @param {google.protobuf.IFileDescriptorProto=} [properties] Properties to set + * @returns {google.protobuf.FileDescriptorProto} FileDescriptorProto instance + */ + FileDescriptorProto.create = function create(properties) { + return new FileDescriptorProto(properties); + }; + + /** + * Encodes the specified FileDescriptorProto message. Does not implicitly {@link google.protobuf.FileDescriptorProto.verify|verify} messages. + * @function encode + * @memberof google.protobuf.FileDescriptorProto + * @static + * @param {google.protobuf.IFileDescriptorProto} message FileDescriptorProto message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + FileDescriptorProto.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.name != null && Object.hasOwnProperty.call(message, "name")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.name); + if (message["package"] != null && Object.hasOwnProperty.call(message, "package")) + writer.uint32(/* id 2, wireType 2 =*/18).string(message["package"]); + if (message.dependency != null && message.dependency.length) + for (var i = 0; i < message.dependency.length; ++i) + writer.uint32(/* id 3, wireType 2 =*/26).string(message.dependency[i]); + if (message.messageType != null && message.messageType.length) + for (var i = 0; i < message.messageType.length; ++i) + $root.google.protobuf.DescriptorProto.encode(message.messageType[i], writer.uint32(/* id 4, wireType 2 =*/34).fork()).ldelim(); + if (message.enumType != null && message.enumType.length) + for (var i = 0; i < message.enumType.length; ++i) + $root.google.protobuf.EnumDescriptorProto.encode(message.enumType[i], writer.uint32(/* id 5, wireType 2 =*/42).fork()).ldelim(); + if (message.service != null && message.service.length) + for (var i = 0; i < message.service.length; ++i) + $root.google.protobuf.ServiceDescriptorProto.encode(message.service[i], writer.uint32(/* id 6, wireType 2 =*/50).fork()).ldelim(); + if (message.extension != null && message.extension.length) + for (var i = 0; i < message.extension.length; ++i) + $root.google.protobuf.FieldDescriptorProto.encode(message.extension[i], writer.uint32(/* id 7, wireType 2 =*/58).fork()).ldelim(); + if (message.options != null && Object.hasOwnProperty.call(message, "options")) + $root.google.protobuf.FileOptions.encode(message.options, writer.uint32(/* id 8, wireType 2 =*/66).fork()).ldelim(); + if (message.sourceCodeInfo != null && Object.hasOwnProperty.call(message, "sourceCodeInfo")) + $root.google.protobuf.SourceCodeInfo.encode(message.sourceCodeInfo, writer.uint32(/* id 9, wireType 2 =*/74).fork()).ldelim(); + if (message.publicDependency != null && message.publicDependency.length) + for (var i = 0; i < message.publicDependency.length; ++i) + writer.uint32(/* id 10, wireType 0 =*/80).int32(message.publicDependency[i]); + if (message.weakDependency != null && message.weakDependency.length) + for (var i = 0; i < message.weakDependency.length; ++i) + writer.uint32(/* id 11, wireType 0 =*/88).int32(message.weakDependency[i]); + if (message.syntax != null && Object.hasOwnProperty.call(message, "syntax")) + writer.uint32(/* id 12, wireType 2 =*/98).string(message.syntax); + return writer; + }; + + /** + * Encodes the specified FileDescriptorProto message, length delimited. Does not implicitly {@link google.protobuf.FileDescriptorProto.verify|verify} messages. + * @function encodeDelimited + * @memberof google.protobuf.FileDescriptorProto + * @static + * @param {google.protobuf.IFileDescriptorProto} message FileDescriptorProto message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + FileDescriptorProto.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a FileDescriptorProto message from the specified reader or buffer. + * @function decode + * @memberof google.protobuf.FileDescriptorProto + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.protobuf.FileDescriptorProto} FileDescriptorProto + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + FileDescriptorProto.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.protobuf.FileDescriptorProto(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.name = reader.string(); + break; + case 2: + message["package"] = reader.string(); + break; + case 3: + if (!(message.dependency && message.dependency.length)) + message.dependency = []; + message.dependency.push(reader.string()); + break; + case 10: + if (!(message.publicDependency && message.publicDependency.length)) + message.publicDependency = []; + if ((tag & 7) === 2) { + var end2 = reader.uint32() + reader.pos; + while (reader.pos < end2) + message.publicDependency.push(reader.int32()); + } else + message.publicDependency.push(reader.int32()); + break; + case 11: + if (!(message.weakDependency && message.weakDependency.length)) + message.weakDependency = []; + if ((tag & 7) === 2) { + var end2 = reader.uint32() + reader.pos; + while (reader.pos < end2) + message.weakDependency.push(reader.int32()); + } else + message.weakDependency.push(reader.int32()); + break; + case 4: + if (!(message.messageType && message.messageType.length)) + message.messageType = []; + message.messageType.push($root.google.protobuf.DescriptorProto.decode(reader, reader.uint32())); + break; + case 5: + if (!(message.enumType && message.enumType.length)) + message.enumType = []; + message.enumType.push($root.google.protobuf.EnumDescriptorProto.decode(reader, reader.uint32())); + break; + case 6: + if (!(message.service && message.service.length)) + message.service = []; + message.service.push($root.google.protobuf.ServiceDescriptorProto.decode(reader, reader.uint32())); + break; + case 7: + if (!(message.extension && message.extension.length)) + message.extension = []; + message.extension.push($root.google.protobuf.FieldDescriptorProto.decode(reader, reader.uint32())); + break; + case 8: + message.options = $root.google.protobuf.FileOptions.decode(reader, reader.uint32()); + break; + case 9: + message.sourceCodeInfo = $root.google.protobuf.SourceCodeInfo.decode(reader, reader.uint32()); + break; + case 12: + message.syntax = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a FileDescriptorProto message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.protobuf.FileDescriptorProto + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.protobuf.FileDescriptorProto} FileDescriptorProto + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + FileDescriptorProto.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a FileDescriptorProto message. + * @function verify + * @memberof google.protobuf.FileDescriptorProto + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + FileDescriptorProto.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.name != null && message.hasOwnProperty("name")) + if (!$util.isString(message.name)) + return "name: string expected"; + if (message["package"] != null && message.hasOwnProperty("package")) + if (!$util.isString(message["package"])) + return "package: string expected"; + if (message.dependency != null && message.hasOwnProperty("dependency")) { + if (!Array.isArray(message.dependency)) + return "dependency: array expected"; + for (var i = 0; i < message.dependency.length; ++i) + if (!$util.isString(message.dependency[i])) + return "dependency: string[] expected"; + } + if (message.publicDependency != null && message.hasOwnProperty("publicDependency")) { + if (!Array.isArray(message.publicDependency)) + return "publicDependency: array expected"; + for (var i = 0; i < message.publicDependency.length; ++i) + if (!$util.isInteger(message.publicDependency[i])) + return "publicDependency: integer[] expected"; + } + if (message.weakDependency != null && message.hasOwnProperty("weakDependency")) { + if (!Array.isArray(message.weakDependency)) + return "weakDependency: array expected"; + for (var i = 0; i < message.weakDependency.length; ++i) + if (!$util.isInteger(message.weakDependency[i])) + return "weakDependency: integer[] expected"; + } + if (message.messageType != null && message.hasOwnProperty("messageType")) { + if (!Array.isArray(message.messageType)) + return "messageType: array expected"; + for (var i = 0; i < message.messageType.length; ++i) { + var error = $root.google.protobuf.DescriptorProto.verify(message.messageType[i]); + if (error) + return "messageType." + error; + } + } + if (message.enumType != null && message.hasOwnProperty("enumType")) { + if (!Array.isArray(message.enumType)) + return "enumType: array expected"; + for (var i = 0; i < message.enumType.length; ++i) { + var error = $root.google.protobuf.EnumDescriptorProto.verify(message.enumType[i]); + if (error) + return "enumType." + error; + } + } + if (message.service != null && message.hasOwnProperty("service")) { + if (!Array.isArray(message.service)) + return "service: array expected"; + for (var i = 0; i < message.service.length; ++i) { + var error = $root.google.protobuf.ServiceDescriptorProto.verify(message.service[i]); + if (error) + return "service." + error; + } + } + if (message.extension != null && message.hasOwnProperty("extension")) { + if (!Array.isArray(message.extension)) + return "extension: array expected"; + for (var i = 0; i < message.extension.length; ++i) { + var error = $root.google.protobuf.FieldDescriptorProto.verify(message.extension[i]); + if (error) + return "extension." + error; + } + } + if (message.options != null && message.hasOwnProperty("options")) { + var error = $root.google.protobuf.FileOptions.verify(message.options); + if (error) + return "options." + error; + } + if (message.sourceCodeInfo != null && message.hasOwnProperty("sourceCodeInfo")) { + var error = $root.google.protobuf.SourceCodeInfo.verify(message.sourceCodeInfo); + if (error) + return "sourceCodeInfo." + error; + } + if (message.syntax != null && message.hasOwnProperty("syntax")) + if (!$util.isString(message.syntax)) + return "syntax: string expected"; + return null; + }; + + /** + * Creates a FileDescriptorProto message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.protobuf.FileDescriptorProto + * @static + * @param {Object.} object Plain object + * @returns {google.protobuf.FileDescriptorProto} FileDescriptorProto + */ + FileDescriptorProto.fromObject = function fromObject(object) { + if (object instanceof $root.google.protobuf.FileDescriptorProto) + return object; + var message = new $root.google.protobuf.FileDescriptorProto(); + if (object.name != null) + message.name = String(object.name); + if (object["package"] != null) + message["package"] = String(object["package"]); + if (object.dependency) { + if (!Array.isArray(object.dependency)) + throw TypeError(".google.protobuf.FileDescriptorProto.dependency: array expected"); + message.dependency = []; + for (var i = 0; i < object.dependency.length; ++i) + message.dependency[i] = String(object.dependency[i]); + } + if (object.publicDependency) { + if (!Array.isArray(object.publicDependency)) + throw TypeError(".google.protobuf.FileDescriptorProto.publicDependency: array expected"); + message.publicDependency = []; + for (var i = 0; i < object.publicDependency.length; ++i) + message.publicDependency[i] = object.publicDependency[i] | 0; + } + if (object.weakDependency) { + if (!Array.isArray(object.weakDependency)) + throw TypeError(".google.protobuf.FileDescriptorProto.weakDependency: array expected"); + message.weakDependency = []; + for (var i = 0; i < object.weakDependency.length; ++i) + message.weakDependency[i] = object.weakDependency[i] | 0; + } + if (object.messageType) { + if (!Array.isArray(object.messageType)) + throw TypeError(".google.protobuf.FileDescriptorProto.messageType: array expected"); + message.messageType = []; + for (var i = 0; i < object.messageType.length; ++i) { + if (typeof object.messageType[i] !== "object") + throw TypeError(".google.protobuf.FileDescriptorProto.messageType: object expected"); + message.messageType[i] = $root.google.protobuf.DescriptorProto.fromObject(object.messageType[i]); + } + } + if (object.enumType) { + if (!Array.isArray(object.enumType)) + throw TypeError(".google.protobuf.FileDescriptorProto.enumType: array expected"); + message.enumType = []; + for (var i = 0; i < object.enumType.length; ++i) { + if (typeof object.enumType[i] !== "object") + throw TypeError(".google.protobuf.FileDescriptorProto.enumType: object expected"); + message.enumType[i] = $root.google.protobuf.EnumDescriptorProto.fromObject(object.enumType[i]); + } + } + if (object.service) { + if (!Array.isArray(object.service)) + throw TypeError(".google.protobuf.FileDescriptorProto.service: array expected"); + message.service = []; + for (var i = 0; i < object.service.length; ++i) { + if (typeof object.service[i] !== "object") + throw TypeError(".google.protobuf.FileDescriptorProto.service: object expected"); + message.service[i] = $root.google.protobuf.ServiceDescriptorProto.fromObject(object.service[i]); + } + } + if (object.extension) { + if (!Array.isArray(object.extension)) + throw TypeError(".google.protobuf.FileDescriptorProto.extension: array expected"); + message.extension = []; + for (var i = 0; i < object.extension.length; ++i) { + if (typeof object.extension[i] !== "object") + throw TypeError(".google.protobuf.FileDescriptorProto.extension: object expected"); + message.extension[i] = $root.google.protobuf.FieldDescriptorProto.fromObject(object.extension[i]); + } + } + if (object.options != null) { + if (typeof object.options !== "object") + throw TypeError(".google.protobuf.FileDescriptorProto.options: object expected"); + message.options = $root.google.protobuf.FileOptions.fromObject(object.options); + } + if (object.sourceCodeInfo != null) { + if (typeof object.sourceCodeInfo !== "object") + throw TypeError(".google.protobuf.FileDescriptorProto.sourceCodeInfo: object expected"); + message.sourceCodeInfo = $root.google.protobuf.SourceCodeInfo.fromObject(object.sourceCodeInfo); + } + if (object.syntax != null) + message.syntax = String(object.syntax); + return message; + }; + + /** + * Creates a plain object from a FileDescriptorProto message. Also converts values to other types if specified. + * @function toObject + * @memberof google.protobuf.FileDescriptorProto + * @static + * @param {google.protobuf.FileDescriptorProto} message FileDescriptorProto + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + FileDescriptorProto.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.arrays || options.defaults) { + object.dependency = []; + object.messageType = []; + object.enumType = []; + object.service = []; + object.extension = []; + object.publicDependency = []; + object.weakDependency = []; + } + if (options.defaults) { + object.name = ""; + object["package"] = ""; + object.options = null; + object.sourceCodeInfo = null; + object.syntax = ""; + } + if (message.name != null && message.hasOwnProperty("name")) + object.name = message.name; + if (message["package"] != null && message.hasOwnProperty("package")) + object["package"] = message["package"]; + if (message.dependency && message.dependency.length) { + object.dependency = []; + for (var j = 0; j < message.dependency.length; ++j) + object.dependency[j] = message.dependency[j]; + } + if (message.messageType && message.messageType.length) { + object.messageType = []; + for (var j = 0; j < message.messageType.length; ++j) + object.messageType[j] = $root.google.protobuf.DescriptorProto.toObject(message.messageType[j], options); + } + if (message.enumType && message.enumType.length) { + object.enumType = []; + for (var j = 0; j < message.enumType.length; ++j) + object.enumType[j] = $root.google.protobuf.EnumDescriptorProto.toObject(message.enumType[j], options); + } + if (message.service && message.service.length) { + object.service = []; + for (var j = 0; j < message.service.length; ++j) + object.service[j] = $root.google.protobuf.ServiceDescriptorProto.toObject(message.service[j], options); + } + if (message.extension && message.extension.length) { + object.extension = []; + for (var j = 0; j < message.extension.length; ++j) + object.extension[j] = $root.google.protobuf.FieldDescriptorProto.toObject(message.extension[j], options); + } + if (message.options != null && message.hasOwnProperty("options")) + object.options = $root.google.protobuf.FileOptions.toObject(message.options, options); + if (message.sourceCodeInfo != null && message.hasOwnProperty("sourceCodeInfo")) + object.sourceCodeInfo = $root.google.protobuf.SourceCodeInfo.toObject(message.sourceCodeInfo, options); + if (message.publicDependency && message.publicDependency.length) { + object.publicDependency = []; + for (var j = 0; j < message.publicDependency.length; ++j) + object.publicDependency[j] = message.publicDependency[j]; + } + if (message.weakDependency && message.weakDependency.length) { + object.weakDependency = []; + for (var j = 0; j < message.weakDependency.length; ++j) + object.weakDependency[j] = message.weakDependency[j]; + } + if (message.syntax != null && message.hasOwnProperty("syntax")) + object.syntax = message.syntax; + return object; + }; + + /** + * Converts this FileDescriptorProto to JSON. + * @function toJSON + * @memberof google.protobuf.FileDescriptorProto + * @instance + * @returns {Object.} JSON object + */ + FileDescriptorProto.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return FileDescriptorProto; + })(); + + protobuf.DescriptorProto = (function() { + + /** + * Properties of a DescriptorProto. + * @memberof google.protobuf + * @interface IDescriptorProto + * @property {string|null} [name] DescriptorProto name + * @property {Array.|null} [field] DescriptorProto field + * @property {Array.|null} [extension] DescriptorProto extension + * @property {Array.|null} [nestedType] DescriptorProto nestedType + * @property {Array.|null} [enumType] DescriptorProto enumType + * @property {Array.|null} [extensionRange] DescriptorProto extensionRange + * @property {Array.|null} [oneofDecl] DescriptorProto oneofDecl + * @property {google.protobuf.IMessageOptions|null} [options] DescriptorProto options + * @property {Array.|null} [reservedRange] DescriptorProto reservedRange + * @property {Array.|null} [reservedName] DescriptorProto reservedName + */ + + /** + * Constructs a new DescriptorProto. + * @memberof google.protobuf + * @classdesc Represents a DescriptorProto. + * @implements IDescriptorProto + * @constructor + * @param {google.protobuf.IDescriptorProto=} [properties] Properties to set + */ + function DescriptorProto(properties) { + this.field = []; + this.extension = []; + this.nestedType = []; + this.enumType = []; + this.extensionRange = []; + this.oneofDecl = []; + this.reservedRange = []; + this.reservedName = []; + 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]]; + } + + /** + * DescriptorProto name. + * @member {string} name + * @memberof google.protobuf.DescriptorProto + * @instance + */ + DescriptorProto.prototype.name = ""; + + /** + * DescriptorProto field. + * @member {Array.} field + * @memberof google.protobuf.DescriptorProto + * @instance + */ + DescriptorProto.prototype.field = $util.emptyArray; + + /** + * DescriptorProto extension. + * @member {Array.} extension + * @memberof google.protobuf.DescriptorProto + * @instance + */ + DescriptorProto.prototype.extension = $util.emptyArray; + + /** + * DescriptorProto nestedType. + * @member {Array.} nestedType + * @memberof google.protobuf.DescriptorProto + * @instance + */ + DescriptorProto.prototype.nestedType = $util.emptyArray; + + /** + * DescriptorProto enumType. + * @member {Array.} enumType + * @memberof google.protobuf.DescriptorProto + * @instance + */ + DescriptorProto.prototype.enumType = $util.emptyArray; + + /** + * DescriptorProto extensionRange. + * @member {Array.} extensionRange + * @memberof google.protobuf.DescriptorProto + * @instance + */ + DescriptorProto.prototype.extensionRange = $util.emptyArray; + + /** + * DescriptorProto oneofDecl. + * @member {Array.} oneofDecl + * @memberof google.protobuf.DescriptorProto + * @instance + */ + DescriptorProto.prototype.oneofDecl = $util.emptyArray; + + /** + * DescriptorProto options. + * @member {google.protobuf.IMessageOptions|null|undefined} options + * @memberof google.protobuf.DescriptorProto + * @instance + */ + DescriptorProto.prototype.options = null; + + /** + * DescriptorProto reservedRange. + * @member {Array.} reservedRange + * @memberof google.protobuf.DescriptorProto + * @instance + */ + DescriptorProto.prototype.reservedRange = $util.emptyArray; + + /** + * DescriptorProto reservedName. + * @member {Array.} reservedName + * @memberof google.protobuf.DescriptorProto + * @instance + */ + DescriptorProto.prototype.reservedName = $util.emptyArray; + + /** + * Creates a new DescriptorProto instance using the specified properties. + * @function create + * @memberof google.protobuf.DescriptorProto + * @static + * @param {google.protobuf.IDescriptorProto=} [properties] Properties to set + * @returns {google.protobuf.DescriptorProto} DescriptorProto instance + */ + DescriptorProto.create = function create(properties) { + return new DescriptorProto(properties); + }; + + /** + * Encodes the specified DescriptorProto message. Does not implicitly {@link google.protobuf.DescriptorProto.verify|verify} messages. + * @function encode + * @memberof google.protobuf.DescriptorProto + * @static + * @param {google.protobuf.IDescriptorProto} message DescriptorProto message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + DescriptorProto.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.name != null && Object.hasOwnProperty.call(message, "name")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.name); + if (message.field != null && message.field.length) + for (var i = 0; i < message.field.length; ++i) + $root.google.protobuf.FieldDescriptorProto.encode(message.field[i], writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim(); + if (message.nestedType != null && message.nestedType.length) + for (var i = 0; i < message.nestedType.length; ++i) + $root.google.protobuf.DescriptorProto.encode(message.nestedType[i], writer.uint32(/* id 3, wireType 2 =*/26).fork()).ldelim(); + if (message.enumType != null && message.enumType.length) + for (var i = 0; i < message.enumType.length; ++i) + $root.google.protobuf.EnumDescriptorProto.encode(message.enumType[i], writer.uint32(/* id 4, wireType 2 =*/34).fork()).ldelim(); + if (message.extensionRange != null && message.extensionRange.length) + for (var i = 0; i < message.extensionRange.length; ++i) + $root.google.protobuf.DescriptorProto.ExtensionRange.encode(message.extensionRange[i], writer.uint32(/* id 5, wireType 2 =*/42).fork()).ldelim(); + if (message.extension != null && message.extension.length) + for (var i = 0; i < message.extension.length; ++i) + $root.google.protobuf.FieldDescriptorProto.encode(message.extension[i], writer.uint32(/* id 6, wireType 2 =*/50).fork()).ldelim(); + if (message.options != null && Object.hasOwnProperty.call(message, "options")) + $root.google.protobuf.MessageOptions.encode(message.options, writer.uint32(/* id 7, wireType 2 =*/58).fork()).ldelim(); + if (message.oneofDecl != null && message.oneofDecl.length) + for (var i = 0; i < message.oneofDecl.length; ++i) + $root.google.protobuf.OneofDescriptorProto.encode(message.oneofDecl[i], writer.uint32(/* id 8, wireType 2 =*/66).fork()).ldelim(); + if (message.reservedRange != null && message.reservedRange.length) + for (var i = 0; i < message.reservedRange.length; ++i) + $root.google.protobuf.DescriptorProto.ReservedRange.encode(message.reservedRange[i], writer.uint32(/* id 9, wireType 2 =*/74).fork()).ldelim(); + if (message.reservedName != null && message.reservedName.length) + for (var i = 0; i < message.reservedName.length; ++i) + writer.uint32(/* id 10, wireType 2 =*/82).string(message.reservedName[i]); + return writer; + }; + + /** + * Encodes the specified DescriptorProto message, length delimited. Does not implicitly {@link google.protobuf.DescriptorProto.verify|verify} messages. + * @function encodeDelimited + * @memberof google.protobuf.DescriptorProto + * @static + * @param {google.protobuf.IDescriptorProto} message DescriptorProto message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + DescriptorProto.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a DescriptorProto message from the specified reader or buffer. + * @function decode + * @memberof google.protobuf.DescriptorProto + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.protobuf.DescriptorProto} DescriptorProto + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + DescriptorProto.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.protobuf.DescriptorProto(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.name = reader.string(); + break; + case 2: + if (!(message.field && message.field.length)) + message.field = []; + message.field.push($root.google.protobuf.FieldDescriptorProto.decode(reader, reader.uint32())); + break; + case 6: + if (!(message.extension && message.extension.length)) + message.extension = []; + message.extension.push($root.google.protobuf.FieldDescriptorProto.decode(reader, reader.uint32())); + break; + case 3: + if (!(message.nestedType && message.nestedType.length)) + message.nestedType = []; + message.nestedType.push($root.google.protobuf.DescriptorProto.decode(reader, reader.uint32())); + break; + case 4: + if (!(message.enumType && message.enumType.length)) + message.enumType = []; + message.enumType.push($root.google.protobuf.EnumDescriptorProto.decode(reader, reader.uint32())); + break; + case 5: + if (!(message.extensionRange && message.extensionRange.length)) + message.extensionRange = []; + message.extensionRange.push($root.google.protobuf.DescriptorProto.ExtensionRange.decode(reader, reader.uint32())); + break; + case 8: + if (!(message.oneofDecl && message.oneofDecl.length)) + message.oneofDecl = []; + message.oneofDecl.push($root.google.protobuf.OneofDescriptorProto.decode(reader, reader.uint32())); + break; + case 7: + message.options = $root.google.protobuf.MessageOptions.decode(reader, reader.uint32()); + break; + case 9: + if (!(message.reservedRange && message.reservedRange.length)) + message.reservedRange = []; + message.reservedRange.push($root.google.protobuf.DescriptorProto.ReservedRange.decode(reader, reader.uint32())); + break; + case 10: + if (!(message.reservedName && message.reservedName.length)) + message.reservedName = []; + message.reservedName.push(reader.string()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a DescriptorProto message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.protobuf.DescriptorProto + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.protobuf.DescriptorProto} DescriptorProto + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + DescriptorProto.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a DescriptorProto message. + * @function verify + * @memberof google.protobuf.DescriptorProto + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + DescriptorProto.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.name != null && message.hasOwnProperty("name")) + if (!$util.isString(message.name)) + return "name: string expected"; + if (message.field != null && message.hasOwnProperty("field")) { + if (!Array.isArray(message.field)) + return "field: array expected"; + for (var i = 0; i < message.field.length; ++i) { + var error = $root.google.protobuf.FieldDescriptorProto.verify(message.field[i]); + if (error) + return "field." + error; + } + } + if (message.extension != null && message.hasOwnProperty("extension")) { + if (!Array.isArray(message.extension)) + return "extension: array expected"; + for (var i = 0; i < message.extension.length; ++i) { + var error = $root.google.protobuf.FieldDescriptorProto.verify(message.extension[i]); + if (error) + return "extension." + error; + } + } + if (message.nestedType != null && message.hasOwnProperty("nestedType")) { + if (!Array.isArray(message.nestedType)) + return "nestedType: array expected"; + for (var i = 0; i < message.nestedType.length; ++i) { + var error = $root.google.protobuf.DescriptorProto.verify(message.nestedType[i]); + if (error) + return "nestedType." + error; + } + } + if (message.enumType != null && message.hasOwnProperty("enumType")) { + if (!Array.isArray(message.enumType)) + return "enumType: array expected"; + for (var i = 0; i < message.enumType.length; ++i) { + var error = $root.google.protobuf.EnumDescriptorProto.verify(message.enumType[i]); + if (error) + return "enumType." + error; + } + } + if (message.extensionRange != null && message.hasOwnProperty("extensionRange")) { + if (!Array.isArray(message.extensionRange)) + return "extensionRange: array expected"; + for (var i = 0; i < message.extensionRange.length; ++i) { + var error = $root.google.protobuf.DescriptorProto.ExtensionRange.verify(message.extensionRange[i]); + if (error) + return "extensionRange." + error; + } + } + if (message.oneofDecl != null && message.hasOwnProperty("oneofDecl")) { + if (!Array.isArray(message.oneofDecl)) + return "oneofDecl: array expected"; + for (var i = 0; i < message.oneofDecl.length; ++i) { + var error = $root.google.protobuf.OneofDescriptorProto.verify(message.oneofDecl[i]); + if (error) + return "oneofDecl." + error; + } + } + if (message.options != null && message.hasOwnProperty("options")) { + var error = $root.google.protobuf.MessageOptions.verify(message.options); + if (error) + return "options." + error; + } + if (message.reservedRange != null && message.hasOwnProperty("reservedRange")) { + if (!Array.isArray(message.reservedRange)) + return "reservedRange: array expected"; + for (var i = 0; i < message.reservedRange.length; ++i) { + var error = $root.google.protobuf.DescriptorProto.ReservedRange.verify(message.reservedRange[i]); + if (error) + return "reservedRange." + error; + } + } + if (message.reservedName != null && message.hasOwnProperty("reservedName")) { + if (!Array.isArray(message.reservedName)) + return "reservedName: array expected"; + for (var i = 0; i < message.reservedName.length; ++i) + if (!$util.isString(message.reservedName[i])) + return "reservedName: string[] expected"; + } + return null; + }; + + /** + * Creates a DescriptorProto message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.protobuf.DescriptorProto + * @static + * @param {Object.} object Plain object + * @returns {google.protobuf.DescriptorProto} DescriptorProto + */ + DescriptorProto.fromObject = function fromObject(object) { + if (object instanceof $root.google.protobuf.DescriptorProto) + return object; + var message = new $root.google.protobuf.DescriptorProto(); + if (object.name != null) + message.name = String(object.name); + if (object.field) { + if (!Array.isArray(object.field)) + throw TypeError(".google.protobuf.DescriptorProto.field: array expected"); + message.field = []; + for (var i = 0; i < object.field.length; ++i) { + if (typeof object.field[i] !== "object") + throw TypeError(".google.protobuf.DescriptorProto.field: object expected"); + message.field[i] = $root.google.protobuf.FieldDescriptorProto.fromObject(object.field[i]); + } + } + if (object.extension) { + if (!Array.isArray(object.extension)) + throw TypeError(".google.protobuf.DescriptorProto.extension: array expected"); + message.extension = []; + for (var i = 0; i < object.extension.length; ++i) { + if (typeof object.extension[i] !== "object") + throw TypeError(".google.protobuf.DescriptorProto.extension: object expected"); + message.extension[i] = $root.google.protobuf.FieldDescriptorProto.fromObject(object.extension[i]); + } + } + if (object.nestedType) { + if (!Array.isArray(object.nestedType)) + throw TypeError(".google.protobuf.DescriptorProto.nestedType: array expected"); + message.nestedType = []; + for (var i = 0; i < object.nestedType.length; ++i) { + if (typeof object.nestedType[i] !== "object") + throw TypeError(".google.protobuf.DescriptorProto.nestedType: object expected"); + message.nestedType[i] = $root.google.protobuf.DescriptorProto.fromObject(object.nestedType[i]); + } + } + if (object.enumType) { + if (!Array.isArray(object.enumType)) + throw TypeError(".google.protobuf.DescriptorProto.enumType: array expected"); + message.enumType = []; + for (var i = 0; i < object.enumType.length; ++i) { + if (typeof object.enumType[i] !== "object") + throw TypeError(".google.protobuf.DescriptorProto.enumType: object expected"); + message.enumType[i] = $root.google.protobuf.EnumDescriptorProto.fromObject(object.enumType[i]); + } + } + if (object.extensionRange) { + if (!Array.isArray(object.extensionRange)) + throw TypeError(".google.protobuf.DescriptorProto.extensionRange: array expected"); + message.extensionRange = []; + for (var i = 0; i < object.extensionRange.length; ++i) { + if (typeof object.extensionRange[i] !== "object") + throw TypeError(".google.protobuf.DescriptorProto.extensionRange: object expected"); + message.extensionRange[i] = $root.google.protobuf.DescriptorProto.ExtensionRange.fromObject(object.extensionRange[i]); + } + } + if (object.oneofDecl) { + if (!Array.isArray(object.oneofDecl)) + throw TypeError(".google.protobuf.DescriptorProto.oneofDecl: array expected"); + message.oneofDecl = []; + for (var i = 0; i < object.oneofDecl.length; ++i) { + if (typeof object.oneofDecl[i] !== "object") + throw TypeError(".google.protobuf.DescriptorProto.oneofDecl: object expected"); + message.oneofDecl[i] = $root.google.protobuf.OneofDescriptorProto.fromObject(object.oneofDecl[i]); + } + } + if (object.options != null) { + if (typeof object.options !== "object") + throw TypeError(".google.protobuf.DescriptorProto.options: object expected"); + message.options = $root.google.protobuf.MessageOptions.fromObject(object.options); + } + if (object.reservedRange) { + if (!Array.isArray(object.reservedRange)) + throw TypeError(".google.protobuf.DescriptorProto.reservedRange: array expected"); + message.reservedRange = []; + for (var i = 0; i < object.reservedRange.length; ++i) { + if (typeof object.reservedRange[i] !== "object") + throw TypeError(".google.protobuf.DescriptorProto.reservedRange: object expected"); + message.reservedRange[i] = $root.google.protobuf.DescriptorProto.ReservedRange.fromObject(object.reservedRange[i]); + } + } + if (object.reservedName) { + if (!Array.isArray(object.reservedName)) + throw TypeError(".google.protobuf.DescriptorProto.reservedName: array expected"); + message.reservedName = []; + for (var i = 0; i < object.reservedName.length; ++i) + message.reservedName[i] = String(object.reservedName[i]); + } + return message; + }; + + /** + * Creates a plain object from a DescriptorProto message. Also converts values to other types if specified. + * @function toObject + * @memberof google.protobuf.DescriptorProto + * @static + * @param {google.protobuf.DescriptorProto} message DescriptorProto + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + DescriptorProto.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.arrays || options.defaults) { + object.field = []; + object.nestedType = []; + object.enumType = []; + object.extensionRange = []; + object.extension = []; + object.oneofDecl = []; + object.reservedRange = []; + object.reservedName = []; + } + if (options.defaults) { + object.name = ""; + object.options = null; + } + if (message.name != null && message.hasOwnProperty("name")) + object.name = message.name; + if (message.field && message.field.length) { + object.field = []; + for (var j = 0; j < message.field.length; ++j) + object.field[j] = $root.google.protobuf.FieldDescriptorProto.toObject(message.field[j], options); + } + if (message.nestedType && message.nestedType.length) { + object.nestedType = []; + for (var j = 0; j < message.nestedType.length; ++j) + object.nestedType[j] = $root.google.protobuf.DescriptorProto.toObject(message.nestedType[j], options); + } + if (message.enumType && message.enumType.length) { + object.enumType = []; + for (var j = 0; j < message.enumType.length; ++j) + object.enumType[j] = $root.google.protobuf.EnumDescriptorProto.toObject(message.enumType[j], options); + } + if (message.extensionRange && message.extensionRange.length) { + object.extensionRange = []; + for (var j = 0; j < message.extensionRange.length; ++j) + object.extensionRange[j] = $root.google.protobuf.DescriptorProto.ExtensionRange.toObject(message.extensionRange[j], options); + } + if (message.extension && message.extension.length) { + object.extension = []; + for (var j = 0; j < message.extension.length; ++j) + object.extension[j] = $root.google.protobuf.FieldDescriptorProto.toObject(message.extension[j], options); + } + if (message.options != null && message.hasOwnProperty("options")) + object.options = $root.google.protobuf.MessageOptions.toObject(message.options, options); + if (message.oneofDecl && message.oneofDecl.length) { + object.oneofDecl = []; + for (var j = 0; j < message.oneofDecl.length; ++j) + object.oneofDecl[j] = $root.google.protobuf.OneofDescriptorProto.toObject(message.oneofDecl[j], options); + } + if (message.reservedRange && message.reservedRange.length) { + object.reservedRange = []; + for (var j = 0; j < message.reservedRange.length; ++j) + object.reservedRange[j] = $root.google.protobuf.DescriptorProto.ReservedRange.toObject(message.reservedRange[j], options); + } + if (message.reservedName && message.reservedName.length) { + object.reservedName = []; + for (var j = 0; j < message.reservedName.length; ++j) + object.reservedName[j] = message.reservedName[j]; + } + return object; + }; + + /** + * Converts this DescriptorProto to JSON. + * @function toJSON + * @memberof google.protobuf.DescriptorProto + * @instance + * @returns {Object.} JSON object + */ + DescriptorProto.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + DescriptorProto.ExtensionRange = (function() { + + /** + * Properties of an ExtensionRange. + * @memberof google.protobuf.DescriptorProto + * @interface IExtensionRange + * @property {number|null} [start] ExtensionRange start + * @property {number|null} [end] ExtensionRange end + * @property {google.protobuf.IExtensionRangeOptions|null} [options] ExtensionRange options + */ + + /** + * Constructs a new ExtensionRange. + * @memberof google.protobuf.DescriptorProto + * @classdesc Represents an ExtensionRange. + * @implements IExtensionRange + * @constructor + * @param {google.protobuf.DescriptorProto.IExtensionRange=} [properties] Properties to set + */ + function ExtensionRange(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]]; + } + + /** + * ExtensionRange start. + * @member {number} start + * @memberof google.protobuf.DescriptorProto.ExtensionRange + * @instance + */ + ExtensionRange.prototype.start = 0; + + /** + * ExtensionRange end. + * @member {number} end + * @memberof google.protobuf.DescriptorProto.ExtensionRange + * @instance + */ + ExtensionRange.prototype.end = 0; + + /** + * ExtensionRange options. + * @member {google.protobuf.IExtensionRangeOptions|null|undefined} options + * @memberof google.protobuf.DescriptorProto.ExtensionRange + * @instance + */ + ExtensionRange.prototype.options = null; + + /** + * Creates a new ExtensionRange instance using the specified properties. + * @function create + * @memberof google.protobuf.DescriptorProto.ExtensionRange + * @static + * @param {google.protobuf.DescriptorProto.IExtensionRange=} [properties] Properties to set + * @returns {google.protobuf.DescriptorProto.ExtensionRange} ExtensionRange instance + */ + ExtensionRange.create = function create(properties) { + return new ExtensionRange(properties); + }; + + /** + * Encodes the specified ExtensionRange message. Does not implicitly {@link google.protobuf.DescriptorProto.ExtensionRange.verify|verify} messages. + * @function encode + * @memberof google.protobuf.DescriptorProto.ExtensionRange + * @static + * @param {google.protobuf.DescriptorProto.IExtensionRange} message ExtensionRange message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + ExtensionRange.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.start != null && Object.hasOwnProperty.call(message, "start")) + writer.uint32(/* id 1, wireType 0 =*/8).int32(message.start); + if (message.end != null && Object.hasOwnProperty.call(message, "end")) + writer.uint32(/* id 2, wireType 0 =*/16).int32(message.end); + if (message.options != null && Object.hasOwnProperty.call(message, "options")) + $root.google.protobuf.ExtensionRangeOptions.encode(message.options, writer.uint32(/* id 3, wireType 2 =*/26).fork()).ldelim(); + return writer; + }; + + /** + * Encodes the specified ExtensionRange message, length delimited. Does not implicitly {@link google.protobuf.DescriptorProto.ExtensionRange.verify|verify} messages. + * @function encodeDelimited + * @memberof google.protobuf.DescriptorProto.ExtensionRange + * @static + * @param {google.protobuf.DescriptorProto.IExtensionRange} message ExtensionRange message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + ExtensionRange.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes an ExtensionRange message from the specified reader or buffer. + * @function decode + * @memberof google.protobuf.DescriptorProto.ExtensionRange + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.protobuf.DescriptorProto.ExtensionRange} ExtensionRange + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + ExtensionRange.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.protobuf.DescriptorProto.ExtensionRange(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.start = reader.int32(); + break; + case 2: + message.end = reader.int32(); + break; + case 3: + message.options = $root.google.protobuf.ExtensionRangeOptions.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes an ExtensionRange message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.protobuf.DescriptorProto.ExtensionRange + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.protobuf.DescriptorProto.ExtensionRange} ExtensionRange + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + ExtensionRange.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies an ExtensionRange message. + * @function verify + * @memberof google.protobuf.DescriptorProto.ExtensionRange + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + ExtensionRange.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.start != null && message.hasOwnProperty("start")) + if (!$util.isInteger(message.start)) + return "start: integer expected"; + if (message.end != null && message.hasOwnProperty("end")) + if (!$util.isInteger(message.end)) + return "end: integer expected"; + if (message.options != null && message.hasOwnProperty("options")) { + var error = $root.google.protobuf.ExtensionRangeOptions.verify(message.options); + if (error) + return "options." + error; + } + return null; + }; + + /** + * Creates an ExtensionRange message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.protobuf.DescriptorProto.ExtensionRange + * @static + * @param {Object.} object Plain object + * @returns {google.protobuf.DescriptorProto.ExtensionRange} ExtensionRange + */ + ExtensionRange.fromObject = function fromObject(object) { + if (object instanceof $root.google.protobuf.DescriptorProto.ExtensionRange) + return object; + var message = new $root.google.protobuf.DescriptorProto.ExtensionRange(); + if (object.start != null) + message.start = object.start | 0; + if (object.end != null) + message.end = object.end | 0; + if (object.options != null) { + if (typeof object.options !== "object") + throw TypeError(".google.protobuf.DescriptorProto.ExtensionRange.options: object expected"); + message.options = $root.google.protobuf.ExtensionRangeOptions.fromObject(object.options); + } + return message; + }; + + /** + * Creates a plain object from an ExtensionRange message. Also converts values to other types if specified. + * @function toObject + * @memberof google.protobuf.DescriptorProto.ExtensionRange + * @static + * @param {google.protobuf.DescriptorProto.ExtensionRange} message ExtensionRange + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + ExtensionRange.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.start = 0; + object.end = 0; + object.options = null; + } + if (message.start != null && message.hasOwnProperty("start")) + object.start = message.start; + if (message.end != null && message.hasOwnProperty("end")) + object.end = message.end; + if (message.options != null && message.hasOwnProperty("options")) + object.options = $root.google.protobuf.ExtensionRangeOptions.toObject(message.options, options); + return object; + }; + + /** + * Converts this ExtensionRange to JSON. + * @function toJSON + * @memberof google.protobuf.DescriptorProto.ExtensionRange + * @instance + * @returns {Object.} JSON object + */ + ExtensionRange.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return ExtensionRange; + })(); + + DescriptorProto.ReservedRange = (function() { + + /** + * Properties of a ReservedRange. + * @memberof google.protobuf.DescriptorProto + * @interface IReservedRange + * @property {number|null} [start] ReservedRange start + * @property {number|null} [end] ReservedRange end + */ + + /** + * Constructs a new ReservedRange. + * @memberof google.protobuf.DescriptorProto + * @classdesc Represents a ReservedRange. + * @implements IReservedRange + * @constructor + * @param {google.protobuf.DescriptorProto.IReservedRange=} [properties] Properties to set + */ + function ReservedRange(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]]; + } + + /** + * ReservedRange start. + * @member {number} start + * @memberof google.protobuf.DescriptorProto.ReservedRange + * @instance + */ + ReservedRange.prototype.start = 0; + + /** + * ReservedRange end. + * @member {number} end + * @memberof google.protobuf.DescriptorProto.ReservedRange + * @instance + */ + ReservedRange.prototype.end = 0; + + /** + * Creates a new ReservedRange instance using the specified properties. + * @function create + * @memberof google.protobuf.DescriptorProto.ReservedRange + * @static + * @param {google.protobuf.DescriptorProto.IReservedRange=} [properties] Properties to set + * @returns {google.protobuf.DescriptorProto.ReservedRange} ReservedRange instance + */ + ReservedRange.create = function create(properties) { + return new ReservedRange(properties); + }; + + /** + * Encodes the specified ReservedRange message. Does not implicitly {@link google.protobuf.DescriptorProto.ReservedRange.verify|verify} messages. + * @function encode + * @memberof google.protobuf.DescriptorProto.ReservedRange + * @static + * @param {google.protobuf.DescriptorProto.IReservedRange} message ReservedRange message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + ReservedRange.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.start != null && Object.hasOwnProperty.call(message, "start")) + writer.uint32(/* id 1, wireType 0 =*/8).int32(message.start); + if (message.end != null && Object.hasOwnProperty.call(message, "end")) + writer.uint32(/* id 2, wireType 0 =*/16).int32(message.end); + return writer; + }; + + /** + * Encodes the specified ReservedRange message, length delimited. Does not implicitly {@link google.protobuf.DescriptorProto.ReservedRange.verify|verify} messages. + * @function encodeDelimited + * @memberof google.protobuf.DescriptorProto.ReservedRange + * @static + * @param {google.protobuf.DescriptorProto.IReservedRange} message ReservedRange message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + ReservedRange.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a ReservedRange message from the specified reader or buffer. + * @function decode + * @memberof google.protobuf.DescriptorProto.ReservedRange + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.protobuf.DescriptorProto.ReservedRange} ReservedRange + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + ReservedRange.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.protobuf.DescriptorProto.ReservedRange(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.start = reader.int32(); + break; + case 2: + message.end = reader.int32(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a ReservedRange message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.protobuf.DescriptorProto.ReservedRange + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.protobuf.DescriptorProto.ReservedRange} ReservedRange + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + ReservedRange.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a ReservedRange message. + * @function verify + * @memberof google.protobuf.DescriptorProto.ReservedRange + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + ReservedRange.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.start != null && message.hasOwnProperty("start")) + if (!$util.isInteger(message.start)) + return "start: integer expected"; + if (message.end != null && message.hasOwnProperty("end")) + if (!$util.isInteger(message.end)) + return "end: integer expected"; + return null; + }; + + /** + * Creates a ReservedRange message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.protobuf.DescriptorProto.ReservedRange + * @static + * @param {Object.} object Plain object + * @returns {google.protobuf.DescriptorProto.ReservedRange} ReservedRange + */ + ReservedRange.fromObject = function fromObject(object) { + if (object instanceof $root.google.protobuf.DescriptorProto.ReservedRange) + return object; + var message = new $root.google.protobuf.DescriptorProto.ReservedRange(); + if (object.start != null) + message.start = object.start | 0; + if (object.end != null) + message.end = object.end | 0; + return message; + }; + + /** + * Creates a plain object from a ReservedRange message. Also converts values to other types if specified. + * @function toObject + * @memberof google.protobuf.DescriptorProto.ReservedRange + * @static + * @param {google.protobuf.DescriptorProto.ReservedRange} message ReservedRange + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + ReservedRange.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.start = 0; + object.end = 0; + } + if (message.start != null && message.hasOwnProperty("start")) + object.start = message.start; + if (message.end != null && message.hasOwnProperty("end")) + object.end = message.end; + return object; + }; + + /** + * Converts this ReservedRange to JSON. + * @function toJSON + * @memberof google.protobuf.DescriptorProto.ReservedRange + * @instance + * @returns {Object.} JSON object + */ + ReservedRange.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return ReservedRange; + })(); + + return DescriptorProto; + })(); + + protobuf.ExtensionRangeOptions = (function() { + + /** + * Properties of an ExtensionRangeOptions. + * @memberof google.protobuf + * @interface IExtensionRangeOptions + * @property {Array.|null} [uninterpretedOption] ExtensionRangeOptions uninterpretedOption + */ + + /** + * Constructs a new ExtensionRangeOptions. + * @memberof google.protobuf + * @classdesc Represents an ExtensionRangeOptions. + * @implements IExtensionRangeOptions + * @constructor + * @param {google.protobuf.IExtensionRangeOptions=} [properties] Properties to set + */ + function ExtensionRangeOptions(properties) { + this.uninterpretedOption = []; + 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]]; + } + + /** + * ExtensionRangeOptions uninterpretedOption. + * @member {Array.} uninterpretedOption + * @memberof google.protobuf.ExtensionRangeOptions + * @instance + */ + ExtensionRangeOptions.prototype.uninterpretedOption = $util.emptyArray; + + /** + * Creates a new ExtensionRangeOptions instance using the specified properties. + * @function create + * @memberof google.protobuf.ExtensionRangeOptions + * @static + * @param {google.protobuf.IExtensionRangeOptions=} [properties] Properties to set + * @returns {google.protobuf.ExtensionRangeOptions} ExtensionRangeOptions instance + */ + ExtensionRangeOptions.create = function create(properties) { + return new ExtensionRangeOptions(properties); + }; + + /** + * Encodes the specified ExtensionRangeOptions message. Does not implicitly {@link google.protobuf.ExtensionRangeOptions.verify|verify} messages. + * @function encode + * @memberof google.protobuf.ExtensionRangeOptions + * @static + * @param {google.protobuf.IExtensionRangeOptions} message ExtensionRangeOptions message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + ExtensionRangeOptions.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.uninterpretedOption != null && message.uninterpretedOption.length) + for (var i = 0; i < message.uninterpretedOption.length; ++i) + $root.google.protobuf.UninterpretedOption.encode(message.uninterpretedOption[i], writer.uint32(/* id 999, wireType 2 =*/7994).fork()).ldelim(); + return writer; + }; + + /** + * Encodes the specified ExtensionRangeOptions message, length delimited. Does not implicitly {@link google.protobuf.ExtensionRangeOptions.verify|verify} messages. + * @function encodeDelimited + * @memberof google.protobuf.ExtensionRangeOptions + * @static + * @param {google.protobuf.IExtensionRangeOptions} message ExtensionRangeOptions message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + ExtensionRangeOptions.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes an ExtensionRangeOptions message from the specified reader or buffer. + * @function decode + * @memberof google.protobuf.ExtensionRangeOptions + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.protobuf.ExtensionRangeOptions} ExtensionRangeOptions + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + ExtensionRangeOptions.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.protobuf.ExtensionRangeOptions(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 999: + if (!(message.uninterpretedOption && message.uninterpretedOption.length)) + message.uninterpretedOption = []; + message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32())); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes an ExtensionRangeOptions message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.protobuf.ExtensionRangeOptions + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.protobuf.ExtensionRangeOptions} ExtensionRangeOptions + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + ExtensionRangeOptions.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies an ExtensionRangeOptions message. + * @function verify + * @memberof google.protobuf.ExtensionRangeOptions + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + ExtensionRangeOptions.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.uninterpretedOption != null && message.hasOwnProperty("uninterpretedOption")) { + if (!Array.isArray(message.uninterpretedOption)) + return "uninterpretedOption: array expected"; + for (var i = 0; i < message.uninterpretedOption.length; ++i) { + var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i]); + if (error) + return "uninterpretedOption." + error; + } + } + return null; + }; + + /** + * Creates an ExtensionRangeOptions message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.protobuf.ExtensionRangeOptions + * @static + * @param {Object.} object Plain object + * @returns {google.protobuf.ExtensionRangeOptions} ExtensionRangeOptions + */ + ExtensionRangeOptions.fromObject = function fromObject(object) { + if (object instanceof $root.google.protobuf.ExtensionRangeOptions) + return object; + var message = new $root.google.protobuf.ExtensionRangeOptions(); + if (object.uninterpretedOption) { + if (!Array.isArray(object.uninterpretedOption)) + throw TypeError(".google.protobuf.ExtensionRangeOptions.uninterpretedOption: array expected"); + message.uninterpretedOption = []; + for (var i = 0; i < object.uninterpretedOption.length; ++i) { + if (typeof object.uninterpretedOption[i] !== "object") + throw TypeError(".google.protobuf.ExtensionRangeOptions.uninterpretedOption: object expected"); + message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i]); + } + } + return message; + }; + + /** + * Creates a plain object from an ExtensionRangeOptions message. Also converts values to other types if specified. + * @function toObject + * @memberof google.protobuf.ExtensionRangeOptions + * @static + * @param {google.protobuf.ExtensionRangeOptions} message ExtensionRangeOptions + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + ExtensionRangeOptions.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.arrays || options.defaults) + object.uninterpretedOption = []; + if (message.uninterpretedOption && message.uninterpretedOption.length) { + object.uninterpretedOption = []; + for (var j = 0; j < message.uninterpretedOption.length; ++j) + object.uninterpretedOption[j] = $root.google.protobuf.UninterpretedOption.toObject(message.uninterpretedOption[j], options); + } + return object; + }; + + /** + * Converts this ExtensionRangeOptions to JSON. + * @function toJSON + * @memberof google.protobuf.ExtensionRangeOptions + * @instance + * @returns {Object.} JSON object + */ + ExtensionRangeOptions.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return ExtensionRangeOptions; + })(); + + protobuf.FieldDescriptorProto = (function() { + + /** + * Properties of a FieldDescriptorProto. + * @memberof google.protobuf + * @interface IFieldDescriptorProto + * @property {string|null} [name] FieldDescriptorProto name + * @property {number|null} [number] FieldDescriptorProto number + * @property {google.protobuf.FieldDescriptorProto.Label|null} [label] FieldDescriptorProto label + * @property {google.protobuf.FieldDescriptorProto.Type|null} [type] FieldDescriptorProto type + * @property {string|null} [typeName] FieldDescriptorProto typeName + * @property {string|null} [extendee] FieldDescriptorProto extendee + * @property {string|null} [defaultValue] FieldDescriptorProto defaultValue + * @property {number|null} [oneofIndex] FieldDescriptorProto oneofIndex + * @property {string|null} [jsonName] FieldDescriptorProto jsonName + * @property {google.protobuf.IFieldOptions|null} [options] FieldDescriptorProto options + * @property {boolean|null} [proto3Optional] FieldDescriptorProto proto3Optional + */ + + /** + * Constructs a new FieldDescriptorProto. + * @memberof google.protobuf + * @classdesc Represents a FieldDescriptorProto. + * @implements IFieldDescriptorProto + * @constructor + * @param {google.protobuf.IFieldDescriptorProto=} [properties] Properties to set + */ + function FieldDescriptorProto(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]]; + } + + /** + * FieldDescriptorProto name. + * @member {string} name + * @memberof google.protobuf.FieldDescriptorProto + * @instance + */ + FieldDescriptorProto.prototype.name = ""; + + /** + * FieldDescriptorProto number. + * @member {number} number + * @memberof google.protobuf.FieldDescriptorProto + * @instance + */ + FieldDescriptorProto.prototype.number = 0; + + /** + * FieldDescriptorProto label. + * @member {google.protobuf.FieldDescriptorProto.Label} label + * @memberof google.protobuf.FieldDescriptorProto + * @instance + */ + FieldDescriptorProto.prototype.label = 1; + + /** + * FieldDescriptorProto type. + * @member {google.protobuf.FieldDescriptorProto.Type} type + * @memberof google.protobuf.FieldDescriptorProto + * @instance + */ + FieldDescriptorProto.prototype.type = 1; + + /** + * FieldDescriptorProto typeName. + * @member {string} typeName + * @memberof google.protobuf.FieldDescriptorProto + * @instance + */ + FieldDescriptorProto.prototype.typeName = ""; + + /** + * FieldDescriptorProto extendee. + * @member {string} extendee + * @memberof google.protobuf.FieldDescriptorProto + * @instance + */ + FieldDescriptorProto.prototype.extendee = ""; + + /** + * FieldDescriptorProto defaultValue. + * @member {string} defaultValue + * @memberof google.protobuf.FieldDescriptorProto + * @instance + */ + FieldDescriptorProto.prototype.defaultValue = ""; + + /** + * FieldDescriptorProto oneofIndex. + * @member {number} oneofIndex + * @memberof google.protobuf.FieldDescriptorProto + * @instance + */ + FieldDescriptorProto.prototype.oneofIndex = 0; + + /** + * FieldDescriptorProto jsonName. + * @member {string} jsonName + * @memberof google.protobuf.FieldDescriptorProto + * @instance + */ + FieldDescriptorProto.prototype.jsonName = ""; + + /** + * FieldDescriptorProto options. + * @member {google.protobuf.IFieldOptions|null|undefined} options + * @memberof google.protobuf.FieldDescriptorProto + * @instance + */ + FieldDescriptorProto.prototype.options = null; + + /** + * FieldDescriptorProto proto3Optional. + * @member {boolean} proto3Optional + * @memberof google.protobuf.FieldDescriptorProto + * @instance + */ + FieldDescriptorProto.prototype.proto3Optional = false; + + /** + * Creates a new FieldDescriptorProto instance using the specified properties. + * @function create + * @memberof google.protobuf.FieldDescriptorProto + * @static + * @param {google.protobuf.IFieldDescriptorProto=} [properties] Properties to set + * @returns {google.protobuf.FieldDescriptorProto} FieldDescriptorProto instance + */ + FieldDescriptorProto.create = function create(properties) { + return new FieldDescriptorProto(properties); + }; + + /** + * Encodes the specified FieldDescriptorProto message. Does not implicitly {@link google.protobuf.FieldDescriptorProto.verify|verify} messages. + * @function encode + * @memberof google.protobuf.FieldDescriptorProto + * @static + * @param {google.protobuf.IFieldDescriptorProto} message FieldDescriptorProto message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + FieldDescriptorProto.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.name != null && Object.hasOwnProperty.call(message, "name")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.name); + if (message.extendee != null && Object.hasOwnProperty.call(message, "extendee")) + writer.uint32(/* id 2, wireType 2 =*/18).string(message.extendee); + if (message.number != null && Object.hasOwnProperty.call(message, "number")) + writer.uint32(/* id 3, wireType 0 =*/24).int32(message.number); + if (message.label != null && Object.hasOwnProperty.call(message, "label")) + writer.uint32(/* id 4, wireType 0 =*/32).int32(message.label); + if (message.type != null && Object.hasOwnProperty.call(message, "type")) + writer.uint32(/* id 5, wireType 0 =*/40).int32(message.type); + if (message.typeName != null && Object.hasOwnProperty.call(message, "typeName")) + writer.uint32(/* id 6, wireType 2 =*/50).string(message.typeName); + if (message.defaultValue != null && Object.hasOwnProperty.call(message, "defaultValue")) + writer.uint32(/* id 7, wireType 2 =*/58).string(message.defaultValue); + if (message.options != null && Object.hasOwnProperty.call(message, "options")) + $root.google.protobuf.FieldOptions.encode(message.options, writer.uint32(/* id 8, wireType 2 =*/66).fork()).ldelim(); + if (message.oneofIndex != null && Object.hasOwnProperty.call(message, "oneofIndex")) + writer.uint32(/* id 9, wireType 0 =*/72).int32(message.oneofIndex); + if (message.jsonName != null && Object.hasOwnProperty.call(message, "jsonName")) + writer.uint32(/* id 10, wireType 2 =*/82).string(message.jsonName); + if (message.proto3Optional != null && Object.hasOwnProperty.call(message, "proto3Optional")) + writer.uint32(/* id 17, wireType 0 =*/136).bool(message.proto3Optional); + return writer; + }; + + /** + * Encodes the specified FieldDescriptorProto message, length delimited. Does not implicitly {@link google.protobuf.FieldDescriptorProto.verify|verify} messages. + * @function encodeDelimited + * @memberof google.protobuf.FieldDescriptorProto + * @static + * @param {google.protobuf.IFieldDescriptorProto} message FieldDescriptorProto message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + FieldDescriptorProto.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a FieldDescriptorProto message from the specified reader or buffer. + * @function decode + * @memberof google.protobuf.FieldDescriptorProto + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.protobuf.FieldDescriptorProto} FieldDescriptorProto + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + FieldDescriptorProto.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.protobuf.FieldDescriptorProto(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.name = reader.string(); + break; + case 3: + message.number = reader.int32(); + break; + case 4: + message.label = reader.int32(); + break; + case 5: + message.type = reader.int32(); + break; + case 6: + message.typeName = reader.string(); + break; + case 2: + message.extendee = reader.string(); + break; + case 7: + message.defaultValue = reader.string(); + break; + case 9: + message.oneofIndex = reader.int32(); + break; + case 10: + message.jsonName = reader.string(); + break; + case 8: + message.options = $root.google.protobuf.FieldOptions.decode(reader, reader.uint32()); + break; + case 17: + message.proto3Optional = reader.bool(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a FieldDescriptorProto message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.protobuf.FieldDescriptorProto + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.protobuf.FieldDescriptorProto} FieldDescriptorProto + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + FieldDescriptorProto.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a FieldDescriptorProto message. + * @function verify + * @memberof google.protobuf.FieldDescriptorProto + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + FieldDescriptorProto.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.name != null && message.hasOwnProperty("name")) + if (!$util.isString(message.name)) + return "name: string expected"; + if (message.number != null && message.hasOwnProperty("number")) + if (!$util.isInteger(message.number)) + return "number: integer expected"; + if (message.label != null && message.hasOwnProperty("label")) + switch (message.label) { + default: + return "label: enum value expected"; + case 1: + case 2: + case 3: + break; + } + if (message.type != null && message.hasOwnProperty("type")) + switch (message.type) { + default: + return "type: enum value expected"; + case 1: + case 2: + case 3: + case 4: + case 5: + case 6: + case 7: + case 8: + case 9: + case 10: + case 11: + case 12: + case 13: + case 14: + case 15: + case 16: + case 17: + case 18: + break; + } + if (message.typeName != null && message.hasOwnProperty("typeName")) + if (!$util.isString(message.typeName)) + return "typeName: string expected"; + if (message.extendee != null && message.hasOwnProperty("extendee")) + if (!$util.isString(message.extendee)) + return "extendee: string expected"; + if (message.defaultValue != null && message.hasOwnProperty("defaultValue")) + if (!$util.isString(message.defaultValue)) + return "defaultValue: string expected"; + if (message.oneofIndex != null && message.hasOwnProperty("oneofIndex")) + if (!$util.isInteger(message.oneofIndex)) + return "oneofIndex: integer expected"; + if (message.jsonName != null && message.hasOwnProperty("jsonName")) + if (!$util.isString(message.jsonName)) + return "jsonName: string expected"; + if (message.options != null && message.hasOwnProperty("options")) { + var error = $root.google.protobuf.FieldOptions.verify(message.options); + if (error) + return "options." + error; + } + if (message.proto3Optional != null && message.hasOwnProperty("proto3Optional")) + if (typeof message.proto3Optional !== "boolean") + return "proto3Optional: boolean expected"; + return null; + }; + + /** + * Creates a FieldDescriptorProto message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.protobuf.FieldDescriptorProto + * @static + * @param {Object.} object Plain object + * @returns {google.protobuf.FieldDescriptorProto} FieldDescriptorProto + */ + FieldDescriptorProto.fromObject = function fromObject(object) { + if (object instanceof $root.google.protobuf.FieldDescriptorProto) + return object; + var message = new $root.google.protobuf.FieldDescriptorProto(); + if (object.name != null) + message.name = String(object.name); + if (object.number != null) + message.number = object.number | 0; + switch (object.label) { + case "LABEL_OPTIONAL": + case 1: + message.label = 1; + break; + case "LABEL_REQUIRED": + case 2: + message.label = 2; + break; + case "LABEL_REPEATED": + case 3: + message.label = 3; + break; + } + switch (object.type) { + case "TYPE_DOUBLE": + case 1: + message.type = 1; + break; + case "TYPE_FLOAT": + case 2: + message.type = 2; + break; + case "TYPE_INT64": + case 3: + message.type = 3; + break; + case "TYPE_UINT64": + case 4: + message.type = 4; + break; + case "TYPE_INT32": + case 5: + message.type = 5; + break; + case "TYPE_FIXED64": + case 6: + message.type = 6; + break; + case "TYPE_FIXED32": + case 7: + message.type = 7; + break; + case "TYPE_BOOL": + case 8: + message.type = 8; + break; + case "TYPE_STRING": + case 9: + message.type = 9; + break; + case "TYPE_GROUP": + case 10: + message.type = 10; + break; + case "TYPE_MESSAGE": + case 11: + message.type = 11; + break; + case "TYPE_BYTES": + case 12: + message.type = 12; + break; + case "TYPE_UINT32": + case 13: + message.type = 13; + break; + case "TYPE_ENUM": + case 14: + message.type = 14; + break; + case "TYPE_SFIXED32": + case 15: + message.type = 15; + break; + case "TYPE_SFIXED64": + case 16: + message.type = 16; + break; + case "TYPE_SINT32": + case 17: + message.type = 17; + break; + case "TYPE_SINT64": + case 18: + message.type = 18; + break; + } + if (object.typeName != null) + message.typeName = String(object.typeName); + if (object.extendee != null) + message.extendee = String(object.extendee); + if (object.defaultValue != null) + message.defaultValue = String(object.defaultValue); + if (object.oneofIndex != null) + message.oneofIndex = object.oneofIndex | 0; + if (object.jsonName != null) + message.jsonName = String(object.jsonName); + if (object.options != null) { + if (typeof object.options !== "object") + throw TypeError(".google.protobuf.FieldDescriptorProto.options: object expected"); + message.options = $root.google.protobuf.FieldOptions.fromObject(object.options); + } + if (object.proto3Optional != null) + message.proto3Optional = Boolean(object.proto3Optional); + return message; + }; + + /** + * Creates a plain object from a FieldDescriptorProto message. Also converts values to other types if specified. + * @function toObject + * @memberof google.protobuf.FieldDescriptorProto + * @static + * @param {google.protobuf.FieldDescriptorProto} message FieldDescriptorProto + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + FieldDescriptorProto.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.name = ""; + object.extendee = ""; + object.number = 0; + object.label = options.enums === String ? "LABEL_OPTIONAL" : 1; + object.type = options.enums === String ? "TYPE_DOUBLE" : 1; + object.typeName = ""; + object.defaultValue = ""; + object.options = null; + object.oneofIndex = 0; + object.jsonName = ""; + object.proto3Optional = false; + } + if (message.name != null && message.hasOwnProperty("name")) + object.name = message.name; + if (message.extendee != null && message.hasOwnProperty("extendee")) + object.extendee = message.extendee; + if (message.number != null && message.hasOwnProperty("number")) + object.number = message.number; + if (message.label != null && message.hasOwnProperty("label")) + object.label = options.enums === String ? $root.google.protobuf.FieldDescriptorProto.Label[message.label] : message.label; + if (message.type != null && message.hasOwnProperty("type")) + object.type = options.enums === String ? $root.google.protobuf.FieldDescriptorProto.Type[message.type] : message.type; + if (message.typeName != null && message.hasOwnProperty("typeName")) + object.typeName = message.typeName; + if (message.defaultValue != null && message.hasOwnProperty("defaultValue")) + object.defaultValue = message.defaultValue; + if (message.options != null && message.hasOwnProperty("options")) + object.options = $root.google.protobuf.FieldOptions.toObject(message.options, options); + if (message.oneofIndex != null && message.hasOwnProperty("oneofIndex")) + object.oneofIndex = message.oneofIndex; + if (message.jsonName != null && message.hasOwnProperty("jsonName")) + object.jsonName = message.jsonName; + if (message.proto3Optional != null && message.hasOwnProperty("proto3Optional")) + object.proto3Optional = message.proto3Optional; + return object; + }; + + /** + * Converts this FieldDescriptorProto to JSON. + * @function toJSON + * @memberof google.protobuf.FieldDescriptorProto + * @instance + * @returns {Object.} JSON object + */ + FieldDescriptorProto.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + /** + * Type enum. + * @name google.protobuf.FieldDescriptorProto.Type + * @enum {number} + * @property {number} TYPE_DOUBLE=1 TYPE_DOUBLE value + * @property {number} TYPE_FLOAT=2 TYPE_FLOAT value + * @property {number} TYPE_INT64=3 TYPE_INT64 value + * @property {number} TYPE_UINT64=4 TYPE_UINT64 value + * @property {number} TYPE_INT32=5 TYPE_INT32 value + * @property {number} TYPE_FIXED64=6 TYPE_FIXED64 value + * @property {number} TYPE_FIXED32=7 TYPE_FIXED32 value + * @property {number} TYPE_BOOL=8 TYPE_BOOL value + * @property {number} TYPE_STRING=9 TYPE_STRING value + * @property {number} TYPE_GROUP=10 TYPE_GROUP value + * @property {number} TYPE_MESSAGE=11 TYPE_MESSAGE value + * @property {number} TYPE_BYTES=12 TYPE_BYTES value + * @property {number} TYPE_UINT32=13 TYPE_UINT32 value + * @property {number} TYPE_ENUM=14 TYPE_ENUM value + * @property {number} TYPE_SFIXED32=15 TYPE_SFIXED32 value + * @property {number} TYPE_SFIXED64=16 TYPE_SFIXED64 value + * @property {number} TYPE_SINT32=17 TYPE_SINT32 value + * @property {number} TYPE_SINT64=18 TYPE_SINT64 value + */ + FieldDescriptorProto.Type = (function() { + var valuesById = {}, values = Object.create(valuesById); + values[valuesById[1] = "TYPE_DOUBLE"] = 1; + values[valuesById[2] = "TYPE_FLOAT"] = 2; + values[valuesById[3] = "TYPE_INT64"] = 3; + values[valuesById[4] = "TYPE_UINT64"] = 4; + values[valuesById[5] = "TYPE_INT32"] = 5; + values[valuesById[6] = "TYPE_FIXED64"] = 6; + values[valuesById[7] = "TYPE_FIXED32"] = 7; + values[valuesById[8] = "TYPE_BOOL"] = 8; + values[valuesById[9] = "TYPE_STRING"] = 9; + values[valuesById[10] = "TYPE_GROUP"] = 10; + values[valuesById[11] = "TYPE_MESSAGE"] = 11; + values[valuesById[12] = "TYPE_BYTES"] = 12; + values[valuesById[13] = "TYPE_UINT32"] = 13; + values[valuesById[14] = "TYPE_ENUM"] = 14; + values[valuesById[15] = "TYPE_SFIXED32"] = 15; + values[valuesById[16] = "TYPE_SFIXED64"] = 16; + values[valuesById[17] = "TYPE_SINT32"] = 17; + values[valuesById[18] = "TYPE_SINT64"] = 18; + return values; + })(); + + /** + * Label enum. + * @name google.protobuf.FieldDescriptorProto.Label + * @enum {number} + * @property {number} LABEL_OPTIONAL=1 LABEL_OPTIONAL value + * @property {number} LABEL_REQUIRED=2 LABEL_REQUIRED value + * @property {number} LABEL_REPEATED=3 LABEL_REPEATED value + */ + FieldDescriptorProto.Label = (function() { + var valuesById = {}, values = Object.create(valuesById); + values[valuesById[1] = "LABEL_OPTIONAL"] = 1; + values[valuesById[2] = "LABEL_REQUIRED"] = 2; + values[valuesById[3] = "LABEL_REPEATED"] = 3; + return values; + })(); + + return FieldDescriptorProto; + })(); + + protobuf.OneofDescriptorProto = (function() { + + /** + * Properties of an OneofDescriptorProto. + * @memberof google.protobuf + * @interface IOneofDescriptorProto + * @property {string|null} [name] OneofDescriptorProto name + * @property {google.protobuf.IOneofOptions|null} [options] OneofDescriptorProto options + */ + + /** + * Constructs a new OneofDescriptorProto. + * @memberof google.protobuf + * @classdesc Represents an OneofDescriptorProto. + * @implements IOneofDescriptorProto + * @constructor + * @param {google.protobuf.IOneofDescriptorProto=} [properties] Properties to set + */ + function OneofDescriptorProto(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]]; + } + + /** + * OneofDescriptorProto name. + * @member {string} name + * @memberof google.protobuf.OneofDescriptorProto + * @instance + */ + OneofDescriptorProto.prototype.name = ""; + + /** + * OneofDescriptorProto options. + * @member {google.protobuf.IOneofOptions|null|undefined} options + * @memberof google.protobuf.OneofDescriptorProto + * @instance + */ + OneofDescriptorProto.prototype.options = null; + + /** + * Creates a new OneofDescriptorProto instance using the specified properties. + * @function create + * @memberof google.protobuf.OneofDescriptorProto + * @static + * @param {google.protobuf.IOneofDescriptorProto=} [properties] Properties to set + * @returns {google.protobuf.OneofDescriptorProto} OneofDescriptorProto instance + */ + OneofDescriptorProto.create = function create(properties) { + return new OneofDescriptorProto(properties); + }; + + /** + * Encodes the specified OneofDescriptorProto message. Does not implicitly {@link google.protobuf.OneofDescriptorProto.verify|verify} messages. + * @function encode + * @memberof google.protobuf.OneofDescriptorProto + * @static + * @param {google.protobuf.IOneofDescriptorProto} message OneofDescriptorProto message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + OneofDescriptorProto.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.name != null && Object.hasOwnProperty.call(message, "name")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.name); + if (message.options != null && Object.hasOwnProperty.call(message, "options")) + $root.google.protobuf.OneofOptions.encode(message.options, writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim(); + return writer; + }; + + /** + * Encodes the specified OneofDescriptorProto message, length delimited. Does not implicitly {@link google.protobuf.OneofDescriptorProto.verify|verify} messages. + * @function encodeDelimited + * @memberof google.protobuf.OneofDescriptorProto + * @static + * @param {google.protobuf.IOneofDescriptorProto} message OneofDescriptorProto message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + OneofDescriptorProto.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes an OneofDescriptorProto message from the specified reader or buffer. + * @function decode + * @memberof google.protobuf.OneofDescriptorProto + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.protobuf.OneofDescriptorProto} OneofDescriptorProto + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + OneofDescriptorProto.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.protobuf.OneofDescriptorProto(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.name = reader.string(); + break; + case 2: + message.options = $root.google.protobuf.OneofOptions.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes an OneofDescriptorProto message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.protobuf.OneofDescriptorProto + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.protobuf.OneofDescriptorProto} OneofDescriptorProto + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + OneofDescriptorProto.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies an OneofDescriptorProto message. + * @function verify + * @memberof google.protobuf.OneofDescriptorProto + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + OneofDescriptorProto.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.name != null && message.hasOwnProperty("name")) + if (!$util.isString(message.name)) + return "name: string expected"; + if (message.options != null && message.hasOwnProperty("options")) { + var error = $root.google.protobuf.OneofOptions.verify(message.options); + if (error) + return "options." + error; + } + return null; + }; + + /** + * Creates an OneofDescriptorProto message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.protobuf.OneofDescriptorProto + * @static + * @param {Object.} object Plain object + * @returns {google.protobuf.OneofDescriptorProto} OneofDescriptorProto + */ + OneofDescriptorProto.fromObject = function fromObject(object) { + if (object instanceof $root.google.protobuf.OneofDescriptorProto) + return object; + var message = new $root.google.protobuf.OneofDescriptorProto(); + if (object.name != null) + message.name = String(object.name); + if (object.options != null) { + if (typeof object.options !== "object") + throw TypeError(".google.protobuf.OneofDescriptorProto.options: object expected"); + message.options = $root.google.protobuf.OneofOptions.fromObject(object.options); + } + return message; + }; + + /** + * Creates a plain object from an OneofDescriptorProto message. Also converts values to other types if specified. + * @function toObject + * @memberof google.protobuf.OneofDescriptorProto + * @static + * @param {google.protobuf.OneofDescriptorProto} message OneofDescriptorProto + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + OneofDescriptorProto.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.name = ""; + object.options = null; + } + if (message.name != null && message.hasOwnProperty("name")) + object.name = message.name; + if (message.options != null && message.hasOwnProperty("options")) + object.options = $root.google.protobuf.OneofOptions.toObject(message.options, options); + return object; + }; + + /** + * Converts this OneofDescriptorProto to JSON. + * @function toJSON + * @memberof google.protobuf.OneofDescriptorProto + * @instance + * @returns {Object.} JSON object + */ + OneofDescriptorProto.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return OneofDescriptorProto; + })(); + + protobuf.EnumDescriptorProto = (function() { + + /** + * Properties of an EnumDescriptorProto. + * @memberof google.protobuf + * @interface IEnumDescriptorProto + * @property {string|null} [name] EnumDescriptorProto name + * @property {Array.|null} [value] EnumDescriptorProto value + * @property {google.protobuf.IEnumOptions|null} [options] EnumDescriptorProto options + * @property {Array.|null} [reservedRange] EnumDescriptorProto reservedRange + * @property {Array.|null} [reservedName] EnumDescriptorProto reservedName + */ + + /** + * Constructs a new EnumDescriptorProto. + * @memberof google.protobuf + * @classdesc Represents an EnumDescriptorProto. + * @implements IEnumDescriptorProto + * @constructor + * @param {google.protobuf.IEnumDescriptorProto=} [properties] Properties to set + */ + function EnumDescriptorProto(properties) { + this.value = []; + this.reservedRange = []; + this.reservedName = []; + 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]]; + } + + /** + * EnumDescriptorProto name. + * @member {string} name + * @memberof google.protobuf.EnumDescriptorProto + * @instance + */ + EnumDescriptorProto.prototype.name = ""; + + /** + * EnumDescriptorProto value. + * @member {Array.} value + * @memberof google.protobuf.EnumDescriptorProto + * @instance + */ + EnumDescriptorProto.prototype.value = $util.emptyArray; + + /** + * EnumDescriptorProto options. + * @member {google.protobuf.IEnumOptions|null|undefined} options + * @memberof google.protobuf.EnumDescriptorProto + * @instance + */ + EnumDescriptorProto.prototype.options = null; + + /** + * EnumDescriptorProto reservedRange. + * @member {Array.} reservedRange + * @memberof google.protobuf.EnumDescriptorProto + * @instance + */ + EnumDescriptorProto.prototype.reservedRange = $util.emptyArray; + + /** + * EnumDescriptorProto reservedName. + * @member {Array.} reservedName + * @memberof google.protobuf.EnumDescriptorProto + * @instance + */ + EnumDescriptorProto.prototype.reservedName = $util.emptyArray; + + /** + * Creates a new EnumDescriptorProto instance using the specified properties. + * @function create + * @memberof google.protobuf.EnumDescriptorProto + * @static + * @param {google.protobuf.IEnumDescriptorProto=} [properties] Properties to set + * @returns {google.protobuf.EnumDescriptorProto} EnumDescriptorProto instance + */ + EnumDescriptorProto.create = function create(properties) { + return new EnumDescriptorProto(properties); + }; + + /** + * Encodes the specified EnumDescriptorProto message. Does not implicitly {@link google.protobuf.EnumDescriptorProto.verify|verify} messages. + * @function encode + * @memberof google.protobuf.EnumDescriptorProto + * @static + * @param {google.protobuf.IEnumDescriptorProto} message EnumDescriptorProto message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + EnumDescriptorProto.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.name != null && Object.hasOwnProperty.call(message, "name")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.name); + if (message.value != null && message.value.length) + for (var i = 0; i < message.value.length; ++i) + $root.google.protobuf.EnumValueDescriptorProto.encode(message.value[i], writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim(); + if (message.options != null && Object.hasOwnProperty.call(message, "options")) + $root.google.protobuf.EnumOptions.encode(message.options, writer.uint32(/* id 3, wireType 2 =*/26).fork()).ldelim(); + if (message.reservedRange != null && message.reservedRange.length) + for (var i = 0; i < message.reservedRange.length; ++i) + $root.google.protobuf.EnumDescriptorProto.EnumReservedRange.encode(message.reservedRange[i], writer.uint32(/* id 4, wireType 2 =*/34).fork()).ldelim(); + if (message.reservedName != null && message.reservedName.length) + for (var i = 0; i < message.reservedName.length; ++i) + writer.uint32(/* id 5, wireType 2 =*/42).string(message.reservedName[i]); + return writer; + }; + + /** + * Encodes the specified EnumDescriptorProto message, length delimited. Does not implicitly {@link google.protobuf.EnumDescriptorProto.verify|verify} messages. + * @function encodeDelimited + * @memberof google.protobuf.EnumDescriptorProto + * @static + * @param {google.protobuf.IEnumDescriptorProto} message EnumDescriptorProto message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + EnumDescriptorProto.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes an EnumDescriptorProto message from the specified reader or buffer. + * @function decode + * @memberof google.protobuf.EnumDescriptorProto + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.protobuf.EnumDescriptorProto} EnumDescriptorProto + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + EnumDescriptorProto.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.protobuf.EnumDescriptorProto(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.name = reader.string(); + break; + case 2: + if (!(message.value && message.value.length)) + message.value = []; + message.value.push($root.google.protobuf.EnumValueDescriptorProto.decode(reader, reader.uint32())); + break; + case 3: + message.options = $root.google.protobuf.EnumOptions.decode(reader, reader.uint32()); + break; + case 4: + if (!(message.reservedRange && message.reservedRange.length)) + message.reservedRange = []; + message.reservedRange.push($root.google.protobuf.EnumDescriptorProto.EnumReservedRange.decode(reader, reader.uint32())); + break; + case 5: + if (!(message.reservedName && message.reservedName.length)) + message.reservedName = []; + message.reservedName.push(reader.string()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes an EnumDescriptorProto message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.protobuf.EnumDescriptorProto + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.protobuf.EnumDescriptorProto} EnumDescriptorProto + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + EnumDescriptorProto.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies an EnumDescriptorProto message. + * @function verify + * @memberof google.protobuf.EnumDescriptorProto + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + EnumDescriptorProto.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.name != null && message.hasOwnProperty("name")) + if (!$util.isString(message.name)) + return "name: string expected"; + if (message.value != null && message.hasOwnProperty("value")) { + if (!Array.isArray(message.value)) + return "value: array expected"; + for (var i = 0; i < message.value.length; ++i) { + var error = $root.google.protobuf.EnumValueDescriptorProto.verify(message.value[i]); + if (error) + return "value." + error; + } + } + if (message.options != null && message.hasOwnProperty("options")) { + var error = $root.google.protobuf.EnumOptions.verify(message.options); + if (error) + return "options." + error; + } + if (message.reservedRange != null && message.hasOwnProperty("reservedRange")) { + if (!Array.isArray(message.reservedRange)) + return "reservedRange: array expected"; + for (var i = 0; i < message.reservedRange.length; ++i) { + var error = $root.google.protobuf.EnumDescriptorProto.EnumReservedRange.verify(message.reservedRange[i]); + if (error) + return "reservedRange." + error; + } + } + if (message.reservedName != null && message.hasOwnProperty("reservedName")) { + if (!Array.isArray(message.reservedName)) + return "reservedName: array expected"; + for (var i = 0; i < message.reservedName.length; ++i) + if (!$util.isString(message.reservedName[i])) + return "reservedName: string[] expected"; + } + return null; + }; + + /** + * Creates an EnumDescriptorProto message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.protobuf.EnumDescriptorProto + * @static + * @param {Object.} object Plain object + * @returns {google.protobuf.EnumDescriptorProto} EnumDescriptorProto + */ + EnumDescriptorProto.fromObject = function fromObject(object) { + if (object instanceof $root.google.protobuf.EnumDescriptorProto) + return object; + var message = new $root.google.protobuf.EnumDescriptorProto(); + if (object.name != null) + message.name = String(object.name); + if (object.value) { + if (!Array.isArray(object.value)) + throw TypeError(".google.protobuf.EnumDescriptorProto.value: array expected"); + message.value = []; + for (var i = 0; i < object.value.length; ++i) { + if (typeof object.value[i] !== "object") + throw TypeError(".google.protobuf.EnumDescriptorProto.value: object expected"); + message.value[i] = $root.google.protobuf.EnumValueDescriptorProto.fromObject(object.value[i]); + } + } + if (object.options != null) { + if (typeof object.options !== "object") + throw TypeError(".google.protobuf.EnumDescriptorProto.options: object expected"); + message.options = $root.google.protobuf.EnumOptions.fromObject(object.options); + } + if (object.reservedRange) { + if (!Array.isArray(object.reservedRange)) + throw TypeError(".google.protobuf.EnumDescriptorProto.reservedRange: array expected"); + message.reservedRange = []; + for (var i = 0; i < object.reservedRange.length; ++i) { + if (typeof object.reservedRange[i] !== "object") + throw TypeError(".google.protobuf.EnumDescriptorProto.reservedRange: object expected"); + message.reservedRange[i] = $root.google.protobuf.EnumDescriptorProto.EnumReservedRange.fromObject(object.reservedRange[i]); + } + } + if (object.reservedName) { + if (!Array.isArray(object.reservedName)) + throw TypeError(".google.protobuf.EnumDescriptorProto.reservedName: array expected"); + message.reservedName = []; + for (var i = 0; i < object.reservedName.length; ++i) + message.reservedName[i] = String(object.reservedName[i]); + } + return message; + }; + + /** + * Creates a plain object from an EnumDescriptorProto message. Also converts values to other types if specified. + * @function toObject + * @memberof google.protobuf.EnumDescriptorProto + * @static + * @param {google.protobuf.EnumDescriptorProto} message EnumDescriptorProto + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + EnumDescriptorProto.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.arrays || options.defaults) { + object.value = []; + object.reservedRange = []; + object.reservedName = []; + } + if (options.defaults) { + object.name = ""; + object.options = null; + } + if (message.name != null && message.hasOwnProperty("name")) + object.name = message.name; + if (message.value && message.value.length) { + object.value = []; + for (var j = 0; j < message.value.length; ++j) + object.value[j] = $root.google.protobuf.EnumValueDescriptorProto.toObject(message.value[j], options); + } + if (message.options != null && message.hasOwnProperty("options")) + object.options = $root.google.protobuf.EnumOptions.toObject(message.options, options); + if (message.reservedRange && message.reservedRange.length) { + object.reservedRange = []; + for (var j = 0; j < message.reservedRange.length; ++j) + object.reservedRange[j] = $root.google.protobuf.EnumDescriptorProto.EnumReservedRange.toObject(message.reservedRange[j], options); + } + if (message.reservedName && message.reservedName.length) { + object.reservedName = []; + for (var j = 0; j < message.reservedName.length; ++j) + object.reservedName[j] = message.reservedName[j]; + } + return object; + }; + + /** + * Converts this EnumDescriptorProto to JSON. + * @function toJSON + * @memberof google.protobuf.EnumDescriptorProto + * @instance + * @returns {Object.} JSON object + */ + EnumDescriptorProto.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + EnumDescriptorProto.EnumReservedRange = (function() { + + /** + * Properties of an EnumReservedRange. + * @memberof google.protobuf.EnumDescriptorProto + * @interface IEnumReservedRange + * @property {number|null} [start] EnumReservedRange start + * @property {number|null} [end] EnumReservedRange end + */ + + /** + * Constructs a new EnumReservedRange. + * @memberof google.protobuf.EnumDescriptorProto + * @classdesc Represents an EnumReservedRange. + * @implements IEnumReservedRange + * @constructor + * @param {google.protobuf.EnumDescriptorProto.IEnumReservedRange=} [properties] Properties to set + */ + function EnumReservedRange(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]]; + } + + /** + * EnumReservedRange start. + * @member {number} start + * @memberof google.protobuf.EnumDescriptorProto.EnumReservedRange + * @instance + */ + EnumReservedRange.prototype.start = 0; + + /** + * EnumReservedRange end. + * @member {number} end + * @memberof google.protobuf.EnumDescriptorProto.EnumReservedRange + * @instance + */ + EnumReservedRange.prototype.end = 0; + + /** + * Creates a new EnumReservedRange instance using the specified properties. + * @function create + * @memberof google.protobuf.EnumDescriptorProto.EnumReservedRange + * @static + * @param {google.protobuf.EnumDescriptorProto.IEnumReservedRange=} [properties] Properties to set + * @returns {google.protobuf.EnumDescriptorProto.EnumReservedRange} EnumReservedRange instance + */ + EnumReservedRange.create = function create(properties) { + return new EnumReservedRange(properties); + }; + + /** + * Encodes the specified EnumReservedRange message. Does not implicitly {@link google.protobuf.EnumDescriptorProto.EnumReservedRange.verify|verify} messages. + * @function encode + * @memberof google.protobuf.EnumDescriptorProto.EnumReservedRange + * @static + * @param {google.protobuf.EnumDescriptorProto.IEnumReservedRange} message EnumReservedRange message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + EnumReservedRange.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.start != null && Object.hasOwnProperty.call(message, "start")) + writer.uint32(/* id 1, wireType 0 =*/8).int32(message.start); + if (message.end != null && Object.hasOwnProperty.call(message, "end")) + writer.uint32(/* id 2, wireType 0 =*/16).int32(message.end); + return writer; + }; + + /** + * Encodes the specified EnumReservedRange message, length delimited. Does not implicitly {@link google.protobuf.EnumDescriptorProto.EnumReservedRange.verify|verify} messages. + * @function encodeDelimited + * @memberof google.protobuf.EnumDescriptorProto.EnumReservedRange + * @static + * @param {google.protobuf.EnumDescriptorProto.IEnumReservedRange} message EnumReservedRange message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + EnumReservedRange.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes an EnumReservedRange message from the specified reader or buffer. + * @function decode + * @memberof google.protobuf.EnumDescriptorProto.EnumReservedRange + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.protobuf.EnumDescriptorProto.EnumReservedRange} EnumReservedRange + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + EnumReservedRange.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.protobuf.EnumDescriptorProto.EnumReservedRange(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.start = reader.int32(); + break; + case 2: + message.end = reader.int32(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes an EnumReservedRange message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.protobuf.EnumDescriptorProto.EnumReservedRange + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.protobuf.EnumDescriptorProto.EnumReservedRange} EnumReservedRange + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + EnumReservedRange.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies an EnumReservedRange message. + * @function verify + * @memberof google.protobuf.EnumDescriptorProto.EnumReservedRange + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + EnumReservedRange.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.start != null && message.hasOwnProperty("start")) + if (!$util.isInteger(message.start)) + return "start: integer expected"; + if (message.end != null && message.hasOwnProperty("end")) + if (!$util.isInteger(message.end)) + return "end: integer expected"; + return null; + }; + + /** + * Creates an EnumReservedRange message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.protobuf.EnumDescriptorProto.EnumReservedRange + * @static + * @param {Object.} object Plain object + * @returns {google.protobuf.EnumDescriptorProto.EnumReservedRange} EnumReservedRange + */ + EnumReservedRange.fromObject = function fromObject(object) { + if (object instanceof $root.google.protobuf.EnumDescriptorProto.EnumReservedRange) + return object; + var message = new $root.google.protobuf.EnumDescriptorProto.EnumReservedRange(); + if (object.start != null) + message.start = object.start | 0; + if (object.end != null) + message.end = object.end | 0; + return message; + }; + + /** + * Creates a plain object from an EnumReservedRange message. Also converts values to other types if specified. + * @function toObject + * @memberof google.protobuf.EnumDescriptorProto.EnumReservedRange + * @static + * @param {google.protobuf.EnumDescriptorProto.EnumReservedRange} message EnumReservedRange + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + EnumReservedRange.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.start = 0; + object.end = 0; + } + if (message.start != null && message.hasOwnProperty("start")) + object.start = message.start; + if (message.end != null && message.hasOwnProperty("end")) + object.end = message.end; + return object; + }; + + /** + * Converts this EnumReservedRange to JSON. + * @function toJSON + * @memberof google.protobuf.EnumDescriptorProto.EnumReservedRange + * @instance + * @returns {Object.} JSON object + */ + EnumReservedRange.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return EnumReservedRange; + })(); + + return EnumDescriptorProto; + })(); + + protobuf.EnumValueDescriptorProto = (function() { + + /** + * Properties of an EnumValueDescriptorProto. + * @memberof google.protobuf + * @interface IEnumValueDescriptorProto + * @property {string|null} [name] EnumValueDescriptorProto name + * @property {number|null} [number] EnumValueDescriptorProto number + * @property {google.protobuf.IEnumValueOptions|null} [options] EnumValueDescriptorProto options + */ + + /** + * Constructs a new EnumValueDescriptorProto. + * @memberof google.protobuf + * @classdesc Represents an EnumValueDescriptorProto. + * @implements IEnumValueDescriptorProto + * @constructor + * @param {google.protobuf.IEnumValueDescriptorProto=} [properties] Properties to set + */ + function EnumValueDescriptorProto(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]]; + } + + /** + * EnumValueDescriptorProto name. + * @member {string} name + * @memberof google.protobuf.EnumValueDescriptorProto + * @instance + */ + EnumValueDescriptorProto.prototype.name = ""; + + /** + * EnumValueDescriptorProto number. + * @member {number} number + * @memberof google.protobuf.EnumValueDescriptorProto + * @instance + */ + EnumValueDescriptorProto.prototype.number = 0; + + /** + * EnumValueDescriptorProto options. + * @member {google.protobuf.IEnumValueOptions|null|undefined} options + * @memberof google.protobuf.EnumValueDescriptorProto + * @instance + */ + EnumValueDescriptorProto.prototype.options = null; + + /** + * Creates a new EnumValueDescriptorProto instance using the specified properties. + * @function create + * @memberof google.protobuf.EnumValueDescriptorProto + * @static + * @param {google.protobuf.IEnumValueDescriptorProto=} [properties] Properties to set + * @returns {google.protobuf.EnumValueDescriptorProto} EnumValueDescriptorProto instance + */ + EnumValueDescriptorProto.create = function create(properties) { + return new EnumValueDescriptorProto(properties); + }; + + /** + * Encodes the specified EnumValueDescriptorProto message. Does not implicitly {@link google.protobuf.EnumValueDescriptorProto.verify|verify} messages. + * @function encode + * @memberof google.protobuf.EnumValueDescriptorProto + * @static + * @param {google.protobuf.IEnumValueDescriptorProto} message EnumValueDescriptorProto message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + EnumValueDescriptorProto.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.name != null && Object.hasOwnProperty.call(message, "name")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.name); + if (message.number != null && Object.hasOwnProperty.call(message, "number")) + writer.uint32(/* id 2, wireType 0 =*/16).int32(message.number); + if (message.options != null && Object.hasOwnProperty.call(message, "options")) + $root.google.protobuf.EnumValueOptions.encode(message.options, writer.uint32(/* id 3, wireType 2 =*/26).fork()).ldelim(); + return writer; + }; + + /** + * Encodes the specified EnumValueDescriptorProto message, length delimited. Does not implicitly {@link google.protobuf.EnumValueDescriptorProto.verify|verify} messages. + * @function encodeDelimited + * @memberof google.protobuf.EnumValueDescriptorProto + * @static + * @param {google.protobuf.IEnumValueDescriptorProto} message EnumValueDescriptorProto message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + EnumValueDescriptorProto.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes an EnumValueDescriptorProto message from the specified reader or buffer. + * @function decode + * @memberof google.protobuf.EnumValueDescriptorProto + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.protobuf.EnumValueDescriptorProto} EnumValueDescriptorProto + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + EnumValueDescriptorProto.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.protobuf.EnumValueDescriptorProto(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.name = reader.string(); + break; + case 2: + message.number = reader.int32(); + break; + case 3: + message.options = $root.google.protobuf.EnumValueOptions.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes an EnumValueDescriptorProto message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.protobuf.EnumValueDescriptorProto + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.protobuf.EnumValueDescriptorProto} EnumValueDescriptorProto + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + EnumValueDescriptorProto.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies an EnumValueDescriptorProto message. + * @function verify + * @memberof google.protobuf.EnumValueDescriptorProto + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + EnumValueDescriptorProto.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.name != null && message.hasOwnProperty("name")) + if (!$util.isString(message.name)) + return "name: string expected"; + if (message.number != null && message.hasOwnProperty("number")) + if (!$util.isInteger(message.number)) + return "number: integer expected"; + if (message.options != null && message.hasOwnProperty("options")) { + var error = $root.google.protobuf.EnumValueOptions.verify(message.options); + if (error) + return "options." + error; + } + return null; + }; + + /** + * Creates an EnumValueDescriptorProto message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.protobuf.EnumValueDescriptorProto + * @static + * @param {Object.} object Plain object + * @returns {google.protobuf.EnumValueDescriptorProto} EnumValueDescriptorProto + */ + EnumValueDescriptorProto.fromObject = function fromObject(object) { + if (object instanceof $root.google.protobuf.EnumValueDescriptorProto) + return object; + var message = new $root.google.protobuf.EnumValueDescriptorProto(); + if (object.name != null) + message.name = String(object.name); + if (object.number != null) + message.number = object.number | 0; + if (object.options != null) { + if (typeof object.options !== "object") + throw TypeError(".google.protobuf.EnumValueDescriptorProto.options: object expected"); + message.options = $root.google.protobuf.EnumValueOptions.fromObject(object.options); + } + return message; + }; + + /** + * Creates a plain object from an EnumValueDescriptorProto message. Also converts values to other types if specified. + * @function toObject + * @memberof google.protobuf.EnumValueDescriptorProto + * @static + * @param {google.protobuf.EnumValueDescriptorProto} message EnumValueDescriptorProto + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + EnumValueDescriptorProto.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.name = ""; + object.number = 0; + object.options = null; + } + if (message.name != null && message.hasOwnProperty("name")) + object.name = message.name; + if (message.number != null && message.hasOwnProperty("number")) + object.number = message.number; + if (message.options != null && message.hasOwnProperty("options")) + object.options = $root.google.protobuf.EnumValueOptions.toObject(message.options, options); + return object; + }; + + /** + * Converts this EnumValueDescriptorProto to JSON. + * @function toJSON + * @memberof google.protobuf.EnumValueDescriptorProto + * @instance + * @returns {Object.} JSON object + */ + EnumValueDescriptorProto.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return EnumValueDescriptorProto; + })(); + + protobuf.ServiceDescriptorProto = (function() { + + /** + * Properties of a ServiceDescriptorProto. + * @memberof google.protobuf + * @interface IServiceDescriptorProto + * @property {string|null} [name] ServiceDescriptorProto name + * @property {Array.|null} [method] ServiceDescriptorProto method + * @property {google.protobuf.IServiceOptions|null} [options] ServiceDescriptorProto options + */ + + /** + * Constructs a new ServiceDescriptorProto. + * @memberof google.protobuf + * @classdesc Represents a ServiceDescriptorProto. + * @implements IServiceDescriptorProto + * @constructor + * @param {google.protobuf.IServiceDescriptorProto=} [properties] Properties to set + */ + function ServiceDescriptorProto(properties) { + this.method = []; + 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]]; + } + + /** + * ServiceDescriptorProto name. + * @member {string} name + * @memberof google.protobuf.ServiceDescriptorProto + * @instance + */ + ServiceDescriptorProto.prototype.name = ""; + + /** + * ServiceDescriptorProto method. + * @member {Array.} method + * @memberof google.protobuf.ServiceDescriptorProto + * @instance + */ + ServiceDescriptorProto.prototype.method = $util.emptyArray; + + /** + * ServiceDescriptorProto options. + * @member {google.protobuf.IServiceOptions|null|undefined} options + * @memberof google.protobuf.ServiceDescriptorProto + * @instance + */ + ServiceDescriptorProto.prototype.options = null; + + /** + * Creates a new ServiceDescriptorProto instance using the specified properties. + * @function create + * @memberof google.protobuf.ServiceDescriptorProto + * @static + * @param {google.protobuf.IServiceDescriptorProto=} [properties] Properties to set + * @returns {google.protobuf.ServiceDescriptorProto} ServiceDescriptorProto instance + */ + ServiceDescriptorProto.create = function create(properties) { + return new ServiceDescriptorProto(properties); + }; + + /** + * Encodes the specified ServiceDescriptorProto message. Does not implicitly {@link google.protobuf.ServiceDescriptorProto.verify|verify} messages. + * @function encode + * @memberof google.protobuf.ServiceDescriptorProto + * @static + * @param {google.protobuf.IServiceDescriptorProto} message ServiceDescriptorProto message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + ServiceDescriptorProto.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.name != null && Object.hasOwnProperty.call(message, "name")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.name); + if (message.method != null && message.method.length) + for (var i = 0; i < message.method.length; ++i) + $root.google.protobuf.MethodDescriptorProto.encode(message.method[i], writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim(); + if (message.options != null && Object.hasOwnProperty.call(message, "options")) + $root.google.protobuf.ServiceOptions.encode(message.options, writer.uint32(/* id 3, wireType 2 =*/26).fork()).ldelim(); + return writer; + }; + + /** + * Encodes the specified ServiceDescriptorProto message, length delimited. Does not implicitly {@link google.protobuf.ServiceDescriptorProto.verify|verify} messages. + * @function encodeDelimited + * @memberof google.protobuf.ServiceDescriptorProto + * @static + * @param {google.protobuf.IServiceDescriptorProto} message ServiceDescriptorProto message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + ServiceDescriptorProto.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a ServiceDescriptorProto message from the specified reader or buffer. + * @function decode + * @memberof google.protobuf.ServiceDescriptorProto + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.protobuf.ServiceDescriptorProto} ServiceDescriptorProto + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + ServiceDescriptorProto.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.protobuf.ServiceDescriptorProto(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.name = reader.string(); + break; + case 2: + if (!(message.method && message.method.length)) + message.method = []; + message.method.push($root.google.protobuf.MethodDescriptorProto.decode(reader, reader.uint32())); + break; + case 3: + message.options = $root.google.protobuf.ServiceOptions.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a ServiceDescriptorProto message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.protobuf.ServiceDescriptorProto + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.protobuf.ServiceDescriptorProto} ServiceDescriptorProto + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + ServiceDescriptorProto.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a ServiceDescriptorProto message. + * @function verify + * @memberof google.protobuf.ServiceDescriptorProto + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + ServiceDescriptorProto.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.name != null && message.hasOwnProperty("name")) + if (!$util.isString(message.name)) + return "name: string expected"; + if (message.method != null && message.hasOwnProperty("method")) { + if (!Array.isArray(message.method)) + return "method: array expected"; + for (var i = 0; i < message.method.length; ++i) { + var error = $root.google.protobuf.MethodDescriptorProto.verify(message.method[i]); + if (error) + return "method." + error; + } + } + if (message.options != null && message.hasOwnProperty("options")) { + var error = $root.google.protobuf.ServiceOptions.verify(message.options); + if (error) + return "options." + error; + } + return null; + }; + + /** + * Creates a ServiceDescriptorProto message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.protobuf.ServiceDescriptorProto + * @static + * @param {Object.} object Plain object + * @returns {google.protobuf.ServiceDescriptorProto} ServiceDescriptorProto + */ + ServiceDescriptorProto.fromObject = function fromObject(object) { + if (object instanceof $root.google.protobuf.ServiceDescriptorProto) + return object; + var message = new $root.google.protobuf.ServiceDescriptorProto(); + if (object.name != null) + message.name = String(object.name); + if (object.method) { + if (!Array.isArray(object.method)) + throw TypeError(".google.protobuf.ServiceDescriptorProto.method: array expected"); + message.method = []; + for (var i = 0; i < object.method.length; ++i) { + if (typeof object.method[i] !== "object") + throw TypeError(".google.protobuf.ServiceDescriptorProto.method: object expected"); + message.method[i] = $root.google.protobuf.MethodDescriptorProto.fromObject(object.method[i]); + } + } + if (object.options != null) { + if (typeof object.options !== "object") + throw TypeError(".google.protobuf.ServiceDescriptorProto.options: object expected"); + message.options = $root.google.protobuf.ServiceOptions.fromObject(object.options); + } + return message; + }; + + /** + * Creates a plain object from a ServiceDescriptorProto message. Also converts values to other types if specified. + * @function toObject + * @memberof google.protobuf.ServiceDescriptorProto + * @static + * @param {google.protobuf.ServiceDescriptorProto} message ServiceDescriptorProto + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + ServiceDescriptorProto.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.arrays || options.defaults) + object.method = []; + if (options.defaults) { + object.name = ""; + object.options = null; + } + if (message.name != null && message.hasOwnProperty("name")) + object.name = message.name; + if (message.method && message.method.length) { + object.method = []; + for (var j = 0; j < message.method.length; ++j) + object.method[j] = $root.google.protobuf.MethodDescriptorProto.toObject(message.method[j], options); + } + if (message.options != null && message.hasOwnProperty("options")) + object.options = $root.google.protobuf.ServiceOptions.toObject(message.options, options); + return object; + }; + + /** + * Converts this ServiceDescriptorProto to JSON. + * @function toJSON + * @memberof google.protobuf.ServiceDescriptorProto + * @instance + * @returns {Object.} JSON object + */ + ServiceDescriptorProto.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return ServiceDescriptorProto; + })(); + + protobuf.MethodDescriptorProto = (function() { + + /** + * Properties of a MethodDescriptorProto. + * @memberof google.protobuf + * @interface IMethodDescriptorProto + * @property {string|null} [name] MethodDescriptorProto name + * @property {string|null} [inputType] MethodDescriptorProto inputType + * @property {string|null} [outputType] MethodDescriptorProto outputType + * @property {google.protobuf.IMethodOptions|null} [options] MethodDescriptorProto options + * @property {boolean|null} [clientStreaming] MethodDescriptorProto clientStreaming + * @property {boolean|null} [serverStreaming] MethodDescriptorProto serverStreaming + */ + + /** + * Constructs a new MethodDescriptorProto. + * @memberof google.protobuf + * @classdesc Represents a MethodDescriptorProto. + * @implements IMethodDescriptorProto + * @constructor + * @param {google.protobuf.IMethodDescriptorProto=} [properties] Properties to set + */ + function MethodDescriptorProto(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]]; + } + + /** + * MethodDescriptorProto name. + * @member {string} name + * @memberof google.protobuf.MethodDescriptorProto + * @instance + */ + MethodDescriptorProto.prototype.name = ""; + + /** + * MethodDescriptorProto inputType. + * @member {string} inputType + * @memberof google.protobuf.MethodDescriptorProto + * @instance + */ + MethodDescriptorProto.prototype.inputType = ""; + + /** + * MethodDescriptorProto outputType. + * @member {string} outputType + * @memberof google.protobuf.MethodDescriptorProto + * @instance + */ + MethodDescriptorProto.prototype.outputType = ""; + + /** + * MethodDescriptorProto options. + * @member {google.protobuf.IMethodOptions|null|undefined} options + * @memberof google.protobuf.MethodDescriptorProto + * @instance + */ + MethodDescriptorProto.prototype.options = null; + + /** + * MethodDescriptorProto clientStreaming. + * @member {boolean} clientStreaming + * @memberof google.protobuf.MethodDescriptorProto + * @instance + */ + MethodDescriptorProto.prototype.clientStreaming = false; + + /** + * MethodDescriptorProto serverStreaming. + * @member {boolean} serverStreaming + * @memberof google.protobuf.MethodDescriptorProto + * @instance + */ + MethodDescriptorProto.prototype.serverStreaming = false; + + /** + * Creates a new MethodDescriptorProto instance using the specified properties. + * @function create + * @memberof google.protobuf.MethodDescriptorProto + * @static + * @param {google.protobuf.IMethodDescriptorProto=} [properties] Properties to set + * @returns {google.protobuf.MethodDescriptorProto} MethodDescriptorProto instance + */ + MethodDescriptorProto.create = function create(properties) { + return new MethodDescriptorProto(properties); + }; + + /** + * Encodes the specified MethodDescriptorProto message. Does not implicitly {@link google.protobuf.MethodDescriptorProto.verify|verify} messages. + * @function encode + * @memberof google.protobuf.MethodDescriptorProto + * @static + * @param {google.protobuf.IMethodDescriptorProto} message MethodDescriptorProto message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + MethodDescriptorProto.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.name != null && Object.hasOwnProperty.call(message, "name")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.name); + if (message.inputType != null && Object.hasOwnProperty.call(message, "inputType")) + writer.uint32(/* id 2, wireType 2 =*/18).string(message.inputType); + if (message.outputType != null && Object.hasOwnProperty.call(message, "outputType")) + writer.uint32(/* id 3, wireType 2 =*/26).string(message.outputType); + if (message.options != null && Object.hasOwnProperty.call(message, "options")) + $root.google.protobuf.MethodOptions.encode(message.options, writer.uint32(/* id 4, wireType 2 =*/34).fork()).ldelim(); + if (message.clientStreaming != null && Object.hasOwnProperty.call(message, "clientStreaming")) + writer.uint32(/* id 5, wireType 0 =*/40).bool(message.clientStreaming); + if (message.serverStreaming != null && Object.hasOwnProperty.call(message, "serverStreaming")) + writer.uint32(/* id 6, wireType 0 =*/48).bool(message.serverStreaming); + return writer; + }; + + /** + * Encodes the specified MethodDescriptorProto message, length delimited. Does not implicitly {@link google.protobuf.MethodDescriptorProto.verify|verify} messages. + * @function encodeDelimited + * @memberof google.protobuf.MethodDescriptorProto + * @static + * @param {google.protobuf.IMethodDescriptorProto} message MethodDescriptorProto message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + MethodDescriptorProto.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a MethodDescriptorProto message from the specified reader or buffer. + * @function decode + * @memberof google.protobuf.MethodDescriptorProto + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.protobuf.MethodDescriptorProto} MethodDescriptorProto + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + MethodDescriptorProto.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.protobuf.MethodDescriptorProto(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.name = reader.string(); + break; + case 2: + message.inputType = reader.string(); + break; + case 3: + message.outputType = reader.string(); + break; + case 4: + message.options = $root.google.protobuf.MethodOptions.decode(reader, reader.uint32()); + break; + case 5: + message.clientStreaming = reader.bool(); + break; + case 6: + message.serverStreaming = reader.bool(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a MethodDescriptorProto message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.protobuf.MethodDescriptorProto + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.protobuf.MethodDescriptorProto} MethodDescriptorProto + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + MethodDescriptorProto.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a MethodDescriptorProto message. + * @function verify + * @memberof google.protobuf.MethodDescriptorProto + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + MethodDescriptorProto.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.name != null && message.hasOwnProperty("name")) + if (!$util.isString(message.name)) + return "name: string expected"; + if (message.inputType != null && message.hasOwnProperty("inputType")) + if (!$util.isString(message.inputType)) + return "inputType: string expected"; + if (message.outputType != null && message.hasOwnProperty("outputType")) + if (!$util.isString(message.outputType)) + return "outputType: string expected"; + if (message.options != null && message.hasOwnProperty("options")) { + var error = $root.google.protobuf.MethodOptions.verify(message.options); + if (error) + return "options." + error; + } + if (message.clientStreaming != null && message.hasOwnProperty("clientStreaming")) + if (typeof message.clientStreaming !== "boolean") + return "clientStreaming: boolean expected"; + if (message.serverStreaming != null && message.hasOwnProperty("serverStreaming")) + if (typeof message.serverStreaming !== "boolean") + return "serverStreaming: boolean expected"; + return null; + }; + + /** + * Creates a MethodDescriptorProto message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.protobuf.MethodDescriptorProto + * @static + * @param {Object.} object Plain object + * @returns {google.protobuf.MethodDescriptorProto} MethodDescriptorProto + */ + MethodDescriptorProto.fromObject = function fromObject(object) { + if (object instanceof $root.google.protobuf.MethodDescriptorProto) + return object; + var message = new $root.google.protobuf.MethodDescriptorProto(); + if (object.name != null) + message.name = String(object.name); + if (object.inputType != null) + message.inputType = String(object.inputType); + if (object.outputType != null) + message.outputType = String(object.outputType); + if (object.options != null) { + if (typeof object.options !== "object") + throw TypeError(".google.protobuf.MethodDescriptorProto.options: object expected"); + message.options = $root.google.protobuf.MethodOptions.fromObject(object.options); + } + if (object.clientStreaming != null) + message.clientStreaming = Boolean(object.clientStreaming); + if (object.serverStreaming != null) + message.serverStreaming = Boolean(object.serverStreaming); + return message; + }; + + /** + * Creates a plain object from a MethodDescriptorProto message. Also converts values to other types if specified. + * @function toObject + * @memberof google.protobuf.MethodDescriptorProto + * @static + * @param {google.protobuf.MethodDescriptorProto} message MethodDescriptorProto + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + MethodDescriptorProto.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.name = ""; + object.inputType = ""; + object.outputType = ""; + object.options = null; + object.clientStreaming = false; + object.serverStreaming = false; + } + if (message.name != null && message.hasOwnProperty("name")) + object.name = message.name; + if (message.inputType != null && message.hasOwnProperty("inputType")) + object.inputType = message.inputType; + if (message.outputType != null && message.hasOwnProperty("outputType")) + object.outputType = message.outputType; + if (message.options != null && message.hasOwnProperty("options")) + object.options = $root.google.protobuf.MethodOptions.toObject(message.options, options); + if (message.clientStreaming != null && message.hasOwnProperty("clientStreaming")) + object.clientStreaming = message.clientStreaming; + if (message.serverStreaming != null && message.hasOwnProperty("serverStreaming")) + object.serverStreaming = message.serverStreaming; + return object; + }; + + /** + * Converts this MethodDescriptorProto to JSON. + * @function toJSON + * @memberof google.protobuf.MethodDescriptorProto + * @instance + * @returns {Object.} JSON object + */ + MethodDescriptorProto.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return MethodDescriptorProto; + })(); + + protobuf.FileOptions = (function() { + + /** + * Properties of a FileOptions. + * @memberof google.protobuf + * @interface IFileOptions + * @property {string|null} [javaPackage] FileOptions javaPackage + * @property {string|null} [javaOuterClassname] FileOptions javaOuterClassname + * @property {boolean|null} [javaMultipleFiles] FileOptions javaMultipleFiles + * @property {boolean|null} [javaGenerateEqualsAndHash] FileOptions javaGenerateEqualsAndHash + * @property {boolean|null} [javaStringCheckUtf8] FileOptions javaStringCheckUtf8 + * @property {google.protobuf.FileOptions.OptimizeMode|null} [optimizeFor] FileOptions optimizeFor + * @property {string|null} [goPackage] FileOptions goPackage + * @property {boolean|null} [ccGenericServices] FileOptions ccGenericServices + * @property {boolean|null} [javaGenericServices] FileOptions javaGenericServices + * @property {boolean|null} [pyGenericServices] FileOptions pyGenericServices + * @property {boolean|null} [phpGenericServices] FileOptions phpGenericServices + * @property {boolean|null} [deprecated] FileOptions deprecated + * @property {boolean|null} [ccEnableArenas] FileOptions ccEnableArenas + * @property {string|null} [objcClassPrefix] FileOptions objcClassPrefix + * @property {string|null} [csharpNamespace] FileOptions csharpNamespace + * @property {string|null} [swiftPrefix] FileOptions swiftPrefix + * @property {string|null} [phpClassPrefix] FileOptions phpClassPrefix + * @property {string|null} [phpNamespace] FileOptions phpNamespace + * @property {string|null} [phpMetadataNamespace] FileOptions phpMetadataNamespace + * @property {string|null} [rubyPackage] FileOptions rubyPackage + * @property {Array.|null} [uninterpretedOption] FileOptions uninterpretedOption + * @property {Array.|null} [".google.api.resourceDefinition"] FileOptions .google.api.resourceDefinition + */ + + /** + * Constructs a new FileOptions. + * @memberof google.protobuf + * @classdesc Represents a FileOptions. + * @implements IFileOptions + * @constructor + * @param {google.protobuf.IFileOptions=} [properties] Properties to set + */ + function FileOptions(properties) { + this.uninterpretedOption = []; + this[".google.api.resourceDefinition"] = []; + 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]]; + } + + /** + * FileOptions javaPackage. + * @member {string} javaPackage + * @memberof google.protobuf.FileOptions + * @instance + */ + FileOptions.prototype.javaPackage = ""; + + /** + * FileOptions javaOuterClassname. + * @member {string} javaOuterClassname + * @memberof google.protobuf.FileOptions + * @instance + */ + FileOptions.prototype.javaOuterClassname = ""; + + /** + * FileOptions javaMultipleFiles. + * @member {boolean} javaMultipleFiles + * @memberof google.protobuf.FileOptions + * @instance + */ + FileOptions.prototype.javaMultipleFiles = false; + + /** + * FileOptions javaGenerateEqualsAndHash. + * @member {boolean} javaGenerateEqualsAndHash + * @memberof google.protobuf.FileOptions + * @instance + */ + FileOptions.prototype.javaGenerateEqualsAndHash = false; + + /** + * FileOptions javaStringCheckUtf8. + * @member {boolean} javaStringCheckUtf8 + * @memberof google.protobuf.FileOptions + * @instance + */ + FileOptions.prototype.javaStringCheckUtf8 = false; + + /** + * FileOptions optimizeFor. + * @member {google.protobuf.FileOptions.OptimizeMode} optimizeFor + * @memberof google.protobuf.FileOptions + * @instance + */ + FileOptions.prototype.optimizeFor = 1; + + /** + * FileOptions goPackage. + * @member {string} goPackage + * @memberof google.protobuf.FileOptions + * @instance + */ + FileOptions.prototype.goPackage = ""; + + /** + * FileOptions ccGenericServices. + * @member {boolean} ccGenericServices + * @memberof google.protobuf.FileOptions + * @instance + */ + FileOptions.prototype.ccGenericServices = false; + + /** + * FileOptions javaGenericServices. + * @member {boolean} javaGenericServices + * @memberof google.protobuf.FileOptions + * @instance + */ + FileOptions.prototype.javaGenericServices = false; + + /** + * FileOptions pyGenericServices. + * @member {boolean} pyGenericServices + * @memberof google.protobuf.FileOptions + * @instance + */ + FileOptions.prototype.pyGenericServices = false; + + /** + * FileOptions phpGenericServices. + * @member {boolean} phpGenericServices + * @memberof google.protobuf.FileOptions + * @instance + */ + FileOptions.prototype.phpGenericServices = false; + + /** + * FileOptions deprecated. + * @member {boolean} deprecated + * @memberof google.protobuf.FileOptions + * @instance + */ + FileOptions.prototype.deprecated = false; + + /** + * FileOptions ccEnableArenas. + * @member {boolean} ccEnableArenas + * @memberof google.protobuf.FileOptions + * @instance + */ + FileOptions.prototype.ccEnableArenas = true; + + /** + * FileOptions objcClassPrefix. + * @member {string} objcClassPrefix + * @memberof google.protobuf.FileOptions + * @instance + */ + FileOptions.prototype.objcClassPrefix = ""; + + /** + * FileOptions csharpNamespace. + * @member {string} csharpNamespace + * @memberof google.protobuf.FileOptions + * @instance + */ + FileOptions.prototype.csharpNamespace = ""; + + /** + * FileOptions swiftPrefix. + * @member {string} swiftPrefix + * @memberof google.protobuf.FileOptions + * @instance + */ + FileOptions.prototype.swiftPrefix = ""; + + /** + * FileOptions phpClassPrefix. + * @member {string} phpClassPrefix + * @memberof google.protobuf.FileOptions + * @instance + */ + FileOptions.prototype.phpClassPrefix = ""; + + /** + * FileOptions phpNamespace. + * @member {string} phpNamespace + * @memberof google.protobuf.FileOptions + * @instance + */ + FileOptions.prototype.phpNamespace = ""; + + /** + * FileOptions phpMetadataNamespace. + * @member {string} phpMetadataNamespace + * @memberof google.protobuf.FileOptions + * @instance + */ + FileOptions.prototype.phpMetadataNamespace = ""; + + /** + * FileOptions rubyPackage. + * @member {string} rubyPackage + * @memberof google.protobuf.FileOptions + * @instance + */ + FileOptions.prototype.rubyPackage = ""; + + /** + * FileOptions uninterpretedOption. + * @member {Array.} uninterpretedOption + * @memberof google.protobuf.FileOptions + * @instance + */ + FileOptions.prototype.uninterpretedOption = $util.emptyArray; + + /** + * FileOptions .google.api.resourceDefinition. + * @member {Array.} .google.api.resourceDefinition + * @memberof google.protobuf.FileOptions + * @instance + */ + FileOptions.prototype[".google.api.resourceDefinition"] = $util.emptyArray; + + /** + * Creates a new FileOptions instance using the specified properties. + * @function create + * @memberof google.protobuf.FileOptions + * @static + * @param {google.protobuf.IFileOptions=} [properties] Properties to set + * @returns {google.protobuf.FileOptions} FileOptions instance + */ + FileOptions.create = function create(properties) { + return new FileOptions(properties); + }; + + /** + * Encodes the specified FileOptions message. Does not implicitly {@link google.protobuf.FileOptions.verify|verify} messages. + * @function encode + * @memberof google.protobuf.FileOptions + * @static + * @param {google.protobuf.IFileOptions} message FileOptions message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + FileOptions.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.javaPackage != null && Object.hasOwnProperty.call(message, "javaPackage")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.javaPackage); + if (message.javaOuterClassname != null && Object.hasOwnProperty.call(message, "javaOuterClassname")) + writer.uint32(/* id 8, wireType 2 =*/66).string(message.javaOuterClassname); + if (message.optimizeFor != null && Object.hasOwnProperty.call(message, "optimizeFor")) + writer.uint32(/* id 9, wireType 0 =*/72).int32(message.optimizeFor); + if (message.javaMultipleFiles != null && Object.hasOwnProperty.call(message, "javaMultipleFiles")) + writer.uint32(/* id 10, wireType 0 =*/80).bool(message.javaMultipleFiles); + if (message.goPackage != null && Object.hasOwnProperty.call(message, "goPackage")) + writer.uint32(/* id 11, wireType 2 =*/90).string(message.goPackage); + if (message.ccGenericServices != null && Object.hasOwnProperty.call(message, "ccGenericServices")) + writer.uint32(/* id 16, wireType 0 =*/128).bool(message.ccGenericServices); + if (message.javaGenericServices != null && Object.hasOwnProperty.call(message, "javaGenericServices")) + writer.uint32(/* id 17, wireType 0 =*/136).bool(message.javaGenericServices); + if (message.pyGenericServices != null && Object.hasOwnProperty.call(message, "pyGenericServices")) + writer.uint32(/* id 18, wireType 0 =*/144).bool(message.pyGenericServices); + if (message.javaGenerateEqualsAndHash != null && Object.hasOwnProperty.call(message, "javaGenerateEqualsAndHash")) + writer.uint32(/* id 20, wireType 0 =*/160).bool(message.javaGenerateEqualsAndHash); + if (message.deprecated != null && Object.hasOwnProperty.call(message, "deprecated")) + writer.uint32(/* id 23, wireType 0 =*/184).bool(message.deprecated); + if (message.javaStringCheckUtf8 != null && Object.hasOwnProperty.call(message, "javaStringCheckUtf8")) + writer.uint32(/* id 27, wireType 0 =*/216).bool(message.javaStringCheckUtf8); + if (message.ccEnableArenas != null && Object.hasOwnProperty.call(message, "ccEnableArenas")) + writer.uint32(/* id 31, wireType 0 =*/248).bool(message.ccEnableArenas); + if (message.objcClassPrefix != null && Object.hasOwnProperty.call(message, "objcClassPrefix")) + writer.uint32(/* id 36, wireType 2 =*/290).string(message.objcClassPrefix); + if (message.csharpNamespace != null && Object.hasOwnProperty.call(message, "csharpNamespace")) + writer.uint32(/* id 37, wireType 2 =*/298).string(message.csharpNamespace); + if (message.swiftPrefix != null && Object.hasOwnProperty.call(message, "swiftPrefix")) + writer.uint32(/* id 39, wireType 2 =*/314).string(message.swiftPrefix); + if (message.phpClassPrefix != null && Object.hasOwnProperty.call(message, "phpClassPrefix")) + writer.uint32(/* id 40, wireType 2 =*/322).string(message.phpClassPrefix); + if (message.phpNamespace != null && Object.hasOwnProperty.call(message, "phpNamespace")) + writer.uint32(/* id 41, wireType 2 =*/330).string(message.phpNamespace); + if (message.phpGenericServices != null && Object.hasOwnProperty.call(message, "phpGenericServices")) + writer.uint32(/* id 42, wireType 0 =*/336).bool(message.phpGenericServices); + if (message.phpMetadataNamespace != null && Object.hasOwnProperty.call(message, "phpMetadataNamespace")) + writer.uint32(/* id 44, wireType 2 =*/354).string(message.phpMetadataNamespace); + if (message.rubyPackage != null && Object.hasOwnProperty.call(message, "rubyPackage")) + writer.uint32(/* id 45, wireType 2 =*/362).string(message.rubyPackage); + if (message.uninterpretedOption != null && message.uninterpretedOption.length) + for (var i = 0; i < message.uninterpretedOption.length; ++i) + $root.google.protobuf.UninterpretedOption.encode(message.uninterpretedOption[i], writer.uint32(/* id 999, wireType 2 =*/7994).fork()).ldelim(); + if (message[".google.api.resourceDefinition"] != null && message[".google.api.resourceDefinition"].length) + for (var i = 0; i < message[".google.api.resourceDefinition"].length; ++i) + $root.google.api.ResourceDescriptor.encode(message[".google.api.resourceDefinition"][i], writer.uint32(/* id 1053, wireType 2 =*/8426).fork()).ldelim(); + return writer; + }; + + /** + * Encodes the specified FileOptions message, length delimited. Does not implicitly {@link google.protobuf.FileOptions.verify|verify} messages. + * @function encodeDelimited + * @memberof google.protobuf.FileOptions + * @static + * @param {google.protobuf.IFileOptions} message FileOptions message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + FileOptions.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a FileOptions message from the specified reader or buffer. + * @function decode + * @memberof google.protobuf.FileOptions + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.protobuf.FileOptions} FileOptions + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + FileOptions.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.protobuf.FileOptions(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.javaPackage = reader.string(); + break; + case 8: + message.javaOuterClassname = reader.string(); + break; + case 10: + message.javaMultipleFiles = reader.bool(); + break; + case 20: + message.javaGenerateEqualsAndHash = reader.bool(); + break; + case 27: + message.javaStringCheckUtf8 = reader.bool(); + break; + case 9: + message.optimizeFor = reader.int32(); + break; + case 11: + message.goPackage = reader.string(); + break; + case 16: + message.ccGenericServices = reader.bool(); + break; + case 17: + message.javaGenericServices = reader.bool(); + break; + case 18: + message.pyGenericServices = reader.bool(); + break; + case 42: + message.phpGenericServices = reader.bool(); + break; + case 23: + message.deprecated = reader.bool(); + break; + case 31: + message.ccEnableArenas = reader.bool(); + break; + case 36: + message.objcClassPrefix = reader.string(); + break; + case 37: + message.csharpNamespace = reader.string(); + break; + case 39: + message.swiftPrefix = reader.string(); + break; + case 40: + message.phpClassPrefix = reader.string(); + break; + case 41: + message.phpNamespace = reader.string(); + break; + case 44: + message.phpMetadataNamespace = reader.string(); + break; + case 45: + message.rubyPackage = reader.string(); + break; + case 999: + if (!(message.uninterpretedOption && message.uninterpretedOption.length)) + message.uninterpretedOption = []; + message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32())); + break; + case 1053: + if (!(message[".google.api.resourceDefinition"] && message[".google.api.resourceDefinition"].length)) + message[".google.api.resourceDefinition"] = []; + message[".google.api.resourceDefinition"].push($root.google.api.ResourceDescriptor.decode(reader, reader.uint32())); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a FileOptions message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.protobuf.FileOptions + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.protobuf.FileOptions} FileOptions + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + FileOptions.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a FileOptions message. + * @function verify + * @memberof google.protobuf.FileOptions + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + FileOptions.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.javaPackage != null && message.hasOwnProperty("javaPackage")) + if (!$util.isString(message.javaPackage)) + return "javaPackage: string expected"; + if (message.javaOuterClassname != null && message.hasOwnProperty("javaOuterClassname")) + if (!$util.isString(message.javaOuterClassname)) + return "javaOuterClassname: string expected"; + if (message.javaMultipleFiles != null && message.hasOwnProperty("javaMultipleFiles")) + if (typeof message.javaMultipleFiles !== "boolean") + return "javaMultipleFiles: boolean expected"; + if (message.javaGenerateEqualsAndHash != null && message.hasOwnProperty("javaGenerateEqualsAndHash")) + if (typeof message.javaGenerateEqualsAndHash !== "boolean") + return "javaGenerateEqualsAndHash: boolean expected"; + if (message.javaStringCheckUtf8 != null && message.hasOwnProperty("javaStringCheckUtf8")) + if (typeof message.javaStringCheckUtf8 !== "boolean") + return "javaStringCheckUtf8: boolean expected"; + if (message.optimizeFor != null && message.hasOwnProperty("optimizeFor")) + switch (message.optimizeFor) { + default: + return "optimizeFor: enum value expected"; + case 1: + case 2: + case 3: + break; + } + if (message.goPackage != null && message.hasOwnProperty("goPackage")) + if (!$util.isString(message.goPackage)) + return "goPackage: string expected"; + if (message.ccGenericServices != null && message.hasOwnProperty("ccGenericServices")) + if (typeof message.ccGenericServices !== "boolean") + return "ccGenericServices: boolean expected"; + if (message.javaGenericServices != null && message.hasOwnProperty("javaGenericServices")) + if (typeof message.javaGenericServices !== "boolean") + return "javaGenericServices: boolean expected"; + if (message.pyGenericServices != null && message.hasOwnProperty("pyGenericServices")) + if (typeof message.pyGenericServices !== "boolean") + return "pyGenericServices: boolean expected"; + if (message.phpGenericServices != null && message.hasOwnProperty("phpGenericServices")) + if (typeof message.phpGenericServices !== "boolean") + return "phpGenericServices: boolean expected"; + if (message.deprecated != null && message.hasOwnProperty("deprecated")) + if (typeof message.deprecated !== "boolean") + return "deprecated: boolean expected"; + if (message.ccEnableArenas != null && message.hasOwnProperty("ccEnableArenas")) + if (typeof message.ccEnableArenas !== "boolean") + return "ccEnableArenas: boolean expected"; + if (message.objcClassPrefix != null && message.hasOwnProperty("objcClassPrefix")) + if (!$util.isString(message.objcClassPrefix)) + return "objcClassPrefix: string expected"; + if (message.csharpNamespace != null && message.hasOwnProperty("csharpNamespace")) + if (!$util.isString(message.csharpNamespace)) + return "csharpNamespace: string expected"; + if (message.swiftPrefix != null && message.hasOwnProperty("swiftPrefix")) + if (!$util.isString(message.swiftPrefix)) + return "swiftPrefix: string expected"; + if (message.phpClassPrefix != null && message.hasOwnProperty("phpClassPrefix")) + if (!$util.isString(message.phpClassPrefix)) + return "phpClassPrefix: string expected"; + if (message.phpNamespace != null && message.hasOwnProperty("phpNamespace")) + if (!$util.isString(message.phpNamespace)) + return "phpNamespace: string expected"; + if (message.phpMetadataNamespace != null && message.hasOwnProperty("phpMetadataNamespace")) + if (!$util.isString(message.phpMetadataNamespace)) + return "phpMetadataNamespace: string expected"; + if (message.rubyPackage != null && message.hasOwnProperty("rubyPackage")) + if (!$util.isString(message.rubyPackage)) + return "rubyPackage: string expected"; + if (message.uninterpretedOption != null && message.hasOwnProperty("uninterpretedOption")) { + if (!Array.isArray(message.uninterpretedOption)) + return "uninterpretedOption: array expected"; + for (var i = 0; i < message.uninterpretedOption.length; ++i) { + var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i]); + if (error) + return "uninterpretedOption." + error; + } + } + if (message[".google.api.resourceDefinition"] != null && message.hasOwnProperty(".google.api.resourceDefinition")) { + if (!Array.isArray(message[".google.api.resourceDefinition"])) + return ".google.api.resourceDefinition: array expected"; + for (var i = 0; i < message[".google.api.resourceDefinition"].length; ++i) { + var error = $root.google.api.ResourceDescriptor.verify(message[".google.api.resourceDefinition"][i]); + if (error) + return ".google.api.resourceDefinition." + error; + } + } + return null; + }; + + /** + * Creates a FileOptions message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.protobuf.FileOptions + * @static + * @param {Object.} object Plain object + * @returns {google.protobuf.FileOptions} FileOptions + */ + FileOptions.fromObject = function fromObject(object) { + if (object instanceof $root.google.protobuf.FileOptions) + return object; + var message = new $root.google.protobuf.FileOptions(); + if (object.javaPackage != null) + message.javaPackage = String(object.javaPackage); + if (object.javaOuterClassname != null) + message.javaOuterClassname = String(object.javaOuterClassname); + if (object.javaMultipleFiles != null) + message.javaMultipleFiles = Boolean(object.javaMultipleFiles); + if (object.javaGenerateEqualsAndHash != null) + message.javaGenerateEqualsAndHash = Boolean(object.javaGenerateEqualsAndHash); + if (object.javaStringCheckUtf8 != null) + message.javaStringCheckUtf8 = Boolean(object.javaStringCheckUtf8); + switch (object.optimizeFor) { + case "SPEED": + case 1: + message.optimizeFor = 1; + break; + case "CODE_SIZE": + case 2: + message.optimizeFor = 2; + break; + case "LITE_RUNTIME": + case 3: + message.optimizeFor = 3; + break; + } + if (object.goPackage != null) + message.goPackage = String(object.goPackage); + if (object.ccGenericServices != null) + message.ccGenericServices = Boolean(object.ccGenericServices); + if (object.javaGenericServices != null) + message.javaGenericServices = Boolean(object.javaGenericServices); + if (object.pyGenericServices != null) + message.pyGenericServices = Boolean(object.pyGenericServices); + if (object.phpGenericServices != null) + message.phpGenericServices = Boolean(object.phpGenericServices); + if (object.deprecated != null) + message.deprecated = Boolean(object.deprecated); + if (object.ccEnableArenas != null) + message.ccEnableArenas = Boolean(object.ccEnableArenas); + if (object.objcClassPrefix != null) + message.objcClassPrefix = String(object.objcClassPrefix); + if (object.csharpNamespace != null) + message.csharpNamespace = String(object.csharpNamespace); + if (object.swiftPrefix != null) + message.swiftPrefix = String(object.swiftPrefix); + if (object.phpClassPrefix != null) + message.phpClassPrefix = String(object.phpClassPrefix); + if (object.phpNamespace != null) + message.phpNamespace = String(object.phpNamespace); + if (object.phpMetadataNamespace != null) + message.phpMetadataNamespace = String(object.phpMetadataNamespace); + if (object.rubyPackage != null) + message.rubyPackage = String(object.rubyPackage); + if (object.uninterpretedOption) { + if (!Array.isArray(object.uninterpretedOption)) + throw TypeError(".google.protobuf.FileOptions.uninterpretedOption: array expected"); + message.uninterpretedOption = []; + for (var i = 0; i < object.uninterpretedOption.length; ++i) { + if (typeof object.uninterpretedOption[i] !== "object") + throw TypeError(".google.protobuf.FileOptions.uninterpretedOption: object expected"); + message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i]); + } + } + if (object[".google.api.resourceDefinition"]) { + if (!Array.isArray(object[".google.api.resourceDefinition"])) + throw TypeError(".google.protobuf.FileOptions..google.api.resourceDefinition: array expected"); + message[".google.api.resourceDefinition"] = []; + for (var i = 0; i < object[".google.api.resourceDefinition"].length; ++i) { + if (typeof object[".google.api.resourceDefinition"][i] !== "object") + throw TypeError(".google.protobuf.FileOptions..google.api.resourceDefinition: object expected"); + message[".google.api.resourceDefinition"][i] = $root.google.api.ResourceDescriptor.fromObject(object[".google.api.resourceDefinition"][i]); + } + } + return message; + }; + + /** + * Creates a plain object from a FileOptions message. Also converts values to other types if specified. + * @function toObject + * @memberof google.protobuf.FileOptions + * @static + * @param {google.protobuf.FileOptions} message FileOptions + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + FileOptions.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.arrays || options.defaults) { + object.uninterpretedOption = []; + object[".google.api.resourceDefinition"] = []; + } + if (options.defaults) { + object.javaPackage = ""; + object.javaOuterClassname = ""; + object.optimizeFor = options.enums === String ? "SPEED" : 1; + object.javaMultipleFiles = false; + object.goPackage = ""; + object.ccGenericServices = false; + object.javaGenericServices = false; + object.pyGenericServices = false; + object.javaGenerateEqualsAndHash = false; + object.deprecated = false; + object.javaStringCheckUtf8 = false; + object.ccEnableArenas = true; + object.objcClassPrefix = ""; + object.csharpNamespace = ""; + object.swiftPrefix = ""; + object.phpClassPrefix = ""; + object.phpNamespace = ""; + object.phpGenericServices = false; + object.phpMetadataNamespace = ""; + object.rubyPackage = ""; + } + if (message.javaPackage != null && message.hasOwnProperty("javaPackage")) + object.javaPackage = message.javaPackage; + if (message.javaOuterClassname != null && message.hasOwnProperty("javaOuterClassname")) + object.javaOuterClassname = message.javaOuterClassname; + if (message.optimizeFor != null && message.hasOwnProperty("optimizeFor")) + object.optimizeFor = options.enums === String ? $root.google.protobuf.FileOptions.OptimizeMode[message.optimizeFor] : message.optimizeFor; + if (message.javaMultipleFiles != null && message.hasOwnProperty("javaMultipleFiles")) + object.javaMultipleFiles = message.javaMultipleFiles; + if (message.goPackage != null && message.hasOwnProperty("goPackage")) + object.goPackage = message.goPackage; + if (message.ccGenericServices != null && message.hasOwnProperty("ccGenericServices")) + object.ccGenericServices = message.ccGenericServices; + if (message.javaGenericServices != null && message.hasOwnProperty("javaGenericServices")) + object.javaGenericServices = message.javaGenericServices; + if (message.pyGenericServices != null && message.hasOwnProperty("pyGenericServices")) + object.pyGenericServices = message.pyGenericServices; + if (message.javaGenerateEqualsAndHash != null && message.hasOwnProperty("javaGenerateEqualsAndHash")) + object.javaGenerateEqualsAndHash = message.javaGenerateEqualsAndHash; + if (message.deprecated != null && message.hasOwnProperty("deprecated")) + object.deprecated = message.deprecated; + if (message.javaStringCheckUtf8 != null && message.hasOwnProperty("javaStringCheckUtf8")) + object.javaStringCheckUtf8 = message.javaStringCheckUtf8; + if (message.ccEnableArenas != null && message.hasOwnProperty("ccEnableArenas")) + object.ccEnableArenas = message.ccEnableArenas; + if (message.objcClassPrefix != null && message.hasOwnProperty("objcClassPrefix")) + object.objcClassPrefix = message.objcClassPrefix; + if (message.csharpNamespace != null && message.hasOwnProperty("csharpNamespace")) + object.csharpNamespace = message.csharpNamespace; + if (message.swiftPrefix != null && message.hasOwnProperty("swiftPrefix")) + object.swiftPrefix = message.swiftPrefix; + if (message.phpClassPrefix != null && message.hasOwnProperty("phpClassPrefix")) + object.phpClassPrefix = message.phpClassPrefix; + if (message.phpNamespace != null && message.hasOwnProperty("phpNamespace")) + object.phpNamespace = message.phpNamespace; + if (message.phpGenericServices != null && message.hasOwnProperty("phpGenericServices")) + object.phpGenericServices = message.phpGenericServices; + if (message.phpMetadataNamespace != null && message.hasOwnProperty("phpMetadataNamespace")) + object.phpMetadataNamespace = message.phpMetadataNamespace; + if (message.rubyPackage != null && message.hasOwnProperty("rubyPackage")) + object.rubyPackage = message.rubyPackage; + if (message.uninterpretedOption && message.uninterpretedOption.length) { + object.uninterpretedOption = []; + for (var j = 0; j < message.uninterpretedOption.length; ++j) + object.uninterpretedOption[j] = $root.google.protobuf.UninterpretedOption.toObject(message.uninterpretedOption[j], options); + } + if (message[".google.api.resourceDefinition"] && message[".google.api.resourceDefinition"].length) { + object[".google.api.resourceDefinition"] = []; + for (var j = 0; j < message[".google.api.resourceDefinition"].length; ++j) + object[".google.api.resourceDefinition"][j] = $root.google.api.ResourceDescriptor.toObject(message[".google.api.resourceDefinition"][j], options); + } + return object; + }; + + /** + * Converts this FileOptions to JSON. + * @function toJSON + * @memberof google.protobuf.FileOptions + * @instance + * @returns {Object.} JSON object + */ + FileOptions.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + /** + * OptimizeMode enum. + * @name google.protobuf.FileOptions.OptimizeMode + * @enum {number} + * @property {number} SPEED=1 SPEED value + * @property {number} CODE_SIZE=2 CODE_SIZE value + * @property {number} LITE_RUNTIME=3 LITE_RUNTIME value + */ + FileOptions.OptimizeMode = (function() { + var valuesById = {}, values = Object.create(valuesById); + values[valuesById[1] = "SPEED"] = 1; + values[valuesById[2] = "CODE_SIZE"] = 2; + values[valuesById[3] = "LITE_RUNTIME"] = 3; + return values; + })(); + + return FileOptions; + })(); + + protobuf.MessageOptions = (function() { + + /** + * Properties of a MessageOptions. + * @memberof google.protobuf + * @interface IMessageOptions + * @property {boolean|null} [messageSetWireFormat] MessageOptions messageSetWireFormat + * @property {boolean|null} [noStandardDescriptorAccessor] MessageOptions noStandardDescriptorAccessor + * @property {boolean|null} [deprecated] MessageOptions deprecated + * @property {boolean|null} [mapEntry] MessageOptions mapEntry + * @property {Array.|null} [uninterpretedOption] MessageOptions uninterpretedOption + * @property {google.api.IResourceDescriptor|null} [".google.api.resource"] MessageOptions .google.api.resource + */ + + /** + * Constructs a new MessageOptions. + * @memberof google.protobuf + * @classdesc Represents a MessageOptions. + * @implements IMessageOptions + * @constructor + * @param {google.protobuf.IMessageOptions=} [properties] Properties to set + */ + function MessageOptions(properties) { + this.uninterpretedOption = []; + 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]]; + } + + /** + * MessageOptions messageSetWireFormat. + * @member {boolean} messageSetWireFormat + * @memberof google.protobuf.MessageOptions + * @instance + */ + MessageOptions.prototype.messageSetWireFormat = false; + + /** + * MessageOptions noStandardDescriptorAccessor. + * @member {boolean} noStandardDescriptorAccessor + * @memberof google.protobuf.MessageOptions + * @instance + */ + MessageOptions.prototype.noStandardDescriptorAccessor = false; + + /** + * MessageOptions deprecated. + * @member {boolean} deprecated + * @memberof google.protobuf.MessageOptions + * @instance + */ + MessageOptions.prototype.deprecated = false; + + /** + * MessageOptions mapEntry. + * @member {boolean} mapEntry + * @memberof google.protobuf.MessageOptions + * @instance + */ + MessageOptions.prototype.mapEntry = false; + + /** + * MessageOptions uninterpretedOption. + * @member {Array.} uninterpretedOption + * @memberof google.protobuf.MessageOptions + * @instance + */ + MessageOptions.prototype.uninterpretedOption = $util.emptyArray; + + /** + * MessageOptions .google.api.resource. + * @member {google.api.IResourceDescriptor|null|undefined} .google.api.resource + * @memberof google.protobuf.MessageOptions + * @instance + */ + MessageOptions.prototype[".google.api.resource"] = null; + + /** + * Creates a new MessageOptions instance using the specified properties. + * @function create + * @memberof google.protobuf.MessageOptions + * @static + * @param {google.protobuf.IMessageOptions=} [properties] Properties to set + * @returns {google.protobuf.MessageOptions} MessageOptions instance + */ + MessageOptions.create = function create(properties) { + return new MessageOptions(properties); + }; + + /** + * Encodes the specified MessageOptions message. Does not implicitly {@link google.protobuf.MessageOptions.verify|verify} messages. + * @function encode + * @memberof google.protobuf.MessageOptions + * @static + * @param {google.protobuf.IMessageOptions} message MessageOptions message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + MessageOptions.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.messageSetWireFormat != null && Object.hasOwnProperty.call(message, "messageSetWireFormat")) + writer.uint32(/* id 1, wireType 0 =*/8).bool(message.messageSetWireFormat); + if (message.noStandardDescriptorAccessor != null && Object.hasOwnProperty.call(message, "noStandardDescriptorAccessor")) + writer.uint32(/* id 2, wireType 0 =*/16).bool(message.noStandardDescriptorAccessor); + if (message.deprecated != null && Object.hasOwnProperty.call(message, "deprecated")) + writer.uint32(/* id 3, wireType 0 =*/24).bool(message.deprecated); + if (message.mapEntry != null && Object.hasOwnProperty.call(message, "mapEntry")) + writer.uint32(/* id 7, wireType 0 =*/56).bool(message.mapEntry); + if (message.uninterpretedOption != null && message.uninterpretedOption.length) + for (var i = 0; i < message.uninterpretedOption.length; ++i) + $root.google.protobuf.UninterpretedOption.encode(message.uninterpretedOption[i], writer.uint32(/* id 999, wireType 2 =*/7994).fork()).ldelim(); + if (message[".google.api.resource"] != null && Object.hasOwnProperty.call(message, ".google.api.resource")) + $root.google.api.ResourceDescriptor.encode(message[".google.api.resource"], writer.uint32(/* id 1053, wireType 2 =*/8426).fork()).ldelim(); + return writer; + }; + + /** + * Encodes the specified MessageOptions message, length delimited. Does not implicitly {@link google.protobuf.MessageOptions.verify|verify} messages. + * @function encodeDelimited + * @memberof google.protobuf.MessageOptions + * @static + * @param {google.protobuf.IMessageOptions} message MessageOptions message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + MessageOptions.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a MessageOptions message from the specified reader or buffer. + * @function decode + * @memberof google.protobuf.MessageOptions + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.protobuf.MessageOptions} MessageOptions + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + MessageOptions.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.protobuf.MessageOptions(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.messageSetWireFormat = reader.bool(); + break; + case 2: + message.noStandardDescriptorAccessor = reader.bool(); + break; + case 3: + message.deprecated = reader.bool(); + break; + case 7: + message.mapEntry = reader.bool(); + break; + case 999: + if (!(message.uninterpretedOption && message.uninterpretedOption.length)) + message.uninterpretedOption = []; + message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32())); + break; + case 1053: + message[".google.api.resource"] = $root.google.api.ResourceDescriptor.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a MessageOptions message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.protobuf.MessageOptions + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.protobuf.MessageOptions} MessageOptions + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + MessageOptions.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a MessageOptions message. + * @function verify + * @memberof google.protobuf.MessageOptions + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + MessageOptions.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.messageSetWireFormat != null && message.hasOwnProperty("messageSetWireFormat")) + if (typeof message.messageSetWireFormat !== "boolean") + return "messageSetWireFormat: boolean expected"; + if (message.noStandardDescriptorAccessor != null && message.hasOwnProperty("noStandardDescriptorAccessor")) + if (typeof message.noStandardDescriptorAccessor !== "boolean") + return "noStandardDescriptorAccessor: boolean expected"; + if (message.deprecated != null && message.hasOwnProperty("deprecated")) + if (typeof message.deprecated !== "boolean") + return "deprecated: boolean expected"; + if (message.mapEntry != null && message.hasOwnProperty("mapEntry")) + if (typeof message.mapEntry !== "boolean") + return "mapEntry: boolean expected"; + if (message.uninterpretedOption != null && message.hasOwnProperty("uninterpretedOption")) { + if (!Array.isArray(message.uninterpretedOption)) + return "uninterpretedOption: array expected"; + for (var i = 0; i < message.uninterpretedOption.length; ++i) { + var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i]); + if (error) + return "uninterpretedOption." + error; + } + } + if (message[".google.api.resource"] != null && message.hasOwnProperty(".google.api.resource")) { + var error = $root.google.api.ResourceDescriptor.verify(message[".google.api.resource"]); + if (error) + return ".google.api.resource." + error; + } + return null; + }; + + /** + * Creates a MessageOptions message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.protobuf.MessageOptions + * @static + * @param {Object.} object Plain object + * @returns {google.protobuf.MessageOptions} MessageOptions + */ + MessageOptions.fromObject = function fromObject(object) { + if (object instanceof $root.google.protobuf.MessageOptions) + return object; + var message = new $root.google.protobuf.MessageOptions(); + if (object.messageSetWireFormat != null) + message.messageSetWireFormat = Boolean(object.messageSetWireFormat); + if (object.noStandardDescriptorAccessor != null) + message.noStandardDescriptorAccessor = Boolean(object.noStandardDescriptorAccessor); + if (object.deprecated != null) + message.deprecated = Boolean(object.deprecated); + if (object.mapEntry != null) + message.mapEntry = Boolean(object.mapEntry); + if (object.uninterpretedOption) { + if (!Array.isArray(object.uninterpretedOption)) + throw TypeError(".google.protobuf.MessageOptions.uninterpretedOption: array expected"); + message.uninterpretedOption = []; + for (var i = 0; i < object.uninterpretedOption.length; ++i) { + if (typeof object.uninterpretedOption[i] !== "object") + throw TypeError(".google.protobuf.MessageOptions.uninterpretedOption: object expected"); + message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i]); + } + } + if (object[".google.api.resource"] != null) { + if (typeof object[".google.api.resource"] !== "object") + throw TypeError(".google.protobuf.MessageOptions..google.api.resource: object expected"); + message[".google.api.resource"] = $root.google.api.ResourceDescriptor.fromObject(object[".google.api.resource"]); + } + return message; + }; + + /** + * Creates a plain object from a MessageOptions message. Also converts values to other types if specified. + * @function toObject + * @memberof google.protobuf.MessageOptions + * @static + * @param {google.protobuf.MessageOptions} message MessageOptions + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + MessageOptions.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.arrays || options.defaults) + object.uninterpretedOption = []; + if (options.defaults) { + object.messageSetWireFormat = false; + object.noStandardDescriptorAccessor = false; + object.deprecated = false; + object.mapEntry = false; + object[".google.api.resource"] = null; + } + if (message.messageSetWireFormat != null && message.hasOwnProperty("messageSetWireFormat")) + object.messageSetWireFormat = message.messageSetWireFormat; + if (message.noStandardDescriptorAccessor != null && message.hasOwnProperty("noStandardDescriptorAccessor")) + object.noStandardDescriptorAccessor = message.noStandardDescriptorAccessor; + if (message.deprecated != null && message.hasOwnProperty("deprecated")) + object.deprecated = message.deprecated; + if (message.mapEntry != null && message.hasOwnProperty("mapEntry")) + object.mapEntry = message.mapEntry; + if (message.uninterpretedOption && message.uninterpretedOption.length) { + object.uninterpretedOption = []; + for (var j = 0; j < message.uninterpretedOption.length; ++j) + object.uninterpretedOption[j] = $root.google.protobuf.UninterpretedOption.toObject(message.uninterpretedOption[j], options); + } + if (message[".google.api.resource"] != null && message.hasOwnProperty(".google.api.resource")) + object[".google.api.resource"] = $root.google.api.ResourceDescriptor.toObject(message[".google.api.resource"], options); + return object; + }; + + /** + * Converts this MessageOptions to JSON. + * @function toJSON + * @memberof google.protobuf.MessageOptions + * @instance + * @returns {Object.} JSON object + */ + MessageOptions.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return MessageOptions; + })(); + + protobuf.FieldOptions = (function() { + + /** + * Properties of a FieldOptions. + * @memberof google.protobuf + * @interface IFieldOptions + * @property {google.protobuf.FieldOptions.CType|null} [ctype] FieldOptions ctype + * @property {boolean|null} [packed] FieldOptions packed + * @property {google.protobuf.FieldOptions.JSType|null} [jstype] FieldOptions jstype + * @property {boolean|null} [lazy] FieldOptions lazy + * @property {boolean|null} [deprecated] FieldOptions deprecated + * @property {boolean|null} [weak] FieldOptions weak + * @property {Array.|null} [uninterpretedOption] FieldOptions uninterpretedOption + * @property {Array.|null} [".google.api.fieldBehavior"] FieldOptions .google.api.fieldBehavior + * @property {google.api.IResourceReference|null} [".google.api.resourceReference"] FieldOptions .google.api.resourceReference + */ + + /** + * Constructs a new FieldOptions. + * @memberof google.protobuf + * @classdesc Represents a FieldOptions. + * @implements IFieldOptions + * @constructor + * @param {google.protobuf.IFieldOptions=} [properties] Properties to set + */ + function FieldOptions(properties) { + this.uninterpretedOption = []; + this[".google.api.fieldBehavior"] = []; + 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]]; + } + + /** + * FieldOptions ctype. + * @member {google.protobuf.FieldOptions.CType} ctype + * @memberof google.protobuf.FieldOptions + * @instance + */ + FieldOptions.prototype.ctype = 0; + + /** + * FieldOptions packed. + * @member {boolean} packed + * @memberof google.protobuf.FieldOptions + * @instance + */ + FieldOptions.prototype.packed = false; + + /** + * FieldOptions jstype. + * @member {google.protobuf.FieldOptions.JSType} jstype + * @memberof google.protobuf.FieldOptions + * @instance + */ + FieldOptions.prototype.jstype = 0; + + /** + * FieldOptions lazy. + * @member {boolean} lazy + * @memberof google.protobuf.FieldOptions + * @instance + */ + FieldOptions.prototype.lazy = false; + + /** + * FieldOptions deprecated. + * @member {boolean} deprecated + * @memberof google.protobuf.FieldOptions + * @instance + */ + FieldOptions.prototype.deprecated = false; + + /** + * FieldOptions weak. + * @member {boolean} weak + * @memberof google.protobuf.FieldOptions + * @instance + */ + FieldOptions.prototype.weak = false; + + /** + * FieldOptions uninterpretedOption. + * @member {Array.} uninterpretedOption + * @memberof google.protobuf.FieldOptions + * @instance + */ + FieldOptions.prototype.uninterpretedOption = $util.emptyArray; + + /** + * FieldOptions .google.api.fieldBehavior. + * @member {Array.} .google.api.fieldBehavior + * @memberof google.protobuf.FieldOptions + * @instance + */ + FieldOptions.prototype[".google.api.fieldBehavior"] = $util.emptyArray; + + /** + * FieldOptions .google.api.resourceReference. + * @member {google.api.IResourceReference|null|undefined} .google.api.resourceReference + * @memberof google.protobuf.FieldOptions + * @instance + */ + FieldOptions.prototype[".google.api.resourceReference"] = null; + + /** + * Creates a new FieldOptions instance using the specified properties. + * @function create + * @memberof google.protobuf.FieldOptions + * @static + * @param {google.protobuf.IFieldOptions=} [properties] Properties to set + * @returns {google.protobuf.FieldOptions} FieldOptions instance + */ + FieldOptions.create = function create(properties) { + return new FieldOptions(properties); + }; + + /** + * Encodes the specified FieldOptions message. Does not implicitly {@link google.protobuf.FieldOptions.verify|verify} messages. + * @function encode + * @memberof google.protobuf.FieldOptions + * @static + * @param {google.protobuf.IFieldOptions} message FieldOptions message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + FieldOptions.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.ctype != null && Object.hasOwnProperty.call(message, "ctype")) + writer.uint32(/* id 1, wireType 0 =*/8).int32(message.ctype); + if (message.packed != null && Object.hasOwnProperty.call(message, "packed")) + writer.uint32(/* id 2, wireType 0 =*/16).bool(message.packed); + if (message.deprecated != null && Object.hasOwnProperty.call(message, "deprecated")) + writer.uint32(/* id 3, wireType 0 =*/24).bool(message.deprecated); + if (message.lazy != null && Object.hasOwnProperty.call(message, "lazy")) + writer.uint32(/* id 5, wireType 0 =*/40).bool(message.lazy); + if (message.jstype != null && Object.hasOwnProperty.call(message, "jstype")) + writer.uint32(/* id 6, wireType 0 =*/48).int32(message.jstype); + if (message.weak != null && Object.hasOwnProperty.call(message, "weak")) + writer.uint32(/* id 10, wireType 0 =*/80).bool(message.weak); + if (message.uninterpretedOption != null && message.uninterpretedOption.length) + for (var i = 0; i < message.uninterpretedOption.length; ++i) + $root.google.protobuf.UninterpretedOption.encode(message.uninterpretedOption[i], writer.uint32(/* id 999, wireType 2 =*/7994).fork()).ldelim(); + if (message[".google.api.fieldBehavior"] != null && message[".google.api.fieldBehavior"].length) { + writer.uint32(/* id 1052, wireType 2 =*/8418).fork(); + for (var i = 0; i < message[".google.api.fieldBehavior"].length; ++i) + writer.int32(message[".google.api.fieldBehavior"][i]); + writer.ldelim(); + } + if (message[".google.api.resourceReference"] != null && Object.hasOwnProperty.call(message, ".google.api.resourceReference")) + $root.google.api.ResourceReference.encode(message[".google.api.resourceReference"], writer.uint32(/* id 1055, wireType 2 =*/8442).fork()).ldelim(); + return writer; + }; + + /** + * Encodes the specified FieldOptions message, length delimited. Does not implicitly {@link google.protobuf.FieldOptions.verify|verify} messages. + * @function encodeDelimited + * @memberof google.protobuf.FieldOptions + * @static + * @param {google.protobuf.IFieldOptions} message FieldOptions message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + FieldOptions.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a FieldOptions message from the specified reader or buffer. + * @function decode + * @memberof google.protobuf.FieldOptions + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.protobuf.FieldOptions} FieldOptions + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + FieldOptions.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.protobuf.FieldOptions(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.ctype = reader.int32(); + break; + case 2: + message.packed = reader.bool(); + break; + case 6: + message.jstype = reader.int32(); + break; + case 5: + message.lazy = reader.bool(); + break; + case 3: + message.deprecated = reader.bool(); + break; + case 10: + message.weak = reader.bool(); + break; + case 999: + if (!(message.uninterpretedOption && message.uninterpretedOption.length)) + message.uninterpretedOption = []; + message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32())); + break; + case 1052: + if (!(message[".google.api.fieldBehavior"] && message[".google.api.fieldBehavior"].length)) + message[".google.api.fieldBehavior"] = []; + if ((tag & 7) === 2) { + var end2 = reader.uint32() + reader.pos; + while (reader.pos < end2) + message[".google.api.fieldBehavior"].push(reader.int32()); + } else + message[".google.api.fieldBehavior"].push(reader.int32()); + break; + case 1055: + message[".google.api.resourceReference"] = $root.google.api.ResourceReference.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a FieldOptions message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.protobuf.FieldOptions + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.protobuf.FieldOptions} FieldOptions + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + FieldOptions.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a FieldOptions message. + * @function verify + * @memberof google.protobuf.FieldOptions + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + FieldOptions.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.ctype != null && message.hasOwnProperty("ctype")) + switch (message.ctype) { + default: + return "ctype: enum value expected"; + case 0: + case 1: + case 2: + break; + } + if (message.packed != null && message.hasOwnProperty("packed")) + if (typeof message.packed !== "boolean") + return "packed: boolean expected"; + if (message.jstype != null && message.hasOwnProperty("jstype")) + switch (message.jstype) { + default: + return "jstype: enum value expected"; + case 0: + case 1: + case 2: + break; + } + if (message.lazy != null && message.hasOwnProperty("lazy")) + if (typeof message.lazy !== "boolean") + return "lazy: boolean expected"; + if (message.deprecated != null && message.hasOwnProperty("deprecated")) + if (typeof message.deprecated !== "boolean") + return "deprecated: boolean expected"; + if (message.weak != null && message.hasOwnProperty("weak")) + if (typeof message.weak !== "boolean") + return "weak: boolean expected"; + if (message.uninterpretedOption != null && message.hasOwnProperty("uninterpretedOption")) { + if (!Array.isArray(message.uninterpretedOption)) + return "uninterpretedOption: array expected"; + for (var i = 0; i < message.uninterpretedOption.length; ++i) { + var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i]); + if (error) + return "uninterpretedOption." + error; + } + } + if (message[".google.api.fieldBehavior"] != null && message.hasOwnProperty(".google.api.fieldBehavior")) { + if (!Array.isArray(message[".google.api.fieldBehavior"])) + return ".google.api.fieldBehavior: array expected"; + for (var i = 0; i < message[".google.api.fieldBehavior"].length; ++i) + switch (message[".google.api.fieldBehavior"][i]) { + default: + return ".google.api.fieldBehavior: enum value[] expected"; + case 0: + case 1: + case 2: + case 3: + case 4: + case 5: + break; + } + } + if (message[".google.api.resourceReference"] != null && message.hasOwnProperty(".google.api.resourceReference")) { + var error = $root.google.api.ResourceReference.verify(message[".google.api.resourceReference"]); + if (error) + return ".google.api.resourceReference." + error; + } + return null; + }; + + /** + * Creates a FieldOptions message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.protobuf.FieldOptions + * @static + * @param {Object.} object Plain object + * @returns {google.protobuf.FieldOptions} FieldOptions + */ + FieldOptions.fromObject = function fromObject(object) { + if (object instanceof $root.google.protobuf.FieldOptions) + return object; + var message = new $root.google.protobuf.FieldOptions(); + switch (object.ctype) { + case "STRING": + case 0: + message.ctype = 0; + break; + case "CORD": + case 1: + message.ctype = 1; + break; + case "STRING_PIECE": + case 2: + message.ctype = 2; + break; + } + if (object.packed != null) + message.packed = Boolean(object.packed); + switch (object.jstype) { + case "JS_NORMAL": + case 0: + message.jstype = 0; + break; + case "JS_STRING": + case 1: + message.jstype = 1; + break; + case "JS_NUMBER": + case 2: + message.jstype = 2; + break; + } + if (object.lazy != null) + message.lazy = Boolean(object.lazy); + if (object.deprecated != null) + message.deprecated = Boolean(object.deprecated); + if (object.weak != null) + message.weak = Boolean(object.weak); + if (object.uninterpretedOption) { + if (!Array.isArray(object.uninterpretedOption)) + throw TypeError(".google.protobuf.FieldOptions.uninterpretedOption: array expected"); + message.uninterpretedOption = []; + for (var i = 0; i < object.uninterpretedOption.length; ++i) { + if (typeof object.uninterpretedOption[i] !== "object") + throw TypeError(".google.protobuf.FieldOptions.uninterpretedOption: object expected"); + message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i]); + } + } + if (object[".google.api.fieldBehavior"]) { + if (!Array.isArray(object[".google.api.fieldBehavior"])) + throw TypeError(".google.protobuf.FieldOptions..google.api.fieldBehavior: array expected"); + message[".google.api.fieldBehavior"] = []; + for (var i = 0; i < object[".google.api.fieldBehavior"].length; ++i) + switch (object[".google.api.fieldBehavior"][i]) { + default: + case "FIELD_BEHAVIOR_UNSPECIFIED": + case 0: + message[".google.api.fieldBehavior"][i] = 0; + break; + case "OPTIONAL": + case 1: + message[".google.api.fieldBehavior"][i] = 1; + break; + case "REQUIRED": + case 2: + message[".google.api.fieldBehavior"][i] = 2; + break; + case "OUTPUT_ONLY": + case 3: + message[".google.api.fieldBehavior"][i] = 3; + break; + case "INPUT_ONLY": + case 4: + message[".google.api.fieldBehavior"][i] = 4; + break; + case "IMMUTABLE": + case 5: + message[".google.api.fieldBehavior"][i] = 5; + break; + } + } + if (object[".google.api.resourceReference"] != null) { + if (typeof object[".google.api.resourceReference"] !== "object") + throw TypeError(".google.protobuf.FieldOptions..google.api.resourceReference: object expected"); + message[".google.api.resourceReference"] = $root.google.api.ResourceReference.fromObject(object[".google.api.resourceReference"]); + } + return message; + }; + + /** + * Creates a plain object from a FieldOptions message. Also converts values to other types if specified. + * @function toObject + * @memberof google.protobuf.FieldOptions + * @static + * @param {google.protobuf.FieldOptions} message FieldOptions + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + FieldOptions.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.arrays || options.defaults) { + object.uninterpretedOption = []; + object[".google.api.fieldBehavior"] = []; + } + if (options.defaults) { + object.ctype = options.enums === String ? "STRING" : 0; + object.packed = false; + object.deprecated = false; + object.lazy = false; + object.jstype = options.enums === String ? "JS_NORMAL" : 0; + object.weak = false; + object[".google.api.resourceReference"] = null; + } + if (message.ctype != null && message.hasOwnProperty("ctype")) + object.ctype = options.enums === String ? $root.google.protobuf.FieldOptions.CType[message.ctype] : message.ctype; + if (message.packed != null && message.hasOwnProperty("packed")) + object.packed = message.packed; + if (message.deprecated != null && message.hasOwnProperty("deprecated")) + object.deprecated = message.deprecated; + if (message.lazy != null && message.hasOwnProperty("lazy")) + object.lazy = message.lazy; + if (message.jstype != null && message.hasOwnProperty("jstype")) + object.jstype = options.enums === String ? $root.google.protobuf.FieldOptions.JSType[message.jstype] : message.jstype; + if (message.weak != null && message.hasOwnProperty("weak")) + object.weak = message.weak; + if (message.uninterpretedOption && message.uninterpretedOption.length) { + object.uninterpretedOption = []; + for (var j = 0; j < message.uninterpretedOption.length; ++j) + object.uninterpretedOption[j] = $root.google.protobuf.UninterpretedOption.toObject(message.uninterpretedOption[j], options); + } + if (message[".google.api.fieldBehavior"] && message[".google.api.fieldBehavior"].length) { + object[".google.api.fieldBehavior"] = []; + for (var j = 0; j < message[".google.api.fieldBehavior"].length; ++j) + object[".google.api.fieldBehavior"][j] = options.enums === String ? $root.google.api.FieldBehavior[message[".google.api.fieldBehavior"][j]] : message[".google.api.fieldBehavior"][j]; + } + if (message[".google.api.resourceReference"] != null && message.hasOwnProperty(".google.api.resourceReference")) + object[".google.api.resourceReference"] = $root.google.api.ResourceReference.toObject(message[".google.api.resourceReference"], options); + return object; + }; + + /** + * Converts this FieldOptions to JSON. + * @function toJSON + * @memberof google.protobuf.FieldOptions + * @instance + * @returns {Object.} JSON object + */ + FieldOptions.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + /** + * CType enum. + * @name google.protobuf.FieldOptions.CType + * @enum {number} + * @property {number} STRING=0 STRING value + * @property {number} CORD=1 CORD value + * @property {number} STRING_PIECE=2 STRING_PIECE value + */ + FieldOptions.CType = (function() { + var valuesById = {}, values = Object.create(valuesById); + values[valuesById[0] = "STRING"] = 0; + values[valuesById[1] = "CORD"] = 1; + values[valuesById[2] = "STRING_PIECE"] = 2; + return values; + })(); + + /** + * JSType enum. + * @name google.protobuf.FieldOptions.JSType + * @enum {number} + * @property {number} JS_NORMAL=0 JS_NORMAL value + * @property {number} JS_STRING=1 JS_STRING value + * @property {number} JS_NUMBER=2 JS_NUMBER value + */ + FieldOptions.JSType = (function() { + var valuesById = {}, values = Object.create(valuesById); + values[valuesById[0] = "JS_NORMAL"] = 0; + values[valuesById[1] = "JS_STRING"] = 1; + values[valuesById[2] = "JS_NUMBER"] = 2; + return values; + })(); + + return FieldOptions; + })(); + + protobuf.OneofOptions = (function() { + + /** + * Properties of an OneofOptions. + * @memberof google.protobuf + * @interface IOneofOptions + * @property {Array.|null} [uninterpretedOption] OneofOptions uninterpretedOption + */ + + /** + * Constructs a new OneofOptions. + * @memberof google.protobuf + * @classdesc Represents an OneofOptions. + * @implements IOneofOptions + * @constructor + * @param {google.protobuf.IOneofOptions=} [properties] Properties to set + */ + function OneofOptions(properties) { + this.uninterpretedOption = []; + 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]]; + } + + /** + * OneofOptions uninterpretedOption. + * @member {Array.} uninterpretedOption + * @memberof google.protobuf.OneofOptions + * @instance + */ + OneofOptions.prototype.uninterpretedOption = $util.emptyArray; + + /** + * Creates a new OneofOptions instance using the specified properties. + * @function create + * @memberof google.protobuf.OneofOptions + * @static + * @param {google.protobuf.IOneofOptions=} [properties] Properties to set + * @returns {google.protobuf.OneofOptions} OneofOptions instance + */ + OneofOptions.create = function create(properties) { + return new OneofOptions(properties); + }; + + /** + * Encodes the specified OneofOptions message. Does not implicitly {@link google.protobuf.OneofOptions.verify|verify} messages. + * @function encode + * @memberof google.protobuf.OneofOptions + * @static + * @param {google.protobuf.IOneofOptions} message OneofOptions message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + OneofOptions.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.uninterpretedOption != null && message.uninterpretedOption.length) + for (var i = 0; i < message.uninterpretedOption.length; ++i) + $root.google.protobuf.UninterpretedOption.encode(message.uninterpretedOption[i], writer.uint32(/* id 999, wireType 2 =*/7994).fork()).ldelim(); + return writer; + }; + + /** + * Encodes the specified OneofOptions message, length delimited. Does not implicitly {@link google.protobuf.OneofOptions.verify|verify} messages. + * @function encodeDelimited + * @memberof google.protobuf.OneofOptions + * @static + * @param {google.protobuf.IOneofOptions} message OneofOptions message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + OneofOptions.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes an OneofOptions message from the specified reader or buffer. + * @function decode + * @memberof google.protobuf.OneofOptions + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.protobuf.OneofOptions} OneofOptions + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + OneofOptions.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.protobuf.OneofOptions(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 999: + if (!(message.uninterpretedOption && message.uninterpretedOption.length)) + message.uninterpretedOption = []; + message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32())); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes an OneofOptions message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.protobuf.OneofOptions + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.protobuf.OneofOptions} OneofOptions + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + OneofOptions.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies an OneofOptions message. + * @function verify + * @memberof google.protobuf.OneofOptions + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + OneofOptions.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.uninterpretedOption != null && message.hasOwnProperty("uninterpretedOption")) { + if (!Array.isArray(message.uninterpretedOption)) + return "uninterpretedOption: array expected"; + for (var i = 0; i < message.uninterpretedOption.length; ++i) { + var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i]); + if (error) + return "uninterpretedOption." + error; + } + } + return null; + }; + + /** + * Creates an OneofOptions message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.protobuf.OneofOptions + * @static + * @param {Object.} object Plain object + * @returns {google.protobuf.OneofOptions} OneofOptions + */ + OneofOptions.fromObject = function fromObject(object) { + if (object instanceof $root.google.protobuf.OneofOptions) + return object; + var message = new $root.google.protobuf.OneofOptions(); + if (object.uninterpretedOption) { + if (!Array.isArray(object.uninterpretedOption)) + throw TypeError(".google.protobuf.OneofOptions.uninterpretedOption: array expected"); + message.uninterpretedOption = []; + for (var i = 0; i < object.uninterpretedOption.length; ++i) { + if (typeof object.uninterpretedOption[i] !== "object") + throw TypeError(".google.protobuf.OneofOptions.uninterpretedOption: object expected"); + message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i]); + } + } + return message; + }; + + /** + * Creates a plain object from an OneofOptions message. Also converts values to other types if specified. + * @function toObject + * @memberof google.protobuf.OneofOptions + * @static + * @param {google.protobuf.OneofOptions} message OneofOptions + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + OneofOptions.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.arrays || options.defaults) + object.uninterpretedOption = []; + if (message.uninterpretedOption && message.uninterpretedOption.length) { + object.uninterpretedOption = []; + for (var j = 0; j < message.uninterpretedOption.length; ++j) + object.uninterpretedOption[j] = $root.google.protobuf.UninterpretedOption.toObject(message.uninterpretedOption[j], options); + } + return object; + }; + + /** + * Converts this OneofOptions to JSON. + * @function toJSON + * @memberof google.protobuf.OneofOptions + * @instance + * @returns {Object.} JSON object + */ + OneofOptions.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return OneofOptions; + })(); + + protobuf.EnumOptions = (function() { + + /** + * Properties of an EnumOptions. + * @memberof google.protobuf + * @interface IEnumOptions + * @property {boolean|null} [allowAlias] EnumOptions allowAlias + * @property {boolean|null} [deprecated] EnumOptions deprecated + * @property {Array.|null} [uninterpretedOption] EnumOptions uninterpretedOption + */ + + /** + * Constructs a new EnumOptions. + * @memberof google.protobuf + * @classdesc Represents an EnumOptions. + * @implements IEnumOptions + * @constructor + * @param {google.protobuf.IEnumOptions=} [properties] Properties to set + */ + function EnumOptions(properties) { + this.uninterpretedOption = []; + 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]]; + } + + /** + * EnumOptions allowAlias. + * @member {boolean} allowAlias + * @memberof google.protobuf.EnumOptions + * @instance + */ + EnumOptions.prototype.allowAlias = false; + + /** + * EnumOptions deprecated. + * @member {boolean} deprecated + * @memberof google.protobuf.EnumOptions + * @instance + */ + EnumOptions.prototype.deprecated = false; + + /** + * EnumOptions uninterpretedOption. + * @member {Array.} uninterpretedOption + * @memberof google.protobuf.EnumOptions + * @instance + */ + EnumOptions.prototype.uninterpretedOption = $util.emptyArray; + + /** + * Creates a new EnumOptions instance using the specified properties. + * @function create + * @memberof google.protobuf.EnumOptions + * @static + * @param {google.protobuf.IEnumOptions=} [properties] Properties to set + * @returns {google.protobuf.EnumOptions} EnumOptions instance + */ + EnumOptions.create = function create(properties) { + return new EnumOptions(properties); + }; + + /** + * Encodes the specified EnumOptions message. Does not implicitly {@link google.protobuf.EnumOptions.verify|verify} messages. + * @function encode + * @memberof google.protobuf.EnumOptions + * @static + * @param {google.protobuf.IEnumOptions} message EnumOptions message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + EnumOptions.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.allowAlias != null && Object.hasOwnProperty.call(message, "allowAlias")) + writer.uint32(/* id 2, wireType 0 =*/16).bool(message.allowAlias); + if (message.deprecated != null && Object.hasOwnProperty.call(message, "deprecated")) + writer.uint32(/* id 3, wireType 0 =*/24).bool(message.deprecated); + if (message.uninterpretedOption != null && message.uninterpretedOption.length) + for (var i = 0; i < message.uninterpretedOption.length; ++i) + $root.google.protobuf.UninterpretedOption.encode(message.uninterpretedOption[i], writer.uint32(/* id 999, wireType 2 =*/7994).fork()).ldelim(); + return writer; + }; + + /** + * Encodes the specified EnumOptions message, length delimited. Does not implicitly {@link google.protobuf.EnumOptions.verify|verify} messages. + * @function encodeDelimited + * @memberof google.protobuf.EnumOptions + * @static + * @param {google.protobuf.IEnumOptions} message EnumOptions message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + EnumOptions.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes an EnumOptions message from the specified reader or buffer. + * @function decode + * @memberof google.protobuf.EnumOptions + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.protobuf.EnumOptions} EnumOptions + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + EnumOptions.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.protobuf.EnumOptions(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 2: + message.allowAlias = reader.bool(); + break; + case 3: + message.deprecated = reader.bool(); + break; + case 999: + if (!(message.uninterpretedOption && message.uninterpretedOption.length)) + message.uninterpretedOption = []; + message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32())); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes an EnumOptions message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.protobuf.EnumOptions + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.protobuf.EnumOptions} EnumOptions + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + EnumOptions.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies an EnumOptions message. + * @function verify + * @memberof google.protobuf.EnumOptions + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + EnumOptions.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.allowAlias != null && message.hasOwnProperty("allowAlias")) + if (typeof message.allowAlias !== "boolean") + return "allowAlias: boolean expected"; + if (message.deprecated != null && message.hasOwnProperty("deprecated")) + if (typeof message.deprecated !== "boolean") + return "deprecated: boolean expected"; + if (message.uninterpretedOption != null && message.hasOwnProperty("uninterpretedOption")) { + if (!Array.isArray(message.uninterpretedOption)) + return "uninterpretedOption: array expected"; + for (var i = 0; i < message.uninterpretedOption.length; ++i) { + var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i]); + if (error) + return "uninterpretedOption." + error; + } + } + return null; + }; + + /** + * Creates an EnumOptions message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.protobuf.EnumOptions + * @static + * @param {Object.} object Plain object + * @returns {google.protobuf.EnumOptions} EnumOptions + */ + EnumOptions.fromObject = function fromObject(object) { + if (object instanceof $root.google.protobuf.EnumOptions) + return object; + var message = new $root.google.protobuf.EnumOptions(); + if (object.allowAlias != null) + message.allowAlias = Boolean(object.allowAlias); + if (object.deprecated != null) + message.deprecated = Boolean(object.deprecated); + if (object.uninterpretedOption) { + if (!Array.isArray(object.uninterpretedOption)) + throw TypeError(".google.protobuf.EnumOptions.uninterpretedOption: array expected"); + message.uninterpretedOption = []; + for (var i = 0; i < object.uninterpretedOption.length; ++i) { + if (typeof object.uninterpretedOption[i] !== "object") + throw TypeError(".google.protobuf.EnumOptions.uninterpretedOption: object expected"); + message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i]); + } + } + return message; + }; + + /** + * Creates a plain object from an EnumOptions message. Also converts values to other types if specified. + * @function toObject + * @memberof google.protobuf.EnumOptions + * @static + * @param {google.protobuf.EnumOptions} message EnumOptions + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + EnumOptions.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.arrays || options.defaults) + object.uninterpretedOption = []; + if (options.defaults) { + object.allowAlias = false; + object.deprecated = false; + } + if (message.allowAlias != null && message.hasOwnProperty("allowAlias")) + object.allowAlias = message.allowAlias; + if (message.deprecated != null && message.hasOwnProperty("deprecated")) + object.deprecated = message.deprecated; + if (message.uninterpretedOption && message.uninterpretedOption.length) { + object.uninterpretedOption = []; + for (var j = 0; j < message.uninterpretedOption.length; ++j) + object.uninterpretedOption[j] = $root.google.protobuf.UninterpretedOption.toObject(message.uninterpretedOption[j], options); + } + return object; + }; + + /** + * Converts this EnumOptions to JSON. + * @function toJSON + * @memberof google.protobuf.EnumOptions + * @instance + * @returns {Object.} JSON object + */ + EnumOptions.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return EnumOptions; + })(); + + protobuf.EnumValueOptions = (function() { + + /** + * Properties of an EnumValueOptions. + * @memberof google.protobuf + * @interface IEnumValueOptions + * @property {boolean|null} [deprecated] EnumValueOptions deprecated + * @property {Array.|null} [uninterpretedOption] EnumValueOptions uninterpretedOption + */ + + /** + * Constructs a new EnumValueOptions. + * @memberof google.protobuf + * @classdesc Represents an EnumValueOptions. + * @implements IEnumValueOptions + * @constructor + * @param {google.protobuf.IEnumValueOptions=} [properties] Properties to set + */ + function EnumValueOptions(properties) { + this.uninterpretedOption = []; + 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]]; + } + + /** + * EnumValueOptions deprecated. + * @member {boolean} deprecated + * @memberof google.protobuf.EnumValueOptions + * @instance + */ + EnumValueOptions.prototype.deprecated = false; + + /** + * EnumValueOptions uninterpretedOption. + * @member {Array.} uninterpretedOption + * @memberof google.protobuf.EnumValueOptions + * @instance + */ + EnumValueOptions.prototype.uninterpretedOption = $util.emptyArray; + + /** + * Creates a new EnumValueOptions instance using the specified properties. + * @function create + * @memberof google.protobuf.EnumValueOptions + * @static + * @param {google.protobuf.IEnumValueOptions=} [properties] Properties to set + * @returns {google.protobuf.EnumValueOptions} EnumValueOptions instance + */ + EnumValueOptions.create = function create(properties) { + return new EnumValueOptions(properties); + }; + + /** + * Encodes the specified EnumValueOptions message. Does not implicitly {@link google.protobuf.EnumValueOptions.verify|verify} messages. + * @function encode + * @memberof google.protobuf.EnumValueOptions + * @static + * @param {google.protobuf.IEnumValueOptions} message EnumValueOptions message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + EnumValueOptions.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.deprecated != null && Object.hasOwnProperty.call(message, "deprecated")) + writer.uint32(/* id 1, wireType 0 =*/8).bool(message.deprecated); + if (message.uninterpretedOption != null && message.uninterpretedOption.length) + for (var i = 0; i < message.uninterpretedOption.length; ++i) + $root.google.protobuf.UninterpretedOption.encode(message.uninterpretedOption[i], writer.uint32(/* id 999, wireType 2 =*/7994).fork()).ldelim(); + return writer; + }; + + /** + * Encodes the specified EnumValueOptions message, length delimited. Does not implicitly {@link google.protobuf.EnumValueOptions.verify|verify} messages. + * @function encodeDelimited + * @memberof google.protobuf.EnumValueOptions + * @static + * @param {google.protobuf.IEnumValueOptions} message EnumValueOptions message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + EnumValueOptions.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes an EnumValueOptions message from the specified reader or buffer. + * @function decode + * @memberof google.protobuf.EnumValueOptions + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.protobuf.EnumValueOptions} EnumValueOptions + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + EnumValueOptions.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.protobuf.EnumValueOptions(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.deprecated = reader.bool(); + break; + case 999: + if (!(message.uninterpretedOption && message.uninterpretedOption.length)) + message.uninterpretedOption = []; + message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32())); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes an EnumValueOptions message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.protobuf.EnumValueOptions + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.protobuf.EnumValueOptions} EnumValueOptions + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + EnumValueOptions.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies an EnumValueOptions message. + * @function verify + * @memberof google.protobuf.EnumValueOptions + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + EnumValueOptions.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.deprecated != null && message.hasOwnProperty("deprecated")) + if (typeof message.deprecated !== "boolean") + return "deprecated: boolean expected"; + if (message.uninterpretedOption != null && message.hasOwnProperty("uninterpretedOption")) { + if (!Array.isArray(message.uninterpretedOption)) + return "uninterpretedOption: array expected"; + for (var i = 0; i < message.uninterpretedOption.length; ++i) { + var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i]); + if (error) + return "uninterpretedOption." + error; + } + } + return null; + }; + + /** + * Creates an EnumValueOptions message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.protobuf.EnumValueOptions + * @static + * @param {Object.} object Plain object + * @returns {google.protobuf.EnumValueOptions} EnumValueOptions + */ + EnumValueOptions.fromObject = function fromObject(object) { + if (object instanceof $root.google.protobuf.EnumValueOptions) + return object; + var message = new $root.google.protobuf.EnumValueOptions(); + if (object.deprecated != null) + message.deprecated = Boolean(object.deprecated); + if (object.uninterpretedOption) { + if (!Array.isArray(object.uninterpretedOption)) + throw TypeError(".google.protobuf.EnumValueOptions.uninterpretedOption: array expected"); + message.uninterpretedOption = []; + for (var i = 0; i < object.uninterpretedOption.length; ++i) { + if (typeof object.uninterpretedOption[i] !== "object") + throw TypeError(".google.protobuf.EnumValueOptions.uninterpretedOption: object expected"); + message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i]); + } + } + return message; + }; + + /** + * Creates a plain object from an EnumValueOptions message. Also converts values to other types if specified. + * @function toObject + * @memberof google.protobuf.EnumValueOptions + * @static + * @param {google.protobuf.EnumValueOptions} message EnumValueOptions + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + EnumValueOptions.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.arrays || options.defaults) + object.uninterpretedOption = []; + if (options.defaults) + object.deprecated = false; + if (message.deprecated != null && message.hasOwnProperty("deprecated")) + object.deprecated = message.deprecated; + if (message.uninterpretedOption && message.uninterpretedOption.length) { + object.uninterpretedOption = []; + for (var j = 0; j < message.uninterpretedOption.length; ++j) + object.uninterpretedOption[j] = $root.google.protobuf.UninterpretedOption.toObject(message.uninterpretedOption[j], options); + } + return object; + }; + + /** + * Converts this EnumValueOptions to JSON. + * @function toJSON + * @memberof google.protobuf.EnumValueOptions + * @instance + * @returns {Object.} JSON object + */ + EnumValueOptions.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return EnumValueOptions; + })(); + + protobuf.ServiceOptions = (function() { + + /** + * Properties of a ServiceOptions. + * @memberof google.protobuf + * @interface IServiceOptions + * @property {boolean|null} [deprecated] ServiceOptions deprecated + * @property {Array.|null} [uninterpretedOption] ServiceOptions uninterpretedOption + * @property {string|null} [".google.api.defaultHost"] ServiceOptions .google.api.defaultHost + * @property {string|null} [".google.api.oauthScopes"] ServiceOptions .google.api.oauthScopes + */ + + /** + * Constructs a new ServiceOptions. + * @memberof google.protobuf + * @classdesc Represents a ServiceOptions. + * @implements IServiceOptions + * @constructor + * @param {google.protobuf.IServiceOptions=} [properties] Properties to set + */ + function ServiceOptions(properties) { + this.uninterpretedOption = []; + 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]]; + } + + /** + * ServiceOptions deprecated. + * @member {boolean} deprecated + * @memberof google.protobuf.ServiceOptions + * @instance + */ + ServiceOptions.prototype.deprecated = false; + + /** + * ServiceOptions uninterpretedOption. + * @member {Array.} uninterpretedOption + * @memberof google.protobuf.ServiceOptions + * @instance + */ + ServiceOptions.prototype.uninterpretedOption = $util.emptyArray; + + /** + * ServiceOptions .google.api.defaultHost. + * @member {string} .google.api.defaultHost + * @memberof google.protobuf.ServiceOptions + * @instance + */ + ServiceOptions.prototype[".google.api.defaultHost"] = ""; + + /** + * ServiceOptions .google.api.oauthScopes. + * @member {string} .google.api.oauthScopes + * @memberof google.protobuf.ServiceOptions + * @instance + */ + ServiceOptions.prototype[".google.api.oauthScopes"] = ""; + + /** + * Creates a new ServiceOptions instance using the specified properties. + * @function create + * @memberof google.protobuf.ServiceOptions + * @static + * @param {google.protobuf.IServiceOptions=} [properties] Properties to set + * @returns {google.protobuf.ServiceOptions} ServiceOptions instance + */ + ServiceOptions.create = function create(properties) { + return new ServiceOptions(properties); + }; + + /** + * Encodes the specified ServiceOptions message. Does not implicitly {@link google.protobuf.ServiceOptions.verify|verify} messages. + * @function encode + * @memberof google.protobuf.ServiceOptions + * @static + * @param {google.protobuf.IServiceOptions} message ServiceOptions message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + ServiceOptions.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.deprecated != null && Object.hasOwnProperty.call(message, "deprecated")) + writer.uint32(/* id 33, wireType 0 =*/264).bool(message.deprecated); + if (message.uninterpretedOption != null && message.uninterpretedOption.length) + for (var i = 0; i < message.uninterpretedOption.length; ++i) + $root.google.protobuf.UninterpretedOption.encode(message.uninterpretedOption[i], writer.uint32(/* id 999, wireType 2 =*/7994).fork()).ldelim(); + if (message[".google.api.defaultHost"] != null && Object.hasOwnProperty.call(message, ".google.api.defaultHost")) + writer.uint32(/* id 1049, wireType 2 =*/8394).string(message[".google.api.defaultHost"]); + if (message[".google.api.oauthScopes"] != null && Object.hasOwnProperty.call(message, ".google.api.oauthScopes")) + writer.uint32(/* id 1050, wireType 2 =*/8402).string(message[".google.api.oauthScopes"]); + return writer; + }; + + /** + * Encodes the specified ServiceOptions message, length delimited. Does not implicitly {@link google.protobuf.ServiceOptions.verify|verify} messages. + * @function encodeDelimited + * @memberof google.protobuf.ServiceOptions + * @static + * @param {google.protobuf.IServiceOptions} message ServiceOptions message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + ServiceOptions.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a ServiceOptions message from the specified reader or buffer. + * @function decode + * @memberof google.protobuf.ServiceOptions + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.protobuf.ServiceOptions} ServiceOptions + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + ServiceOptions.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.protobuf.ServiceOptions(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 33: + message.deprecated = reader.bool(); + break; + case 999: + if (!(message.uninterpretedOption && message.uninterpretedOption.length)) + message.uninterpretedOption = []; + message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32())); + break; + case 1049: + message[".google.api.defaultHost"] = reader.string(); + break; + case 1050: + message[".google.api.oauthScopes"] = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a ServiceOptions message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.protobuf.ServiceOptions + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.protobuf.ServiceOptions} ServiceOptions + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + ServiceOptions.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a ServiceOptions message. + * @function verify + * @memberof google.protobuf.ServiceOptions + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + ServiceOptions.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.deprecated != null && message.hasOwnProperty("deprecated")) + if (typeof message.deprecated !== "boolean") + return "deprecated: boolean expected"; + if (message.uninterpretedOption != null && message.hasOwnProperty("uninterpretedOption")) { + if (!Array.isArray(message.uninterpretedOption)) + return "uninterpretedOption: array expected"; + for (var i = 0; i < message.uninterpretedOption.length; ++i) { + var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i]); + if (error) + return "uninterpretedOption." + error; + } + } + if (message[".google.api.defaultHost"] != null && message.hasOwnProperty(".google.api.defaultHost")) + if (!$util.isString(message[".google.api.defaultHost"])) + return ".google.api.defaultHost: string expected"; + if (message[".google.api.oauthScopes"] != null && message.hasOwnProperty(".google.api.oauthScopes")) + if (!$util.isString(message[".google.api.oauthScopes"])) + return ".google.api.oauthScopes: string expected"; + return null; + }; + + /** + * Creates a ServiceOptions message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.protobuf.ServiceOptions + * @static + * @param {Object.} object Plain object + * @returns {google.protobuf.ServiceOptions} ServiceOptions + */ + ServiceOptions.fromObject = function fromObject(object) { + if (object instanceof $root.google.protobuf.ServiceOptions) + return object; + var message = new $root.google.protobuf.ServiceOptions(); + if (object.deprecated != null) + message.deprecated = Boolean(object.deprecated); + if (object.uninterpretedOption) { + if (!Array.isArray(object.uninterpretedOption)) + throw TypeError(".google.protobuf.ServiceOptions.uninterpretedOption: array expected"); + message.uninterpretedOption = []; + for (var i = 0; i < object.uninterpretedOption.length; ++i) { + if (typeof object.uninterpretedOption[i] !== "object") + throw TypeError(".google.protobuf.ServiceOptions.uninterpretedOption: object expected"); + message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i]); + } + } + if (object[".google.api.defaultHost"] != null) + message[".google.api.defaultHost"] = String(object[".google.api.defaultHost"]); + if (object[".google.api.oauthScopes"] != null) + message[".google.api.oauthScopes"] = String(object[".google.api.oauthScopes"]); + return message; + }; + + /** + * Creates a plain object from a ServiceOptions message. Also converts values to other types if specified. + * @function toObject + * @memberof google.protobuf.ServiceOptions + * @static + * @param {google.protobuf.ServiceOptions} message ServiceOptions + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + ServiceOptions.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.arrays || options.defaults) + object.uninterpretedOption = []; + if (options.defaults) { + object.deprecated = false; + object[".google.api.defaultHost"] = ""; + object[".google.api.oauthScopes"] = ""; + } + if (message.deprecated != null && message.hasOwnProperty("deprecated")) + object.deprecated = message.deprecated; + if (message.uninterpretedOption && message.uninterpretedOption.length) { + object.uninterpretedOption = []; + for (var j = 0; j < message.uninterpretedOption.length; ++j) + object.uninterpretedOption[j] = $root.google.protobuf.UninterpretedOption.toObject(message.uninterpretedOption[j], options); + } + if (message[".google.api.defaultHost"] != null && message.hasOwnProperty(".google.api.defaultHost")) + object[".google.api.defaultHost"] = message[".google.api.defaultHost"]; + if (message[".google.api.oauthScopes"] != null && message.hasOwnProperty(".google.api.oauthScopes")) + object[".google.api.oauthScopes"] = message[".google.api.oauthScopes"]; + return object; + }; + + /** + * Converts this ServiceOptions to JSON. + * @function toJSON + * @memberof google.protobuf.ServiceOptions + * @instance + * @returns {Object.} JSON object + */ + ServiceOptions.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return ServiceOptions; + })(); + + protobuf.MethodOptions = (function() { + + /** + * Properties of a MethodOptions. + * @memberof google.protobuf + * @interface IMethodOptions + * @property {boolean|null} [deprecated] MethodOptions deprecated + * @property {google.protobuf.MethodOptions.IdempotencyLevel|null} [idempotencyLevel] MethodOptions idempotencyLevel + * @property {Array.|null} [uninterpretedOption] MethodOptions uninterpretedOption + * @property {google.api.IHttpRule|null} [".google.api.http"] MethodOptions .google.api.http + * @property {Array.|null} [".google.api.methodSignature"] MethodOptions .google.api.methodSignature + * @property {google.longrunning.IOperationInfo|null} [".google.longrunning.operationInfo"] MethodOptions .google.longrunning.operationInfo + */ + + /** + * Constructs a new MethodOptions. + * @memberof google.protobuf + * @classdesc Represents a MethodOptions. + * @implements IMethodOptions + * @constructor + * @param {google.protobuf.IMethodOptions=} [properties] Properties to set + */ + function MethodOptions(properties) { + this.uninterpretedOption = []; + this[".google.api.methodSignature"] = []; + 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]]; + } + + /** + * MethodOptions deprecated. + * @member {boolean} deprecated + * @memberof google.protobuf.MethodOptions + * @instance + */ + MethodOptions.prototype.deprecated = false; + + /** + * MethodOptions idempotencyLevel. + * @member {google.protobuf.MethodOptions.IdempotencyLevel} idempotencyLevel + * @memberof google.protobuf.MethodOptions + * @instance + */ + MethodOptions.prototype.idempotencyLevel = 0; + + /** + * MethodOptions uninterpretedOption. + * @member {Array.} uninterpretedOption + * @memberof google.protobuf.MethodOptions + * @instance + */ + MethodOptions.prototype.uninterpretedOption = $util.emptyArray; + + /** + * MethodOptions .google.api.http. + * @member {google.api.IHttpRule|null|undefined} .google.api.http + * @memberof google.protobuf.MethodOptions + * @instance + */ + MethodOptions.prototype[".google.api.http"] = null; + + /** + * MethodOptions .google.api.methodSignature. + * @member {Array.} .google.api.methodSignature + * @memberof google.protobuf.MethodOptions + * @instance + */ + MethodOptions.prototype[".google.api.methodSignature"] = $util.emptyArray; + + /** + * MethodOptions .google.longrunning.operationInfo. + * @member {google.longrunning.IOperationInfo|null|undefined} .google.longrunning.operationInfo + * @memberof google.protobuf.MethodOptions + * @instance + */ + MethodOptions.prototype[".google.longrunning.operationInfo"] = null; + + /** + * Creates a new MethodOptions instance using the specified properties. + * @function create + * @memberof google.protobuf.MethodOptions + * @static + * @param {google.protobuf.IMethodOptions=} [properties] Properties to set + * @returns {google.protobuf.MethodOptions} MethodOptions instance + */ + MethodOptions.create = function create(properties) { + return new MethodOptions(properties); + }; + + /** + * Encodes the specified MethodOptions message. Does not implicitly {@link google.protobuf.MethodOptions.verify|verify} messages. + * @function encode + * @memberof google.protobuf.MethodOptions + * @static + * @param {google.protobuf.IMethodOptions} message MethodOptions message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + MethodOptions.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.deprecated != null && Object.hasOwnProperty.call(message, "deprecated")) + writer.uint32(/* id 33, wireType 0 =*/264).bool(message.deprecated); + if (message.idempotencyLevel != null && Object.hasOwnProperty.call(message, "idempotencyLevel")) + writer.uint32(/* id 34, wireType 0 =*/272).int32(message.idempotencyLevel); + if (message.uninterpretedOption != null && message.uninterpretedOption.length) + for (var i = 0; i < message.uninterpretedOption.length; ++i) + $root.google.protobuf.UninterpretedOption.encode(message.uninterpretedOption[i], writer.uint32(/* id 999, wireType 2 =*/7994).fork()).ldelim(); + if (message[".google.longrunning.operationInfo"] != null && Object.hasOwnProperty.call(message, ".google.longrunning.operationInfo")) + $root.google.longrunning.OperationInfo.encode(message[".google.longrunning.operationInfo"], writer.uint32(/* id 1049, wireType 2 =*/8394).fork()).ldelim(); + if (message[".google.api.methodSignature"] != null && message[".google.api.methodSignature"].length) + for (var i = 0; i < message[".google.api.methodSignature"].length; ++i) + writer.uint32(/* id 1051, wireType 2 =*/8410).string(message[".google.api.methodSignature"][i]); + if (message[".google.api.http"] != null && Object.hasOwnProperty.call(message, ".google.api.http")) + $root.google.api.HttpRule.encode(message[".google.api.http"], writer.uint32(/* id 72295728, wireType 2 =*/578365826).fork()).ldelim(); + return writer; + }; + + /** + * Encodes the specified MethodOptions message, length delimited. Does not implicitly {@link google.protobuf.MethodOptions.verify|verify} messages. + * @function encodeDelimited + * @memberof google.protobuf.MethodOptions + * @static + * @param {google.protobuf.IMethodOptions} message MethodOptions message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + MethodOptions.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a MethodOptions message from the specified reader or buffer. + * @function decode + * @memberof google.protobuf.MethodOptions + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.protobuf.MethodOptions} MethodOptions + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + MethodOptions.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.protobuf.MethodOptions(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 33: + message.deprecated = reader.bool(); + break; + case 34: + message.idempotencyLevel = reader.int32(); + break; + case 999: + if (!(message.uninterpretedOption && message.uninterpretedOption.length)) + message.uninterpretedOption = []; + message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32())); + break; + case 72295728: + message[".google.api.http"] = $root.google.api.HttpRule.decode(reader, reader.uint32()); + break; + case 1051: + if (!(message[".google.api.methodSignature"] && message[".google.api.methodSignature"].length)) + message[".google.api.methodSignature"] = []; + message[".google.api.methodSignature"].push(reader.string()); + break; + case 1049: + message[".google.longrunning.operationInfo"] = $root.google.longrunning.OperationInfo.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a MethodOptions message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.protobuf.MethodOptions + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.protobuf.MethodOptions} MethodOptions + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + MethodOptions.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a MethodOptions message. + * @function verify + * @memberof google.protobuf.MethodOptions + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + MethodOptions.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.deprecated != null && message.hasOwnProperty("deprecated")) + if (typeof message.deprecated !== "boolean") + return "deprecated: boolean expected"; + if (message.idempotencyLevel != null && message.hasOwnProperty("idempotencyLevel")) + switch (message.idempotencyLevel) { + default: + return "idempotencyLevel: enum value expected"; + case 0: + case 1: + case 2: + break; + } + if (message.uninterpretedOption != null && message.hasOwnProperty("uninterpretedOption")) { + if (!Array.isArray(message.uninterpretedOption)) + return "uninterpretedOption: array expected"; + for (var i = 0; i < message.uninterpretedOption.length; ++i) { + var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i]); + if (error) + return "uninterpretedOption." + error; + } + } + if (message[".google.api.http"] != null && message.hasOwnProperty(".google.api.http")) { + var error = $root.google.api.HttpRule.verify(message[".google.api.http"]); + if (error) + return ".google.api.http." + error; + } + if (message[".google.api.methodSignature"] != null && message.hasOwnProperty(".google.api.methodSignature")) { + if (!Array.isArray(message[".google.api.methodSignature"])) + return ".google.api.methodSignature: array expected"; + for (var i = 0; i < message[".google.api.methodSignature"].length; ++i) + if (!$util.isString(message[".google.api.methodSignature"][i])) + return ".google.api.methodSignature: string[] expected"; + } + if (message[".google.longrunning.operationInfo"] != null && message.hasOwnProperty(".google.longrunning.operationInfo")) { + var error = $root.google.longrunning.OperationInfo.verify(message[".google.longrunning.operationInfo"]); + if (error) + return ".google.longrunning.operationInfo." + error; + } + return null; + }; + + /** + * Creates a MethodOptions message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.protobuf.MethodOptions + * @static + * @param {Object.} object Plain object + * @returns {google.protobuf.MethodOptions} MethodOptions + */ + MethodOptions.fromObject = function fromObject(object) { + if (object instanceof $root.google.protobuf.MethodOptions) + return object; + var message = new $root.google.protobuf.MethodOptions(); + if (object.deprecated != null) + message.deprecated = Boolean(object.deprecated); + switch (object.idempotencyLevel) { + case "IDEMPOTENCY_UNKNOWN": + case 0: + message.idempotencyLevel = 0; + break; + case "NO_SIDE_EFFECTS": + case 1: + message.idempotencyLevel = 1; + break; + case "IDEMPOTENT": + case 2: + message.idempotencyLevel = 2; + break; + } + if (object.uninterpretedOption) { + if (!Array.isArray(object.uninterpretedOption)) + throw TypeError(".google.protobuf.MethodOptions.uninterpretedOption: array expected"); + message.uninterpretedOption = []; + for (var i = 0; i < object.uninterpretedOption.length; ++i) { + if (typeof object.uninterpretedOption[i] !== "object") + throw TypeError(".google.protobuf.MethodOptions.uninterpretedOption: object expected"); + message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i]); + } + } + if (object[".google.api.http"] != null) { + if (typeof object[".google.api.http"] !== "object") + throw TypeError(".google.protobuf.MethodOptions..google.api.http: object expected"); + message[".google.api.http"] = $root.google.api.HttpRule.fromObject(object[".google.api.http"]); + } + if (object[".google.api.methodSignature"]) { + if (!Array.isArray(object[".google.api.methodSignature"])) + throw TypeError(".google.protobuf.MethodOptions..google.api.methodSignature: array expected"); + message[".google.api.methodSignature"] = []; + for (var i = 0; i < object[".google.api.methodSignature"].length; ++i) + message[".google.api.methodSignature"][i] = String(object[".google.api.methodSignature"][i]); + } + if (object[".google.longrunning.operationInfo"] != null) { + if (typeof object[".google.longrunning.operationInfo"] !== "object") + throw TypeError(".google.protobuf.MethodOptions..google.longrunning.operationInfo: object expected"); + message[".google.longrunning.operationInfo"] = $root.google.longrunning.OperationInfo.fromObject(object[".google.longrunning.operationInfo"]); + } + return message; + }; + + /** + * Creates a plain object from a MethodOptions message. Also converts values to other types if specified. + * @function toObject + * @memberof google.protobuf.MethodOptions + * @static + * @param {google.protobuf.MethodOptions} message MethodOptions + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + MethodOptions.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.arrays || options.defaults) { + object.uninterpretedOption = []; + object[".google.api.methodSignature"] = []; + } + if (options.defaults) { + object.deprecated = false; + object.idempotencyLevel = options.enums === String ? "IDEMPOTENCY_UNKNOWN" : 0; + object[".google.longrunning.operationInfo"] = null; + object[".google.api.http"] = null; + } + if (message.deprecated != null && message.hasOwnProperty("deprecated")) + object.deprecated = message.deprecated; + if (message.idempotencyLevel != null && message.hasOwnProperty("idempotencyLevel")) + object.idempotencyLevel = options.enums === String ? $root.google.protobuf.MethodOptions.IdempotencyLevel[message.idempotencyLevel] : message.idempotencyLevel; + if (message.uninterpretedOption && message.uninterpretedOption.length) { + object.uninterpretedOption = []; + for (var j = 0; j < message.uninterpretedOption.length; ++j) + object.uninterpretedOption[j] = $root.google.protobuf.UninterpretedOption.toObject(message.uninterpretedOption[j], options); + } + if (message[".google.longrunning.operationInfo"] != null && message.hasOwnProperty(".google.longrunning.operationInfo")) + object[".google.longrunning.operationInfo"] = $root.google.longrunning.OperationInfo.toObject(message[".google.longrunning.operationInfo"], options); + if (message[".google.api.methodSignature"] && message[".google.api.methodSignature"].length) { + object[".google.api.methodSignature"] = []; + for (var j = 0; j < message[".google.api.methodSignature"].length; ++j) + object[".google.api.methodSignature"][j] = message[".google.api.methodSignature"][j]; + } + if (message[".google.api.http"] != null && message.hasOwnProperty(".google.api.http")) + object[".google.api.http"] = $root.google.api.HttpRule.toObject(message[".google.api.http"], options); + return object; + }; + + /** + * Converts this MethodOptions to JSON. + * @function toJSON + * @memberof google.protobuf.MethodOptions + * @instance + * @returns {Object.} JSON object + */ + MethodOptions.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + /** + * IdempotencyLevel enum. + * @name google.protobuf.MethodOptions.IdempotencyLevel + * @enum {number} + * @property {number} IDEMPOTENCY_UNKNOWN=0 IDEMPOTENCY_UNKNOWN value + * @property {number} NO_SIDE_EFFECTS=1 NO_SIDE_EFFECTS value + * @property {number} IDEMPOTENT=2 IDEMPOTENT value + */ + MethodOptions.IdempotencyLevel = (function() { + var valuesById = {}, values = Object.create(valuesById); + values[valuesById[0] = "IDEMPOTENCY_UNKNOWN"] = 0; + values[valuesById[1] = "NO_SIDE_EFFECTS"] = 1; + values[valuesById[2] = "IDEMPOTENT"] = 2; + return values; + })(); + + return MethodOptions; + })(); + + protobuf.UninterpretedOption = (function() { + + /** + * Properties of an UninterpretedOption. + * @memberof google.protobuf + * @interface IUninterpretedOption + * @property {Array.|null} [name] UninterpretedOption name + * @property {string|null} [identifierValue] UninterpretedOption identifierValue + * @property {number|Long|null} [positiveIntValue] UninterpretedOption positiveIntValue + * @property {number|Long|null} [negativeIntValue] UninterpretedOption negativeIntValue + * @property {number|null} [doubleValue] UninterpretedOption doubleValue + * @property {Uint8Array|null} [stringValue] UninterpretedOption stringValue + * @property {string|null} [aggregateValue] UninterpretedOption aggregateValue + */ + + /** + * Constructs a new UninterpretedOption. + * @memberof google.protobuf + * @classdesc Represents an UninterpretedOption. + * @implements IUninterpretedOption + * @constructor + * @param {google.protobuf.IUninterpretedOption=} [properties] Properties to set + */ + function UninterpretedOption(properties) { + this.name = []; + 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]]; + } + + /** + * UninterpretedOption name. + * @member {Array.} name + * @memberof google.protobuf.UninterpretedOption + * @instance + */ + UninterpretedOption.prototype.name = $util.emptyArray; + + /** + * UninterpretedOption identifierValue. + * @member {string} identifierValue + * @memberof google.protobuf.UninterpretedOption + * @instance + */ + UninterpretedOption.prototype.identifierValue = ""; + + /** + * UninterpretedOption positiveIntValue. + * @member {number|Long} positiveIntValue + * @memberof google.protobuf.UninterpretedOption + * @instance + */ + UninterpretedOption.prototype.positiveIntValue = $util.Long ? $util.Long.fromBits(0,0,true) : 0; + + /** + * UninterpretedOption negativeIntValue. + * @member {number|Long} negativeIntValue + * @memberof google.protobuf.UninterpretedOption + * @instance + */ + UninterpretedOption.prototype.negativeIntValue = $util.Long ? $util.Long.fromBits(0,0,false) : 0; + + /** + * UninterpretedOption doubleValue. + * @member {number} doubleValue + * @memberof google.protobuf.UninterpretedOption + * @instance + */ + UninterpretedOption.prototype.doubleValue = 0; + + /** + * UninterpretedOption stringValue. + * @member {Uint8Array} stringValue + * @memberof google.protobuf.UninterpretedOption + * @instance + */ + UninterpretedOption.prototype.stringValue = $util.newBuffer([]); + + /** + * UninterpretedOption aggregateValue. + * @member {string} aggregateValue + * @memberof google.protobuf.UninterpretedOption + * @instance + */ + UninterpretedOption.prototype.aggregateValue = ""; + + /** + * Creates a new UninterpretedOption instance using the specified properties. + * @function create + * @memberof google.protobuf.UninterpretedOption + * @static + * @param {google.protobuf.IUninterpretedOption=} [properties] Properties to set + * @returns {google.protobuf.UninterpretedOption} UninterpretedOption instance + */ + UninterpretedOption.create = function create(properties) { + return new UninterpretedOption(properties); + }; + + /** + * Encodes the specified UninterpretedOption message. Does not implicitly {@link google.protobuf.UninterpretedOption.verify|verify} messages. + * @function encode + * @memberof google.protobuf.UninterpretedOption + * @static + * @param {google.protobuf.IUninterpretedOption} message UninterpretedOption message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + UninterpretedOption.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.name != null && message.name.length) + for (var i = 0; i < message.name.length; ++i) + $root.google.protobuf.UninterpretedOption.NamePart.encode(message.name[i], writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim(); + if (message.identifierValue != null && Object.hasOwnProperty.call(message, "identifierValue")) + writer.uint32(/* id 3, wireType 2 =*/26).string(message.identifierValue); + if (message.positiveIntValue != null && Object.hasOwnProperty.call(message, "positiveIntValue")) + writer.uint32(/* id 4, wireType 0 =*/32).uint64(message.positiveIntValue); + if (message.negativeIntValue != null && Object.hasOwnProperty.call(message, "negativeIntValue")) + writer.uint32(/* id 5, wireType 0 =*/40).int64(message.negativeIntValue); + if (message.doubleValue != null && Object.hasOwnProperty.call(message, "doubleValue")) + writer.uint32(/* id 6, wireType 1 =*/49).double(message.doubleValue); + if (message.stringValue != null && Object.hasOwnProperty.call(message, "stringValue")) + writer.uint32(/* id 7, wireType 2 =*/58).bytes(message.stringValue); + if (message.aggregateValue != null && Object.hasOwnProperty.call(message, "aggregateValue")) + writer.uint32(/* id 8, wireType 2 =*/66).string(message.aggregateValue); + return writer; + }; + + /** + * Encodes the specified UninterpretedOption message, length delimited. Does not implicitly {@link google.protobuf.UninterpretedOption.verify|verify} messages. + * @function encodeDelimited + * @memberof google.protobuf.UninterpretedOption + * @static + * @param {google.protobuf.IUninterpretedOption} message UninterpretedOption message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + UninterpretedOption.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes an UninterpretedOption message from the specified reader or buffer. + * @function decode + * @memberof google.protobuf.UninterpretedOption + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.protobuf.UninterpretedOption} UninterpretedOption + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + UninterpretedOption.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.protobuf.UninterpretedOption(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 2: + if (!(message.name && message.name.length)) + message.name = []; + message.name.push($root.google.protobuf.UninterpretedOption.NamePart.decode(reader, reader.uint32())); + break; + case 3: + message.identifierValue = reader.string(); + break; + case 4: + message.positiveIntValue = reader.uint64(); + break; + case 5: + message.negativeIntValue = reader.int64(); + break; + case 6: + message.doubleValue = reader.double(); + break; + case 7: + message.stringValue = reader.bytes(); + break; + case 8: + message.aggregateValue = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes an UninterpretedOption message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.protobuf.UninterpretedOption + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.protobuf.UninterpretedOption} UninterpretedOption + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + UninterpretedOption.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies an UninterpretedOption message. + * @function verify + * @memberof google.protobuf.UninterpretedOption + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + UninterpretedOption.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.name != null && message.hasOwnProperty("name")) { + if (!Array.isArray(message.name)) + return "name: array expected"; + for (var i = 0; i < message.name.length; ++i) { + var error = $root.google.protobuf.UninterpretedOption.NamePart.verify(message.name[i]); + if (error) + return "name." + error; + } + } + if (message.identifierValue != null && message.hasOwnProperty("identifierValue")) + if (!$util.isString(message.identifierValue)) + return "identifierValue: string expected"; + if (message.positiveIntValue != null && message.hasOwnProperty("positiveIntValue")) + if (!$util.isInteger(message.positiveIntValue) && !(message.positiveIntValue && $util.isInteger(message.positiveIntValue.low) && $util.isInteger(message.positiveIntValue.high))) + return "positiveIntValue: integer|Long expected"; + if (message.negativeIntValue != null && message.hasOwnProperty("negativeIntValue")) + if (!$util.isInteger(message.negativeIntValue) && !(message.negativeIntValue && $util.isInteger(message.negativeIntValue.low) && $util.isInteger(message.negativeIntValue.high))) + return "negativeIntValue: integer|Long expected"; + if (message.doubleValue != null && message.hasOwnProperty("doubleValue")) + if (typeof message.doubleValue !== "number") + return "doubleValue: number expected"; + if (message.stringValue != null && message.hasOwnProperty("stringValue")) + if (!(message.stringValue && typeof message.stringValue.length === "number" || $util.isString(message.stringValue))) + return "stringValue: buffer expected"; + if (message.aggregateValue != null && message.hasOwnProperty("aggregateValue")) + if (!$util.isString(message.aggregateValue)) + return "aggregateValue: string expected"; + return null; + }; + + /** + * Creates an UninterpretedOption message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.protobuf.UninterpretedOption + * @static + * @param {Object.} object Plain object + * @returns {google.protobuf.UninterpretedOption} UninterpretedOption + */ + UninterpretedOption.fromObject = function fromObject(object) { + if (object instanceof $root.google.protobuf.UninterpretedOption) + return object; + var message = new $root.google.protobuf.UninterpretedOption(); + if (object.name) { + if (!Array.isArray(object.name)) + throw TypeError(".google.protobuf.UninterpretedOption.name: array expected"); + message.name = []; + for (var i = 0; i < object.name.length; ++i) { + if (typeof object.name[i] !== "object") + throw TypeError(".google.protobuf.UninterpretedOption.name: object expected"); + message.name[i] = $root.google.protobuf.UninterpretedOption.NamePart.fromObject(object.name[i]); + } + } + if (object.identifierValue != null) + message.identifierValue = String(object.identifierValue); + if (object.positiveIntValue != null) + if ($util.Long) + (message.positiveIntValue = $util.Long.fromValue(object.positiveIntValue)).unsigned = true; + else if (typeof object.positiveIntValue === "string") + message.positiveIntValue = parseInt(object.positiveIntValue, 10); + else if (typeof object.positiveIntValue === "number") + message.positiveIntValue = object.positiveIntValue; + else if (typeof object.positiveIntValue === "object") + message.positiveIntValue = new $util.LongBits(object.positiveIntValue.low >>> 0, object.positiveIntValue.high >>> 0).toNumber(true); + if (object.negativeIntValue != null) + if ($util.Long) + (message.negativeIntValue = $util.Long.fromValue(object.negativeIntValue)).unsigned = false; + else if (typeof object.negativeIntValue === "string") + message.negativeIntValue = parseInt(object.negativeIntValue, 10); + else if (typeof object.negativeIntValue === "number") + message.negativeIntValue = object.negativeIntValue; + else if (typeof object.negativeIntValue === "object") + message.negativeIntValue = new $util.LongBits(object.negativeIntValue.low >>> 0, object.negativeIntValue.high >>> 0).toNumber(); + if (object.doubleValue != null) + message.doubleValue = Number(object.doubleValue); + if (object.stringValue != null) + if (typeof object.stringValue === "string") + $util.base64.decode(object.stringValue, message.stringValue = $util.newBuffer($util.base64.length(object.stringValue)), 0); + else if (object.stringValue.length) + message.stringValue = object.stringValue; + if (object.aggregateValue != null) + message.aggregateValue = String(object.aggregateValue); + return message; + }; + + /** + * Creates a plain object from an UninterpretedOption message. Also converts values to other types if specified. + * @function toObject + * @memberof google.protobuf.UninterpretedOption + * @static + * @param {google.protobuf.UninterpretedOption} message UninterpretedOption + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + UninterpretedOption.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.arrays || options.defaults) + object.name = []; + if (options.defaults) { + object.identifierValue = ""; + if ($util.Long) { + var long = new $util.Long(0, 0, true); + object.positiveIntValue = options.longs === String ? long.toString() : options.longs === Number ? long.toNumber() : long; + } else + object.positiveIntValue = options.longs === String ? "0" : 0; + if ($util.Long) { + var long = new $util.Long(0, 0, false); + object.negativeIntValue = options.longs === String ? long.toString() : options.longs === Number ? long.toNumber() : long; + } else + object.negativeIntValue = options.longs === String ? "0" : 0; + object.doubleValue = 0; + if (options.bytes === String) + object.stringValue = ""; + else { + object.stringValue = []; + if (options.bytes !== Array) + object.stringValue = $util.newBuffer(object.stringValue); + } + object.aggregateValue = ""; + } + if (message.name && message.name.length) { + object.name = []; + for (var j = 0; j < message.name.length; ++j) + object.name[j] = $root.google.protobuf.UninterpretedOption.NamePart.toObject(message.name[j], options); + } + if (message.identifierValue != null && message.hasOwnProperty("identifierValue")) + object.identifierValue = message.identifierValue; + if (message.positiveIntValue != null && message.hasOwnProperty("positiveIntValue")) + if (typeof message.positiveIntValue === "number") + object.positiveIntValue = options.longs === String ? String(message.positiveIntValue) : message.positiveIntValue; + else + object.positiveIntValue = options.longs === String ? $util.Long.prototype.toString.call(message.positiveIntValue) : options.longs === Number ? new $util.LongBits(message.positiveIntValue.low >>> 0, message.positiveIntValue.high >>> 0).toNumber(true) : message.positiveIntValue; + if (message.negativeIntValue != null && message.hasOwnProperty("negativeIntValue")) + if (typeof message.negativeIntValue === "number") + object.negativeIntValue = options.longs === String ? String(message.negativeIntValue) : message.negativeIntValue; + else + object.negativeIntValue = options.longs === String ? $util.Long.prototype.toString.call(message.negativeIntValue) : options.longs === Number ? new $util.LongBits(message.negativeIntValue.low >>> 0, message.negativeIntValue.high >>> 0).toNumber() : message.negativeIntValue; + if (message.doubleValue != null && message.hasOwnProperty("doubleValue")) + object.doubleValue = options.json && !isFinite(message.doubleValue) ? String(message.doubleValue) : message.doubleValue; + if (message.stringValue != null && message.hasOwnProperty("stringValue")) + object.stringValue = options.bytes === String ? $util.base64.encode(message.stringValue, 0, message.stringValue.length) : options.bytes === Array ? Array.prototype.slice.call(message.stringValue) : message.stringValue; + if (message.aggregateValue != null && message.hasOwnProperty("aggregateValue")) + object.aggregateValue = message.aggregateValue; + return object; + }; + + /** + * Converts this UninterpretedOption to JSON. + * @function toJSON + * @memberof google.protobuf.UninterpretedOption + * @instance + * @returns {Object.} JSON object + */ + UninterpretedOption.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + UninterpretedOption.NamePart = (function() { + + /** + * Properties of a NamePart. + * @memberof google.protobuf.UninterpretedOption + * @interface INamePart + * @property {string} namePart NamePart namePart + * @property {boolean} isExtension NamePart isExtension + */ + + /** + * Constructs a new NamePart. + * @memberof google.protobuf.UninterpretedOption + * @classdesc Represents a NamePart. + * @implements INamePart + * @constructor + * @param {google.protobuf.UninterpretedOption.INamePart=} [properties] Properties to set + */ + function NamePart(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]]; + } + + /** + * NamePart namePart. + * @member {string} namePart + * @memberof google.protobuf.UninterpretedOption.NamePart + * @instance + */ + NamePart.prototype.namePart = ""; + + /** + * NamePart isExtension. + * @member {boolean} isExtension + * @memberof google.protobuf.UninterpretedOption.NamePart + * @instance + */ + NamePart.prototype.isExtension = false; + + /** + * Creates a new NamePart instance using the specified properties. + * @function create + * @memberof google.protobuf.UninterpretedOption.NamePart + * @static + * @param {google.protobuf.UninterpretedOption.INamePart=} [properties] Properties to set + * @returns {google.protobuf.UninterpretedOption.NamePart} NamePart instance + */ + NamePart.create = function create(properties) { + return new NamePart(properties); + }; + + /** + * Encodes the specified NamePart message. Does not implicitly {@link google.protobuf.UninterpretedOption.NamePart.verify|verify} messages. + * @function encode + * @memberof google.protobuf.UninterpretedOption.NamePart + * @static + * @param {google.protobuf.UninterpretedOption.INamePart} message NamePart message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + NamePart.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + writer.uint32(/* id 1, wireType 2 =*/10).string(message.namePart); + writer.uint32(/* id 2, wireType 0 =*/16).bool(message.isExtension); + return writer; + }; + + /** + * Encodes the specified NamePart message, length delimited. Does not implicitly {@link google.protobuf.UninterpretedOption.NamePart.verify|verify} messages. + * @function encodeDelimited + * @memberof google.protobuf.UninterpretedOption.NamePart + * @static + * @param {google.protobuf.UninterpretedOption.INamePart} message NamePart message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + NamePart.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a NamePart message from the specified reader or buffer. + * @function decode + * @memberof google.protobuf.UninterpretedOption.NamePart + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.protobuf.UninterpretedOption.NamePart} NamePart + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + NamePart.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.protobuf.UninterpretedOption.NamePart(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.namePart = reader.string(); + break; + case 2: + message.isExtension = reader.bool(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + if (!message.hasOwnProperty("namePart")) + throw $util.ProtocolError("missing required 'namePart'", { instance: message }); + if (!message.hasOwnProperty("isExtension")) + throw $util.ProtocolError("missing required 'isExtension'", { instance: message }); + return message; + }; + + /** + * Decodes a NamePart message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.protobuf.UninterpretedOption.NamePart + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.protobuf.UninterpretedOption.NamePart} NamePart + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + NamePart.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a NamePart message. + * @function verify + * @memberof google.protobuf.UninterpretedOption.NamePart + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + NamePart.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (!$util.isString(message.namePart)) + return "namePart: string expected"; + if (typeof message.isExtension !== "boolean") + return "isExtension: boolean expected"; + return null; + }; + + /** + * Creates a NamePart message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.protobuf.UninterpretedOption.NamePart + * @static + * @param {Object.} object Plain object + * @returns {google.protobuf.UninterpretedOption.NamePart} NamePart + */ + NamePart.fromObject = function fromObject(object) { + if (object instanceof $root.google.protobuf.UninterpretedOption.NamePart) + return object; + var message = new $root.google.protobuf.UninterpretedOption.NamePart(); + if (object.namePart != null) + message.namePart = String(object.namePart); + if (object.isExtension != null) + message.isExtension = Boolean(object.isExtension); + return message; + }; + + /** + * Creates a plain object from a NamePart message. Also converts values to other types if specified. + * @function toObject + * @memberof google.protobuf.UninterpretedOption.NamePart + * @static + * @param {google.protobuf.UninterpretedOption.NamePart} message NamePart + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + NamePart.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.namePart = ""; + object.isExtension = false; + } + if (message.namePart != null && message.hasOwnProperty("namePart")) + object.namePart = message.namePart; + if (message.isExtension != null && message.hasOwnProperty("isExtension")) + object.isExtension = message.isExtension; + return object; + }; + + /** + * Converts this NamePart to JSON. + * @function toJSON + * @memberof google.protobuf.UninterpretedOption.NamePart + * @instance + * @returns {Object.} JSON object + */ + NamePart.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return NamePart; + })(); + + return UninterpretedOption; + })(); + + protobuf.SourceCodeInfo = (function() { + + /** + * Properties of a SourceCodeInfo. + * @memberof google.protobuf + * @interface ISourceCodeInfo + * @property {Array.|null} [location] SourceCodeInfo location + */ + + /** + * Constructs a new SourceCodeInfo. + * @memberof google.protobuf + * @classdesc Represents a SourceCodeInfo. + * @implements ISourceCodeInfo + * @constructor + * @param {google.protobuf.ISourceCodeInfo=} [properties] Properties to set + */ + function SourceCodeInfo(properties) { + this.location = []; + 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]]; + } + + /** + * SourceCodeInfo location. + * @member {Array.} location + * @memberof google.protobuf.SourceCodeInfo + * @instance + */ + SourceCodeInfo.prototype.location = $util.emptyArray; + + /** + * Creates a new SourceCodeInfo instance using the specified properties. + * @function create + * @memberof google.protobuf.SourceCodeInfo + * @static + * @param {google.protobuf.ISourceCodeInfo=} [properties] Properties to set + * @returns {google.protobuf.SourceCodeInfo} SourceCodeInfo instance + */ + SourceCodeInfo.create = function create(properties) { + return new SourceCodeInfo(properties); + }; + + /** + * Encodes the specified SourceCodeInfo message. Does not implicitly {@link google.protobuf.SourceCodeInfo.verify|verify} messages. + * @function encode + * @memberof google.protobuf.SourceCodeInfo + * @static + * @param {google.protobuf.ISourceCodeInfo} message SourceCodeInfo message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + SourceCodeInfo.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.location != null && message.location.length) + for (var i = 0; i < message.location.length; ++i) + $root.google.protobuf.SourceCodeInfo.Location.encode(message.location[i], writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim(); + return writer; + }; + + /** + * Encodes the specified SourceCodeInfo message, length delimited. Does not implicitly {@link google.protobuf.SourceCodeInfo.verify|verify} messages. + * @function encodeDelimited + * @memberof google.protobuf.SourceCodeInfo + * @static + * @param {google.protobuf.ISourceCodeInfo} message SourceCodeInfo message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + SourceCodeInfo.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a SourceCodeInfo message from the specified reader or buffer. + * @function decode + * @memberof google.protobuf.SourceCodeInfo + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.protobuf.SourceCodeInfo} SourceCodeInfo + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + SourceCodeInfo.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.protobuf.SourceCodeInfo(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + if (!(message.location && message.location.length)) + message.location = []; + message.location.push($root.google.protobuf.SourceCodeInfo.Location.decode(reader, reader.uint32())); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a SourceCodeInfo message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.protobuf.SourceCodeInfo + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.protobuf.SourceCodeInfo} SourceCodeInfo + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + SourceCodeInfo.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a SourceCodeInfo message. + * @function verify + * @memberof google.protobuf.SourceCodeInfo + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + SourceCodeInfo.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.location != null && message.hasOwnProperty("location")) { + if (!Array.isArray(message.location)) + return "location: array expected"; + for (var i = 0; i < message.location.length; ++i) { + var error = $root.google.protobuf.SourceCodeInfo.Location.verify(message.location[i]); + if (error) + return "location." + error; + } + } + return null; + }; + + /** + * Creates a SourceCodeInfo message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.protobuf.SourceCodeInfo + * @static + * @param {Object.} object Plain object + * @returns {google.protobuf.SourceCodeInfo} SourceCodeInfo + */ + SourceCodeInfo.fromObject = function fromObject(object) { + if (object instanceof $root.google.protobuf.SourceCodeInfo) + return object; + var message = new $root.google.protobuf.SourceCodeInfo(); + if (object.location) { + if (!Array.isArray(object.location)) + throw TypeError(".google.protobuf.SourceCodeInfo.location: array expected"); + message.location = []; + for (var i = 0; i < object.location.length; ++i) { + if (typeof object.location[i] !== "object") + throw TypeError(".google.protobuf.SourceCodeInfo.location: object expected"); + message.location[i] = $root.google.protobuf.SourceCodeInfo.Location.fromObject(object.location[i]); + } + } + return message; + }; + + /** + * Creates a plain object from a SourceCodeInfo message. Also converts values to other types if specified. + * @function toObject + * @memberof google.protobuf.SourceCodeInfo + * @static + * @param {google.protobuf.SourceCodeInfo} message SourceCodeInfo + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + SourceCodeInfo.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.arrays || options.defaults) + object.location = []; + if (message.location && message.location.length) { + object.location = []; + for (var j = 0; j < message.location.length; ++j) + object.location[j] = $root.google.protobuf.SourceCodeInfo.Location.toObject(message.location[j], options); + } + return object; + }; + + /** + * Converts this SourceCodeInfo to JSON. + * @function toJSON + * @memberof google.protobuf.SourceCodeInfo + * @instance + * @returns {Object.} JSON object + */ + SourceCodeInfo.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + SourceCodeInfo.Location = (function() { + + /** + * Properties of a Location. + * @memberof google.protobuf.SourceCodeInfo + * @interface ILocation + * @property {Array.|null} [path] Location path + * @property {Array.|null} [span] Location span + * @property {string|null} [leadingComments] Location leadingComments + * @property {string|null} [trailingComments] Location trailingComments + * @property {Array.|null} [leadingDetachedComments] Location leadingDetachedComments + */ + + /** + * Constructs a new Location. + * @memberof google.protobuf.SourceCodeInfo + * @classdesc Represents a Location. + * @implements ILocation + * @constructor + * @param {google.protobuf.SourceCodeInfo.ILocation=} [properties] Properties to set + */ + function Location(properties) { + this.path = []; + this.span = []; + this.leadingDetachedComments = []; + 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]]; + } + + /** + * Location path. + * @member {Array.} path + * @memberof google.protobuf.SourceCodeInfo.Location + * @instance + */ + Location.prototype.path = $util.emptyArray; + + /** + * Location span. + * @member {Array.} span + * @memberof google.protobuf.SourceCodeInfo.Location + * @instance + */ + Location.prototype.span = $util.emptyArray; + + /** + * Location leadingComments. + * @member {string} leadingComments + * @memberof google.protobuf.SourceCodeInfo.Location + * @instance + */ + Location.prototype.leadingComments = ""; + + /** + * Location trailingComments. + * @member {string} trailingComments + * @memberof google.protobuf.SourceCodeInfo.Location + * @instance + */ + Location.prototype.trailingComments = ""; + + /** + * Location leadingDetachedComments. + * @member {Array.} leadingDetachedComments + * @memberof google.protobuf.SourceCodeInfo.Location + * @instance + */ + Location.prototype.leadingDetachedComments = $util.emptyArray; + + /** + * Creates a new Location instance using the specified properties. + * @function create + * @memberof google.protobuf.SourceCodeInfo.Location + * @static + * @param {google.protobuf.SourceCodeInfo.ILocation=} [properties] Properties to set + * @returns {google.protobuf.SourceCodeInfo.Location} Location instance + */ + Location.create = function create(properties) { + return new Location(properties); + }; + + /** + * Encodes the specified Location message. Does not implicitly {@link google.protobuf.SourceCodeInfo.Location.verify|verify} messages. + * @function encode + * @memberof google.protobuf.SourceCodeInfo.Location + * @static + * @param {google.protobuf.SourceCodeInfo.ILocation} message Location message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + Location.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.path != null && message.path.length) { + writer.uint32(/* id 1, wireType 2 =*/10).fork(); + for (var i = 0; i < message.path.length; ++i) + writer.int32(message.path[i]); + writer.ldelim(); + } + if (message.span != null && message.span.length) { + writer.uint32(/* id 2, wireType 2 =*/18).fork(); + for (var i = 0; i < message.span.length; ++i) + writer.int32(message.span[i]); + writer.ldelim(); + } + if (message.leadingComments != null && Object.hasOwnProperty.call(message, "leadingComments")) + writer.uint32(/* id 3, wireType 2 =*/26).string(message.leadingComments); + if (message.trailingComments != null && Object.hasOwnProperty.call(message, "trailingComments")) + writer.uint32(/* id 4, wireType 2 =*/34).string(message.trailingComments); + if (message.leadingDetachedComments != null && message.leadingDetachedComments.length) + for (var i = 0; i < message.leadingDetachedComments.length; ++i) + writer.uint32(/* id 6, wireType 2 =*/50).string(message.leadingDetachedComments[i]); + return writer; + }; + + /** + * Encodes the specified Location message, length delimited. Does not implicitly {@link google.protobuf.SourceCodeInfo.Location.verify|verify} messages. + * @function encodeDelimited + * @memberof google.protobuf.SourceCodeInfo.Location + * @static + * @param {google.protobuf.SourceCodeInfo.ILocation} message Location message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + Location.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a Location message from the specified reader or buffer. + * @function decode + * @memberof google.protobuf.SourceCodeInfo.Location + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.protobuf.SourceCodeInfo.Location} Location + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + Location.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.protobuf.SourceCodeInfo.Location(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + if (!(message.path && message.path.length)) + message.path = []; + if ((tag & 7) === 2) { + var end2 = reader.uint32() + reader.pos; + while (reader.pos < end2) + message.path.push(reader.int32()); + } else + message.path.push(reader.int32()); + break; + case 2: + if (!(message.span && message.span.length)) + message.span = []; + if ((tag & 7) === 2) { + var end2 = reader.uint32() + reader.pos; + while (reader.pos < end2) + message.span.push(reader.int32()); + } else + message.span.push(reader.int32()); + break; + case 3: + message.leadingComments = reader.string(); + break; + case 4: + message.trailingComments = reader.string(); + break; + case 6: + if (!(message.leadingDetachedComments && message.leadingDetachedComments.length)) + message.leadingDetachedComments = []; + message.leadingDetachedComments.push(reader.string()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a Location message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.protobuf.SourceCodeInfo.Location + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.protobuf.SourceCodeInfo.Location} Location + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + Location.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a Location message. + * @function verify + * @memberof google.protobuf.SourceCodeInfo.Location + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + Location.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.path != null && message.hasOwnProperty("path")) { + if (!Array.isArray(message.path)) + return "path: array expected"; + for (var i = 0; i < message.path.length; ++i) + if (!$util.isInteger(message.path[i])) + return "path: integer[] expected"; + } + if (message.span != null && message.hasOwnProperty("span")) { + if (!Array.isArray(message.span)) + return "span: array expected"; + for (var i = 0; i < message.span.length; ++i) + if (!$util.isInteger(message.span[i])) + return "span: integer[] expected"; + } + if (message.leadingComments != null && message.hasOwnProperty("leadingComments")) + if (!$util.isString(message.leadingComments)) + return "leadingComments: string expected"; + if (message.trailingComments != null && message.hasOwnProperty("trailingComments")) + if (!$util.isString(message.trailingComments)) + return "trailingComments: string expected"; + if (message.leadingDetachedComments != null && message.hasOwnProperty("leadingDetachedComments")) { + if (!Array.isArray(message.leadingDetachedComments)) + return "leadingDetachedComments: array expected"; + for (var i = 0; i < message.leadingDetachedComments.length; ++i) + if (!$util.isString(message.leadingDetachedComments[i])) + return "leadingDetachedComments: string[] expected"; + } + return null; + }; + + /** + * Creates a Location message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.protobuf.SourceCodeInfo.Location + * @static + * @param {Object.} object Plain object + * @returns {google.protobuf.SourceCodeInfo.Location} Location + */ + Location.fromObject = function fromObject(object) { + if (object instanceof $root.google.protobuf.SourceCodeInfo.Location) + return object; + var message = new $root.google.protobuf.SourceCodeInfo.Location(); + if (object.path) { + if (!Array.isArray(object.path)) + throw TypeError(".google.protobuf.SourceCodeInfo.Location.path: array expected"); + message.path = []; + for (var i = 0; i < object.path.length; ++i) + message.path[i] = object.path[i] | 0; + } + if (object.span) { + if (!Array.isArray(object.span)) + throw TypeError(".google.protobuf.SourceCodeInfo.Location.span: array expected"); + message.span = []; + for (var i = 0; i < object.span.length; ++i) + message.span[i] = object.span[i] | 0; + } + if (object.leadingComments != null) + message.leadingComments = String(object.leadingComments); + if (object.trailingComments != null) + message.trailingComments = String(object.trailingComments); + if (object.leadingDetachedComments) { + if (!Array.isArray(object.leadingDetachedComments)) + throw TypeError(".google.protobuf.SourceCodeInfo.Location.leadingDetachedComments: array expected"); + message.leadingDetachedComments = []; + for (var i = 0; i < object.leadingDetachedComments.length; ++i) + message.leadingDetachedComments[i] = String(object.leadingDetachedComments[i]); + } + return message; + }; + + /** + * Creates a plain object from a Location message. Also converts values to other types if specified. + * @function toObject + * @memberof google.protobuf.SourceCodeInfo.Location + * @static + * @param {google.protobuf.SourceCodeInfo.Location} message Location + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + Location.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.arrays || options.defaults) { + object.path = []; + object.span = []; + object.leadingDetachedComments = []; + } + if (options.defaults) { + object.leadingComments = ""; + object.trailingComments = ""; + } + if (message.path && message.path.length) { + object.path = []; + for (var j = 0; j < message.path.length; ++j) + object.path[j] = message.path[j]; + } + if (message.span && message.span.length) { + object.span = []; + for (var j = 0; j < message.span.length; ++j) + object.span[j] = message.span[j]; + } + if (message.leadingComments != null && message.hasOwnProperty("leadingComments")) + object.leadingComments = message.leadingComments; + if (message.trailingComments != null && message.hasOwnProperty("trailingComments")) + object.trailingComments = message.trailingComments; + if (message.leadingDetachedComments && message.leadingDetachedComments.length) { + object.leadingDetachedComments = []; + for (var j = 0; j < message.leadingDetachedComments.length; ++j) + object.leadingDetachedComments[j] = message.leadingDetachedComments[j]; + } + return object; + }; + + /** + * Converts this Location to JSON. + * @function toJSON + * @memberof google.protobuf.SourceCodeInfo.Location + * @instance + * @returns {Object.} JSON object + */ + Location.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return Location; + })(); + + return SourceCodeInfo; + })(); + + protobuf.GeneratedCodeInfo = (function() { + + /** + * Properties of a GeneratedCodeInfo. + * @memberof google.protobuf + * @interface IGeneratedCodeInfo + * @property {Array.|null} [annotation] GeneratedCodeInfo annotation + */ + + /** + * Constructs a new GeneratedCodeInfo. + * @memberof google.protobuf + * @classdesc Represents a GeneratedCodeInfo. + * @implements IGeneratedCodeInfo + * @constructor + * @param {google.protobuf.IGeneratedCodeInfo=} [properties] Properties to set + */ + function GeneratedCodeInfo(properties) { + this.annotation = []; + 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]]; + } + + /** + * GeneratedCodeInfo annotation. + * @member {Array.} annotation + * @memberof google.protobuf.GeneratedCodeInfo + * @instance + */ + GeneratedCodeInfo.prototype.annotation = $util.emptyArray; + + /** + * Creates a new GeneratedCodeInfo instance using the specified properties. + * @function create + * @memberof google.protobuf.GeneratedCodeInfo + * @static + * @param {google.protobuf.IGeneratedCodeInfo=} [properties] Properties to set + * @returns {google.protobuf.GeneratedCodeInfo} GeneratedCodeInfo instance + */ + GeneratedCodeInfo.create = function create(properties) { + return new GeneratedCodeInfo(properties); + }; + + /** + * Encodes the specified GeneratedCodeInfo message. Does not implicitly {@link google.protobuf.GeneratedCodeInfo.verify|verify} messages. + * @function encode + * @memberof google.protobuf.GeneratedCodeInfo + * @static + * @param {google.protobuf.IGeneratedCodeInfo} message GeneratedCodeInfo message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + GeneratedCodeInfo.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.annotation != null && message.annotation.length) + for (var i = 0; i < message.annotation.length; ++i) + $root.google.protobuf.GeneratedCodeInfo.Annotation.encode(message.annotation[i], writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim(); + return writer; + }; + + /** + * Encodes the specified GeneratedCodeInfo message, length delimited. Does not implicitly {@link google.protobuf.GeneratedCodeInfo.verify|verify} messages. + * @function encodeDelimited + * @memberof google.protobuf.GeneratedCodeInfo + * @static + * @param {google.protobuf.IGeneratedCodeInfo} message GeneratedCodeInfo message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + GeneratedCodeInfo.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a GeneratedCodeInfo message from the specified reader or buffer. + * @function decode + * @memberof google.protobuf.GeneratedCodeInfo + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.protobuf.GeneratedCodeInfo} GeneratedCodeInfo + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + GeneratedCodeInfo.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.protobuf.GeneratedCodeInfo(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + if (!(message.annotation && message.annotation.length)) + message.annotation = []; + message.annotation.push($root.google.protobuf.GeneratedCodeInfo.Annotation.decode(reader, reader.uint32())); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a GeneratedCodeInfo message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.protobuf.GeneratedCodeInfo + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.protobuf.GeneratedCodeInfo} GeneratedCodeInfo + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + GeneratedCodeInfo.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a GeneratedCodeInfo message. + * @function verify + * @memberof google.protobuf.GeneratedCodeInfo + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + GeneratedCodeInfo.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.annotation != null && message.hasOwnProperty("annotation")) { + if (!Array.isArray(message.annotation)) + return "annotation: array expected"; + for (var i = 0; i < message.annotation.length; ++i) { + var error = $root.google.protobuf.GeneratedCodeInfo.Annotation.verify(message.annotation[i]); + if (error) + return "annotation." + error; + } + } + return null; + }; + + /** + * Creates a GeneratedCodeInfo message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.protobuf.GeneratedCodeInfo + * @static + * @param {Object.} object Plain object + * @returns {google.protobuf.GeneratedCodeInfo} GeneratedCodeInfo + */ + GeneratedCodeInfo.fromObject = function fromObject(object) { + if (object instanceof $root.google.protobuf.GeneratedCodeInfo) + return object; + var message = new $root.google.protobuf.GeneratedCodeInfo(); + if (object.annotation) { + if (!Array.isArray(object.annotation)) + throw TypeError(".google.protobuf.GeneratedCodeInfo.annotation: array expected"); + message.annotation = []; + for (var i = 0; i < object.annotation.length; ++i) { + if (typeof object.annotation[i] !== "object") + throw TypeError(".google.protobuf.GeneratedCodeInfo.annotation: object expected"); + message.annotation[i] = $root.google.protobuf.GeneratedCodeInfo.Annotation.fromObject(object.annotation[i]); + } + } + return message; + }; + + /** + * Creates a plain object from a GeneratedCodeInfo message. Also converts values to other types if specified. + * @function toObject + * @memberof google.protobuf.GeneratedCodeInfo + * @static + * @param {google.protobuf.GeneratedCodeInfo} message GeneratedCodeInfo + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + GeneratedCodeInfo.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.arrays || options.defaults) + object.annotation = []; + if (message.annotation && message.annotation.length) { + object.annotation = []; + for (var j = 0; j < message.annotation.length; ++j) + object.annotation[j] = $root.google.protobuf.GeneratedCodeInfo.Annotation.toObject(message.annotation[j], options); + } + return object; + }; + + /** + * Converts this GeneratedCodeInfo to JSON. + * @function toJSON + * @memberof google.protobuf.GeneratedCodeInfo + * @instance + * @returns {Object.} JSON object + */ + GeneratedCodeInfo.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + GeneratedCodeInfo.Annotation = (function() { + + /** + * Properties of an Annotation. + * @memberof google.protobuf.GeneratedCodeInfo + * @interface IAnnotation + * @property {Array.|null} [path] Annotation path + * @property {string|null} [sourceFile] Annotation sourceFile + * @property {number|null} [begin] Annotation begin + * @property {number|null} [end] Annotation end + */ + + /** + * Constructs a new Annotation. + * @memberof google.protobuf.GeneratedCodeInfo + * @classdesc Represents an Annotation. + * @implements IAnnotation + * @constructor + * @param {google.protobuf.GeneratedCodeInfo.IAnnotation=} [properties] Properties to set + */ + function Annotation(properties) { + this.path = []; + 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]]; + } + + /** + * Annotation path. + * @member {Array.} path + * @memberof google.protobuf.GeneratedCodeInfo.Annotation + * @instance + */ + Annotation.prototype.path = $util.emptyArray; + + /** + * Annotation sourceFile. + * @member {string} sourceFile + * @memberof google.protobuf.GeneratedCodeInfo.Annotation + * @instance + */ + Annotation.prototype.sourceFile = ""; + + /** + * Annotation begin. + * @member {number} begin + * @memberof google.protobuf.GeneratedCodeInfo.Annotation + * @instance + */ + Annotation.prototype.begin = 0; + + /** + * Annotation end. + * @member {number} end + * @memberof google.protobuf.GeneratedCodeInfo.Annotation + * @instance + */ + Annotation.prototype.end = 0; + + /** + * Creates a new Annotation instance using the specified properties. + * @function create + * @memberof google.protobuf.GeneratedCodeInfo.Annotation + * @static + * @param {google.protobuf.GeneratedCodeInfo.IAnnotation=} [properties] Properties to set + * @returns {google.protobuf.GeneratedCodeInfo.Annotation} Annotation instance + */ + Annotation.create = function create(properties) { + return new Annotation(properties); + }; + + /** + * Encodes the specified Annotation message. Does not implicitly {@link google.protobuf.GeneratedCodeInfo.Annotation.verify|verify} messages. + * @function encode + * @memberof google.protobuf.GeneratedCodeInfo.Annotation + * @static + * @param {google.protobuf.GeneratedCodeInfo.IAnnotation} message Annotation message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + Annotation.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.path != null && message.path.length) { + writer.uint32(/* id 1, wireType 2 =*/10).fork(); + for (var i = 0; i < message.path.length; ++i) + writer.int32(message.path[i]); + writer.ldelim(); + } + if (message.sourceFile != null && Object.hasOwnProperty.call(message, "sourceFile")) + writer.uint32(/* id 2, wireType 2 =*/18).string(message.sourceFile); + if (message.begin != null && Object.hasOwnProperty.call(message, "begin")) + writer.uint32(/* id 3, wireType 0 =*/24).int32(message.begin); + if (message.end != null && Object.hasOwnProperty.call(message, "end")) + writer.uint32(/* id 4, wireType 0 =*/32).int32(message.end); + return writer; + }; + + /** + * Encodes the specified Annotation message, length delimited. Does not implicitly {@link google.protobuf.GeneratedCodeInfo.Annotation.verify|verify} messages. + * @function encodeDelimited + * @memberof google.protobuf.GeneratedCodeInfo.Annotation + * @static + * @param {google.protobuf.GeneratedCodeInfo.IAnnotation} message Annotation message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + Annotation.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes an Annotation message from the specified reader or buffer. + * @function decode + * @memberof google.protobuf.GeneratedCodeInfo.Annotation + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.protobuf.GeneratedCodeInfo.Annotation} Annotation + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + Annotation.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.protobuf.GeneratedCodeInfo.Annotation(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + if (!(message.path && message.path.length)) + message.path = []; + if ((tag & 7) === 2) { + var end2 = reader.uint32() + reader.pos; + while (reader.pos < end2) + message.path.push(reader.int32()); + } else + message.path.push(reader.int32()); + break; + case 2: + message.sourceFile = reader.string(); + break; + case 3: + message.begin = reader.int32(); + break; + case 4: + message.end = reader.int32(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes an Annotation message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.protobuf.GeneratedCodeInfo.Annotation + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.protobuf.GeneratedCodeInfo.Annotation} Annotation + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + Annotation.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies an Annotation message. + * @function verify + * @memberof google.protobuf.GeneratedCodeInfo.Annotation + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + Annotation.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.path != null && message.hasOwnProperty("path")) { + if (!Array.isArray(message.path)) + return "path: array expected"; + for (var i = 0; i < message.path.length; ++i) + if (!$util.isInteger(message.path[i])) + return "path: integer[] expected"; + } + if (message.sourceFile != null && message.hasOwnProperty("sourceFile")) + if (!$util.isString(message.sourceFile)) + return "sourceFile: string expected"; + if (message.begin != null && message.hasOwnProperty("begin")) + if (!$util.isInteger(message.begin)) + return "begin: integer expected"; + if (message.end != null && message.hasOwnProperty("end")) + if (!$util.isInteger(message.end)) + return "end: integer expected"; + return null; + }; + + /** + * Creates an Annotation message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.protobuf.GeneratedCodeInfo.Annotation + * @static + * @param {Object.} object Plain object + * @returns {google.protobuf.GeneratedCodeInfo.Annotation} Annotation + */ + Annotation.fromObject = function fromObject(object) { + if (object instanceof $root.google.protobuf.GeneratedCodeInfo.Annotation) + return object; + var message = new $root.google.protobuf.GeneratedCodeInfo.Annotation(); + if (object.path) { + if (!Array.isArray(object.path)) + throw TypeError(".google.protobuf.GeneratedCodeInfo.Annotation.path: array expected"); + message.path = []; + for (var i = 0; i < object.path.length; ++i) + message.path[i] = object.path[i] | 0; + } + if (object.sourceFile != null) + message.sourceFile = String(object.sourceFile); + if (object.begin != null) + message.begin = object.begin | 0; + if (object.end != null) + message.end = object.end | 0; + return message; + }; + + /** + * Creates a plain object from an Annotation message. Also converts values to other types if specified. + * @function toObject + * @memberof google.protobuf.GeneratedCodeInfo.Annotation + * @static + * @param {google.protobuf.GeneratedCodeInfo.Annotation} message Annotation + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + Annotation.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.arrays || options.defaults) + object.path = []; + if (options.defaults) { + object.sourceFile = ""; + object.begin = 0; + object.end = 0; + } + if (message.path && message.path.length) { + object.path = []; + for (var j = 0; j < message.path.length; ++j) + object.path[j] = message.path[j]; + } + if (message.sourceFile != null && message.hasOwnProperty("sourceFile")) + object.sourceFile = message.sourceFile; + if (message.begin != null && message.hasOwnProperty("begin")) + object.begin = message.begin; + if (message.end != null && message.hasOwnProperty("end")) + object.end = message.end; + return object; + }; + + /** + * Converts this Annotation to JSON. + * @function toJSON + * @memberof google.protobuf.GeneratedCodeInfo.Annotation + * @instance + * @returns {Object.} JSON object + */ + Annotation.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return Annotation; + })(); + + return GeneratedCodeInfo; + })(); + + protobuf.Any = (function() { + + /** + * Properties of an Any. + * @memberof google.protobuf + * @interface IAny + * @property {string|null} [type_url] Any type_url + * @property {Uint8Array|null} [value] Any value + */ + + /** + * Constructs a new Any. + * @memberof google.protobuf + * @classdesc Represents an Any. + * @implements IAny + * @constructor + * @param {google.protobuf.IAny=} [properties] Properties to set + */ + function Any(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]]; + } + + /** + * Any type_url. + * @member {string} type_url + * @memberof google.protobuf.Any + * @instance + */ + Any.prototype.type_url = ""; + + /** + * Any value. + * @member {Uint8Array} value + * @memberof google.protobuf.Any + * @instance + */ + Any.prototype.value = $util.newBuffer([]); + + /** + * Creates a new Any instance using the specified properties. + * @function create + * @memberof google.protobuf.Any + * @static + * @param {google.protobuf.IAny=} [properties] Properties to set + * @returns {google.protobuf.Any} Any instance + */ + Any.create = function create(properties) { + return new Any(properties); + }; + + /** + * Encodes the specified Any message. Does not implicitly {@link google.protobuf.Any.verify|verify} messages. + * @function encode + * @memberof google.protobuf.Any + * @static + * @param {google.protobuf.IAny} message Any message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + Any.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.type_url != null && Object.hasOwnProperty.call(message, "type_url")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.type_url); + if (message.value != null && Object.hasOwnProperty.call(message, "value")) + writer.uint32(/* id 2, wireType 2 =*/18).bytes(message.value); + return writer; + }; + + /** + * Encodes the specified Any message, length delimited. Does not implicitly {@link google.protobuf.Any.verify|verify} messages. + * @function encodeDelimited + * @memberof google.protobuf.Any + * @static + * @param {google.protobuf.IAny} message Any message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + Any.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes an Any message from the specified reader or buffer. + * @function decode + * @memberof google.protobuf.Any + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.protobuf.Any} Any + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + Any.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.protobuf.Any(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.type_url = reader.string(); + break; + case 2: + message.value = reader.bytes(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes an Any message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.protobuf.Any + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.protobuf.Any} Any + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + Any.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies an Any message. + * @function verify + * @memberof google.protobuf.Any + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + Any.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.type_url != null && message.hasOwnProperty("type_url")) + if (!$util.isString(message.type_url)) + return "type_url: string expected"; + if (message.value != null && message.hasOwnProperty("value")) + if (!(message.value && typeof message.value.length === "number" || $util.isString(message.value))) + return "value: buffer expected"; + return null; + }; + + /** + * Creates an Any message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.protobuf.Any + * @static + * @param {Object.} object Plain object + * @returns {google.protobuf.Any} Any + */ + Any.fromObject = function fromObject(object) { + if (object instanceof $root.google.protobuf.Any) + return object; + var message = new $root.google.protobuf.Any(); + if (object.type_url != null) + message.type_url = String(object.type_url); + if (object.value != null) + if (typeof object.value === "string") + $util.base64.decode(object.value, message.value = $util.newBuffer($util.base64.length(object.value)), 0); + else if (object.value.length) + message.value = object.value; + return message; + }; + + /** + * Creates a plain object from an Any message. Also converts values to other types if specified. + * @function toObject + * @memberof google.protobuf.Any + * @static + * @param {google.protobuf.Any} message Any + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + Any.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.type_url = ""; + if (options.bytes === String) + object.value = ""; + else { + object.value = []; + if (options.bytes !== Array) + object.value = $util.newBuffer(object.value); + } + } + if (message.type_url != null && message.hasOwnProperty("type_url")) + object.type_url = message.type_url; + if (message.value != null && message.hasOwnProperty("value")) + object.value = options.bytes === String ? $util.base64.encode(message.value, 0, message.value.length) : options.bytes === Array ? Array.prototype.slice.call(message.value) : message.value; + return object; + }; + + /** + * Converts this Any to JSON. + * @function toJSON + * @memberof google.protobuf.Any + * @instance + * @returns {Object.} JSON object + */ + Any.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return Any; + })(); + + protobuf.Duration = (function() { + + /** + * Properties of a Duration. + * @memberof google.protobuf + * @interface IDuration + * @property {number|Long|null} [seconds] Duration seconds + * @property {number|null} [nanos] Duration nanos + */ + + /** + * Constructs a new Duration. + * @memberof google.protobuf + * @classdesc Represents a Duration. + * @implements IDuration + * @constructor + * @param {google.protobuf.IDuration=} [properties] Properties to set + */ + function Duration(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]]; + } + + /** + * Duration seconds. + * @member {number|Long} seconds + * @memberof google.protobuf.Duration + * @instance + */ + Duration.prototype.seconds = $util.Long ? $util.Long.fromBits(0,0,false) : 0; + + /** + * Duration nanos. + * @member {number} nanos + * @memberof google.protobuf.Duration + * @instance + */ + Duration.prototype.nanos = 0; + + /** + * Creates a new Duration instance using the specified properties. + * @function create + * @memberof google.protobuf.Duration + * @static + * @param {google.protobuf.IDuration=} [properties] Properties to set + * @returns {google.protobuf.Duration} Duration instance + */ + Duration.create = function create(properties) { + return new Duration(properties); + }; + + /** + * Encodes the specified Duration message. Does not implicitly {@link google.protobuf.Duration.verify|verify} messages. + * @function encode + * @memberof google.protobuf.Duration + * @static + * @param {google.protobuf.IDuration} message Duration message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + Duration.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.seconds != null && Object.hasOwnProperty.call(message, "seconds")) + writer.uint32(/* id 1, wireType 0 =*/8).int64(message.seconds); + if (message.nanos != null && Object.hasOwnProperty.call(message, "nanos")) + writer.uint32(/* id 2, wireType 0 =*/16).int32(message.nanos); + return writer; + }; + + /** + * Encodes the specified Duration message, length delimited. Does not implicitly {@link google.protobuf.Duration.verify|verify} messages. + * @function encodeDelimited + * @memberof google.protobuf.Duration + * @static + * @param {google.protobuf.IDuration} message Duration message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + Duration.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a Duration message from the specified reader or buffer. + * @function decode + * @memberof google.protobuf.Duration + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.protobuf.Duration} Duration + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + Duration.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.protobuf.Duration(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.seconds = reader.int64(); + break; + case 2: + message.nanos = reader.int32(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a Duration message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.protobuf.Duration + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.protobuf.Duration} Duration + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + Duration.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a Duration message. + * @function verify + * @memberof google.protobuf.Duration + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + Duration.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.seconds != null && message.hasOwnProperty("seconds")) + if (!$util.isInteger(message.seconds) && !(message.seconds && $util.isInteger(message.seconds.low) && $util.isInteger(message.seconds.high))) + return "seconds: integer|Long expected"; + if (message.nanos != null && message.hasOwnProperty("nanos")) + if (!$util.isInteger(message.nanos)) + return "nanos: integer expected"; + return null; + }; + + /** + * Creates a Duration message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.protobuf.Duration + * @static + * @param {Object.} object Plain object + * @returns {google.protobuf.Duration} Duration + */ + Duration.fromObject = function fromObject(object) { + if (object instanceof $root.google.protobuf.Duration) + return object; + var message = new $root.google.protobuf.Duration(); + if (object.seconds != null) + if ($util.Long) + (message.seconds = $util.Long.fromValue(object.seconds)).unsigned = false; + else if (typeof object.seconds === "string") + message.seconds = parseInt(object.seconds, 10); + else if (typeof object.seconds === "number") + message.seconds = object.seconds; + else if (typeof object.seconds === "object") + message.seconds = new $util.LongBits(object.seconds.low >>> 0, object.seconds.high >>> 0).toNumber(); + if (object.nanos != null) + message.nanos = object.nanos | 0; + return message; + }; + + /** + * Creates a plain object from a Duration message. Also converts values to other types if specified. + * @function toObject + * @memberof google.protobuf.Duration + * @static + * @param {google.protobuf.Duration} message Duration + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + Duration.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + if ($util.Long) { + var long = new $util.Long(0, 0, false); + object.seconds = options.longs === String ? long.toString() : options.longs === Number ? long.toNumber() : long; + } else + object.seconds = options.longs === String ? "0" : 0; + object.nanos = 0; + } + if (message.seconds != null && message.hasOwnProperty("seconds")) + if (typeof message.seconds === "number") + object.seconds = options.longs === String ? String(message.seconds) : message.seconds; + else + object.seconds = options.longs === String ? $util.Long.prototype.toString.call(message.seconds) : options.longs === Number ? new $util.LongBits(message.seconds.low >>> 0, message.seconds.high >>> 0).toNumber() : message.seconds; + if (message.nanos != null && message.hasOwnProperty("nanos")) + object.nanos = message.nanos; + return object; + }; + + /** + * Converts this Duration to JSON. + * @function toJSON + * @memberof google.protobuf.Duration + * @instance + * @returns {Object.} JSON object + */ + Duration.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return Duration; + })(); + + protobuf.Empty = (function() { + + /** + * Properties of an Empty. + * @memberof google.protobuf + * @interface IEmpty + */ + + /** + * Constructs a new Empty. + * @memberof google.protobuf + * @classdesc Represents an Empty. + * @implements IEmpty + * @constructor + * @param {google.protobuf.IEmpty=} [properties] Properties to set + */ + function Empty(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]]; + } + + /** + * Creates a new Empty instance using the specified properties. + * @function create + * @memberof google.protobuf.Empty + * @static + * @param {google.protobuf.IEmpty=} [properties] Properties to set + * @returns {google.protobuf.Empty} Empty instance + */ + Empty.create = function create(properties) { + return new Empty(properties); + }; + + /** + * Encodes the specified Empty message. Does not implicitly {@link google.protobuf.Empty.verify|verify} messages. + * @function encode + * @memberof google.protobuf.Empty + * @static + * @param {google.protobuf.IEmpty} message Empty message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + Empty.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + return writer; + }; + + /** + * Encodes the specified Empty message, length delimited. Does not implicitly {@link google.protobuf.Empty.verify|verify} messages. + * @function encodeDelimited + * @memberof google.protobuf.Empty + * @static + * @param {google.protobuf.IEmpty} message Empty message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + Empty.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes an Empty message from the specified reader or buffer. + * @function decode + * @memberof google.protobuf.Empty + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.protobuf.Empty} Empty + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + Empty.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.protobuf.Empty(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes an Empty message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.protobuf.Empty + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.protobuf.Empty} Empty + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + Empty.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies an Empty message. + * @function verify + * @memberof google.protobuf.Empty + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + Empty.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + return null; + }; + + /** + * Creates an Empty message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.protobuf.Empty + * @static + * @param {Object.} object Plain object + * @returns {google.protobuf.Empty} Empty + */ + Empty.fromObject = function fromObject(object) { + if (object instanceof $root.google.protobuf.Empty) + return object; + return new $root.google.protobuf.Empty(); + }; + + /** + * Creates a plain object from an Empty message. Also converts values to other types if specified. + * @function toObject + * @memberof google.protobuf.Empty + * @static + * @param {google.protobuf.Empty} message Empty + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + Empty.toObject = function toObject() { + return {}; + }; + + /** + * Converts this Empty to JSON. + * @function toJSON + * @memberof google.protobuf.Empty + * @instance + * @returns {Object.} JSON object + */ + Empty.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return Empty; + })(); + + protobuf.FieldMask = (function() { + + /** + * Properties of a FieldMask. + * @memberof google.protobuf + * @interface IFieldMask + * @property {Array.|null} [paths] FieldMask paths + */ + + /** + * Constructs a new FieldMask. + * @memberof google.protobuf + * @classdesc Represents a FieldMask. + * @implements IFieldMask + * @constructor + * @param {google.protobuf.IFieldMask=} [properties] Properties to set + */ + function FieldMask(properties) { + this.paths = []; + 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]]; + } + + /** + * FieldMask paths. + * @member {Array.} paths + * @memberof google.protobuf.FieldMask + * @instance + */ + FieldMask.prototype.paths = $util.emptyArray; + + /** + * Creates a new FieldMask instance using the specified properties. + * @function create + * @memberof google.protobuf.FieldMask + * @static + * @param {google.protobuf.IFieldMask=} [properties] Properties to set + * @returns {google.protobuf.FieldMask} FieldMask instance + */ + FieldMask.create = function create(properties) { + return new FieldMask(properties); + }; + + /** + * Encodes the specified FieldMask message. Does not implicitly {@link google.protobuf.FieldMask.verify|verify} messages. + * @function encode + * @memberof google.protobuf.FieldMask + * @static + * @param {google.protobuf.IFieldMask} message FieldMask message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + FieldMask.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.paths != null && message.paths.length) + for (var i = 0; i < message.paths.length; ++i) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.paths[i]); + return writer; + }; + + /** + * Encodes the specified FieldMask message, length delimited. Does not implicitly {@link google.protobuf.FieldMask.verify|verify} messages. + * @function encodeDelimited + * @memberof google.protobuf.FieldMask + * @static + * @param {google.protobuf.IFieldMask} message FieldMask message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + FieldMask.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a FieldMask message from the specified reader or buffer. + * @function decode + * @memberof google.protobuf.FieldMask + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.protobuf.FieldMask} FieldMask + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + FieldMask.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.protobuf.FieldMask(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + if (!(message.paths && message.paths.length)) + message.paths = []; + message.paths.push(reader.string()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a FieldMask message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.protobuf.FieldMask + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.protobuf.FieldMask} FieldMask + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + FieldMask.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a FieldMask message. + * @function verify + * @memberof google.protobuf.FieldMask + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + FieldMask.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.paths != null && message.hasOwnProperty("paths")) { + if (!Array.isArray(message.paths)) + return "paths: array expected"; + for (var i = 0; i < message.paths.length; ++i) + if (!$util.isString(message.paths[i])) + return "paths: string[] expected"; + } + return null; + }; + + /** + * Creates a FieldMask message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.protobuf.FieldMask + * @static + * @param {Object.} object Plain object + * @returns {google.protobuf.FieldMask} FieldMask + */ + FieldMask.fromObject = function fromObject(object) { + if (object instanceof $root.google.protobuf.FieldMask) + return object; + var message = new $root.google.protobuf.FieldMask(); + if (object.paths) { + if (!Array.isArray(object.paths)) + throw TypeError(".google.protobuf.FieldMask.paths: array expected"); + message.paths = []; + for (var i = 0; i < object.paths.length; ++i) + message.paths[i] = String(object.paths[i]); + } + return message; + }; + + /** + * Creates a plain object from a FieldMask message. Also converts values to other types if specified. + * @function toObject + * @memberof google.protobuf.FieldMask + * @static + * @param {google.protobuf.FieldMask} message FieldMask + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + FieldMask.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.arrays || options.defaults) + object.paths = []; + if (message.paths && message.paths.length) { + object.paths = []; + for (var j = 0; j < message.paths.length; ++j) + object.paths[j] = message.paths[j]; + } + return object; + }; + + /** + * Converts this FieldMask to JSON. + * @function toJSON + * @memberof google.protobuf.FieldMask + * @instance + * @returns {Object.} JSON object + */ + FieldMask.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return FieldMask; + })(); + + protobuf.Timestamp = (function() { + + /** + * Properties of a Timestamp. + * @memberof google.protobuf + * @interface ITimestamp + * @property {number|Long|null} [seconds] Timestamp seconds + * @property {number|null} [nanos] Timestamp nanos + */ + + /** + * Constructs a new Timestamp. + * @memberof google.protobuf + * @classdesc Represents a Timestamp. + * @implements ITimestamp + * @constructor + * @param {google.protobuf.ITimestamp=} [properties] Properties to set + */ + function Timestamp(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]]; + } + + /** + * Timestamp seconds. + * @member {number|Long} seconds + * @memberof google.protobuf.Timestamp + * @instance + */ + Timestamp.prototype.seconds = $util.Long ? $util.Long.fromBits(0,0,false) : 0; + + /** + * Timestamp nanos. + * @member {number} nanos + * @memberof google.protobuf.Timestamp + * @instance + */ + Timestamp.prototype.nanos = 0; + + /** + * Creates a new Timestamp instance using the specified properties. + * @function create + * @memberof google.protobuf.Timestamp + * @static + * @param {google.protobuf.ITimestamp=} [properties] Properties to set + * @returns {google.protobuf.Timestamp} Timestamp instance + */ + Timestamp.create = function create(properties) { + return new Timestamp(properties); + }; + + /** + * Encodes the specified Timestamp message. Does not implicitly {@link google.protobuf.Timestamp.verify|verify} messages. + * @function encode + * @memberof google.protobuf.Timestamp + * @static + * @param {google.protobuf.ITimestamp} message Timestamp message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + Timestamp.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.seconds != null && Object.hasOwnProperty.call(message, "seconds")) + writer.uint32(/* id 1, wireType 0 =*/8).int64(message.seconds); + if (message.nanos != null && Object.hasOwnProperty.call(message, "nanos")) + writer.uint32(/* id 2, wireType 0 =*/16).int32(message.nanos); + return writer; + }; + + /** + * Encodes the specified Timestamp message, length delimited. Does not implicitly {@link google.protobuf.Timestamp.verify|verify} messages. + * @function encodeDelimited + * @memberof google.protobuf.Timestamp + * @static + * @param {google.protobuf.ITimestamp} message Timestamp message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + Timestamp.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a Timestamp message from the specified reader or buffer. + * @function decode + * @memberof google.protobuf.Timestamp + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.protobuf.Timestamp} Timestamp + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + Timestamp.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.protobuf.Timestamp(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.seconds = reader.int64(); + break; + case 2: + message.nanos = reader.int32(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a Timestamp message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.protobuf.Timestamp + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.protobuf.Timestamp} Timestamp + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + Timestamp.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a Timestamp message. + * @function verify + * @memberof google.protobuf.Timestamp + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + Timestamp.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.seconds != null && message.hasOwnProperty("seconds")) + if (!$util.isInteger(message.seconds) && !(message.seconds && $util.isInteger(message.seconds.low) && $util.isInteger(message.seconds.high))) + return "seconds: integer|Long expected"; + if (message.nanos != null && message.hasOwnProperty("nanos")) + if (!$util.isInteger(message.nanos)) + return "nanos: integer expected"; + return null; + }; + + /** + * Creates a Timestamp message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.protobuf.Timestamp + * @static + * @param {Object.} object Plain object + * @returns {google.protobuf.Timestamp} Timestamp + */ + Timestamp.fromObject = function fromObject(object) { + if (object instanceof $root.google.protobuf.Timestamp) + return object; + var message = new $root.google.protobuf.Timestamp(); + if (object.seconds != null) + if ($util.Long) + (message.seconds = $util.Long.fromValue(object.seconds)).unsigned = false; + else if (typeof object.seconds === "string") + message.seconds = parseInt(object.seconds, 10); + else if (typeof object.seconds === "number") + message.seconds = object.seconds; + else if (typeof object.seconds === "object") + message.seconds = new $util.LongBits(object.seconds.low >>> 0, object.seconds.high >>> 0).toNumber(); + if (object.nanos != null) + message.nanos = object.nanos | 0; + return message; + }; + + /** + * Creates a plain object from a Timestamp message. Also converts values to other types if specified. + * @function toObject + * @memberof google.protobuf.Timestamp + * @static + * @param {google.protobuf.Timestamp} message Timestamp + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + Timestamp.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + if ($util.Long) { + var long = new $util.Long(0, 0, false); + object.seconds = options.longs === String ? long.toString() : options.longs === Number ? long.toNumber() : long; + } else + object.seconds = options.longs === String ? "0" : 0; + object.nanos = 0; + } + if (message.seconds != null && message.hasOwnProperty("seconds")) + if (typeof message.seconds === "number") + object.seconds = options.longs === String ? String(message.seconds) : message.seconds; + else + object.seconds = options.longs === String ? $util.Long.prototype.toString.call(message.seconds) : options.longs === Number ? new $util.LongBits(message.seconds.low >>> 0, message.seconds.high >>> 0).toNumber() : message.seconds; + if (message.nanos != null && message.hasOwnProperty("nanos")) + object.nanos = message.nanos; + return object; + }; + + /** + * Converts this Timestamp to JSON. + * @function toJSON + * @memberof google.protobuf.Timestamp + * @instance + * @returns {Object.} JSON object + */ + Timestamp.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return Timestamp; + })(); + + return protobuf; + })(); + + google.longrunning = (function() { + + /** + * Namespace longrunning. + * @memberof google + * @namespace + */ + var longrunning = {}; + + longrunning.Operations = (function() { + + /** + * Constructs a new Operations service. + * @memberof google.longrunning + * @classdesc Represents an Operations + * @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 Operations(rpcImpl, requestDelimited, responseDelimited) { + $protobuf.rpc.Service.call(this, rpcImpl, requestDelimited, responseDelimited); + } + + (Operations.prototype = Object.create($protobuf.rpc.Service.prototype)).constructor = Operations; + + /** + * Creates new Operations service using the specified rpc implementation. + * @function create + * @memberof google.longrunning.Operations + * @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 {Operations} RPC service. Useful where requests and/or responses are streamed. + */ + Operations.create = function create(rpcImpl, requestDelimited, responseDelimited) { + return new this(rpcImpl, requestDelimited, responseDelimited); + }; + + /** + * Callback as used by {@link google.longrunning.Operations#listOperations}. + * @memberof google.longrunning.Operations + * @typedef ListOperationsCallback + * @type {function} + * @param {Error|null} error Error, if any + * @param {google.longrunning.ListOperationsResponse} [response] ListOperationsResponse + */ + + /** + * Calls ListOperations. + * @function listOperations + * @memberof google.longrunning.Operations + * @instance + * @param {google.longrunning.IListOperationsRequest} request ListOperationsRequest message or plain object + * @param {google.longrunning.Operations.ListOperationsCallback} callback Node-style callback called with the error, if any, and ListOperationsResponse + * @returns {undefined} + * @variation 1 + */ + Object.defineProperty(Operations.prototype.listOperations = function listOperations(request, callback) { + return this.rpcCall(listOperations, $root.google.longrunning.ListOperationsRequest, $root.google.longrunning.ListOperationsResponse, request, callback); + }, "name", { value: "ListOperations" }); + + /** + * Calls ListOperations. + * @function listOperations + * @memberof google.longrunning.Operations + * @instance + * @param {google.longrunning.IListOperationsRequest} request ListOperationsRequest message or plain object + * @returns {Promise} Promise + * @variation 2 + */ + + /** + * Callback as used by {@link google.longrunning.Operations#getOperation}. + * @memberof google.longrunning.Operations + * @typedef GetOperationCallback + * @type {function} + * @param {Error|null} error Error, if any + * @param {google.longrunning.Operation} [response] Operation + */ + + /** + * Calls GetOperation. + * @function getOperation + * @memberof google.longrunning.Operations + * @instance + * @param {google.longrunning.IGetOperationRequest} request GetOperationRequest message or plain object + * @param {google.longrunning.Operations.GetOperationCallback} callback Node-style callback called with the error, if any, and Operation + * @returns {undefined} + * @variation 1 + */ + Object.defineProperty(Operations.prototype.getOperation = function getOperation(request, callback) { + return this.rpcCall(getOperation, $root.google.longrunning.GetOperationRequest, $root.google.longrunning.Operation, request, callback); + }, "name", { value: "GetOperation" }); + + /** + * Calls GetOperation. + * @function getOperation + * @memberof google.longrunning.Operations + * @instance + * @param {google.longrunning.IGetOperationRequest} request GetOperationRequest message or plain object + * @returns {Promise} Promise + * @variation 2 + */ + + /** + * Callback as used by {@link google.longrunning.Operations#deleteOperation}. + * @memberof google.longrunning.Operations + * @typedef DeleteOperationCallback + * @type {function} + * @param {Error|null} error Error, if any + * @param {google.protobuf.Empty} [response] Empty + */ + + /** + * Calls DeleteOperation. + * @function deleteOperation + * @memberof google.longrunning.Operations + * @instance + * @param {google.longrunning.IDeleteOperationRequest} request DeleteOperationRequest message or plain object + * @param {google.longrunning.Operations.DeleteOperationCallback} callback Node-style callback called with the error, if any, and Empty + * @returns {undefined} + * @variation 1 + */ + Object.defineProperty(Operations.prototype.deleteOperation = function deleteOperation(request, callback) { + return this.rpcCall(deleteOperation, $root.google.longrunning.DeleteOperationRequest, $root.google.protobuf.Empty, request, callback); + }, "name", { value: "DeleteOperation" }); + + /** + * Calls DeleteOperation. + * @function deleteOperation + * @memberof google.longrunning.Operations + * @instance + * @param {google.longrunning.IDeleteOperationRequest} request DeleteOperationRequest message or plain object + * @returns {Promise} Promise + * @variation 2 + */ + + /** + * Callback as used by {@link google.longrunning.Operations#cancelOperation}. + * @memberof google.longrunning.Operations + * @typedef CancelOperationCallback + * @type {function} + * @param {Error|null} error Error, if any + * @param {google.protobuf.Empty} [response] Empty + */ + + /** + * Calls CancelOperation. + * @function cancelOperation + * @memberof google.longrunning.Operations + * @instance + * @param {google.longrunning.ICancelOperationRequest} request CancelOperationRequest message or plain object + * @param {google.longrunning.Operations.CancelOperationCallback} callback Node-style callback called with the error, if any, and Empty + * @returns {undefined} + * @variation 1 + */ + Object.defineProperty(Operations.prototype.cancelOperation = function cancelOperation(request, callback) { + return this.rpcCall(cancelOperation, $root.google.longrunning.CancelOperationRequest, $root.google.protobuf.Empty, request, callback); + }, "name", { value: "CancelOperation" }); + + /** + * Calls CancelOperation. + * @function cancelOperation + * @memberof google.longrunning.Operations + * @instance + * @param {google.longrunning.ICancelOperationRequest} request CancelOperationRequest message or plain object + * @returns {Promise} Promise + * @variation 2 + */ + + /** + * Callback as used by {@link google.longrunning.Operations#waitOperation}. + * @memberof google.longrunning.Operations + * @typedef WaitOperationCallback + * @type {function} + * @param {Error|null} error Error, if any + * @param {google.longrunning.Operation} [response] Operation + */ + + /** + * Calls WaitOperation. + * @function waitOperation + * @memberof google.longrunning.Operations + * @instance + * @param {google.longrunning.IWaitOperationRequest} request WaitOperationRequest message or plain object + * @param {google.longrunning.Operations.WaitOperationCallback} callback Node-style callback called with the error, if any, and Operation + * @returns {undefined} + * @variation 1 + */ + Object.defineProperty(Operations.prototype.waitOperation = function waitOperation(request, callback) { + return this.rpcCall(waitOperation, $root.google.longrunning.WaitOperationRequest, $root.google.longrunning.Operation, request, callback); + }, "name", { value: "WaitOperation" }); + + /** + * Calls WaitOperation. + * @function waitOperation + * @memberof google.longrunning.Operations + * @instance + * @param {google.longrunning.IWaitOperationRequest} request WaitOperationRequest message or plain object + * @returns {Promise} Promise + * @variation 2 + */ + + return Operations; + })(); + + longrunning.Operation = (function() { + + /** + * Properties of an Operation. + * @memberof google.longrunning + * @interface IOperation + * @property {string|null} [name] Operation name + * @property {google.protobuf.IAny|null} [metadata] Operation metadata + * @property {boolean|null} [done] Operation done + * @property {google.rpc.IStatus|null} [error] Operation error + * @property {google.protobuf.IAny|null} [response] Operation response + */ + + /** + * Constructs a new Operation. + * @memberof google.longrunning + * @classdesc Represents an Operation. + * @implements IOperation + * @constructor + * @param {google.longrunning.IOperation=} [properties] Properties to set + */ + function Operation(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]]; + } + + /** + * Operation name. + * @member {string} name + * @memberof google.longrunning.Operation + * @instance + */ + Operation.prototype.name = ""; + + /** + * Operation metadata. + * @member {google.protobuf.IAny|null|undefined} metadata + * @memberof google.longrunning.Operation + * @instance + */ + Operation.prototype.metadata = null; + + /** + * Operation done. + * @member {boolean} done + * @memberof google.longrunning.Operation + * @instance + */ + Operation.prototype.done = false; + + /** + * Operation error. + * @member {google.rpc.IStatus|null|undefined} error + * @memberof google.longrunning.Operation + * @instance + */ + Operation.prototype.error = null; + + /** + * Operation response. + * @member {google.protobuf.IAny|null|undefined} response + * @memberof google.longrunning.Operation + * @instance + */ + Operation.prototype.response = null; + + // OneOf field names bound to virtual getters and setters + var $oneOfFields; + + /** + * Operation result. + * @member {"error"|"response"|undefined} result + * @memberof google.longrunning.Operation + * @instance + */ + Object.defineProperty(Operation.prototype, "result", { + get: $util.oneOfGetter($oneOfFields = ["error", "response"]), + set: $util.oneOfSetter($oneOfFields) + }); + + /** + * Creates a new Operation instance using the specified properties. + * @function create + * @memberof google.longrunning.Operation + * @static + * @param {google.longrunning.IOperation=} [properties] Properties to set + * @returns {google.longrunning.Operation} Operation instance + */ + Operation.create = function create(properties) { + return new Operation(properties); + }; + + /** + * Encodes the specified Operation message. Does not implicitly {@link google.longrunning.Operation.verify|verify} messages. + * @function encode + * @memberof google.longrunning.Operation + * @static + * @param {google.longrunning.IOperation} message Operation message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + Operation.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.name != null && Object.hasOwnProperty.call(message, "name")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.name); + if (message.metadata != null && Object.hasOwnProperty.call(message, "metadata")) + $root.google.protobuf.Any.encode(message.metadata, writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim(); + if (message.done != null && Object.hasOwnProperty.call(message, "done")) + writer.uint32(/* id 3, wireType 0 =*/24).bool(message.done); + if (message.error != null && Object.hasOwnProperty.call(message, "error")) + $root.google.rpc.Status.encode(message.error, writer.uint32(/* id 4, wireType 2 =*/34).fork()).ldelim(); + if (message.response != null && Object.hasOwnProperty.call(message, "response")) + $root.google.protobuf.Any.encode(message.response, writer.uint32(/* id 5, wireType 2 =*/42).fork()).ldelim(); + return writer; + }; + + /** + * Encodes the specified Operation message, length delimited. Does not implicitly {@link google.longrunning.Operation.verify|verify} messages. + * @function encodeDelimited + * @memberof google.longrunning.Operation + * @static + * @param {google.longrunning.IOperation} message Operation message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + Operation.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes an Operation message from the specified reader or buffer. + * @function decode + * @memberof google.longrunning.Operation + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.longrunning.Operation} Operation + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + Operation.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.longrunning.Operation(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.name = reader.string(); + break; + case 2: + message.metadata = $root.google.protobuf.Any.decode(reader, reader.uint32()); + break; + case 3: + message.done = reader.bool(); + break; + case 4: + message.error = $root.google.rpc.Status.decode(reader, reader.uint32()); + break; + case 5: + message.response = $root.google.protobuf.Any.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes an Operation message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.longrunning.Operation + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.longrunning.Operation} Operation + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + Operation.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies an Operation message. + * @function verify + * @memberof google.longrunning.Operation + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + Operation.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + var properties = {}; + if (message.name != null && message.hasOwnProperty("name")) + if (!$util.isString(message.name)) + return "name: string expected"; + if (message.metadata != null && message.hasOwnProperty("metadata")) { + var error = $root.google.protobuf.Any.verify(message.metadata); + if (error) + return "metadata." + error; + } + if (message.done != null && message.hasOwnProperty("done")) + if (typeof message.done !== "boolean") + return "done: boolean expected"; + if (message.error != null && message.hasOwnProperty("error")) { + properties.result = 1; + { + var error = $root.google.rpc.Status.verify(message.error); + if (error) + return "error." + error; + } + } + if (message.response != null && message.hasOwnProperty("response")) { + if (properties.result === 1) + return "result: multiple values"; + properties.result = 1; + { + var error = $root.google.protobuf.Any.verify(message.response); + if (error) + return "response." + error; + } + } + return null; + }; + + /** + * Creates an Operation message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.longrunning.Operation + * @static + * @param {Object.} object Plain object + * @returns {google.longrunning.Operation} Operation + */ + Operation.fromObject = function fromObject(object) { + if (object instanceof $root.google.longrunning.Operation) + return object; + var message = new $root.google.longrunning.Operation(); + if (object.name != null) + message.name = String(object.name); + if (object.metadata != null) { + if (typeof object.metadata !== "object") + throw TypeError(".google.longrunning.Operation.metadata: object expected"); + message.metadata = $root.google.protobuf.Any.fromObject(object.metadata); + } + if (object.done != null) + message.done = Boolean(object.done); + if (object.error != null) { + if (typeof object.error !== "object") + throw TypeError(".google.longrunning.Operation.error: object expected"); + message.error = $root.google.rpc.Status.fromObject(object.error); + } + if (object.response != null) { + if (typeof object.response !== "object") + throw TypeError(".google.longrunning.Operation.response: object expected"); + message.response = $root.google.protobuf.Any.fromObject(object.response); + } + return message; + }; + + /** + * Creates a plain object from an Operation message. Also converts values to other types if specified. + * @function toObject + * @memberof google.longrunning.Operation + * @static + * @param {google.longrunning.Operation} message Operation + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + Operation.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.name = ""; + object.metadata = null; + object.done = false; + } + if (message.name != null && message.hasOwnProperty("name")) + object.name = message.name; + if (message.metadata != null && message.hasOwnProperty("metadata")) + object.metadata = $root.google.protobuf.Any.toObject(message.metadata, options); + if (message.done != null && message.hasOwnProperty("done")) + object.done = message.done; + if (message.error != null && message.hasOwnProperty("error")) { + object.error = $root.google.rpc.Status.toObject(message.error, options); + if (options.oneofs) + object.result = "error"; + } + if (message.response != null && message.hasOwnProperty("response")) { + object.response = $root.google.protobuf.Any.toObject(message.response, options); + if (options.oneofs) + object.result = "response"; + } + return object; + }; + + /** + * Converts this Operation to JSON. + * @function toJSON + * @memberof google.longrunning.Operation + * @instance + * @returns {Object.} JSON object + */ + Operation.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return Operation; + })(); + + longrunning.GetOperationRequest = (function() { + + /** + * Properties of a GetOperationRequest. + * @memberof google.longrunning + * @interface IGetOperationRequest + * @property {string|null} [name] GetOperationRequest name + */ + + /** + * Constructs a new GetOperationRequest. + * @memberof google.longrunning + * @classdesc Represents a GetOperationRequest. + * @implements IGetOperationRequest + * @constructor + * @param {google.longrunning.IGetOperationRequest=} [properties] Properties to set + */ + function GetOperationRequest(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]]; + } + + /** + * GetOperationRequest name. + * @member {string} name + * @memberof google.longrunning.GetOperationRequest + * @instance + */ + GetOperationRequest.prototype.name = ""; + + /** + * Creates a new GetOperationRequest instance using the specified properties. + * @function create + * @memberof google.longrunning.GetOperationRequest + * @static + * @param {google.longrunning.IGetOperationRequest=} [properties] Properties to set + * @returns {google.longrunning.GetOperationRequest} GetOperationRequest instance + */ + GetOperationRequest.create = function create(properties) { + return new GetOperationRequest(properties); + }; + + /** + * Encodes the specified GetOperationRequest message. Does not implicitly {@link google.longrunning.GetOperationRequest.verify|verify} messages. + * @function encode + * @memberof google.longrunning.GetOperationRequest + * @static + * @param {google.longrunning.IGetOperationRequest} message GetOperationRequest message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + GetOperationRequest.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.name != null && Object.hasOwnProperty.call(message, "name")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.name); + return writer; + }; + + /** + * Encodes the specified GetOperationRequest message, length delimited. Does not implicitly {@link google.longrunning.GetOperationRequest.verify|verify} messages. + * @function encodeDelimited + * @memberof google.longrunning.GetOperationRequest + * @static + * @param {google.longrunning.IGetOperationRequest} message GetOperationRequest message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + GetOperationRequest.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a GetOperationRequest message from the specified reader or buffer. + * @function decode + * @memberof google.longrunning.GetOperationRequest + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.longrunning.GetOperationRequest} GetOperationRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + GetOperationRequest.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.longrunning.GetOperationRequest(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.name = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a GetOperationRequest message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.longrunning.GetOperationRequest + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.longrunning.GetOperationRequest} GetOperationRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + GetOperationRequest.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a GetOperationRequest message. + * @function verify + * @memberof google.longrunning.GetOperationRequest + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + GetOperationRequest.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.name != null && message.hasOwnProperty("name")) + if (!$util.isString(message.name)) + return "name: string expected"; + return null; + }; + + /** + * Creates a GetOperationRequest message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.longrunning.GetOperationRequest + * @static + * @param {Object.} object Plain object + * @returns {google.longrunning.GetOperationRequest} GetOperationRequest + */ + GetOperationRequest.fromObject = function fromObject(object) { + if (object instanceof $root.google.longrunning.GetOperationRequest) + return object; + var message = new $root.google.longrunning.GetOperationRequest(); + if (object.name != null) + message.name = String(object.name); + return message; + }; + + /** + * Creates a plain object from a GetOperationRequest message. Also converts values to other types if specified. + * @function toObject + * @memberof google.longrunning.GetOperationRequest + * @static + * @param {google.longrunning.GetOperationRequest} message GetOperationRequest + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + GetOperationRequest.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) + object.name = ""; + if (message.name != null && message.hasOwnProperty("name")) + object.name = message.name; + return object; + }; + + /** + * Converts this GetOperationRequest to JSON. + * @function toJSON + * @memberof google.longrunning.GetOperationRequest + * @instance + * @returns {Object.} JSON object + */ + GetOperationRequest.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return GetOperationRequest; + })(); + + longrunning.ListOperationsRequest = (function() { + + /** + * Properties of a ListOperationsRequest. + * @memberof google.longrunning + * @interface IListOperationsRequest + * @property {string|null} [name] ListOperationsRequest name + * @property {string|null} [filter] ListOperationsRequest filter + * @property {number|null} [pageSize] ListOperationsRequest pageSize + * @property {string|null} [pageToken] ListOperationsRequest pageToken + */ + + /** + * Constructs a new ListOperationsRequest. + * @memberof google.longrunning + * @classdesc Represents a ListOperationsRequest. + * @implements IListOperationsRequest + * @constructor + * @param {google.longrunning.IListOperationsRequest=} [properties] Properties to set + */ + function ListOperationsRequest(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]]; + } + + /** + * ListOperationsRequest name. + * @member {string} name + * @memberof google.longrunning.ListOperationsRequest + * @instance + */ + ListOperationsRequest.prototype.name = ""; + + /** + * ListOperationsRequest filter. + * @member {string} filter + * @memberof google.longrunning.ListOperationsRequest + * @instance + */ + ListOperationsRequest.prototype.filter = ""; + + /** + * ListOperationsRequest pageSize. + * @member {number} pageSize + * @memberof google.longrunning.ListOperationsRequest + * @instance + */ + ListOperationsRequest.prototype.pageSize = 0; + + /** + * ListOperationsRequest pageToken. + * @member {string} pageToken + * @memberof google.longrunning.ListOperationsRequest + * @instance + */ + ListOperationsRequest.prototype.pageToken = ""; + + /** + * Creates a new ListOperationsRequest instance using the specified properties. + * @function create + * @memberof google.longrunning.ListOperationsRequest + * @static + * @param {google.longrunning.IListOperationsRequest=} [properties] Properties to set + * @returns {google.longrunning.ListOperationsRequest} ListOperationsRequest instance + */ + ListOperationsRequest.create = function create(properties) { + return new ListOperationsRequest(properties); + }; + + /** + * Encodes the specified ListOperationsRequest message. Does not implicitly {@link google.longrunning.ListOperationsRequest.verify|verify} messages. + * @function encode + * @memberof google.longrunning.ListOperationsRequest + * @static + * @param {google.longrunning.IListOperationsRequest} message ListOperationsRequest message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + ListOperationsRequest.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.filter != null && Object.hasOwnProperty.call(message, "filter")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.filter); + if (message.pageSize != null && Object.hasOwnProperty.call(message, "pageSize")) + writer.uint32(/* id 2, wireType 0 =*/16).int32(message.pageSize); + if (message.pageToken != null && Object.hasOwnProperty.call(message, "pageToken")) + writer.uint32(/* id 3, wireType 2 =*/26).string(message.pageToken); + if (message.name != null && Object.hasOwnProperty.call(message, "name")) + writer.uint32(/* id 4, wireType 2 =*/34).string(message.name); + return writer; + }; + + /** + * Encodes the specified ListOperationsRequest message, length delimited. Does not implicitly {@link google.longrunning.ListOperationsRequest.verify|verify} messages. + * @function encodeDelimited + * @memberof google.longrunning.ListOperationsRequest + * @static + * @param {google.longrunning.IListOperationsRequest} message ListOperationsRequest message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + ListOperationsRequest.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a ListOperationsRequest message from the specified reader or buffer. + * @function decode + * @memberof google.longrunning.ListOperationsRequest + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.longrunning.ListOperationsRequest} ListOperationsRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + ListOperationsRequest.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.longrunning.ListOperationsRequest(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 4: + message.name = reader.string(); + break; + case 1: + message.filter = reader.string(); + break; + case 2: + message.pageSize = reader.int32(); + break; + case 3: + message.pageToken = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a ListOperationsRequest message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.longrunning.ListOperationsRequest + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.longrunning.ListOperationsRequest} ListOperationsRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + ListOperationsRequest.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a ListOperationsRequest message. + * @function verify + * @memberof google.longrunning.ListOperationsRequest + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + ListOperationsRequest.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.name != null && message.hasOwnProperty("name")) + if (!$util.isString(message.name)) + return "name: string expected"; + if (message.filter != null && message.hasOwnProperty("filter")) + if (!$util.isString(message.filter)) + return "filter: string expected"; + if (message.pageSize != null && message.hasOwnProperty("pageSize")) + if (!$util.isInteger(message.pageSize)) + return "pageSize: integer expected"; + if (message.pageToken != null && message.hasOwnProperty("pageToken")) + if (!$util.isString(message.pageToken)) + return "pageToken: string expected"; + return null; + }; + + /** + * Creates a ListOperationsRequest message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.longrunning.ListOperationsRequest + * @static + * @param {Object.} object Plain object + * @returns {google.longrunning.ListOperationsRequest} ListOperationsRequest + */ + ListOperationsRequest.fromObject = function fromObject(object) { + if (object instanceof $root.google.longrunning.ListOperationsRequest) + return object; + var message = new $root.google.longrunning.ListOperationsRequest(); + if (object.name != null) + message.name = String(object.name); + if (object.filter != null) + message.filter = String(object.filter); + if (object.pageSize != null) + message.pageSize = object.pageSize | 0; + if (object.pageToken != null) + message.pageToken = String(object.pageToken); + return message; + }; + + /** + * Creates a plain object from a ListOperationsRequest message. Also converts values to other types if specified. + * @function toObject + * @memberof google.longrunning.ListOperationsRequest + * @static + * @param {google.longrunning.ListOperationsRequest} message ListOperationsRequest + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + ListOperationsRequest.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.filter = ""; + object.pageSize = 0; + object.pageToken = ""; + object.name = ""; + } + if (message.filter != null && message.hasOwnProperty("filter")) + object.filter = message.filter; + if (message.pageSize != null && message.hasOwnProperty("pageSize")) + object.pageSize = message.pageSize; + if (message.pageToken != null && message.hasOwnProperty("pageToken")) + object.pageToken = message.pageToken; + if (message.name != null && message.hasOwnProperty("name")) + object.name = message.name; + return object; + }; + + /** + * Converts this ListOperationsRequest to JSON. + * @function toJSON + * @memberof google.longrunning.ListOperationsRequest + * @instance + * @returns {Object.} JSON object + */ + ListOperationsRequest.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return ListOperationsRequest; + })(); + + longrunning.ListOperationsResponse = (function() { + + /** + * Properties of a ListOperationsResponse. + * @memberof google.longrunning + * @interface IListOperationsResponse + * @property {Array.|null} [operations] ListOperationsResponse operations + * @property {string|null} [nextPageToken] ListOperationsResponse nextPageToken + */ + + /** + * Constructs a new ListOperationsResponse. + * @memberof google.longrunning + * @classdesc Represents a ListOperationsResponse. + * @implements IListOperationsResponse + * @constructor + * @param {google.longrunning.IListOperationsResponse=} [properties] Properties to set + */ + function ListOperationsResponse(properties) { + this.operations = []; + 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]]; + } + + /** + * ListOperationsResponse operations. + * @member {Array.} operations + * @memberof google.longrunning.ListOperationsResponse + * @instance + */ + ListOperationsResponse.prototype.operations = $util.emptyArray; + + /** + * ListOperationsResponse nextPageToken. + * @member {string} nextPageToken + * @memberof google.longrunning.ListOperationsResponse + * @instance + */ + ListOperationsResponse.prototype.nextPageToken = ""; + + /** + * Creates a new ListOperationsResponse instance using the specified properties. + * @function create + * @memberof google.longrunning.ListOperationsResponse + * @static + * @param {google.longrunning.IListOperationsResponse=} [properties] Properties to set + * @returns {google.longrunning.ListOperationsResponse} ListOperationsResponse instance + */ + ListOperationsResponse.create = function create(properties) { + return new ListOperationsResponse(properties); + }; + + /** + * Encodes the specified ListOperationsResponse message. Does not implicitly {@link google.longrunning.ListOperationsResponse.verify|verify} messages. + * @function encode + * @memberof google.longrunning.ListOperationsResponse + * @static + * @param {google.longrunning.IListOperationsResponse} message ListOperationsResponse message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + ListOperationsResponse.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.operations != null && message.operations.length) + for (var i = 0; i < message.operations.length; ++i) + $root.google.longrunning.Operation.encode(message.operations[i], writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim(); + if (message.nextPageToken != null && Object.hasOwnProperty.call(message, "nextPageToken")) + writer.uint32(/* id 2, wireType 2 =*/18).string(message.nextPageToken); + return writer; + }; + + /** + * Encodes the specified ListOperationsResponse message, length delimited. Does not implicitly {@link google.longrunning.ListOperationsResponse.verify|verify} messages. + * @function encodeDelimited + * @memberof google.longrunning.ListOperationsResponse + * @static + * @param {google.longrunning.IListOperationsResponse} message ListOperationsResponse message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + ListOperationsResponse.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a ListOperationsResponse message from the specified reader or buffer. + * @function decode + * @memberof google.longrunning.ListOperationsResponse + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.longrunning.ListOperationsResponse} ListOperationsResponse + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + ListOperationsResponse.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.longrunning.ListOperationsResponse(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + if (!(message.operations && message.operations.length)) + message.operations = []; + message.operations.push($root.google.longrunning.Operation.decode(reader, reader.uint32())); + break; + case 2: + message.nextPageToken = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a ListOperationsResponse message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.longrunning.ListOperationsResponse + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.longrunning.ListOperationsResponse} ListOperationsResponse + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + ListOperationsResponse.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a ListOperationsResponse message. + * @function verify + * @memberof google.longrunning.ListOperationsResponse + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + ListOperationsResponse.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.operations != null && message.hasOwnProperty("operations")) { + if (!Array.isArray(message.operations)) + return "operations: array expected"; + for (var i = 0; i < message.operations.length; ++i) { + var error = $root.google.longrunning.Operation.verify(message.operations[i]); + if (error) + return "operations." + error; + } + } + if (message.nextPageToken != null && message.hasOwnProperty("nextPageToken")) + if (!$util.isString(message.nextPageToken)) + return "nextPageToken: string expected"; + return null; + }; + + /** + * Creates a ListOperationsResponse message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.longrunning.ListOperationsResponse + * @static + * @param {Object.} object Plain object + * @returns {google.longrunning.ListOperationsResponse} ListOperationsResponse + */ + ListOperationsResponse.fromObject = function fromObject(object) { + if (object instanceof $root.google.longrunning.ListOperationsResponse) + return object; + var message = new $root.google.longrunning.ListOperationsResponse(); + if (object.operations) { + if (!Array.isArray(object.operations)) + throw TypeError(".google.longrunning.ListOperationsResponse.operations: array expected"); + message.operations = []; + for (var i = 0; i < object.operations.length; ++i) { + if (typeof object.operations[i] !== "object") + throw TypeError(".google.longrunning.ListOperationsResponse.operations: object expected"); + message.operations[i] = $root.google.longrunning.Operation.fromObject(object.operations[i]); + } + } + if (object.nextPageToken != null) + message.nextPageToken = String(object.nextPageToken); + return message; + }; + + /** + * Creates a plain object from a ListOperationsResponse message. Also converts values to other types if specified. + * @function toObject + * @memberof google.longrunning.ListOperationsResponse + * @static + * @param {google.longrunning.ListOperationsResponse} message ListOperationsResponse + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + ListOperationsResponse.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.arrays || options.defaults) + object.operations = []; + if (options.defaults) + object.nextPageToken = ""; + if (message.operations && message.operations.length) { + object.operations = []; + for (var j = 0; j < message.operations.length; ++j) + object.operations[j] = $root.google.longrunning.Operation.toObject(message.operations[j], options); + } + if (message.nextPageToken != null && message.hasOwnProperty("nextPageToken")) + object.nextPageToken = message.nextPageToken; + return object; + }; + + /** + * Converts this ListOperationsResponse to JSON. + * @function toJSON + * @memberof google.longrunning.ListOperationsResponse + * @instance + * @returns {Object.} JSON object + */ + ListOperationsResponse.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return ListOperationsResponse; + })(); + + longrunning.CancelOperationRequest = (function() { + + /** + * Properties of a CancelOperationRequest. + * @memberof google.longrunning + * @interface ICancelOperationRequest + * @property {string|null} [name] CancelOperationRequest name + */ + + /** + * Constructs a new CancelOperationRequest. + * @memberof google.longrunning + * @classdesc Represents a CancelOperationRequest. + * @implements ICancelOperationRequest + * @constructor + * @param {google.longrunning.ICancelOperationRequest=} [properties] Properties to set + */ + function CancelOperationRequest(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]]; + } + + /** + * CancelOperationRequest name. + * @member {string} name + * @memberof google.longrunning.CancelOperationRequest + * @instance + */ + CancelOperationRequest.prototype.name = ""; + + /** + * Creates a new CancelOperationRequest instance using the specified properties. + * @function create + * @memberof google.longrunning.CancelOperationRequest + * @static + * @param {google.longrunning.ICancelOperationRequest=} [properties] Properties to set + * @returns {google.longrunning.CancelOperationRequest} CancelOperationRequest instance + */ + CancelOperationRequest.create = function create(properties) { + return new CancelOperationRequest(properties); + }; + + /** + * Encodes the specified CancelOperationRequest message. Does not implicitly {@link google.longrunning.CancelOperationRequest.verify|verify} messages. + * @function encode + * @memberof google.longrunning.CancelOperationRequest + * @static + * @param {google.longrunning.ICancelOperationRequest} message CancelOperationRequest message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + CancelOperationRequest.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.name != null && Object.hasOwnProperty.call(message, "name")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.name); + return writer; + }; + + /** + * Encodes the specified CancelOperationRequest message, length delimited. Does not implicitly {@link google.longrunning.CancelOperationRequest.verify|verify} messages. + * @function encodeDelimited + * @memberof google.longrunning.CancelOperationRequest + * @static + * @param {google.longrunning.ICancelOperationRequest} message CancelOperationRequest message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + CancelOperationRequest.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a CancelOperationRequest message from the specified reader or buffer. + * @function decode + * @memberof google.longrunning.CancelOperationRequest + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.longrunning.CancelOperationRequest} CancelOperationRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + CancelOperationRequest.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.longrunning.CancelOperationRequest(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.name = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a CancelOperationRequest message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.longrunning.CancelOperationRequest + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.longrunning.CancelOperationRequest} CancelOperationRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + CancelOperationRequest.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a CancelOperationRequest message. + * @function verify + * @memberof google.longrunning.CancelOperationRequest + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + CancelOperationRequest.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.name != null && message.hasOwnProperty("name")) + if (!$util.isString(message.name)) + return "name: string expected"; + return null; + }; + + /** + * Creates a CancelOperationRequest message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.longrunning.CancelOperationRequest + * @static + * @param {Object.} object Plain object + * @returns {google.longrunning.CancelOperationRequest} CancelOperationRequest + */ + CancelOperationRequest.fromObject = function fromObject(object) { + if (object instanceof $root.google.longrunning.CancelOperationRequest) + return object; + var message = new $root.google.longrunning.CancelOperationRequest(); + if (object.name != null) + message.name = String(object.name); + return message; + }; + + /** + * Creates a plain object from a CancelOperationRequest message. Also converts values to other types if specified. + * @function toObject + * @memberof google.longrunning.CancelOperationRequest + * @static + * @param {google.longrunning.CancelOperationRequest} message CancelOperationRequest + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + CancelOperationRequest.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) + object.name = ""; + if (message.name != null && message.hasOwnProperty("name")) + object.name = message.name; + return object; + }; + + /** + * Converts this CancelOperationRequest to JSON. + * @function toJSON + * @memberof google.longrunning.CancelOperationRequest + * @instance + * @returns {Object.} JSON object + */ + CancelOperationRequest.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return CancelOperationRequest; + })(); + + longrunning.DeleteOperationRequest = (function() { + + /** + * Properties of a DeleteOperationRequest. + * @memberof google.longrunning + * @interface IDeleteOperationRequest + * @property {string|null} [name] DeleteOperationRequest name + */ + + /** + * Constructs a new DeleteOperationRequest. + * @memberof google.longrunning + * @classdesc Represents a DeleteOperationRequest. + * @implements IDeleteOperationRequest + * @constructor + * @param {google.longrunning.IDeleteOperationRequest=} [properties] Properties to set + */ + function DeleteOperationRequest(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]]; + } + + /** + * DeleteOperationRequest name. + * @member {string} name + * @memberof google.longrunning.DeleteOperationRequest + * @instance + */ + DeleteOperationRequest.prototype.name = ""; + + /** + * Creates a new DeleteOperationRequest instance using the specified properties. + * @function create + * @memberof google.longrunning.DeleteOperationRequest + * @static + * @param {google.longrunning.IDeleteOperationRequest=} [properties] Properties to set + * @returns {google.longrunning.DeleteOperationRequest} DeleteOperationRequest instance + */ + DeleteOperationRequest.create = function create(properties) { + return new DeleteOperationRequest(properties); + }; + + /** + * Encodes the specified DeleteOperationRequest message. Does not implicitly {@link google.longrunning.DeleteOperationRequest.verify|verify} messages. + * @function encode + * @memberof google.longrunning.DeleteOperationRequest + * @static + * @param {google.longrunning.IDeleteOperationRequest} message DeleteOperationRequest message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + DeleteOperationRequest.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.name != null && Object.hasOwnProperty.call(message, "name")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.name); + return writer; + }; + + /** + * Encodes the specified DeleteOperationRequest message, length delimited. Does not implicitly {@link google.longrunning.DeleteOperationRequest.verify|verify} messages. + * @function encodeDelimited + * @memberof google.longrunning.DeleteOperationRequest + * @static + * @param {google.longrunning.IDeleteOperationRequest} message DeleteOperationRequest message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + DeleteOperationRequest.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a DeleteOperationRequest message from the specified reader or buffer. + * @function decode + * @memberof google.longrunning.DeleteOperationRequest + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.longrunning.DeleteOperationRequest} DeleteOperationRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + DeleteOperationRequest.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.longrunning.DeleteOperationRequest(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.name = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a DeleteOperationRequest message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.longrunning.DeleteOperationRequest + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.longrunning.DeleteOperationRequest} DeleteOperationRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + DeleteOperationRequest.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a DeleteOperationRequest message. + * @function verify + * @memberof google.longrunning.DeleteOperationRequest + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + DeleteOperationRequest.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.name != null && message.hasOwnProperty("name")) + if (!$util.isString(message.name)) + return "name: string expected"; + return null; + }; + + /** + * Creates a DeleteOperationRequest message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.longrunning.DeleteOperationRequest + * @static + * @param {Object.} object Plain object + * @returns {google.longrunning.DeleteOperationRequest} DeleteOperationRequest + */ + DeleteOperationRequest.fromObject = function fromObject(object) { + if (object instanceof $root.google.longrunning.DeleteOperationRequest) + return object; + var message = new $root.google.longrunning.DeleteOperationRequest(); + if (object.name != null) + message.name = String(object.name); + return message; + }; + + /** + * Creates a plain object from a DeleteOperationRequest message. Also converts values to other types if specified. + * @function toObject + * @memberof google.longrunning.DeleteOperationRequest + * @static + * @param {google.longrunning.DeleteOperationRequest} message DeleteOperationRequest + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + DeleteOperationRequest.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) + object.name = ""; + if (message.name != null && message.hasOwnProperty("name")) + object.name = message.name; + return object; + }; + + /** + * Converts this DeleteOperationRequest to JSON. + * @function toJSON + * @memberof google.longrunning.DeleteOperationRequest + * @instance + * @returns {Object.} JSON object + */ + DeleteOperationRequest.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return DeleteOperationRequest; + })(); + + longrunning.WaitOperationRequest = (function() { + + /** + * Properties of a WaitOperationRequest. + * @memberof google.longrunning + * @interface IWaitOperationRequest + * @property {string|null} [name] WaitOperationRequest name + * @property {google.protobuf.IDuration|null} [timeout] WaitOperationRequest timeout + */ + + /** + * Constructs a new WaitOperationRequest. + * @memberof google.longrunning + * @classdesc Represents a WaitOperationRequest. + * @implements IWaitOperationRequest + * @constructor + * @param {google.longrunning.IWaitOperationRequest=} [properties] Properties to set + */ + function WaitOperationRequest(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]]; + } + + /** + * WaitOperationRequest name. + * @member {string} name + * @memberof google.longrunning.WaitOperationRequest + * @instance + */ + WaitOperationRequest.prototype.name = ""; + + /** + * WaitOperationRequest timeout. + * @member {google.protobuf.IDuration|null|undefined} timeout + * @memberof google.longrunning.WaitOperationRequest + * @instance + */ + WaitOperationRequest.prototype.timeout = null; + + /** + * Creates a new WaitOperationRequest instance using the specified properties. + * @function create + * @memberof google.longrunning.WaitOperationRequest + * @static + * @param {google.longrunning.IWaitOperationRequest=} [properties] Properties to set + * @returns {google.longrunning.WaitOperationRequest} WaitOperationRequest instance + */ + WaitOperationRequest.create = function create(properties) { + return new WaitOperationRequest(properties); + }; + + /** + * Encodes the specified WaitOperationRequest message. Does not implicitly {@link google.longrunning.WaitOperationRequest.verify|verify} messages. + * @function encode + * @memberof google.longrunning.WaitOperationRequest + * @static + * @param {google.longrunning.IWaitOperationRequest} message WaitOperationRequest message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + WaitOperationRequest.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.name != null && Object.hasOwnProperty.call(message, "name")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.name); + if (message.timeout != null && Object.hasOwnProperty.call(message, "timeout")) + $root.google.protobuf.Duration.encode(message.timeout, writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim(); + return writer; + }; + + /** + * Encodes the specified WaitOperationRequest message, length delimited. Does not implicitly {@link google.longrunning.WaitOperationRequest.verify|verify} messages. + * @function encodeDelimited + * @memberof google.longrunning.WaitOperationRequest + * @static + * @param {google.longrunning.IWaitOperationRequest} message WaitOperationRequest message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + WaitOperationRequest.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a WaitOperationRequest message from the specified reader or buffer. + * @function decode + * @memberof google.longrunning.WaitOperationRequest + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.longrunning.WaitOperationRequest} WaitOperationRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + WaitOperationRequest.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.longrunning.WaitOperationRequest(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.name = reader.string(); + break; + case 2: + message.timeout = $root.google.protobuf.Duration.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a WaitOperationRequest message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.longrunning.WaitOperationRequest + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.longrunning.WaitOperationRequest} WaitOperationRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + WaitOperationRequest.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a WaitOperationRequest message. + * @function verify + * @memberof google.longrunning.WaitOperationRequest + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + WaitOperationRequest.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.name != null && message.hasOwnProperty("name")) + if (!$util.isString(message.name)) + return "name: string expected"; + if (message.timeout != null && message.hasOwnProperty("timeout")) { + var error = $root.google.protobuf.Duration.verify(message.timeout); + if (error) + return "timeout." + error; + } + return null; + }; + + /** + * Creates a WaitOperationRequest message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.longrunning.WaitOperationRequest + * @static + * @param {Object.} object Plain object + * @returns {google.longrunning.WaitOperationRequest} WaitOperationRequest + */ + WaitOperationRequest.fromObject = function fromObject(object) { + if (object instanceof $root.google.longrunning.WaitOperationRequest) + return object; + var message = new $root.google.longrunning.WaitOperationRequest(); + if (object.name != null) + message.name = String(object.name); + if (object.timeout != null) { + if (typeof object.timeout !== "object") + throw TypeError(".google.longrunning.WaitOperationRequest.timeout: object expected"); + message.timeout = $root.google.protobuf.Duration.fromObject(object.timeout); + } + return message; + }; + + /** + * Creates a plain object from a WaitOperationRequest message. Also converts values to other types if specified. + * @function toObject + * @memberof google.longrunning.WaitOperationRequest + * @static + * @param {google.longrunning.WaitOperationRequest} message WaitOperationRequest + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + WaitOperationRequest.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.name = ""; + object.timeout = null; + } + if (message.name != null && message.hasOwnProperty("name")) + object.name = message.name; + if (message.timeout != null && message.hasOwnProperty("timeout")) + object.timeout = $root.google.protobuf.Duration.toObject(message.timeout, options); + return object; + }; + + /** + * Converts this WaitOperationRequest to JSON. + * @function toJSON + * @memberof google.longrunning.WaitOperationRequest + * @instance + * @returns {Object.} JSON object + */ + WaitOperationRequest.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return WaitOperationRequest; + })(); + + longrunning.OperationInfo = (function() { + + /** + * Properties of an OperationInfo. + * @memberof google.longrunning + * @interface IOperationInfo + * @property {string|null} [responseType] OperationInfo responseType + * @property {string|null} [metadataType] OperationInfo metadataType + */ + + /** + * Constructs a new OperationInfo. + * @memberof google.longrunning + * @classdesc Represents an OperationInfo. + * @implements IOperationInfo + * @constructor + * @param {google.longrunning.IOperationInfo=} [properties] Properties to set + */ + function OperationInfo(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]]; + } + + /** + * OperationInfo responseType. + * @member {string} responseType + * @memberof google.longrunning.OperationInfo + * @instance + */ + OperationInfo.prototype.responseType = ""; + + /** + * OperationInfo metadataType. + * @member {string} metadataType + * @memberof google.longrunning.OperationInfo + * @instance + */ + OperationInfo.prototype.metadataType = ""; + + /** + * Creates a new OperationInfo instance using the specified properties. + * @function create + * @memberof google.longrunning.OperationInfo + * @static + * @param {google.longrunning.IOperationInfo=} [properties] Properties to set + * @returns {google.longrunning.OperationInfo} OperationInfo instance + */ + OperationInfo.create = function create(properties) { + return new OperationInfo(properties); + }; + + /** + * Encodes the specified OperationInfo message. Does not implicitly {@link google.longrunning.OperationInfo.verify|verify} messages. + * @function encode + * @memberof google.longrunning.OperationInfo + * @static + * @param {google.longrunning.IOperationInfo} message OperationInfo message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + OperationInfo.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.responseType != null && Object.hasOwnProperty.call(message, "responseType")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.responseType); + if (message.metadataType != null && Object.hasOwnProperty.call(message, "metadataType")) + writer.uint32(/* id 2, wireType 2 =*/18).string(message.metadataType); + return writer; + }; + + /** + * Encodes the specified OperationInfo message, length delimited. Does not implicitly {@link google.longrunning.OperationInfo.verify|verify} messages. + * @function encodeDelimited + * @memberof google.longrunning.OperationInfo + * @static + * @param {google.longrunning.IOperationInfo} message OperationInfo message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + OperationInfo.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes an OperationInfo message from the specified reader or buffer. + * @function decode + * @memberof google.longrunning.OperationInfo + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.longrunning.OperationInfo} OperationInfo + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + OperationInfo.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.longrunning.OperationInfo(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.responseType = reader.string(); + break; + case 2: + message.metadataType = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes an OperationInfo message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.longrunning.OperationInfo + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.longrunning.OperationInfo} OperationInfo + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + OperationInfo.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies an OperationInfo message. + * @function verify + * @memberof google.longrunning.OperationInfo + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + OperationInfo.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.responseType != null && message.hasOwnProperty("responseType")) + if (!$util.isString(message.responseType)) + return "responseType: string expected"; + if (message.metadataType != null && message.hasOwnProperty("metadataType")) + if (!$util.isString(message.metadataType)) + return "metadataType: string expected"; + return null; + }; + + /** + * Creates an OperationInfo message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.longrunning.OperationInfo + * @static + * @param {Object.} object Plain object + * @returns {google.longrunning.OperationInfo} OperationInfo + */ + OperationInfo.fromObject = function fromObject(object) { + if (object instanceof $root.google.longrunning.OperationInfo) + return object; + var message = new $root.google.longrunning.OperationInfo(); + if (object.responseType != null) + message.responseType = String(object.responseType); + if (object.metadataType != null) + message.metadataType = String(object.metadataType); + return message; + }; + + /** + * Creates a plain object from an OperationInfo message. Also converts values to other types if specified. + * @function toObject + * @memberof google.longrunning.OperationInfo + * @static + * @param {google.longrunning.OperationInfo} message OperationInfo + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + OperationInfo.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.responseType = ""; + object.metadataType = ""; + } + if (message.responseType != null && message.hasOwnProperty("responseType")) + object.responseType = message.responseType; + if (message.metadataType != null && message.hasOwnProperty("metadataType")) + object.metadataType = message.metadataType; + return object; + }; + + /** + * Converts this OperationInfo to JSON. + * @function toJSON + * @memberof google.longrunning.OperationInfo + * @instance + * @returns {Object.} JSON object + */ + OperationInfo.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return OperationInfo; + })(); + + return longrunning; + })(); + + google.rpc = (function() { + + /** + * Namespace rpc. + * @memberof google + * @namespace + */ + var rpc = {}; + + rpc.Status = (function() { + + /** + * Properties of a Status. + * @memberof google.rpc + * @interface IStatus + * @property {number|null} [code] Status code + * @property {string|null} [message] Status message + * @property {Array.|null} [details] Status details + */ + + /** + * Constructs a new Status. + * @memberof google.rpc + * @classdesc Represents a Status. + * @implements IStatus + * @constructor + * @param {google.rpc.IStatus=} [properties] Properties to set + */ + function Status(properties) { + this.details = []; + 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]]; + } + + /** + * Status code. + * @member {number} code + * @memberof google.rpc.Status + * @instance + */ + Status.prototype.code = 0; + + /** + * Status message. + * @member {string} message + * @memberof google.rpc.Status + * @instance + */ + Status.prototype.message = ""; + + /** + * Status details. + * @member {Array.} details + * @memberof google.rpc.Status + * @instance + */ + Status.prototype.details = $util.emptyArray; + + /** + * Creates a new Status instance using the specified properties. + * @function create + * @memberof google.rpc.Status + * @static + * @param {google.rpc.IStatus=} [properties] Properties to set + * @returns {google.rpc.Status} Status instance + */ + Status.create = function create(properties) { + return new Status(properties); + }; + + /** + * Encodes the specified Status message. Does not implicitly {@link google.rpc.Status.verify|verify} messages. + * @function encode + * @memberof google.rpc.Status + * @static + * @param {google.rpc.IStatus} message Status message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + Status.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.code != null && Object.hasOwnProperty.call(message, "code")) + writer.uint32(/* id 1, wireType 0 =*/8).int32(message.code); + if (message.message != null && Object.hasOwnProperty.call(message, "message")) + writer.uint32(/* id 2, wireType 2 =*/18).string(message.message); + if (message.details != null && message.details.length) + for (var i = 0; i < message.details.length; ++i) + $root.google.protobuf.Any.encode(message.details[i], writer.uint32(/* id 3, wireType 2 =*/26).fork()).ldelim(); + return writer; + }; + + /** + * Encodes the specified Status message, length delimited. Does not implicitly {@link google.rpc.Status.verify|verify} messages. + * @function encodeDelimited + * @memberof google.rpc.Status + * @static + * @param {google.rpc.IStatus} message Status message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + Status.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a Status message from the specified reader or buffer. + * @function decode + * @memberof google.rpc.Status + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.rpc.Status} Status + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + Status.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.rpc.Status(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.code = reader.int32(); + break; + case 2: + message.message = reader.string(); + break; + case 3: + if (!(message.details && message.details.length)) + message.details = []; + message.details.push($root.google.protobuf.Any.decode(reader, reader.uint32())); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a Status message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.rpc.Status + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.rpc.Status} Status + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + Status.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a Status message. + * @function verify + * @memberof google.rpc.Status + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + Status.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.code != null && message.hasOwnProperty("code")) + if (!$util.isInteger(message.code)) + return "code: integer expected"; + if (message.message != null && message.hasOwnProperty("message")) + if (!$util.isString(message.message)) + return "message: string expected"; + if (message.details != null && message.hasOwnProperty("details")) { + if (!Array.isArray(message.details)) + return "details: array expected"; + for (var i = 0; i < message.details.length; ++i) { + var error = $root.google.protobuf.Any.verify(message.details[i]); + if (error) + return "details." + error; + } + } + return null; + }; + + /** + * Creates a Status message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.rpc.Status + * @static + * @param {Object.} object Plain object + * @returns {google.rpc.Status} Status + */ + Status.fromObject = function fromObject(object) { + if (object instanceof $root.google.rpc.Status) + return object; + var message = new $root.google.rpc.Status(); + if (object.code != null) + message.code = object.code | 0; + if (object.message != null) + message.message = String(object.message); + if (object.details) { + if (!Array.isArray(object.details)) + throw TypeError(".google.rpc.Status.details: array expected"); + message.details = []; + for (var i = 0; i < object.details.length; ++i) { + if (typeof object.details[i] !== "object") + throw TypeError(".google.rpc.Status.details: object expected"); + message.details[i] = $root.google.protobuf.Any.fromObject(object.details[i]); + } + } + return message; + }; + + /** + * Creates a plain object from a Status message. Also converts values to other types if specified. + * @function toObject + * @memberof google.rpc.Status + * @static + * @param {google.rpc.Status} message Status + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + Status.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.arrays || options.defaults) + object.details = []; + if (options.defaults) { + object.code = 0; + object.message = ""; + } + if (message.code != null && message.hasOwnProperty("code")) + object.code = message.code; + if (message.message != null && message.hasOwnProperty("message")) + object.message = message.message; + if (message.details && message.details.length) { + object.details = []; + for (var j = 0; j < message.details.length; ++j) + object.details[j] = $root.google.protobuf.Any.toObject(message.details[j], options); + } + return object; + }; + + /** + * Converts this Status to JSON. + * @function toJSON + * @memberof google.rpc.Status + * @instance + * @returns {Object.} JSON object + */ + Status.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return Status; + })(); + + return rpc; + })(); + + return google; + })(); + + return $root; +}); diff --git a/packages/google-cloud-gkehub/protos/protos.json b/packages/google-cloud-gkehub/protos/protos.json new file mode 100644 index 00000000000..33c20cdca21 --- /dev/null +++ b/packages/google-cloud-gkehub/protos/protos.json @@ -0,0 +1,2271 @@ +{ + "nested": { + "google": { + "nested": { + "cloud": { + "nested": { + "gkehub": { + "nested": { + "v1beta1": { + "options": { + "go_package": "google.golang.org/genproto/googleapis/cloud/gkehub/v1beta1;gkehub", + "java_multiple_files": true, + "java_package": "com.google.cloud.gkehub.v1beta1" + }, + "nested": { + "GkeHubMembershipService": { + "options": { + "(google.api.default_host)": "gkehub.googleapis.com", + "(google.api.oauth_scopes)": "https://www.googleapis.com/auth/cloud-platform" + }, + "methods": { + "ListMemberships": { + "requestType": "ListMembershipsRequest", + "responseType": "ListMembershipsResponse", + "options": { + "(google.api.http).get": "/v1beta1/{parent=projects/*/locations/*}/memberships", + "(google.api.method_signature)": "parent" + }, + "parsedOptions": [ + { + "(google.api.http)": { + "get": "/v1beta1/{parent=projects/*/locations/*}/memberships" + } + }, + { + "(google.api.method_signature)": "parent" + } + ] + }, + "GetMembership": { + "requestType": "GetMembershipRequest", + "responseType": "Membership", + "options": { + "(google.api.http).get": "/v1beta1/{name=projects/*/locations/*/memberships/*}", + "(google.api.method_signature)": "name" + }, + "parsedOptions": [ + { + "(google.api.http)": { + "get": "/v1beta1/{name=projects/*/locations/*/memberships/*}" + } + }, + { + "(google.api.method_signature)": "name" + } + ] + }, + "CreateMembership": { + "requestType": "CreateMembershipRequest", + "responseType": "google.longrunning.Operation", + "options": { + "(google.api.http).post": "/v1beta1/{parent=projects/*/locations/*}/memberships", + "(google.api.http).body": "resource", + "(google.api.method_signature)": "parent,resource,membership_id", + "(google.longrunning.operation_info).response_type": "Membership", + "(google.longrunning.operation_info).metadata_type": "OperationMetadata" + }, + "parsedOptions": [ + { + "(google.api.http)": { + "post": "/v1beta1/{parent=projects/*/locations/*}/memberships", + "body": "resource" + } + }, + { + "(google.api.method_signature)": "parent,resource,membership_id" + }, + { + "(google.longrunning.operation_info)": { + "response_type": "Membership", + "metadata_type": "OperationMetadata" + } + } + ] + }, + "DeleteMembership": { + "requestType": "DeleteMembershipRequest", + "responseType": "google.longrunning.Operation", + "options": { + "(google.api.http).delete": "/v1beta1/{name=projects/*/locations/*/memberships/*}", + "(google.api.method_signature)": "name", + "(google.longrunning.operation_info).response_type": "google.protobuf.Empty", + "(google.longrunning.operation_info).metadata_type": "OperationMetadata" + }, + "parsedOptions": [ + { + "(google.api.http)": { + "delete": "/v1beta1/{name=projects/*/locations/*/memberships/*}" + } + }, + { + "(google.api.method_signature)": "name" + }, + { + "(google.longrunning.operation_info)": { + "response_type": "google.protobuf.Empty", + "metadata_type": "OperationMetadata" + } + } + ] + }, + "UpdateMembership": { + "requestType": "UpdateMembershipRequest", + "responseType": "google.longrunning.Operation", + "options": { + "(google.api.http).patch": "/v1beta1/{name=projects/*/locations/*/memberships/*}", + "(google.api.http).body": "resource", + "(google.api.method_signature)": "name,resource,update_mask", + "(google.longrunning.operation_info).response_type": "Membership", + "(google.longrunning.operation_info).metadata_type": "OperationMetadata" + }, + "parsedOptions": [ + { + "(google.api.http)": { + "patch": "/v1beta1/{name=projects/*/locations/*/memberships/*}", + "body": "resource" + } + }, + { + "(google.api.method_signature)": "name,resource,update_mask" + }, + { + "(google.longrunning.operation_info)": { + "response_type": "Membership", + "metadata_type": "OperationMetadata" + } + } + ] + }, + "GenerateConnectManifest": { + "requestType": "GenerateConnectManifestRequest", + "responseType": "GenerateConnectManifestResponse", + "options": { + "(google.api.http).get": "/v1beta1/{name=projects/*/locations/*/memberships/*}:generateConnectManifest" + }, + "parsedOptions": [ + { + "(google.api.http)": { + "get": "/v1beta1/{name=projects/*/locations/*/memberships/*}:generateConnectManifest" + } + } + ] + }, + "ValidateExclusivity": { + "requestType": "ValidateExclusivityRequest", + "responseType": "ValidateExclusivityResponse", + "options": { + "(google.api.http).get": "/v1beta1/{parent=projects/*/locations/*}/memberships:validateExclusivity" + }, + "parsedOptions": [ + { + "(google.api.http)": { + "get": "/v1beta1/{parent=projects/*/locations/*}/memberships:validateExclusivity" + } + } + ] + }, + "GenerateExclusivityManifest": { + "requestType": "GenerateExclusivityManifestRequest", + "responseType": "GenerateExclusivityManifestResponse", + "options": { + "(google.api.http).get": "/v1beta1/{name=projects/*/locations/*/memberships/*}:generateExclusivityManifest" + }, + "parsedOptions": [ + { + "(google.api.http)": { + "get": "/v1beta1/{name=projects/*/locations/*/memberships/*}:generateExclusivityManifest" + } + } + ] + } + } + }, + "Membership": { + "options": { + "(google.api.resource).type": "gkehub.googleapis.com/Membership", + "(google.api.resource).pattern": "projects/{project}/locations/{location}/memberships/{membership}" + }, + "oneofs": { + "type": { + "oneof": [ + "endpoint" + ] + } + }, + "fields": { + "name": { + "type": "string", + "id": 1, + "options": { + "(google.api.field_behavior)": "OUTPUT_ONLY" + } + }, + "labels": { + "keyType": "string", + "type": "string", + "id": 2, + "options": { + "(google.api.field_behavior)": "OPTIONAL" + } + }, + "description": { + "type": "string", + "id": 3, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } + }, + "endpoint": { + "type": "MembershipEndpoint", + "id": 4, + "options": { + "(google.api.field_behavior)": "OPTIONAL" + } + }, + "state": { + "type": "MembershipState", + "id": 5, + "options": { + "(google.api.field_behavior)": "OUTPUT_ONLY" + } + }, + "authority": { + "type": "Authority", + "id": 9, + "options": { + "(google.api.field_behavior)": "OPTIONAL" + } + }, + "createTime": { + "type": "google.protobuf.Timestamp", + "id": 6, + "options": { + "(google.api.field_behavior)": "OUTPUT_ONLY" + } + }, + "updateTime": { + "type": "google.protobuf.Timestamp", + "id": 7, + "options": { + "(google.api.field_behavior)": "OUTPUT_ONLY" + } + }, + "deleteTime": { + "type": "google.protobuf.Timestamp", + "id": 8, + "options": { + "(google.api.field_behavior)": "OUTPUT_ONLY" + } + }, + "externalId": { + "type": "string", + "id": 10, + "options": { + "(google.api.field_behavior)": "OPTIONAL" + } + }, + "lastConnectionTime": { + "type": "google.protobuf.Timestamp", + "id": 11, + "options": { + "(google.api.field_behavior)": "OUTPUT_ONLY" + } + }, + "uniqueId": { + "type": "string", + "id": 12, + "options": { + "(google.api.field_behavior)": "OUTPUT_ONLY" + } + }, + "infrastructureType": { + "type": "InfrastructureType", + "id": 13, + "options": { + "(google.api.field_behavior)": "OPTIONAL" + } + } + }, + "nested": { + "InfrastructureType": { + "values": { + "INFRASTRUCTURE_TYPE_UNSPECIFIED": 0, + "ON_PREM": 1, + "MULTI_CLOUD": 2 + } + } + } + }, + "MembershipEndpoint": { + "fields": { + "gkeCluster": { + "type": "GkeCluster", + "id": 4, + "options": { + "(google.api.field_behavior)": "OPTIONAL" + } + }, + "kubernetesMetadata": { + "type": "KubernetesMetadata", + "id": 5, + "options": { + "(google.api.field_behavior)": "OUTPUT_ONLY" + } + }, + "kubernetesResource": { + "type": "KubernetesResource", + "id": 6, + "options": { + "(google.api.field_behavior)": "OPTIONAL" + } + } + } + }, + "KubernetesResource": { + "fields": { + "membershipCrManifest": { + "type": "string", + "id": 1, + "options": { + "(google.api.field_behavior)": "INPUT_ONLY" + } + }, + "membershipResources": { + "rule": "repeated", + "type": "ResourceManifest", + "id": 2, + "options": { + "(google.api.field_behavior)": "OUTPUT_ONLY" + } + }, + "connectResources": { + "rule": "repeated", + "type": "ResourceManifest", + "id": 3, + "options": { + "(google.api.field_behavior)": "OUTPUT_ONLY" + } + }, + "resourceOptions": { + "type": "ResourceOptions", + "id": 4, + "options": { + "(google.api.field_behavior)": "OPTIONAL" + } + } + } + }, + "ResourceOptions": { + "fields": { + "connectVersion": { + "type": "string", + "id": 1, + "options": { + "(google.api.field_behavior)": "OPTIONAL" + } + }, + "v1beta1Crd": { + "type": "bool", + "id": 2, + "options": { + "(google.api.field_behavior)": "OPTIONAL" + } + } + } + }, + "ResourceManifest": { + "fields": { + "manifest": { + "type": "string", + "id": 1 + }, + "clusterScoped": { + "type": "bool", + "id": 2 + } + } + }, + "GkeCluster": { + "fields": { + "resourceLink": { + "type": "string", + "id": 1, + "options": { + "(google.api.field_behavior)": "IMMUTABLE" + } + } + } + }, + "KubernetesMetadata": { + "fields": { + "kubernetesApiServerVersion": { + "type": "string", + "id": 1, + "options": { + "(google.api.field_behavior)": "OUTPUT_ONLY" + } + }, + "nodeProviderId": { + "type": "string", + "id": 2, + "options": { + "(google.api.field_behavior)": "OUTPUT_ONLY" + } + }, + "nodeCount": { + "type": "int32", + "id": 3, + "options": { + "(google.api.field_behavior)": "OUTPUT_ONLY" + } + }, + "vcpuCount": { + "type": "int32", + "id": 4, + "options": { + "(google.api.field_behavior)": "OUTPUT_ONLY" + } + }, + "memoryMb": { + "type": "int32", + "id": 5, + "options": { + "(google.api.field_behavior)": "OUTPUT_ONLY" + } + }, + "updateTime": { + "type": "google.protobuf.Timestamp", + "id": 100, + "options": { + "(google.api.field_behavior)": "OUTPUT_ONLY" + } + } + } + }, + "Authority": { + "fields": { + "issuer": { + "type": "string", + "id": 1, + "options": { + "(google.api.field_behavior)": "OPTIONAL" + } + }, + "workloadIdentityPool": { + "type": "string", + "id": 2, + "options": { + "(google.api.field_behavior)": "OUTPUT_ONLY" + } + }, + "identityProvider": { + "type": "string", + "id": 3, + "options": { + "(google.api.field_behavior)": "OUTPUT_ONLY" + } + } + } + }, + "MembershipState": { + "fields": { + "code": { + "type": "Code", + "id": 1, + "options": { + "(google.api.field_behavior)": "OUTPUT_ONLY" + } + }, + "description": { + "type": "string", + "id": 2, + "options": { + "deprecated": true + } + }, + "updateTime": { + "type": "google.protobuf.Timestamp", + "id": 3, + "options": { + "deprecated": true + } + } + }, + "nested": { + "Code": { + "values": { + "CODE_UNSPECIFIED": 0, + "CREATING": 1, + "READY": 2, + "DELETING": 3, + "UPDATING": 4, + "SERVICE_UPDATING": 5 + } + } + } + }, + "ListMembershipsRequest": { + "fields": { + "parent": { + "type": "string", + "id": 1, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } + }, + "pageSize": { + "type": "int32", + "id": 2, + "options": { + "(google.api.field_behavior)": "OPTIONAL" + } + }, + "pageToken": { + "type": "string", + "id": 3, + "options": { + "(google.api.field_behavior)": "OPTIONAL" + } + }, + "filter": { + "type": "string", + "id": 4, + "options": { + "(google.api.field_behavior)": "OPTIONAL" + } + }, + "orderBy": { + "type": "string", + "id": 5, + "options": { + "(google.api.field_behavior)": "OPTIONAL" + } + } + } + }, + "ListMembershipsResponse": { + "fields": { + "resources": { + "rule": "repeated", + "type": "Membership", + "id": 1 + }, + "nextPageToken": { + "type": "string", + "id": 2 + }, + "unreachable": { + "rule": "repeated", + "type": "string", + "id": 3 + } + } + }, + "GetMembershipRequest": { + "fields": { + "name": { + "type": "string", + "id": 1, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } + } + } + }, + "CreateMembershipRequest": { + "fields": { + "parent": { + "type": "string", + "id": 1, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } + }, + "membershipId": { + "type": "string", + "id": 2, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } + }, + "resource": { + "type": "Membership", + "id": 3, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } + } + } + }, + "DeleteMembershipRequest": { + "fields": { + "name": { + "type": "string", + "id": 1, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } + } + } + }, + "UpdateMembershipRequest": { + "fields": { + "name": { + "type": "string", + "id": 1, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } + }, + "updateMask": { + "type": "google.protobuf.FieldMask", + "id": 2, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } + }, + "resource": { + "type": "Membership", + "id": 3, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } + } + } + }, + "GenerateConnectManifestRequest": { + "fields": { + "name": { + "type": "string", + "id": 1, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } + }, + "connectAgent": { + "type": "ConnectAgent", + "id": 2, + "options": { + "(google.api.field_behavior)": "OPTIONAL" + } + }, + "version": { + "type": "string", + "id": 3, + "options": { + "(google.api.field_behavior)": "OPTIONAL" + } + }, + "isUpgrade": { + "type": "bool", + "id": 4, + "options": { + "(google.api.field_behavior)": "OPTIONAL" + } + }, + "registry": { + "type": "string", + "id": 5, + "options": { + "(google.api.field_behavior)": "OPTIONAL" + } + }, + "imagePullSecretContent": { + "type": "bytes", + "id": 6, + "options": { + "(google.api.field_behavior)": "OPTIONAL" + } + } + } + }, + "GenerateConnectManifestResponse": { + "fields": { + "manifest": { + "rule": "repeated", + "type": "ConnectAgentResource", + "id": 1 + } + } + }, + "ConnectAgentResource": { + "fields": { + "type": { + "type": "TypeMeta", + "id": 1 + }, + "manifest": { + "type": "string", + "id": 2 + } + } + }, + "TypeMeta": { + "fields": { + "kind": { + "type": "string", + "id": 1 + }, + "apiVersion": { + "type": "string", + "id": 2 + } + } + }, + "ConnectAgent": { + "fields": { + "name": { + "type": "string", + "id": 1, + "options": { + "(google.api.field_behavior)": "OPTIONAL" + } + }, + "proxy": { + "type": "bytes", + "id": 2, + "options": { + "(google.api.field_behavior)": "OPTIONAL" + } + }, + "namespace": { + "type": "string", + "id": 3, + "options": { + "(google.api.field_behavior)": "OPTIONAL" + } + } + } + }, + "ValidateExclusivityRequest": { + "fields": { + "parent": { + "type": "string", + "id": 1, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } + }, + "crManifest": { + "type": "string", + "id": 2, + "options": { + "(google.api.field_behavior)": "OPTIONAL" + } + }, + "intendedMembership": { + "type": "string", + "id": 3, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } + } + } + }, + "ValidateExclusivityResponse": { + "fields": { + "status": { + "type": "google.rpc.Status", + "id": 1 + } + } + }, + "GenerateExclusivityManifestRequest": { + "fields": { + "name": { + "type": "string", + "id": 1, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } + }, + "crdManifest": { + "type": "string", + "id": 2, + "options": { + "(google.api.field_behavior)": "OPTIONAL" + } + }, + "crManifest": { + "type": "string", + "id": 3, + "options": { + "(google.api.field_behavior)": "OPTIONAL" + } + } + } + }, + "GenerateExclusivityManifestResponse": { + "fields": { + "crdManifest": { + "type": "string", + "id": 1 + }, + "crManifest": { + "type": "string", + "id": 2 + } + } + }, + "OperationMetadata": { + "fields": { + "createTime": { + "type": "google.protobuf.Timestamp", + "id": 1, + "options": { + "(google.api.field_behavior)": "OUTPUT_ONLY" + } + }, + "endTime": { + "type": "google.protobuf.Timestamp", + "id": 2, + "options": { + "(google.api.field_behavior)": "OUTPUT_ONLY" + } + }, + "target": { + "type": "string", + "id": 3, + "options": { + "(google.api.field_behavior)": "OUTPUT_ONLY" + } + }, + "verb": { + "type": "string", + "id": 4, + "options": { + "(google.api.field_behavior)": "OUTPUT_ONLY" + } + }, + "statusDetail": { + "type": "string", + "id": 5, + "options": { + "(google.api.field_behavior)": "OUTPUT_ONLY" + } + }, + "cancelRequested": { + "type": "bool", + "id": 6, + "options": { + "(google.api.field_behavior)": "OUTPUT_ONLY" + } + }, + "apiVersion": { + "type": "string", + "id": 7, + "options": { + "(google.api.field_behavior)": "OUTPUT_ONLY" + } + } + } + } + } + } + } + } + } + }, + "api": { + "options": { + "go_package": "google.golang.org/genproto/googleapis/api/annotations;annotations", + "java_multiple_files": true, + "java_outer_classname": "ResourceProto", + "java_package": "com.google.api", + "objc_class_prefix": "GAPI", + "cc_enable_arenas": true + }, + "nested": { + "http": { + "type": "HttpRule", + "id": 72295728, + "extend": "google.protobuf.MethodOptions" + }, + "Http": { + "fields": { + "rules": { + "rule": "repeated", + "type": "HttpRule", + "id": 1 + }, + "fullyDecodeReservedExpansion": { + "type": "bool", + "id": 2 + } + } + }, + "HttpRule": { + "oneofs": { + "pattern": { + "oneof": [ + "get", + "put", + "post", + "delete", + "patch", + "custom" + ] + } + }, + "fields": { + "selector": { + "type": "string", + "id": 1 + }, + "get": { + "type": "string", + "id": 2 + }, + "put": { + "type": "string", + "id": 3 + }, + "post": { + "type": "string", + "id": 4 + }, + "delete": { + "type": "string", + "id": 5 + }, + "patch": { + "type": "string", + "id": 6 + }, + "custom": { + "type": "CustomHttpPattern", + "id": 8 + }, + "body": { + "type": "string", + "id": 7 + }, + "responseBody": { + "type": "string", + "id": 12 + }, + "additionalBindings": { + "rule": "repeated", + "type": "HttpRule", + "id": 11 + } + } + }, + "CustomHttpPattern": { + "fields": { + "kind": { + "type": "string", + "id": 1 + }, + "path": { + "type": "string", + "id": 2 + } + } + }, + "methodSignature": { + "rule": "repeated", + "type": "string", + "id": 1051, + "extend": "google.protobuf.MethodOptions" + }, + "defaultHost": { + "type": "string", + "id": 1049, + "extend": "google.protobuf.ServiceOptions" + }, + "oauthScopes": { + "type": "string", + "id": 1050, + "extend": "google.protobuf.ServiceOptions" + }, + "fieldBehavior": { + "rule": "repeated", + "type": "google.api.FieldBehavior", + "id": 1052, + "extend": "google.protobuf.FieldOptions" + }, + "FieldBehavior": { + "values": { + "FIELD_BEHAVIOR_UNSPECIFIED": 0, + "OPTIONAL": 1, + "REQUIRED": 2, + "OUTPUT_ONLY": 3, + "INPUT_ONLY": 4, + "IMMUTABLE": 5 + } + }, + "resourceReference": { + "type": "google.api.ResourceReference", + "id": 1055, + "extend": "google.protobuf.FieldOptions" + }, + "resourceDefinition": { + "rule": "repeated", + "type": "google.api.ResourceDescriptor", + "id": 1053, + "extend": "google.protobuf.FileOptions" + }, + "resource": { + "type": "google.api.ResourceDescriptor", + "id": 1053, + "extend": "google.protobuf.MessageOptions" + }, + "ResourceDescriptor": { + "fields": { + "type": { + "type": "string", + "id": 1 + }, + "pattern": { + "rule": "repeated", + "type": "string", + "id": 2 + }, + "nameField": { + "type": "string", + "id": 3 + }, + "history": { + "type": "History", + "id": 4 + }, + "plural": { + "type": "string", + "id": 5 + }, + "singular": { + "type": "string", + "id": 6 + }, + "style": { + "rule": "repeated", + "type": "Style", + "id": 10 + } + }, + "nested": { + "History": { + "values": { + "HISTORY_UNSPECIFIED": 0, + "ORIGINALLY_SINGLE_PATTERN": 1, + "FUTURE_MULTI_PATTERN": 2 + } + }, + "Style": { + "values": { + "STYLE_UNSPECIFIED": 0, + "DECLARATIVE_FRIENDLY": 1 + } + } + } + }, + "ResourceReference": { + "fields": { + "type": { + "type": "string", + "id": 1 + }, + "childType": { + "type": "string", + "id": 2 + } + } + } + } + }, + "protobuf": { + "options": { + "go_package": "google.golang.org/protobuf/types/descriptorpb", + "java_package": "com.google.protobuf", + "java_outer_classname": "DescriptorProtos", + "csharp_namespace": "Google.Protobuf.Reflection", + "objc_class_prefix": "GPB", + "cc_enable_arenas": true, + "optimize_for": "SPEED" + }, + "nested": { + "FileDescriptorSet": { + "fields": { + "file": { + "rule": "repeated", + "type": "FileDescriptorProto", + "id": 1 + } + } + }, + "FileDescriptorProto": { + "fields": { + "name": { + "type": "string", + "id": 1 + }, + "package": { + "type": "string", + "id": 2 + }, + "dependency": { + "rule": "repeated", + "type": "string", + "id": 3 + }, + "publicDependency": { + "rule": "repeated", + "type": "int32", + "id": 10, + "options": { + "packed": false + } + }, + "weakDependency": { + "rule": "repeated", + "type": "int32", + "id": 11, + "options": { + "packed": false + } + }, + "messageType": { + "rule": "repeated", + "type": "DescriptorProto", + "id": 4 + }, + "enumType": { + "rule": "repeated", + "type": "EnumDescriptorProto", + "id": 5 + }, + "service": { + "rule": "repeated", + "type": "ServiceDescriptorProto", + "id": 6 + }, + "extension": { + "rule": "repeated", + "type": "FieldDescriptorProto", + "id": 7 + }, + "options": { + "type": "FileOptions", + "id": 8 + }, + "sourceCodeInfo": { + "type": "SourceCodeInfo", + "id": 9 + }, + "syntax": { + "type": "string", + "id": 12 + } + } + }, + "DescriptorProto": { + "fields": { + "name": { + "type": "string", + "id": 1 + }, + "field": { + "rule": "repeated", + "type": "FieldDescriptorProto", + "id": 2 + }, + "extension": { + "rule": "repeated", + "type": "FieldDescriptorProto", + "id": 6 + }, + "nestedType": { + "rule": "repeated", + "type": "DescriptorProto", + "id": 3 + }, + "enumType": { + "rule": "repeated", + "type": "EnumDescriptorProto", + "id": 4 + }, + "extensionRange": { + "rule": "repeated", + "type": "ExtensionRange", + "id": 5 + }, + "oneofDecl": { + "rule": "repeated", + "type": "OneofDescriptorProto", + "id": 8 + }, + "options": { + "type": "MessageOptions", + "id": 7 + }, + "reservedRange": { + "rule": "repeated", + "type": "ReservedRange", + "id": 9 + }, + "reservedName": { + "rule": "repeated", + "type": "string", + "id": 10 + } + }, + "nested": { + "ExtensionRange": { + "fields": { + "start": { + "type": "int32", + "id": 1 + }, + "end": { + "type": "int32", + "id": 2 + }, + "options": { + "type": "ExtensionRangeOptions", + "id": 3 + } + } + }, + "ReservedRange": { + "fields": { + "start": { + "type": "int32", + "id": 1 + }, + "end": { + "type": "int32", + "id": 2 + } + } + } + } + }, + "ExtensionRangeOptions": { + "fields": { + "uninterpretedOption": { + "rule": "repeated", + "type": "UninterpretedOption", + "id": 999 + } + }, + "extensions": [ + [ + 1000, + 536870911 + ] + ] + }, + "FieldDescriptorProto": { + "fields": { + "name": { + "type": "string", + "id": 1 + }, + "number": { + "type": "int32", + "id": 3 + }, + "label": { + "type": "Label", + "id": 4 + }, + "type": { + "type": "Type", + "id": 5 + }, + "typeName": { + "type": "string", + "id": 6 + }, + "extendee": { + "type": "string", + "id": 2 + }, + "defaultValue": { + "type": "string", + "id": 7 + }, + "oneofIndex": { + "type": "int32", + "id": 9 + }, + "jsonName": { + "type": "string", + "id": 10 + }, + "options": { + "type": "FieldOptions", + "id": 8 + }, + "proto3Optional": { + "type": "bool", + "id": 17 + } + }, + "nested": { + "Type": { + "values": { + "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": { + "values": { + "LABEL_OPTIONAL": 1, + "LABEL_REQUIRED": 2, + "LABEL_REPEATED": 3 + } + } + } + }, + "OneofDescriptorProto": { + "fields": { + "name": { + "type": "string", + "id": 1 + }, + "options": { + "type": "OneofOptions", + "id": 2 + } + } + }, + "EnumDescriptorProto": { + "fields": { + "name": { + "type": "string", + "id": 1 + }, + "value": { + "rule": "repeated", + "type": "EnumValueDescriptorProto", + "id": 2 + }, + "options": { + "type": "EnumOptions", + "id": 3 + }, + "reservedRange": { + "rule": "repeated", + "type": "EnumReservedRange", + "id": 4 + }, + "reservedName": { + "rule": "repeated", + "type": "string", + "id": 5 + } + }, + "nested": { + "EnumReservedRange": { + "fields": { + "start": { + "type": "int32", + "id": 1 + }, + "end": { + "type": "int32", + "id": 2 + } + } + } + } + }, + "EnumValueDescriptorProto": { + "fields": { + "name": { + "type": "string", + "id": 1 + }, + "number": { + "type": "int32", + "id": 2 + }, + "options": { + "type": "EnumValueOptions", + "id": 3 + } + } + }, + "ServiceDescriptorProto": { + "fields": { + "name": { + "type": "string", + "id": 1 + }, + "method": { + "rule": "repeated", + "type": "MethodDescriptorProto", + "id": 2 + }, + "options": { + "type": "ServiceOptions", + "id": 3 + } + } + }, + "MethodDescriptorProto": { + "fields": { + "name": { + "type": "string", + "id": 1 + }, + "inputType": { + "type": "string", + "id": 2 + }, + "outputType": { + "type": "string", + "id": 3 + }, + "options": { + "type": "MethodOptions", + "id": 4 + }, + "clientStreaming": { + "type": "bool", + "id": 5, + "options": { + "default": false + } + }, + "serverStreaming": { + "type": "bool", + "id": 6, + "options": { + "default": false + } + } + } + }, + "FileOptions": { + "fields": { + "javaPackage": { + "type": "string", + "id": 1 + }, + "javaOuterClassname": { + "type": "string", + "id": 8 + }, + "javaMultipleFiles": { + "type": "bool", + "id": 10, + "options": { + "default": false + } + }, + "javaGenerateEqualsAndHash": { + "type": "bool", + "id": 20, + "options": { + "deprecated": true + } + }, + "javaStringCheckUtf8": { + "type": "bool", + "id": 27, + "options": { + "default": false + } + }, + "optimizeFor": { + "type": "OptimizeMode", + "id": 9, + "options": { + "default": "SPEED" + } + }, + "goPackage": { + "type": "string", + "id": 11 + }, + "ccGenericServices": { + "type": "bool", + "id": 16, + "options": { + "default": false + } + }, + "javaGenericServices": { + "type": "bool", + "id": 17, + "options": { + "default": false + } + }, + "pyGenericServices": { + "type": "bool", + "id": 18, + "options": { + "default": false + } + }, + "phpGenericServices": { + "type": "bool", + "id": 42, + "options": { + "default": false + } + }, + "deprecated": { + "type": "bool", + "id": 23, + "options": { + "default": false + } + }, + "ccEnableArenas": { + "type": "bool", + "id": 31, + "options": { + "default": true + } + }, + "objcClassPrefix": { + "type": "string", + "id": 36 + }, + "csharpNamespace": { + "type": "string", + "id": 37 + }, + "swiftPrefix": { + "type": "string", + "id": 39 + }, + "phpClassPrefix": { + "type": "string", + "id": 40 + }, + "phpNamespace": { + "type": "string", + "id": 41 + }, + "phpMetadataNamespace": { + "type": "string", + "id": 44 + }, + "rubyPackage": { + "type": "string", + "id": 45 + }, + "uninterpretedOption": { + "rule": "repeated", + "type": "UninterpretedOption", + "id": 999 + } + }, + "extensions": [ + [ + 1000, + 536870911 + ] + ], + "reserved": [ + [ + 38, + 38 + ] + ], + "nested": { + "OptimizeMode": { + "values": { + "SPEED": 1, + "CODE_SIZE": 2, + "LITE_RUNTIME": 3 + } + } + } + }, + "MessageOptions": { + "fields": { + "messageSetWireFormat": { + "type": "bool", + "id": 1, + "options": { + "default": false + } + }, + "noStandardDescriptorAccessor": { + "type": "bool", + "id": 2, + "options": { + "default": false + } + }, + "deprecated": { + "type": "bool", + "id": 3, + "options": { + "default": false + } + }, + "mapEntry": { + "type": "bool", + "id": 7 + }, + "uninterpretedOption": { + "rule": "repeated", + "type": "UninterpretedOption", + "id": 999 + } + }, + "extensions": [ + [ + 1000, + 536870911 + ] + ], + "reserved": [ + [ + 8, + 8 + ], + [ + 9, + 9 + ] + ] + }, + "FieldOptions": { + "fields": { + "ctype": { + "type": "CType", + "id": 1, + "options": { + "default": "STRING" + } + }, + "packed": { + "type": "bool", + "id": 2 + }, + "jstype": { + "type": "JSType", + "id": 6, + "options": { + "default": "JS_NORMAL" + } + }, + "lazy": { + "type": "bool", + "id": 5, + "options": { + "default": false + } + }, + "deprecated": { + "type": "bool", + "id": 3, + "options": { + "default": false + } + }, + "weak": { + "type": "bool", + "id": 10, + "options": { + "default": false + } + }, + "uninterpretedOption": { + "rule": "repeated", + "type": "UninterpretedOption", + "id": 999 + } + }, + "extensions": [ + [ + 1000, + 536870911 + ] + ], + "reserved": [ + [ + 4, + 4 + ] + ], + "nested": { + "CType": { + "values": { + "STRING": 0, + "CORD": 1, + "STRING_PIECE": 2 + } + }, + "JSType": { + "values": { + "JS_NORMAL": 0, + "JS_STRING": 1, + "JS_NUMBER": 2 + } + } + } + }, + "OneofOptions": { + "fields": { + "uninterpretedOption": { + "rule": "repeated", + "type": "UninterpretedOption", + "id": 999 + } + }, + "extensions": [ + [ + 1000, + 536870911 + ] + ] + }, + "EnumOptions": { + "fields": { + "allowAlias": { + "type": "bool", + "id": 2 + }, + "deprecated": { + "type": "bool", + "id": 3, + "options": { + "default": false + } + }, + "uninterpretedOption": { + "rule": "repeated", + "type": "UninterpretedOption", + "id": 999 + } + }, + "extensions": [ + [ + 1000, + 536870911 + ] + ], + "reserved": [ + [ + 5, + 5 + ] + ] + }, + "EnumValueOptions": { + "fields": { + "deprecated": { + "type": "bool", + "id": 1, + "options": { + "default": false + } + }, + "uninterpretedOption": { + "rule": "repeated", + "type": "UninterpretedOption", + "id": 999 + } + }, + "extensions": [ + [ + 1000, + 536870911 + ] + ] + }, + "ServiceOptions": { + "fields": { + "deprecated": { + "type": "bool", + "id": 33, + "options": { + "default": false + } + }, + "uninterpretedOption": { + "rule": "repeated", + "type": "UninterpretedOption", + "id": 999 + } + }, + "extensions": [ + [ + 1000, + 536870911 + ] + ] + }, + "MethodOptions": { + "fields": { + "deprecated": { + "type": "bool", + "id": 33, + "options": { + "default": false + } + }, + "idempotencyLevel": { + "type": "IdempotencyLevel", + "id": 34, + "options": { + "default": "IDEMPOTENCY_UNKNOWN" + } + }, + "uninterpretedOption": { + "rule": "repeated", + "type": "UninterpretedOption", + "id": 999 + } + }, + "extensions": [ + [ + 1000, + 536870911 + ] + ], + "nested": { + "IdempotencyLevel": { + "values": { + "IDEMPOTENCY_UNKNOWN": 0, + "NO_SIDE_EFFECTS": 1, + "IDEMPOTENT": 2 + } + } + } + }, + "UninterpretedOption": { + "fields": { + "name": { + "rule": "repeated", + "type": "NamePart", + "id": 2 + }, + "identifierValue": { + "type": "string", + "id": 3 + }, + "positiveIntValue": { + "type": "uint64", + "id": 4 + }, + "negativeIntValue": { + "type": "int64", + "id": 5 + }, + "doubleValue": { + "type": "double", + "id": 6 + }, + "stringValue": { + "type": "bytes", + "id": 7 + }, + "aggregateValue": { + "type": "string", + "id": 8 + } + }, + "nested": { + "NamePart": { + "fields": { + "namePart": { + "rule": "required", + "type": "string", + "id": 1 + }, + "isExtension": { + "rule": "required", + "type": "bool", + "id": 2 + } + } + } + } + }, + "SourceCodeInfo": { + "fields": { + "location": { + "rule": "repeated", + "type": "Location", + "id": 1 + } + }, + "nested": { + "Location": { + "fields": { + "path": { + "rule": "repeated", + "type": "int32", + "id": 1 + }, + "span": { + "rule": "repeated", + "type": "int32", + "id": 2 + }, + "leadingComments": { + "type": "string", + "id": 3 + }, + "trailingComments": { + "type": "string", + "id": 4 + }, + "leadingDetachedComments": { + "rule": "repeated", + "type": "string", + "id": 6 + } + } + } + } + }, + "GeneratedCodeInfo": { + "fields": { + "annotation": { + "rule": "repeated", + "type": "Annotation", + "id": 1 + } + }, + "nested": { + "Annotation": { + "fields": { + "path": { + "rule": "repeated", + "type": "int32", + "id": 1 + }, + "sourceFile": { + "type": "string", + "id": 2 + }, + "begin": { + "type": "int32", + "id": 3 + }, + "end": { + "type": "int32", + "id": 4 + } + } + } + } + }, + "Any": { + "fields": { + "type_url": { + "type": "string", + "id": 1 + }, + "value": { + "type": "bytes", + "id": 2 + } + } + }, + "Duration": { + "fields": { + "seconds": { + "type": "int64", + "id": 1 + }, + "nanos": { + "type": "int32", + "id": 2 + } + } + }, + "Empty": { + "fields": {} + }, + "FieldMask": { + "fields": { + "paths": { + "rule": "repeated", + "type": "string", + "id": 1 + } + } + }, + "Timestamp": { + "fields": { + "seconds": { + "type": "int64", + "id": 1 + }, + "nanos": { + "type": "int32", + "id": 2 + } + } + } + } + }, + "longrunning": { + "options": { + "cc_enable_arenas": true, + "csharp_namespace": "Google.LongRunning", + "go_package": "google.golang.org/genproto/googleapis/longrunning;longrunning", + "java_multiple_files": true, + "java_outer_classname": "OperationsProto", + "java_package": "com.google.longrunning", + "php_namespace": "Google\\LongRunning" + }, + "nested": { + "operationInfo": { + "type": "google.longrunning.OperationInfo", + "id": 1049, + "extend": "google.protobuf.MethodOptions" + }, + "Operations": { + "options": { + "(google.api.default_host)": "longrunning.googleapis.com" + }, + "methods": { + "ListOperations": { + "requestType": "ListOperationsRequest", + "responseType": "ListOperationsResponse", + "options": { + "(google.api.http).get": "/v1/{name=operations}", + "(google.api.method_signature)": "name,filter" + }, + "parsedOptions": [ + { + "(google.api.http)": { + "get": "/v1/{name=operations}" + } + }, + { + "(google.api.method_signature)": "name,filter" + } + ] + }, + "GetOperation": { + "requestType": "GetOperationRequest", + "responseType": "Operation", + "options": { + "(google.api.http).get": "/v1/{name=operations/**}", + "(google.api.method_signature)": "name" + }, + "parsedOptions": [ + { + "(google.api.http)": { + "get": "/v1/{name=operations/**}" + } + }, + { + "(google.api.method_signature)": "name" + } + ] + }, + "DeleteOperation": { + "requestType": "DeleteOperationRequest", + "responseType": "google.protobuf.Empty", + "options": { + "(google.api.http).delete": "/v1/{name=operations/**}", + "(google.api.method_signature)": "name" + }, + "parsedOptions": [ + { + "(google.api.http)": { + "delete": "/v1/{name=operations/**}" + } + }, + { + "(google.api.method_signature)": "name" + } + ] + }, + "CancelOperation": { + "requestType": "CancelOperationRequest", + "responseType": "google.protobuf.Empty", + "options": { + "(google.api.http).post": "/v1/{name=operations/**}:cancel", + "(google.api.http).body": "*", + "(google.api.method_signature)": "name" + }, + "parsedOptions": [ + { + "(google.api.http)": { + "post": "/v1/{name=operations/**}:cancel", + "body": "*" + } + }, + { + "(google.api.method_signature)": "name" + } + ] + }, + "WaitOperation": { + "requestType": "WaitOperationRequest", + "responseType": "Operation" + } + } + }, + "Operation": { + "oneofs": { + "result": { + "oneof": [ + "error", + "response" + ] + } + }, + "fields": { + "name": { + "type": "string", + "id": 1 + }, + "metadata": { + "type": "google.protobuf.Any", + "id": 2 + }, + "done": { + "type": "bool", + "id": 3 + }, + "error": { + "type": "google.rpc.Status", + "id": 4 + }, + "response": { + "type": "google.protobuf.Any", + "id": 5 + } + } + }, + "GetOperationRequest": { + "fields": { + "name": { + "type": "string", + "id": 1 + } + } + }, + "ListOperationsRequest": { + "fields": { + "name": { + "type": "string", + "id": 4 + }, + "filter": { + "type": "string", + "id": 1 + }, + "pageSize": { + "type": "int32", + "id": 2 + }, + "pageToken": { + "type": "string", + "id": 3 + } + } + }, + "ListOperationsResponse": { + "fields": { + "operations": { + "rule": "repeated", + "type": "Operation", + "id": 1 + }, + "nextPageToken": { + "type": "string", + "id": 2 + } + } + }, + "CancelOperationRequest": { + "fields": { + "name": { + "type": "string", + "id": 1 + } + } + }, + "DeleteOperationRequest": { + "fields": { + "name": { + "type": "string", + "id": 1 + } + } + }, + "WaitOperationRequest": { + "fields": { + "name": { + "type": "string", + "id": 1 + }, + "timeout": { + "type": "google.protobuf.Duration", + "id": 2 + } + } + }, + "OperationInfo": { + "fields": { + "responseType": { + "type": "string", + "id": 1 + }, + "metadataType": { + "type": "string", + "id": 2 + } + } + } + } + }, + "rpc": { + "options": { + "cc_enable_arenas": true, + "go_package": "google.golang.org/genproto/googleapis/rpc/status;status", + "java_multiple_files": true, + "java_outer_classname": "StatusProto", + "java_package": "com.google.rpc", + "objc_class_prefix": "RPC" + }, + "nested": { + "Status": { + "fields": { + "code": { + "type": "int32", + "id": 1 + }, + "message": { + "type": "string", + "id": 2 + }, + "details": { + "rule": "repeated", + "type": "google.protobuf.Any", + "id": 3 + } + } + } + } + } + } + } + } +} \ No newline at end of file diff --git a/packages/google-cloud-gkehub/samples/package.json b/packages/google-cloud-gkehub/samples/package.json new file mode 100644 index 00000000000..6ebbc1b84e0 --- /dev/null +++ b/packages/google-cloud-gkehub/samples/package.json @@ -0,0 +1,23 @@ +{ + "name": "nodejs-gke-hub", + "private": true, + "license": "Apache-2.0", + "author": "Google LLC", + "engines": { + "node": ">=10" + }, + "files": [ + "*.js" + ], + "scripts": { + "test": "c8 mocha --timeout 600000 test/*.js" + }, + "dependencies": { + "@google-cloud/gke-hub": "^0.1.0" + }, + "devDependencies": { + "c8": "^7.1.0", + "chai": "^4.2.0", + "mocha": "^8.0.0" + } +} diff --git a/packages/google-cloud-gkehub/samples/quickstart.js b/packages/google-cloud-gkehub/samples/quickstart.js new file mode 100644 index 00000000000..9ea3da2d74b --- /dev/null +++ b/packages/google-cloud-gkehub/samples/quickstart.js @@ -0,0 +1,51 @@ +// 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. +// + +'use strict'; + +async function main() { + // [START nodejs_gke_hub_quickstart] + // Imports the Google Cloud client library + + // remove this line after package is released + // eslint-disable-next-line node/no-missing-require + const {GkeHubMembershipServiceClient} = require('@google-cloud/gke-hub'); + + // TODO(developer): replace with your prefered project ID. + // const projectId = 'my-project' + + // Creates a client + // eslint-disable-next-line no-unused-vars + const client = new {GkeHubMembershipServiceClient}(); + + //TODO(library generator): write the actual function you will be testing + async function doSomething() { + console.log( + 'Developer! Change this code so that it shows how to use the library! See comments below on structure.' + ); + // const [thing] = await client.methodName({ + // }); + // console.info(thing); + } + doSomething(); + // [END nodejs_gke_hub_quickstart] +} + +main(...process.argv.slice(2)).catch(err => { + console.error(err.message); + process.exitCode = 1; +}); +process.on('unhandledRejection', err => { + console.error(err.message); + process.exitCode = 1; +}); diff --git a/packages/google-cloud-gkehub/samples/test/quickstart.js b/packages/google-cloud-gkehub/samples/test/quickstart.js new file mode 100644 index 00000000000..6b2a72a654e --- /dev/null +++ b/packages/google-cloud-gkehub/samples/test/quickstart.js @@ -0,0 +1,50 @@ +// +// 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'; + +const path = require('path'); +const cp = require('child_process'); +const {before, describe, it} = require('mocha'); +// eslint-disable-next-line node/no-missing-require +const {GkeHubMembershipServiceClient} = require('@google-cloud/gke-hub'); +// eslint-disable-next-line no-unused-vars, node/no-missing-require +const {assert} = require('chai'); + +const execSync = cmd => cp.execSync(cmd, {encoding: 'utf-8'}); + +const cwd = path.join(__dirname, '..'); + +const client = new {GkeHubMembershipServiceClient}(); + +describe('Quickstart', () => { + //TODO: remove this if not using the projectId + // eslint-disable-next-line no-unused-vars + let projectId; + + before(async () => { + // eslint-disable-next-line no-unused-vars + projectId = await client.getProjectId(); + }); + + it('should run quickstart', async () => { + //TODO: remove this disability + // eslint-disable-next-line no-unused-vars + const stdout = execSync('node ./quickstart.js', {cwd}); + //assert(stdout, stdout !== null); + }); +}); diff --git a/packages/google-cloud-gkehub/src/index.ts b/packages/google-cloud-gkehub/src/index.ts new file mode 100644 index 00000000000..6b597af9c05 --- /dev/null +++ b/packages/google-cloud-gkehub/src/index.ts @@ -0,0 +1,27 @@ +// 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. +// +// ** This file is automatically generated by synthtool. ** +// ** https://github.com/googleapis/synthtool ** +// ** All changes to this file may be overwritten. ** + +import * as v1beta1 from './v1beta1'; + +const GkeHubMembershipServiceClient = v1beta1.GkeHubMembershipServiceClient; +type GkeHubMembershipServiceClient = v1beta1.GkeHubMembershipServiceClient; + +export {v1beta1, GkeHubMembershipServiceClient}; +export default {v1beta1, GkeHubMembershipServiceClient}; +import * as protos from '../protos/protos'; +export {protos}; diff --git a/packages/google-cloud-gkehub/src/v1beta1/gapic_metadata.json b/packages/google-cloud-gkehub/src/v1beta1/gapic_metadata.json new file mode 100644 index 00000000000..b3c0b22a962 --- /dev/null +++ b/packages/google-cloud-gkehub/src/v1beta1/gapic_metadata.json @@ -0,0 +1,107 @@ +{ + "schema": "1.0", + "comment": "This file maps proto services/RPCs to the corresponding library clients/methods", + "language": "typescript", + "protoPackage": "google.cloud.gkehub.v1beta1", + "libraryPackage": "@google-cloud/gkehub", + "services": { + "GkeHubMembershipService": { + "clients": { + "grpc": { + "libraryClient": "GkeHubMembershipServiceClient", + "rpcs": { + "GetMembership": { + "methods": [ + "getMembership" + ] + }, + "GenerateConnectManifest": { + "methods": [ + "generateConnectManifest" + ] + }, + "ValidateExclusivity": { + "methods": [ + "validateExclusivity" + ] + }, + "GenerateExclusivityManifest": { + "methods": [ + "generateExclusivityManifest" + ] + }, + "CreateMembership": { + "methods": [ + "createMembership" + ] + }, + "DeleteMembership": { + "methods": [ + "deleteMembership" + ] + }, + "UpdateMembership": { + "methods": [ + "updateMembership" + ] + }, + "ListMemberships": { + "methods": [ + "listMemberships", + "listMembershipsStream", + "listMembershipsAsync" + ] + } + } + }, + "grpc-fallback": { + "libraryClient": "GkeHubMembershipServiceClient", + "rpcs": { + "GetMembership": { + "methods": [ + "getMembership" + ] + }, + "GenerateConnectManifest": { + "methods": [ + "generateConnectManifest" + ] + }, + "ValidateExclusivity": { + "methods": [ + "validateExclusivity" + ] + }, + "GenerateExclusivityManifest": { + "methods": [ + "generateExclusivityManifest" + ] + }, + "CreateMembership": { + "methods": [ + "createMembership" + ] + }, + "DeleteMembership": { + "methods": [ + "deleteMembership" + ] + }, + "UpdateMembership": { + "methods": [ + "updateMembership" + ] + }, + "ListMemberships": { + "methods": [ + "listMemberships", + "listMembershipsStream", + "listMembershipsAsync" + ] + } + } + } + } + } + } +} diff --git a/packages/google-cloud-gkehub/src/v1beta1/gke_hub_membership_service_client.ts b/packages/google-cloud-gkehub/src/v1beta1/gke_hub_membership_service_client.ts new file mode 100644 index 00000000000..89b3075bfe0 --- /dev/null +++ b/packages/google-cloud-gkehub/src/v1beta1/gke_hub_membership_service_client.ts @@ -0,0 +1,1622 @@ +// 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 +// +// 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. ** + +/* global window */ +import * as gax from 'google-gax'; +import { + Callback, + CallOptions, + Descriptors, + ClientOptions, + LROperation, + PaginationCallback, + GaxCall, +} from 'google-gax'; +import * as path from 'path'; + +import {Transform} from 'stream'; +import {RequestType} from 'google-gax/build/src/apitypes'; +import * as protos from '../../protos/protos'; +/** + * Client JSON configuration object, loaded from + * `src/v1beta1/gke_hub_membership_service_client_config.json`. + * This file defines retry strategy and timeouts for all API methods in this library. + */ +import * as gapicConfig from './gke_hub_membership_service_client_config.json'; +import {operationsProtos} from 'google-gax'; +const version = require('../../../package.json').version; + +/** + * GKE Hub CRUD API for the Membership resource. + * The Membership service is currently only available in the global location. + * @class + * @memberof v1beta1 + */ +export class GkeHubMembershipServiceClient { + private _terminated = false; + private _opts: ClientOptions; + private _gaxModule: typeof gax | typeof gax.fallback; + private _gaxGrpc: gax.GrpcClient | gax.fallback.GrpcClient; + private _protos: {}; + private _defaults: {[method: string]: gax.CallSettings}; + auth: gax.GoogleAuth; + descriptors: Descriptors = { + page: {}, + stream: {}, + longrunning: {}, + batching: {}, + }; + innerApiCalls: {[name: string]: Function}; + pathTemplates: {[name: string]: gax.PathTemplate}; + operationsClient: gax.OperationsClient; + gkeHubMembershipServiceStub?: Promise<{[name: string]: Function}>; + + /** + * Construct an instance of GkeHubMembershipServiceClient. + * + * @param {object} [options] - The configuration object. + * The options accepted by the constructor are described in detail + * in [this document](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#creating-the-client-instance). + * The common options are: + * @param {object} [options.credentials] - Credentials object. + * @param {string} [options.credentials.client_email] + * @param {string} [options.credentials.private_key] + * @param {string} [options.email] - Account email address. Required when + * using a .pem or .p12 keyFilename. + * @param {string} [options.keyFilename] - Full path to the a .json, .pem, or + * .p12 key downloaded from the Google Developers Console. If you provide + * a path to a JSON file, the projectId option below is not necessary. + * NOTE: .pem and .p12 require you to specify options.email as well. + * @param {number} [options.port] - The port on which to connect to + * the remote host. + * @param {string} [options.projectId] - The project ID from the Google + * Developer's Console, e.g. 'grape-spaceship-123'. We will also check + * the environment variable GCLOUD_PROJECT for your project ID. If your + * app is running in an environment which supports + * {@link https://developers.google.com/identity/protocols/application-default-credentials Application Default Credentials}, + * your project ID will be detected automatically. + * @param {string} [options.apiEndpoint] - The domain name of the + * API remote host. + * @param {gax.ClientConfig} [options.clientConfig] - Client configuration override. + * Follows the structure of {@link gapicConfig}. + * @param {boolean} [options.fallback] - Use HTTP fallback mode. + * In fallback mode, a special browser-compatible transport implementation is used + * instead of gRPC transport. In browser context (if the `window` object is defined) + * the fallback mode is enabled automatically; set `options.fallback` to `false` + * if you need to override this behavior. + */ + constructor(opts?: ClientOptions) { + // Ensure that options include all the required fields. + const staticMembers = this + .constructor as typeof GkeHubMembershipServiceClient; + const servicePath = + opts?.servicePath || opts?.apiEndpoint || staticMembers.servicePath; + const port = opts?.port || staticMembers.port; + const clientConfig = opts?.clientConfig ?? {}; + const fallback = + opts?.fallback ?? + (typeof window !== 'undefined' && typeof window?.fetch === 'function'); + opts = Object.assign({servicePath, port, clientConfig, fallback}, opts); + + // If scopes are unset in options and we're connecting to a non-default endpoint, set scopes just in case. + if (servicePath !== staticMembers.servicePath && !('scopes' in opts)) { + opts['scopes'] = staticMembers.scopes; + } + + // Choose either gRPC or proto-over-HTTP implementation of google-gax. + this._gaxModule = opts.fallback ? gax.fallback : gax; + + // Create a `gaxGrpc` object, with any grpc-specific options sent to the client. + this._gaxGrpc = new this._gaxModule.GrpcClient(opts); + + // Save options to use in initialize() method. + this._opts = opts; + + // Save the auth object to the client, for use by other methods. + this.auth = this._gaxGrpc.auth as gax.GoogleAuth; + + // Set the default scopes in auth client if needed. + if (servicePath === staticMembers.servicePath) { + this.auth.defaultScopes = staticMembers.scopes; + } + + // Determine the client header string. + const clientHeader = [`gax/${this._gaxModule.version}`, `gapic/${version}`]; + if (typeof process !== 'undefined' && 'versions' in process) { + clientHeader.push(`gl-node/${process.versions.node}`); + } else { + clientHeader.push(`gl-web/${this._gaxModule.version}`); + } + if (!opts.fallback) { + clientHeader.push(`grpc/${this._gaxGrpc.grpcVersion}`); + } + if (opts.libName && opts.libVersion) { + clientHeader.push(`${opts.libName}/${opts.libVersion}`); + } + // Load the applicable protos. + // For Node.js, pass the path to JSON proto file. + // For browsers, pass the JSON content. + + const nodejsProtoPath = path.join( + __dirname, + '..', + '..', + 'protos', + 'protos.json' + ); + this._protos = this._gaxGrpc.loadProto( + opts.fallback + ? // eslint-disable-next-line @typescript-eslint/no-var-requires + require('../../protos/protos.json') + : nodejsProtoPath + ); + + // This API contains "path templates"; forward-slash-separated + // identifiers to uniquely identify resources within the API. + // Create useful helper objects for these. + this.pathTemplates = { + membershipPathTemplate: new this._gaxModule.PathTemplate( + 'projects/{project}/locations/{location}/memberships/{membership}' + ), + }; + + // Some of the methods on this service return "paged" results, + // (e.g. 50 results at a time, with tokens to get subsequent + // pages). Denote the keys used for pagination and results. + this.descriptors.page = { + listMemberships: new this._gaxModule.PageDescriptor( + 'pageToken', + 'nextPageToken', + 'resources' + ), + }; + + // This API contains "long-running operations", which return a + // an Operation object that allows for tracking of the operation, + // rather than holding a request open. + const protoFilesRoot = opts.fallback + ? this._gaxModule.protobuf.Root.fromJSON( + // eslint-disable-next-line @typescript-eslint/no-var-requires + require('../../protos/protos.json') + ) + : this._gaxModule.protobuf.loadSync(nodejsProtoPath); + + this.operationsClient = this._gaxModule + .lro({ + auth: this.auth, + grpc: 'grpc' in this._gaxGrpc ? this._gaxGrpc.grpc : undefined, + }) + .operationsClient(opts); + const createMembershipResponse = protoFilesRoot.lookup( + '.google.cloud.gkehub.v1beta1.Membership' + ) as gax.protobuf.Type; + const createMembershipMetadata = protoFilesRoot.lookup( + '.google.cloud.gkehub.v1beta1.OperationMetadata' + ) as gax.protobuf.Type; + const deleteMembershipResponse = protoFilesRoot.lookup( + '.google.protobuf.Empty' + ) as gax.protobuf.Type; + const deleteMembershipMetadata = protoFilesRoot.lookup( + '.google.cloud.gkehub.v1beta1.OperationMetadata' + ) as gax.protobuf.Type; + const updateMembershipResponse = protoFilesRoot.lookup( + '.google.cloud.gkehub.v1beta1.Membership' + ) as gax.protobuf.Type; + const updateMembershipMetadata = protoFilesRoot.lookup( + '.google.cloud.gkehub.v1beta1.OperationMetadata' + ) as gax.protobuf.Type; + + this.descriptors.longrunning = { + createMembership: new this._gaxModule.LongrunningDescriptor( + this.operationsClient, + createMembershipResponse.decode.bind(createMembershipResponse), + createMembershipMetadata.decode.bind(createMembershipMetadata) + ), + deleteMembership: new this._gaxModule.LongrunningDescriptor( + this.operationsClient, + deleteMembershipResponse.decode.bind(deleteMembershipResponse), + deleteMembershipMetadata.decode.bind(deleteMembershipMetadata) + ), + updateMembership: new this._gaxModule.LongrunningDescriptor( + this.operationsClient, + updateMembershipResponse.decode.bind(updateMembershipResponse), + updateMembershipMetadata.decode.bind(updateMembershipMetadata) + ), + }; + + // Put together the default options sent with requests. + this._defaults = this._gaxGrpc.constructSettings( + 'google.cloud.gkehub.v1beta1.GkeHubMembershipService', + gapicConfig as gax.ClientConfig, + opts.clientConfig || {}, + {'x-goog-api-client': clientHeader.join(' ')} + ); + + // Set up a dictionary of "inner API calls"; the core implementation + // of calling the API is handled in `google-gax`, with this code + // merely providing the destination and request information. + this.innerApiCalls = {}; + } + + /** + * Initialize the client. + * Performs asynchronous operations (such as authentication) and prepares the client. + * This function will be called automatically when any class method is called for the + * first time, but if you need to initialize it before calling an actual method, + * feel free to call initialize() directly. + * + * You can await on this method if you want to make sure the client is initialized. + * + * @returns {Promise} A promise that resolves to an authenticated service stub. + */ + initialize() { + // If the client stub promise is already initialized, return immediately. + if (this.gkeHubMembershipServiceStub) { + return this.gkeHubMembershipServiceStub; + } + + // Put together the "service stub" for + // google.cloud.gkehub.v1beta1.GkeHubMembershipService. + this.gkeHubMembershipServiceStub = this._gaxGrpc.createStub( + this._opts.fallback + ? (this._protos as protobuf.Root).lookupService( + 'google.cloud.gkehub.v1beta1.GkeHubMembershipService' + ) + : // eslint-disable-next-line @typescript-eslint/no-explicit-any + (this._protos as any).google.cloud.gkehub.v1beta1 + .GkeHubMembershipService, + this._opts + ) as Promise<{[method: string]: Function}>; + + // Iterate over each of the methods that the service provides + // and create an API call method for each. + const gkeHubMembershipServiceStubMethods = [ + 'listMemberships', + 'getMembership', + 'createMembership', + 'deleteMembership', + 'updateMembership', + 'generateConnectManifest', + 'validateExclusivity', + 'generateExclusivityManifest', + ]; + for (const methodName of gkeHubMembershipServiceStubMethods) { + const callPromise = this.gkeHubMembershipServiceStub.then( + stub => (...args: Array<{}>) => { + if (this._terminated) { + return Promise.reject('The client has already been closed.'); + } + const func = stub[methodName]; + return func.apply(stub, args); + }, + (err: Error | null | undefined) => () => { + throw err; + } + ); + + const descriptor = + this.descriptors.page[methodName] || + this.descriptors.longrunning[methodName] || + undefined; + const apiCall = this._gaxModule.createApiCall( + callPromise, + this._defaults[methodName], + descriptor + ); + + this.innerApiCalls[methodName] = apiCall; + } + + return this.gkeHubMembershipServiceStub; + } + + /** + * The DNS address for this API service. + * @returns {string} The DNS address for this service. + */ + static get servicePath() { + return 'gkehub.googleapis.com'; + } + + /** + * The DNS address for this API service - same as servicePath(), + * exists for compatibility reasons. + * @returns {string} The DNS address for this service. + */ + static get apiEndpoint() { + return 'gkehub.googleapis.com'; + } + + /** + * The port for this API service. + * @returns {number} The default port for this service. + */ + static get port() { + return 443; + } + + /** + * The scopes needed to make gRPC calls for every method defined + * in this service. + * @returns {string[]} List of default scopes. + */ + static get scopes() { + return ['https://www.googleapis.com/auth/cloud-platform']; + } + + getProjectId(): Promise; + getProjectId(callback: Callback): void; + /** + * Return the project ID used by this class. + * @returns {Promise} A promise that resolves to string containing the project ID. + */ + getProjectId( + callback?: Callback + ): Promise | void { + if (callback) { + this.auth.getProjectId(callback); + return; + } + return this.auth.getProjectId(); + } + + // ------------------- + // -- Service calls -- + // ------------------- + getMembership( + request: protos.google.cloud.gkehub.v1beta1.IGetMembershipRequest, + options?: CallOptions + ): Promise< + [ + protos.google.cloud.gkehub.v1beta1.IMembership, + protos.google.cloud.gkehub.v1beta1.IGetMembershipRequest | undefined, + {} | undefined + ] + >; + getMembership( + request: protos.google.cloud.gkehub.v1beta1.IGetMembershipRequest, + options: CallOptions, + callback: Callback< + protos.google.cloud.gkehub.v1beta1.IMembership, + | protos.google.cloud.gkehub.v1beta1.IGetMembershipRequest + | null + | undefined, + {} | null | undefined + > + ): void; + getMembership( + request: protos.google.cloud.gkehub.v1beta1.IGetMembershipRequest, + callback: Callback< + protos.google.cloud.gkehub.v1beta1.IMembership, + | protos.google.cloud.gkehub.v1beta1.IGetMembershipRequest + | null + | undefined, + {} | null | undefined + > + ): void; + /** + * Gets details of a single Membership. + * + * @param {Object} request + * The request object that will be sent. + * @param {string} request.name + * Required. The Membership resource name in the format: + * `projects/[project_id]/locations/global/memberships/[membership_id]` + * @param {object} [options] + * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. + * @returns {Promise} - The promise which resolves to an array. + * The first element of the array is an object representing [Membership]{@link google.cloud.gkehub.v1beta1.Membership}. + * Please see the + * [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods) + * for more details and examples. + * @example + * const [response] = await client.getMembership(request); + */ + getMembership( + request: protos.google.cloud.gkehub.v1beta1.IGetMembershipRequest, + optionsOrCallback?: + | CallOptions + | Callback< + protos.google.cloud.gkehub.v1beta1.IMembership, + | protos.google.cloud.gkehub.v1beta1.IGetMembershipRequest + | null + | undefined, + {} | null | undefined + >, + callback?: Callback< + protos.google.cloud.gkehub.v1beta1.IMembership, + | protos.google.cloud.gkehub.v1beta1.IGetMembershipRequest + | null + | undefined, + {} | null | undefined + > + ): Promise< + [ + protos.google.cloud.gkehub.v1beta1.IMembership, + protos.google.cloud.gkehub.v1beta1.IGetMembershipRequest | undefined, + {} | undefined + ] + > | void { + request = request || {}; + let options: CallOptions; + if (typeof optionsOrCallback === 'function' && callback === undefined) { + callback = optionsOrCallback; + options = {}; + } else { + options = optionsOrCallback as CallOptions; + } + options = options || {}; + options.otherArgs = options.otherArgs || {}; + options.otherArgs.headers = options.otherArgs.headers || {}; + options.otherArgs.headers[ + 'x-goog-request-params' + ] = gax.routingHeader.fromParams({ + name: request.name || '', + }); + this.initialize(); + return this.innerApiCalls.getMembership(request, options, callback); + } + generateConnectManifest( + request: protos.google.cloud.gkehub.v1beta1.IGenerateConnectManifestRequest, + options?: CallOptions + ): Promise< + [ + protos.google.cloud.gkehub.v1beta1.IGenerateConnectManifestResponse, + ( + | protos.google.cloud.gkehub.v1beta1.IGenerateConnectManifestRequest + | undefined + ), + {} | undefined + ] + >; + generateConnectManifest( + request: protos.google.cloud.gkehub.v1beta1.IGenerateConnectManifestRequest, + options: CallOptions, + callback: Callback< + protos.google.cloud.gkehub.v1beta1.IGenerateConnectManifestResponse, + | protos.google.cloud.gkehub.v1beta1.IGenerateConnectManifestRequest + | null + | undefined, + {} | null | undefined + > + ): void; + generateConnectManifest( + request: protos.google.cloud.gkehub.v1beta1.IGenerateConnectManifestRequest, + callback: Callback< + protos.google.cloud.gkehub.v1beta1.IGenerateConnectManifestResponse, + | protos.google.cloud.gkehub.v1beta1.IGenerateConnectManifestRequest + | null + | undefined, + {} | null | undefined + > + ): void; + /** + * Generate the manifest for deployment of GKE connect agent. + * + * @param {Object} request + * The request object that will be sent. + * @param {string} request.name + * Required. The membership resource the connect agent is associated with. + * `projects/[project_id]/locations/global/memberships/[membership_id]`. + * @param {google.cloud.gkehub.v1beta1.ConnectAgent} [request.connectAgent] + * Optional. The connect agent to generate manifest for. + * @param {string} [request.version] + * Optional. The version to use for connect agent. + * If empty, the current default version will be used. + * @param {boolean} [request.isUpgrade] + * Optional. If true, generate the resources for upgrade only. Some resources + * (e.g. secrets) generated for installation will be excluded. + * @param {string} [request.registry] + * Optional. The registry to fetch connect agent image; default to + * gcr.io/gkeconnect. + * @param {Buffer} [request.imagePullSecretContent] + * Optional. The image pull secret content for the registry, if not public. + * @param {object} [options] + * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. + * @returns {Promise} - The promise which resolves to an array. + * The first element of the array is an object representing [GenerateConnectManifestResponse]{@link google.cloud.gkehub.v1beta1.GenerateConnectManifestResponse}. + * Please see the + * [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods) + * for more details and examples. + * @example + * const [response] = await client.generateConnectManifest(request); + */ + generateConnectManifest( + request: protos.google.cloud.gkehub.v1beta1.IGenerateConnectManifestRequest, + optionsOrCallback?: + | CallOptions + | Callback< + protos.google.cloud.gkehub.v1beta1.IGenerateConnectManifestResponse, + | protos.google.cloud.gkehub.v1beta1.IGenerateConnectManifestRequest + | null + | undefined, + {} | null | undefined + >, + callback?: Callback< + protos.google.cloud.gkehub.v1beta1.IGenerateConnectManifestResponse, + | protos.google.cloud.gkehub.v1beta1.IGenerateConnectManifestRequest + | null + | undefined, + {} | null | undefined + > + ): Promise< + [ + protos.google.cloud.gkehub.v1beta1.IGenerateConnectManifestResponse, + ( + | protos.google.cloud.gkehub.v1beta1.IGenerateConnectManifestRequest + | undefined + ), + {} | undefined + ] + > | void { + request = request || {}; + let options: CallOptions; + if (typeof optionsOrCallback === 'function' && callback === undefined) { + callback = optionsOrCallback; + options = {}; + } else { + options = optionsOrCallback as CallOptions; + } + options = options || {}; + options.otherArgs = options.otherArgs || {}; + options.otherArgs.headers = options.otherArgs.headers || {}; + options.otherArgs.headers[ + 'x-goog-request-params' + ] = gax.routingHeader.fromParams({ + name: request.name || '', + }); + this.initialize(); + return this.innerApiCalls.generateConnectManifest( + request, + options, + callback + ); + } + validateExclusivity( + request: protos.google.cloud.gkehub.v1beta1.IValidateExclusivityRequest, + options?: CallOptions + ): Promise< + [ + protos.google.cloud.gkehub.v1beta1.IValidateExclusivityResponse, + ( + | protos.google.cloud.gkehub.v1beta1.IValidateExclusivityRequest + | undefined + ), + {} | undefined + ] + >; + validateExclusivity( + request: protos.google.cloud.gkehub.v1beta1.IValidateExclusivityRequest, + options: CallOptions, + callback: Callback< + protos.google.cloud.gkehub.v1beta1.IValidateExclusivityResponse, + | protos.google.cloud.gkehub.v1beta1.IValidateExclusivityRequest + | null + | undefined, + {} | null | undefined + > + ): void; + validateExclusivity( + request: protos.google.cloud.gkehub.v1beta1.IValidateExclusivityRequest, + callback: Callback< + protos.google.cloud.gkehub.v1beta1.IValidateExclusivityResponse, + | protos.google.cloud.gkehub.v1beta1.IValidateExclusivityRequest + | null + | undefined, + {} | null | undefined + > + ): void; + /** + * ValidateExclusivity validates the state of exclusivity in the cluster. + * The validation does not depend on an existing Hub membership resource. + * + * @param {Object} request + * The request object that will be sent. + * @param {string} request.parent + * Required. The desired parent collection of the membership to be created in the + * format: + * `projects/[project_id]/locations/global`. + * @param {string} [request.crManifest] + * Optional. The YAML of the membership CR in the cluster. Empty if the membership + * CR does not exist. + * @param {string} request.intendedMembership + * Required. The membership name under the "name" that could be created if the + * validation succeed. The method only does validation in anticipation + * of a CreateMembership call. + * @param {object} [options] + * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. + * @returns {Promise} - The promise which resolves to an array. + * The first element of the array is an object representing [ValidateExclusivityResponse]{@link google.cloud.gkehub.v1beta1.ValidateExclusivityResponse}. + * Please see the + * [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods) + * for more details and examples. + * @example + * const [response] = await client.validateExclusivity(request); + */ + validateExclusivity( + request: protos.google.cloud.gkehub.v1beta1.IValidateExclusivityRequest, + optionsOrCallback?: + | CallOptions + | Callback< + protos.google.cloud.gkehub.v1beta1.IValidateExclusivityResponse, + | protos.google.cloud.gkehub.v1beta1.IValidateExclusivityRequest + | null + | undefined, + {} | null | undefined + >, + callback?: Callback< + protos.google.cloud.gkehub.v1beta1.IValidateExclusivityResponse, + | protos.google.cloud.gkehub.v1beta1.IValidateExclusivityRequest + | null + | undefined, + {} | null | undefined + > + ): Promise< + [ + protos.google.cloud.gkehub.v1beta1.IValidateExclusivityResponse, + ( + | protos.google.cloud.gkehub.v1beta1.IValidateExclusivityRequest + | undefined + ), + {} | undefined + ] + > | void { + request = request || {}; + let options: CallOptions; + if (typeof optionsOrCallback === 'function' && callback === undefined) { + callback = optionsOrCallback; + options = {}; + } else { + options = optionsOrCallback as CallOptions; + } + options = options || {}; + options.otherArgs = options.otherArgs || {}; + options.otherArgs.headers = options.otherArgs.headers || {}; + options.otherArgs.headers[ + 'x-goog-request-params' + ] = gax.routingHeader.fromParams({ + parent: request.parent || '', + }); + this.initialize(); + return this.innerApiCalls.validateExclusivity(request, options, callback); + } + generateExclusivityManifest( + request: protos.google.cloud.gkehub.v1beta1.IGenerateExclusivityManifestRequest, + options?: CallOptions + ): Promise< + [ + protos.google.cloud.gkehub.v1beta1.IGenerateExclusivityManifestResponse, + ( + | protos.google.cloud.gkehub.v1beta1.IGenerateExclusivityManifestRequest + | undefined + ), + {} | undefined + ] + >; + generateExclusivityManifest( + request: protos.google.cloud.gkehub.v1beta1.IGenerateExclusivityManifestRequest, + options: CallOptions, + callback: Callback< + protos.google.cloud.gkehub.v1beta1.IGenerateExclusivityManifestResponse, + | protos.google.cloud.gkehub.v1beta1.IGenerateExclusivityManifestRequest + | null + | undefined, + {} | null | undefined + > + ): void; + generateExclusivityManifest( + request: protos.google.cloud.gkehub.v1beta1.IGenerateExclusivityManifestRequest, + callback: Callback< + protos.google.cloud.gkehub.v1beta1.IGenerateExclusivityManifestResponse, + | protos.google.cloud.gkehub.v1beta1.IGenerateExclusivityManifestRequest + | null + | undefined, + {} | null | undefined + > + ): void; + /** + * GenerateExclusivityManifest generates the manifests to update the + * exclusivity artifacts in the cluster if needed. + * Exclusivity artifacts include the membership customer resource definition + * (CRD) and the singleton membership custom resource (CR). + * Combined with ValidateExclusivity, exclusivity + * artifacts guarantee that a Kubernetes cluster is only registered to + * a single GKE Hub. + * The membership CRD is versioned, and may require conversion when the GKE + * Hub API server begins serving a newer version of the CRD and + * corresponding CR. The response will be the converted CRD and CR if there + * are any differences between the versions. + * + * @param {Object} request + * The request object that will be sent. + * @param {string} request.name + * Required. The membership the cluster corresponds to in the format: + * `projects/[project_id]/locations/global/memberships/[membership_id]`. + * @param {string} [request.crdManifest] + * Optional. The YAML manifest of the membership CRD retrieved by + * `kubectl get customresourcedefinitions membership`. + * Leave empty if the resource does not exist. + * @param {string} [request.crManifest] + * Optional. The YAML manifest of the membership CR retrieved by + * `kubectl get memberships membership`. + * Leave empty if the resource does not exist. + * @param {object} [options] + * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. + * @returns {Promise} - The promise which resolves to an array. + * The first element of the array is an object representing [GenerateExclusivityManifestResponse]{@link google.cloud.gkehub.v1beta1.GenerateExclusivityManifestResponse}. + * Please see the + * [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods) + * for more details and examples. + * @example + * const [response] = await client.generateExclusivityManifest(request); + */ + generateExclusivityManifest( + request: protos.google.cloud.gkehub.v1beta1.IGenerateExclusivityManifestRequest, + optionsOrCallback?: + | CallOptions + | Callback< + protos.google.cloud.gkehub.v1beta1.IGenerateExclusivityManifestResponse, + | protos.google.cloud.gkehub.v1beta1.IGenerateExclusivityManifestRequest + | null + | undefined, + {} | null | undefined + >, + callback?: Callback< + protos.google.cloud.gkehub.v1beta1.IGenerateExclusivityManifestResponse, + | protos.google.cloud.gkehub.v1beta1.IGenerateExclusivityManifestRequest + | null + | undefined, + {} | null | undefined + > + ): Promise< + [ + protos.google.cloud.gkehub.v1beta1.IGenerateExclusivityManifestResponse, + ( + | protos.google.cloud.gkehub.v1beta1.IGenerateExclusivityManifestRequest + | undefined + ), + {} | undefined + ] + > | void { + request = request || {}; + let options: CallOptions; + if (typeof optionsOrCallback === 'function' && callback === undefined) { + callback = optionsOrCallback; + options = {}; + } else { + options = optionsOrCallback as CallOptions; + } + options = options || {}; + options.otherArgs = options.otherArgs || {}; + options.otherArgs.headers = options.otherArgs.headers || {}; + options.otherArgs.headers[ + 'x-goog-request-params' + ] = gax.routingHeader.fromParams({ + name: request.name || '', + }); + this.initialize(); + return this.innerApiCalls.generateExclusivityManifest( + request, + options, + callback + ); + } + + createMembership( + request: protos.google.cloud.gkehub.v1beta1.ICreateMembershipRequest, + options?: CallOptions + ): Promise< + [ + LROperation< + protos.google.cloud.gkehub.v1beta1.IMembership, + protos.google.cloud.gkehub.v1beta1.IOperationMetadata + >, + protos.google.longrunning.IOperation | undefined, + {} | undefined + ] + >; + createMembership( + request: protos.google.cloud.gkehub.v1beta1.ICreateMembershipRequest, + options: CallOptions, + callback: Callback< + LROperation< + protos.google.cloud.gkehub.v1beta1.IMembership, + protos.google.cloud.gkehub.v1beta1.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + > + ): void; + createMembership( + request: protos.google.cloud.gkehub.v1beta1.ICreateMembershipRequest, + callback: Callback< + LROperation< + protos.google.cloud.gkehub.v1beta1.IMembership, + protos.google.cloud.gkehub.v1beta1.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + > + ): void; + /** + * Adds a new Membership. + * + * @param {Object} request + * The request object that will be sent. + * @param {string} request.parent + * Required. The parent in whose context the membership is created. The parent value is + * in the format: `projects/[project_id]/locations/global`. + * @param {string} request.membershipId + * Required. Client chosen ID for the membership. The ID must be a valid RFC 1123 + * compliant DNS label. In particular, the ID must be: + * 1. At most 63 characters in length + * 2. It must consist of lower case alphanumeric characters or `-` + * 3. It must start and end with an alphanumeric character + * I.e. ID must match the regex: `[a-z0-9]([-a-z0-9]*[a-z0-9])?` with at most + * 63 characters. + * @param {google.cloud.gkehub.v1beta1.Membership} request.resource + * Required. The resource to add. + * @param {object} [options] + * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. + * @returns {Promise} - The promise which resolves to an array. + * The first element of the array is an object representing + * a long running operation. Its `promise()` method returns a promise + * you can `await` for. + * Please see the + * [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations) + * for more details and examples. + * @example + * const [operation] = await client.createMembership(request); + * const [response] = await operation.promise(); + */ + createMembership( + request: protos.google.cloud.gkehub.v1beta1.ICreateMembershipRequest, + optionsOrCallback?: + | CallOptions + | Callback< + LROperation< + protos.google.cloud.gkehub.v1beta1.IMembership, + protos.google.cloud.gkehub.v1beta1.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + >, + callback?: Callback< + LROperation< + protos.google.cloud.gkehub.v1beta1.IMembership, + protos.google.cloud.gkehub.v1beta1.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + > + ): Promise< + [ + LROperation< + protos.google.cloud.gkehub.v1beta1.IMembership, + protos.google.cloud.gkehub.v1beta1.IOperationMetadata + >, + protos.google.longrunning.IOperation | undefined, + {} | undefined + ] + > | void { + request = request || {}; + let options: CallOptions; + if (typeof optionsOrCallback === 'function' && callback === undefined) { + callback = optionsOrCallback; + options = {}; + } else { + options = optionsOrCallback as CallOptions; + } + options = options || {}; + options.otherArgs = options.otherArgs || {}; + options.otherArgs.headers = options.otherArgs.headers || {}; + options.otherArgs.headers[ + 'x-goog-request-params' + ] = gax.routingHeader.fromParams({ + parent: request.parent || '', + }); + this.initialize(); + return this.innerApiCalls.createMembership(request, options, callback); + } + /** + * Check the status of the long running operation returned by `createMembership()`. + * @param {String} name + * The operation name that will be passed. + * @returns {Promise} - The promise which resolves to an object. + * The decoded operation object has result and metadata field to get information from. + * Please see the + * [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations) + * for more details and examples. + * @example + * const decodedOperation = await checkCreateMembershipProgress(name); + * console.log(decodedOperation.result); + * console.log(decodedOperation.done); + * console.log(decodedOperation.metadata); + */ + async checkCreateMembershipProgress( + name: string + ): Promise< + LROperation< + protos.google.cloud.gkehub.v1beta1.Membership, + protos.google.cloud.gkehub.v1beta1.OperationMetadata + > + > { + const request = new operationsProtos.google.longrunning.GetOperationRequest( + {name} + ); + const [operation] = await this.operationsClient.getOperation(request); + const decodeOperation = new gax.Operation( + operation, + this.descriptors.longrunning.createMembership, + gax.createDefaultBackoffSettings() + ); + return decodeOperation as LROperation< + protos.google.cloud.gkehub.v1beta1.Membership, + protos.google.cloud.gkehub.v1beta1.OperationMetadata + >; + } + deleteMembership( + request: protos.google.cloud.gkehub.v1beta1.IDeleteMembershipRequest, + options?: CallOptions + ): Promise< + [ + LROperation< + protos.google.protobuf.IEmpty, + protos.google.cloud.gkehub.v1beta1.IOperationMetadata + >, + protos.google.longrunning.IOperation | undefined, + {} | undefined + ] + >; + deleteMembership( + request: protos.google.cloud.gkehub.v1beta1.IDeleteMembershipRequest, + options: CallOptions, + callback: Callback< + LROperation< + protos.google.protobuf.IEmpty, + protos.google.cloud.gkehub.v1beta1.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + > + ): void; + deleteMembership( + request: protos.google.cloud.gkehub.v1beta1.IDeleteMembershipRequest, + callback: Callback< + LROperation< + protos.google.protobuf.IEmpty, + protos.google.cloud.gkehub.v1beta1.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + > + ): void; + /** + * Removes a single Membership. + * + * @param {Object} request + * The request object that will be sent. + * @param {string} request.name + * Required. The membership resource name in the format: + * `projects/[project_id]/locations/global/memberships/[membership_id]` + * @param {object} [options] + * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. + * @returns {Promise} - The promise which resolves to an array. + * The first element of the array is an object representing + * a long running operation. Its `promise()` method returns a promise + * you can `await` for. + * Please see the + * [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations) + * for more details and examples. + * @example + * const [operation] = await client.deleteMembership(request); + * const [response] = await operation.promise(); + */ + deleteMembership( + request: protos.google.cloud.gkehub.v1beta1.IDeleteMembershipRequest, + optionsOrCallback?: + | CallOptions + | Callback< + LROperation< + protos.google.protobuf.IEmpty, + protos.google.cloud.gkehub.v1beta1.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + >, + callback?: Callback< + LROperation< + protos.google.protobuf.IEmpty, + protos.google.cloud.gkehub.v1beta1.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + > + ): Promise< + [ + LROperation< + protos.google.protobuf.IEmpty, + protos.google.cloud.gkehub.v1beta1.IOperationMetadata + >, + protos.google.longrunning.IOperation | undefined, + {} | undefined + ] + > | void { + request = request || {}; + let options: CallOptions; + if (typeof optionsOrCallback === 'function' && callback === undefined) { + callback = optionsOrCallback; + options = {}; + } else { + options = optionsOrCallback as CallOptions; + } + options = options || {}; + options.otherArgs = options.otherArgs || {}; + options.otherArgs.headers = options.otherArgs.headers || {}; + options.otherArgs.headers[ + 'x-goog-request-params' + ] = gax.routingHeader.fromParams({ + name: request.name || '', + }); + this.initialize(); + return this.innerApiCalls.deleteMembership(request, options, callback); + } + /** + * Check the status of the long running operation returned by `deleteMembership()`. + * @param {String} name + * The operation name that will be passed. + * @returns {Promise} - The promise which resolves to an object. + * The decoded operation object has result and metadata field to get information from. + * Please see the + * [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations) + * for more details and examples. + * @example + * const decodedOperation = await checkDeleteMembershipProgress(name); + * console.log(decodedOperation.result); + * console.log(decodedOperation.done); + * console.log(decodedOperation.metadata); + */ + async checkDeleteMembershipProgress( + name: string + ): Promise< + LROperation< + protos.google.protobuf.Empty, + protos.google.cloud.gkehub.v1beta1.OperationMetadata + > + > { + const request = new operationsProtos.google.longrunning.GetOperationRequest( + {name} + ); + const [operation] = await this.operationsClient.getOperation(request); + const decodeOperation = new gax.Operation( + operation, + this.descriptors.longrunning.deleteMembership, + gax.createDefaultBackoffSettings() + ); + return decodeOperation as LROperation< + protos.google.protobuf.Empty, + protos.google.cloud.gkehub.v1beta1.OperationMetadata + >; + } + updateMembership( + request: protos.google.cloud.gkehub.v1beta1.IUpdateMembershipRequest, + options?: CallOptions + ): Promise< + [ + LROperation< + protos.google.cloud.gkehub.v1beta1.IMembership, + protos.google.cloud.gkehub.v1beta1.IOperationMetadata + >, + protos.google.longrunning.IOperation | undefined, + {} | undefined + ] + >; + updateMembership( + request: protos.google.cloud.gkehub.v1beta1.IUpdateMembershipRequest, + options: CallOptions, + callback: Callback< + LROperation< + protos.google.cloud.gkehub.v1beta1.IMembership, + protos.google.cloud.gkehub.v1beta1.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + > + ): void; + updateMembership( + request: protos.google.cloud.gkehub.v1beta1.IUpdateMembershipRequest, + callback: Callback< + LROperation< + protos.google.cloud.gkehub.v1beta1.IMembership, + protos.google.cloud.gkehub.v1beta1.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + > + ): void; + /** + * Updates an existing Membership. + * + * @param {Object} request + * The request object that will be sent. + * @param {string} request.name + * Required. The membership resource name in the format: + * `projects/[project_id]/locations/global/memberships/[membership_id]` + * @param {google.protobuf.FieldMask} request.updateMask + * Required. Mask of fields to update. At least one field path must be specified in this + * mask. + * @param {google.cloud.gkehub.v1beta1.Membership} request.resource + * Required. Only fields specified in update_mask are updated. + * If you specify a field in the update_mask but don't specify its value here + * that field will be deleted. + * If you are updating a map field, set the value of a key to null or empty + * string to delete the key from the map. It's not possible to update a key's + * value to the empty string. + * @param {object} [options] + * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. + * @returns {Promise} - The promise which resolves to an array. + * The first element of the array is an object representing + * a long running operation. Its `promise()` method returns a promise + * you can `await` for. + * Please see the + * [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations) + * for more details and examples. + * @example + * const [operation] = await client.updateMembership(request); + * const [response] = await operation.promise(); + */ + updateMembership( + request: protos.google.cloud.gkehub.v1beta1.IUpdateMembershipRequest, + optionsOrCallback?: + | CallOptions + | Callback< + LROperation< + protos.google.cloud.gkehub.v1beta1.IMembership, + protos.google.cloud.gkehub.v1beta1.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + >, + callback?: Callback< + LROperation< + protos.google.cloud.gkehub.v1beta1.IMembership, + protos.google.cloud.gkehub.v1beta1.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + > + ): Promise< + [ + LROperation< + protos.google.cloud.gkehub.v1beta1.IMembership, + protos.google.cloud.gkehub.v1beta1.IOperationMetadata + >, + protos.google.longrunning.IOperation | undefined, + {} | undefined + ] + > | void { + request = request || {}; + let options: CallOptions; + if (typeof optionsOrCallback === 'function' && callback === undefined) { + callback = optionsOrCallback; + options = {}; + } else { + options = optionsOrCallback as CallOptions; + } + options = options || {}; + options.otherArgs = options.otherArgs || {}; + options.otherArgs.headers = options.otherArgs.headers || {}; + options.otherArgs.headers[ + 'x-goog-request-params' + ] = gax.routingHeader.fromParams({ + name: request.name || '', + }); + this.initialize(); + return this.innerApiCalls.updateMembership(request, options, callback); + } + /** + * Check the status of the long running operation returned by `updateMembership()`. + * @param {String} name + * The operation name that will be passed. + * @returns {Promise} - The promise which resolves to an object. + * The decoded operation object has result and metadata field to get information from. + * Please see the + * [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations) + * for more details and examples. + * @example + * const decodedOperation = await checkUpdateMembershipProgress(name); + * console.log(decodedOperation.result); + * console.log(decodedOperation.done); + * console.log(decodedOperation.metadata); + */ + async checkUpdateMembershipProgress( + name: string + ): Promise< + LROperation< + protos.google.cloud.gkehub.v1beta1.Membership, + protos.google.cloud.gkehub.v1beta1.OperationMetadata + > + > { + const request = new operationsProtos.google.longrunning.GetOperationRequest( + {name} + ); + const [operation] = await this.operationsClient.getOperation(request); + const decodeOperation = new gax.Operation( + operation, + this.descriptors.longrunning.updateMembership, + gax.createDefaultBackoffSettings() + ); + return decodeOperation as LROperation< + protos.google.cloud.gkehub.v1beta1.Membership, + protos.google.cloud.gkehub.v1beta1.OperationMetadata + >; + } + listMemberships( + request: protos.google.cloud.gkehub.v1beta1.IListMembershipsRequest, + options?: CallOptions + ): Promise< + [ + protos.google.cloud.gkehub.v1beta1.IMembership[], + protos.google.cloud.gkehub.v1beta1.IListMembershipsRequest | null, + protos.google.cloud.gkehub.v1beta1.IListMembershipsResponse + ] + >; + listMemberships( + request: protos.google.cloud.gkehub.v1beta1.IListMembershipsRequest, + options: CallOptions, + callback: PaginationCallback< + protos.google.cloud.gkehub.v1beta1.IListMembershipsRequest, + | protos.google.cloud.gkehub.v1beta1.IListMembershipsResponse + | null + | undefined, + protos.google.cloud.gkehub.v1beta1.IMembership + > + ): void; + listMemberships( + request: protos.google.cloud.gkehub.v1beta1.IListMembershipsRequest, + callback: PaginationCallback< + protos.google.cloud.gkehub.v1beta1.IListMembershipsRequest, + | protos.google.cloud.gkehub.v1beta1.IListMembershipsResponse + | null + | undefined, + protos.google.cloud.gkehub.v1beta1.IMembership + > + ): void; + /** + * Lists Memberships in a given project and location. + * + * @param {Object} request + * The request object that will be sent. + * @param {string} request.parent + * Required. The parent in whose context the memberships are listed. The parent value + * is in the format: `projects/[project_id]/locations/global`. + * @param {number} [request.pageSize] + * Optional. When requesting a 'page' of resources, `page_size` specifies number of + * resources to return. If unspecified or set to 0, all resources will + * be returned. + * @param {string} [request.pageToken] + * Optional. Token returned by previous call to `ListMemberships` which + * specifies the position in the list from where to continue listing the + * resources. + * @param {string} [request.filter] + * Optional. Lists the Memberships that match the filter expression. A filter expression + * filters the resources listed in the response. The expression must be of + * the form ` ` where operators: `<`, `>`, `<=`, + * `>=`, + * `!=`, `=`, `:` are supported (colon `:` represents a HAS operator which is + * roughly synonymous with equality). can refer to a proto or JSON + * field, or a synthetic field. Field names can be camelCase or snake_case. + * + * Examples: + * - Filter by name: + * name = "projects/foo-proj/locations/global/membership/bar + * + * - Filter by labels: + * - Resources that have a key called `foo` + * labels.foo:* + * - Resources that have a key called `foo` whose value is `bar` + * labels.foo = bar + * + * - Filter by state: + * - Members in CREATING state. + * state = CREATING + * @param {string} [request.orderBy] + * Optional. Field to use to sort the list. + * @param {object} [options] + * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. + * @returns {Promise} - The promise which resolves to an array. + * The first element of the array is Array of [Membership]{@link google.cloud.gkehub.v1beta1.Membership}. + * The client library will perform auto-pagination by default: it will call the API as many + * times as needed and will merge results from all the pages into this array. + * Note that it can affect your quota. + * We recommend using `listMembershipsAsync()` + * method described below for async iteration which you can stop as needed. + * Please see the + * [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#auto-pagination) + * for more details and examples. + */ + listMemberships( + request: protos.google.cloud.gkehub.v1beta1.IListMembershipsRequest, + optionsOrCallback?: + | CallOptions + | PaginationCallback< + protos.google.cloud.gkehub.v1beta1.IListMembershipsRequest, + | protos.google.cloud.gkehub.v1beta1.IListMembershipsResponse + | null + | undefined, + protos.google.cloud.gkehub.v1beta1.IMembership + >, + callback?: PaginationCallback< + protos.google.cloud.gkehub.v1beta1.IListMembershipsRequest, + | protos.google.cloud.gkehub.v1beta1.IListMembershipsResponse + | null + | undefined, + protos.google.cloud.gkehub.v1beta1.IMembership + > + ): Promise< + [ + protos.google.cloud.gkehub.v1beta1.IMembership[], + protos.google.cloud.gkehub.v1beta1.IListMembershipsRequest | null, + protos.google.cloud.gkehub.v1beta1.IListMembershipsResponse + ] + > | void { + request = request || {}; + let options: CallOptions; + if (typeof optionsOrCallback === 'function' && callback === undefined) { + callback = optionsOrCallback; + options = {}; + } else { + options = optionsOrCallback as CallOptions; + } + options = options || {}; + options.otherArgs = options.otherArgs || {}; + options.otherArgs.headers = options.otherArgs.headers || {}; + options.otherArgs.headers[ + 'x-goog-request-params' + ] = gax.routingHeader.fromParams({ + parent: request.parent || '', + }); + this.initialize(); + return this.innerApiCalls.listMemberships(request, options, callback); + } + + /** + * Equivalent to `method.name.toCamelCase()`, but returns a NodeJS Stream object. + * @param {Object} request + * The request object that will be sent. + * @param {string} request.parent + * Required. The parent in whose context the memberships are listed. The parent value + * is in the format: `projects/[project_id]/locations/global`. + * @param {number} [request.pageSize] + * Optional. When requesting a 'page' of resources, `page_size` specifies number of + * resources to return. If unspecified or set to 0, all resources will + * be returned. + * @param {string} [request.pageToken] + * Optional. Token returned by previous call to `ListMemberships` which + * specifies the position in the list from where to continue listing the + * resources. + * @param {string} [request.filter] + * Optional. Lists the Memberships that match the filter expression. A filter expression + * filters the resources listed in the response. The expression must be of + * the form ` ` where operators: `<`, `>`, `<=`, + * `>=`, + * `!=`, `=`, `:` are supported (colon `:` represents a HAS operator which is + * roughly synonymous with equality). can refer to a proto or JSON + * field, or a synthetic field. Field names can be camelCase or snake_case. + * + * Examples: + * - Filter by name: + * name = "projects/foo-proj/locations/global/membership/bar + * + * - Filter by labels: + * - Resources that have a key called `foo` + * labels.foo:* + * - Resources that have a key called `foo` whose value is `bar` + * labels.foo = bar + * + * - Filter by state: + * - Members in CREATING state. + * state = CREATING + * @param {string} [request.orderBy] + * Optional. Field to use to sort the list. + * @param {object} [options] + * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. + * @returns {Stream} + * An object stream which emits an object representing [Membership]{@link google.cloud.gkehub.v1beta1.Membership} on 'data' event. + * The client library will perform auto-pagination by default: it will call the API as many + * times as needed. Note that it can affect your quota. + * We recommend using `listMembershipsAsync()` + * method described below for async iteration which you can stop as needed. + * Please see the + * [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#auto-pagination) + * for more details and examples. + */ + listMembershipsStream( + request?: protos.google.cloud.gkehub.v1beta1.IListMembershipsRequest, + options?: CallOptions + ): Transform { + request = request || {}; + options = options || {}; + options.otherArgs = options.otherArgs || {}; + options.otherArgs.headers = options.otherArgs.headers || {}; + options.otherArgs.headers[ + 'x-goog-request-params' + ] = gax.routingHeader.fromParams({ + parent: request.parent || '', + }); + const callSettings = new gax.CallSettings(options); + this.initialize(); + return this.descriptors.page.listMemberships.createStream( + this.innerApiCalls.listMemberships as gax.GaxCall, + request, + callSettings + ); + } + + /** + * Equivalent to `listMemberships`, but returns an iterable object. + * + * `for`-`await`-`of` syntax is used with the iterable to get response elements on-demand. + * @param {Object} request + * The request object that will be sent. + * @param {string} request.parent + * Required. The parent in whose context the memberships are listed. The parent value + * is in the format: `projects/[project_id]/locations/global`. + * @param {number} [request.pageSize] + * Optional. When requesting a 'page' of resources, `page_size` specifies number of + * resources to return. If unspecified or set to 0, all resources will + * be returned. + * @param {string} [request.pageToken] + * Optional. Token returned by previous call to `ListMemberships` which + * specifies the position in the list from where to continue listing the + * resources. + * @param {string} [request.filter] + * Optional. Lists the Memberships that match the filter expression. A filter expression + * filters the resources listed in the response. The expression must be of + * the form ` ` where operators: `<`, `>`, `<=`, + * `>=`, + * `!=`, `=`, `:` are supported (colon `:` represents a HAS operator which is + * roughly synonymous with equality). can refer to a proto or JSON + * field, or a synthetic field. Field names can be camelCase or snake_case. + * + * Examples: + * - Filter by name: + * name = "projects/foo-proj/locations/global/membership/bar + * + * - Filter by labels: + * - Resources that have a key called `foo` + * labels.foo:* + * - Resources that have a key called `foo` whose value is `bar` + * labels.foo = bar + * + * - Filter by state: + * - Members in CREATING state. + * state = CREATING + * @param {string} [request.orderBy] + * Optional. Field to use to sort the list. + * @param {object} [options] + * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. + * @returns {Object} + * An iterable Object that allows [async iteration](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Iteration_protocols). + * When you iterate the returned iterable, each element will be an object representing + * [Membership]{@link google.cloud.gkehub.v1beta1.Membership}. The API will be called under the hood as needed, once per the page, + * so you can stop the iteration when you don't need more results. + * Please see the + * [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#auto-pagination) + * for more details and examples. + * @example + * const iterable = client.listMembershipsAsync(request); + * for await (const response of iterable) { + * // process response + * } + */ + listMembershipsAsync( + request?: protos.google.cloud.gkehub.v1beta1.IListMembershipsRequest, + options?: CallOptions + ): AsyncIterable { + request = request || {}; + options = options || {}; + options.otherArgs = options.otherArgs || {}; + options.otherArgs.headers = options.otherArgs.headers || {}; + options.otherArgs.headers[ + 'x-goog-request-params' + ] = gax.routingHeader.fromParams({ + parent: request.parent || '', + }); + options = options || {}; + const callSettings = new gax.CallSettings(options); + this.initialize(); + return this.descriptors.page.listMemberships.asyncIterate( + this.innerApiCalls['listMemberships'] as GaxCall, + (request as unknown) as RequestType, + callSettings + ) as AsyncIterable; + } + // -------------------- + // -- Path templates -- + // -------------------- + + /** + * Return a fully-qualified membership resource name string. + * + * @param {string} project + * @param {string} location + * @param {string} membership + * @returns {string} Resource name string. + */ + membershipPath(project: string, location: string, membership: string) { + return this.pathTemplates.membershipPathTemplate.render({ + project: project, + location: location, + membership: membership, + }); + } + + /** + * Parse the project from Membership resource. + * + * @param {string} membershipName + * A fully-qualified path representing Membership resource. + * @returns {string} A string representing the project. + */ + matchProjectFromMembershipName(membershipName: string) { + return this.pathTemplates.membershipPathTemplate.match(membershipName) + .project; + } + + /** + * Parse the location from Membership resource. + * + * @param {string} membershipName + * A fully-qualified path representing Membership resource. + * @returns {string} A string representing the location. + */ + matchLocationFromMembershipName(membershipName: string) { + return this.pathTemplates.membershipPathTemplate.match(membershipName) + .location; + } + + /** + * Parse the membership from Membership resource. + * + * @param {string} membershipName + * A fully-qualified path representing Membership resource. + * @returns {string} A string representing the membership. + */ + matchMembershipFromMembershipName(membershipName: string) { + return this.pathTemplates.membershipPathTemplate.match(membershipName) + .membership; + } + + /** + * Terminate the gRPC channel and close the client. + * + * The client will no longer be usable and all future behavior is undefined. + * @returns {Promise} A promise that resolves when the client is closed. + */ + close(): Promise { + this.initialize(); + if (!this._terminated) { + return this.gkeHubMembershipServiceStub!.then(stub => { + this._terminated = true; + stub.close(); + }); + } + return Promise.resolve(); + } +} diff --git a/packages/google-cloud-gkehub/src/v1beta1/gke_hub_membership_service_client_config.json b/packages/google-cloud-gkehub/src/v1beta1/gke_hub_membership_service_client_config.json new file mode 100644 index 00000000000..2e4ba5b9b3b --- /dev/null +++ b/packages/google-cloud-gkehub/src/v1beta1/gke_hub_membership_service_client_config.json @@ -0,0 +1,78 @@ +{ + "interfaces": { + "google.cloud.gkehub.v1beta1.GkeHubMembershipService": { + "retry_codes": { + "non_idempotent": [], + "idempotent": [ + "DEADLINE_EXCEEDED", + "UNAVAILABLE" + ], + "unavailable": [ + "UNAVAILABLE" + ] + }, + "retry_params": { + "default": { + "initial_retry_delay_millis": 100, + "retry_delay_multiplier": 1.3, + "max_retry_delay_millis": 60000, + "initial_rpc_timeout_millis": 60000, + "rpc_timeout_multiplier": 1, + "max_rpc_timeout_millis": 60000, + "total_timeout_millis": 600000 + }, + "ce5b960a6ed052e690863808e4f0deff3dc7d49f": { + "initial_retry_delay_millis": 1000, + "retry_delay_multiplier": 1.3, + "max_retry_delay_millis": 10000, + "initial_rpc_timeout_millis": 60000, + "rpc_timeout_multiplier": 1, + "max_rpc_timeout_millis": 60000, + "total_timeout_millis": 600000 + } + }, + "methods": { + "ListMemberships": { + "timeout_millis": 60000, + "retry_codes_name": "unavailable", + "retry_params_name": "ce5b960a6ed052e690863808e4f0deff3dc7d49f" + }, + "GetMembership": { + "timeout_millis": 60000, + "retry_codes_name": "unavailable", + "retry_params_name": "ce5b960a6ed052e690863808e4f0deff3dc7d49f" + }, + "CreateMembership": { + "timeout_millis": 60000, + "retry_codes_name": "unavailable", + "retry_params_name": "ce5b960a6ed052e690863808e4f0deff3dc7d49f" + }, + "DeleteMembership": { + "timeout_millis": 60000, + "retry_codes_name": "unavailable", + "retry_params_name": "ce5b960a6ed052e690863808e4f0deff3dc7d49f" + }, + "UpdateMembership": { + "timeout_millis": 60000, + "retry_codes_name": "unavailable", + "retry_params_name": "ce5b960a6ed052e690863808e4f0deff3dc7d49f" + }, + "GenerateConnectManifest": { + "timeout_millis": 60000, + "retry_codes_name": "unavailable", + "retry_params_name": "ce5b960a6ed052e690863808e4f0deff3dc7d49f" + }, + "ValidateExclusivity": { + "timeout_millis": 60000, + "retry_codes_name": "unavailable", + "retry_params_name": "ce5b960a6ed052e690863808e4f0deff3dc7d49f" + }, + "GenerateExclusivityManifest": { + "timeout_millis": 60000, + "retry_codes_name": "unavailable", + "retry_params_name": "ce5b960a6ed052e690863808e4f0deff3dc7d49f" + } + } + } + } +} diff --git a/packages/google-cloud-gkehub/src/v1beta1/gke_hub_membership_service_proto_list.json b/packages/google-cloud-gkehub/src/v1beta1/gke_hub_membership_service_proto_list.json new file mode 100644 index 00000000000..7b0d06d80b9 --- /dev/null +++ b/packages/google-cloud-gkehub/src/v1beta1/gke_hub_membership_service_proto_list.json @@ -0,0 +1,3 @@ +[ + "../../protos/google/cloud/gkehub/v1beta1/membership.proto" +] diff --git a/packages/google-cloud-gkehub/src/v1beta1/index.ts b/packages/google-cloud-gkehub/src/v1beta1/index.ts new file mode 100644 index 00000000000..f69e468ae74 --- /dev/null +++ b/packages/google-cloud-gkehub/src/v1beta1/index.ts @@ -0,0 +1,19 @@ +// 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 +// +// 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. ** + +export {GkeHubMembershipServiceClient} from './gke_hub_membership_service_client'; diff --git a/packages/google-cloud-gkehub/synth.metadata b/packages/google-cloud-gkehub/synth.metadata new file mode 100644 index 00000000000..27009b8efe6 --- /dev/null +++ b/packages/google-cloud-gkehub/synth.metadata @@ -0,0 +1,37 @@ +{ + "sources": [ + { + "git": { + "name": ".", + "remote": "sso://user/sofialeon/nodejs-gke-hub", + "sha": "b33c6492964f4a243fd1d27249994eefcec8cc27" + } + }, + { + "git": { + "name": "googleapis", + "remote": "https://github.com/googleapis/googleapis.git", + "sha": "b241bbc1ad920771707fe03e4cedd4e8c492e143", + "internalRef": "350670798" + } + }, + { + "git": { + "name": "synthtool", + "remote": "https://github.com/googleapis/synthtool.git", + "sha": "fb53b6fb373b7c3edf4e55f3e8036bc6d73fa483" + } + } + ], + "destinations": [ + { + "client": { + "source": "googleapis", + "apiName": "gkehub", + "apiVersion": "v1beta1", + "language": "nodejs", + "generator": "bazel" + } + } + ] +} \ No newline at end of file diff --git a/packages/google-cloud-gkehub/synth.py b/packages/google-cloud-gkehub/synth.py index c74cb664f69..14fb445585b 100644 --- a/packages/google-cloud-gkehub/synth.py +++ b/packages/google-cloud-gkehub/synth.py @@ -30,7 +30,7 @@ name, version, bazel_target=f"//google/cloud/gkehub/{version}:gkehub-{version}-nodejs") - s.copy(library, excludes=[]) + s.copy(library, excludes=["package.json","linkinator.config.json", "system-test/fixtures/sample/src/index.js","system-test/fixtures/sample/src/index.ts"]) # Copy common templates common_templates = gcp.CommonTemplates() diff --git a/packages/google-cloud-gkehub/system-test/fixtures/sample/src/index.js b/packages/google-cloud-gkehub/system-test/fixtures/sample/src/index.js new file mode 100644 index 00000000000..4637fde4d8e --- /dev/null +++ b/packages/google-cloud-gkehub/system-test/fixtures/sample/src/index.js @@ -0,0 +1,26 @@ +// 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 +// +// 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. ** + +/* eslint-disable node/no-missing-require, no-unused-vars */ +const gkehub = require('@google-cloud/gkehub'); + +function main() { + const gkeHubMembershipServiceClient = new gkehub.GkeHubMembershipServiceClient(); +} + +main(); diff --git a/packages/google-cloud-gkehub/system-test/fixtures/sample/src/index.ts b/packages/google-cloud-gkehub/system-test/fixtures/sample/src/index.ts new file mode 100644 index 00000000000..5926bc56467 --- /dev/null +++ b/packages/google-cloud-gkehub/system-test/fixtures/sample/src/index.ts @@ -0,0 +1,34 @@ +// 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 +// +// 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. ** + +import {GkeHubMembershipServiceClient} from '@google-cloud/gkehub'; + +// check that the client class type name can be used +function doStuffWithGkeHubMembershipServiceClient( + client: GkeHubMembershipServiceClient +) { + client.close(); +} + +function main() { + // check that the client instance can be created + const gkeHubMembershipServiceClient = new GkeHubMembershipServiceClient(); + doStuffWithGkeHubMembershipServiceClient(gkeHubMembershipServiceClient); +} + +main(); diff --git a/packages/google-cloud-gkehub/system-test/install.ts b/packages/google-cloud-gkehub/system-test/install.ts new file mode 100644 index 00000000000..d2d61c0396f --- /dev/null +++ b/packages/google-cloud-gkehub/system-test/install.ts @@ -0,0 +1,51 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// 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. ** + +import {packNTest} from 'pack-n-play'; +import {readFileSync} from 'fs'; +import {describe, it} from 'mocha'; + +describe('📦 pack-n-play test', () => { + it('TypeScript code', async function () { + this.timeout(300000); + const options = { + packageDir: process.cwd(), + sample: { + description: 'TypeScript user can use the type definitions', + ts: readFileSync( + './system-test/fixtures/sample/src/index.ts' + ).toString(), + }, + }; + await packNTest(options); + }); + + it('JavaScript code', async function () { + this.timeout(300000); + const options = { + packageDir: process.cwd(), + sample: { + description: 'JavaScript user can use the library', + ts: readFileSync( + './system-test/fixtures/sample/src/index.js' + ).toString(), + }, + }; + await packNTest(options); + }); +}); diff --git a/packages/google-cloud-gkehub/test/gapic_gke_hub_membership_service_v1beta1.ts b/packages/google-cloud-gkehub/test/gapic_gke_hub_membership_service_v1beta1.ts new file mode 100644 index 00000000000..032da071327 --- /dev/null +++ b/packages/google-cloud-gkehub/test/gapic_gke_hub_membership_service_v1beta1.ts @@ -0,0 +1,1747 @@ +// 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 +// +// 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. ** + +import * as protos from '../protos/protos'; +import * as assert from 'assert'; +import * as sinon from 'sinon'; +import {SinonStub} from 'sinon'; +import {describe, it} from 'mocha'; +import * as gkehubmembershipserviceModule from '../src'; + +import {PassThrough} from 'stream'; + +import {protobuf, LROperation, operationsProtos} from 'google-gax'; + +function generateSampleMessage(instance: T) { + const filledObject = (instance.constructor as typeof protobuf.Message).toObject( + instance as protobuf.Message, + {defaults: true} + ); + return (instance.constructor as typeof protobuf.Message).fromObject( + filledObject + ) as T; +} + +function stubSimpleCall(response?: ResponseType, error?: Error) { + return error + ? sinon.stub().rejects(error) + : sinon.stub().resolves([response]); +} + +function stubSimpleCallWithCallback( + response?: ResponseType, + error?: Error +) { + return error + ? sinon.stub().callsArgWith(2, error) + : sinon.stub().callsArgWith(2, null, response); +} + +function stubLongRunningCall( + response?: ResponseType, + callError?: Error, + lroError?: Error +) { + const innerStub = lroError + ? sinon.stub().rejects(lroError) + : sinon.stub().resolves([response]); + const mockOperation = { + promise: innerStub, + }; + return callError + ? sinon.stub().rejects(callError) + : sinon.stub().resolves([mockOperation]); +} + +function stubLongRunningCallWithCallback( + response?: ResponseType, + callError?: Error, + lroError?: Error +) { + const innerStub = lroError + ? sinon.stub().rejects(lroError) + : sinon.stub().resolves([response]); + const mockOperation = { + promise: innerStub, + }; + return callError + ? sinon.stub().callsArgWith(2, callError) + : sinon.stub().callsArgWith(2, null, mockOperation); +} + +function stubPageStreamingCall( + responses?: ResponseType[], + error?: Error +) { + const pagingStub = sinon.stub(); + if (responses) { + for (let i = 0; i < responses.length; ++i) { + pagingStub.onCall(i).callsArgWith(2, null, responses[i]); + } + } + const transformStub = error + ? sinon.stub().callsArgWith(2, error) + : pagingStub; + const mockStream = new PassThrough({ + objectMode: true, + transform: transformStub, + }); + // trigger as many responses as needed + if (responses) { + for (let i = 0; i < responses.length; ++i) { + setImmediate(() => { + mockStream.write({}); + }); + } + setImmediate(() => { + mockStream.end(); + }); + } else { + setImmediate(() => { + mockStream.write({}); + }); + setImmediate(() => { + mockStream.end(); + }); + } + return sinon.stub().returns(mockStream); +} + +function stubAsyncIterationCall( + responses?: ResponseType[], + error?: Error +) { + let counter = 0; + const asyncIterable = { + [Symbol.asyncIterator]() { + return { + async next() { + if (error) { + return Promise.reject(error); + } + if (counter >= responses!.length) { + return Promise.resolve({done: true, value: undefined}); + } + return Promise.resolve({done: false, value: responses![counter++]}); + }, + }; + }, + }; + return sinon.stub().returns(asyncIterable); +} + +describe('v1beta1.GkeHubMembershipServiceClient', () => { + it('has servicePath', () => { + const servicePath = + gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient + .servicePath; + assert(servicePath); + }); + + it('has apiEndpoint', () => { + const apiEndpoint = + gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient + .apiEndpoint; + assert(apiEndpoint); + }); + + it('has port', () => { + const port = + gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient.port; + assert(port); + assert(typeof port === 'number'); + }); + + it('should create a client with no option', () => { + const client = new gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient(); + assert(client); + }); + + it('should create a client with gRPC fallback', () => { + const client = new gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient( + { + fallback: true, + } + ); + assert(client); + }); + + it('has initialize method and supports deferred initialization', async () => { + const client = new gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient( + { + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + } + ); + assert.strictEqual(client.gkeHubMembershipServiceStub, undefined); + await client.initialize(); + assert(client.gkeHubMembershipServiceStub); + }); + + it('has close method', () => { + const client = new gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient( + { + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + } + ); + client.close(); + }); + + it('has getProjectId method', async () => { + const fakeProjectId = 'fake-project-id'; + const client = new gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient( + { + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + } + ); + client.auth.getProjectId = sinon.stub().resolves(fakeProjectId); + const result = await client.getProjectId(); + assert.strictEqual(result, fakeProjectId); + assert((client.auth.getProjectId as SinonStub).calledWithExactly()); + }); + + it('has getProjectId method with callback', async () => { + const fakeProjectId = 'fake-project-id'; + const client = new gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient( + { + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + } + ); + client.auth.getProjectId = sinon + .stub() + .callsArgWith(0, null, fakeProjectId); + const promise = new Promise((resolve, reject) => { + client.getProjectId((err?: Error | null, projectId?: string | null) => { + if (err) { + reject(err); + } else { + resolve(projectId); + } + }); + }); + const result = await promise; + assert.strictEqual(result, fakeProjectId); + }); + + describe('getMembership', () => { + it('invokes getMembership without error', async () => { + const client = new gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient( + { + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + } + ); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.gkehub.v1beta1.GetMembershipRequest() + ); + request.name = ''; + const expectedHeaderRequestParams = 'name='; + const expectedOptions = { + otherArgs: { + headers: { + 'x-goog-request-params': expectedHeaderRequestParams, + }, + }, + }; + const expectedResponse = generateSampleMessage( + new protos.google.cloud.gkehub.v1beta1.Membership() + ); + client.innerApiCalls.getMembership = stubSimpleCall(expectedResponse); + const [response] = await client.getMembership(request); + assert.deepStrictEqual(response, expectedResponse); + assert( + (client.innerApiCalls.getMembership as SinonStub) + .getCall(0) + .calledWith(request, expectedOptions, undefined) + ); + }); + + it('invokes getMembership without error using callback', async () => { + const client = new gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient( + { + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + } + ); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.gkehub.v1beta1.GetMembershipRequest() + ); + request.name = ''; + const expectedHeaderRequestParams = 'name='; + const expectedOptions = { + otherArgs: { + headers: { + 'x-goog-request-params': expectedHeaderRequestParams, + }, + }, + }; + const expectedResponse = generateSampleMessage( + new protos.google.cloud.gkehub.v1beta1.Membership() + ); + client.innerApiCalls.getMembership = stubSimpleCallWithCallback( + expectedResponse + ); + const promise = new Promise((resolve, reject) => { + client.getMembership( + request, + ( + err?: Error | null, + result?: protos.google.cloud.gkehub.v1beta1.IMembership | null + ) => { + if (err) { + reject(err); + } else { + resolve(result); + } + } + ); + }); + const response = await promise; + assert.deepStrictEqual(response, expectedResponse); + assert( + (client.innerApiCalls.getMembership as SinonStub) + .getCall(0) + .calledWith(request, expectedOptions /*, callback defined above */) + ); + }); + + it('invokes getMembership with error', async () => { + const client = new gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient( + { + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + } + ); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.gkehub.v1beta1.GetMembershipRequest() + ); + request.name = ''; + const expectedHeaderRequestParams = 'name='; + const expectedOptions = { + otherArgs: { + headers: { + 'x-goog-request-params': expectedHeaderRequestParams, + }, + }, + }; + const expectedError = new Error('expected'); + client.innerApiCalls.getMembership = stubSimpleCall( + undefined, + expectedError + ); + await assert.rejects(client.getMembership(request), expectedError); + assert( + (client.innerApiCalls.getMembership as SinonStub) + .getCall(0) + .calledWith(request, expectedOptions, undefined) + ); + }); + }); + + describe('generateConnectManifest', () => { + it('invokes generateConnectManifest without error', async () => { + const client = new gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient( + { + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + } + ); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.gkehub.v1beta1.GenerateConnectManifestRequest() + ); + request.name = ''; + const expectedHeaderRequestParams = 'name='; + const expectedOptions = { + otherArgs: { + headers: { + 'x-goog-request-params': expectedHeaderRequestParams, + }, + }, + }; + const expectedResponse = generateSampleMessage( + new protos.google.cloud.gkehub.v1beta1.GenerateConnectManifestResponse() + ); + client.innerApiCalls.generateConnectManifest = stubSimpleCall( + expectedResponse + ); + const [response] = await client.generateConnectManifest(request); + assert.deepStrictEqual(response, expectedResponse); + assert( + (client.innerApiCalls.generateConnectManifest as SinonStub) + .getCall(0) + .calledWith(request, expectedOptions, undefined) + ); + }); + + it('invokes generateConnectManifest without error using callback', async () => { + const client = new gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient( + { + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + } + ); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.gkehub.v1beta1.GenerateConnectManifestRequest() + ); + request.name = ''; + const expectedHeaderRequestParams = 'name='; + const expectedOptions = { + otherArgs: { + headers: { + 'x-goog-request-params': expectedHeaderRequestParams, + }, + }, + }; + const expectedResponse = generateSampleMessage( + new protos.google.cloud.gkehub.v1beta1.GenerateConnectManifestResponse() + ); + client.innerApiCalls.generateConnectManifest = stubSimpleCallWithCallback( + expectedResponse + ); + const promise = new Promise((resolve, reject) => { + client.generateConnectManifest( + request, + ( + err?: Error | null, + result?: protos.google.cloud.gkehub.v1beta1.IGenerateConnectManifestResponse | null + ) => { + if (err) { + reject(err); + } else { + resolve(result); + } + } + ); + }); + const response = await promise; + assert.deepStrictEqual(response, expectedResponse); + assert( + (client.innerApiCalls.generateConnectManifest as SinonStub) + .getCall(0) + .calledWith(request, expectedOptions /*, callback defined above */) + ); + }); + + it('invokes generateConnectManifest with error', async () => { + const client = new gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient( + { + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + } + ); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.gkehub.v1beta1.GenerateConnectManifestRequest() + ); + request.name = ''; + const expectedHeaderRequestParams = 'name='; + const expectedOptions = { + otherArgs: { + headers: { + 'x-goog-request-params': expectedHeaderRequestParams, + }, + }, + }; + const expectedError = new Error('expected'); + client.innerApiCalls.generateConnectManifest = stubSimpleCall( + undefined, + expectedError + ); + await assert.rejects( + client.generateConnectManifest(request), + expectedError + ); + assert( + (client.innerApiCalls.generateConnectManifest as SinonStub) + .getCall(0) + .calledWith(request, expectedOptions, undefined) + ); + }); + }); + + describe('validateExclusivity', () => { + it('invokes validateExclusivity without error', async () => { + const client = new gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient( + { + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + } + ); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.gkehub.v1beta1.ValidateExclusivityRequest() + ); + request.parent = ''; + const expectedHeaderRequestParams = 'parent='; + const expectedOptions = { + otherArgs: { + headers: { + 'x-goog-request-params': expectedHeaderRequestParams, + }, + }, + }; + const expectedResponse = generateSampleMessage( + new protos.google.cloud.gkehub.v1beta1.ValidateExclusivityResponse() + ); + client.innerApiCalls.validateExclusivity = stubSimpleCall( + expectedResponse + ); + const [response] = await client.validateExclusivity(request); + assert.deepStrictEqual(response, expectedResponse); + assert( + (client.innerApiCalls.validateExclusivity as SinonStub) + .getCall(0) + .calledWith(request, expectedOptions, undefined) + ); + }); + + it('invokes validateExclusivity without error using callback', async () => { + const client = new gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient( + { + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + } + ); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.gkehub.v1beta1.ValidateExclusivityRequest() + ); + request.parent = ''; + const expectedHeaderRequestParams = 'parent='; + const expectedOptions = { + otherArgs: { + headers: { + 'x-goog-request-params': expectedHeaderRequestParams, + }, + }, + }; + const expectedResponse = generateSampleMessage( + new protos.google.cloud.gkehub.v1beta1.ValidateExclusivityResponse() + ); + client.innerApiCalls.validateExclusivity = stubSimpleCallWithCallback( + expectedResponse + ); + const promise = new Promise((resolve, reject) => { + client.validateExclusivity( + request, + ( + err?: Error | null, + result?: protos.google.cloud.gkehub.v1beta1.IValidateExclusivityResponse | null + ) => { + if (err) { + reject(err); + } else { + resolve(result); + } + } + ); + }); + const response = await promise; + assert.deepStrictEqual(response, expectedResponse); + assert( + (client.innerApiCalls.validateExclusivity as SinonStub) + .getCall(0) + .calledWith(request, expectedOptions /*, callback defined above */) + ); + }); + + it('invokes validateExclusivity with error', async () => { + const client = new gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient( + { + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + } + ); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.gkehub.v1beta1.ValidateExclusivityRequest() + ); + request.parent = ''; + const expectedHeaderRequestParams = 'parent='; + const expectedOptions = { + otherArgs: { + headers: { + 'x-goog-request-params': expectedHeaderRequestParams, + }, + }, + }; + const expectedError = new Error('expected'); + client.innerApiCalls.validateExclusivity = stubSimpleCall( + undefined, + expectedError + ); + await assert.rejects(client.validateExclusivity(request), expectedError); + assert( + (client.innerApiCalls.validateExclusivity as SinonStub) + .getCall(0) + .calledWith(request, expectedOptions, undefined) + ); + }); + }); + + describe('generateExclusivityManifest', () => { + it('invokes generateExclusivityManifest without error', async () => { + const client = new gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient( + { + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + } + ); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.gkehub.v1beta1.GenerateExclusivityManifestRequest() + ); + request.name = ''; + const expectedHeaderRequestParams = 'name='; + const expectedOptions = { + otherArgs: { + headers: { + 'x-goog-request-params': expectedHeaderRequestParams, + }, + }, + }; + const expectedResponse = generateSampleMessage( + new protos.google.cloud.gkehub.v1beta1.GenerateExclusivityManifestResponse() + ); + client.innerApiCalls.generateExclusivityManifest = stubSimpleCall( + expectedResponse + ); + const [response] = await client.generateExclusivityManifest(request); + assert.deepStrictEqual(response, expectedResponse); + assert( + (client.innerApiCalls.generateExclusivityManifest as SinonStub) + .getCall(0) + .calledWith(request, expectedOptions, undefined) + ); + }); + + it('invokes generateExclusivityManifest without error using callback', async () => { + const client = new gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient( + { + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + } + ); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.gkehub.v1beta1.GenerateExclusivityManifestRequest() + ); + request.name = ''; + const expectedHeaderRequestParams = 'name='; + const expectedOptions = { + otherArgs: { + headers: { + 'x-goog-request-params': expectedHeaderRequestParams, + }, + }, + }; + const expectedResponse = generateSampleMessage( + new protos.google.cloud.gkehub.v1beta1.GenerateExclusivityManifestResponse() + ); + client.innerApiCalls.generateExclusivityManifest = stubSimpleCallWithCallback( + expectedResponse + ); + const promise = new Promise((resolve, reject) => { + client.generateExclusivityManifest( + request, + ( + err?: Error | null, + result?: protos.google.cloud.gkehub.v1beta1.IGenerateExclusivityManifestResponse | null + ) => { + if (err) { + reject(err); + } else { + resolve(result); + } + } + ); + }); + const response = await promise; + assert.deepStrictEqual(response, expectedResponse); + assert( + (client.innerApiCalls.generateExclusivityManifest as SinonStub) + .getCall(0) + .calledWith(request, expectedOptions /*, callback defined above */) + ); + }); + + it('invokes generateExclusivityManifest with error', async () => { + const client = new gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient( + { + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + } + ); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.gkehub.v1beta1.GenerateExclusivityManifestRequest() + ); + request.name = ''; + const expectedHeaderRequestParams = 'name='; + const expectedOptions = { + otherArgs: { + headers: { + 'x-goog-request-params': expectedHeaderRequestParams, + }, + }, + }; + const expectedError = new Error('expected'); + client.innerApiCalls.generateExclusivityManifest = stubSimpleCall( + undefined, + expectedError + ); + await assert.rejects( + client.generateExclusivityManifest(request), + expectedError + ); + assert( + (client.innerApiCalls.generateExclusivityManifest as SinonStub) + .getCall(0) + .calledWith(request, expectedOptions, undefined) + ); + }); + }); + + describe('createMembership', () => { + it('invokes createMembership without error', async () => { + const client = new gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient( + { + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + } + ); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.gkehub.v1beta1.CreateMembershipRequest() + ); + request.parent = ''; + const expectedHeaderRequestParams = 'parent='; + const expectedOptions = { + otherArgs: { + headers: { + 'x-goog-request-params': expectedHeaderRequestParams, + }, + }, + }; + const expectedResponse = generateSampleMessage( + new protos.google.longrunning.Operation() + ); + client.innerApiCalls.createMembership = stubLongRunningCall( + expectedResponse + ); + const [operation] = await client.createMembership(request); + const [response] = await operation.promise(); + assert.deepStrictEqual(response, expectedResponse); + assert( + (client.innerApiCalls.createMembership as SinonStub) + .getCall(0) + .calledWith(request, expectedOptions, undefined) + ); + }); + + it('invokes createMembership without error using callback', async () => { + const client = new gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient( + { + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + } + ); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.gkehub.v1beta1.CreateMembershipRequest() + ); + request.parent = ''; + const expectedHeaderRequestParams = 'parent='; + const expectedOptions = { + otherArgs: { + headers: { + 'x-goog-request-params': expectedHeaderRequestParams, + }, + }, + }; + const expectedResponse = generateSampleMessage( + new protos.google.longrunning.Operation() + ); + client.innerApiCalls.createMembership = stubLongRunningCallWithCallback( + expectedResponse + ); + const promise = new Promise((resolve, reject) => { + client.createMembership( + request, + ( + err?: Error | null, + result?: LROperation< + protos.google.cloud.gkehub.v1beta1.IMembership, + protos.google.cloud.gkehub.v1beta1.IOperationMetadata + > | null + ) => { + if (err) { + reject(err); + } else { + resolve(result); + } + } + ); + }); + const operation = (await promise) as LROperation< + protos.google.cloud.gkehub.v1beta1.IMembership, + protos.google.cloud.gkehub.v1beta1.IOperationMetadata + >; + const [response] = await operation.promise(); + assert.deepStrictEqual(response, expectedResponse); + assert( + (client.innerApiCalls.createMembership as SinonStub) + .getCall(0) + .calledWith(request, expectedOptions /*, callback defined above */) + ); + }); + + it('invokes createMembership with call error', async () => { + const client = new gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient( + { + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + } + ); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.gkehub.v1beta1.CreateMembershipRequest() + ); + request.parent = ''; + const expectedHeaderRequestParams = 'parent='; + const expectedOptions = { + otherArgs: { + headers: { + 'x-goog-request-params': expectedHeaderRequestParams, + }, + }, + }; + const expectedError = new Error('expected'); + client.innerApiCalls.createMembership = stubLongRunningCall( + undefined, + expectedError + ); + await assert.rejects(client.createMembership(request), expectedError); + assert( + (client.innerApiCalls.createMembership as SinonStub) + .getCall(0) + .calledWith(request, expectedOptions, undefined) + ); + }); + + it('invokes createMembership with LRO error', async () => { + const client = new gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient( + { + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + } + ); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.gkehub.v1beta1.CreateMembershipRequest() + ); + request.parent = ''; + const expectedHeaderRequestParams = 'parent='; + const expectedOptions = { + otherArgs: { + headers: { + 'x-goog-request-params': expectedHeaderRequestParams, + }, + }, + }; + const expectedError = new Error('expected'); + client.innerApiCalls.createMembership = stubLongRunningCall( + undefined, + undefined, + expectedError + ); + const [operation] = await client.createMembership(request); + await assert.rejects(operation.promise(), expectedError); + assert( + (client.innerApiCalls.createMembership as SinonStub) + .getCall(0) + .calledWith(request, expectedOptions, undefined) + ); + }); + + it('invokes checkCreateMembershipProgress without error', async () => { + const client = new gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient( + { + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + } + ); + client.initialize(); + const expectedResponse = generateSampleMessage( + new operationsProtos.google.longrunning.Operation() + ); + expectedResponse.name = 'test'; + expectedResponse.response = {type_url: 'url', value: Buffer.from('')}; + expectedResponse.metadata = {type_url: 'url', value: Buffer.from('')}; + + client.operationsClient.getOperation = stubSimpleCall(expectedResponse); + const decodedOperation = await client.checkCreateMembershipProgress( + expectedResponse.name + ); + assert.deepStrictEqual(decodedOperation.name, expectedResponse.name); + assert(decodedOperation.metadata); + assert((client.operationsClient.getOperation as SinonStub).getCall(0)); + }); + + it('invokes checkCreateMembershipProgress with error', async () => { + const client = new gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient( + { + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + } + ); + client.initialize(); + const expectedError = new Error('expected'); + + client.operationsClient.getOperation = stubSimpleCall( + undefined, + expectedError + ); + await assert.rejects( + client.checkCreateMembershipProgress(''), + expectedError + ); + assert((client.operationsClient.getOperation as SinonStub).getCall(0)); + }); + }); + + describe('deleteMembership', () => { + it('invokes deleteMembership without error', async () => { + const client = new gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient( + { + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + } + ); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.gkehub.v1beta1.DeleteMembershipRequest() + ); + request.name = ''; + const expectedHeaderRequestParams = 'name='; + const expectedOptions = { + otherArgs: { + headers: { + 'x-goog-request-params': expectedHeaderRequestParams, + }, + }, + }; + const expectedResponse = generateSampleMessage( + new protos.google.longrunning.Operation() + ); + client.innerApiCalls.deleteMembership = stubLongRunningCall( + expectedResponse + ); + const [operation] = await client.deleteMembership(request); + const [response] = await operation.promise(); + assert.deepStrictEqual(response, expectedResponse); + assert( + (client.innerApiCalls.deleteMembership as SinonStub) + .getCall(0) + .calledWith(request, expectedOptions, undefined) + ); + }); + + it('invokes deleteMembership without error using callback', async () => { + const client = new gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient( + { + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + } + ); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.gkehub.v1beta1.DeleteMembershipRequest() + ); + request.name = ''; + const expectedHeaderRequestParams = 'name='; + const expectedOptions = { + otherArgs: { + headers: { + 'x-goog-request-params': expectedHeaderRequestParams, + }, + }, + }; + const expectedResponse = generateSampleMessage( + new protos.google.longrunning.Operation() + ); + client.innerApiCalls.deleteMembership = stubLongRunningCallWithCallback( + expectedResponse + ); + const promise = new Promise((resolve, reject) => { + client.deleteMembership( + request, + ( + err?: Error | null, + result?: LROperation< + protos.google.protobuf.IEmpty, + protos.google.cloud.gkehub.v1beta1.IOperationMetadata + > | null + ) => { + if (err) { + reject(err); + } else { + resolve(result); + } + } + ); + }); + const operation = (await promise) as LROperation< + protos.google.protobuf.IEmpty, + protos.google.cloud.gkehub.v1beta1.IOperationMetadata + >; + const [response] = await operation.promise(); + assert.deepStrictEqual(response, expectedResponse); + assert( + (client.innerApiCalls.deleteMembership as SinonStub) + .getCall(0) + .calledWith(request, expectedOptions /*, callback defined above */) + ); + }); + + it('invokes deleteMembership with call error', async () => { + const client = new gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient( + { + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + } + ); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.gkehub.v1beta1.DeleteMembershipRequest() + ); + request.name = ''; + const expectedHeaderRequestParams = 'name='; + const expectedOptions = { + otherArgs: { + headers: { + 'x-goog-request-params': expectedHeaderRequestParams, + }, + }, + }; + const expectedError = new Error('expected'); + client.innerApiCalls.deleteMembership = stubLongRunningCall( + undefined, + expectedError + ); + await assert.rejects(client.deleteMembership(request), expectedError); + assert( + (client.innerApiCalls.deleteMembership as SinonStub) + .getCall(0) + .calledWith(request, expectedOptions, undefined) + ); + }); + + it('invokes deleteMembership with LRO error', async () => { + const client = new gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient( + { + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + } + ); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.gkehub.v1beta1.DeleteMembershipRequest() + ); + request.name = ''; + const expectedHeaderRequestParams = 'name='; + const expectedOptions = { + otherArgs: { + headers: { + 'x-goog-request-params': expectedHeaderRequestParams, + }, + }, + }; + const expectedError = new Error('expected'); + client.innerApiCalls.deleteMembership = stubLongRunningCall( + undefined, + undefined, + expectedError + ); + const [operation] = await client.deleteMembership(request); + await assert.rejects(operation.promise(), expectedError); + assert( + (client.innerApiCalls.deleteMembership as SinonStub) + .getCall(0) + .calledWith(request, expectedOptions, undefined) + ); + }); + + it('invokes checkDeleteMembershipProgress without error', async () => { + const client = new gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient( + { + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + } + ); + client.initialize(); + const expectedResponse = generateSampleMessage( + new operationsProtos.google.longrunning.Operation() + ); + expectedResponse.name = 'test'; + expectedResponse.response = {type_url: 'url', value: Buffer.from('')}; + expectedResponse.metadata = {type_url: 'url', value: Buffer.from('')}; + + client.operationsClient.getOperation = stubSimpleCall(expectedResponse); + const decodedOperation = await client.checkDeleteMembershipProgress( + expectedResponse.name + ); + assert.deepStrictEqual(decodedOperation.name, expectedResponse.name); + assert(decodedOperation.metadata); + assert((client.operationsClient.getOperation as SinonStub).getCall(0)); + }); + + it('invokes checkDeleteMembershipProgress with error', async () => { + const client = new gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient( + { + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + } + ); + client.initialize(); + const expectedError = new Error('expected'); + + client.operationsClient.getOperation = stubSimpleCall( + undefined, + expectedError + ); + await assert.rejects( + client.checkDeleteMembershipProgress(''), + expectedError + ); + assert((client.operationsClient.getOperation as SinonStub).getCall(0)); + }); + }); + + describe('updateMembership', () => { + it('invokes updateMembership without error', async () => { + const client = new gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient( + { + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + } + ); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.gkehub.v1beta1.UpdateMembershipRequest() + ); + request.name = ''; + const expectedHeaderRequestParams = 'name='; + const expectedOptions = { + otherArgs: { + headers: { + 'x-goog-request-params': expectedHeaderRequestParams, + }, + }, + }; + const expectedResponse = generateSampleMessage( + new protos.google.longrunning.Operation() + ); + client.innerApiCalls.updateMembership = stubLongRunningCall( + expectedResponse + ); + const [operation] = await client.updateMembership(request); + const [response] = await operation.promise(); + assert.deepStrictEqual(response, expectedResponse); + assert( + (client.innerApiCalls.updateMembership as SinonStub) + .getCall(0) + .calledWith(request, expectedOptions, undefined) + ); + }); + + it('invokes updateMembership without error using callback', async () => { + const client = new gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient( + { + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + } + ); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.gkehub.v1beta1.UpdateMembershipRequest() + ); + request.name = ''; + const expectedHeaderRequestParams = 'name='; + const expectedOptions = { + otherArgs: { + headers: { + 'x-goog-request-params': expectedHeaderRequestParams, + }, + }, + }; + const expectedResponse = generateSampleMessage( + new protos.google.longrunning.Operation() + ); + client.innerApiCalls.updateMembership = stubLongRunningCallWithCallback( + expectedResponse + ); + const promise = new Promise((resolve, reject) => { + client.updateMembership( + request, + ( + err?: Error | null, + result?: LROperation< + protos.google.cloud.gkehub.v1beta1.IMembership, + protos.google.cloud.gkehub.v1beta1.IOperationMetadata + > | null + ) => { + if (err) { + reject(err); + } else { + resolve(result); + } + } + ); + }); + const operation = (await promise) as LROperation< + protos.google.cloud.gkehub.v1beta1.IMembership, + protos.google.cloud.gkehub.v1beta1.IOperationMetadata + >; + const [response] = await operation.promise(); + assert.deepStrictEqual(response, expectedResponse); + assert( + (client.innerApiCalls.updateMembership as SinonStub) + .getCall(0) + .calledWith(request, expectedOptions /*, callback defined above */) + ); + }); + + it('invokes updateMembership with call error', async () => { + const client = new gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient( + { + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + } + ); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.gkehub.v1beta1.UpdateMembershipRequest() + ); + request.name = ''; + const expectedHeaderRequestParams = 'name='; + const expectedOptions = { + otherArgs: { + headers: { + 'x-goog-request-params': expectedHeaderRequestParams, + }, + }, + }; + const expectedError = new Error('expected'); + client.innerApiCalls.updateMembership = stubLongRunningCall( + undefined, + expectedError + ); + await assert.rejects(client.updateMembership(request), expectedError); + assert( + (client.innerApiCalls.updateMembership as SinonStub) + .getCall(0) + .calledWith(request, expectedOptions, undefined) + ); + }); + + it('invokes updateMembership with LRO error', async () => { + const client = new gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient( + { + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + } + ); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.gkehub.v1beta1.UpdateMembershipRequest() + ); + request.name = ''; + const expectedHeaderRequestParams = 'name='; + const expectedOptions = { + otherArgs: { + headers: { + 'x-goog-request-params': expectedHeaderRequestParams, + }, + }, + }; + const expectedError = new Error('expected'); + client.innerApiCalls.updateMembership = stubLongRunningCall( + undefined, + undefined, + expectedError + ); + const [operation] = await client.updateMembership(request); + await assert.rejects(operation.promise(), expectedError); + assert( + (client.innerApiCalls.updateMembership as SinonStub) + .getCall(0) + .calledWith(request, expectedOptions, undefined) + ); + }); + + it('invokes checkUpdateMembershipProgress without error', async () => { + const client = new gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient( + { + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + } + ); + client.initialize(); + const expectedResponse = generateSampleMessage( + new operationsProtos.google.longrunning.Operation() + ); + expectedResponse.name = 'test'; + expectedResponse.response = {type_url: 'url', value: Buffer.from('')}; + expectedResponse.metadata = {type_url: 'url', value: Buffer.from('')}; + + client.operationsClient.getOperation = stubSimpleCall(expectedResponse); + const decodedOperation = await client.checkUpdateMembershipProgress( + expectedResponse.name + ); + assert.deepStrictEqual(decodedOperation.name, expectedResponse.name); + assert(decodedOperation.metadata); + assert((client.operationsClient.getOperation as SinonStub).getCall(0)); + }); + + it('invokes checkUpdateMembershipProgress with error', async () => { + const client = new gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient( + { + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + } + ); + client.initialize(); + const expectedError = new Error('expected'); + + client.operationsClient.getOperation = stubSimpleCall( + undefined, + expectedError + ); + await assert.rejects( + client.checkUpdateMembershipProgress(''), + expectedError + ); + assert((client.operationsClient.getOperation as SinonStub).getCall(0)); + }); + }); + + describe('listMemberships', () => { + it('invokes listMemberships without error', async () => { + const client = new gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient( + { + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + } + ); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.gkehub.v1beta1.ListMembershipsRequest() + ); + request.parent = ''; + const expectedHeaderRequestParams = 'parent='; + const expectedOptions = { + otherArgs: { + headers: { + 'x-goog-request-params': expectedHeaderRequestParams, + }, + }, + }; + const expectedResponse = [ + generateSampleMessage( + new protos.google.cloud.gkehub.v1beta1.Membership() + ), + generateSampleMessage( + new protos.google.cloud.gkehub.v1beta1.Membership() + ), + generateSampleMessage( + new protos.google.cloud.gkehub.v1beta1.Membership() + ), + ]; + client.innerApiCalls.listMemberships = stubSimpleCall(expectedResponse); + const [response] = await client.listMemberships(request); + assert.deepStrictEqual(response, expectedResponse); + assert( + (client.innerApiCalls.listMemberships as SinonStub) + .getCall(0) + .calledWith(request, expectedOptions, undefined) + ); + }); + + it('invokes listMemberships without error using callback', async () => { + const client = new gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient( + { + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + } + ); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.gkehub.v1beta1.ListMembershipsRequest() + ); + request.parent = ''; + const expectedHeaderRequestParams = 'parent='; + const expectedOptions = { + otherArgs: { + headers: { + 'x-goog-request-params': expectedHeaderRequestParams, + }, + }, + }; + const expectedResponse = [ + generateSampleMessage( + new protos.google.cloud.gkehub.v1beta1.Membership() + ), + generateSampleMessage( + new protos.google.cloud.gkehub.v1beta1.Membership() + ), + generateSampleMessage( + new protos.google.cloud.gkehub.v1beta1.Membership() + ), + ]; + client.innerApiCalls.listMemberships = stubSimpleCallWithCallback( + expectedResponse + ); + const promise = new Promise((resolve, reject) => { + client.listMemberships( + request, + ( + err?: Error | null, + result?: protos.google.cloud.gkehub.v1beta1.IMembership[] | null + ) => { + if (err) { + reject(err); + } else { + resolve(result); + } + } + ); + }); + const response = await promise; + assert.deepStrictEqual(response, expectedResponse); + assert( + (client.innerApiCalls.listMemberships as SinonStub) + .getCall(0) + .calledWith(request, expectedOptions /*, callback defined above */) + ); + }); + + it('invokes listMemberships with error', async () => { + const client = new gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient( + { + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + } + ); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.gkehub.v1beta1.ListMembershipsRequest() + ); + request.parent = ''; + const expectedHeaderRequestParams = 'parent='; + const expectedOptions = { + otherArgs: { + headers: { + 'x-goog-request-params': expectedHeaderRequestParams, + }, + }, + }; + const expectedError = new Error('expected'); + client.innerApiCalls.listMemberships = stubSimpleCall( + undefined, + expectedError + ); + await assert.rejects(client.listMemberships(request), expectedError); + assert( + (client.innerApiCalls.listMemberships as SinonStub) + .getCall(0) + .calledWith(request, expectedOptions, undefined) + ); + }); + + it('invokes listMembershipsStream without error', async () => { + const client = new gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient( + { + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + } + ); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.gkehub.v1beta1.ListMembershipsRequest() + ); + request.parent = ''; + const expectedHeaderRequestParams = 'parent='; + const expectedResponse = [ + generateSampleMessage( + new protos.google.cloud.gkehub.v1beta1.Membership() + ), + generateSampleMessage( + new protos.google.cloud.gkehub.v1beta1.Membership() + ), + generateSampleMessage( + new protos.google.cloud.gkehub.v1beta1.Membership() + ), + ]; + client.descriptors.page.listMemberships.createStream = stubPageStreamingCall( + expectedResponse + ); + const stream = client.listMembershipsStream(request); + const promise = new Promise((resolve, reject) => { + const responses: protos.google.cloud.gkehub.v1beta1.Membership[] = []; + stream.on( + 'data', + (response: protos.google.cloud.gkehub.v1beta1.Membership) => { + responses.push(response); + } + ); + stream.on('end', () => { + resolve(responses); + }); + stream.on('error', (err: Error) => { + reject(err); + }); + }); + const responses = await promise; + assert.deepStrictEqual(responses, expectedResponse); + assert( + (client.descriptors.page.listMemberships.createStream as SinonStub) + .getCall(0) + .calledWith(client.innerApiCalls.listMemberships, request) + ); + assert.strictEqual( + (client.descriptors.page.listMemberships + .createStream as SinonStub).getCall(0).args[2].otherArgs.headers[ + 'x-goog-request-params' + ], + expectedHeaderRequestParams + ); + }); + + it('invokes listMembershipsStream with error', async () => { + const client = new gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient( + { + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + } + ); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.gkehub.v1beta1.ListMembershipsRequest() + ); + request.parent = ''; + const expectedHeaderRequestParams = 'parent='; + const expectedError = new Error('expected'); + client.descriptors.page.listMemberships.createStream = stubPageStreamingCall( + undefined, + expectedError + ); + const stream = client.listMembershipsStream(request); + const promise = new Promise((resolve, reject) => { + const responses: protos.google.cloud.gkehub.v1beta1.Membership[] = []; + stream.on( + 'data', + (response: protos.google.cloud.gkehub.v1beta1.Membership) => { + responses.push(response); + } + ); + stream.on('end', () => { + resolve(responses); + }); + stream.on('error', (err: Error) => { + reject(err); + }); + }); + await assert.rejects(promise, expectedError); + assert( + (client.descriptors.page.listMemberships.createStream as SinonStub) + .getCall(0) + .calledWith(client.innerApiCalls.listMemberships, request) + ); + assert.strictEqual( + (client.descriptors.page.listMemberships + .createStream as SinonStub).getCall(0).args[2].otherArgs.headers[ + 'x-goog-request-params' + ], + expectedHeaderRequestParams + ); + }); + + it('uses async iteration with listMemberships without error', async () => { + const client = new gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient( + { + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + } + ); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.gkehub.v1beta1.ListMembershipsRequest() + ); + request.parent = ''; + const expectedHeaderRequestParams = 'parent='; + const expectedResponse = [ + generateSampleMessage( + new protos.google.cloud.gkehub.v1beta1.Membership() + ), + generateSampleMessage( + new protos.google.cloud.gkehub.v1beta1.Membership() + ), + generateSampleMessage( + new protos.google.cloud.gkehub.v1beta1.Membership() + ), + ]; + client.descriptors.page.listMemberships.asyncIterate = stubAsyncIterationCall( + expectedResponse + ); + const responses: protos.google.cloud.gkehub.v1beta1.IMembership[] = []; + const iterable = client.listMembershipsAsync(request); + for await (const resource of iterable) { + responses.push(resource!); + } + assert.deepStrictEqual(responses, expectedResponse); + assert.deepStrictEqual( + (client.descriptors.page.listMemberships + .asyncIterate as SinonStub).getCall(0).args[1], + request + ); + assert.strictEqual( + (client.descriptors.page.listMemberships + .asyncIterate as SinonStub).getCall(0).args[2].otherArgs.headers[ + 'x-goog-request-params' + ], + expectedHeaderRequestParams + ); + }); + + it('uses async iteration with listMemberships with error', async () => { + const client = new gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient( + { + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + } + ); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.gkehub.v1beta1.ListMembershipsRequest() + ); + request.parent = ''; + const expectedHeaderRequestParams = 'parent='; + const expectedError = new Error('expected'); + client.descriptors.page.listMemberships.asyncIterate = stubAsyncIterationCall( + undefined, + expectedError + ); + const iterable = client.listMembershipsAsync(request); + await assert.rejects(async () => { + const responses: protos.google.cloud.gkehub.v1beta1.IMembership[] = []; + for await (const resource of iterable) { + responses.push(resource!); + } + }); + assert.deepStrictEqual( + (client.descriptors.page.listMemberships + .asyncIterate as SinonStub).getCall(0).args[1], + request + ); + assert.strictEqual( + (client.descriptors.page.listMemberships + .asyncIterate as SinonStub).getCall(0).args[2].otherArgs.headers[ + 'x-goog-request-params' + ], + expectedHeaderRequestParams + ); + }); + }); + + describe('Path templates', () => { + describe('membership', () => { + const fakePath = '/rendered/path/membership'; + const expectedParameters = { + project: 'projectValue', + location: 'locationValue', + membership: 'membershipValue', + }; + const client = new gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient( + { + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + } + ); + client.initialize(); + client.pathTemplates.membershipPathTemplate.render = sinon + .stub() + .returns(fakePath); + client.pathTemplates.membershipPathTemplate.match = sinon + .stub() + .returns(expectedParameters); + + it('membershipPath', () => { + const result = client.membershipPath( + 'projectValue', + 'locationValue', + 'membershipValue' + ); + assert.strictEqual(result, fakePath); + assert( + (client.pathTemplates.membershipPathTemplate.render as SinonStub) + .getCall(-1) + .calledWith(expectedParameters) + ); + }); + + it('matchProjectFromMembershipName', () => { + const result = client.matchProjectFromMembershipName(fakePath); + assert.strictEqual(result, 'projectValue'); + assert( + (client.pathTemplates.membershipPathTemplate.match as SinonStub) + .getCall(-1) + .calledWith(fakePath) + ); + }); + + it('matchLocationFromMembershipName', () => { + const result = client.matchLocationFromMembershipName(fakePath); + assert.strictEqual(result, 'locationValue'); + assert( + (client.pathTemplates.membershipPathTemplate.match as SinonStub) + .getCall(-1) + .calledWith(fakePath) + ); + }); + + it('matchMembershipFromMembershipName', () => { + const result = client.matchMembershipFromMembershipName(fakePath); + assert.strictEqual(result, 'membershipValue'); + assert( + (client.pathTemplates.membershipPathTemplate.match as SinonStub) + .getCall(-1) + .calledWith(fakePath) + ); + }); + }); + }); +}); diff --git a/packages/google-cloud-gkehub/tsconfig.json b/packages/google-cloud-gkehub/tsconfig.json new file mode 100644 index 00000000000..c78f1c884ef --- /dev/null +++ b/packages/google-cloud-gkehub/tsconfig.json @@ -0,0 +1,19 @@ +{ + "extends": "./node_modules/gts/tsconfig-google.json", + "compilerOptions": { + "rootDir": ".", + "outDir": "build", + "resolveJsonModule": true, + "lib": [ + "es2018", + "dom" + ] + }, + "include": [ + "src/*.ts", + "src/**/*.ts", + "test/*.ts", + "test/**/*.ts", + "system-test/*.ts" + ] +} diff --git a/packages/google-cloud-gkehub/webpack.config.js b/packages/google-cloud-gkehub/webpack.config.js new file mode 100644 index 00000000000..e820f412f15 --- /dev/null +++ b/packages/google-cloud-gkehub/webpack.config.js @@ -0,0 +1,64 @@ +// 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. + +const path = require('path'); + +module.exports = { + entry: './src/index.ts', + output: { + library: 'GkeHubMembershipService', + filename: './gke-hub-membership-service.js', + }, + node: { + child_process: 'empty', + fs: 'empty', + crypto: 'empty', + }, + resolve: { + alias: { + '../../../package.json': path.resolve(__dirname, 'package.json'), + }, + extensions: ['.js', '.json', '.ts'], + }, + module: { + rules: [ + { + test: /\.tsx?$/, + use: 'ts-loader', + exclude: /node_modules/, + }, + { + test: /node_modules[\\/]@grpc[\\/]grpc-js/, + use: 'null-loader', + }, + { + test: /node_modules[\\/]grpc/, + use: 'null-loader', + }, + { + test: /node_modules[\\/]retry-request/, + use: 'null-loader', + }, + { + test: /node_modules[\\/]https?-proxy-agent/, + use: 'null-loader', + }, + { + test: /node_modules[\\/]gtoken/, + use: 'null-loader', + }, + ], + }, + mode: 'production', +}; From bc5cf5534604f5472190d5cc1a4bf419a36dea3d Mon Sep 17 00:00:00 2001 From: sofisl <55454395+sofisl@users.noreply.github.com> Date: Mon, 25 Jan 2021 23:04:56 -0800 Subject: [PATCH 04/92] feat: add tests and samples to library (#2) * feat!: add tests and samples to library * fix: change package name for system tests --- .../google-cloud-gkehub/.repo-metadata.json | 13 ++ packages/google-cloud-gkehub/CONTRIBUTING.md | 6 +- packages/google-cloud-gkehub/README.md | 154 +++++++++++++++++- .../linkinator.config.json | 2 +- packages/google-cloud-gkehub/package.json | 2 +- .../google-cloud-gkehub/samples/README.md | 50 ++++++ .../google-cloud-gkehub/samples/quickstart.js | 27 ++- .../samples/test/quickstart.js | 13 +- packages/google-cloud-gkehub/synth.metadata | 10 +- packages/google-cloud-gkehub/synth.py | 2 +- .../system-test/fixtures/sample/src/index.js | 2 +- .../system-test/fixtures/sample/src/index.ts | 2 +- 12 files changed, 244 insertions(+), 39 deletions(-) create mode 100644 packages/google-cloud-gkehub/.repo-metadata.json create mode 100644 packages/google-cloud-gkehub/samples/README.md diff --git a/packages/google-cloud-gkehub/.repo-metadata.json b/packages/google-cloud-gkehub/.repo-metadata.json new file mode 100644 index 00000000000..9bba8929938 --- /dev/null +++ b/packages/google-cloud-gkehub/.repo-metadata.json @@ -0,0 +1,13 @@ +{ + "name": "gkehub", + "name_pretty": "GKE Hub", + "product_documentation": "https://cloud.google.com/anthos/gke", + "client_documentation": "https://googleapis.dev/nodejs/gke-hub/latest/", + "issue_tracker": "https://github.com/googleapis/nodejs-gke-hub/issues", + "release_level": "BETA", + "language": "nodejs", + "repo": "googleapis/nodejs-gke-hub", + "distribution_name": "@google-cloud/gke-hub", + "api_id": "gkehub.googleapis.com", + "requires_billing": true + } \ No newline at end of file diff --git a/packages/google-cloud-gkehub/CONTRIBUTING.md b/packages/google-cloud-gkehub/CONTRIBUTING.md index 72c44cada5e..dec34a57db1 100644 --- a/packages/google-cloud-gkehub/CONTRIBUTING.md +++ b/packages/google-cloud-gkehub/CONTRIBUTING.md @@ -39,7 +39,9 @@ accept your pull requests. ### Before you begin -1. [Select or create a Cloud Platform project][projects]. +1. [Select or create a Cloud Platform project][projects]. +1. [Enable billing for your project][billing]. +1. [Enable the GKE Hub API][enable_api]. 1. [Set up authentication with a service account][auth] so you can access the API from your local workstation. @@ -70,5 +72,5 @@ accept your pull requests. [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=gkehub.googleapis.com [auth]: https://cloud.google.com/docs/authentication/getting-started \ No newline at end of file diff --git a/packages/google-cloud-gkehub/README.md b/packages/google-cloud-gkehub/README.md index f922950c787..6b4c6997747 100644 --- a/packages/google-cloud-gkehub/README.md +++ b/packages/google-cloud-gkehub/README.md @@ -1 +1,153 @@ -Gkehub: Nodejs Client +[//]: # "This README.md file is auto-generated, all changes to this file will be lost." +[//]: # "To regenerate it, use `python -m synthtool`." +Google Cloud Platform logo + +# [GKE Hub: Node.js Client](https://github.com/googleapis/nodejs-gke-hub) + +[![release level](https://img.shields.io/badge/release%20level-beta-yellow.svg?style=flat)](https://cloud.google.com/terms/launch-stages) +[![npm version](https://img.shields.io/npm/v/@google-cloud/gke-hub.svg)](https://www.npmjs.org/package/@google-cloud/gke-hub) +[![codecov](https://img.shields.io/codecov/c/github/googleapis/nodejs-gke-hub/master.svg?style=flat)](https://codecov.io/gh/googleapis/nodejs-gke-hub) + + + + +Gkehub client for Node.js + + +A comprehensive list of changes in each version may be found in +[the CHANGELOG](https://github.com/googleapis/nodejs-gke-hub/blob/master/CHANGELOG.md). + +* [GKE Hub Node.js Client API Reference][client-docs] +* [GKE Hub Documentation][product-docs] +* [github.com/googleapis/nodejs-gke-hub](https://github.com/googleapis/nodejs-gke-hub) + +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 GKE Hub 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/gke-hub +``` + + +### Using the client library + +```javascript + +// Imports the Google Cloud client library +const {GkeHubMembershipServiceClient} = require('@google-cloud/gke-hub'); + +// TODO(developer): replace with your preferred values. +// const projectId = 'my-project' +// const location = 'global' + +// Creates a client +const client = new GkeHubMembershipServiceClient(); + +async function listMemberships() { + const memberships = await client.listMemberships({ + parent: `projects/${projectId}/locations/${location}`, + }); + console.info(memberships); +} +listMemberships(); + +``` + + + +## Samples + +Samples are in the [`samples/`](https://github.com/googleapis/nodejs-gke-hub/tree/master/samples) directory. Each sample's `README.md` has instructions for running its sample. + +| Sample | Source Code | Try it | +| --------------------------- | --------------------------------- | ------ | +| Quickstart | [source code](https://github.com/googleapis/nodejs-gke-hub/blob/master/samples/quickstart.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/nodejs-gke-hub&page=editor&open_in_editor=samples/quickstart.js,samples/README.md) | + + + +The [GKE Hub 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. + +Client libraries targeting some end-of-life versions of Node.js are available, and +can be installed via npm [dist-tags](https://docs.npmjs.com/cli/dist-tag). +The dist-tags follow the naming convention `legacy-(version)`. + +_Legacy Node.js versions are supported as a best effort:_ + +* Legacy versions will not be tested in continuous integration. +* Some security patches may not be able to be backported. +* Dependencies will not be kept up-to-date, and features will not be backported. + +#### Legacy tags available + +* `legacy-8`: install client libraries from this dist-tag for versions + compatible with Node.js 8. + +## Versioning + +This library follows [Semantic Versioning](http://semver.org/). + + + + + + +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-gke-hub/blob/master/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 template in this +[directory](https://github.com/googleapis/synthtool/tree/master/synthtool/gcp/templates/node_library). + +## License + +Apache Version 2.0 + +See [LICENSE](https://github.com/googleapis/nodejs-gke-hub/blob/master/LICENSE) + +[client-docs]: https://googleapis.dev/nodejs/gke-hub/latest/ +[product-docs]: https://cloud.google.com/anthos/gke +[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=gkehub.googleapis.com +[auth]: https://cloud.google.com/docs/authentication/getting-started diff --git a/packages/google-cloud-gkehub/linkinator.config.json b/packages/google-cloud-gkehub/linkinator.config.json index 0947c2e0e5b..bd5486300a2 100644 --- a/packages/google-cloud-gkehub/linkinator.config.json +++ b/packages/google-cloud-gkehub/linkinator.config.json @@ -1 +1 @@ -{"recurse":true,"skip":["https://codecov.io/gh/googleapis/","www.googleapis.com","img.shields.io"],"silent":true,"concurrency":10} \ No newline at end of file +{"recurse":true,"skip":["https://googleapis.dev/nodejs/gke-hub/latest/", "https://github.com/googleapis/nodejs-gke-hub/blob/master/CHANGELOG.md", "https://codecov.io/gh/googleapis/","www.googleapis.com","img.shields.io"],"silent":true,"concurrency":10} \ No newline at end of file diff --git a/packages/google-cloud-gkehub/package.json b/packages/google-cloud-gkehub/package.json index b007e0c002a..45f438a3fd4 100644 --- a/packages/google-cloud-gkehub/package.json +++ b/packages/google-cloud-gkehub/package.json @@ -2,7 +2,7 @@ "name": "@google-cloud/gke-hub", "version": "0.1.0", "description": "Gkehub client for Node.js", - "repository": "googleapis/nodejs-gkehub", + "repository": "googleapis/nodejs-gke-hub", "license": "Apache-2.0", "author": "Google LLC", "main": "build/src/index.js", diff --git a/packages/google-cloud-gkehub/samples/README.md b/packages/google-cloud-gkehub/samples/README.md new file mode 100644 index 00000000000..76872531cda --- /dev/null +++ b/packages/google-cloud-gkehub/samples/README.md @@ -0,0 +1,50 @@ +[//]: # "This README.md file is auto-generated, all changes to this file will be lost." +[//]: # "To regenerate it, use `python -m synthtool`." +Google Cloud Platform logo + +# [GKE Hub: Node.js Samples](https://github.com/googleapis/nodejs-gke-hub) + +[![Open in Cloud Shell][shell_img]][shell_link] + + + +## Table of Contents + +* [Before you begin](#before-you-begin) +* [Samples](#samples) + * [Quickstart](#quickstart) + +## Before you begin + +Before running the samples, make sure you've followed the steps outlined in +[Using the client library](https://github.com/googleapis/nodejs-gke-hub#using-the-client-library). + +`cd samples` + +`npm install` + +`cd ..` + +## Samples + + + +### Quickstart + +View the [source code](https://github.com/googleapis/nodejs-gke-hub/blob/master/samples/quickstart.js). + +[![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/nodejs-gke-hub&page=editor&open_in_editor=samples/quickstart.js,samples/README.md) + +__Usage:__ + + +`node samples/quickstart.js` + + + + + + +[shell_img]: https://gstatic.com/cloudssh/images/open-btn.png +[shell_link]: https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/nodejs-gke-hub&page=editor&open_in_editor=samples/README.md +[product-docs]: https://cloud.google.com/anthos/gke diff --git a/packages/google-cloud-gkehub/samples/quickstart.js b/packages/google-cloud-gkehub/samples/quickstart.js index 9ea3da2d74b..19082e17617 100644 --- a/packages/google-cloud-gkehub/samples/quickstart.js +++ b/packages/google-cloud-gkehub/samples/quickstart.js @@ -13,31 +13,26 @@ 'use strict'; -async function main() { +async function main(projectId, location) { // [START nodejs_gke_hub_quickstart] - // Imports the Google Cloud client library - // remove this line after package is released - // eslint-disable-next-line node/no-missing-require + // Imports the Google Cloud client library const {GkeHubMembershipServiceClient} = require('@google-cloud/gke-hub'); - // TODO(developer): replace with your prefered project ID. + // TODO(developer): replace with your preferred values. // const projectId = 'my-project' + // const location = 'global' // Creates a client - // eslint-disable-next-line no-unused-vars - const client = new {GkeHubMembershipServiceClient}(); + const client = new GkeHubMembershipServiceClient(); - //TODO(library generator): write the actual function you will be testing - async function doSomething() { - console.log( - 'Developer! Change this code so that it shows how to use the library! See comments below on structure.' - ); - // const [thing] = await client.methodName({ - // }); - // console.info(thing); + async function listMemberships() { + const memberships = await client.listMemberships({ + parent: `projects/${projectId}/locations/${location}`, + }); + console.info(memberships); } - doSomething(); + listMemberships(); // [END nodejs_gke_hub_quickstart] } diff --git a/packages/google-cloud-gkehub/samples/test/quickstart.js b/packages/google-cloud-gkehub/samples/test/quickstart.js index 6b2a72a654e..6ef0a8f1244 100644 --- a/packages/google-cloud-gkehub/samples/test/quickstart.js +++ b/packages/google-cloud-gkehub/samples/test/quickstart.js @@ -20,31 +20,24 @@ const path = require('path'); const cp = require('child_process'); const {before, describe, it} = require('mocha'); -// eslint-disable-next-line node/no-missing-require const {GkeHubMembershipServiceClient} = require('@google-cloud/gke-hub'); -// eslint-disable-next-line no-unused-vars, node/no-missing-require const {assert} = require('chai'); const execSync = cmd => cp.execSync(cmd, {encoding: 'utf-8'}); const cwd = path.join(__dirname, '..'); -const client = new {GkeHubMembershipServiceClient}(); +const client = new GkeHubMembershipServiceClient(); describe('Quickstart', () => { - //TODO: remove this if not using the projectId - // eslint-disable-next-line no-unused-vars let projectId; before(async () => { - // eslint-disable-next-line no-unused-vars projectId = await client.getProjectId(); }); it('should run quickstart', async () => { - //TODO: remove this disability - // eslint-disable-next-line no-unused-vars - const stdout = execSync('node ./quickstart.js', {cwd}); - //assert(stdout, stdout !== null); + const stdout = execSync(`node ./quickstart.js ${projectId} global`, {cwd}); + assert.match(stdout, /\[\]/); }); }); diff --git a/packages/google-cloud-gkehub/synth.metadata b/packages/google-cloud-gkehub/synth.metadata index 27009b8efe6..d60d8afc520 100644 --- a/packages/google-cloud-gkehub/synth.metadata +++ b/packages/google-cloud-gkehub/synth.metadata @@ -3,23 +3,23 @@ { "git": { "name": ".", - "remote": "sso://user/sofialeon/nodejs-gke-hub", - "sha": "b33c6492964f4a243fd1d27249994eefcec8cc27" + "remote": "git@github.com:googleapis/nodejs-gke-hub.git", + "sha": "1a349584f6d2012ef40b5f112a18009757c647ee" } }, { "git": { "name": "googleapis", "remote": "https://github.com/googleapis/googleapis.git", - "sha": "b241bbc1ad920771707fe03e4cedd4e8c492e143", - "internalRef": "350670798" + "sha": "c8bfd324b41ad1f6f65fed124572f92fe116517b", + "internalRef": "351218127" } }, { "git": { "name": "synthtool", "remote": "https://github.com/googleapis/synthtool.git", - "sha": "fb53b6fb373b7c3edf4e55f3e8036bc6d73fa483" + "sha": "16ec872dd898d7de6e1822badfac32484b5d9031" } } ], diff --git a/packages/google-cloud-gkehub/synth.py b/packages/google-cloud-gkehub/synth.py index 14fb445585b..fdf7d776afb 100644 --- a/packages/google-cloud-gkehub/synth.py +++ b/packages/google-cloud-gkehub/synth.py @@ -30,7 +30,7 @@ name, version, bazel_target=f"//google/cloud/gkehub/{version}:gkehub-{version}-nodejs") - s.copy(library, excludes=["package.json","linkinator.config.json", "system-test/fixtures/sample/src/index.js","system-test/fixtures/sample/src/index.ts"]) + s.copy(library, excludes=["package.json","README.md"]) # Copy common templates common_templates = gcp.CommonTemplates() diff --git a/packages/google-cloud-gkehub/system-test/fixtures/sample/src/index.js b/packages/google-cloud-gkehub/system-test/fixtures/sample/src/index.js index 4637fde4d8e..fcb092a9c09 100644 --- a/packages/google-cloud-gkehub/system-test/fixtures/sample/src/index.js +++ b/packages/google-cloud-gkehub/system-test/fixtures/sample/src/index.js @@ -17,7 +17,7 @@ // ** All changes to this file may be overwritten. ** /* eslint-disable node/no-missing-require, no-unused-vars */ -const gkehub = require('@google-cloud/gkehub'); +const gkehub = require('@google-cloud/gke-hub'); function main() { const gkeHubMembershipServiceClient = new gkehub.GkeHubMembershipServiceClient(); diff --git a/packages/google-cloud-gkehub/system-test/fixtures/sample/src/index.ts b/packages/google-cloud-gkehub/system-test/fixtures/sample/src/index.ts index 5926bc56467..62c72edf528 100644 --- a/packages/google-cloud-gkehub/system-test/fixtures/sample/src/index.ts +++ b/packages/google-cloud-gkehub/system-test/fixtures/sample/src/index.ts @@ -16,7 +16,7 @@ // ** https://github.com/googleapis/gapic-generator-typescript ** // ** All changes to this file may be overwritten. ** -import {GkeHubMembershipServiceClient} from '@google-cloud/gkehub'; +import {GkeHubMembershipServiceClient} from '@google-cloud/gke-hub'; // check that the client class type name can be used function doStuffWithGkeHubMembershipServiceClient( From 42734088c6aa849524ad6fe6c5772b77a086e2d9 Mon Sep 17 00:00:00 2001 From: "release-please[bot]" <55107282+release-please[bot]@users.noreply.github.com> Date: Fri, 29 Jan 2021 12:04:45 -0800 Subject: [PATCH 05/92] chore: release 1.0.0 (#1) Co-authored-by: release-please[bot] <55107282+release-please[bot]@users.noreply.github.com> --- packages/google-cloud-gkehub/CHANGELOG.md | 13 +++++++++++++ packages/google-cloud-gkehub/package.json | 2 +- packages/google-cloud-gkehub/samples/package.json | 2 +- 3 files changed, 15 insertions(+), 2 deletions(-) create mode 100644 packages/google-cloud-gkehub/CHANGELOG.md diff --git a/packages/google-cloud-gkehub/CHANGELOG.md b/packages/google-cloud-gkehub/CHANGELOG.md new file mode 100644 index 00000000000..d4d421ccfbe --- /dev/null +++ b/packages/google-cloud-gkehub/CHANGELOG.md @@ -0,0 +1,13 @@ +# Changelog + +## 1.0.0 (2021-01-26) + + +### ⚠ BREAKING CHANGES + +* initial stub of library + +### Features + +* add tests and samples to library ([#2](https://www.github.com/googleapis/nodejs-gke-hub/issues/2)) ([6f4ab1f](https://www.github.com/googleapis/nodejs-gke-hub/commit/6f4ab1ffe019d2ce0be5253b600fc10b40ca0362)) +* initial stub of library ([1a34958](https://www.github.com/googleapis/nodejs-gke-hub/commit/1a349584f6d2012ef40b5f112a18009757c647ee)) diff --git a/packages/google-cloud-gkehub/package.json b/packages/google-cloud-gkehub/package.json index 45f438a3fd4..0007212e3bc 100644 --- a/packages/google-cloud-gkehub/package.json +++ b/packages/google-cloud-gkehub/package.json @@ -1,6 +1,6 @@ { "name": "@google-cloud/gke-hub", - "version": "0.1.0", + "version": "1.0.0", "description": "Gkehub client for Node.js", "repository": "googleapis/nodejs-gke-hub", "license": "Apache-2.0", diff --git a/packages/google-cloud-gkehub/samples/package.json b/packages/google-cloud-gkehub/samples/package.json index 6ebbc1b84e0..7014c08cef6 100644 --- a/packages/google-cloud-gkehub/samples/package.json +++ b/packages/google-cloud-gkehub/samples/package.json @@ -13,7 +13,7 @@ "test": "c8 mocha --timeout 600000 test/*.js" }, "dependencies": { - "@google-cloud/gke-hub": "^0.1.0" + "@google-cloud/gke-hub": "^1.0.0" }, "devDependencies": { "c8": "^7.1.0", From ed1e7d3e7f96bf81d536982b7538ce802ea26ba4 Mon Sep 17 00:00:00 2001 From: Yoshi Automation Bot Date: Mon, 8 Feb 2021 09:28:40 -0800 Subject: [PATCH 06/92] fix(build): correct package name for docs (#9) Source-Author: Google APIs Source-Date: Thu Feb 4 20:12:18 2021 -0800 Source-Repo: googleapis/googleapis Source-Sha: 2502e8e92c798660ccb51ab2d7ce65818412b530 Source-Link: https://github.com/googleapis/googleapis/commit/2502e8e92c798660ccb51ab2d7ce65818412b530 --- packages/google-cloud-gkehub/.jsdoc.js | 2 +- .../linkinator.config.json | 11 +- .../cloud/gkehub/v1beta1/membership.proto | 408 +++++++++--------- .../google-cloud-gkehub/protos/protos.d.ts | 3 +- packages/google-cloud-gkehub/protos/protos.js | 7 + .../google-cloud-gkehub/protos/protos.json | 10 +- .../src/v1beta1/gapic_metadata.json | 2 +- .../gke_hub_membership_service_client.ts | 188 ++++---- packages/google-cloud-gkehub/synth.metadata | 8 +- 9 files changed, 326 insertions(+), 313 deletions(-) diff --git a/packages/google-cloud-gkehub/.jsdoc.js b/packages/google-cloud-gkehub/.jsdoc.js index bc12a9d7e63..d1484d98112 100644 --- a/packages/google-cloud-gkehub/.jsdoc.js +++ b/packages/google-cloud-gkehub/.jsdoc.js @@ -43,7 +43,7 @@ module.exports = { copyright: 'Copyright 2021 Google LLC', includeDate: false, sourceFiles: false, - systemName: '@google-cloud/gkehub', + systemName: '@google-cloud/gke-hub', theme: 'lumen', default: { outputSourceFiles: false diff --git a/packages/google-cloud-gkehub/linkinator.config.json b/packages/google-cloud-gkehub/linkinator.config.json index bd5486300a2..29a223b6db6 100644 --- a/packages/google-cloud-gkehub/linkinator.config.json +++ b/packages/google-cloud-gkehub/linkinator.config.json @@ -1 +1,10 @@ -{"recurse":true,"skip":["https://googleapis.dev/nodejs/gke-hub/latest/", "https://github.com/googleapis/nodejs-gke-hub/blob/master/CHANGELOG.md", "https://codecov.io/gh/googleapis/","www.googleapis.com","img.shields.io"],"silent":true,"concurrency":10} \ No newline at end of file +{ + "recurse": true, + "skip": [ + "https://codecov.io/gh/googleapis/", + "www.googleapis.com", + "img.shields.io" + ], + "silent": true, + "concurrency": 10 +} diff --git a/packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1beta1/membership.proto b/packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1beta1/membership.proto index 9830dd35953..484fae3c13b 100644 --- a/packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1beta1/membership.proto +++ b/packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1beta1/membership.proto @@ -25,9 +25,12 @@ import "google/protobuf/field_mask.proto"; import "google/protobuf/timestamp.proto"; import "google/rpc/status.proto"; +option csharp_namespace = "Google.Cloud.GkeHub.V1Beta1"; option go_package = "google.golang.org/genproto/googleapis/cloud/gkehub/v1beta1;gkehub"; option java_multiple_files = true; option java_package = "com.google.cloud.gkehub.v1beta1"; +option php_namespace = "Google\\Cloud\\GkeHub\\V1beta1"; +option ruby_package = "Google::Cloud::GkeHub::V1beta1"; // GKE Hub CRUD API for the Membership resource. // The Membership service is currently only available in the global location. @@ -43,7 +46,7 @@ service GkeHubMembershipService { option (google.api.method_signature) = "parent"; } - // Gets details of a single Membership. + // Gets the details of a Membership. rpc GetMembership(GetMembershipRequest) returns (Membership) { option (google.api.http) = { get: "/v1beta1/{name=projects/*/locations/*/memberships/*}" @@ -64,7 +67,7 @@ service GkeHubMembershipService { }; } - // Removes a single Membership. + // Removes a Membership. rpc DeleteMembership(DeleteMembershipRequest) returns (google.longrunning.Operation) { option (google.api.http) = { delete: "/v1beta1/{name=projects/*/locations/*/memberships/*}" @@ -89,7 +92,7 @@ service GkeHubMembershipService { }; } - // Generate the manifest for deployment of GKE connect agent. + // Generates the manifest for deployment of the GKE connect agent. rpc GenerateConnectManifest(GenerateConnectManifestRequest) returns (GenerateConnectManifestResponse) { option (google.api.http) = { get: "/v1beta1/{name=projects/*/locations/*/memberships/*}:generateConnectManifest" @@ -106,12 +109,13 @@ service GkeHubMembershipService { // GenerateExclusivityManifest generates the manifests to update the // exclusivity artifacts in the cluster if needed. - // Exclusivity artifacts include the membership customer resource definition - // (CRD) and the singleton membership custom resource (CR). - // Combined with ValidateExclusivity, exclusivity - // artifacts guarantee that a Kubernetes cluster is only registered to - // a single GKE Hub. - // The membership CRD is versioned, and may require conversion when the GKE + // + // Exclusivity artifacts include the Membership custom resource definition + // (CRD) and the singleton Membership custom resource (CR). Combined with + // ValidateExclusivity, exclusivity artifacts guarantee that a Kubernetes + // cluster is only registered to a single GKE Hub. + // + // The Membership CRD is versioned, and may require conversion when the GKE // Hub API server begins serving a newer version of the CRD and // corresponding CR. The response will be the converted CRD and CR if there // are any differences between the versions. @@ -129,45 +133,43 @@ message Membership { pattern: "projects/{project}/locations/{location}/memberships/{membership}" }; - // Specifies the infrastructure type that the API server represented by - // membership is running on. We use this field to determine pricing among - // other behavior. Each GKE distribution (on-GCP, on-Prem, on-X,...) - // will set a default while Attached Clusters - // customers will specify the type. If left unset, UNSPECIFIED is the - // default. + // Specifies the infrastructure type of a Membership. Infrastructure type is + // used by Hub to control infrastructure-specific behavior, including pricing. + // + // Each GKE distribution (on-GCP, on-Prem, on-X,...) will set this field + // automatically, but Attached Clusters customers should specify a type + // during registration. enum InfrastructureType { - // Default value for backward compatibility. Some Hub functionality may - // require users to set this value if left unspecified. + // No type was specified. Some Hub functionality may require a type be + // specified, and will not support Memberships with this value. INFRASTRUCTURE_TYPE_UNSPECIFIED = 0; - // OnPrem specifies Memberships running on infrastructure that is owned or - // operated by customers on private infrastructure. GKE Distributions like - // GKE-OnPrem and GKE-OnBareMetal will set this value at Membership creation - // time by default. + // Private infrastructure that is owned or operated by customer. This + // includes GKE distributions such as GKE-OnPrem and GKE-OnBareMetal. ON_PREM = 1; - // This value indicates the membership is running on public cloud - // infrastructure. + // Public cloud infrastructure. MULTI_CLOUD = 2; } - // Output only. The unique name of this domain resource in the format: - // `projects/[project_id]/locations/global/memberships/[membership_id]`. - // `membership_id` can only be set at creation time using the `membership_id` - // field in the creation request. `membership_id` must be a valid RFC 1123 - // compliant DNS label. In particular, it must be: + // Output only. The full, unique name of this Membership resource in the format + // `projects/*/locations/*/memberships/{membership_id}`, set during creation. + // + // `membership_id` must be a valid RFC 1123 compliant DNS label: + // // 1. At most 63 characters in length // 2. It must consist of lower case alphanumeric characters or `-` // 3. It must start and end with an alphanumeric character - // I.e. `membership_id` must match the regex: `[a-z0-9]([-a-z0-9]*[a-z0-9])?` - // with at most 63 characters. + // + // Which can be expressed as the regex: `[a-z0-9]([-a-z0-9]*[a-z0-9])?`, + // with a maximum length of 63 characters. string name = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; // Optional. GCP labels for this membership. map labels = 2 [(google.api.field_behavior) = OPTIONAL]; // Required. Description of this membership, limited to 63 characters. - // It must match the regex: `[a-zA-Z0-9][a-zA-Z0-9_\-\.\ ]*` + // Must match the regex: `[a-zA-Z0-9][a-zA-Z0-9_\-\.\ ]*` string description = 3 [(google.api.field_behavior) = REQUIRED]; // Type of resource represented by this Membership @@ -180,24 +182,27 @@ message Membership { MembershipState state = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; // Optional. How to identify workloads from this Membership. - // See the documentation on workload identity for more details: + // See the documentation on Workload Identity for more details: // https://cloud.google.com/kubernetes-engine/docs/how-to/workload-identity Authority authority = 9 [(google.api.field_behavior) = OPTIONAL]; - // Output only. Timestamp for when the Membership was created. + // Output only. When the Membership was created. google.protobuf.Timestamp create_time = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; - // Output only. Timestamp for when the Membership was last updated. + // Output only. When the Membership was last updated. google.protobuf.Timestamp update_time = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; - // Output only. Timestamp for when the Membership was deleted. + // Output only. When the Membership was deleted. google.protobuf.Timestamp delete_time = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; // Optional. An externally-generated and managed ID for this Membership. This ID may - // still be modified after creation but it is not recommended to do so. + // be modified after creation, but this is not recommended. For GKE clusters, + // external_id is managed by the Hub API and updates will be ignored. + // // The ID must match the regex: `[a-zA-Z0-9][a-zA-Z0-9_\-\.]*` + // // If this Membership represents a Kubernetes cluster, this value should be - // set to the UUID of the kube-system namespace object. + // set to the UID of the `kube-system` namespace object. string external_id = 10 [(google.api.field_behavior) = OPTIONAL]; // Output only. For clusters using Connect, the timestamp of the most recent connection @@ -211,128 +216,114 @@ message Membership { // resource with the same name is created, it gets a different unique_id. string unique_id = 12 [(google.api.field_behavior) = OUTPUT_ONLY]; - // Optional. Specifies the infrastructure type that the API server represented by - // membership is running on. + // Optional. The infrastructure type this Membership is running on. InfrastructureType infrastructure_type = 13 [(google.api.field_behavior) = OPTIONAL]; } -// MembershipEndpoint contains the information to reach a member. +// MembershipEndpoint contains information needed to contact a Kubernetes API, +// endpoint and any additional Kubernetes metadata. message MembershipEndpoint { - // Optional. If this Membership is a Kubernetes API server hosted on GKE, this field - // will be populated and contain GKE-specific information. + // Optional. GKE-specific information. Only present if this Membership is a GKE cluster. GkeCluster gke_cluster = 4 [(google.api.field_behavior) = OPTIONAL]; - // Output only. For Memberships that point to Kubernetes Endpoints, this field provides - // useful metadata. + // Output only. Useful Kubernetes-specific metadata. KubernetesMetadata kubernetes_metadata = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; - // Optional. A correctly registered cluster should have the Kubernetes resources - // applied to the clusters and settle at steady states. These resources are - // needed in order to: - // * Ensure that the cluster is exclusively registered to one and only one Hub - // Membership. - // * Propagate Workload Pool Information available in the Membership Authority - // field. - // * Ensure proper initial configuration of default Hub Features. + // Optional. The in-cluster Kubernetes Resources that should be applied for a correctly + // registered cluster, in the steady state. These resources: + // + // * Ensure that the cluster is exclusively registered to one and only one + // Hub Membership. + // * Propagate Workload Pool Information available in the Membership + // Authority field. + // * Ensure proper initial configuration of default Hub Features. KubernetesResource kubernetes_resource = 6 [(google.api.field_behavior) = OPTIONAL]; } -// KubernetesResource contains the YAML manifests and configs for Kubernetes -// resources of the Membership in the cluster. -// Upon CreateMembership: -// - The caller should provide membership_cr_manifest if a Membership CR -// exists in the cluster. -// - The caller should provide connect_version if they wish to also install -// the Connect agent. -// - The caller should then apply resources from the successful -// GetMembership request. -// Upon UpdateMembership: -// - The caller should provide membership_cr_manifest if a Membership CR -// exists in the cluster. -// - The caller should re-apply the resources from the returned Membership. +// KubernetesResource contains the YAML manifests and configuration for +// Membership Kubernetes resources in the cluster. After CreateMembership or +// UpdateMembership, these resources should be re-applied in the cluster. message KubernetesResource { - // Input only. The YAML representation of the Membership CR if already exists in the - // cluster. Leave empty if no Membership CR exists. - // The CR manifest will be used to validate that the cluster has not been - // registered with another Membership. For GKE clusters, the input from the - // caller will be ignored as Hub API server will directly fetch the - // Membership CR from the cluster. + // Input only. The YAML representation of the Membership CR. This field is ignored for GKE + // clusters where Hub can read the CR directly. + // + // Callers should provide the CR that is currently present in the cluster + // during CreateMembership or UpdateMembership, or leave this field empty if + // none exists. The CR manifest is used to validate the cluster has not been + // registered with another Membership. string membership_cr_manifest = 1 [(google.api.field_behavior) = INPUT_ONLY]; - // Output only. The additional Kubernetes resources that need to be applied to the cluster - // after the membership creation and every update. - // This field is only populated in the Membership returned after the - // long-running operation of Create/UpdateMembership finished, but not in - // standalone Get/ListMembership requests. - // To get the resource manifest after the initial registration, the caller - // could make an UpdateMembership call with an empty field mask. + // Output only. Additional Kubernetes resources that need to be applied to the cluster + // after Membership creation, and after every update. + // + // This field is only populated in the Membership returned from a successful + // long-running operation from CreateMembership or UpdateMembership. It is not + // populated during normal GetMembership or ListMemberships requests. To get + // the resource manifest after the initial registration, the caller should + // make a UpdateMembership call with an empty field mask. repeated ResourceManifest membership_resources = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; - // Output only. The Kubernetes resources for installing GKE Connect agent. - // This field is only populated in the Membership returned after the - // long-running operation of Create/UpdateMembership finished, but not in - // standalone Get/ListMembership requests. - // To get the resource manifest after the initial registration, the caller - // could make an UpdateMembership call with an empty field mask. + // Output only. The Kubernetes resources for installing the GKE Connect agent + // + // This field is only populated in the Membership returned from a successful + // long-running operation from CreateMembership or UpdateMembership. It is not + // populated during normal GetMembership or ListMemberships requests. To get + // the resource manifest after the initial registration, the caller should + // make a UpdateMembership call with an empty field mask. repeated ResourceManifest connect_resources = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; - // Optional. The options to generate Kubernetes resources other than the default - // value supplied by the Hub API. - // Empty or unset fields will use the default value. + // Optional. Options for Kubernetes resource generation. ResourceOptions resource_options = 4 [(google.api.field_behavior) = OPTIONAL]; } -// ResourceOptions represents the supported options for generating the -// Kubernetes resources. +// ResourceOptions represent options for Kubernetes resource generation. message ResourceOptions { - // Optional. The connect version to generate for connect_resources. If unset, default - // to the latest GKE Connect version. - // If set to a specific Connect version, the Connect resources of the - // version will be generated. If the version does not exist or is already - // out of support window, an INVALID_ARGUMENT error will be returned. + // Optional. The Connect agent version to use for connect_resources. Defaults to the + // latest GKE Connect version. The version must be a currently supported + // version, obsolete versions will be rejected. string connect_version = 1 [(google.api.field_behavior) = OPTIONAL]; - // Optional. Use apiextensions/v1beta1 instead of apiextensions/v1 for - // CustomResourceDefinition resource. - // This option should be set for clusters with Kubernetes apiserver version + // Optional. Use `apiextensions/v1beta1` instead of `apiextensions/v1` for + // CustomResourceDefinition resources. + // This option should be set for clusters with Kubernetes apiserver versions // <1.16. bool v1beta1_crd = 2 [(google.api.field_behavior) = OPTIONAL]; } -// ResourceManifest represents a Kubernetes resource to be applied to +// ResourceManifest represents a single Kubernetes resource to be applied to // the cluster. message ResourceManifest { // YAML manifest of the resource. string manifest = 1; - // Specifies whether the resource provided in the manifest is cluster_scoped. - // If set to false, the assumption is that it is namespace scoped. - // This field is used for default REST mapper when applying the resource - // to a cluster. + // Whether the resource provided in the manifest is `cluster_scoped`. + // If unset, the manifest is assumed to be namespace scoped. + // + // This field is used for REST mapping when applying the resource in a + // cluster. bool cluster_scoped = 2; } -// GkeCluster represents a k8s cluster on GKE. +// GkeCluster contains information specific to GKE clusters. message GkeCluster { - // Immutable. Self-link of the GCP resource for the GKE cluster. - // For example: - // //container.googleapis.com/projects/my-project/locations/us-west1-a/clusters/my-cluster - // Using "zones" instead of "locations" is also valid. - // It can be at the most 1000 characters in length. + // Immutable. Self-link of the GCP resource for the GKE cluster. For example: + // + // //container.googleapis.com/projects/my-project/locations/us-west1-a/clusters/my-cluster + // + // Zonal clusters are also supported. string resource_link = 1 [(google.api.field_behavior) = IMMUTABLE]; } // KubernetesMetadata provides informational metadata for Memberships -// that are created from Kubernetes Endpoints (currently, these are equivalent -// to Kubernetes clusters). +// representing Kubernetes clusters. message KubernetesMetadata { // Output only. Kubernetes API server version string as reported by '/version'. string kubernetes_api_server_version = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; // Output only. Node providerID as reported by the first node in the list of nodes on - // the Kubernetes endpoint. It should be noted that some Kubernetes platforms - // (like GKE-on-GCP) support zero-node clusters. For these platforms, the - // node_count will be zero and the node_provider_id will be empty. + // the Kubernetes endpoint. On Kubernetes platforms that support zero-node + // clusters (like GKE-on-GCP), the node_count will be zero and the + // node_provider_id will be empty. string node_provider_id = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; // Output only. Node count as reported by Kubernetes nodes resources. @@ -352,75 +343,72 @@ message KubernetesMetadata { } // Authority encodes how Google will recognize identities from this Membership. -// A workload with a token from this oidc_issuer can call the IAM credentials -// API for the provided identity_namespace and identity_provider; the workload -// will receive a Google OAuth token that it can use for further API calls. // See the workload identity documentation for more details: // https://cloud.google.com/kubernetes-engine/docs/how-to/workload-identity message Authority { - // Optional. A JWT issuer URI. - // If set, then Google will attempt OIDC discovery on this URI, and allow - // valid OIDC tokens from this issuer to authenticate within the below - // identity namespace. + // Optional. A JSON Web Token (JWT) issuer URI. `issuer` must start with `https://` and + // be a valid URL with length <2000 characters. + // + // If set, then Google will allow valid OIDC tokens from this issuer to + // authenticate within the workload_identity_pool. OIDC discovery will be + // performed on this URI to validate tokens from the issuer. // - // This can be updated from a non-empty to empty value and vice-versa. - // But cannot be changed from one non-empty value to another. - // Setting to empty will disable Workload Identity. issuer should be a valid - // URL of length < 2000 that can be parsed, and must start with https://. + // Clearing `issuer` disables Workload Identity. `issuer` cannot be directly + // modified; it must be cleared (and Workload Identity disabled) before using + // a new issuer (and re-enabling Workload Identity). string issuer = 1 [(google.api.field_behavior) = OPTIONAL]; - // Output only. The name of the workload identity pool in which the above issuer will be - // recognized. There is a single Workload Identity Pool per Hub that is shared - // between all Memberships that belong to this Hub. For a Hub hosted in - // {PROJECT_ID}, the workload pool format is {PROJECT_ID}.hub.id.goog, + // Output only. The name of the workload identity pool in which `issuer` will be + // recognized. + // + // There is a single Workload Identity Pool per Hub that is shared + // between all Memberships that belong to that Hub. For a Hub hosted in + // {PROJECT_ID}, the workload pool format is `{PROJECT_ID}.hub.id.goog`, // although this is subject to change in newer versions of this API. string workload_identity_pool = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; - // Output only. An identity provider that reflects this issuer in the workload identity + // Output only. An identity provider that reflects the `issuer` in the workload identity // pool. string identity_provider = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; } // State of the Membership resource. message MembershipState { - // Possible states of a Membership resources. + // Code describes the state of a Membership resource. enum Code { - // Not set. + // The code is not set. CODE_UNSPECIFIED = 0; - // CREATING indicates the cluster is being registered. + // The cluster is being registered. CREATING = 1; - // READY indicates the cluster is registered. + // The cluster is registered. READY = 2; - // DELETING indicates that the cluster is being unregistered. + // The cluster is being unregistered. DELETING = 3; - // UPDATING indicates the Membership is being updated. + // The Membership is being updated. UPDATING = 4; - // SERVICE_UPDATING indicates the Membership is being updated by - // the Hub Service. + // The Membership is being updated by the Hub Service. SERVICE_UPDATING = 5; } - // Output only. Code indicating the state of the Membership resource. + // Output only. The current state of the Membership resource. Code code = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; - // Human readable description of the issue. - // This field is deprecated, and is never set by the Hub Service. + // This field is never set by the Hub Service. string description = 2 [deprecated = true]; - // The last update time of this state by the controllers - // This field is deprecated, and is never set by the Hub Service. + // This field is never set by the Hub Service. google.protobuf.Timestamp update_time = 3 [deprecated = true]; } // Request message for `GkeHubMembershipService.ListMemberships` method. message ListMembershipsRequest { - // Required. The parent in whose context the memberships are listed. The parent value - // is in the format: `projects/[project_id]/locations/global`. + // Required. The parent (project and location) where the Memberships will be listed. + // Specified in the format `projects/*/locations/*`. string parent = 1 [(google.api.field_behavior) = REQUIRED]; // Optional. When requesting a 'page' of resources, `page_size` specifies number of @@ -433,36 +421,36 @@ message ListMembershipsRequest { // resources. string page_token = 3 [(google.api.field_behavior) = OPTIONAL]; - // Optional. Lists the Memberships that match the filter expression. A filter expression - // filters the resources listed in the response. The expression must be of - // the form ` ` where operators: `<`, `>`, `<=`, - // `>=`, - // `!=`, `=`, `:` are supported (colon `:` represents a HAS operator which is - // roughly synonymous with equality). can refer to a proto or JSON - // field, or a synthetic field. Field names can be camelCase or snake_case. + // Optional. Lists Memberships that match the filter expression, following the syntax + // outlined in https://google.aip.dev/160. // // Examples: - // - Filter by name: - // name = "projects/foo-proj/locations/global/membership/bar // - // - Filter by labels: - // - Resources that have a key called `foo` - // labels.foo:* - // - Resources that have a key called `foo` whose value is `bar` - // labels.foo = bar + // - Name is `bar` in project `foo-proj` and location `global`: + // + // name = "projects/foo-proj/locations/global/membership/bar" + // + // - Memberships that have a label called `foo`: + // + // labels.foo:* // - // - Filter by state: - // - Members in CREATING state. - // state = CREATING + // - Memberships that have a label called `foo` whose value is `bar`: + // + // labels.foo = bar + // + // - Memberships in the CREATING state: + // + // state = CREATING string filter = 4 [(google.api.field_behavior) = OPTIONAL]; - // Optional. Field to use to sort the list. + // Optional. One or more fields to compare and use to sort the output. + // See https://google.aip.dev/132#ordering. string order_by = 5 [(google.api.field_behavior) = OPTIONAL]; } // Response message for the `GkeHubMembershipService.ListMemberships` method. message ListMembershipsResponse { - // The list of Memberships contained within the parent. + // The list of matching Memberships. repeated Membership resources = 1; // A token to request the next page of resources from the @@ -476,34 +464,36 @@ message ListMembershipsResponse { // Request message for `GkeHubMembershipService.GetMembership` method. message GetMembershipRequest { - // Required. The Membership resource name in the format: - // `projects/[project_id]/locations/global/memberships/[membership_id]` + // Required. The Membership resource name in the format + // `projects/*/locations/*/memberships/*`. string name = 1 [(google.api.field_behavior) = REQUIRED]; } // Request message for the `GkeHubMembershipService.CreateMembership` method. message CreateMembershipRequest { - // Required. The parent in whose context the membership is created. The parent value is - // in the format: `projects/[project_id]/locations/global`. + // Required. The parent (project and location) where the Memberships will be created. + // Specified in the format `projects/*/locations/*`. string parent = 1 [(google.api.field_behavior) = REQUIRED]; - // Required. Client chosen ID for the membership. The ID must be a valid RFC 1123 - // compliant DNS label. In particular, the ID must be: + // Required. Client chosen ID for the membership. `membership_id` must be a valid RFC + // 1123 compliant DNS label: + // // 1. At most 63 characters in length // 2. It must consist of lower case alphanumeric characters or `-` // 3. It must start and end with an alphanumeric character - // I.e. ID must match the regex: `[a-z0-9]([-a-z0-9]*[a-z0-9])?` with at most - // 63 characters. + // + // Which can be expressed as the regex: `[a-z0-9]([-a-z0-9]*[a-z0-9])?`, + // with a maximum length of 63 characters. string membership_id = 2 [(google.api.field_behavior) = REQUIRED]; - // Required. The resource to add. + // Required. The membership to create. Membership resource = 3 [(google.api.field_behavior) = REQUIRED]; } // Request message for `GkeHubMembershipService.DeleteMembership` method. message DeleteMembershipRequest { - // Required. The membership resource name in the format: - // `projects/[project_id]/locations/global/memberships/[membership_id]` + // Required. The Membership resource name in the format + // `projects/*/locations/*/memberships/*`. string name = 1 [(google.api.field_behavior) = REQUIRED]; } @@ -528,25 +518,23 @@ message UpdateMembershipRequest { // Request message for `GkeHubMembershipService.GenerateConnectManifest` // method. -// Bes ure to follow the practice in go/gkeconnect_agent_manifest before -// making changes to the proto. +// . message GenerateConnectManifestRequest { - // Required. The membership resource the connect agent is associated with. - // `projects/[project_id]/locations/global/memberships/[membership_id]`. + // Required. The Membership resource name the Agent will associate with, in the format + // `projects/*/locations/*/memberships/*`. string name = 1 [(google.api.field_behavior) = REQUIRED]; // Optional. The connect agent to generate manifest for. ConnectAgent connect_agent = 2 [(google.api.field_behavior) = OPTIONAL]; - // Optional. The version to use for connect agent. - // If empty, the current default version will be used. + // Optional. The Connect agent version to use. Defaults to the most current version. string version = 3 [(google.api.field_behavior) = OPTIONAL]; // Optional. If true, generate the resources for upgrade only. Some resources - // (e.g. secrets) generated for installation will be excluded. + // generated only for installation (e.g. secrets) will be excluded. bool is_upgrade = 4 [(google.api.field_behavior) = OPTIONAL]; - // Optional. The registry to fetch connect agent image; default to + // Optional. The registry to fetch the connect agent image from. Defaults to // gcr.io/gkeconnect. string registry = 5 [(google.api.field_behavior) = OPTIONAL]; @@ -554,16 +542,16 @@ message GenerateConnectManifestRequest { bytes image_pull_secret_content = 6 [(google.api.field_behavior) = OPTIONAL]; } -// Response message for `GkeHubService.GenerateConnectManifest` -// method. +// GenerateConnectManifestResponse contains manifest information for +// installing/upgrading a Connect agent. message GenerateConnectManifestResponse { // The ordered list of Kubernetes resources that need to be applied to the // cluster for GKE Connect agent installation/upgrade. repeated ConnectAgentResource manifest = 1; } -// ConnectAgentResource represents a Kubernetes resource manifest for connect -// agent deployment. +// ConnectAgentResource represents a Kubernetes resource manifest for Connect +// Agent deployment. message ConnectAgentResource { // Kubernetes type of the resource. TypeMeta type = 1; @@ -572,7 +560,7 @@ message ConnectAgentResource { string manifest = 2; } -// TypeMeta is the type information needed for content unmarshalling of the +// TypeMeta is the type information needed for content unmarshalling of // Kubernetes resources in the manifest. message TypeMeta { // Kind of the resource (e.g. Deployment). @@ -584,51 +572,55 @@ message TypeMeta { // The information required from end users to use GKE Connect. message ConnectAgent { - // Optional. Deprecated. Do not set. - string name = 1 [(google.api.field_behavior) = OPTIONAL]; - - // Optional. URI of the proxy to reach gkeconnect.googleapis.com. - // The format must be in the form http(s)://{proxy_address}, - // depends on HTTP/HTTPS protocol supported by the proxy. This will direct - // connect agent's outbound traffic through a HTTP(S) proxy. + // Do not set. + string name = 1 [deprecated = true]; + + // Optional. URI of a proxy if connectivity from the agent to gkeconnect.googleapis.com + // requires the use of a proxy. Format must be in the form + // `http(s)://{proxy_address}`, depending on the HTTP/HTTPS protocol + // supported by the proxy. This will direct the connect agent's outbound + // traffic through a HTTP(S) proxy. bytes proxy = 2 [(google.api.field_behavior) = OPTIONAL]; - // Optional. Namespace for GKE Connect agent resources. If empty, uses 'gke-connect'. + // Optional. Namespace for GKE Connect agent resources. Defaults to `gke-connect`. + // + // The Connect Agent is authorized automatically when run in the default + // namespace. Otherwise, explicit authorization must be granted with an + // additional IAM binding. string namespace = 3 [(google.api.field_behavior) = OPTIONAL]; } // The request to validate the existing state of the membership CR in the // cluster. message ValidateExclusivityRequest { - // Required. The desired parent collection of the membership to be created in the - // format: - // `projects/[project_id]/locations/global`. + // Required. The parent (project and location) where the Memberships will be created. + // Specified in the format `projects/*/locations/*`. string parent = 1 [(google.api.field_behavior) = REQUIRED]; // Optional. The YAML of the membership CR in the cluster. Empty if the membership // CR does not exist. string cr_manifest = 2 [(google.api.field_behavior) = OPTIONAL]; - // Required. The membership name under the "name" that could be created if the - // validation succeed. The method only does validation in anticipation - // of a CreateMembership call. + // Required. The intended membership name under the `parent`. This method only does + // validation in anticipation of a CreateMembership call with the same name. string intended_membership = 3 [(google.api.field_behavior) = REQUIRED]; } // The response of exclusivity artifacts validation result status. message ValidateExclusivityResponse { - // The status.Code contains the validation result. As such, - // * OK means that exclusivity may be obtained if the manifest produced by - // GenerateExclusivityManifest can successfully be applied. - // * ALREADY_EXISTS means that the Membership CRD is already owned by another - // Hub. See status.message for more information when this occurs. + // The validation result. + // + // * `OK` means that exclusivity is validated, assuming the manifest produced + // by GenerateExclusivityManifest is successfully applied. + // * `ALREADY_EXISTS` means that the Membership CRD is already owned by + // another Hub. See `status.message` for more information. google.rpc.Status status = 1; } // The request to generate the manifests for exclusivity artifacts. message GenerateExclusivityManifestRequest { - // Required. The membership the cluster corresponds to in the format: - // `projects/[project_id]/locations/global/memberships/[membership_id]`. + // Required. The Membership resource name in the format + // `projects/*/locations/*/memberships/*`. string name = 1 [(google.api.field_behavior) = REQUIRED]; // Optional. The YAML manifest of the membership CRD retrieved by diff --git a/packages/google-cloud-gkehub/protos/protos.d.ts b/packages/google-cloud-gkehub/protos/protos.d.ts index f6b5d325770..e6e8f6563f9 100644 --- a/packages/google-cloud-gkehub/protos/protos.d.ts +++ b/packages/google-cloud-gkehub/protos/protos.d.ts @@ -3194,7 +3194,8 @@ export namespace google { REQUIRED = 2, OUTPUT_ONLY = 3, INPUT_ONLY = 4, - IMMUTABLE = 5 + IMMUTABLE = 5, + UNORDERED_LIST = 6 } /** Properties of a ResourceDescriptor. */ diff --git a/packages/google-cloud-gkehub/protos/protos.js b/packages/google-cloud-gkehub/protos/protos.js index 4496f97b0a6..2f10caa8bd5 100644 --- a/packages/google-cloud-gkehub/protos/protos.js +++ b/packages/google-cloud-gkehub/protos/protos.js @@ -7639,6 +7639,7 @@ * @property {number} OUTPUT_ONLY=3 OUTPUT_ONLY value * @property {number} INPUT_ONLY=4 INPUT_ONLY value * @property {number} IMMUTABLE=5 IMMUTABLE value + * @property {number} UNORDERED_LIST=6 UNORDERED_LIST value */ api.FieldBehavior = (function() { var valuesById = {}, values = Object.create(valuesById); @@ -7648,6 +7649,7 @@ values[valuesById[3] = "OUTPUT_ONLY"] = 3; values[valuesById[4] = "INPUT_ONLY"] = 4; values[valuesById[5] = "IMMUTABLE"] = 5; + values[valuesById[6] = "UNORDERED_LIST"] = 6; return values; })(); @@ -13815,6 +13817,7 @@ case 3: case 4: case 5: + case 6: break; } } @@ -13915,6 +13918,10 @@ case 5: message[".google.api.fieldBehavior"][i] = 5; break; + case "UNORDERED_LIST": + case 6: + message[".google.api.fieldBehavior"][i] = 6; + break; } } if (object[".google.api.resourceReference"] != null) { diff --git a/packages/google-cloud-gkehub/protos/protos.json b/packages/google-cloud-gkehub/protos/protos.json index 33c20cdca21..1a08021bc73 100644 --- a/packages/google-cloud-gkehub/protos/protos.json +++ b/packages/google-cloud-gkehub/protos/protos.json @@ -8,9 +8,12 @@ "nested": { "v1beta1": { "options": { + "csharp_namespace": "Google.Cloud.GkeHub.V1Beta1", "go_package": "google.golang.org/genproto/googleapis/cloud/gkehub/v1beta1;gkehub", "java_multiple_files": true, - "java_package": "com.google.cloud.gkehub.v1beta1" + "java_package": "com.google.cloud.gkehub.v1beta1", + "php_namespace": "Google\\Cloud\\GkeHub\\V1beta1", + "ruby_package": "Google::Cloud::GkeHub::V1beta1" }, "nested": { "GkeHubMembershipService": { @@ -719,7 +722,7 @@ "type": "string", "id": 1, "options": { - "(google.api.field_behavior)": "OPTIONAL" + "deprecated": true } }, "proxy": { @@ -993,7 +996,8 @@ "REQUIRED": 2, "OUTPUT_ONLY": 3, "INPUT_ONLY": 4, - "IMMUTABLE": 5 + "IMMUTABLE": 5, + "UNORDERED_LIST": 6 } }, "resourceReference": { diff --git a/packages/google-cloud-gkehub/src/v1beta1/gapic_metadata.json b/packages/google-cloud-gkehub/src/v1beta1/gapic_metadata.json index b3c0b22a962..71bee1bd2c8 100644 --- a/packages/google-cloud-gkehub/src/v1beta1/gapic_metadata.json +++ b/packages/google-cloud-gkehub/src/v1beta1/gapic_metadata.json @@ -3,7 +3,7 @@ "comment": "This file maps proto services/RPCs to the corresponding library clients/methods", "language": "typescript", "protoPackage": "google.cloud.gkehub.v1beta1", - "libraryPackage": "@google-cloud/gkehub", + "libraryPackage": "@google-cloud/gke-hub", "services": { "GkeHubMembershipService": { "clients": { diff --git a/packages/google-cloud-gkehub/src/v1beta1/gke_hub_membership_service_client.ts b/packages/google-cloud-gkehub/src/v1beta1/gke_hub_membership_service_client.ts index 89b3075bfe0..0607ce3f536 100644 --- a/packages/google-cloud-gkehub/src/v1beta1/gke_hub_membership_service_client.ts +++ b/packages/google-cloud-gkehub/src/v1beta1/gke_hub_membership_service_client.ts @@ -410,13 +410,13 @@ export class GkeHubMembershipServiceClient { > ): void; /** - * Gets details of a single Membership. + * Gets the details of a Membership. * * @param {Object} request * The request object that will be sent. * @param {string} request.name - * Required. The Membership resource name in the format: - * `projects/[project_id]/locations/global/memberships/[membership_id]` + * Required. The Membership resource name in the format + * `projects/* /locations/* /memberships/*`. * @param {object} [options] * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. * @returns {Promise} - The promise which resolves to an array. @@ -506,23 +506,22 @@ export class GkeHubMembershipServiceClient { > ): void; /** - * Generate the manifest for deployment of GKE connect agent. + * Generates the manifest for deployment of the GKE connect agent. * * @param {Object} request * The request object that will be sent. * @param {string} request.name - * Required. The membership resource the connect agent is associated with. - * `projects/[project_id]/locations/global/memberships/[membership_id]`. + * Required. The Membership resource name the Agent will associate with, in the format + * `projects/* /locations/* /memberships/*`. * @param {google.cloud.gkehub.v1beta1.ConnectAgent} [request.connectAgent] * Optional. The connect agent to generate manifest for. * @param {string} [request.version] - * Optional. The version to use for connect agent. - * If empty, the current default version will be used. + * Optional. The Connect agent version to use. Defaults to the most current version. * @param {boolean} [request.isUpgrade] * Optional. If true, generate the resources for upgrade only. Some resources - * (e.g. secrets) generated for installation will be excluded. + * generated only for installation (e.g. secrets) will be excluded. * @param {string} [request.registry] - * Optional. The registry to fetch connect agent image; default to + * Optional. The registry to fetch the connect agent image from. Defaults to * gcr.io/gkeconnect. * @param {Buffer} [request.imagePullSecretContent] * Optional. The image pull secret content for the registry, if not public. @@ -628,16 +627,14 @@ export class GkeHubMembershipServiceClient { * @param {Object} request * The request object that will be sent. * @param {string} request.parent - * Required. The desired parent collection of the membership to be created in the - * format: - * `projects/[project_id]/locations/global`. + * Required. The parent (project and location) where the Memberships will be created. + * Specified in the format `projects/* /locations/*`. * @param {string} [request.crManifest] * Optional. The YAML of the membership CR in the cluster. Empty if the membership * CR does not exist. * @param {string} request.intendedMembership - * Required. The membership name under the "name" that could be created if the - * validation succeed. The method only does validation in anticipation - * of a CreateMembership call. + * Required. The intended membership name under the `parent`. This method only does + * validation in anticipation of a CreateMembership call with the same name. * @param {object} [options] * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. * @returns {Promise} - The promise which resolves to an array. @@ -732,12 +729,13 @@ export class GkeHubMembershipServiceClient { /** * GenerateExclusivityManifest generates the manifests to update the * exclusivity artifacts in the cluster if needed. - * Exclusivity artifacts include the membership customer resource definition - * (CRD) and the singleton membership custom resource (CR). - * Combined with ValidateExclusivity, exclusivity - * artifacts guarantee that a Kubernetes cluster is only registered to - * a single GKE Hub. - * The membership CRD is versioned, and may require conversion when the GKE + * + * Exclusivity artifacts include the Membership custom resource definition + * (CRD) and the singleton Membership custom resource (CR). Combined with + * ValidateExclusivity, exclusivity artifacts guarantee that a Kubernetes + * cluster is only registered to a single GKE Hub. + * + * The Membership CRD is versioned, and may require conversion when the GKE * Hub API server begins serving a newer version of the CRD and * corresponding CR. The response will be the converted CRD and CR if there * are any differences between the versions. @@ -745,8 +743,8 @@ export class GkeHubMembershipServiceClient { * @param {Object} request * The request object that will be sent. * @param {string} request.name - * Required. The membership the cluster corresponds to in the format: - * `projects/[project_id]/locations/global/memberships/[membership_id]`. + * Required. The Membership resource name in the format + * `projects/* /locations/* /memberships/*`. * @param {string} [request.crdManifest] * Optional. The YAML manifest of the membership CRD retrieved by * `kubectl get customresourcedefinitions membership`. @@ -859,18 +857,20 @@ export class GkeHubMembershipServiceClient { * @param {Object} request * The request object that will be sent. * @param {string} request.parent - * Required. The parent in whose context the membership is created. The parent value is - * in the format: `projects/[project_id]/locations/global`. + * Required. The parent (project and location) where the Memberships will be created. + * Specified in the format `projects/* /locations/*`. * @param {string} request.membershipId - * Required. Client chosen ID for the membership. The ID must be a valid RFC 1123 - * compliant DNS label. In particular, the ID must be: + * Required. Client chosen ID for the membership. `membership_id` must be a valid RFC + * 1123 compliant DNS label: + * * 1. At most 63 characters in length * 2. It must consist of lower case alphanumeric characters or `-` * 3. It must start and end with an alphanumeric character - * I.e. ID must match the regex: `[a-z0-9]([-a-z0-9]*[a-z0-9])?` with at most - * 63 characters. + * + * Which can be expressed as the regex: `[a-z0-9]([-a-z0-9]*[a-z0-9])?`, + * with a maximum length of 63 characters. * @param {google.cloud.gkehub.v1beta1.Membership} request.resource - * Required. The resource to add. + * Required. The membership to create. * @param {object} [options] * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. * @returns {Promise} - The promise which resolves to an array. @@ -1007,13 +1007,13 @@ export class GkeHubMembershipServiceClient { > ): void; /** - * Removes a single Membership. + * Removes a Membership. * * @param {Object} request * The request object that will be sent. * @param {string} request.name - * Required. The membership resource name in the format: - * `projects/[project_id]/locations/global/memberships/[membership_id]` + * Required. The Membership resource name in the format + * `projects/* /locations/* /memberships/*`. * @param {object} [options] * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. * @returns {Promise} - The promise which resolves to an array. @@ -1303,8 +1303,8 @@ export class GkeHubMembershipServiceClient { * @param {Object} request * The request object that will be sent. * @param {string} request.parent - * Required. The parent in whose context the memberships are listed. The parent value - * is in the format: `projects/[project_id]/locations/global`. + * Required. The parent (project and location) where the Memberships will be listed. + * Specified in the format `projects/* /locations/*`. * @param {number} [request.pageSize] * Optional. When requesting a 'page' of resources, `page_size` specifies number of * resources to return. If unspecified or set to 0, all resources will @@ -1314,29 +1314,29 @@ export class GkeHubMembershipServiceClient { * specifies the position in the list from where to continue listing the * resources. * @param {string} [request.filter] - * Optional. Lists the Memberships that match the filter expression. A filter expression - * filters the resources listed in the response. The expression must be of - * the form ` ` where operators: `<`, `>`, `<=`, - * `>=`, - * `!=`, `=`, `:` are supported (colon `:` represents a HAS operator which is - * roughly synonymous with equality). can refer to a proto or JSON - * field, or a synthetic field. Field names can be camelCase or snake_case. + * Optional. Lists Memberships that match the filter expression, following the syntax + * outlined in https://google.aip.dev/160. * * Examples: - * - Filter by name: - * name = "projects/foo-proj/locations/global/membership/bar * - * - Filter by labels: - * - Resources that have a key called `foo` - * labels.foo:* - * - Resources that have a key called `foo` whose value is `bar` - * labels.foo = bar + * - Name is `bar` in project `foo-proj` and location `global`: + * + * name = "projects/foo-proj/locations/global/membership/bar" + * + * - Memberships that have a label called `foo`: + * + * labels.foo:* + * + * - Memberships that have a label called `foo` whose value is `bar`: + * + * labels.foo = bar + * + * - Memberships in the CREATING state: * - * - Filter by state: - * - Members in CREATING state. - * state = CREATING + * state = CREATING * @param {string} [request.orderBy] - * Optional. Field to use to sort the list. + * Optional. One or more fields to compare and use to sort the output. + * See https://google.aip.dev/132#ordering. * @param {object} [options] * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. * @returns {Promise} - The promise which resolves to an array. @@ -1400,8 +1400,8 @@ export class GkeHubMembershipServiceClient { * @param {Object} request * The request object that will be sent. * @param {string} request.parent - * Required. The parent in whose context the memberships are listed. The parent value - * is in the format: `projects/[project_id]/locations/global`. + * Required. The parent (project and location) where the Memberships will be listed. + * Specified in the format `projects/* /locations/*`. * @param {number} [request.pageSize] * Optional. When requesting a 'page' of resources, `page_size` specifies number of * resources to return. If unspecified or set to 0, all resources will @@ -1411,29 +1411,29 @@ export class GkeHubMembershipServiceClient { * specifies the position in the list from where to continue listing the * resources. * @param {string} [request.filter] - * Optional. Lists the Memberships that match the filter expression. A filter expression - * filters the resources listed in the response. The expression must be of - * the form ` ` where operators: `<`, `>`, `<=`, - * `>=`, - * `!=`, `=`, `:` are supported (colon `:` represents a HAS operator which is - * roughly synonymous with equality). can refer to a proto or JSON - * field, or a synthetic field. Field names can be camelCase or snake_case. + * Optional. Lists Memberships that match the filter expression, following the syntax + * outlined in https://google.aip.dev/160. * * Examples: - * - Filter by name: - * name = "projects/foo-proj/locations/global/membership/bar * - * - Filter by labels: - * - Resources that have a key called `foo` - * labels.foo:* - * - Resources that have a key called `foo` whose value is `bar` - * labels.foo = bar + * - Name is `bar` in project `foo-proj` and location `global`: * - * - Filter by state: - * - Members in CREATING state. - * state = CREATING + * name = "projects/foo-proj/locations/global/membership/bar" + * + * - Memberships that have a label called `foo`: + * + * labels.foo:* + * + * - Memberships that have a label called `foo` whose value is `bar`: + * + * labels.foo = bar + * + * - Memberships in the CREATING state: + * + * state = CREATING * @param {string} [request.orderBy] - * Optional. Field to use to sort the list. + * Optional. One or more fields to compare and use to sort the output. + * See https://google.aip.dev/132#ordering. * @param {object} [options] * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. * @returns {Stream} @@ -1475,8 +1475,8 @@ export class GkeHubMembershipServiceClient { * @param {Object} request * The request object that will be sent. * @param {string} request.parent - * Required. The parent in whose context the memberships are listed. The parent value - * is in the format: `projects/[project_id]/locations/global`. + * Required. The parent (project and location) where the Memberships will be listed. + * Specified in the format `projects/* /locations/*`. * @param {number} [request.pageSize] * Optional. When requesting a 'page' of resources, `page_size` specifies number of * resources to return. If unspecified or set to 0, all resources will @@ -1486,29 +1486,29 @@ export class GkeHubMembershipServiceClient { * specifies the position in the list from where to continue listing the * resources. * @param {string} [request.filter] - * Optional. Lists the Memberships that match the filter expression. A filter expression - * filters the resources listed in the response. The expression must be of - * the form ` ` where operators: `<`, `>`, `<=`, - * `>=`, - * `!=`, `=`, `:` are supported (colon `:` represents a HAS operator which is - * roughly synonymous with equality). can refer to a proto or JSON - * field, or a synthetic field. Field names can be camelCase or snake_case. + * Optional. Lists Memberships that match the filter expression, following the syntax + * outlined in https://google.aip.dev/160. * * Examples: - * - Filter by name: - * name = "projects/foo-proj/locations/global/membership/bar * - * - Filter by labels: - * - Resources that have a key called `foo` - * labels.foo:* - * - Resources that have a key called `foo` whose value is `bar` - * labels.foo = bar + * - Name is `bar` in project `foo-proj` and location `global`: + * + * name = "projects/foo-proj/locations/global/membership/bar" + * + * - Memberships that have a label called `foo`: + * + * labels.foo:* + * + * - Memberships that have a label called `foo` whose value is `bar`: + * + * labels.foo = bar + * + * - Memberships in the CREATING state: * - * - Filter by state: - * - Members in CREATING state. - * state = CREATING + * state = CREATING * @param {string} [request.orderBy] - * Optional. Field to use to sort the list. + * Optional. One or more fields to compare and use to sort the output. + * See https://google.aip.dev/132#ordering. * @param {object} [options] * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. * @returns {Object} diff --git a/packages/google-cloud-gkehub/synth.metadata b/packages/google-cloud-gkehub/synth.metadata index d60d8afc520..18d03247da4 100644 --- a/packages/google-cloud-gkehub/synth.metadata +++ b/packages/google-cloud-gkehub/synth.metadata @@ -3,16 +3,16 @@ { "git": { "name": ".", - "remote": "git@github.com:googleapis/nodejs-gke-hub.git", - "sha": "1a349584f6d2012ef40b5f112a18009757c647ee" + "remote": "https://github.com/googleapis/nodejs-gke-hub.git", + "sha": "fe462ae030a12812b1b066c8edbe107f7ff4c633" } }, { "git": { "name": "googleapis", "remote": "https://github.com/googleapis/googleapis.git", - "sha": "c8bfd324b41ad1f6f65fed124572f92fe116517b", - "internalRef": "351218127" + "sha": "2502e8e92c798660ccb51ab2d7ce65818412b530", + "internalRef": "355768453" } }, { From bfd6d5e94f414a36f80add5a3ee4f6ab6a0cbfda Mon Sep 17 00:00:00 2001 From: "release-please[bot]" <55107282+release-please[bot]@users.noreply.github.com> Date: Mon, 8 Feb 2021 09:51:07 -0800 Subject: [PATCH 07/92] chore: release 1.0.1 (#11) Co-authored-by: release-please[bot] <55107282+release-please[bot]@users.noreply.github.com> --- packages/google-cloud-gkehub/CHANGELOG.md | 7 +++++++ packages/google-cloud-gkehub/package.json | 2 +- packages/google-cloud-gkehub/samples/package.json | 2 +- 3 files changed, 9 insertions(+), 2 deletions(-) diff --git a/packages/google-cloud-gkehub/CHANGELOG.md b/packages/google-cloud-gkehub/CHANGELOG.md index d4d421ccfbe..8e9b187e612 100644 --- a/packages/google-cloud-gkehub/CHANGELOG.md +++ b/packages/google-cloud-gkehub/CHANGELOG.md @@ -1,5 +1,12 @@ # Changelog +### [1.0.1](https://www.github.com/googleapis/nodejs-gke-hub/compare/v1.0.0...v1.0.1) (2021-02-08) + + +### Bug Fixes + +* **build:** correct package name for docs ([#9](https://www.github.com/googleapis/nodejs-gke-hub/issues/9)) ([ce04a06](https://www.github.com/googleapis/nodejs-gke-hub/commit/ce04a06e49ff4c59d993d2034ef828d51407aa76)) + ## 1.0.0 (2021-01-26) diff --git a/packages/google-cloud-gkehub/package.json b/packages/google-cloud-gkehub/package.json index 0007212e3bc..ecd93a40f82 100644 --- a/packages/google-cloud-gkehub/package.json +++ b/packages/google-cloud-gkehub/package.json @@ -1,6 +1,6 @@ { "name": "@google-cloud/gke-hub", - "version": "1.0.0", + "version": "1.0.1", "description": "Gkehub client for Node.js", "repository": "googleapis/nodejs-gke-hub", "license": "Apache-2.0", diff --git a/packages/google-cloud-gkehub/samples/package.json b/packages/google-cloud-gkehub/samples/package.json index 7014c08cef6..aaabe224f0a 100644 --- a/packages/google-cloud-gkehub/samples/package.json +++ b/packages/google-cloud-gkehub/samples/package.json @@ -13,7 +13,7 @@ "test": "c8 mocha --timeout 600000 test/*.js" }, "dependencies": { - "@google-cloud/gke-hub": "^1.0.0" + "@google-cloud/gke-hub": "^1.0.1" }, "devDependencies": { "c8": "^7.1.0", From 407dc28417af927340f215b03d8f392c435d9616 Mon Sep 17 00:00:00 2001 From: "Benjamin E. Coe" Date: Tue, 9 Feb 2021 09:59:12 -0800 Subject: [PATCH 08/92] fix(docs): correct name in .repo-metadata.json (#13) --- packages/google-cloud-gkehub/.repo-metadata.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/google-cloud-gkehub/.repo-metadata.json b/packages/google-cloud-gkehub/.repo-metadata.json index 9bba8929938..9a947c89ee2 100644 --- a/packages/google-cloud-gkehub/.repo-metadata.json +++ b/packages/google-cloud-gkehub/.repo-metadata.json @@ -1,5 +1,5 @@ { - "name": "gkehub", + "name": "gke-hub", "name_pretty": "GKE Hub", "product_documentation": "https://cloud.google.com/anthos/gke", "client_documentation": "https://googleapis.dev/nodejs/gke-hub/latest/", @@ -10,4 +10,4 @@ "distribution_name": "@google-cloud/gke-hub", "api_id": "gkehub.googleapis.com", "requires_billing": true - } \ No newline at end of file + } From 1dff147d67e362a70db84d534800526fd2ae5a8b Mon Sep 17 00:00:00 2001 From: "release-please[bot]" <55107282+release-please[bot]@users.noreply.github.com> Date: Tue, 9 Feb 2021 18:06:05 +0000 Subject: [PATCH 09/92] chore: release 1.0.2 (#14) :robot: I have created a release \*beep\* \*boop\* --- ### [1.0.2](https://www.github.com/googleapis/nodejs-gke-hub/compare/v1.0.1...v1.0.2) (2021-02-09) ### Bug Fixes * **docs:** correct name in .repo-metadata.json ([#13](https://www.github.com/googleapis/nodejs-gke-hub/issues/13)) ([6d69b2d](https://www.github.com/googleapis/nodejs-gke-hub/commit/6d69b2d92284b6bacaba33f55dabf22d0f59c9e6)) --- This PR was generated with [Release Please](https://github.com/googleapis/release-please). See [documentation](https://github.com/googleapis/release-please#release-please). --- packages/google-cloud-gkehub/CHANGELOG.md | 7 +++++++ packages/google-cloud-gkehub/package.json | 2 +- packages/google-cloud-gkehub/samples/package.json | 2 +- 3 files changed, 9 insertions(+), 2 deletions(-) diff --git a/packages/google-cloud-gkehub/CHANGELOG.md b/packages/google-cloud-gkehub/CHANGELOG.md index 8e9b187e612..8d2f63f9bd1 100644 --- a/packages/google-cloud-gkehub/CHANGELOG.md +++ b/packages/google-cloud-gkehub/CHANGELOG.md @@ -1,5 +1,12 @@ # Changelog +### [1.0.2](https://www.github.com/googleapis/nodejs-gke-hub/compare/v1.0.1...v1.0.2) (2021-02-09) + + +### Bug Fixes + +* **docs:** correct name in .repo-metadata.json ([#13](https://www.github.com/googleapis/nodejs-gke-hub/issues/13)) ([6d69b2d](https://www.github.com/googleapis/nodejs-gke-hub/commit/6d69b2d92284b6bacaba33f55dabf22d0f59c9e6)) + ### [1.0.1](https://www.github.com/googleapis/nodejs-gke-hub/compare/v1.0.0...v1.0.1) (2021-02-08) diff --git a/packages/google-cloud-gkehub/package.json b/packages/google-cloud-gkehub/package.json index ecd93a40f82..a4b21a549be 100644 --- a/packages/google-cloud-gkehub/package.json +++ b/packages/google-cloud-gkehub/package.json @@ -1,6 +1,6 @@ { "name": "@google-cloud/gke-hub", - "version": "1.0.1", + "version": "1.0.2", "description": "Gkehub client for Node.js", "repository": "googleapis/nodejs-gke-hub", "license": "Apache-2.0", diff --git a/packages/google-cloud-gkehub/samples/package.json b/packages/google-cloud-gkehub/samples/package.json index aaabe224f0a..15475777d5f 100644 --- a/packages/google-cloud-gkehub/samples/package.json +++ b/packages/google-cloud-gkehub/samples/package.json @@ -13,7 +13,7 @@ "test": "c8 mocha --timeout 600000 test/*.js" }, "dependencies": { - "@google-cloud/gke-hub": "^1.0.1" + "@google-cloud/gke-hub": "^1.0.2" }, "devDependencies": { "c8": "^7.1.0", From 592c738b0865af76675aac00aa312726af02efda Mon Sep 17 00:00:00 2001 From: Yoshi Automation Bot Date: Sat, 13 Feb 2021 10:05:46 -0800 Subject: [PATCH 10/92] feat: Update Membership API v1beta1 proto (#15) PiperOrigin-RevId: 357242088 Source-Author: Google APIs Source-Date: Fri Feb 12 12:12:12 2021 -0800 Source-Repo: googleapis/googleapis Source-Sha: 1b2ab49ed6df31252afdede55280f97e1a745962 Source-Link: https://github.com/googleapis/googleapis/commit/1b2ab49ed6df31252afdede55280f97e1a745962 --- .../cloud/gkehub/v1beta1/membership.proto | 8 ++++- .../google-cloud-gkehub/protos/protos.d.ts | 6 ++++ packages/google-cloud-gkehub/protos/protos.js | 31 +++++++++++++++++++ .../google-cloud-gkehub/protos/protos.json | 7 +++++ packages/google-cloud-gkehub/synth.metadata | 6 ++-- 5 files changed, 54 insertions(+), 4 deletions(-) diff --git a/packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1beta1/membership.proto b/packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1beta1/membership.proto index 484fae3c13b..d04698cfcad 100644 --- a/packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1beta1/membership.proto +++ b/packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1beta1/membership.proto @@ -1,4 +1,4 @@ -// Copyright 2020 Google LLC +// 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. @@ -370,6 +370,12 @@ message Authority { // Output only. An identity provider that reflects the `issuer` in the workload identity // pool. string identity_provider = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Optional. OIDC verification keys for this Membership in JWKS format (RFC 7517). + // + // When this field is set, OIDC discovery will NOT be performed on `issuer`, + // and instead OIDC tokens will be validated using this field. + bytes oidc_jwks = 4 [(google.api.field_behavior) = OPTIONAL]; } // State of the Membership resource. diff --git a/packages/google-cloud-gkehub/protos/protos.d.ts b/packages/google-cloud-gkehub/protos/protos.d.ts index e6e8f6563f9..f4a144eccfb 100644 --- a/packages/google-cloud-gkehub/protos/protos.d.ts +++ b/packages/google-cloud-gkehub/protos/protos.d.ts @@ -1016,6 +1016,9 @@ export namespace google { /** Authority identityProvider */ identityProvider?: (string|null); + + /** Authority oidcJwks */ + oidcJwks?: (Uint8Array|string|null); } /** Represents an Authority. */ @@ -1036,6 +1039,9 @@ export namespace google { /** Authority identityProvider. */ public identityProvider: string; + /** Authority oidcJwks. */ + public oidcJwks: (Uint8Array|string); + /** * Creates a new Authority instance using the specified properties. * @param [properties] Properties to set diff --git a/packages/google-cloud-gkehub/protos/protos.js b/packages/google-cloud-gkehub/protos/protos.js index 2f10caa8bd5..e26fbbef88d 100644 --- a/packages/google-cloud-gkehub/protos/protos.js +++ b/packages/google-cloud-gkehub/protos/protos.js @@ -2411,6 +2411,7 @@ * @property {string|null} [issuer] Authority issuer * @property {string|null} [workloadIdentityPool] Authority workloadIdentityPool * @property {string|null} [identityProvider] Authority identityProvider + * @property {Uint8Array|null} [oidcJwks] Authority oidcJwks */ /** @@ -2452,6 +2453,14 @@ */ Authority.prototype.identityProvider = ""; + /** + * Authority oidcJwks. + * @member {Uint8Array} oidcJwks + * @memberof google.cloud.gkehub.v1beta1.Authority + * @instance + */ + Authority.prototype.oidcJwks = $util.newBuffer([]); + /** * Creates a new Authority instance using the specified properties. * @function create @@ -2482,6 +2491,8 @@ writer.uint32(/* id 2, wireType 2 =*/18).string(message.workloadIdentityPool); if (message.identityProvider != null && Object.hasOwnProperty.call(message, "identityProvider")) writer.uint32(/* id 3, wireType 2 =*/26).string(message.identityProvider); + if (message.oidcJwks != null && Object.hasOwnProperty.call(message, "oidcJwks")) + writer.uint32(/* id 4, wireType 2 =*/34).bytes(message.oidcJwks); return writer; }; @@ -2525,6 +2536,9 @@ case 3: message.identityProvider = reader.string(); break; + case 4: + message.oidcJwks = reader.bytes(); + break; default: reader.skipType(tag & 7); break; @@ -2569,6 +2583,9 @@ if (message.identityProvider != null && message.hasOwnProperty("identityProvider")) if (!$util.isString(message.identityProvider)) return "identityProvider: string expected"; + if (message.oidcJwks != null && message.hasOwnProperty("oidcJwks")) + if (!(message.oidcJwks && typeof message.oidcJwks.length === "number" || $util.isString(message.oidcJwks))) + return "oidcJwks: buffer expected"; return null; }; @@ -2590,6 +2607,11 @@ message.workloadIdentityPool = String(object.workloadIdentityPool); if (object.identityProvider != null) message.identityProvider = String(object.identityProvider); + if (object.oidcJwks != null) + if (typeof object.oidcJwks === "string") + $util.base64.decode(object.oidcJwks, message.oidcJwks = $util.newBuffer($util.base64.length(object.oidcJwks)), 0); + else if (object.oidcJwks.length) + message.oidcJwks = object.oidcJwks; return message; }; @@ -2610,6 +2632,13 @@ object.issuer = ""; object.workloadIdentityPool = ""; object.identityProvider = ""; + if (options.bytes === String) + object.oidcJwks = ""; + else { + object.oidcJwks = []; + if (options.bytes !== Array) + object.oidcJwks = $util.newBuffer(object.oidcJwks); + } } if (message.issuer != null && message.hasOwnProperty("issuer")) object.issuer = message.issuer; @@ -2617,6 +2646,8 @@ object.workloadIdentityPool = message.workloadIdentityPool; if (message.identityProvider != null && message.hasOwnProperty("identityProvider")) object.identityProvider = message.identityProvider; + if (message.oidcJwks != null && message.hasOwnProperty("oidcJwks")) + object.oidcJwks = options.bytes === String ? $util.base64.encode(message.oidcJwks, 0, message.oidcJwks.length) : options.bytes === Array ? Array.prototype.slice.call(message.oidcJwks) : message.oidcJwks; return object; }; diff --git a/packages/google-cloud-gkehub/protos/protos.json b/packages/google-cloud-gkehub/protos/protos.json index 1a08021bc73..e9d347c5101 100644 --- a/packages/google-cloud-gkehub/protos/protos.json +++ b/packages/google-cloud-gkehub/protos/protos.json @@ -468,6 +468,13 @@ "options": { "(google.api.field_behavior)": "OUTPUT_ONLY" } + }, + "oidcJwks": { + "type": "bytes", + "id": 4, + "options": { + "(google.api.field_behavior)": "OPTIONAL" + } } } }, diff --git a/packages/google-cloud-gkehub/synth.metadata b/packages/google-cloud-gkehub/synth.metadata index 18d03247da4..0317102f77e 100644 --- a/packages/google-cloud-gkehub/synth.metadata +++ b/packages/google-cloud-gkehub/synth.metadata @@ -4,15 +4,15 @@ "git": { "name": ".", "remote": "https://github.com/googleapis/nodejs-gke-hub.git", - "sha": "fe462ae030a12812b1b066c8edbe107f7ff4c633" + "sha": "a07fb938a8c85fbb147f58a90b48178b46388d0c" } }, { "git": { "name": "googleapis", "remote": "https://github.com/googleapis/googleapis.git", - "sha": "2502e8e92c798660ccb51ab2d7ce65818412b530", - "internalRef": "355768453" + "sha": "1b2ab49ed6df31252afdede55280f97e1a745962", + "internalRef": "357242088" } }, { From 0661e6a005291793639bee1fe41bea06faf4963c Mon Sep 17 00:00:00 2001 From: Yoshi Automation Bot Date: Sun, 14 Feb 2021 06:16:13 -0800 Subject: [PATCH 11/92] refactor(nodejs): move build cop to flakybot (#17) Source-Author: Benjamin E. Coe Source-Date: Tue Jan 26 16:48:20 2021 -0800 Source-Repo: googleapis/synthtool Source-Sha: 57c23fa5705499a4181095ced81f0ee0933b64f6 Source-Link: https://github.com/googleapis/synthtool/commit/57c23fa5705499a4181095ced81f0ee0933b64f6 --- packages/google-cloud-gkehub/synth.metadata | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/google-cloud-gkehub/synth.metadata b/packages/google-cloud-gkehub/synth.metadata index 0317102f77e..8209ec6acea 100644 --- a/packages/google-cloud-gkehub/synth.metadata +++ b/packages/google-cloud-gkehub/synth.metadata @@ -4,7 +4,7 @@ "git": { "name": ".", "remote": "https://github.com/googleapis/nodejs-gke-hub.git", - "sha": "a07fb938a8c85fbb147f58a90b48178b46388d0c" + "sha": "878ce5a99d85b1a9fab55f8b935ad310bc451513" } }, { @@ -19,7 +19,7 @@ "git": { "name": "synthtool", "remote": "https://github.com/googleapis/synthtool.git", - "sha": "16ec872dd898d7de6e1822badfac32484b5d9031" + "sha": "57c23fa5705499a4181095ced81f0ee0933b64f6" } } ], From de0e1423dada5fdecfdc6b1ede864bff5597616e Mon Sep 17 00:00:00 2001 From: "release-please[bot]" <55107282+release-please[bot]@users.noreply.github.com> Date: Mon, 1 Mar 2021 17:34:26 -0800 Subject: [PATCH 12/92] chore: release 1.1.0 (#16) Co-authored-by: release-please[bot] <55107282+release-please[bot]@users.noreply.github.com> --- packages/google-cloud-gkehub/CHANGELOG.md | 7 +++++++ packages/google-cloud-gkehub/package.json | 2 +- packages/google-cloud-gkehub/samples/package.json | 2 +- 3 files changed, 9 insertions(+), 2 deletions(-) diff --git a/packages/google-cloud-gkehub/CHANGELOG.md b/packages/google-cloud-gkehub/CHANGELOG.md index 8d2f63f9bd1..d9ca6c33aff 100644 --- a/packages/google-cloud-gkehub/CHANGELOG.md +++ b/packages/google-cloud-gkehub/CHANGELOG.md @@ -1,5 +1,12 @@ # Changelog +## [1.1.0](https://www.github.com/googleapis/nodejs-gke-hub/compare/v1.0.2...v1.1.0) (2021-02-14) + + +### Features + +* Update Membership API v1beta1 proto ([#15](https://www.github.com/googleapis/nodejs-gke-hub/issues/15)) ([878ce5a](https://www.github.com/googleapis/nodejs-gke-hub/commit/878ce5a99d85b1a9fab55f8b935ad310bc451513)) + ### [1.0.2](https://www.github.com/googleapis/nodejs-gke-hub/compare/v1.0.1...v1.0.2) (2021-02-09) diff --git a/packages/google-cloud-gkehub/package.json b/packages/google-cloud-gkehub/package.json index a4b21a549be..14b7a64ac08 100644 --- a/packages/google-cloud-gkehub/package.json +++ b/packages/google-cloud-gkehub/package.json @@ -1,6 +1,6 @@ { "name": "@google-cloud/gke-hub", - "version": "1.0.2", + "version": "1.1.0", "description": "Gkehub client for Node.js", "repository": "googleapis/nodejs-gke-hub", "license": "Apache-2.0", diff --git a/packages/google-cloud-gkehub/samples/package.json b/packages/google-cloud-gkehub/samples/package.json index 15475777d5f..65b5ef21a77 100644 --- a/packages/google-cloud-gkehub/samples/package.json +++ b/packages/google-cloud-gkehub/samples/package.json @@ -13,7 +13,7 @@ "test": "c8 mocha --timeout 600000 test/*.js" }, "dependencies": { - "@google-cloud/gke-hub": "^1.0.2" + "@google-cloud/gke-hub": "^1.1.0" }, "devDependencies": { "c8": "^7.1.0", From 94855408013ab975a6b908f78b4c44e021f13a7d Mon Sep 17 00:00:00 2001 From: Yoshi Automation Bot Date: Sun, 7 Mar 2021 09:02:06 -0800 Subject: [PATCH 13/92] build: update gapic-generator-typescript to v1.2.10. (#18) This PR was generated using Autosynth. :rainbow: Synth log will be available here: https://source.cloud.google.com/results/invocations/7d84eafd-4925-434f-9ffd-6407671972cb/targets - [ ] To automatically regenerate this PR, check this box. PiperOrigin-RevId: 361273630 Source-Link: https://github.com/googleapis/googleapis/commit/5477122b3e8037a1dc5bc920536158edbd151dc4 --- packages/google-cloud-gkehub/synth.metadata | 6 +++--- packages/google-cloud-gkehub/webpack.config.js | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/packages/google-cloud-gkehub/synth.metadata b/packages/google-cloud-gkehub/synth.metadata index 8209ec6acea..3a1d949d05b 100644 --- a/packages/google-cloud-gkehub/synth.metadata +++ b/packages/google-cloud-gkehub/synth.metadata @@ -4,15 +4,15 @@ "git": { "name": ".", "remote": "https://github.com/googleapis/nodejs-gke-hub.git", - "sha": "878ce5a99d85b1a9fab55f8b935ad310bc451513" + "sha": "803dc2c9455245d2870129e6f11cdc3e2780bbdd" } }, { "git": { "name": "googleapis", "remote": "https://github.com/googleapis/googleapis.git", - "sha": "1b2ab49ed6df31252afdede55280f97e1a745962", - "internalRef": "357242088" + "sha": "5477122b3e8037a1dc5bc920536158edbd151dc4", + "internalRef": "361273630" } }, { diff --git a/packages/google-cloud-gkehub/webpack.config.js b/packages/google-cloud-gkehub/webpack.config.js index e820f412f15..f0200b27d09 100644 --- a/packages/google-cloud-gkehub/webpack.config.js +++ b/packages/google-cloud-gkehub/webpack.config.js @@ -1,4 +1,4 @@ -// Copyright 2020 Google LLC +// 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. From 7f05a5b97fb7860a87709852f68b8aa7cc177194 Mon Sep 17 00:00:00 2001 From: Yoshi Automation Bot Date: Tue, 16 Mar 2021 13:11:05 -0700 Subject: [PATCH 14/92] chore: Use correct markdown for code block (#19) PiperOrigin-RevId: 363012458 Source-Author: Google APIs Source-Date: Mon Mar 15 13:08:38 2021 -0700 Source-Repo: googleapis/googleapis Source-Sha: e1654206ff59f3a2a226828f9c9f354c253b36e4 Source-Link: https://github.com/googleapis/googleapis/commit/e1654206ff59f3a2a226828f9c9f354c253b36e4 --- .../protos/google/cloud/gkehub/v1beta1/membership.proto | 2 +- packages/google-cloud-gkehub/synth.metadata | 6 +++--- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1beta1/membership.proto b/packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1beta1/membership.proto index d04698cfcad..fddf83ca218 100644 --- a/packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1beta1/membership.proto +++ b/packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1beta1/membership.proto @@ -308,7 +308,7 @@ message ResourceManifest { message GkeCluster { // Immutable. Self-link of the GCP resource for the GKE cluster. For example: // - // //container.googleapis.com/projects/my-project/locations/us-west1-a/clusters/my-cluster + // > container.googleapis.com/projects/my-project/locations/us-west1-a/clusters/my-cluster // // Zonal clusters are also supported. string resource_link = 1 [(google.api.field_behavior) = IMMUTABLE]; diff --git a/packages/google-cloud-gkehub/synth.metadata b/packages/google-cloud-gkehub/synth.metadata index 3a1d949d05b..5f0b9ce9068 100644 --- a/packages/google-cloud-gkehub/synth.metadata +++ b/packages/google-cloud-gkehub/synth.metadata @@ -4,15 +4,15 @@ "git": { "name": ".", "remote": "https://github.com/googleapis/nodejs-gke-hub.git", - "sha": "803dc2c9455245d2870129e6f11cdc3e2780bbdd" + "sha": "46c9707d0f8593e60aedff97fee2d0a50401a4d1" } }, { "git": { "name": "googleapis", "remote": "https://github.com/googleapis/googleapis.git", - "sha": "5477122b3e8037a1dc5bc920536158edbd151dc4", - "internalRef": "361273630" + "sha": "e1654206ff59f3a2a226828f9c9f354c253b36e4", + "internalRef": "363012458" } }, { From e5c58a20aca997473018e9a757d01595699d833c Mon Sep 17 00:00:00 2001 From: Jeffrey Rennie Date: Thu, 18 Mar 2021 15:54:37 -0700 Subject: [PATCH 15/92] chore: migrate to owl bot (#20) --- .../google-cloud-gkehub/.github/.OwlBot.yaml | 23 +++++++++++ .../google-cloud-gkehub/.repo-metadata.json | 25 +++++------ packages/google-cloud-gkehub/synth.metadata | 37 ----------------- packages/google-cloud-gkehub/synth.py | 41 ------------------- 4 files changed, 36 insertions(+), 90 deletions(-) create mode 100644 packages/google-cloud-gkehub/.github/.OwlBot.yaml delete mode 100644 packages/google-cloud-gkehub/synth.metadata delete mode 100644 packages/google-cloud-gkehub/synth.py diff --git a/packages/google-cloud-gkehub/.github/.OwlBot.yaml b/packages/google-cloud-gkehub/.github/.OwlBot.yaml new file mode 100644 index 00000000000..e3927699884 --- /dev/null +++ b/packages/google-cloud-gkehub/.github/.OwlBot.yaml @@ -0,0 +1,23 @@ +# 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/repo-automation-bots/owlbot-nodejs:latest + +deep-remove-regex: + - /owl-bot-staging + +deep-copy-regex: + - source: /google/cloud/gkehub/(.*)/.*-nodejs/(.*) + dest: /owl-bot-staging/$1/$2 + diff --git a/packages/google-cloud-gkehub/.repo-metadata.json b/packages/google-cloud-gkehub/.repo-metadata.json index 9a947c89ee2..c021a74e49c 100644 --- a/packages/google-cloud-gkehub/.repo-metadata.json +++ b/packages/google-cloud-gkehub/.repo-metadata.json @@ -1,13 +1,14 @@ { - "name": "gke-hub", - "name_pretty": "GKE Hub", - "product_documentation": "https://cloud.google.com/anthos/gke", - "client_documentation": "https://googleapis.dev/nodejs/gke-hub/latest/", - "issue_tracker": "https://github.com/googleapis/nodejs-gke-hub/issues", - "release_level": "BETA", - "language": "nodejs", - "repo": "googleapis/nodejs-gke-hub", - "distribution_name": "@google-cloud/gke-hub", - "api_id": "gkehub.googleapis.com", - "requires_billing": true - } + "client_documentation": "https://googleapis.dev/nodejs/gke-hub/latest/", + "api_id": "gkehub.googleapis.com", + "distribution_name": "@google-cloud/gke-hub", + "release_level": "BETA", + "default_version": "v1beta1", + "language": "nodejs", + "name_pretty": "GKE Hub", + "repo": "googleapis/nodejs-gke-hub", + "product_documentation": "https://cloud.google.com/anthos/gke", + "requires_billing": true, + "name": "gke-hub", + "issue_tracker": "https://github.com/googleapis/nodejs-gke-hub/issues" +} diff --git a/packages/google-cloud-gkehub/synth.metadata b/packages/google-cloud-gkehub/synth.metadata deleted file mode 100644 index 5f0b9ce9068..00000000000 --- a/packages/google-cloud-gkehub/synth.metadata +++ /dev/null @@ -1,37 +0,0 @@ -{ - "sources": [ - { - "git": { - "name": ".", - "remote": "https://github.com/googleapis/nodejs-gke-hub.git", - "sha": "46c9707d0f8593e60aedff97fee2d0a50401a4d1" - } - }, - { - "git": { - "name": "googleapis", - "remote": "https://github.com/googleapis/googleapis.git", - "sha": "e1654206ff59f3a2a226828f9c9f354c253b36e4", - "internalRef": "363012458" - } - }, - { - "git": { - "name": "synthtool", - "remote": "https://github.com/googleapis/synthtool.git", - "sha": "57c23fa5705499a4181095ced81f0ee0933b64f6" - } - } - ], - "destinations": [ - { - "client": { - "source": "googleapis", - "apiName": "gkehub", - "apiVersion": "v1beta1", - "language": "nodejs", - "generator": "bazel" - } - } - ] -} \ No newline at end of file diff --git a/packages/google-cloud-gkehub/synth.py b/packages/google-cloud-gkehub/synth.py deleted file mode 100644 index fdf7d776afb..00000000000 --- a/packages/google-cloud-gkehub/synth.py +++ /dev/null @@ -1,41 +0,0 @@ -# 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. -"""This script is used to synthesize generated parts of this library.""" - -import synthtool as s -import synthtool.gcp as gcp -import synthtool.languages.node as node -import subprocess -import logging - -logging.basicConfig(level=logging.DEBUG) - -# run the gapic generator -gapic = gcp.GAPICBazel() -versions = ["v1beta1"] -name = 'gkehub' -for version in versions: - library = gapic.node_library( - name, - version, - bazel_target=f"//google/cloud/gkehub/{version}:gkehub-{version}-nodejs") - s.copy(library, excludes=["package.json","README.md"]) - -# Copy common templates -common_templates = gcp.CommonTemplates() -templates = common_templates.node_library( - source_location='build/src', versions=["v1beta1"], default_version="v1beta1") -s.copy(templates, excludes=[]) - -node.postprocess_gapic_library() From 022c1037e4b292a6dc0347e8de0b430c1e8f162f Mon Sep 17 00:00:00 2001 From: WhiteSource Renovate Date: Tue, 23 Mar 2021 17:52:14 +0100 Subject: [PATCH 16/92] chore(deps): update dependency sinon to v10 (#27) [![WhiteSource Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com) This PR contains the following updates: | Package | Change | Age | Adoption | Passing | Confidence | |---|---|---|---|---|---| | [sinon](https://sinonjs.org/) ([source](https://togithub.com/sinonjs/sinon)) | [`^9.2.1` -> `^10.0.0`](https://renovatebot.com/diffs/npm/sinon/9.2.4/10.0.0) | [![age](https://badges.renovateapi.com/packages/npm/sinon/10.0.0/age-slim)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://badges.renovateapi.com/packages/npm/sinon/10.0.0/adoption-slim)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://badges.renovateapi.com/packages/npm/sinon/10.0.0/compatibility-slim/9.2.4)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://badges.renovateapi.com/packages/npm/sinon/10.0.0/confidence-slim/9.2.4)](https://docs.renovatebot.com/merge-confidence/) | --- ### Release Notes
sinonjs/sinon ### [`v10.0.0`](https://togithub.com/sinonjs/sinon/blob/master/CHANGELOG.md#​1000--2021-03-22) [Compare Source](https://togithub.com/sinonjs/sinon/compare/v9.2.4...v10.0.0) ================== - Upgrade nise to 4.1.0 - Use [@​sinonjs/eslint-config](https://togithub.com/sinonjs/eslint-config)[@​4](https://togithub.com/4) => Adopts ES2017 => Drops support for IE 11, Legacy Edge and legacy Safari
--- ### Renovate configuration :date: **Schedule**: "after 9am and before 3pm" (UTC). :vertical_traffic_light: **Automerge**: Disabled by config. Please merge this manually once you are satisfied. :recycle: **Rebasing**: Whenever PR is behind base branch, or you tick the rebase/retry checkbox. :no_bell: **Ignore**: Close this PR and you won't be reminded about this update again. --- - [ ] If you want to rebase/retry this PR, check this box --- This PR has been generated by [WhiteSource Renovate](https://renovate.whitesourcesoftware.com). View repository job log [here](https://app.renovatebot.com/dashboard#github/googleapis/nodejs-gke-hub). --- packages/google-cloud-gkehub/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/google-cloud-gkehub/package.json b/packages/google-cloud-gkehub/package.json index 14b7a64ac08..345a428b7e7 100644 --- a/packages/google-cloud-gkehub/package.json +++ b/packages/google-cloud-gkehub/package.json @@ -54,7 +54,7 @@ "mocha": "^8.2.1", "null-loader": "^4.0.1", "pack-n-play": "^1.0.0-2", - "sinon": "^9.2.1", + "sinon": "^10.0.0", "ts-loader": "^8.0.11", "typescript": "^4.1.2", "webpack": "^5.9.0", From 1ca3c40d9c9a8517f432b11aa2e3678508c421a0 Mon Sep 17 00:00:00 2001 From: WhiteSource Renovate Date: Wed, 14 Apr 2021 23:50:03 +0200 Subject: [PATCH 17/92] chore(deps): update dependency @types/sinon to v10 (#36) [![WhiteSource Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com) This PR contains the following updates: | Package | Change | Age | Adoption | Passing | Confidence | |---|---|---|---|---|---| | [@types/sinon](https://togithub.com/DefinitelyTyped/DefinitelyTyped) | [`^9.0.9` -> `^10.0.0`](https://renovatebot.com/diffs/npm/@types%2fsinon/9.0.11/10.0.0) | [![age](https://badges.renovateapi.com/packages/npm/@types%2fsinon/10.0.0/age-slim)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://badges.renovateapi.com/packages/npm/@types%2fsinon/10.0.0/adoption-slim)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://badges.renovateapi.com/packages/npm/@types%2fsinon/10.0.0/compatibility-slim/9.0.11)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://badges.renovateapi.com/packages/npm/@types%2fsinon/10.0.0/confidence-slim/9.0.11)](https://docs.renovatebot.com/merge-confidence/) | --- ### Configuration :date: **Schedule**: "after 9am and before 3pm" (UTC). :vertical_traffic_light: **Automerge**: Disabled by config. Please merge this manually once you are satisfied. :recycle: **Rebasing**: Whenever PR is behind base branch, or you tick the rebase/retry checkbox. :no_bell: **Ignore**: Close this PR and you won't be reminded about this update again. --- - [ ] If you want to rebase/retry this PR, check this box. --- This PR has been generated by [WhiteSource Renovate](https://renovate.whitesourcesoftware.com). View repository job log [here](https://app.renovatebot.com/dashboard#github/googleapis/nodejs-gke-hub). --- packages/google-cloud-gkehub/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/google-cloud-gkehub/package.json b/packages/google-cloud-gkehub/package.json index 345a428b7e7..93421c4f554 100644 --- a/packages/google-cloud-gkehub/package.json +++ b/packages/google-cloud-gkehub/package.json @@ -44,7 +44,7 @@ "devDependencies": { "@types/mocha": "^8.0.4", "@types/node": "^14.14.10", - "@types/sinon": "^9.0.9", + "@types/sinon": "^10.0.0", "c8": "^7.3.5", "gts": "^3.0.3", "jsdoc": "^3.6.6", From 92f01847e3b7811973adb2b85d771d169073576a Mon Sep 17 00:00:00 2001 From: WhiteSource Renovate Date: Tue, 20 Apr 2021 00:58:05 +0200 Subject: [PATCH 18/92] chore(deps): update dependency ts-loader to v9 (#40) [![WhiteSource Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com) This PR contains the following updates: | Package | Change | Age | Adoption | Passing | Confidence | |---|---|---|---|---|---| | [ts-loader](https://togithub.com/TypeStrong/ts-loader) | [`^8.0.11` -> `^9.0.0`](https://renovatebot.com/diffs/npm/ts-loader/8.1.0/9.0.0) | [![age](https://badges.renovateapi.com/packages/npm/ts-loader/9.0.0/age-slim)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://badges.renovateapi.com/packages/npm/ts-loader/9.0.0/adoption-slim)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://badges.renovateapi.com/packages/npm/ts-loader/9.0.0/compatibility-slim/8.1.0)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://badges.renovateapi.com/packages/npm/ts-loader/9.0.0/confidence-slim/8.1.0)](https://docs.renovatebot.com/merge-confidence/) | --- ### Release Notes
TypeStrong/ts-loader ### [`v9.0.0`](https://togithub.com/TypeStrong/ts-loader/blob/master/CHANGELOG.md#v900) [Compare Source](https://togithub.com/TypeStrong/ts-loader/compare/v8.1.0...v9.0.0) Breaking changes: - minimum webpack version: 5 - minimum node version: 12 Changes: - [webpack 5 migration](https://togithub.com/TypeStrong/ts-loader/pull/1251) - thanks [@​johnnyreilly](https://togithub.com/johnnyreilly), [@​jonwallsten](https://togithub.com/jonwallsten), [@​sokra](https://togithub.com/sokra), [@​appzuka](https://togithub.com/appzuka), [@​alexander-akait](https://togithub.com/alexander-akait)
--- ### Configuration :date: **Schedule**: "after 9am and before 3pm" (UTC). :vertical_traffic_light: **Automerge**: Disabled by config. Please merge this manually once you are satisfied. :recycle: **Rebasing**: Whenever PR is behind base branch, or you tick the rebase/retry checkbox. :no_bell: **Ignore**: Close this PR and you won't be reminded about this update again. --- - [ ] If you want to rebase/retry this PR, check this box. --- This PR has been generated by [WhiteSource Renovate](https://renovate.whitesourcesoftware.com). View repository job log [here](https://app.renovatebot.com/dashboard#github/googleapis/nodejs-gke-hub). --- packages/google-cloud-gkehub/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/google-cloud-gkehub/package.json b/packages/google-cloud-gkehub/package.json index 93421c4f554..c164a9ef302 100644 --- a/packages/google-cloud-gkehub/package.json +++ b/packages/google-cloud-gkehub/package.json @@ -55,7 +55,7 @@ "null-loader": "^4.0.1", "pack-n-play": "^1.0.0-2", "sinon": "^10.0.0", - "ts-loader": "^8.0.11", + "ts-loader": "^9.0.0", "typescript": "^4.1.2", "webpack": "^5.9.0", "webpack-cli": "^4.2.0" From 24028ae623b1087a9e2092e6f9c85e96cfb3e663 Mon Sep 17 00:00:00 2001 From: Alexander Fenster Date: Thu, 6 May 2021 17:50:09 -0700 Subject: [PATCH 19/92] fix(deps): require google-gax v2.12.0 (#44) --- packages/google-cloud-gkehub/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/google-cloud-gkehub/package.json b/packages/google-cloud-gkehub/package.json index c164a9ef302..21396aa760a 100644 --- a/packages/google-cloud-gkehub/package.json +++ b/packages/google-cloud-gkehub/package.json @@ -39,7 +39,7 @@ "prelint": "cd samples; npm link ../; npm i" }, "dependencies": { - "google-gax": "^2.9.2" + "google-gax": "^2.12.0" }, "devDependencies": { "@types/mocha": "^8.0.4", From 43f9f135b64a51274b7e3c286f8b4b9bdaab346f Mon Sep 17 00:00:00 2001 From: "gcf-owl-bot[bot]" <78513119+gcf-owl-bot[bot]@users.noreply.github.com> Date: Mon, 10 May 2021 17:00:58 +0000 Subject: [PATCH 20/92] chore: new owl bot post processor docker image (#46) gcr.io/repo-automation-bots/owlbot-nodejs:latest@sha256:f93bb861d6f12574437bb9aee426b71eafd63b419669ff0ed029f4b7e7162e3f --- .../google-cloud-gkehub/protos/protos.d.ts | 10 +- packages/google-cloud-gkehub/protos/protos.js | 20 +- .../gke_hub_membership_service_client.ts | 107 ++- .../system-test/fixtures/sample/src/index.js | 3 +- ...apic_gke_hub_membership_service_v1beta1.ts | 669 +++++++++--------- 5 files changed, 406 insertions(+), 403 deletions(-) diff --git a/packages/google-cloud-gkehub/protos/protos.d.ts b/packages/google-cloud-gkehub/protos/protos.d.ts index f4a144eccfb..ba0bcf8f6e0 100644 --- a/packages/google-cloud-gkehub/protos/protos.d.ts +++ b/packages/google-cloud-gkehub/protos/protos.d.ts @@ -2997,19 +2997,19 @@ export namespace google { public selector: string; /** HttpRule get. */ - public get: string; + public get?: (string|null); /** HttpRule put. */ - public put: string; + public put?: (string|null); /** HttpRule post. */ - public post: string; + public post?: (string|null); /** HttpRule delete. */ - public delete: string; + public delete?: (string|null); /** HttpRule patch. */ - public patch: string; + public patch?: (string|null); /** HttpRule custom. */ public custom?: (google.api.ICustomHttpPattern|null); diff --git a/packages/google-cloud-gkehub/protos/protos.js b/packages/google-cloud-gkehub/protos/protos.js index e26fbbef88d..8f32ebd5ffc 100644 --- a/packages/google-cloud-gkehub/protos/protos.js +++ b/packages/google-cloud-gkehub/protos/protos.js @@ -7031,43 +7031,43 @@ /** * HttpRule get. - * @member {string} get + * @member {string|null|undefined} get * @memberof google.api.HttpRule * @instance */ - HttpRule.prototype.get = ""; + HttpRule.prototype.get = null; /** * HttpRule put. - * @member {string} put + * @member {string|null|undefined} put * @memberof google.api.HttpRule * @instance */ - HttpRule.prototype.put = ""; + HttpRule.prototype.put = null; /** * HttpRule post. - * @member {string} post + * @member {string|null|undefined} post * @memberof google.api.HttpRule * @instance */ - HttpRule.prototype.post = ""; + HttpRule.prototype.post = null; /** * HttpRule delete. - * @member {string} delete + * @member {string|null|undefined} delete * @memberof google.api.HttpRule * @instance */ - HttpRule.prototype["delete"] = ""; + HttpRule.prototype["delete"] = null; /** * HttpRule patch. - * @member {string} patch + * @member {string|null|undefined} patch * @memberof google.api.HttpRule * @instance */ - HttpRule.prototype.patch = ""; + HttpRule.prototype.patch = null; /** * HttpRule custom. diff --git a/packages/google-cloud-gkehub/src/v1beta1/gke_hub_membership_service_client.ts b/packages/google-cloud-gkehub/src/v1beta1/gke_hub_membership_service_client.ts index 0607ce3f536..efc19765296 100644 --- a/packages/google-cloud-gkehub/src/v1beta1/gke_hub_membership_service_client.ts +++ b/packages/google-cloud-gkehub/src/v1beta1/gke_hub_membership_service_client.ts @@ -297,13 +297,14 @@ export class GkeHubMembershipServiceClient { ]; for (const methodName of gkeHubMembershipServiceStubMethods) { const callPromise = this.gkeHubMembershipServiceStub.then( - stub => (...args: Array<{}>) => { - if (this._terminated) { - return Promise.reject('The client has already been closed.'); - } - const func = stub[methodName]; - return func.apply(stub, args); - }, + stub => + (...args: Array<{}>) => { + if (this._terminated) { + return Promise.reject('The client has already been closed.'); + } + const func = stub[methodName]; + return func.apply(stub, args); + }, (err: Error | null | undefined) => () => { throw err; } @@ -463,11 +464,10 @@ export class GkeHubMembershipServiceClient { options = options || {}; options.otherArgs = options.otherArgs || {}; options.otherArgs.headers = options.otherArgs.headers || {}; - options.otherArgs.headers[ - 'x-goog-request-params' - ] = gax.routingHeader.fromParams({ - name: request.name || '', - }); + options.otherArgs.headers['x-goog-request-params'] = + gax.routingHeader.fromParams({ + name: request.name || '', + }); this.initialize(); return this.innerApiCalls.getMembership(request, options, callback); } @@ -574,11 +574,10 @@ export class GkeHubMembershipServiceClient { options = options || {}; options.otherArgs = options.otherArgs || {}; options.otherArgs.headers = options.otherArgs.headers || {}; - options.otherArgs.headers[ - 'x-goog-request-params' - ] = gax.routingHeader.fromParams({ - name: request.name || '', - }); + options.otherArgs.headers['x-goog-request-params'] = + gax.routingHeader.fromParams({ + name: request.name || '', + }); this.initialize(); return this.innerApiCalls.generateConnectManifest( request, @@ -684,11 +683,10 @@ export class GkeHubMembershipServiceClient { options = options || {}; options.otherArgs = options.otherArgs || {}; options.otherArgs.headers = options.otherArgs.headers || {}; - options.otherArgs.headers[ - 'x-goog-request-params' - ] = gax.routingHeader.fromParams({ - parent: request.parent || '', - }); + options.otherArgs.headers['x-goog-request-params'] = + gax.routingHeader.fromParams({ + parent: request.parent || '', + }); this.initialize(); return this.innerApiCalls.validateExclusivity(request, options, callback); } @@ -802,11 +800,10 @@ export class GkeHubMembershipServiceClient { options = options || {}; options.otherArgs = options.otherArgs || {}; options.otherArgs.headers = options.otherArgs.headers || {}; - options.otherArgs.headers[ - 'x-goog-request-params' - ] = gax.routingHeader.fromParams({ - name: request.name || '', - }); + options.otherArgs.headers['x-goog-request-params'] = + gax.routingHeader.fromParams({ + name: request.name || '', + }); this.initialize(); return this.innerApiCalls.generateExclusivityManifest( request, @@ -925,11 +922,10 @@ export class GkeHubMembershipServiceClient { options = options || {}; options.otherArgs = options.otherArgs || {}; options.otherArgs.headers = options.otherArgs.headers || {}; - options.otherArgs.headers[ - 'x-goog-request-params' - ] = gax.routingHeader.fromParams({ - parent: request.parent || '', - }); + options.otherArgs.headers['x-goog-request-params'] = + gax.routingHeader.fromParams({ + parent: request.parent || '', + }); this.initialize(); return this.innerApiCalls.createMembership(request, options, callback); } @@ -1068,11 +1064,10 @@ export class GkeHubMembershipServiceClient { options = options || {}; options.otherArgs = options.otherArgs || {}; options.otherArgs.headers = options.otherArgs.headers || {}; - options.otherArgs.headers[ - 'x-goog-request-params' - ] = gax.routingHeader.fromParams({ - name: request.name || '', - }); + options.otherArgs.headers['x-goog-request-params'] = + gax.routingHeader.fromParams({ + name: request.name || '', + }); this.initialize(); return this.innerApiCalls.deleteMembership(request, options, callback); } @@ -1221,11 +1216,10 @@ export class GkeHubMembershipServiceClient { options = options || {}; options.otherArgs = options.otherArgs || {}; options.otherArgs.headers = options.otherArgs.headers || {}; - options.otherArgs.headers[ - 'x-goog-request-params' - ] = gax.routingHeader.fromParams({ - name: request.name || '', - }); + options.otherArgs.headers['x-goog-request-params'] = + gax.routingHeader.fromParams({ + name: request.name || '', + }); this.initialize(); return this.innerApiCalls.updateMembership(request, options, callback); } @@ -1386,11 +1380,10 @@ export class GkeHubMembershipServiceClient { options = options || {}; options.otherArgs = options.otherArgs || {}; options.otherArgs.headers = options.otherArgs.headers || {}; - options.otherArgs.headers[ - 'x-goog-request-params' - ] = gax.routingHeader.fromParams({ - parent: request.parent || '', - }); + options.otherArgs.headers['x-goog-request-params'] = + gax.routingHeader.fromParams({ + parent: request.parent || '', + }); this.initialize(); return this.innerApiCalls.listMemberships(request, options, callback); } @@ -1454,11 +1447,10 @@ export class GkeHubMembershipServiceClient { options = options || {}; options.otherArgs = options.otherArgs || {}; options.otherArgs.headers = options.otherArgs.headers || {}; - options.otherArgs.headers[ - 'x-goog-request-params' - ] = gax.routingHeader.fromParams({ - parent: request.parent || '', - }); + options.otherArgs.headers['x-goog-request-params'] = + gax.routingHeader.fromParams({ + parent: request.parent || '', + }); const callSettings = new gax.CallSettings(options); this.initialize(); return this.descriptors.page.listMemberships.createStream( @@ -1533,17 +1525,16 @@ export class GkeHubMembershipServiceClient { options = options || {}; options.otherArgs = options.otherArgs || {}; options.otherArgs.headers = options.otherArgs.headers || {}; - options.otherArgs.headers[ - 'x-goog-request-params' - ] = gax.routingHeader.fromParams({ - parent: request.parent || '', - }); + options.otherArgs.headers['x-goog-request-params'] = + gax.routingHeader.fromParams({ + parent: request.parent || '', + }); options = options || {}; const callSettings = new gax.CallSettings(options); this.initialize(); return this.descriptors.page.listMemberships.asyncIterate( this.innerApiCalls['listMemberships'] as GaxCall, - (request as unknown) as RequestType, + request as unknown as RequestType, callSettings ) as AsyncIterable; } diff --git a/packages/google-cloud-gkehub/system-test/fixtures/sample/src/index.js b/packages/google-cloud-gkehub/system-test/fixtures/sample/src/index.js index fcb092a9c09..6eebfc4adaa 100644 --- a/packages/google-cloud-gkehub/system-test/fixtures/sample/src/index.js +++ b/packages/google-cloud-gkehub/system-test/fixtures/sample/src/index.js @@ -20,7 +20,8 @@ const gkehub = require('@google-cloud/gke-hub'); function main() { - const gkeHubMembershipServiceClient = new gkehub.GkeHubMembershipServiceClient(); + const gkeHubMembershipServiceClient = + new gkehub.GkeHubMembershipServiceClient(); } main(); diff --git a/packages/google-cloud-gkehub/test/gapic_gke_hub_membership_service_v1beta1.ts b/packages/google-cloud-gkehub/test/gapic_gke_hub_membership_service_v1beta1.ts index 032da071327..13b202dbcbd 100644 --- a/packages/google-cloud-gkehub/test/gapic_gke_hub_membership_service_v1beta1.ts +++ b/packages/google-cloud-gkehub/test/gapic_gke_hub_membership_service_v1beta1.ts @@ -28,10 +28,9 @@ import {PassThrough} from 'stream'; import {protobuf, LROperation, operationsProtos} from 'google-gax'; function generateSampleMessage(instance: T) { - const filledObject = (instance.constructor as typeof protobuf.Message).toObject( - instance as protobuf.Message, - {defaults: true} - ); + const filledObject = ( + instance.constructor as typeof protobuf.Message + ).toObject(instance as protobuf.Message, {defaults: true}); return (instance.constructor as typeof protobuf.Message).fromObject( filledObject ) as T; @@ -168,49 +167,46 @@ describe('v1beta1.GkeHubMembershipServiceClient', () => { }); it('should create a client with no option', () => { - const client = new gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient(); + const client = + new gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient(); assert(client); }); it('should create a client with gRPC fallback', () => { - const client = new gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient( - { + const client = + new gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient({ fallback: true, - } - ); + }); assert(client); }); it('has initialize method and supports deferred initialization', async () => { - const client = new gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient( - { + const client = + new gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient({ credentials: {client_email: 'bogus', private_key: 'bogus'}, projectId: 'bogus', - } - ); + }); assert.strictEqual(client.gkeHubMembershipServiceStub, undefined); await client.initialize(); assert(client.gkeHubMembershipServiceStub); }); it('has close method', () => { - const client = new gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient( - { + const client = + new gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient({ credentials: {client_email: 'bogus', private_key: 'bogus'}, projectId: 'bogus', - } - ); + }); client.close(); }); it('has getProjectId method', async () => { const fakeProjectId = 'fake-project-id'; - const client = new gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient( - { + const client = + new gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient({ credentials: {client_email: 'bogus', private_key: 'bogus'}, projectId: 'bogus', - } - ); + }); client.auth.getProjectId = sinon.stub().resolves(fakeProjectId); const result = await client.getProjectId(); assert.strictEqual(result, fakeProjectId); @@ -219,12 +215,11 @@ describe('v1beta1.GkeHubMembershipServiceClient', () => { it('has getProjectId method with callback', async () => { const fakeProjectId = 'fake-project-id'; - const client = new gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient( - { + const client = + new gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient({ credentials: {client_email: 'bogus', private_key: 'bogus'}, projectId: 'bogus', - } - ); + }); client.auth.getProjectId = sinon .stub() .callsArgWith(0, null, fakeProjectId); @@ -243,12 +238,13 @@ describe('v1beta1.GkeHubMembershipServiceClient', () => { describe('getMembership', () => { it('invokes getMembership without error', async () => { - const client = new gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient( - { - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - } - ); + const client = + new gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient( + { + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + } + ); client.initialize(); const request = generateSampleMessage( new protos.google.cloud.gkehub.v1beta1.GetMembershipRequest() @@ -276,12 +272,13 @@ describe('v1beta1.GkeHubMembershipServiceClient', () => { }); it('invokes getMembership without error using callback', async () => { - const client = new gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient( - { - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - } - ); + const client = + new gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient( + { + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + } + ); client.initialize(); const request = generateSampleMessage( new protos.google.cloud.gkehub.v1beta1.GetMembershipRequest() @@ -298,9 +295,8 @@ describe('v1beta1.GkeHubMembershipServiceClient', () => { const expectedResponse = generateSampleMessage( new protos.google.cloud.gkehub.v1beta1.Membership() ); - client.innerApiCalls.getMembership = stubSimpleCallWithCallback( - expectedResponse - ); + client.innerApiCalls.getMembership = + stubSimpleCallWithCallback(expectedResponse); const promise = new Promise((resolve, reject) => { client.getMembership( request, @@ -326,12 +322,13 @@ describe('v1beta1.GkeHubMembershipServiceClient', () => { }); it('invokes getMembership with error', async () => { - const client = new gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient( - { - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - } - ); + const client = + new gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient( + { + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + } + ); client.initialize(); const request = generateSampleMessage( new protos.google.cloud.gkehub.v1beta1.GetMembershipRequest() @@ -361,12 +358,13 @@ describe('v1beta1.GkeHubMembershipServiceClient', () => { describe('generateConnectManifest', () => { it('invokes generateConnectManifest without error', async () => { - const client = new gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient( - { - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - } - ); + const client = + new gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient( + { + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + } + ); client.initialize(); const request = generateSampleMessage( new protos.google.cloud.gkehub.v1beta1.GenerateConnectManifestRequest() @@ -383,9 +381,8 @@ describe('v1beta1.GkeHubMembershipServiceClient', () => { const expectedResponse = generateSampleMessage( new protos.google.cloud.gkehub.v1beta1.GenerateConnectManifestResponse() ); - client.innerApiCalls.generateConnectManifest = stubSimpleCall( - expectedResponse - ); + client.innerApiCalls.generateConnectManifest = + stubSimpleCall(expectedResponse); const [response] = await client.generateConnectManifest(request); assert.deepStrictEqual(response, expectedResponse); assert( @@ -396,12 +393,13 @@ describe('v1beta1.GkeHubMembershipServiceClient', () => { }); it('invokes generateConnectManifest without error using callback', async () => { - const client = new gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient( - { - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - } - ); + const client = + new gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient( + { + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + } + ); client.initialize(); const request = generateSampleMessage( new protos.google.cloud.gkehub.v1beta1.GenerateConnectManifestRequest() @@ -418,9 +416,8 @@ describe('v1beta1.GkeHubMembershipServiceClient', () => { const expectedResponse = generateSampleMessage( new protos.google.cloud.gkehub.v1beta1.GenerateConnectManifestResponse() ); - client.innerApiCalls.generateConnectManifest = stubSimpleCallWithCallback( - expectedResponse - ); + client.innerApiCalls.generateConnectManifest = + stubSimpleCallWithCallback(expectedResponse); const promise = new Promise((resolve, reject) => { client.generateConnectManifest( request, @@ -446,12 +443,13 @@ describe('v1beta1.GkeHubMembershipServiceClient', () => { }); it('invokes generateConnectManifest with error', async () => { - const client = new gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient( - { - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - } - ); + const client = + new gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient( + { + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + } + ); client.initialize(); const request = generateSampleMessage( new protos.google.cloud.gkehub.v1beta1.GenerateConnectManifestRequest() @@ -484,12 +482,13 @@ describe('v1beta1.GkeHubMembershipServiceClient', () => { describe('validateExclusivity', () => { it('invokes validateExclusivity without error', async () => { - const client = new gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient( - { - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - } - ); + const client = + new gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient( + { + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + } + ); client.initialize(); const request = generateSampleMessage( new protos.google.cloud.gkehub.v1beta1.ValidateExclusivityRequest() @@ -506,9 +505,8 @@ describe('v1beta1.GkeHubMembershipServiceClient', () => { const expectedResponse = generateSampleMessage( new protos.google.cloud.gkehub.v1beta1.ValidateExclusivityResponse() ); - client.innerApiCalls.validateExclusivity = stubSimpleCall( - expectedResponse - ); + client.innerApiCalls.validateExclusivity = + stubSimpleCall(expectedResponse); const [response] = await client.validateExclusivity(request); assert.deepStrictEqual(response, expectedResponse); assert( @@ -519,12 +517,13 @@ describe('v1beta1.GkeHubMembershipServiceClient', () => { }); it('invokes validateExclusivity without error using callback', async () => { - const client = new gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient( - { - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - } - ); + const client = + new gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient( + { + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + } + ); client.initialize(); const request = generateSampleMessage( new protos.google.cloud.gkehub.v1beta1.ValidateExclusivityRequest() @@ -541,9 +540,8 @@ describe('v1beta1.GkeHubMembershipServiceClient', () => { const expectedResponse = generateSampleMessage( new protos.google.cloud.gkehub.v1beta1.ValidateExclusivityResponse() ); - client.innerApiCalls.validateExclusivity = stubSimpleCallWithCallback( - expectedResponse - ); + client.innerApiCalls.validateExclusivity = + stubSimpleCallWithCallback(expectedResponse); const promise = new Promise((resolve, reject) => { client.validateExclusivity( request, @@ -569,12 +567,13 @@ describe('v1beta1.GkeHubMembershipServiceClient', () => { }); it('invokes validateExclusivity with error', async () => { - const client = new gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient( - { - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - } - ); + const client = + new gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient( + { + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + } + ); client.initialize(); const request = generateSampleMessage( new protos.google.cloud.gkehub.v1beta1.ValidateExclusivityRequest() @@ -604,12 +603,13 @@ describe('v1beta1.GkeHubMembershipServiceClient', () => { describe('generateExclusivityManifest', () => { it('invokes generateExclusivityManifest without error', async () => { - const client = new gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient( - { - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - } - ); + const client = + new gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient( + { + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + } + ); client.initialize(); const request = generateSampleMessage( new protos.google.cloud.gkehub.v1beta1.GenerateExclusivityManifestRequest() @@ -626,9 +626,8 @@ describe('v1beta1.GkeHubMembershipServiceClient', () => { const expectedResponse = generateSampleMessage( new protos.google.cloud.gkehub.v1beta1.GenerateExclusivityManifestResponse() ); - client.innerApiCalls.generateExclusivityManifest = stubSimpleCall( - expectedResponse - ); + client.innerApiCalls.generateExclusivityManifest = + stubSimpleCall(expectedResponse); const [response] = await client.generateExclusivityManifest(request); assert.deepStrictEqual(response, expectedResponse); assert( @@ -639,12 +638,13 @@ describe('v1beta1.GkeHubMembershipServiceClient', () => { }); it('invokes generateExclusivityManifest without error using callback', async () => { - const client = new gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient( - { - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - } - ); + const client = + new gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient( + { + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + } + ); client.initialize(); const request = generateSampleMessage( new protos.google.cloud.gkehub.v1beta1.GenerateExclusivityManifestRequest() @@ -661,9 +661,8 @@ describe('v1beta1.GkeHubMembershipServiceClient', () => { const expectedResponse = generateSampleMessage( new protos.google.cloud.gkehub.v1beta1.GenerateExclusivityManifestResponse() ); - client.innerApiCalls.generateExclusivityManifest = stubSimpleCallWithCallback( - expectedResponse - ); + client.innerApiCalls.generateExclusivityManifest = + stubSimpleCallWithCallback(expectedResponse); const promise = new Promise((resolve, reject) => { client.generateExclusivityManifest( request, @@ -689,12 +688,13 @@ describe('v1beta1.GkeHubMembershipServiceClient', () => { }); it('invokes generateExclusivityManifest with error', async () => { - const client = new gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient( - { - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - } - ); + const client = + new gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient( + { + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + } + ); client.initialize(); const request = generateSampleMessage( new protos.google.cloud.gkehub.v1beta1.GenerateExclusivityManifestRequest() @@ -727,12 +727,13 @@ describe('v1beta1.GkeHubMembershipServiceClient', () => { describe('createMembership', () => { it('invokes createMembership without error', async () => { - const client = new gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient( - { - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - } - ); + const client = + new gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient( + { + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + } + ); client.initialize(); const request = generateSampleMessage( new protos.google.cloud.gkehub.v1beta1.CreateMembershipRequest() @@ -749,9 +750,8 @@ describe('v1beta1.GkeHubMembershipServiceClient', () => { const expectedResponse = generateSampleMessage( new protos.google.longrunning.Operation() ); - client.innerApiCalls.createMembership = stubLongRunningCall( - expectedResponse - ); + client.innerApiCalls.createMembership = + stubLongRunningCall(expectedResponse); const [operation] = await client.createMembership(request); const [response] = await operation.promise(); assert.deepStrictEqual(response, expectedResponse); @@ -763,12 +763,13 @@ describe('v1beta1.GkeHubMembershipServiceClient', () => { }); it('invokes createMembership without error using callback', async () => { - const client = new gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient( - { - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - } - ); + const client = + new gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient( + { + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + } + ); client.initialize(); const request = generateSampleMessage( new protos.google.cloud.gkehub.v1beta1.CreateMembershipRequest() @@ -785,9 +786,8 @@ describe('v1beta1.GkeHubMembershipServiceClient', () => { const expectedResponse = generateSampleMessage( new protos.google.longrunning.Operation() ); - client.innerApiCalls.createMembership = stubLongRunningCallWithCallback( - expectedResponse - ); + client.innerApiCalls.createMembership = + stubLongRunningCallWithCallback(expectedResponse); const promise = new Promise((resolve, reject) => { client.createMembership( request, @@ -820,12 +820,13 @@ describe('v1beta1.GkeHubMembershipServiceClient', () => { }); it('invokes createMembership with call error', async () => { - const client = new gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient( - { - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - } - ); + const client = + new gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient( + { + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + } + ); client.initialize(); const request = generateSampleMessage( new protos.google.cloud.gkehub.v1beta1.CreateMembershipRequest() @@ -853,12 +854,13 @@ describe('v1beta1.GkeHubMembershipServiceClient', () => { }); it('invokes createMembership with LRO error', async () => { - const client = new gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient( - { - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - } - ); + const client = + new gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient( + { + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + } + ); client.initialize(); const request = generateSampleMessage( new protos.google.cloud.gkehub.v1beta1.CreateMembershipRequest() @@ -888,12 +890,13 @@ describe('v1beta1.GkeHubMembershipServiceClient', () => { }); it('invokes checkCreateMembershipProgress without error', async () => { - const client = new gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient( - { - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - } - ); + const client = + new gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient( + { + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + } + ); client.initialize(); const expectedResponse = generateSampleMessage( new operationsProtos.google.longrunning.Operation() @@ -912,12 +915,13 @@ describe('v1beta1.GkeHubMembershipServiceClient', () => { }); it('invokes checkCreateMembershipProgress with error', async () => { - const client = new gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient( - { - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - } - ); + const client = + new gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient( + { + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + } + ); client.initialize(); const expectedError = new Error('expected'); @@ -935,12 +939,13 @@ describe('v1beta1.GkeHubMembershipServiceClient', () => { describe('deleteMembership', () => { it('invokes deleteMembership without error', async () => { - const client = new gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient( - { - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - } - ); + const client = + new gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient( + { + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + } + ); client.initialize(); const request = generateSampleMessage( new protos.google.cloud.gkehub.v1beta1.DeleteMembershipRequest() @@ -957,9 +962,8 @@ describe('v1beta1.GkeHubMembershipServiceClient', () => { const expectedResponse = generateSampleMessage( new protos.google.longrunning.Operation() ); - client.innerApiCalls.deleteMembership = stubLongRunningCall( - expectedResponse - ); + client.innerApiCalls.deleteMembership = + stubLongRunningCall(expectedResponse); const [operation] = await client.deleteMembership(request); const [response] = await operation.promise(); assert.deepStrictEqual(response, expectedResponse); @@ -971,12 +975,13 @@ describe('v1beta1.GkeHubMembershipServiceClient', () => { }); it('invokes deleteMembership without error using callback', async () => { - const client = new gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient( - { - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - } - ); + const client = + new gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient( + { + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + } + ); client.initialize(); const request = generateSampleMessage( new protos.google.cloud.gkehub.v1beta1.DeleteMembershipRequest() @@ -993,9 +998,8 @@ describe('v1beta1.GkeHubMembershipServiceClient', () => { const expectedResponse = generateSampleMessage( new protos.google.longrunning.Operation() ); - client.innerApiCalls.deleteMembership = stubLongRunningCallWithCallback( - expectedResponse - ); + client.innerApiCalls.deleteMembership = + stubLongRunningCallWithCallback(expectedResponse); const promise = new Promise((resolve, reject) => { client.deleteMembership( request, @@ -1028,12 +1032,13 @@ describe('v1beta1.GkeHubMembershipServiceClient', () => { }); it('invokes deleteMembership with call error', async () => { - const client = new gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient( - { - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - } - ); + const client = + new gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient( + { + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + } + ); client.initialize(); const request = generateSampleMessage( new protos.google.cloud.gkehub.v1beta1.DeleteMembershipRequest() @@ -1061,12 +1066,13 @@ describe('v1beta1.GkeHubMembershipServiceClient', () => { }); it('invokes deleteMembership with LRO error', async () => { - const client = new gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient( - { - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - } - ); + const client = + new gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient( + { + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + } + ); client.initialize(); const request = generateSampleMessage( new protos.google.cloud.gkehub.v1beta1.DeleteMembershipRequest() @@ -1096,12 +1102,13 @@ describe('v1beta1.GkeHubMembershipServiceClient', () => { }); it('invokes checkDeleteMembershipProgress without error', async () => { - const client = new gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient( - { - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - } - ); + const client = + new gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient( + { + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + } + ); client.initialize(); const expectedResponse = generateSampleMessage( new operationsProtos.google.longrunning.Operation() @@ -1120,12 +1127,13 @@ describe('v1beta1.GkeHubMembershipServiceClient', () => { }); it('invokes checkDeleteMembershipProgress with error', async () => { - const client = new gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient( - { - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - } - ); + const client = + new gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient( + { + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + } + ); client.initialize(); const expectedError = new Error('expected'); @@ -1143,12 +1151,13 @@ describe('v1beta1.GkeHubMembershipServiceClient', () => { describe('updateMembership', () => { it('invokes updateMembership without error', async () => { - const client = new gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient( - { - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - } - ); + const client = + new gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient( + { + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + } + ); client.initialize(); const request = generateSampleMessage( new protos.google.cloud.gkehub.v1beta1.UpdateMembershipRequest() @@ -1165,9 +1174,8 @@ describe('v1beta1.GkeHubMembershipServiceClient', () => { const expectedResponse = generateSampleMessage( new protos.google.longrunning.Operation() ); - client.innerApiCalls.updateMembership = stubLongRunningCall( - expectedResponse - ); + client.innerApiCalls.updateMembership = + stubLongRunningCall(expectedResponse); const [operation] = await client.updateMembership(request); const [response] = await operation.promise(); assert.deepStrictEqual(response, expectedResponse); @@ -1179,12 +1187,13 @@ describe('v1beta1.GkeHubMembershipServiceClient', () => { }); it('invokes updateMembership without error using callback', async () => { - const client = new gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient( - { - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - } - ); + const client = + new gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient( + { + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + } + ); client.initialize(); const request = generateSampleMessage( new protos.google.cloud.gkehub.v1beta1.UpdateMembershipRequest() @@ -1201,9 +1210,8 @@ describe('v1beta1.GkeHubMembershipServiceClient', () => { const expectedResponse = generateSampleMessage( new protos.google.longrunning.Operation() ); - client.innerApiCalls.updateMembership = stubLongRunningCallWithCallback( - expectedResponse - ); + client.innerApiCalls.updateMembership = + stubLongRunningCallWithCallback(expectedResponse); const promise = new Promise((resolve, reject) => { client.updateMembership( request, @@ -1236,12 +1244,13 @@ describe('v1beta1.GkeHubMembershipServiceClient', () => { }); it('invokes updateMembership with call error', async () => { - const client = new gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient( - { - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - } - ); + const client = + new gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient( + { + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + } + ); client.initialize(); const request = generateSampleMessage( new protos.google.cloud.gkehub.v1beta1.UpdateMembershipRequest() @@ -1269,12 +1278,13 @@ describe('v1beta1.GkeHubMembershipServiceClient', () => { }); it('invokes updateMembership with LRO error', async () => { - const client = new gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient( - { - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - } - ); + const client = + new gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient( + { + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + } + ); client.initialize(); const request = generateSampleMessage( new protos.google.cloud.gkehub.v1beta1.UpdateMembershipRequest() @@ -1304,12 +1314,13 @@ describe('v1beta1.GkeHubMembershipServiceClient', () => { }); it('invokes checkUpdateMembershipProgress without error', async () => { - const client = new gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient( - { - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - } - ); + const client = + new gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient( + { + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + } + ); client.initialize(); const expectedResponse = generateSampleMessage( new operationsProtos.google.longrunning.Operation() @@ -1328,12 +1339,13 @@ describe('v1beta1.GkeHubMembershipServiceClient', () => { }); it('invokes checkUpdateMembershipProgress with error', async () => { - const client = new gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient( - { - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - } - ); + const client = + new gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient( + { + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + } + ); client.initialize(); const expectedError = new Error('expected'); @@ -1351,12 +1363,13 @@ describe('v1beta1.GkeHubMembershipServiceClient', () => { describe('listMemberships', () => { it('invokes listMemberships without error', async () => { - const client = new gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient( - { - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - } - ); + const client = + new gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient( + { + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + } + ); client.initialize(); const request = generateSampleMessage( new protos.google.cloud.gkehub.v1beta1.ListMembershipsRequest() @@ -1392,12 +1405,13 @@ describe('v1beta1.GkeHubMembershipServiceClient', () => { }); it('invokes listMemberships without error using callback', async () => { - const client = new gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient( - { - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - } - ); + const client = + new gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient( + { + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + } + ); client.initialize(); const request = generateSampleMessage( new protos.google.cloud.gkehub.v1beta1.ListMembershipsRequest() @@ -1422,9 +1436,8 @@ describe('v1beta1.GkeHubMembershipServiceClient', () => { new protos.google.cloud.gkehub.v1beta1.Membership() ), ]; - client.innerApiCalls.listMemberships = stubSimpleCallWithCallback( - expectedResponse - ); + client.innerApiCalls.listMemberships = + stubSimpleCallWithCallback(expectedResponse); const promise = new Promise((resolve, reject) => { client.listMemberships( request, @@ -1450,12 +1463,13 @@ describe('v1beta1.GkeHubMembershipServiceClient', () => { }); it('invokes listMemberships with error', async () => { - const client = new gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient( - { - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - } - ); + const client = + new gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient( + { + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + } + ); client.initialize(); const request = generateSampleMessage( new protos.google.cloud.gkehub.v1beta1.ListMembershipsRequest() @@ -1483,12 +1497,13 @@ describe('v1beta1.GkeHubMembershipServiceClient', () => { }); it('invokes listMembershipsStream without error', async () => { - const client = new gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient( - { - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - } - ); + const client = + new gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient( + { + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + } + ); client.initialize(); const request = generateSampleMessage( new protos.google.cloud.gkehub.v1beta1.ListMembershipsRequest() @@ -1506,9 +1521,8 @@ describe('v1beta1.GkeHubMembershipServiceClient', () => { new protos.google.cloud.gkehub.v1beta1.Membership() ), ]; - client.descriptors.page.listMemberships.createStream = stubPageStreamingCall( - expectedResponse - ); + client.descriptors.page.listMemberships.createStream = + stubPageStreamingCall(expectedResponse); const stream = client.listMembershipsStream(request); const promise = new Promise((resolve, reject) => { const responses: protos.google.cloud.gkehub.v1beta1.Membership[] = []; @@ -1533,21 +1547,21 @@ describe('v1beta1.GkeHubMembershipServiceClient', () => { .calledWith(client.innerApiCalls.listMemberships, request) ); assert.strictEqual( - (client.descriptors.page.listMemberships - .createStream as SinonStub).getCall(0).args[2].otherArgs.headers[ - 'x-goog-request-params' - ], + ( + client.descriptors.page.listMemberships.createStream as SinonStub + ).getCall(0).args[2].otherArgs.headers['x-goog-request-params'], expectedHeaderRequestParams ); }); it('invokes listMembershipsStream with error', async () => { - const client = new gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient( - { - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - } - ); + const client = + new gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient( + { + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + } + ); client.initialize(); const request = generateSampleMessage( new protos.google.cloud.gkehub.v1beta1.ListMembershipsRequest() @@ -1555,10 +1569,8 @@ describe('v1beta1.GkeHubMembershipServiceClient', () => { request.parent = ''; const expectedHeaderRequestParams = 'parent='; const expectedError = new Error('expected'); - client.descriptors.page.listMemberships.createStream = stubPageStreamingCall( - undefined, - expectedError - ); + client.descriptors.page.listMemberships.createStream = + stubPageStreamingCall(undefined, expectedError); const stream = client.listMembershipsStream(request); const promise = new Promise((resolve, reject) => { const responses: protos.google.cloud.gkehub.v1beta1.Membership[] = []; @@ -1582,21 +1594,21 @@ describe('v1beta1.GkeHubMembershipServiceClient', () => { .calledWith(client.innerApiCalls.listMemberships, request) ); assert.strictEqual( - (client.descriptors.page.listMemberships - .createStream as SinonStub).getCall(0).args[2].otherArgs.headers[ - 'x-goog-request-params' - ], + ( + client.descriptors.page.listMemberships.createStream as SinonStub + ).getCall(0).args[2].otherArgs.headers['x-goog-request-params'], expectedHeaderRequestParams ); }); it('uses async iteration with listMemberships without error', async () => { - const client = new gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient( - { - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - } - ); + const client = + new gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient( + { + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + } + ); client.initialize(); const request = generateSampleMessage( new protos.google.cloud.gkehub.v1beta1.ListMembershipsRequest() @@ -1614,9 +1626,8 @@ describe('v1beta1.GkeHubMembershipServiceClient', () => { new protos.google.cloud.gkehub.v1beta1.Membership() ), ]; - client.descriptors.page.listMemberships.asyncIterate = stubAsyncIterationCall( - expectedResponse - ); + client.descriptors.page.listMemberships.asyncIterate = + stubAsyncIterationCall(expectedResponse); const responses: protos.google.cloud.gkehub.v1beta1.IMembership[] = []; const iterable = client.listMembershipsAsync(request); for await (const resource of iterable) { @@ -1624,26 +1635,27 @@ describe('v1beta1.GkeHubMembershipServiceClient', () => { } assert.deepStrictEqual(responses, expectedResponse); assert.deepStrictEqual( - (client.descriptors.page.listMemberships - .asyncIterate as SinonStub).getCall(0).args[1], + ( + client.descriptors.page.listMemberships.asyncIterate as SinonStub + ).getCall(0).args[1], request ); assert.strictEqual( - (client.descriptors.page.listMemberships - .asyncIterate as SinonStub).getCall(0).args[2].otherArgs.headers[ - 'x-goog-request-params' - ], + ( + client.descriptors.page.listMemberships.asyncIterate as SinonStub + ).getCall(0).args[2].otherArgs.headers['x-goog-request-params'], expectedHeaderRequestParams ); }); it('uses async iteration with listMemberships with error', async () => { - const client = new gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient( - { - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - } - ); + const client = + new gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient( + { + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + } + ); client.initialize(); const request = generateSampleMessage( new protos.google.cloud.gkehub.v1beta1.ListMembershipsRequest() @@ -1651,10 +1663,8 @@ describe('v1beta1.GkeHubMembershipServiceClient', () => { request.parent = ''; const expectedHeaderRequestParams = 'parent='; const expectedError = new Error('expected'); - client.descriptors.page.listMemberships.asyncIterate = stubAsyncIterationCall( - undefined, - expectedError - ); + client.descriptors.page.listMemberships.asyncIterate = + stubAsyncIterationCall(undefined, expectedError); const iterable = client.listMembershipsAsync(request); await assert.rejects(async () => { const responses: protos.google.cloud.gkehub.v1beta1.IMembership[] = []; @@ -1663,15 +1673,15 @@ describe('v1beta1.GkeHubMembershipServiceClient', () => { } }); assert.deepStrictEqual( - (client.descriptors.page.listMemberships - .asyncIterate as SinonStub).getCall(0).args[1], + ( + client.descriptors.page.listMemberships.asyncIterate as SinonStub + ).getCall(0).args[1], request ); assert.strictEqual( - (client.descriptors.page.listMemberships - .asyncIterate as SinonStub).getCall(0).args[2].otherArgs.headers[ - 'x-goog-request-params' - ], + ( + client.descriptors.page.listMemberships.asyncIterate as SinonStub + ).getCall(0).args[2].otherArgs.headers['x-goog-request-params'], expectedHeaderRequestParams ); }); @@ -1685,12 +1695,13 @@ describe('v1beta1.GkeHubMembershipServiceClient', () => { location: 'locationValue', membership: 'membershipValue', }; - const client = new gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient( - { - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - } - ); + const client = + new gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient( + { + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + } + ); client.initialize(); client.pathTemplates.membershipPathTemplate.render = sinon .stub() From ec9a37dd3b7aaa8451f18c710910588dfa31a929 Mon Sep 17 00:00:00 2001 From: "gcf-owl-bot[bot]" <78513119+gcf-owl-bot[bot]@users.noreply.github.com> Date: Tue, 11 May 2021 21:56:15 +0000 Subject: [PATCH 21/92] fix: use require() to load JSON protos (#47) The library is regenerated with gapic-generator-typescript v1.3.1. Committer: @alexander-fenster PiperOrigin-RevId: 372468161 Source-Link: https://github.com/googleapis/googleapis/commit/75880c3e6a6aa2597400582848e81bbbfac51dea Source-Link: https://github.com/googleapis/googleapis-gen/commit/77b18044813d4c8c415ff9ea68e76e307eb8e904 --- .../gke_hub_membership_service_client.ts | 26 +++---------------- 1 file changed, 4 insertions(+), 22 deletions(-) diff --git a/packages/google-cloud-gkehub/src/v1beta1/gke_hub_membership_service_client.ts b/packages/google-cloud-gkehub/src/v1beta1/gke_hub_membership_service_client.ts index efc19765296..089c9a73554 100644 --- a/packages/google-cloud-gkehub/src/v1beta1/gke_hub_membership_service_client.ts +++ b/packages/google-cloud-gkehub/src/v1beta1/gke_hub_membership_service_client.ts @@ -32,6 +32,7 @@ import * as path from 'path'; import {Transform} from 'stream'; import {RequestType} from 'google-gax/build/src/apitypes'; import * as protos from '../../protos/protos'; +import jsonProtos = require('../../protos/protos.json'); /** * Client JSON configuration object, loaded from * `src/v1beta1/gke_hub_membership_service_client_config.json`. @@ -149,22 +150,7 @@ export class GkeHubMembershipServiceClient { clientHeader.push(`${opts.libName}/${opts.libVersion}`); } // Load the applicable protos. - // For Node.js, pass the path to JSON proto file. - // For browsers, pass the JSON content. - - const nodejsProtoPath = path.join( - __dirname, - '..', - '..', - 'protos', - 'protos.json' - ); - this._protos = this._gaxGrpc.loadProto( - opts.fallback - ? // eslint-disable-next-line @typescript-eslint/no-var-requires - require('../../protos/protos.json') - : nodejsProtoPath - ); + this._protos = this._gaxGrpc.loadProtoJSON(jsonProtos); // This API contains "path templates"; forward-slash-separated // identifiers to uniquely identify resources within the API. @@ -186,15 +172,11 @@ export class GkeHubMembershipServiceClient { ), }; + const protoFilesRoot = this._gaxModule.protobuf.Root.fromJSON(jsonProtos); + // This API contains "long-running operations", which return a // an Operation object that allows for tracking of the operation, // rather than holding a request open. - const protoFilesRoot = opts.fallback - ? this._gaxModule.protobuf.Root.fromJSON( - // eslint-disable-next-line @typescript-eslint/no-var-requires - require('../../protos/protos.json') - ) - : this._gaxModule.protobuf.loadSync(nodejsProtoPath); this.operationsClient = this._gaxModule .lro({ From 319361251081aad66905450bc0764490047b08c7 Mon Sep 17 00:00:00 2001 From: "gcf-owl-bot[bot]" <78513119+gcf-owl-bot[bot]@users.noreply.github.com> Date: Tue, 11 May 2021 23:12:56 +0000 Subject: [PATCH 22/92] chore: update gapic-generator-typescript to v1.3.2 (#48) Committer: @alexander-fenster PiperOrigin-RevId: 372656503 Source-Link: https://github.com/googleapis/googleapis/commit/6fa858c6489b1bbc505a7d7afe39f2dc45819c38 Source-Link: https://github.com/googleapis/googleapis-gen/commit/d7c95df3ab1ea1b4c22a4542bad4924cc46d1388 --- .../src/v1beta1/gke_hub_membership_service_client.ts | 1 - 1 file changed, 1 deletion(-) diff --git a/packages/google-cloud-gkehub/src/v1beta1/gke_hub_membership_service_client.ts b/packages/google-cloud-gkehub/src/v1beta1/gke_hub_membership_service_client.ts index 089c9a73554..7d3ea438b09 100644 --- a/packages/google-cloud-gkehub/src/v1beta1/gke_hub_membership_service_client.ts +++ b/packages/google-cloud-gkehub/src/v1beta1/gke_hub_membership_service_client.ts @@ -27,7 +27,6 @@ import { PaginationCallback, GaxCall, } from 'google-gax'; -import * as path from 'path'; import {Transform} from 'stream'; import {RequestType} from 'google-gax/build/src/apitypes'; From 3e5c052831a849b7956e6688a589ee175cb49b07 Mon Sep 17 00:00:00 2001 From: "release-please[bot]" <55107282+release-please[bot]@users.noreply.github.com> Date: Thu, 13 May 2021 10:28:35 -0700 Subject: [PATCH 23/92] chore: release 1.1.1 (#45) Co-authored-by: release-please[bot] <55107282+release-please[bot]@users.noreply.github.com> --- packages/google-cloud-gkehub/CHANGELOG.md | 8 ++++++++ packages/google-cloud-gkehub/package.json | 2 +- packages/google-cloud-gkehub/samples/package.json | 2 +- 3 files changed, 10 insertions(+), 2 deletions(-) diff --git a/packages/google-cloud-gkehub/CHANGELOG.md b/packages/google-cloud-gkehub/CHANGELOG.md index d9ca6c33aff..71b925ef56d 100644 --- a/packages/google-cloud-gkehub/CHANGELOG.md +++ b/packages/google-cloud-gkehub/CHANGELOG.md @@ -1,5 +1,13 @@ # Changelog +### [1.1.1](https://www.github.com/googleapis/nodejs-gke-hub/compare/v1.1.0...v1.1.1) (2021-05-12) + + +### Bug Fixes + +* **deps:** require google-gax v2.12.0 ([#44](https://www.github.com/googleapis/nodejs-gke-hub/issues/44)) ([c14ef1e](https://www.github.com/googleapis/nodejs-gke-hub/commit/c14ef1ed09325896027ade1c36cbc6b670f115df)) +* use require() to load JSON protos ([#47](https://www.github.com/googleapis/nodejs-gke-hub/issues/47)) ([5f7bef5](https://www.github.com/googleapis/nodejs-gke-hub/commit/5f7bef5c92f24230f3eae878431be1599a5688ed)) + ## [1.1.0](https://www.github.com/googleapis/nodejs-gke-hub/compare/v1.0.2...v1.1.0) (2021-02-14) diff --git a/packages/google-cloud-gkehub/package.json b/packages/google-cloud-gkehub/package.json index 21396aa760a..db5b1d68acb 100644 --- a/packages/google-cloud-gkehub/package.json +++ b/packages/google-cloud-gkehub/package.json @@ -1,6 +1,6 @@ { "name": "@google-cloud/gke-hub", - "version": "1.1.0", + "version": "1.1.1", "description": "Gkehub client for Node.js", "repository": "googleapis/nodejs-gke-hub", "license": "Apache-2.0", diff --git a/packages/google-cloud-gkehub/samples/package.json b/packages/google-cloud-gkehub/samples/package.json index 65b5ef21a77..7cd594e1623 100644 --- a/packages/google-cloud-gkehub/samples/package.json +++ b/packages/google-cloud-gkehub/samples/package.json @@ -13,7 +13,7 @@ "test": "c8 mocha --timeout 600000 test/*.js" }, "dependencies": { - "@google-cloud/gke-hub": "^1.1.0" + "@google-cloud/gke-hub": "^1.1.1" }, "devDependencies": { "c8": "^7.1.0", From dd2eebce5dbe54072e37e5b65be514b9a17e8fd2 Mon Sep 17 00:00:00 2001 From: WhiteSource Renovate Date: Tue, 25 May 2021 18:00:10 +0200 Subject: [PATCH 24/92] chore(deps): update dependency sinon to v11 (#51) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit [![WhiteSource Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com) This PR contains the following updates: | Package | Change | Age | Adoption | Passing | Confidence | |---|---|---|---|---|---| | [sinon](https://sinonjs.org/) ([source](https://togithub.com/sinonjs/sinon)) | [`^10.0.0` -> `^11.0.0`](https://renovatebot.com/diffs/npm/sinon/10.0.0/11.1.0) | [![age](https://badges.renovateapi.com/packages/npm/sinon/11.1.0/age-slim)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://badges.renovateapi.com/packages/npm/sinon/11.1.0/adoption-slim)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://badges.renovateapi.com/packages/npm/sinon/11.1.0/compatibility-slim/10.0.0)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://badges.renovateapi.com/packages/npm/sinon/11.1.0/confidence-slim/10.0.0)](https://docs.renovatebot.com/merge-confidence/) | --- ### Release Notes
sinonjs/sinon ### [`v11.1.0`](https://togithub.com/sinonjs/sinon/blob/master/CHANGELOG.md#​1110--2021-05-25) [Compare Source](https://togithub.com/sinonjs/sinon/compare/v11.0.0...31be9a5d5a4762ef01cb195f29024616dfee9ce8) \================== - Add sinon.promise() implementation ([#​2369](https://togithub.com/sinonjs/sinon/issues/2369)) - Set wrappedMethod on getters/setters ([#​2378](https://togithub.com/sinonjs/sinon/issues/2378)) - \[Docs] Update fake-server usage & descriptions ([#​2365](https://togithub.com/sinonjs/sinon/issues/2365)) - Fake docs improvement ([#​2360](https://togithub.com/sinonjs/sinon/issues/2360)) - Update nise to 5.1.0 (fixed [#​2318](https://togithub.com/sinonjs/sinon/issues/2318)) ### [`v11.0.0`](https://togithub.com/sinonjs/sinon/blob/master/CHANGELOG.md#​1100--2021-05-24) [Compare Source](https://togithub.com/sinonjs/sinon/compare/v10.0.1...v11.0.0) \================== - Explicitly use samsam 6.0.2 with fix for [#​2345](https://togithub.com/sinonjs/sinon/issues/2345) - Update most packages ([#​2371](https://togithub.com/sinonjs/sinon/issues/2371)) - Update compatibility docs ([#​2366](https://togithub.com/sinonjs/sinon/issues/2366)) - Update packages (includes breaking fake-timers change, see [#​2352](https://togithub.com/sinonjs/sinon/issues/2352)) - Warn of potential memory leaks ([#​2357](https://togithub.com/sinonjs/sinon/issues/2357)) - Fix clock test errors ### [`v10.0.1`](https://togithub.com/sinonjs/sinon/blob/master/CHANGELOG.md#​1001--2021-04-08) [Compare Source](https://togithub.com/sinonjs/sinon/compare/v10.0.0...v10.0.1) \================== - Upgrade sinon components (bumps y18n to 4.0.1) - Bump y18n from 4.0.0 to 4.0.1
--- ### Configuration 📅 **Schedule**: "after 9am and before 3pm" (UTC). 🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied. ♻️ **Rebasing**: Whenever PR is behind base branch, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about this update again. --- - [ ] If you want to rebase/retry this PR, check this box. --- This PR has been generated by [WhiteSource Renovate](https://renovate.whitesourcesoftware.com). View repository job log [here](https://app.renovatebot.com/dashboard#github/googleapis/nodejs-gke-hub). --- packages/google-cloud-gkehub/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/google-cloud-gkehub/package.json b/packages/google-cloud-gkehub/package.json index db5b1d68acb..d5b316e01bc 100644 --- a/packages/google-cloud-gkehub/package.json +++ b/packages/google-cloud-gkehub/package.json @@ -54,7 +54,7 @@ "mocha": "^8.2.1", "null-loader": "^4.0.1", "pack-n-play": "^1.0.0-2", - "sinon": "^10.0.0", + "sinon": "^11.0.0", "ts-loader": "^9.0.0", "typescript": "^4.1.2", "webpack": "^5.9.0", From dc3903fb45f9b7a958d3eb6cfffd458c8107755c Mon Sep 17 00:00:00 2001 From: "gcf-owl-bot[bot]" <78513119+gcf-owl-bot[bot]@users.noreply.github.com> Date: Tue, 25 May 2021 20:50:16 +0000 Subject: [PATCH 25/92] fix: GoogleAdsError missing using generator version after 1.3.0 (#52) [PR](https://github.com/googleapis/gapic-generator-typescript/pull/878) within updated gapic-generator-typescript version 1.4.0 Committer: @summer-ji-eng PiperOrigin-RevId: 375759421 Source-Link: https://github.com/googleapis/googleapis/commit/95fa72fdd0d69b02d72c33b37d1e4cc66d4b1446 Source-Link: https://github.com/googleapis/googleapis-gen/commit/f40a34377ad488a7c2bc3992b3c8d5faf5a15c46 --- .../src/v1beta1/gke_hub_membership_service_client.ts | 2 ++ 1 file changed, 2 insertions(+) diff --git a/packages/google-cloud-gkehub/src/v1beta1/gke_hub_membership_service_client.ts b/packages/google-cloud-gkehub/src/v1beta1/gke_hub_membership_service_client.ts index 7d3ea438b09..27d31f076d0 100644 --- a/packages/google-cloud-gkehub/src/v1beta1/gke_hub_membership_service_client.ts +++ b/packages/google-cloud-gkehub/src/v1beta1/gke_hub_membership_service_client.ts @@ -144,6 +144,8 @@ export class GkeHubMembershipServiceClient { } if (!opts.fallback) { clientHeader.push(`grpc/${this._gaxGrpc.grpcVersion}`); + } else if (opts.fallback === 'rest') { + clientHeader.push(`rest/${this._gaxGrpc.grpcVersion}`); } if (opts.libName && opts.libVersion) { clientHeader.push(`${opts.libName}/${opts.libVersion}`); From 76a93f96347f26376e306a7d7edd61242428d9b9 Mon Sep 17 00:00:00 2001 From: "release-please[bot]" <55107282+release-please[bot]@users.noreply.github.com> Date: Tue, 25 May 2021 18:41:36 -0400 Subject: [PATCH 26/92] chore: release 1.1.2 (#53) Co-authored-by: release-please[bot] <55107282+release-please[bot]@users.noreply.github.com> --- packages/google-cloud-gkehub/CHANGELOG.md | 7 +++++++ packages/google-cloud-gkehub/package.json | 2 +- packages/google-cloud-gkehub/samples/package.json | 2 +- 3 files changed, 9 insertions(+), 2 deletions(-) diff --git a/packages/google-cloud-gkehub/CHANGELOG.md b/packages/google-cloud-gkehub/CHANGELOG.md index 71b925ef56d..508ee3b3233 100644 --- a/packages/google-cloud-gkehub/CHANGELOG.md +++ b/packages/google-cloud-gkehub/CHANGELOG.md @@ -1,5 +1,12 @@ # Changelog +### [1.1.2](https://www.github.com/googleapis/nodejs-gke-hub/compare/v1.1.1...v1.1.2) (2021-05-25) + + +### Bug Fixes + +* GoogleAdsError missing using generator version after 1.3.0 ([#52](https://www.github.com/googleapis/nodejs-gke-hub/issues/52)) ([943e2f7](https://www.github.com/googleapis/nodejs-gke-hub/commit/943e2f7b36d51e281f6d8f847f32ff8a788ab295)) + ### [1.1.1](https://www.github.com/googleapis/nodejs-gke-hub/compare/v1.1.0...v1.1.1) (2021-05-12) diff --git a/packages/google-cloud-gkehub/package.json b/packages/google-cloud-gkehub/package.json index d5b316e01bc..77183ed8403 100644 --- a/packages/google-cloud-gkehub/package.json +++ b/packages/google-cloud-gkehub/package.json @@ -1,6 +1,6 @@ { "name": "@google-cloud/gke-hub", - "version": "1.1.1", + "version": "1.1.2", "description": "Gkehub client for Node.js", "repository": "googleapis/nodejs-gke-hub", "license": "Apache-2.0", diff --git a/packages/google-cloud-gkehub/samples/package.json b/packages/google-cloud-gkehub/samples/package.json index 7cd594e1623..2339420e4cf 100644 --- a/packages/google-cloud-gkehub/samples/package.json +++ b/packages/google-cloud-gkehub/samples/package.json @@ -13,7 +13,7 @@ "test": "c8 mocha --timeout 600000 test/*.js" }, "dependencies": { - "@google-cloud/gke-hub": "^1.1.1" + "@google-cloud/gke-hub": "^1.1.2" }, "devDependencies": { "c8": "^7.1.0", From 7679282f776530e2c6f22aaa6d4c4830cacd668c Mon Sep 17 00:00:00 2001 From: "gcf-owl-bot[bot]" <78513119+gcf-owl-bot[bot]@users.noreply.github.com> Date: Tue, 22 Jun 2021 20:20:43 +0000 Subject: [PATCH 27/92] fix: make request optional in all cases (#59) ... chore: update gapic-generator-ruby to the latest commit chore: release gapic-generator-typescript 1.5.0 Committer: @miraleung PiperOrigin-RevId: 380641501 Source-Link: https://github.com/googleapis/googleapis/commit/076f7e9f0b258bdb54338895d7251b202e8f0de3 Source-Link: https://github.com/googleapis/googleapis-gen/commit/27e4c88b4048e5f56508d4e1aa417d60a3380892 --- .../gke_hub_membership_service_client.ts | 32 +++++++++---------- 1 file changed, 16 insertions(+), 16 deletions(-) diff --git a/packages/google-cloud-gkehub/src/v1beta1/gke_hub_membership_service_client.ts b/packages/google-cloud-gkehub/src/v1beta1/gke_hub_membership_service_client.ts index 27d31f076d0..99ea2d341ff 100644 --- a/packages/google-cloud-gkehub/src/v1beta1/gke_hub_membership_service_client.ts +++ b/packages/google-cloud-gkehub/src/v1beta1/gke_hub_membership_service_client.ts @@ -363,7 +363,7 @@ export class GkeHubMembershipServiceClient { // -- Service calls -- // ------------------- getMembership( - request: protos.google.cloud.gkehub.v1beta1.IGetMembershipRequest, + request?: protos.google.cloud.gkehub.v1beta1.IGetMembershipRequest, options?: CallOptions ): Promise< [ @@ -412,7 +412,7 @@ export class GkeHubMembershipServiceClient { * const [response] = await client.getMembership(request); */ getMembership( - request: protos.google.cloud.gkehub.v1beta1.IGetMembershipRequest, + request?: protos.google.cloud.gkehub.v1beta1.IGetMembershipRequest, optionsOrCallback?: | CallOptions | Callback< @@ -455,7 +455,7 @@ export class GkeHubMembershipServiceClient { return this.innerApiCalls.getMembership(request, options, callback); } generateConnectManifest( - request: protos.google.cloud.gkehub.v1beta1.IGenerateConnectManifestRequest, + request?: protos.google.cloud.gkehub.v1beta1.IGenerateConnectManifestRequest, options?: CallOptions ): Promise< [ @@ -519,7 +519,7 @@ export class GkeHubMembershipServiceClient { * const [response] = await client.generateConnectManifest(request); */ generateConnectManifest( - request: protos.google.cloud.gkehub.v1beta1.IGenerateConnectManifestRequest, + request?: protos.google.cloud.gkehub.v1beta1.IGenerateConnectManifestRequest, optionsOrCallback?: | CallOptions | Callback< @@ -569,7 +569,7 @@ export class GkeHubMembershipServiceClient { ); } validateExclusivity( - request: protos.google.cloud.gkehub.v1beta1.IValidateExclusivityRequest, + request?: protos.google.cloud.gkehub.v1beta1.IValidateExclusivityRequest, options?: CallOptions ): Promise< [ @@ -628,7 +628,7 @@ export class GkeHubMembershipServiceClient { * const [response] = await client.validateExclusivity(request); */ validateExclusivity( - request: protos.google.cloud.gkehub.v1beta1.IValidateExclusivityRequest, + request?: protos.google.cloud.gkehub.v1beta1.IValidateExclusivityRequest, optionsOrCallback?: | CallOptions | Callback< @@ -674,7 +674,7 @@ export class GkeHubMembershipServiceClient { return this.innerApiCalls.validateExclusivity(request, options, callback); } generateExclusivityManifest( - request: protos.google.cloud.gkehub.v1beta1.IGenerateExclusivityManifestRequest, + request?: protos.google.cloud.gkehub.v1beta1.IGenerateExclusivityManifestRequest, options?: CallOptions ): Promise< [ @@ -745,7 +745,7 @@ export class GkeHubMembershipServiceClient { * const [response] = await client.generateExclusivityManifest(request); */ generateExclusivityManifest( - request: protos.google.cloud.gkehub.v1beta1.IGenerateExclusivityManifestRequest, + request?: protos.google.cloud.gkehub.v1beta1.IGenerateExclusivityManifestRequest, optionsOrCallback?: | CallOptions | Callback< @@ -796,7 +796,7 @@ export class GkeHubMembershipServiceClient { } createMembership( - request: protos.google.cloud.gkehub.v1beta1.ICreateMembershipRequest, + request?: protos.google.cloud.gkehub.v1beta1.ICreateMembershipRequest, options?: CallOptions ): Promise< [ @@ -865,7 +865,7 @@ export class GkeHubMembershipServiceClient { * const [response] = await operation.promise(); */ createMembership( - request: protos.google.cloud.gkehub.v1beta1.ICreateMembershipRequest, + request?: protos.google.cloud.gkehub.v1beta1.ICreateMembershipRequest, optionsOrCallback?: | CallOptions | Callback< @@ -950,7 +950,7 @@ export class GkeHubMembershipServiceClient { >; } deleteMembership( - request: protos.google.cloud.gkehub.v1beta1.IDeleteMembershipRequest, + request?: protos.google.cloud.gkehub.v1beta1.IDeleteMembershipRequest, options?: CallOptions ): Promise< [ @@ -1007,7 +1007,7 @@ export class GkeHubMembershipServiceClient { * const [response] = await operation.promise(); */ deleteMembership( - request: protos.google.cloud.gkehub.v1beta1.IDeleteMembershipRequest, + request?: protos.google.cloud.gkehub.v1beta1.IDeleteMembershipRequest, optionsOrCallback?: | CallOptions | Callback< @@ -1092,7 +1092,7 @@ export class GkeHubMembershipServiceClient { >; } updateMembership( - request: protos.google.cloud.gkehub.v1beta1.IUpdateMembershipRequest, + request?: protos.google.cloud.gkehub.v1beta1.IUpdateMembershipRequest, options?: CallOptions ): Promise< [ @@ -1159,7 +1159,7 @@ export class GkeHubMembershipServiceClient { * const [response] = await operation.promise(); */ updateMembership( - request: protos.google.cloud.gkehub.v1beta1.IUpdateMembershipRequest, + request?: protos.google.cloud.gkehub.v1beta1.IUpdateMembershipRequest, optionsOrCallback?: | CallOptions | Callback< @@ -1244,7 +1244,7 @@ export class GkeHubMembershipServiceClient { >; } listMemberships( - request: protos.google.cloud.gkehub.v1beta1.IListMembershipsRequest, + request?: protos.google.cloud.gkehub.v1beta1.IListMembershipsRequest, options?: CallOptions ): Promise< [ @@ -1328,7 +1328,7 @@ export class GkeHubMembershipServiceClient { * for more details and examples. */ listMemberships( - request: protos.google.cloud.gkehub.v1beta1.IListMembershipsRequest, + request?: protos.google.cloud.gkehub.v1beta1.IListMembershipsRequest, optionsOrCallback?: | CallOptions | PaginationCallback< From 812f8b49a920f565ab021e34137682f8a990b8a6 Mon Sep 17 00:00:00 2001 From: "Benjamin E. Coe" Date: Tue, 29 Jun 2021 11:27:06 -0400 Subject: [PATCH 28/92] fix(deps): google-gax v2.17.0 with mTLS (#65) --- packages/google-cloud-gkehub/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/google-cloud-gkehub/package.json b/packages/google-cloud-gkehub/package.json index 77183ed8403..3a155e3804e 100644 --- a/packages/google-cloud-gkehub/package.json +++ b/packages/google-cloud-gkehub/package.json @@ -39,7 +39,7 @@ "prelint": "cd samples; npm link ../; npm i" }, "dependencies": { - "google-gax": "^2.12.0" + "google-gax": "^2.17.0" }, "devDependencies": { "@types/mocha": "^8.0.4", From 5b62a88ccadaf4c817a11ea41a8236be8f171a6a Mon Sep 17 00:00:00 2001 From: "release-please[bot]" <55107282+release-please[bot]@users.noreply.github.com> Date: Tue, 29 Jun 2021 09:43:41 -0700 Subject: [PATCH 29/92] chore: release 1.1.3 (#60) Co-authored-by: release-please[bot] <55107282+release-please[bot]@users.noreply.github.com> --- packages/google-cloud-gkehub/CHANGELOG.md | 8 ++++++++ packages/google-cloud-gkehub/package.json | 2 +- packages/google-cloud-gkehub/samples/package.json | 2 +- 3 files changed, 10 insertions(+), 2 deletions(-) diff --git a/packages/google-cloud-gkehub/CHANGELOG.md b/packages/google-cloud-gkehub/CHANGELOG.md index 508ee3b3233..f0db3cbf506 100644 --- a/packages/google-cloud-gkehub/CHANGELOG.md +++ b/packages/google-cloud-gkehub/CHANGELOG.md @@ -1,5 +1,13 @@ # Changelog +### [1.1.3](https://www.github.com/googleapis/nodejs-gke-hub/compare/v1.1.2...v1.1.3) (2021-06-29) + + +### Bug Fixes + +* **deps:** google-gax v2.17.0 with mTLS ([#65](https://www.github.com/googleapis/nodejs-gke-hub/issues/65)) ([66afee5](https://www.github.com/googleapis/nodejs-gke-hub/commit/66afee52d48894b8dbca3a744b852728f246af95)) +* make request optional in all cases ([#59](https://www.github.com/googleapis/nodejs-gke-hub/issues/59)) ([96a0455](https://www.github.com/googleapis/nodejs-gke-hub/commit/96a04553050731b76fd54ae8093285efb23d324e)) + ### [1.1.2](https://www.github.com/googleapis/nodejs-gke-hub/compare/v1.1.1...v1.1.2) (2021-05-25) diff --git a/packages/google-cloud-gkehub/package.json b/packages/google-cloud-gkehub/package.json index 3a155e3804e..3e9ac196194 100644 --- a/packages/google-cloud-gkehub/package.json +++ b/packages/google-cloud-gkehub/package.json @@ -1,6 +1,6 @@ { "name": "@google-cloud/gke-hub", - "version": "1.1.2", + "version": "1.1.3", "description": "Gkehub client for Node.js", "repository": "googleapis/nodejs-gke-hub", "license": "Apache-2.0", diff --git a/packages/google-cloud-gkehub/samples/package.json b/packages/google-cloud-gkehub/samples/package.json index 2339420e4cf..fbfb0118076 100644 --- a/packages/google-cloud-gkehub/samples/package.json +++ b/packages/google-cloud-gkehub/samples/package.json @@ -13,7 +13,7 @@ "test": "c8 mocha --timeout 600000 test/*.js" }, "dependencies": { - "@google-cloud/gke-hub": "^1.1.2" + "@google-cloud/gke-hub": "^1.1.3" }, "devDependencies": { "c8": "^7.1.0", From 6e59418558fcd45b63f54793a749a3907cf48095 Mon Sep 17 00:00:00 2001 From: "Benjamin E. Coe" Date: Mon, 12 Jul 2021 17:48:26 -0400 Subject: [PATCH 30/92] fix(deps): google-gax v2.17.1 (#69) --- packages/google-cloud-gkehub/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/google-cloud-gkehub/package.json b/packages/google-cloud-gkehub/package.json index 3e9ac196194..995630a6cad 100644 --- a/packages/google-cloud-gkehub/package.json +++ b/packages/google-cloud-gkehub/package.json @@ -39,7 +39,7 @@ "prelint": "cd samples; npm link ../; npm i" }, "dependencies": { - "google-gax": "^2.17.0" + "google-gax": "^2.17.1" }, "devDependencies": { "@types/mocha": "^8.0.4", From 3f9359486c46bd48c0a62eb855ff564c3d66a012 Mon Sep 17 00:00:00 2001 From: "release-please[bot]" <55107282+release-please[bot]@users.noreply.github.com> Date: Tue, 13 Jul 2021 15:36:15 -0700 Subject: [PATCH 31/92] chore: release 1.1.4 (#70) Co-authored-by: release-please[bot] <55107282+release-please[bot]@users.noreply.github.com> --- packages/google-cloud-gkehub/CHANGELOG.md | 7 +++++++ packages/google-cloud-gkehub/package.json | 2 +- packages/google-cloud-gkehub/samples/package.json | 2 +- 3 files changed, 9 insertions(+), 2 deletions(-) diff --git a/packages/google-cloud-gkehub/CHANGELOG.md b/packages/google-cloud-gkehub/CHANGELOG.md index f0db3cbf506..9b23f9b55f3 100644 --- a/packages/google-cloud-gkehub/CHANGELOG.md +++ b/packages/google-cloud-gkehub/CHANGELOG.md @@ -1,5 +1,12 @@ # Changelog +### [1.1.4](https://www.github.com/googleapis/nodejs-gke-hub/compare/v1.1.3...v1.1.4) (2021-07-12) + + +### Bug Fixes + +* **deps:** google-gax v2.17.1 ([#69](https://www.github.com/googleapis/nodejs-gke-hub/issues/69)) ([71e558b](https://www.github.com/googleapis/nodejs-gke-hub/commit/71e558b40947fcfeda0c6f8e9a23b379a27a8ec9)) + ### [1.1.3](https://www.github.com/googleapis/nodejs-gke-hub/compare/v1.1.2...v1.1.3) (2021-06-29) diff --git a/packages/google-cloud-gkehub/package.json b/packages/google-cloud-gkehub/package.json index 995630a6cad..09d15fe072d 100644 --- a/packages/google-cloud-gkehub/package.json +++ b/packages/google-cloud-gkehub/package.json @@ -1,6 +1,6 @@ { "name": "@google-cloud/gke-hub", - "version": "1.1.3", + "version": "1.1.4", "description": "Gkehub client for Node.js", "repository": "googleapis/nodejs-gke-hub", "license": "Apache-2.0", diff --git a/packages/google-cloud-gkehub/samples/package.json b/packages/google-cloud-gkehub/samples/package.json index fbfb0118076..d314502e7d2 100644 --- a/packages/google-cloud-gkehub/samples/package.json +++ b/packages/google-cloud-gkehub/samples/package.json @@ -13,7 +13,7 @@ "test": "c8 mocha --timeout 600000 test/*.js" }, "dependencies": { - "@google-cloud/gke-hub": "^1.1.3" + "@google-cloud/gke-hub": "^1.1.4" }, "devDependencies": { "c8": "^7.1.0", From cd4c689093da74aed72fbc0667a314df0c8b0353 Mon Sep 17 00:00:00 2001 From: "gcf-owl-bot[bot]" <78513119+gcf-owl-bot[bot]@users.noreply.github.com> Date: Wed, 21 Jul 2021 20:18:25 +0000 Subject: [PATCH 32/92] fix: add missing dependency configmanagement.proto, cloudauditlogging.proto, metering.proto, multiclusteringress.proto, servicemesh.proto to v1alpha client (#74) fix: add missing dependency configmanagement.proto, metering.proto, multiclusteringress.proto to v1beta client Committer: @chingor13 PiperOrigin-RevId: 386025193 Source-Link: https://github.com/googleapis/googleapis/commit/e8d2996cc44d20d430413f60e88c45fdccc20e4c Source-Link: https://github.com/googleapis/googleapis-gen/commit/e7371fb8767c3c2a6730a8b49e72dfc1042d5f33 feat: added v1alpha messages and client for gkehub PiperOrigin-RevId: 381332895 Source-Link: https://github.com/googleapis/googleapis/commit/3bd91d545c8eb384c398e755f35645187f9d08eb Source-Link: https://github.com/googleapis/googleapis-gen/commit/b14f7f4d9f2ed1699d9bbada68df1e6ccce9f7e3 feat: added v1beta, v1 messages and client for gkehub PiperOrigin-RevId: 381502350 Source-Link: https://github.com/googleapis/googleapis/commit/3d63fc7e6179f5e9495d03480c08d73a451c7534 Source-Link: https://github.com/googleapis/googleapis-gen/commit/454d4e1f04269c62e636db5df5790bf52c0e6604 fix: add missing dependency configmanagement.proto Committer: @summerji PiperOrigin-RevId: 382363781 Source-Link: https://github.com/googleapis/googleapis/commit/9f8627ebbd51db0c1ee5b83cf94127382905bfb5 Source-Link: https://github.com/googleapis/googleapis-gen/commit/aa5a3421e5045b308aad968d91184f06ed688b0d fix: add missing dependency multiclusteringress https://github.com/googleapis/nodejs-gke-hub/pull/67 Committer: @summerji PiperOrigin-RevId: 382391289 Source-Link: https://github.com/googleapis/googleapis/commit/820d7aeac05ea6ac8898d708b69a299ecaaf18bb Source-Link: https://github.com/googleapis/googleapis-gen/commit/b021552b749cc4fc7eb77a4a42c519b1d0d855d5 fix: Updating WORKSPACE files to use the newest version of the Typescript generator PiperOrigin-RevId: 385101839 Source-Link: https://github.com/googleapis/googleapis/commit/80f404215a9346259db760d80d0671f28c433453 Source-Link: https://github.com/googleapis/googleapis-gen/commit/d3509d2520fb8db862129633f1cf8406d17454e1 chore: use gapic-generator-typescript v2.1.0 Committer: @alexander-fenster PiperOrigin-RevId: 385246182 Source-Link: https://github.com/googleapis/googleapis/commit/d767d0ab9ebaab70d68e0ba343e5ae48b556a22b Source-Link: https://github.com/googleapis/googleapis-gen/commit/e44f0547f58120f27aae42bf01d36ecf9e0a286f --- .../configmanagement/configmanagement.proto | 383 + .../google/cloud/gkehub/v1/feature.proto | 199 + .../google/cloud/gkehub/v1/membership.proto | 214 + .../multiclusteringress.proto | 35 + .../google/cloud/gkehub/v1/service.proto | 596 + .../cloudauditlogging/cloudauditlogging.proto | 37 + .../configmanagement/configmanagement.proto | 416 + .../google/cloud/gkehub/v1alpha/feature.proto | 216 + .../gkehub/v1alpha/metering/metering.proto | 39 + .../multiclusteringress.proto | 50 + .../google/cloud/gkehub/v1alpha/service.proto | 281 + .../v1alpha/servicemesh/servicemesh.proto | 115 + .../cloud/gkehub/v1alpha2/membership.proto | 642 + .../configmanagement/configmanagement.proto | 410 + .../google/cloud/gkehub/v1beta/feature.proto | 203 + .../gkehub/v1beta/metering/metering.proto | 39 + .../multiclusteringress.proto | 50 + .../google/cloud/gkehub/v1beta/service.proto | 281 + .../google-cloud-gkehub/protos/protos.d.ts | 28342 ++++-- packages/google-cloud-gkehub/protos/protos.js | 71869 +++++++++++++--- .../google-cloud-gkehub/protos/protos.json | 8368 +- packages/google-cloud-gkehub/src/index.ts | 15 +- .../src/v1/gapic_metadata.json | 141 + .../src/v1/gke_hub_client.ts | 2424 + .../src/v1/gke_hub_client_config.json | 93 + .../src/v1/gke_hub_proto_list.json | 7 + packages/google-cloud-gkehub/src/v1/index.ts | 19 + .../src/v1alpha/gapic_metadata.json | 77 + .../src/v1alpha/gke_hub_client.ts | 1290 + .../src/v1alpha/gke_hub_client_config.json | 63 + .../src/v1alpha/gke_hub_proto_list.json | 9 + .../google-cloud-gkehub/src/v1alpha/index.ts | 19 + .../src/v1alpha2/gapic_metadata.json | 97 + .../src/v1alpha2/gke_hub_client.ts | 1549 + .../src/v1alpha2/gke_hub_client_config.json | 73 + .../src/v1alpha2/gke_hub_proto_list.json | 3 + .../google-cloud-gkehub/src/v1alpha2/index.ts | 19 + .../src/v1beta/gapic_metadata.json | 77 + .../src/v1beta/gke_hub_client.ts | 1290 + .../src/v1beta/gke_hub_client_config.json | 63 + .../src/v1beta/gke_hub_proto_list.json | 7 + .../google-cloud-gkehub/src/v1beta/index.ts | 19 + .../gke_hub_membership_service_client.ts | 11 +- .../test/gapic_gke_hub_v1.ts | 2503 + .../test/gapic_gke_hub_v1alpha.ts | 1269 + .../test/gapic_gke_hub_v1alpha2.ts | 1604 + .../test/gapic_gke_hub_v1beta.ts | 1269 + 47 files changed, 105920 insertions(+), 20875 deletions(-) create mode 100644 packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1/configmanagement/configmanagement.proto create mode 100644 packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1/feature.proto create mode 100644 packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1/membership.proto create mode 100644 packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1/multiclusteringress/multiclusteringress.proto create mode 100644 packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1/service.proto create mode 100644 packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1alpha/cloudauditlogging/cloudauditlogging.proto create mode 100644 packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1alpha/configmanagement/configmanagement.proto create mode 100644 packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1alpha/feature.proto create mode 100644 packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1alpha/metering/metering.proto create mode 100644 packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1alpha/multiclusteringress/multiclusteringress.proto create mode 100644 packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1alpha/service.proto create mode 100644 packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1alpha/servicemesh/servicemesh.proto create mode 100644 packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1alpha2/membership.proto create mode 100644 packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1beta/configmanagement/configmanagement.proto create mode 100644 packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1beta/feature.proto create mode 100644 packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1beta/metering/metering.proto create mode 100644 packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1beta/multiclusteringress/multiclusteringress.proto create mode 100644 packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1beta/service.proto create mode 100644 packages/google-cloud-gkehub/src/v1/gapic_metadata.json create mode 100644 packages/google-cloud-gkehub/src/v1/gke_hub_client.ts create mode 100644 packages/google-cloud-gkehub/src/v1/gke_hub_client_config.json create mode 100644 packages/google-cloud-gkehub/src/v1/gke_hub_proto_list.json create mode 100644 packages/google-cloud-gkehub/src/v1/index.ts create mode 100644 packages/google-cloud-gkehub/src/v1alpha/gapic_metadata.json create mode 100644 packages/google-cloud-gkehub/src/v1alpha/gke_hub_client.ts create mode 100644 packages/google-cloud-gkehub/src/v1alpha/gke_hub_client_config.json create mode 100644 packages/google-cloud-gkehub/src/v1alpha/gke_hub_proto_list.json create mode 100644 packages/google-cloud-gkehub/src/v1alpha/index.ts create mode 100644 packages/google-cloud-gkehub/src/v1alpha2/gapic_metadata.json create mode 100644 packages/google-cloud-gkehub/src/v1alpha2/gke_hub_client.ts create mode 100644 packages/google-cloud-gkehub/src/v1alpha2/gke_hub_client_config.json create mode 100644 packages/google-cloud-gkehub/src/v1alpha2/gke_hub_proto_list.json create mode 100644 packages/google-cloud-gkehub/src/v1alpha2/index.ts create mode 100644 packages/google-cloud-gkehub/src/v1beta/gapic_metadata.json create mode 100644 packages/google-cloud-gkehub/src/v1beta/gke_hub_client.ts create mode 100644 packages/google-cloud-gkehub/src/v1beta/gke_hub_client_config.json create mode 100644 packages/google-cloud-gkehub/src/v1beta/gke_hub_proto_list.json create mode 100644 packages/google-cloud-gkehub/src/v1beta/index.ts create mode 100644 packages/google-cloud-gkehub/test/gapic_gke_hub_v1.ts create mode 100644 packages/google-cloud-gkehub/test/gapic_gke_hub_v1alpha.ts create mode 100644 packages/google-cloud-gkehub/test/gapic_gke_hub_v1alpha2.ts create mode 100644 packages/google-cloud-gkehub/test/gapic_gke_hub_v1beta.ts diff --git a/packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1/configmanagement/configmanagement.proto b/packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1/configmanagement/configmanagement.proto new file mode 100644 index 00000000000..ab0b3560ddb --- /dev/null +++ b/packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1/configmanagement/configmanagement.proto @@ -0,0 +1,383 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.cloud.gkehub.configmanagement.v1; + +import "google/protobuf/timestamp.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Cloud.GkeHub.ConfigManagement.V1"; +option go_package = "google.golang.org/genproto/googleapis/cloud/gkehub/configmanagement/v1;configmanagement"; +option java_multiple_files = true; +option java_outer_classname = "ConfigManagementProto"; +option java_package = "com.google.cloud.gkehub.configmanagement.v1"; +option php_namespace = "Google\\Cloud\\GkeHub\\ConfigManagement\\V1"; +option ruby_package = "Google::Cloud::GkeHub::ConfigManagement::V1"; + +// Enum representing the state of an ACM's deployment on a cluster +enum DeploymentState { + // Deployment's state cannot be determined + DEPLOYMENT_STATE_UNSPECIFIED = 0; + + // Deployment is not installed + NOT_INSTALLED = 1; + + // Deployment is installed + INSTALLED = 2; + + // Deployment was attempted to be installed, but has errors + ERROR = 3; +} + +// **Anthos Config Management**: State for a single cluster. +message MembershipState { + // The user-defined name for the cluster used by ClusterSelectors to group + // clusters together. This should match Membership's membership_name, + // unless the user installed ACM on the cluster manually prior to enabling + // the ACM hub feature. + // Unique within a Anthos Config Management installation. + string cluster_name = 1; + + // Membership configuration in the cluster. This represents the actual state + // in the cluster, while the MembershipSpec in the FeatureSpec represents + // the intended state + MembershipSpec membership_spec = 2; + + // Current install status of ACM's Operator + OperatorState operator_state = 3; + + // Current sync status + ConfigSyncState config_sync_state = 4; + + // PolicyController status + PolicyControllerState policy_controller_state = 5; + + // Hierarchy Controller status + HierarchyControllerState hierarchy_controller_state = 7; +} + +// **Anthos Config Management**: Configuration for a single cluster. +// Intended to parallel the ConfigManagement CR. +message MembershipSpec { + // Config Sync configuration for the cluster. + ConfigSync config_sync = 1; + + // Policy Controller configuration for the cluster. + PolicyController policy_controller = 2; + + // Hierarchy Controller configuration for the cluster. + HierarchyControllerConfig hierarchy_controller = 4; + + // Version of ACM installed. + string version = 10; +} + +// Configuration for Config Sync +message ConfigSync { + // Git repo configuration for the cluster. + GitConfig git = 7; + + // Specifies whether the Config Sync Repo is + // in “hierarchical” or “unstructured” mode. + string source_format = 8; +} + +// Git repo configuration for a single cluster. +message GitConfig { + // The URL of the Git repository to use as the source of truth. + string sync_repo = 1; + + // The branch of the repository to sync from. Default: master. + string sync_branch = 2; + + // The path within the Git repository that represents the top level of the + // repo to sync. Default: the root directory of the repository. + string policy_dir = 3; + + // Period in seconds between consecutive syncs. Default: 15. + int64 sync_wait_secs = 4; + + // Git revision (tag or hash) to check out. Default HEAD. + string sync_rev = 5; + + // Type of secret configured for access to the Git repo. + string secret_type = 6; + + // URL for the HTTPS proxy to be used when communicating with the Git repo. + string https_proxy = 7; + + // The GCP Service Account Email used for auth when secret_type is + // gcpServiceAccount. + string gcp_service_account_email = 8; +} + +// Configuration for Policy Controller +message PolicyController { + // Enables the installation of Policy Controller. + // If false, the rest of PolicyController fields take no + // effect. + bool enabled = 1; + + // Installs the default template library along with Policy Controller. + optional bool template_library_installed = 2; + + // Sets the interval for Policy Controller Audit Scans (in seconds). + // When set to 0, this disables audit functionality altogether. + optional int64 audit_interval_seconds = 3; + + // The set of namespaces that are excluded from Policy Controller checks. + // Namespaces do not need to currently exist on the cluster. + repeated string exemptable_namespaces = 4; + + // Enables the ability to use Constraint Templates that reference to objects + // other than the object currently being evaluated. + bool referential_rules_enabled = 5; + + // Logs all denies and dry run failures. + bool log_denies_enabled = 6; +} + +// Configuration for Hierarchy Controller +message HierarchyControllerConfig { + // Whether Hierarchy Controller is enabled in this cluster. + bool enabled = 1; + + // Whether pod tree labels are enabled in this cluster. + bool enable_pod_tree_labels = 2; + + // Whether hierarchical resource quota is enabled in this cluster. + bool enable_hierarchical_resource_quota = 3; +} + +// Deployment state for Hierarchy Controller +message HierarchyControllerDeploymentState { + // The deployment state for open source HNC (e.g. v0.7.0-hc.0) + DeploymentState hnc = 1; + + // The deployment state for Hierarchy Controller extension (e.g. v0.7.0-hc.1) + DeploymentState extension = 2; +} + +// Version for Hierarchy Controller +message HierarchyControllerVersion { + // Version for open source HNC + string hnc = 1; + + // Version for Hierarchy Controller extension + string extension = 2; +} + +// State for Hierarchy Controller +message HierarchyControllerState { + // The version for Hierarchy Controller + HierarchyControllerVersion version = 1; + + // The deployment state for Hierarchy Controller + HierarchyControllerDeploymentState state = 2; +} + +// State information for an ACM's Operator +message OperatorState { + // The semenatic version number of the operator + string version = 1; + + // The state of the Operator's deployment + DeploymentState deployment_state = 2; + + // Install errors. + repeated InstallError errors = 3; +} + +// Errors pertaining to the installation of ACM +message InstallError { + // A string representing the user facing error message + string error_message = 1; +} + +// State information for ConfigSync +message ConfigSyncState { + // The version of ConfigSync deployed + ConfigSyncVersion version = 1; + + // Information about the deployment of ConfigSync, including the version + // of the various Pods deployed + ConfigSyncDeploymentState deployment_state = 2; + + // The state of ConfigSync's process to sync configs to a cluster + SyncState sync_state = 3; +} + +// Specific versioning information pertaining to ConfigSync's Pods +message ConfigSyncVersion { + // Version of the deployed importer pod + string importer = 1; + + // Version of the deployed syncer pod + string syncer = 2; + + // Version of the deployed git-sync pod + string git_sync = 3; + + // Version of the deployed monitor pod + string monitor = 4; + + // Version of the deployed reconciler-manager pod + string reconciler_manager = 5; + + // Version of the deployed reconciler container in root-reconciler pod + string root_reconciler = 6; +} + +// The state of ConfigSync's deployment on a cluster +message ConfigSyncDeploymentState { + // Deployment state of the importer pod + DeploymentState importer = 1; + + // Deployment state of the syncer pod + DeploymentState syncer = 2; + + // Deployment state of the git-sync pod + DeploymentState git_sync = 3; + + // Deployment state of the monitor pod + DeploymentState monitor = 4; + + // Deployment state of reconciler-manager pod + DeploymentState reconciler_manager = 5; + + // Deployment state of root-reconciler + DeploymentState root_reconciler = 6; +} + +// State indicating an ACM's progress syncing configurations to a cluster +message SyncState { + // An enum representing an ACM's status syncing configs to a cluster + enum SyncCode { + // ACM cannot determine a sync code + SYNC_CODE_UNSPECIFIED = 0; + + // ACM successfully synced the git Repo with the cluster + SYNCED = 1; + + // ACM is in the progress of syncing a new change + PENDING = 2; + + // Indicates an error configuring ACM, and user action is required + ERROR = 3; + + // ACM has been installed (operator manifest deployed), + // but not configured. + NOT_CONFIGURED = 4; + + // ACM has not been installed (no operator pod found) + NOT_INSTALLED = 5; + + // Error authorizing with the cluster + UNAUTHORIZED = 6; + + // Cluster could not be reached + UNREACHABLE = 7; + } + + // Token indicating the state of the repo. + string source_token = 1; + + // Token indicating the state of the importer. + string import_token = 2; + + // Token indicating the state of the syncer. + string sync_token = 3; + + // Deprecated: use last_sync_time instead. + // Timestamp of when ACM last successfully synced the repo + // The time format is specified in https://golang.org/pkg/time/#Time.String + string last_sync = 4 [deprecated = true]; + + // Timestamp type of when ACM last successfully synced the repo + google.protobuf.Timestamp last_sync_time = 7; + + // Sync status code + SyncCode code = 5; + + // A list of errors resulting from problematic configs. + // This list will be truncated after 100 errors, although it is + // unlikely for that many errors to simultaneously exist. + repeated SyncError errors = 6; +} + +// An ACM created error representing a problem syncing configurations +message SyncError { + // An ACM defined error code + string code = 1; + + // A description of the error + string error_message = 2; + + // A list of config(s) associated with the error, if any + repeated ErrorResource error_resources = 3; +} + +// Model for a config file in the git repo with an associated Sync error +message ErrorResource { + // Path in the git repo of the erroneous config + string source_path = 1; + + // Metadata name of the resource that is causing an error + string resource_name = 2; + + // Namespace of the resource that is causing an error + string resource_namespace = 3; + + // Group/version/kind of the resource that is causing an error + GroupVersionKind resource_gvk = 4; +} + +// A Kubernetes object's GVK +message GroupVersionKind { + // Kubernetes Group + string group = 1; + + // Kubernetes Version + string version = 2; + + // Kubernetes Kind + string kind = 3; +} + +// State for PolicyControllerState. +message PolicyControllerState { + // The version of Gatekeeper Policy Controller deployed. + PolicyControllerVersion version = 1; + + // The state about the policy controller installation. + GatekeeperDeploymentState deployment_state = 2; +} + +// The build version of Gatekeeper Policy Controller is using. +message PolicyControllerVersion { + // The gatekeeper image tag that is composed of ACM version, git tag, build + // number. + string version = 1; +} + +// State of Policy Controller installation. +message GatekeeperDeploymentState { + // Status of gatekeeper-controller-manager pod. + DeploymentState gatekeeper_controller_manager_state = 1; + + // Status of gatekeeper-audit deployment. + DeploymentState gatekeeper_audit = 2; +} diff --git a/packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1/feature.proto b/packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1/feature.proto new file mode 100644 index 00000000000..6a07b33c99c --- /dev/null +++ b/packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1/feature.proto @@ -0,0 +1,199 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.cloud.gkehub.v1; + +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/cloud/gkehub/v1/configmanagement/configmanagement.proto"; +import "google/cloud/gkehub/v1/multiclusteringress/multiclusteringress.proto"; +import "google/protobuf/timestamp.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Cloud.GkeHub.V1"; +option go_package = "google.golang.org/genproto/googleapis/cloud/gkehub/v1;gkehub"; +option java_multiple_files = true; +option java_outer_classname = "FeatureProto"; +option java_package = "com.google.cloud.gkehub.v1"; +option php_namespace = "Google\\Cloud\\GkeHub\\V1"; +option ruby_package = "Google::Cloud::GkeHub::V1"; + +// Feature represents the settings and status of any Hub Feature. +message Feature { + option (google.api.resource) = { + type: "gkehub.googleapis.com/Feature" + pattern: "projects/{project}/locations/{location}/features/{feature}" + }; + + // Output only. The full, unique name of this Feature resource in the format + // `projects/*/locations/*/features/*`. + string name = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // GCP labels for this Feature. + map labels = 2; + + // Output only. State of the Feature resource itself. + FeatureResourceState resource_state = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Optional. Hub-wide Feature configuration. If this Feature does not support any + // Hub-wide configuration, this field may be unused. + CommonFeatureSpec spec = 4 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. Membership-specific configuration for this Feature. If this Feature does + // not support any per-Membership configuration, this field may be unused. + // + // The keys indicate which Membership the configuration is for, in the form: + // + // projects/{p}/locations/{l}/memberships/{m} + // + // Where {p} is the project, {l} is a valid location and {m} is a valid + // Membership in this project at that location. {p} WILL match the Feature's + // project. + // + // {p} will always be returned as the project number, but the project ID is + // also accepted during input. If the same Membership is specified in the map + // twice (using the project ID form, and the project number form), exactly + // ONE of the entries will be saved, with no guarantees as to which. For this + // reason, it is recommended the same format be used for all entries when + // mutating a Feature. + map membership_specs = 5 [(google.api.field_behavior) = OPTIONAL]; + + // Output only. The Hub-wide Feature state. + CommonFeatureState state = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Membership-specific Feature status. If this Feature does + // report any per-Membership status, this field may be unused. + // + // The keys indicate which Membership the state is for, in the form: + // + // projects/{p}/locations/{l}/memberships/{m} + // + // Where {p} is the project number, {l} is a valid location and {m} is a valid + // Membership in this project at that location. {p} MUST match the Feature's + // project number. + map membership_states = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. When the Feature resource was created. + google.protobuf.Timestamp create_time = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. When the Feature resource was last updated. + google.protobuf.Timestamp update_time = 9 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. When the Feature resource was deleted. + google.protobuf.Timestamp delete_time = 10 [(google.api.field_behavior) = OUTPUT_ONLY]; +} + +// FeatureResourceState describes the state of a Feature *resource* in the +// GkeHub API. See `FeatureState` for the "running state" of the Feature in the +// Hub and across Memberships. +message FeatureResourceState { + // State describes the lifecycle status of a Feature. + enum State { + // State is unknown or not set. + STATE_UNSPECIFIED = 0; + + // The Feature is being enabled, and the Feature resource is being created. + // Once complete, the corresponding Feature will be enabled in this Hub. + ENABLING = 1; + + // The Feature is enabled in this Hub, and the Feature resource is fully + // available. + ACTIVE = 2; + + // The Feature is being disabled in this Hub, and the Feature resource + // is being deleted. + DISABLING = 3; + + // The Feature resource is being updated. + UPDATING = 4; + + // The Feature resource is being updated by the Hub Service. + SERVICE_UPDATING = 5; + } + + // The current state of the Feature resource in the Hub API. + State state = 1; +} + +// FeatureState describes the high-level state of a Feature. It may be used to +// describe a Feature's state at the environ-level, or per-membershop, depending +// on the context. +message FeatureState { + // Code represents a machine-readable, high-level status of the Feature. + enum Code { + // Unknown or not set. + CODE_UNSPECIFIED = 0; + + // The Feature is operating normally. + OK = 1; + + // The Feature has encountered an issue, and is operating in a degraded + // state. The Feature may need intervention to return to normal operation. + // See the description and any associated Feature-specific details for more + // information. + WARNING = 2; + + // The Feature is not operating or is in a severely degraded state. + // The Feature may need intervention to return to normal operation. + // See the description and any associated Feature-specific details for more + // information. + ERROR = 3; + } + + // The high-level, machine-readable status of this Feature. + Code code = 1; + + // A human-readable description of the current status. + string description = 2; + + // The time this status and any related Feature-specific details were updated. + google.protobuf.Timestamp update_time = 3; +} + +// CommonFeatureSpec contains Hub-wide configuration information +message CommonFeatureSpec { + oneof feature_spec { + // Multicluster Ingress-specific spec. + google.cloud.gkehub.multiclusteringress.v1.FeatureSpec multiclusteringress = 102; + } +} + +// CommonFeatureState contains Hub-wide Feature status information. +message CommonFeatureState { + // Output only. The "running state" of the Feature in this Hub. + FeatureState state = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; +} + +// MembershipFeatureSpec contains configuration information for a single +// Membership. +message MembershipFeatureSpec { + oneof feature_spec { + // Config Management-specific spec. + google.cloud.gkehub.configmanagement.v1.MembershipSpec configmanagement = 106; + } +} + +// MembershipFeatureState contains Feature status information for a single +// Membership. +message MembershipFeatureState { + oneof feature_state { + // Config Management-specific state. + google.cloud.gkehub.configmanagement.v1.MembershipState configmanagement = 106; + } + + // The high-level state of this Feature for a single membership. + FeatureState state = 1; +} diff --git a/packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1/membership.proto b/packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1/membership.proto new file mode 100644 index 00000000000..6699c1f241f --- /dev/null +++ b/packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1/membership.proto @@ -0,0 +1,214 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.cloud.gkehub.v1; + +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/protobuf/timestamp.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Cloud.GkeHub.V1"; +option go_package = "google.golang.org/genproto/googleapis/cloud/gkehub/v1;gkehub"; +option java_multiple_files = true; +option java_outer_classname = "MembershipProto"; +option java_package = "com.google.cloud.gkehub.v1"; +option php_namespace = "Google\\Cloud\\GkeHub\\V1"; +option ruby_package = "Google::Cloud::GkeHub::V1"; + +// Membership contains information about a member cluster. +message Membership { + option (google.api.resource) = { + type: "gkehub.googleapis.com/Membership" + pattern: "projects/{project}/locations/{location}/memberships/{membership}" + }; + + // Type of resource represented by this Membership + oneof type { + // Optional. Endpoint information to reach this member. + MembershipEndpoint endpoint = 4 [(google.api.field_behavior) = OPTIONAL]; + } + + // Output only. The full, unique name of this Membership resource in the format + // `projects/*/locations/*/memberships/{membership_id}`, set during creation. + // + // `membership_id` must be a valid RFC 1123 compliant DNS label: + // + // 1. At most 63 characters in length + // 2. It must consist of lower case alphanumeric characters or `-` + // 3. It must start and end with an alphanumeric character + // + // Which can be expressed as the regex: `[a-z0-9]([-a-z0-9]*[a-z0-9])?`, + // with a maximum length of 63 characters. + string name = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Optional. GCP labels for this membership. + map labels = 2 [(google.api.field_behavior) = OPTIONAL]; + + // Output only. Description of this membership, limited to 63 characters. + // Must match the regex: `[a-zA-Z0-9][a-zA-Z0-9_\-\.\ ]*` + // + // This field is present for legacy purposes. + string description = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. State of the Membership resource. + MembershipState state = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. When the Membership was created. + google.protobuf.Timestamp create_time = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. When the Membership was last updated. + google.protobuf.Timestamp update_time = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. When the Membership was deleted. + google.protobuf.Timestamp delete_time = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Optional. An externally-generated and managed ID for this Membership. This ID may + // be modified after creation, but this is not recommended. + // + // The ID must match the regex: `[a-zA-Z0-9][a-zA-Z0-9_\-\.]*` + // + // If this Membership represents a Kubernetes cluster, this value should be + // set to the UID of the `kube-system` namespace object. + string external_id = 9 [(google.api.field_behavior) = OPTIONAL]; + + // Output only. For clusters using Connect, the timestamp of the most recent connection + // established with Google Cloud. This time is updated every several minutes, + // not continuously. For clusters that do not use GKE Connect, or that have + // never connected successfully, this field will be unset. + google.protobuf.Timestamp last_connection_time = 10 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Google-generated UUID for this resource. This is unique across all + // Membership resources. If a Membership resource is deleted and another + // resource with the same name is created, it gets a different unique_id. + string unique_id = 11 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Optional. How to identify workloads from this Membership. + // See the documentation on Workload Identity for more details: + // https://cloud.google.com/kubernetes-engine/docs/how-to/workload-identity + Authority authority = 12 [(google.api.field_behavior) = OPTIONAL]; +} + +// MembershipEndpoint contains information needed to contact a Kubernetes API, +// endpoint and any additional Kubernetes metadata. +message MembershipEndpoint { + // Optional. GKE-specific information. Only present if this Membership is a GKE cluster. + GkeCluster gke_cluster = 1 [(google.api.field_behavior) = OPTIONAL]; + + // Output only. Useful Kubernetes-specific metadata. + KubernetesMetadata kubernetes_metadata = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; +} + +// GkeCluster contains information specific to GKE clusters. +message GkeCluster { + // Immutable. Self-link of the GCP resource for the GKE cluster. For example: + // + // //container.googleapis.com/projects/my-project/locations/us-west1-a/clusters/my-cluster + // + // Zonal clusters are also supported. + string resource_link = 1 [(google.api.field_behavior) = IMMUTABLE]; +} + +// KubernetesMetadata provides informational metadata for Memberships +// representing Kubernetes clusters. +message KubernetesMetadata { + // Output only. Kubernetes API server version string as reported by `/version`. + string kubernetes_api_server_version = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Node providerID as reported by the first node in the list of nodes on + // the Kubernetes endpoint. On Kubernetes platforms that support zero-node + // clusters (like GKE-on-GCP), the node_count will be zero and the + // node_provider_id will be empty. + string node_provider_id = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Node count as reported by Kubernetes nodes resources. + int32 node_count = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. vCPU count as reported by Kubernetes nodes resources. + int32 vcpu_count = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The total memory capacity as reported by the sum of all Kubernetes nodes + // resources, defined in MB. + int32 memory_mb = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The time at which these details were last updated. This update_time is + // different from the Membership-level update_time since EndpointDetails are + // updated internally for API consumers. + google.protobuf.Timestamp update_time = 100 [(google.api.field_behavior) = OUTPUT_ONLY]; +} + +// MembershipState describes the state of a Membership resource. +message MembershipState { + // Code describes the state of a Membership resource. + enum Code { + // The code is not set. + CODE_UNSPECIFIED = 0; + + // The cluster is being registered. + CREATING = 1; + + // The cluster is registered. + READY = 2; + + // The cluster is being unregistered. + DELETING = 3; + + // The Membership is being updated. + UPDATING = 4; + + // The Membership is being updated by the Hub Service. + SERVICE_UPDATING = 5; + } + + // Output only. The current state of the Membership resource. + Code code = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; +} + +// Authority encodes how Google will recognize identities from this Membership. +// See the workload identity documentation for more details: +// https://cloud.google.com/kubernetes-engine/docs/how-to/workload-identity +message Authority { + // Optional. A JSON Web Token (JWT) issuer URI. `issuer` must start with `https://` and + // be a valid URL with length <2000 characters. + // + // If set, then Google will allow valid OIDC tokens from this issuer to + // authenticate within the workload_identity_pool. OIDC discovery will be + // performed on this URI to validate tokens from the issuer. + // + // Clearing `issuer` disables Workload Identity. `issuer` cannot be directly + // modified; it must be cleared (and Workload Identity disabled) before using + // a new issuer (and re-enabling Workload Identity). + string issuer = 1 [(google.api.field_behavior) = OPTIONAL]; + + // Output only. The name of the workload identity pool in which `issuer` will be + // recognized. + // + // There is a single Workload Identity Pool per Hub that is shared + // between all Memberships that belong to that Hub. For a Hub hosted in + // {PROJECT_ID}, the workload pool format is `{PROJECT_ID}.hub.id.goog`, + // although this is subject to change in newer versions of this API. + string workload_identity_pool = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. An identity provider that reflects the `issuer` in the workload identity + // pool. + string identity_provider = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Optional. OIDC verification keys for this Membership in JWKS format (RFC 7517). + // + // When this field is set, OIDC discovery will NOT be performed on `issuer`, + // and instead OIDC tokens will be validated using this field. + bytes oidc_jwks = 4 [(google.api.field_behavior) = OPTIONAL]; +} diff --git a/packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1/multiclusteringress/multiclusteringress.proto b/packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1/multiclusteringress/multiclusteringress.proto new file mode 100644 index 00000000000..1649cd64657 --- /dev/null +++ b/packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1/multiclusteringress/multiclusteringress.proto @@ -0,0 +1,35 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.cloud.gkehub.multiclusteringress.v1; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Cloud.GkeHub.MultiClusterIngress.V1"; +option go_package = "google.golang.org/genproto/googleapis/cloud/gkehub/multiclusteringress/v1;multiclusteringress"; +option java_multiple_files = true; +option java_outer_classname = "MultiClusterIngressProto"; +option java_package = "com.google.cloud.gkehub.multiclusteringress.v1"; +option php_namespace = "Google\\Cloud\\GkeHub\\MultiClusterIngress\\V1"; +option ruby_package = "Google::Cloud::GkeHub::MultiClusterIngress::V1"; + +// **Multi-cluster Ingress**: The configuration for the MultiClusterIngress +// feature. +message FeatureSpec { + // Fully-qualified Membership name which hosts the MultiClusterIngress CRD. + // Example: `projects/foo-proj/locations/global/memberships/bar` + string config_membership = 1; +} diff --git a/packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1/service.proto b/packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1/service.proto new file mode 100644 index 00000000000..388829730ea --- /dev/null +++ b/packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1/service.proto @@ -0,0 +1,596 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.cloud.gkehub.v1; + +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/cloud/gkehub/v1/feature.proto"; +import "google/cloud/gkehub/v1/membership.proto"; +import "google/longrunning/operations.proto"; +import "google/protobuf/field_mask.proto"; +import "google/protobuf/timestamp.proto"; + +option csharp_namespace = "Google.Cloud.GkeHub.V1"; +option go_package = "google.golang.org/genproto/googleapis/cloud/gkehub/v1;gkehub"; +option java_multiple_files = true; +option java_outer_classname = "ServiceProto"; +option java_package = "com.google.cloud.gkehub.v1"; +option php_namespace = "Google\\Cloud\\GkeHub\\V1"; +option ruby_package = "Google::Cloud::GkeHub::V1"; + +// The GKE Hub service handles the registration of many Kubernetes clusters to +// Google Cloud, and the management of multi-cluster features over those +// clusters. +// +// The GKE Hub service operates on the following resources: +// +// * [Membership][google.cloud.gkehub.v1.Membership] +// * [Feature][google.cloud.gkehub.v1.Feature] +// +// GKE Hub is currently only available in the global region. +// +// **Membership management may be non-trivial:** it is recommended to use one +// of the Google-provided client libraries or tools where possible when working +// with Membership resources. +service GkeHub { + option (google.api.default_host) = "gkehub.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/cloud-platform"; + + // Lists Memberships in a given project and location. + rpc ListMemberships(ListMembershipsRequest) returns (ListMembershipsResponse) { + option (google.api.http) = { + get: "/v1/{parent=projects/*/locations/*}/memberships" + }; + option (google.api.method_signature) = "parent"; + } + + // Lists Features in a given project and location. + rpc ListFeatures(ListFeaturesRequest) returns (ListFeaturesResponse) { + option (google.api.http) = { + get: "/v1/{parent=projects/*/locations/*}/features" + }; + option (google.api.method_signature) = "parent"; + } + + // Gets the details of a Membership. + rpc GetMembership(GetMembershipRequest) returns (Membership) { + option (google.api.http) = { + get: "/v1/{name=projects/*/locations/*/memberships/*}" + }; + option (google.api.method_signature) = "name"; + } + + // Gets details of a single Feature. + rpc GetFeature(GetFeatureRequest) returns (Feature) { + option (google.api.http) = { + get: "/v1/{name=projects/*/locations/*/features/*}" + }; + option (google.api.method_signature) = "name"; + } + + // Creates a new Membership. + // + // **This is currently only supported for GKE clusters on Google Cloud**. + // To register other clusters, follow the instructions at + // https://cloud.google.com/anthos/multicluster-management/connect/registering-a-cluster. + rpc CreateMembership(CreateMembershipRequest) returns (google.longrunning.Operation) { + option (google.api.http) = { + post: "/v1/{parent=projects/*/locations/*}/memberships" + body: "resource" + }; + option (google.api.method_signature) = "parent,resource,membership_id"; + option (google.longrunning.operation_info) = { + response_type: "Membership" + metadata_type: "OperationMetadata" + }; + } + + // Adds a new Feature. + rpc CreateFeature(CreateFeatureRequest) returns (google.longrunning.Operation) { + option (google.api.http) = { + post: "/v1/{parent=projects/*/locations/*}/features" + body: "resource" + }; + option (google.api.method_signature) = "parent,resource,feature_id"; + option (google.longrunning.operation_info) = { + response_type: "Feature" + metadata_type: "OperationMetadata" + }; + } + + // Removes a Membership. + // + // **This is currently only supported for GKE clusters on Google Cloud**. + // To unregister other clusters, follow the instructions at + // https://cloud.google.com/anthos/multicluster-management/connect/unregistering-a-cluster. + rpc DeleteMembership(DeleteMembershipRequest) returns (google.longrunning.Operation) { + option (google.api.http) = { + delete: "/v1/{name=projects/*/locations/*/memberships/*}" + }; + option (google.api.method_signature) = "name"; + option (google.longrunning.operation_info) = { + response_type: "google.protobuf.Empty" + metadata_type: "OperationMetadata" + }; + } + + // Removes a Feature. + rpc DeleteFeature(DeleteFeatureRequest) returns (google.longrunning.Operation) { + option (google.api.http) = { + delete: "/v1/{name=projects/*/locations/*/features/*}" + }; + option (google.api.method_signature) = "name"; + option (google.longrunning.operation_info) = { + response_type: "google.protobuf.Empty" + metadata_type: "OperationMetadata" + }; + } + + // Updates an existing Membership. + rpc UpdateMembership(UpdateMembershipRequest) returns (google.longrunning.Operation) { + option (google.api.http) = { + patch: "/v1/{name=projects/*/locations/*/memberships/*}" + body: "resource" + }; + option (google.api.method_signature) = "name,resource,update_mask"; + option (google.longrunning.operation_info) = { + response_type: "Membership" + metadata_type: "OperationMetadata" + }; + } + + // Updates an existing Feature. + rpc UpdateFeature(UpdateFeatureRequest) returns (google.longrunning.Operation) { + option (google.api.http) = { + patch: "/v1/{name=projects/*/locations/*/features/*}" + body: "resource" + }; + option (google.api.method_signature) = "name,resource,update_mask"; + option (google.longrunning.operation_info) = { + response_type: "Feature" + metadata_type: "OperationMetadata" + }; + } + + // Generates the manifest for deployment of the GKE connect agent. + // + // **This method is used internally by Google-provided libraries.** + // Most clients should not need to call this method directly. + rpc GenerateConnectManifest(GenerateConnectManifestRequest) returns (GenerateConnectManifestResponse) { + option (google.api.http) = { + get: "/v1/{name=projects/*/locations/*/memberships/*}:generateConnectManifest" + }; + } +} + +// Request message for `GkeHub.ListMemberships` method. +message ListMembershipsRequest { + // Required. The parent (project and location) where the Memberships will be listed. + // Specified in the format `projects/*/locations/*`. + string parent = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + child_type: "gkehub.googleapis.com/Membership" + } + ]; + + // Optional. When requesting a 'page' of resources, `page_size` specifies number of + // resources to return. If unspecified or set to 0, all resources will + // be returned. + int32 page_size = 2 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. Token returned by previous call to `ListMemberships` which + // specifies the position in the list from where to continue listing the + // resources. + string page_token = 3 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. Lists Memberships that match the filter expression, following the syntax + // outlined in https://google.aip.dev/160. + // + // Examples: + // + // - Name is `bar` in project `foo-proj` and location `global`: + // + // name = "projects/foo-proj/locations/global/membership/bar" + // + // - Memberships that have a label called `foo`: + // + // labels.foo:* + // + // - Memberships that have a label called `foo` whose value is `bar`: + // + // labels.foo = bar + // + // - Memberships in the CREATING state: + // + // state = CREATING + string filter = 4 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. One or more fields to compare and use to sort the output. + // See https://google.aip.dev/132#ordering. + string order_by = 5 [(google.api.field_behavior) = OPTIONAL]; +} + +// Response message for the `GkeHub.ListMemberships` method. +message ListMembershipsResponse { + // The list of matching Memberships. + repeated Membership resources = 1; + + // A token to request the next page of resources from the + // `ListMemberships` method. The value of an empty string means that + // there are no more resources to return. + string next_page_token = 2; + + // List of locations that could not be reached while fetching this list. + repeated string unreachable = 3; +} + +// Request message for `GkeHub.GetMembership` method. +message GetMembershipRequest { + // Required. The Membership resource name in the format + // `projects/*/locations/*/memberships/*`. + string name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "gkehub.googleapis.com/Membership" + } + ]; +} + +// Request message for the `GkeHub.CreateMembership` method. +message CreateMembershipRequest { + // Required. The parent (project and location) where the Memberships will be created. + // Specified in the format `projects/*/locations/*`. + string parent = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + child_type: "gkehub.googleapis.com/Membership" + } + ]; + + // Required. Client chosen ID for the membership. `membership_id` must be a valid RFC + // 1123 compliant DNS label: + // + // 1. At most 63 characters in length + // 2. It must consist of lower case alphanumeric characters or `-` + // 3. It must start and end with an alphanumeric character + // + // Which can be expressed as the regex: `[a-z0-9]([-a-z0-9]*[a-z0-9])?`, + // with a maximum length of 63 characters. + string membership_id = 2 [(google.api.field_behavior) = REQUIRED]; + + // Required. The membership to create. + Membership resource = 3 [(google.api.field_behavior) = REQUIRED]; + + // Optional. A request ID to identify requests. Specify a unique request ID + // so that if you must retry your request, the server will know to ignore + // the request if it has already been completed. The server will guarantee + // that for at least 60 minutes after the first request. + // + // For example, consider a situation where you make an initial request and + // the request times out. If you make the request again with the same request + // ID, the server can check if original operation with the same request ID + // was received, and if so, will ignore the second request. This prevents + // clients from accidentally creating duplicate commitments. + // + // The request ID must be a valid UUID with the exception that zero UUID is + // not supported (00000000-0000-0000-0000-000000000000). + string request_id = 4 [(google.api.field_behavior) = OPTIONAL]; +} + +// Request message for `GkeHub.DeleteMembership` method. +message DeleteMembershipRequest { + // Required. The Membership resource name in the format + // `projects/*/locations/*/memberships/*`. + string name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "gkehub.googleapis.com/Membership" + } + ]; + + // Optional. A request ID to identify requests. Specify a unique request ID + // so that if you must retry your request, the server will know to ignore + // the request if it has already been completed. The server will guarantee + // that for at least 60 minutes after the first request. + // + // For example, consider a situation where you make an initial request and + // the request times out. If you make the request again with the same request + // ID, the server can check if original operation with the same request ID + // was received, and if so, will ignore the second request. This prevents + // clients from accidentally creating duplicate commitments. + // + // The request ID must be a valid UUID with the exception that zero UUID is + // not supported (00000000-0000-0000-0000-000000000000). + string request_id = 2 [(google.api.field_behavior) = OPTIONAL]; +} + +// Request message for `GkeHub.UpdateMembership` method. +message UpdateMembershipRequest { + // Required. The Membership resource name in the format + // `projects/*/locations/*/memberships/*`. + string name = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. Mask of fields to update. + google.protobuf.FieldMask update_mask = 2 [(google.api.field_behavior) = REQUIRED]; + + // Required. Only fields specified in update_mask are updated. + // If you specify a field in the update_mask but don't specify its value here + // that field will be deleted. + // If you are updating a map field, set the value of a key to null or empty + // string to delete the key from the map. It's not possible to update a key's + // value to the empty string. + // If you specify the update_mask to be a special path "*", fully replaces all + // user-modifiable fields to match `resource`. + Membership resource = 3 [(google.api.field_behavior) = REQUIRED]; + + // Optional. A request ID to identify requests. Specify a unique request ID + // so that if you must retry your request, the server will know to ignore + // the request if it has already been completed. The server will guarantee + // that for at least 60 minutes after the first request. + // + // For example, consider a situation where you make an initial request and + // the request times out. If you make the request again with the same request + // ID, the server can check if original operation with the same request ID + // was received, and if so, will ignore the second request. This prevents + // clients from accidentally creating duplicate commitments. + // + // The request ID must be a valid UUID with the exception that zero UUID is + // not supported (00000000-0000-0000-0000-000000000000). + string request_id = 4 [(google.api.field_behavior) = OPTIONAL]; +} + +// Request message for `GkeHub.GenerateConnectManifest` +// method. +// . +message GenerateConnectManifestRequest { + // Required. The Membership resource name the Agent will associate with, in the format + // `projects/*/locations/*/memberships/*`. + string name = 1 [(google.api.field_behavior) = REQUIRED]; + + // Optional. Namespace for GKE Connect agent resources. Defaults to `gke-connect`. + // + // The Connect Agent is authorized automatically when run in the default + // namespace. Otherwise, explicit authorization must be granted with an + // additional IAM binding. + string namespace = 2 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. URI of a proxy if connectivity from the agent to gkeconnect.googleapis.com + // requires the use of a proxy. Format must be in the form + // `http(s)://{proxy_address}`, depending on the HTTP/HTTPS protocol + // supported by the proxy. This will direct the connect agent's outbound + // traffic through a HTTP(S) proxy. + bytes proxy = 3 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. The Connect agent version to use. Defaults to the most current version. + string version = 4 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. If true, generate the resources for upgrade only. Some resources + // generated only for installation (e.g. secrets) will be excluded. + bool is_upgrade = 5 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. The registry to fetch the connect agent image from. Defaults to + // gcr.io/gkeconnect. + string registry = 6 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. The image pull secret content for the registry, if not public. + bytes image_pull_secret_content = 7 [(google.api.field_behavior) = OPTIONAL]; +} + +// GenerateConnectManifestResponse contains manifest information for +// installing/upgrading a Connect agent. +message GenerateConnectManifestResponse { + // The ordered list of Kubernetes resources that need to be applied to the + // cluster for GKE Connect agent installation/upgrade. + repeated ConnectAgentResource manifest = 1; +} + +// ConnectAgentResource represents a Kubernetes resource manifest for Connect +// Agent deployment. +message ConnectAgentResource { + // Kubernetes type of the resource. + TypeMeta type = 1; + + // YAML manifest of the resource. + string manifest = 2; +} + +// TypeMeta is the type information needed for content unmarshalling of +// Kubernetes resources in the manifest. +message TypeMeta { + // Kind of the resource (e.g. Deployment). + string kind = 1; + + // APIVersion of the resource (e.g. v1). + string api_version = 2; +} + +// Request message for `GkeHub.ListFeatures` method. +message ListFeaturesRequest { + // The parent (project and location) where the Features will be listed. + // Specified in the format `projects/*/locations/*`. + string parent = 1; + + // When requesting a 'page' of resources, `page_size` specifies number of + // resources to return. If unspecified or set to 0, all resources will + // be returned. + int32 page_size = 2; + + // Token returned by previous call to `ListFeatures` which + // specifies the position in the list from where to continue listing the + // resources. + string page_token = 3; + + // Lists Features that match the filter expression, following the syntax + // outlined in https://google.aip.dev/160. + // + // Examples: + // + // - Feature with the name "servicemesh" in project "foo-proj": + // + // name = "projects/foo-proj/locations/global/features/servicemesh" + // + // - Features that have a label called `foo`: + // + // labels.foo:* + // + // - Features that have a label called `foo` whose value is `bar`: + // + // labels.foo = bar + string filter = 4; + + // One or more fields to compare and use to sort the output. + // See https://google.aip.dev/132#ordering. + string order_by = 5; +} + +// Response message for the `GkeHub.ListFeatures` method. +message ListFeaturesResponse { + // The list of matching Features + repeated Feature resources = 1; + + // A token to request the next page of resources from the + // `ListFeatures` method. The value of an empty string means + // that there are no more resources to return. + string next_page_token = 2; +} + +// Request message for `GkeHub.GetFeature` method. +message GetFeatureRequest { + // The Feature resource name in the format + // `projects/*/locations/*/features/*` + string name = 1; +} + +// Request message for the `GkeHub.CreateFeature` method. +message CreateFeatureRequest { + // The parent (project and location) where the Feature will be created. + // Specified in the format `projects/*/locations/*`. + string parent = 1; + + // The ID of the feature to create. + string feature_id = 2; + + // The Feature resource to create. + Feature resource = 3; + + // Optional. A request ID to identify requests. Specify a unique request ID + // so that if you must retry your request, the server will know to ignore + // the request if it has already been completed. The server will guarantee + // that for at least 60 minutes after the first request. + // + // For example, consider a situation where you make an initial request and + // the request times out. If you make the request again with the same request + // ID, the server can check if original operation with the same request ID + // was received, and if so, will ignore the second request. This prevents + // clients from accidentally creating duplicate commitments. + // + // The request ID must be a valid UUID with the exception that zero UUID is + // not supported (00000000-0000-0000-0000-000000000000). + string request_id = 4 [(google.api.field_behavior) = OPTIONAL]; +} + +// Request message for `GkeHub.DeleteFeature` method. +message DeleteFeatureRequest { + // The Feature resource name in the format + // `projects/*/locations/*/features/*`. + string name = 1; + + // If set to true, the delete will ignore any outstanding resources for + // this Feature (that is, `FeatureState.has_resources` is set to true). These + // resources will NOT be cleaned up or modified in any way. + bool force = 2; + + // Optional. A request ID to identify requests. Specify a unique request ID + // so that if you must retry your request, the server will know to ignore + // the request if it has already been completed. The server will guarantee + // that for at least 60 minutes after the first request. + // + // For example, consider a situation where you make an initial request and + // the request times out. If you make the request again with the same request + // ID, the server can check if original operation with the same request ID + // was received, and if so, will ignore the second request. This prevents + // clients from accidentally creating duplicate commitments. + // + // The request ID must be a valid UUID with the exception that zero UUID is + // not supported (00000000-0000-0000-0000-000000000000). + string request_id = 3 [(google.api.field_behavior) = OPTIONAL]; +} + +// Request message for `GkeHub.UpdateFeature` method. +message UpdateFeatureRequest { + // The Feature resource name in the format + // `projects/*/locations/*/features/*`. + string name = 1; + + // Mask of fields to update. + google.protobuf.FieldMask update_mask = 2; + + // Only fields specified in update_mask are updated. + // If you specify a field in the update_mask but don't specify its value here + // that field will be deleted. + // If you are updating a map field, set the value of a key to null or empty + // string to delete the key from the map. It's not possible to update a key's + // value to the empty string. + // If you specify the update_mask to be a special path "*", fully replaces all + // user-modifiable fields to match `resource`. + Feature resource = 3; + + // Optional. A request ID to identify requests. Specify a unique request ID + // so that if you must retry your request, the server will know to ignore + // the request if it has already been completed. The server will guarantee + // that for at least 60 minutes after the first request. + // + // For example, consider a situation where you make an initial request and + // the request times out. If you make the request again with the same request + // ID, the server can check if original operation with the same request ID + // was received, and if so, will ignore the second request. This prevents + // clients from accidentally creating duplicate commitments. + // + // The request ID must be a valid UUID with the exception that zero UUID is + // not supported (00000000-0000-0000-0000-000000000000). + string request_id = 4 [(google.api.field_behavior) = OPTIONAL]; +} + +// Represents the metadata of the long-running operation. +message OperationMetadata { + // Output only. The time the operation was created. + google.protobuf.Timestamp create_time = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The time the operation finished running. + google.protobuf.Timestamp end_time = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Server-defined resource path for the target of the operation. + string target = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Name of the verb executed by the operation. + string verb = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Human-readable status of the operation, if any. + string status_detail = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Identifies whether the user has requested cancellation + // of the operation. Operations that have successfully been cancelled + // have [Operation.error][] value with a [google.rpc.Status.code][google.rpc.Status.code] of 1, + // corresponding to `Code.CANCELLED`. + bool cancel_requested = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. API version used to start the operation. + string api_version = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; +} diff --git a/packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1alpha/cloudauditlogging/cloudauditlogging.proto b/packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1alpha/cloudauditlogging/cloudauditlogging.proto new file mode 100644 index 00000000000..19c70be5e7e --- /dev/null +++ b/packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1alpha/cloudauditlogging/cloudauditlogging.proto @@ -0,0 +1,37 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.cloud.gkehub.cloudauditlogging.v1alpha; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Cloud.GkeHub.CloudAuditLogging.V1Alpha"; +option go_package = "google.golang.org/genproto/googleapis/cloud/gkehub/cloudauditlogging/v1alpha;cloudauditlogging"; +option java_multiple_files = true; +option java_outer_classname = "CloudAuditLoggingProto"; +option java_package = "com.google.cloud.gkehub.cloudauditlogging.v1alpha"; +option php_namespace = "Google\\Cloud\\GkeHub\\CloudAuditLogging\\V1alpha"; +option ruby_package = "Google::Cloud::GkeHub::CloudAuditLogging::V1alpha"; + +// **Cloud Audit Logging**: Spec for Audit Logging Allowlisting. +message FeatureSpec { + // Service account that should be allowlisted to send the audit logs; eg + // cloudauditlogging@gcp-project.iam.gserviceaccount.com. These accounts must + // already exist, but do not need to have any permissions granted to them. + // The customer's entitlements will be checked prior to allowlisting (i.e. + // the customer must be an Anthos customer.) + repeated string allowlisted_service_accounts = 1; +} diff --git a/packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1alpha/configmanagement/configmanagement.proto b/packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1alpha/configmanagement/configmanagement.proto new file mode 100644 index 00000000000..1f06f30432b --- /dev/null +++ b/packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1alpha/configmanagement/configmanagement.proto @@ -0,0 +1,416 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.cloud.gkehub.configmanagement.v1alpha; + +import "google/protobuf/timestamp.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Cloud.GkeHub.ConfigManagement.V1Alpha"; +option go_package = "google.golang.org/genproto/googleapis/cloud/gkehub/configmanagement/v1alpha;configmanagement"; +option java_multiple_files = true; +option java_outer_classname = "ConfigManagementProto"; +option java_package = "com.google.cloud.gkehub.configmanagement.v1alpha"; +option php_namespace = "Google\\Cloud\\GkeHub\\ConfigManagement\\V1alpha"; +option ruby_package = "Google::Cloud::GkeHub::ConfigManagement::V1alpha"; + +// Enum representing the state of an ACM's deployment on a cluster +enum DeploymentState { + // Deployment's state cannot be determined + DEPLOYMENT_STATE_UNSPECIFIED = 0; + + // Deployment is not installed + NOT_INSTALLED = 1; + + // Deployment is installed + INSTALLED = 2; + + // Deployment was attempted to be installed, but has errors + ERROR = 3; +} + +// **Anthos Config Management**: State for a single cluster. +message MembershipState { + // The user-defined name for the cluster used by ClusterSelectors to group + // clusters together. This should match Membership's membership_name, + // unless the user installed ACM on the cluster manually prior to enabling + // the ACM hub feature. + // Unique within a Anthos Config Management installation. + string cluster_name = 1; + + // Membership configuration in the cluster. This represents the actual state + // in the cluster, while the MembershipSpec in the FeatureSpec represents + // the intended state + MembershipSpec membership_spec = 2; + + // Current install status of ACM's Operator + OperatorState operator_state = 3; + + // Current sync status + ConfigSyncState config_sync_state = 4; + + // PolicyController status + PolicyControllerState policy_controller_state = 5; + + // Binauthz status + BinauthzState binauthz_state = 6; + + // Hierarchy Controller status + HierarchyControllerState hierarchy_controller_state = 7; +} + +// **Anthos Config Management**: Configuration for a single cluster. +// Intended to parallel the ConfigManagement CR. +message MembershipSpec { + // Config Sync configuration for the cluster. + ConfigSync config_sync = 1; + + // Policy Controller configuration for the cluster. + PolicyController policy_controller = 2; + + // Binauthz conifguration for the cluster. + BinauthzConfig binauthz = 3; + + // Hierarchy Controller configuration for the cluster. + HierarchyControllerConfig hierarchy_controller = 4; + + // Version of ACM installed. + string version = 10; +} + +// Configuration for Config Sync +message ConfigSync { + // Git repo configuration for the cluster. + GitConfig git = 7; + + // Specifies whether the Config Sync Repo is + // in “hierarchical” or “unstructured” mode. + string source_format = 8; +} + +// Git repo configuration for a single cluster. +message GitConfig { + // The URL of the Git repository to use as the source of truth. + string sync_repo = 1; + + // The branch of the repository to sync from. Default: master. + string sync_branch = 2; + + // The path within the Git repository that represents the top level of the + // repo to sync. Default: the root directory of the repository. + string policy_dir = 3; + + // Period in seconds between consecutive syncs. Default: 15. + int64 sync_wait_secs = 4; + + // Git revision (tag or hash) to check out. Default HEAD. + string sync_rev = 5; + + // Type of secret configured for access to the Git repo. + string secret_type = 6; + + // URL for the HTTPS proxy to be used when communicating with the Git repo. + string https_proxy = 7; + + // The GCP Service Account Email used for auth when secret_type is + // gcpServiceAccount. + string gcp_service_account_email = 8; +} + +// Configuration for Policy Controller +message PolicyController { + // Enables the installation of Policy Controller. + // If false, the rest of PolicyController fields take no + // effect. + bool enabled = 1; + + // Installs the default template library along with Policy Controller. + optional bool template_library_installed = 2; + + // Sets the interval for Policy Controller Audit Scans (in seconds). + // When set to 0, this disables audit functionality altogether. + optional int64 audit_interval_seconds = 3; + + // The set of namespaces that are excluded from Policy Controller checks. + // Namespaces do not need to currently exist on the cluster. + repeated string exemptable_namespaces = 4; + + // Enables the ability to use Constraint Templates that reference to objects + // other than the object currently being evaluated. + bool referential_rules_enabled = 5; + + // Logs all denies and dry run failures. + bool log_denies_enabled = 6; + + // Enable users to try out mutation for PolicyController. + bool mutation_enabled = 7; +} + +// Configuration for Binauthz +message BinauthzConfig { + // Whether binauthz is enabled in this cluster. + bool enabled = 1; +} + +// Configuration for Hierarchy Controller +message HierarchyControllerConfig { + // Whether Hierarchy Controller is enabled in this cluster. + bool enabled = 1; + + // Whether pod tree labels are enabled in this cluster. + bool enable_pod_tree_labels = 2; + + // Whether hierarchical resource quota is enabled in this cluster. + bool enable_hierarchical_resource_quota = 3; +} + +// Deployment state for Hierarchy Controller +message HierarchyControllerDeploymentState { + // The deployment state for open source HNC (e.g. v0.7.0-hc.0) + DeploymentState hnc = 1; + + // The deployment state for Hierarchy Controller extension (e.g. v0.7.0-hc.1) + DeploymentState extension = 2; +} + +// Version for Hierarchy Controller +message HierarchyControllerVersion { + // Version for open source HNC + string hnc = 1; + + // Version for Hierarchy Controller extension + string extension = 2; +} + +// State for Hierarchy Controller +message HierarchyControllerState { + // The version for Hierarchy Controller + HierarchyControllerVersion version = 1; + + // The deployment state for Hierarchy Controller + HierarchyControllerDeploymentState state = 2; +} + +// State information for an ACM's Operator +message OperatorState { + // The semenatic version number of the operator + string version = 1; + + // The state of the Operator's deployment + DeploymentState deployment_state = 2; + + // Install errors. + repeated InstallError errors = 3; +} + +// Errors pertaining to the installation of ACM +message InstallError { + // A string representing the user facing error message + string error_message = 1; +} + +// State information for ConfigSync +message ConfigSyncState { + // The version of ConfigSync deployed + ConfigSyncVersion version = 1; + + // Information about the deployment of ConfigSync, including the version + // of the various Pods deployed + ConfigSyncDeploymentState deployment_state = 2; + + // The state of ConfigSync's process to sync configs to a cluster + SyncState sync_state = 3; +} + +// Specific versioning information pertaining to ConfigSync's Pods +message ConfigSyncVersion { + // Version of the deployed importer pod + string importer = 1; + + // Version of the deployed syncer pod + string syncer = 2; + + // Version of the deployed git-sync pod + string git_sync = 3; + + // Version of the deployed monitor pod + string monitor = 4; + + // Version of the deployed reconciler-manager pod + string reconciler_manager = 5; + + // Version of the deployed reconciler container in root-reconciler pod + string root_reconciler = 6; +} + +// The state of ConfigSync's deployment on a cluster +message ConfigSyncDeploymentState { + // Deployment state of the importer pod + DeploymentState importer = 1; + + // Deployment state of the syncer pod + DeploymentState syncer = 2; + + // Deployment state of the git-sync pod + DeploymentState git_sync = 3; + + // Deployment state of the monitor pod + DeploymentState monitor = 4; + + // Deployment state of reconciler-manager pod + DeploymentState reconciler_manager = 5; + + // Deployment state of root-reconciler + DeploymentState root_reconciler = 6; +} + +// State indicating an ACM's progress syncing configurations to a cluster +message SyncState { + // An enum representing an ACM's status syncing configs to a cluster + enum SyncCode { + // ACM cannot determine a sync code + SYNC_CODE_UNSPECIFIED = 0; + + // ACM successfully synced the git Repo with the cluster + SYNCED = 1; + + // ACM is in the progress of syncing a new change + PENDING = 2; + + // Indicates an error configuring ACM, and user action is required + ERROR = 3; + + // ACM has been installed (operator manifest deployed), + // but not configured. + NOT_CONFIGURED = 4; + + // ACM has not been installed (no operator pod found) + NOT_INSTALLED = 5; + + // Error authorizing with the cluster + UNAUTHORIZED = 6; + + // Cluster could not be reached + UNREACHABLE = 7; + } + + // Token indicating the state of the repo. + string source_token = 1; + + // Token indicating the state of the importer. + string import_token = 2; + + // Token indicating the state of the syncer. + string sync_token = 3; + + // Deprecated: use last_sync_time instead. + // Timestamp of when ACM last successfully synced the repo + // The time format is specified in https://golang.org/pkg/time/#Time.String + string last_sync = 4 [deprecated = true]; + + // Timestamp type of when ACM last successfully synced the repo + google.protobuf.Timestamp last_sync_time = 7; + + // Sync status code + SyncCode code = 5; + + // A list of errors resulting from problematic configs. + // This list will be truncated after 100 errors, although it is + // unlikely for that many errors to simultaneously exist. + repeated SyncError errors = 6; +} + +// An ACM created error representing a problem syncing configurations +message SyncError { + // An ACM defined error code + string code = 1; + + // A description of the error + string error_message = 2; + + // A list of config(s) associated with the error, if any + repeated ErrorResource error_resources = 3; +} + +// Model for a config file in the git repo with an associated Sync error +message ErrorResource { + // Path in the git repo of the erroneous config + string source_path = 1; + + // Metadata name of the resource that is causing an error + string resource_name = 2; + + // Namespace of the resource that is causing an error + string resource_namespace = 3; + + // Group/version/kind of the resource that is causing an error + GroupVersionKind resource_gvk = 4; +} + +// A Kubernetes object's GVK +message GroupVersionKind { + // Kubernetes Group + string group = 1; + + // Kubernetes Version + string version = 2; + + // Kubernetes Kind + string kind = 3; +} + +// State for PolicyControllerState. +message PolicyControllerState { + // The version of Gatekeeper Policy Controller deployed. + PolicyControllerVersion version = 1; + + // The state about the policy controller installation. + GatekeeperDeploymentState deployment_state = 2; +} + +// The build version of Gatekeeper Policy Controller is using. +message PolicyControllerVersion { + // The gatekeeper image tag that is composed of ACM version, git tag, build + // number. + string version = 1; +} + +// State for Binauthz +message BinauthzState { + // The state of the binauthz webhook. + DeploymentState webhook = 1; + + // The version of binauthz that is installed. + BinauthzVersion version = 2; +} + +// The version of binauthz. +message BinauthzVersion { + // The version of the binauthz webhook. + string webhook_version = 1; +} + +// State of Policy Controller installation. +message GatekeeperDeploymentState { + // Status of gatekeeper-controller-manager pod. + DeploymentState gatekeeper_controller_manager_state = 1; + + // Status of gatekeeper-audit deployment. + DeploymentState gatekeeper_audit = 2; + + // Status of the pod serving the mutation webhook. + DeploymentState gatekeeper_mutation = 3; +} diff --git a/packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1alpha/feature.proto b/packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1alpha/feature.proto new file mode 100644 index 00000000000..1bfad32f702 --- /dev/null +++ b/packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1alpha/feature.proto @@ -0,0 +1,216 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.cloud.gkehub.v1alpha; + +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/cloud/gkehub/v1alpha/cloudauditlogging/cloudauditlogging.proto"; +import "google/cloud/gkehub/v1alpha/configmanagement/configmanagement.proto"; +import "google/cloud/gkehub/v1alpha/metering/metering.proto"; +import "google/cloud/gkehub/v1alpha/multiclusteringress/multiclusteringress.proto"; +import "google/cloud/gkehub/v1alpha/servicemesh/servicemesh.proto"; +import "google/protobuf/timestamp.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Cloud.GkeHub.V1Alpha"; +option go_package = "google.golang.org/genproto/googleapis/cloud/gkehub/v1alpha;gkehub"; +option java_multiple_files = true; +option java_outer_classname = "FeatureProto"; +option java_package = "com.google.cloud.gkehub.v1alpha"; +option php_namespace = "Google\\Cloud\\GkeHub\\V1alpha"; +option ruby_package = "Google::Cloud::GkeHub::V1alpha"; + +// Feature represents the settings and status of any Hub Feature. +message Feature { + option (google.api.resource) = { + type: "gkehub.googleapis.com/Feature" + pattern: "projects/{project}/locations/{location}/features/{feature}" + }; + + // Output only. The full, unique name of this Feature resource in the format + // `projects/*/locations/*/features/*`. + string name = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // GCP labels for this Feature. + map labels = 2; + + // Output only. State of the Feature resource itself. + FeatureResourceState resource_state = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Optional. Hub-wide Feature configuration. If this Feature does not support any + // Hub-wide configuration, this field may be unused. + CommonFeatureSpec spec = 4 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. Membership-specific configuration for this Feature. If this Feature does + // not support any per-Membership configuration, this field may be unused. + // + // The keys indicate which Membership the configuration is for, in the form: + // + // projects/{p}/locations/{l}/memberships/{m} + // + // Where {p} is the project, {l} is a valid location and {m} is a valid + // Membership in this project at that location. {p} WILL match the Feature's + // project. + // + // {p} will always be returned as the project number, but the project ID is + // also accepted during input. If the same Membership is specified in the map + // twice (using the project ID form, and the project number form), exactly + // ONE of the entries will be saved, with no guarantees as to which. For this + // reason, it is recommended the same format be used for all entries when + // mutating a Feature. + map membership_specs = 5 [(google.api.field_behavior) = OPTIONAL]; + + // Output only. The Hub-wide Feature state. + CommonFeatureState state = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Membership-specific Feature status. If this Feature does + // report any per-Membership status, this field may be unused. + // + // The keys indicate which Membership the state is for, in the form: + // + // projects/{p}/locations/{l}/memberships/{m} + // + // Where {p} is the project number, {l} is a valid location and {m} is a valid + // Membership in this project at that location. {p} MUST match the Feature's + // project number. + map membership_states = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. When the Feature resource was created. + google.protobuf.Timestamp create_time = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. When the Feature resource was last updated. + google.protobuf.Timestamp update_time = 9 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. When the Feature resource was deleted. + google.protobuf.Timestamp delete_time = 10 [(google.api.field_behavior) = OUTPUT_ONLY]; +} + +// FeatureResourceState describes the state of a Feature *resource* in the +// GkeHub API. See `FeatureState` for the "running state" of the Feature in the +// Hub and across Memberships. +message FeatureResourceState { + // State describes the lifecycle status of a Feature. + enum State { + // State is unknown or not set. + STATE_UNSPECIFIED = 0; + + // The Feature is being enabled, and the Feature resource is being created. + // Once complete, the corresponding Feature will be enabled in this Hub. + ENABLING = 1; + + // The Feature is enabled in this Hub, and the Feature resource is fully + // available. + ACTIVE = 2; + + // The Feature is being disabled in this Hub, and the Feature resource + // is being deleted. + DISABLING = 3; + + // The Feature resource is being updated. + UPDATING = 4; + + // The Feature resource is being updated by the Hub Service. + SERVICE_UPDATING = 5; + } + + // The current state of the Feature resource in the Hub API. + State state = 1; +} + +// FeatureState describes the high-level state of a Feature. It may be used to +// describe a Feature's state at the environ-level, or per-membershop, depending +// on the context. +message FeatureState { + // Code represents a machine-readable, high-level status of the Feature. + enum Code { + // Unknown or not set. + CODE_UNSPECIFIED = 0; + + // The Feature is operating normally. + OK = 1; + + // The Feature has encountered an issue, and is operating in a degraded + // state. The Feature may need intervention to return to normal operation. + // See the description and any associated Feature-specific details for more + // information. + WARNING = 2; + + // The Feature is not operating or is in a severely degraded state. + // The Feature may need intervention to return to normal operation. + // See the description and any associated Feature-specific details for more + // information. + ERROR = 3; + } + + // The high-level, machine-readable status of this Feature. + Code code = 1; + + // A human-readable description of the current status. + string description = 2; + + // The time this status and any related Feature-specific details were updated. + google.protobuf.Timestamp update_time = 3; +} + +// CommonFeatureSpec contains Hub-wide configuration information +message CommonFeatureSpec { + oneof feature_spec { + // Multicluster Ingress-specific spec. + google.cloud.gkehub.multiclusteringress.v1alpha.FeatureSpec multiclusteringress = 102; + + // Cloud Audit Logging-specific spec. + google.cloud.gkehub.cloudauditlogging.v1alpha.FeatureSpec cloudauditlogging = 108; + } +} + +// CommonFeatureState contains Hub-wide Feature status information. +message CommonFeatureState { + oneof feature_state { + // Service Mesh-specific state. + google.cloud.gkehub.servicemesh.v1alpha.FeatureState servicemesh = 100; + } + + // Output only. The "running state" of the Feature in this Hub. + FeatureState state = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; +} + +// MembershipFeatureSpec contains configuration information for a single +// Membership. +message MembershipFeatureSpec { + oneof feature_spec { + // Config Management-specific spec. + google.cloud.gkehub.configmanagement.v1alpha.MembershipSpec configmanagement = 106; + } +} + +// MembershipFeatureState contains Feature status information for a single +// Membership. +message MembershipFeatureState { + oneof feature_state { + // Service Mesh-specific state. + google.cloud.gkehub.servicemesh.v1alpha.MembershipState servicemesh = 100; + + // Metering-specific spec. + google.cloud.gkehub.metering.v1alpha.MembershipState metering = 104; + + // Config Management-specific state. + google.cloud.gkehub.configmanagement.v1alpha.MembershipState configmanagement = 106; + } + + // The high-level state of this Feature for a single membership. + FeatureState state = 1; +} diff --git a/packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1alpha/metering/metering.proto b/packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1alpha/metering/metering.proto new file mode 100644 index 00000000000..2e630bd02e6 --- /dev/null +++ b/packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1alpha/metering/metering.proto @@ -0,0 +1,39 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.cloud.gkehub.metering.v1alpha; + +import "google/protobuf/timestamp.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Cloud.GkeHub.Metering.V1Alpha"; +option go_package = "google.golang.org/genproto/googleapis/cloud/gkehub/metering/v1alpha;metering"; +option java_multiple_files = true; +option java_outer_classname = "MeteringProto"; +option java_package = "com.google.cloud.gkehub.metering.v1alpha"; +option php_namespace = "Google\\Cloud\\GkeHub\\Metering\\V1alpha"; +option ruby_package = "Google::Cloud::GkeHub::Metering::V1alpha"; + +// **Metering**: Per-Membership Feature State. +message MembershipState { + // The time stamp of the most recent measurement of the number of vCPUs + // in the cluster. + google.protobuf.Timestamp last_measurement_time = 1; + + // The vCPUs capacity in the cluster according to the most recent + // measurement (1/1000 precision). + float precise_last_measured_cluster_vcpu_capacity = 3; +} diff --git a/packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1alpha/multiclusteringress/multiclusteringress.proto b/packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1alpha/multiclusteringress/multiclusteringress.proto new file mode 100644 index 00000000000..f6418c10ade --- /dev/null +++ b/packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1alpha/multiclusteringress/multiclusteringress.proto @@ -0,0 +1,50 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.cloud.gkehub.multiclusteringress.v1alpha; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Cloud.GkeHub.MultiClusterIngress.V1Alpha"; +option go_package = "google.golang.org/genproto/googleapis/cloud/gkehub/multiclusteringress/v1alpha;multiclusteringress"; +option java_multiple_files = true; +option java_outer_classname = "MultiClusterIngressProto"; +option java_package = "com.google.cloud.gkehub.multiclusteringress.v1alpha"; +option php_namespace = "Google\\Cloud\\GkeHub\\MultiClusterIngress\\V1alpha"; +option ruby_package = "Google::Cloud::GkeHub::MultiClusterIngress::V1alpha"; + +// Billing identifies which billing structure the customer is using. +enum Billing { + // Unknown + BILLING_UNSPECIFIED = 0; + + // User pays a fee per-endpoint. + PAY_AS_YOU_GO = 1; + + // User is paying for Anthos as a whole. + ANTHOS_LICENSE = 2; +} + +// **Multi-cluster Ingress**: The configuration for the MultiClusterIngress +// feature. +message FeatureSpec { + // Fully-qualified Membership name which hosts the MultiClusterIngress CRD. + // Example: `projects/foo-proj/locations/global/memberships/bar` + string config_membership = 1; + + // Customer's billing structure + Billing billing = 2; +} diff --git a/packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1alpha/service.proto b/packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1alpha/service.proto new file mode 100644 index 00000000000..3764fa8cbbc --- /dev/null +++ b/packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1alpha/service.proto @@ -0,0 +1,281 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.cloud.gkehub.v1alpha; + +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/cloud/gkehub/v1alpha/feature.proto"; +import "google/longrunning/operations.proto"; +import "google/protobuf/field_mask.proto"; +import "google/protobuf/timestamp.proto"; + +option csharp_namespace = "Google.Cloud.GkeHub.V1Alpha"; +option go_package = "google.golang.org/genproto/googleapis/cloud/gkehub/v1alpha;gkehub"; +option java_multiple_files = true; +option java_outer_classname = "ServiceProto"; +option java_package = "com.google.cloud.gkehub.v1alpha"; +option php_namespace = "Google\\Cloud\\GkeHub\\V1alpha"; +option ruby_package = "Google::Cloud::GkeHub::V1alpha"; + +// The GKE Hub service handles the registration of many Kubernetes clusters to +// Google Cloud, and the management of multi-cluster features over those +// clusters. +// +// The GKE Hub service operates on the following resources: +// +// * [Membership][google.cloud.gkehub.v1alpha.Membership] +// * [Feature][google.cloud.gkehub.v1alpha.Feature] +// +// GKE Hub is currently only available in the global region. +// +// **Membership management may be non-trivial:** it is recommended to use one +// of the Google-provided client libraries or tools where possible when working +// with Membership resources. +service GkeHub { + option (google.api.default_host) = "gkehub.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/cloud-platform"; + + // Lists Features in a given project and location. + rpc ListFeatures(ListFeaturesRequest) returns (ListFeaturesResponse) { + option (google.api.http) = { + get: "/v1alpha/{parent=projects/*/locations/*}/features" + }; + option (google.api.method_signature) = "parent"; + } + + // Gets details of a single Feature. + rpc GetFeature(GetFeatureRequest) returns (Feature) { + option (google.api.http) = { + get: "/v1alpha/{name=projects/*/locations/*/features/*}" + }; + option (google.api.method_signature) = "name"; + } + + // Adds a new Feature. + rpc CreateFeature(CreateFeatureRequest) returns (google.longrunning.Operation) { + option (google.api.http) = { + post: "/v1alpha/{parent=projects/*/locations/*}/features" + body: "resource" + }; + option (google.api.method_signature) = "parent,resource,feature_id"; + option (google.longrunning.operation_info) = { + response_type: "Feature" + metadata_type: "OperationMetadata" + }; + } + + // Removes a Feature. + rpc DeleteFeature(DeleteFeatureRequest) returns (google.longrunning.Operation) { + option (google.api.http) = { + delete: "/v1alpha/{name=projects/*/locations/*/features/*}" + }; + option (google.api.method_signature) = "name"; + option (google.longrunning.operation_info) = { + response_type: "google.protobuf.Empty" + metadata_type: "OperationMetadata" + }; + } + + // Updates an existing Feature. + rpc UpdateFeature(UpdateFeatureRequest) returns (google.longrunning.Operation) { + option (google.api.http) = { + patch: "/v1alpha/{name=projects/*/locations/*/features/*}" + body: "resource" + }; + option (google.api.method_signature) = "name,resource,update_mask"; + option (google.longrunning.operation_info) = { + response_type: "Feature" + metadata_type: "OperationMetadata" + }; + } +} + +// Request message for `GkeHub.ListFeatures` method. +message ListFeaturesRequest { + // The parent (project and location) where the Features will be listed. + // Specified in the format `projects/*/locations/*`. + string parent = 1; + + // When requesting a 'page' of resources, `page_size` specifies number of + // resources to return. If unspecified or set to 0, all resources will + // be returned. + int32 page_size = 2; + + // Token returned by previous call to `ListFeatures` which + // specifies the position in the list from where to continue listing the + // resources. + string page_token = 3; + + // Lists Features that match the filter expression, following the syntax + // outlined in https://google.aip.dev/160. + // + // Examples: + // + // - Feature with the name "servicemesh" in project "foo-proj": + // + // name = "projects/foo-proj/locations/global/features/servicemesh" + // + // - Features that have a label called `foo`: + // + // labels.foo:* + // + // - Features that have a label called `foo` whose value is `bar`: + // + // labels.foo = bar + string filter = 4; + + // One or more fields to compare and use to sort the output. + // See https://google.aip.dev/132#ordering. + string order_by = 5; +} + +// Response message for the `GkeHub.ListFeatures` method. +message ListFeaturesResponse { + // The list of matching Features + repeated Feature resources = 1; + + // A token to request the next page of resources from the + // `ListFeatures` method. The value of an empty string means + // that there are no more resources to return. + string next_page_token = 2; +} + +// Request message for `GkeHub.GetFeature` method. +message GetFeatureRequest { + // The Feature resource name in the format + // `projects/*/locations/*/features/*` + string name = 1; +} + +// Request message for the `GkeHub.CreateFeature` method. +message CreateFeatureRequest { + // The parent (project and location) where the Feature will be created. + // Specified in the format `projects/*/locations/*`. + string parent = 1; + + // The ID of the feature to create. + string feature_id = 2; + + // The Feature resource to create. + Feature resource = 3; + + // Optional. A request ID to identify requests. Specify a unique request ID + // so that if you must retry your request, the server will know to ignore + // the request if it has already been completed. The server will guarantee + // that for at least 60 minutes after the first request. + // + // For example, consider a situation where you make an initial request and + // the request times out. If you make the request again with the same request + // ID, the server can check if original operation with the same request ID + // was received, and if so, will ignore the second request. This prevents + // clients from accidentally creating duplicate commitments. + // + // The request ID must be a valid UUID with the exception that zero UUID is + // not supported (00000000-0000-0000-0000-000000000000). + string request_id = 4 [(google.api.field_behavior) = OPTIONAL]; +} + +// Request message for `GkeHub.DeleteFeature` method. +message DeleteFeatureRequest { + // The Feature resource name in the format + // `projects/*/locations/*/features/*`. + string name = 1; + + // If set to true, the delete will ignore any outstanding resources for + // this Feature (that is, `FeatureState.has_resources` is set to true). These + // resources will NOT be cleaned up or modified in any way. + bool force = 2; + + // Optional. A request ID to identify requests. Specify a unique request ID + // so that if you must retry your request, the server will know to ignore + // the request if it has already been completed. The server will guarantee + // that for at least 60 minutes after the first request. + // + // For example, consider a situation where you make an initial request and + // the request times out. If you make the request again with the same request + // ID, the server can check if original operation with the same request ID + // was received, and if so, will ignore the second request. This prevents + // clients from accidentally creating duplicate commitments. + // + // The request ID must be a valid UUID with the exception that zero UUID is + // not supported (00000000-0000-0000-0000-000000000000). + string request_id = 3 [(google.api.field_behavior) = OPTIONAL]; +} + +// Request message for `GkeHub.UpdateFeature` method. +message UpdateFeatureRequest { + // The Feature resource name in the format + // `projects/*/locations/*/features/*`. + string name = 1; + + // Mask of fields to update. + google.protobuf.FieldMask update_mask = 2; + + // Only fields specified in update_mask are updated. + // If you specify a field in the update_mask but don't specify its value here + // that field will be deleted. + // If you are updating a map field, set the value of a key to null or empty + // string to delete the key from the map. It's not possible to update a key's + // value to the empty string. + // If you specify the update_mask to be a special path "*", fully replaces all + // user-modifiable fields to match `resource`. + Feature resource = 3; + + // Optional. A request ID to identify requests. Specify a unique request ID + // so that if you must retry your request, the server will know to ignore + // the request if it has already been completed. The server will guarantee + // that for at least 60 minutes after the first request. + // + // For example, consider a situation where you make an initial request and + // the request times out. If you make the request again with the same request + // ID, the server can check if original operation with the same request ID + // was received, and if so, will ignore the second request. This prevents + // clients from accidentally creating duplicate commitments. + // + // The request ID must be a valid UUID with the exception that zero UUID is + // not supported (00000000-0000-0000-0000-000000000000). + string request_id = 4 [(google.api.field_behavior) = OPTIONAL]; +} + +// Represents the metadata of the long-running operation. +message OperationMetadata { + // Output only. The time the operation was created. + google.protobuf.Timestamp create_time = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The time the operation finished running. + google.protobuf.Timestamp end_time = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Server-defined resource path for the target of the operation. + string target = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Name of the verb executed by the operation. + string verb = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Human-readable status of the operation, if any. + string status_detail = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Identifies whether the user has requested cancellation + // of the operation. Operations that have successfully been cancelled + // have [Operation.error][] value with a [google.rpc.Status.code][google.rpc.Status.code] of 1, + // corresponding to `Code.CANCELLED`. + bool cancel_requested = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. API version used to start the operation. + string api_version = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; +} diff --git a/packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1alpha/servicemesh/servicemesh.proto b/packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1alpha/servicemesh/servicemesh.proto new file mode 100644 index 00000000000..e200e4fc1db --- /dev/null +++ b/packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1alpha/servicemesh/servicemesh.proto @@ -0,0 +1,115 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.cloud.gkehub.servicemesh.v1alpha; + +import "google/api/field_behavior.proto"; +import "google/protobuf/struct.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Cloud.GkeHub.ServiceMesh.V1Alpha"; +option go_package = "google.golang.org/genproto/googleapis/cloud/gkehub/servicemesh/v1alpha;servicemesh"; +option java_multiple_files = true; +option java_outer_classname = "ServiceMeshProto"; +option java_package = "com.google.cloud.gkehub.servicemesh.v1alpha"; +option php_namespace = "Google\\Cloud\\GkeHub\\ServiceMesh\\V1alpha"; +option ruby_package = "Google::Cloud::GkeHub::ServiceMesh::V1alpha"; + +// **Service Mesh**: State for the whole Hub, as analyzed by the Service Mesh +// Hub Controller. +message FeatureState { + // Output only. Results of running Service Mesh analyzers. + repeated AnalysisMessage analysis_messages = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; +} + +// **Service Mesh**: State for a single Membership, as analyzed by the Service +// Mesh Hub Controller. +message MembershipState { + // Output only. Results of running Service Mesh analyzers. + repeated AnalysisMessage analysis_messages = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; +} + +// AnalysisMessageBase describes some common information that is +// needed for all messages. +message AnalysisMessageBase { + // A unique identifier for the type of message. Display_name is intended to be + // human-readable, code is intended to be machine readable. There should be a + // one-to-one mapping between display_name and code. (i.e. do not re-use + // display_names or codes between message types.) + // See istio.analysis.v1alpha1.AnalysisMessageBase.Type + message Type { + // A human-readable name for the message type. e.g. "InternalError", + // "PodMissingProxy". This should be the same for all messages of the same + // type. (This corresponds to the `name` field in open-source Istio.) + string display_name = 1; + + // A 7 character code matching `^IST[0-9]{4}$` or `^ASM[0-9]{4}$`, intended + // to uniquely identify the message type. (e.g. "IST0001" is mapped to the + // "InternalError" message type.) + string code = 2; + } + + // The values here are chosen so that more severe messages get sorted higher, + // as well as leaving space in between to add more later + // See istio.analysis.v1alpha1.AnalysisMessageBase.Level + enum Level { + // Illegal. Same istio.analysis.v1alpha1.AnalysisMessageBase.Level.UNKNOWN. + LEVEL_UNSPECIFIED = 0; + + // ERROR represents a misconfiguration that must be fixed. + ERROR = 3; + + // WARNING represents a misconfiguration that should be fixed. + WARNING = 8; + + // INFO represents an informational finding. + INFO = 12; + } + + // Represents the specific type of a message. + Type type = 1; + + // Represents how severe a message is. + Level level = 2; + + // A url pointing to the Service Mesh or Istio documentation for this specific + // error type. + string documentation_url = 3; +} + +// AnalysisMessage is a single message produced by an analyzer, and +// it used to communicate to the end user about the state of their Service +// Mesh configuration. +message AnalysisMessage { + // Details common to all types of Istio and ServiceMesh analysis messages. + AnalysisMessageBase message_base = 1; + + // A human readable description of what the error means. It is suitable for + // non-internationalize display purposes. + string description = 2; + + // A list of strings specifying the resource identifiers that were the cause + // of message generation. + // A "path" here may be: + // * MEMBERSHIP_ID if the cause is a specific member cluster + // * MEMBERSHIP_ID/(NAMESPACE\/)?RESOURCETYPE/NAME if the cause is a resource + // in a cluster + repeated string resource_paths = 3; + + // A UI can combine these args with a template (based on message_base.type) + // to produce an internationalized message. + google.protobuf.Struct args = 4; +} diff --git a/packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1alpha2/membership.proto b/packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1alpha2/membership.proto new file mode 100644 index 00000000000..f157b373d5c --- /dev/null +++ b/packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1alpha2/membership.proto @@ -0,0 +1,642 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.cloud.gkehub.v1alpha2; + +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/longrunning/operations.proto"; +import "google/protobuf/field_mask.proto"; +import "google/protobuf/timestamp.proto"; + +option csharp_namespace = "Google.Cloud.GkeHub.V1Alpha2"; +option go_package = "google.golang.org/genproto/googleapis/cloud/gkehub/v1alpha2;gkehub"; +option java_multiple_files = true; +option java_outer_classname = "MembershipProto"; +option java_package = "com.google.cloud.gkehub.v1alpha2"; +option php_namespace = "Google\\Cloud\\GkeHub\\V1alpha2"; +option ruby_package = "Google::Cloud::GkeHub::V1alpha2"; + +// GKE Hub CRUD API for the Membership resource. +// The Membership service is currently only available in the global location. +service GkeHub { + option (google.api.default_host) = "gkehub.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/cloud-platform"; + + // Lists Memberships in a given project and location. + rpc ListMemberships(ListMembershipsRequest) returns (ListMembershipsResponse) { + option (google.api.http) = { + get: "/v1alpha2/{parent=projects/*/locations/*}/memberships" + }; + option (google.api.method_signature) = "parent"; + } + + // Gets the details of a Membership. + rpc GetMembership(GetMembershipRequest) returns (Membership) { + option (google.api.http) = { + get: "/v1alpha2/{name=projects/*/locations/*/memberships/*}" + }; + option (google.api.method_signature) = "name"; + } + + // Adds a new Membership. + rpc CreateMembership(CreateMembershipRequest) returns (google.longrunning.Operation) { + option (google.api.http) = { + post: "/v1alpha2/{parent=projects/*/locations/*}/memberships" + body: "resource" + }; + option (google.api.method_signature) = "parent,resource,membership_id"; + option (google.longrunning.operation_info) = { + response_type: "Membership" + metadata_type: "OperationMetadata" + }; + } + + // Removes a Membership. + rpc DeleteMembership(DeleteMembershipRequest) returns (google.longrunning.Operation) { + option (google.api.http) = { + delete: "/v1alpha2/{name=projects/*/locations/*/memberships/*}" + }; + option (google.api.method_signature) = "name"; + option (google.longrunning.operation_info) = { + response_type: "google.protobuf.Empty" + metadata_type: "OperationMetadata" + }; + } + + // Updates an existing Membership. + rpc UpdateMembership(UpdateMembershipRequest) returns (google.longrunning.Operation) { + option (google.api.http) = { + patch: "/v1alpha2/{name=projects/*/locations/*/memberships/*}" + body: "resource" + }; + option (google.api.method_signature) = "name,resource,update_mask"; + option (google.longrunning.operation_info) = { + response_type: "Membership" + metadata_type: "OperationMetadata" + }; + } + + // Generates the manifest for deployment of the GKE connect agent. + rpc GenerateConnectManifest(GenerateConnectManifestRequest) returns (GenerateConnectManifestResponse) { + option (google.api.http) = { + get: "/v1alpha2/{name=projects/*/locations/*/memberships/*}:generateConnectManifest" + }; + } + + // Initializes the Hub in this project, which includes creating the default + // Hub Service Account and the Hub Workload Identity Pool. Initialization is + // optional, and happens automatically when the first Membership is created. + // + // InitializeHub should be called when the first Membership cannot be + // registered without these resources. A common example is granting the Hub + // Service Account access to another project, which requires the account to + // exist first. + rpc InitializeHub(InitializeHubRequest) returns (InitializeHubResponse) { + option (google.api.http) = { + post: "/v1alpha2/{project=projects/*/locations/global/memberships}:initializeHub" + body: "*" + }; + } +} + +// Membership contains information about a member cluster. +message Membership { + option (google.api.resource) = { + type: "gkehub.googleapis.com/Membership" + pattern: "projects/{project}/locations/{location}/memberships/{membership}" + }; + + // Specifies the infrastructure type of a Membership. Infrastructure type is + // used by Hub to control infrastructure-specific behavior, including pricing. + // + // Each GKE distribution (on-GCP, on-Prem, on-X,...) will set this field + // automatically, but Attached Clusters customers should specify a type + // during registration. + enum InfrastructureType { + // No type was specified. Some Hub functionality may require a type be + // specified, and will not support Memberships with this value. + INFRASTRUCTURE_TYPE_UNSPECIFIED = 0; + + // Private infrastructure that is owned or operated by customer. This + // includes GKE distributions such as GKE-OnPrem and GKE-OnBareMetal. + ON_PREM = 1; + + // Public cloud infrastructure. + MULTI_CLOUD = 2; + } + + // Output only. The full, unique name of this Membership resource in the format + // `projects/*/locations/*/memberships/{membership_id}`, set during creation. + // + // `membership_id` must be a valid RFC 1123 compliant DNS label: + // + // 1. At most 63 characters in length + // 2. It must consist of lower case alphanumeric characters or `-` + // 3. It must start and end with an alphanumeric character + // + // Which can be expressed as the regex: `[a-z0-9]([-a-z0-9]*[a-z0-9])?`, + // with a maximum length of 63 characters. + string name = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Optional. GCP labels for this membership. + map labels = 2 [(google.api.field_behavior) = OPTIONAL]; + + // Output only. Description of this membership, limited to 63 characters. + // Must match the regex: `[a-zA-Z0-9][a-zA-Z0-9_\-\.\ ]*` + // + // This field is present for legacy purposes. + string description = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Type of resource represented by this Membership + oneof type { + // Optional. Endpoint information to reach this member. + MembershipEndpoint endpoint = 4 [(google.api.field_behavior) = OPTIONAL]; + } + + // Output only. State of the Membership resource. + MembershipState state = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. When the Membership was created. + google.protobuf.Timestamp create_time = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. When the Membership was last updated. + google.protobuf.Timestamp update_time = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. When the Membership was deleted. + google.protobuf.Timestamp delete_time = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Optional. An externally-generated and managed ID for this Membership. This ID may + // be modified after creation, but this is not recommended. For GKE clusters, + // external_id is managed by the Hub API and updates will be ignored. + // + // The ID must match the regex: `[a-zA-Z0-9][a-zA-Z0-9_\-\.]*` + // + // If this Membership represents a Kubernetes cluster, this value should be + // set to the UID of the `kube-system` namespace object. + string external_id = 9 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. How to identify workloads from this Membership. + // See the documentation on Workload Identity for more details: + // https://cloud.google.com/kubernetes-engine/docs/how-to/workload-identity + Authority authority = 10 [(google.api.field_behavior) = OPTIONAL]; + + // Output only. For clusters using Connect, the timestamp of the most recent connection + // established with Google Cloud. This time is updated every several minutes, + // not continuously. For clusters that do not use GKE Connect, or that have + // never connected successfully, this field will be unset. + google.protobuf.Timestamp last_connection_time = 11 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Google-generated UUID for this resource. This is unique across all + // Membership resources. If a Membership resource is deleted and another + // resource with the same name is created, it gets a different unique_id. + string unique_id = 12 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Optional. The infrastructure type this Membership is running on. + InfrastructureType infrastructure_type = 13 [(google.api.field_behavior) = OPTIONAL]; +} + +// MembershipEndpoint contains information needed to contact a Kubernetes API, +// endpoint and any additional Kubernetes metadata. +message MembershipEndpoint { + // Optional. GKE-specific information. Only present if this Membership is a GKE cluster. + GkeCluster gke_cluster = 1 [(google.api.field_behavior) = OPTIONAL]; + + // Output only. Useful Kubernetes-specific metadata. + KubernetesMetadata kubernetes_metadata = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Optional. The in-cluster Kubernetes Resources that should be applied for a correctly + // registered cluster, in the steady state. These resources: + // + // * Ensure that the cluster is exclusively registered to one and only one + // Hub Membership. + // * Propagate Workload Pool Information available in the Membership + // Authority field. + // * Ensure proper initial configuration of default Hub Features. + KubernetesResource kubernetes_resource = 3 [(google.api.field_behavior) = OPTIONAL]; +} + +// KubernetesResource contains the YAML manifests and configuration for +// Membership Kubernetes resources in the cluster. After CreateMembership or +// UpdateMembership, these resources should be re-applied in the cluster. +message KubernetesResource { + // Input only. The YAML representation of the Membership CR. This field is ignored for GKE + // clusters where Hub can read the CR directly. + // + // Callers should provide the CR that is currently present in the cluster + // during Create or Update, or leave this field empty if none exists. The CR + // manifest is used to validate the cluster has not been registered with + // another Membership. + string membership_cr_manifest = 1 [(google.api.field_behavior) = INPUT_ONLY]; + + // Output only. Additional Kubernetes resources that need to be applied to the cluster + // after Membership creation, and after every update. + // + // This field is only populated in the Membership returned from a successful + // long-running operation from CreateMembership or UpdateMembership. It is not + // populated during normal GetMembership or ListMemberships requests. To get + // the resource manifest after the initial registration, the caller should + // make a UpdateMembership call with an empty field mask. + repeated ResourceManifest membership_resources = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The Kubernetes resources for installing the GKE Connect agent. + // + // This field is only populated in the Membership returned from a successful + // long-running operation from CreateMembership or UpdateMembership. It is not + // populated during normal GetMembership or ListMemberships requests. To get + // the resource manifest after the initial registration, the caller should + // make a UpdateMembership call with an empty field mask. + repeated ResourceManifest connect_resources = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Optional. Options for Kubernetes resource generation. + ResourceOptions resource_options = 5 [(google.api.field_behavior) = OPTIONAL]; +} + +// ResourceOptions represent options for Kubernetes resource generation. +message ResourceOptions { + // Optional. The Connect agent version to use for connect_resources. Defaults to the + // latest GKE Connect version. The version must be a currently supported + // version, obsolete versions will be rejected. + string connect_version = 1 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. Use `apiextensions/v1beta1` instead of `apiextensions/v1` for + // CustomResourceDefinition resources. + // This option should be set for clusters with Kubernetes apiserver versions + // <1.16. + bool v1beta1_crd = 2 [(google.api.field_behavior) = OPTIONAL]; +} + +// GkeCluster contains information specific to GKE clusters. +message GkeCluster { + // Immutable. Self-link of the GCP resource for the GKE cluster. For example: + // + // //container.googleapis.com/projects/my-project/locations/us-west1-a/clusters/my-cluster + // + // Zonal clusters are also supported. + string resource_link = 1 [(google.api.field_behavior) = IMMUTABLE]; +} + +// KubernetesMetadata provides informational metadata for Memberships +// that are created from Kubernetes Endpoints (currently, these are equivalent +// to Kubernetes clusters). +message KubernetesMetadata { + // Output only. Kubernetes API server version string as reported by '/version'. + string kubernetes_api_server_version = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Node providerID as reported by the first node in the list of nodes on + // the Kubernetes endpoint. On Kubernetes platforms that support zero-node + // clusters (like GKE-on-GCP), the node_count will be zero and the + // node_provider_id will be empty. + string node_provider_id = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Node count as reported by Kubernetes nodes resources. + int32 node_count = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. vCPU count as reported by Kubernetes nodes resources. + int32 vcpu_count = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The total memory capacity as reported by the sum of all Kubernetes nodes + // resources, defined in MB. + int32 memory_mb = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The time at which these details were last updated. This update_time is + // different from the Membership-level update_time since EndpointDetails are + // updated internally for API consumers. + google.protobuf.Timestamp update_time = 100 [(google.api.field_behavior) = OUTPUT_ONLY]; +} + +// Authority encodes how Google will recognize identities from this Membership. +// See the workload identity documentation for more details: +// https://cloud.google.com/kubernetes-engine/docs/how-to/workload-identity +message Authority { + // Optional. A JSON Web Token (JWT) issuer URI. `issuer` must start with `https://` and + // be a valid URL with length <2000 characters. + // + // If set, then Google will allow valid OIDC tokens from this issuer to + // authenticate within the workload_identity_pool. OIDC discovery will be + // performed on this URI to validate tokens from the issuer, unless + // `oidc_jwks` is set. + // + // Clearing `issuer` disables Workload Identity. `issuer` cannot be directly + // modified; it must be cleared (and Workload Identity disabled) before using + // a new issuer (and re-enabling Workload Identity). + string issuer = 1 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. OIDC verification keys for this Membership in JWKS format (RFC 7517). + // + // When this field is set, OIDC discovery will NOT be performed on `issuer`, + // and instead OIDC tokens will be validated using this field. + bytes oidc_jwks = 5 [(google.api.field_behavior) = OPTIONAL]; + + // Output only. An identity provider that reflects the `issuer` in the workload identity + // pool. + string identity_provider = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The name of the workload identity pool in which `issuer` will be + // recognized. + // + // There is a single Workload Identity Pool per Hub that is shared + // between all Memberships that belong to that Hub. For a Hub hosted in + // {PROJECT_ID}, the workload pool format is `{PROJECT_ID}.hub.id.goog`, + // although this is subject to change in newer versions of this API. + string workload_identity_pool = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; +} + +// MembershipState describes the state of a Membership resource. +message MembershipState { + // Code describes the state of a Membership resource. + enum Code { + // The code is not set. + CODE_UNSPECIFIED = 0; + + // The cluster is being registered. + CREATING = 1; + + // The cluster is registered. + READY = 2; + + // The cluster is being unregistered. + DELETING = 3; + + // The Membership is being updated. + UPDATING = 4; + + // The Membership is being updated by the Hub Service. + SERVICE_UPDATING = 5; + } + + // Output only. The current state of the Membership resource. + Code code = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; +} + +// Request message for `GkeHub.ListMemberships` method. +message ListMembershipsRequest { + // Required. The parent (project and location) where the Memberships will be listed. + // Specified in the format `projects/*/locations/*`. + string parent = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + child_type: "gkehub.googleapis.com/Membership" + } + ]; + + // Optional. When requesting a 'page' of resources, `page_size` specifies number of + // resources to return. If unspecified or set to 0, all resources will + // be returned. + int32 page_size = 2 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. Token returned by previous call to `ListMemberships` which + // specifies the position in the list from where to continue listing the + // resources. + string page_token = 3 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. Lists Memberships that match the filter expression, following the syntax + // outlined in https://google.aip.dev/160. + // + // Examples: + // + // - Name is `bar` in project `foo-proj` and location `global`: + // + // name = "projects/foo-proj/locations/global/membership/bar" + // + // - Memberships that have a label called `foo`: + // + // labels.foo:* + // + // - Memberships that have a label called `foo` whose value is `bar`: + // + // labels.foo = bar + // + // - Memberships in the CREATING state: + // + // state = CREATING + string filter = 4 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. One or more fields to compare and use to sort the output. + // See https://google.aip.dev/132#ordering. + string order_by = 5 [(google.api.field_behavior) = OPTIONAL]; +} + +// Response message for the `GkeHub.ListMemberships` method. +message ListMembershipsResponse { + // The list of matching Memberships. + repeated Membership resources = 1; + + // A token to request the next page of resources from the + // `ListMemberships` method. The value of an empty string means that + // there are no more resources to return. + string next_page_token = 2; + + // List of locations that could not be reached while fetching this list. + repeated string unreachable = 3; +} + +// Request message for `GkeHub.GetMembership` method. +message GetMembershipRequest { + // Required. The Membership resource name in the format + // `projects/*/locations/*/memberships/*`. + string name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "gkehub.googleapis.com/Membership" + } + ]; +} + +// Request message for the `GkeHub.CreateMembership` method. +message CreateMembershipRequest { + // Required. The parent (project and location) where the Memberships will be created. + // Specified in the format `projects/*/locations/*`. + string parent = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + child_type: "gkehub.googleapis.com/Membership" + } + ]; + + // Required. Client chosen ID for the membership. `membership_id` must be a valid RFC + // 1123 compliant DNS label: + // + // 1. At most 63 characters in length + // 2. It must consist of lower case alphanumeric characters or `-` + // 3. It must start and end with an alphanumeric character + // + // Which can be expressed as the regex: `[a-z0-9]([-a-z0-9]*[a-z0-9])?`, + // with a maximum length of 63 characters. + string membership_id = 2 [(google.api.field_behavior) = REQUIRED]; + + // Required. The membership to create. + Membership resource = 3 [(google.api.field_behavior) = REQUIRED]; +} + +// Request message for `GkeHub.DeleteMembership` method. +message DeleteMembershipRequest { + // Required. The Membership resource name in the format + // `projects/*/locations/*/memberships/*`. + string name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "gkehub.googleapis.com/Membership" + } + ]; +} + +// Request message for `GkeHub.UpdateMembership` method. +message UpdateMembershipRequest { + // Required. The Membership resource name in the format + // `projects/*/locations/*/memberships/*`. + string name = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. Mask of fields to update. + google.protobuf.FieldMask update_mask = 2 [(google.api.field_behavior) = REQUIRED]; + + // Required. Only fields specified in update_mask are updated. + // If you specify a field in the update_mask but don't specify its value here + // that field will be deleted. + // If you are updating a map field, set the value of a key to null or empty + // string to delete the key from the map. It's not possible to update a key's + // value to the empty string. + Membership resource = 3 [(google.api.field_behavior) = REQUIRED]; +} + +// Request message for `GkeHub.GenerateConnectManifest` +// method. +// . +message GenerateConnectManifestRequest { + // Required. The Membership resource name the Agent will associate with, in the format + // `projects/*/locations/*/memberships/*`. + string name = 1 [(google.api.field_behavior) = REQUIRED]; + + // Optional. Namespace for GKE Connect agent resources. Defaults to `gke-connect`. + // + // The Connect Agent is authorized automatically when run in the default + // namespace. Otherwise, explicit authorization must be granted with an + // additional IAM binding. + string namespace = 2 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. URI of a proxy if connectivity from the agent to gkeconnect.googleapis.com + // requires the use of a proxy. Format must be in the form + // `http(s)://{proxy_address}`, depending on the HTTP/HTTPS protocol + // supported by the proxy. This will direct the connect agent's outbound + // traffic through a HTTP(S) proxy. + bytes proxy = 3 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. The Connect agent version to use. Defaults to the most current version. + string version = 4 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. If true, generate the resources for upgrade only. Some resources + // generated only for installation (e.g. secrets) will be excluded. + bool is_upgrade = 5 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. The registry to fetch the connect agent image from. Defaults to + // gcr.io/gkeconnect. + string registry = 6 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. The image pull secret content for the registry, if not public. + bytes image_pull_secret_content = 7 [(google.api.field_behavior) = OPTIONAL]; +} + +// GenerateConnectManifestResponse contains manifest information for +// installing/upgrading a Connect agent. +message GenerateConnectManifestResponse { + // The ordered list of Kubernetes resources that need to be applied to the + // cluster for GKE Connect agent installation/upgrade. + repeated ConnectAgentResource manifest = 1; +} + +// ConnectAgentResource represents a Kubernetes resource manifest for Connect +// Agent deployment. +message ConnectAgentResource { + // Kubernetes type of the resource. + TypeMeta type = 1; + + // YAML manifest of the resource. + string manifest = 2; +} + +// ResourceManifest represents a single Kubernetes resource to be applied to +// the cluster. +message ResourceManifest { + // YAML manifest of the resource. + string manifest = 1; + + // Whether the resource provided in the manifest is `cluster_scoped`. + // If unset, the manifest is assumed to be namespace scoped. + // + // This field is used for REST mapping when applying the resource in a + // cluster. + bool cluster_scoped = 2; +} + +// TypeMeta is the type information needed for content unmarshalling of +// Kubernetes resources in the manifest. +message TypeMeta { + // Kind of the resource (e.g. Deployment). + string kind = 1; + + // APIVersion of the resource (e.g. v1). + string api_version = 2; +} + +// Request message for the InitializeHub method. +message InitializeHubRequest { + // Required. The Hub to initialize, in the format + // `projects/*/locations/*/memberships/*`. + string project = 1 [(google.api.field_behavior) = REQUIRED]; +} + +// Response message for the InitializeHub method. +message InitializeHubResponse { + // Name of the Hub default service identity, in the format: + // + // service-@gcp-sa-gkehub.iam.gserviceaccount.com + // + // The service account has `roles/gkehub.serviceAgent` in the Hub project. + string service_identity = 1; + + // The Workload Identity Pool used for Workload Identity-enabled clusters + // registered with this Hub. Format: `.hub.id.goog` + string workload_identity_pool = 2; +} + +// Represents the metadata of the long-running operation. +message OperationMetadata { + // Output only. The time the operation was created. + google.protobuf.Timestamp create_time = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The time the operation finished running. + google.protobuf.Timestamp end_time = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Server-defined resource path for the target of the operation. + string target = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Name of the verb executed by the operation. + string verb = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Human-readable status of the operation, if any. + string status_detail = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Identifies whether the user has requested cancellation + // of the operation. Operations that have successfully been cancelled + // have [Operation.error][] value with a [google.rpc.Status.code][google.rpc.Status.code] of 1, + // corresponding to `Code.CANCELLED`. + bool cancel_requested = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. API version used to start the operation. + string api_version = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; +} diff --git a/packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1beta/configmanagement/configmanagement.proto b/packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1beta/configmanagement/configmanagement.proto new file mode 100644 index 00000000000..103aa69dc85 --- /dev/null +++ b/packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1beta/configmanagement/configmanagement.proto @@ -0,0 +1,410 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.cloud.gkehub.configmanagement.v1beta; + +import "google/protobuf/timestamp.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Cloud.GkeHub.ConfigManagement.V1Beta"; +option go_package = "google.golang.org/genproto/googleapis/cloud/gkehub/configmanagement/v1beta;configmanagement"; +option java_multiple_files = true; +option java_outer_classname = "ConfigManagementProto"; +option java_package = "com.google.cloud.gkehub.configmanagement.v1beta"; +option php_namespace = "Google\\Cloud\\GkeHub\\ConfigManagement\\V1beta"; +option ruby_package = "Google::Cloud::GkeHub::ConfigManagement::V1beta"; + +// Enum representing the state of an ACM's deployment on a cluster +enum DeploymentState { + // Deployment's state cannot be determined + DEPLOYMENT_STATE_UNSPECIFIED = 0; + + // Deployment is not installed + NOT_INSTALLED = 1; + + // Deployment is installed + INSTALLED = 2; + + // Deployment was attempted to be installed, but has errors + ERROR = 3; +} + +// **Anthos Config Management**: State for a single cluster. +message MembershipState { + // The user-defined name for the cluster used by ClusterSelectors to group + // clusters together. This should match Membership's membership_name, + // unless the user installed ACM on the cluster manually prior to enabling + // the ACM hub feature. + // Unique within a Anthos Config Management installation. + string cluster_name = 1; + + // Membership configuration in the cluster. This represents the actual state + // in the cluster, while the MembershipSpec in the FeatureSpec represents + // the intended state + MembershipSpec membership_spec = 2; + + // Current install status of ACM's Operator + OperatorState operator_state = 3; + + // Current sync status + ConfigSyncState config_sync_state = 4; + + // PolicyController status + PolicyControllerState policy_controller_state = 5; + + // Binauthz status + BinauthzState binauthz_state = 6; + + // Hierarchy Controller status + HierarchyControllerState hierarchy_controller_state = 7; +} + +// **Anthos Config Management**: Configuration for a single cluster. +// Intended to parallel the ConfigManagement CR. +message MembershipSpec { + // Config Sync configuration for the cluster. + ConfigSync config_sync = 1; + + // Policy Controller configuration for the cluster. + PolicyController policy_controller = 2; + + // Binauthz conifguration for the cluster. + BinauthzConfig binauthz = 3; + + // Hierarchy Controller configuration for the cluster. + HierarchyControllerConfig hierarchy_controller = 4; + + // Version of ACM installed. + string version = 10; +} + +// Configuration for Config Sync +message ConfigSync { + // Git repo configuration for the cluster. + GitConfig git = 7; + + // Specifies whether the Config Sync Repo is + // in “hierarchical” or “unstructured” mode. + string source_format = 8; +} + +// Git repo configuration for a single cluster. +message GitConfig { + // The URL of the Git repository to use as the source of truth. + string sync_repo = 1; + + // The branch of the repository to sync from. Default: master. + string sync_branch = 2; + + // The path within the Git repository that represents the top level of the + // repo to sync. Default: the root directory of the repository. + string policy_dir = 3; + + // Period in seconds between consecutive syncs. Default: 15. + int64 sync_wait_secs = 4; + + // Git revision (tag or hash) to check out. Default HEAD. + string sync_rev = 5; + + // Type of secret configured for access to the Git repo. + string secret_type = 6; + + // URL for the HTTPS proxy to be used when communicating with the Git repo. + string https_proxy = 7; + + // The GCP Service Account Email used for auth when secret_type is + // gcpServiceAccount. + string gcp_service_account_email = 8; +} + +// Configuration for Policy Controller +message PolicyController { + // Enables the installation of Policy Controller. + // If false, the rest of PolicyController fields take no + // effect. + bool enabled = 1; + + // Installs the default template library along with Policy Controller. + optional bool template_library_installed = 2; + + // Sets the interval for Policy Controller Audit Scans (in seconds). + // When set to 0, this disables audit functionality altogether. + optional int64 audit_interval_seconds = 3; + + // The set of namespaces that are excluded from Policy Controller checks. + // Namespaces do not need to currently exist on the cluster. + repeated string exemptable_namespaces = 4; + + // Enables the ability to use Constraint Templates that reference to objects + // other than the object currently being evaluated. + bool referential_rules_enabled = 5; + + // Logs all denies and dry run failures. + bool log_denies_enabled = 6; +} + +// Configuration for Binauthz +message BinauthzConfig { + // Whether binauthz is enabled in this cluster. + bool enabled = 1; +} + +// Configuration for Hierarchy Controller +message HierarchyControllerConfig { + // Whether Hierarchy Controller is enabled in this cluster. + bool enabled = 1; + + // Whether pod tree labels are enabled in this cluster. + bool enable_pod_tree_labels = 2; + + // Whether hierarchical resource quota is enabled in this cluster. + bool enable_hierarchical_resource_quota = 3; +} + +// Deployment state for Hierarchy Controller +message HierarchyControllerDeploymentState { + // The deployment state for open source HNC (e.g. v0.7.0-hc.0) + DeploymentState hnc = 1; + + // The deployment state for Hierarchy Controller extension (e.g. v0.7.0-hc.1) + DeploymentState extension = 2; +} + +// Version for Hierarchy Controller +message HierarchyControllerVersion { + // Version for open source HNC + string hnc = 1; + + // Version for Hierarchy Controller extension + string extension = 2; +} + +// State for Hierarchy Controller +message HierarchyControllerState { + // The version for Hierarchy Controller + HierarchyControllerVersion version = 1; + + // The deployment state for Hierarchy Controller + HierarchyControllerDeploymentState state = 2; +} + +// State information for an ACM's Operator +message OperatorState { + // The semenatic version number of the operator + string version = 1; + + // The state of the Operator's deployment + DeploymentState deployment_state = 2; + + // Install errors. + repeated InstallError errors = 3; +} + +// Errors pertaining to the installation of ACM +message InstallError { + // A string representing the user facing error message + string error_message = 1; +} + +// State information for ConfigSync +message ConfigSyncState { + // The version of ConfigSync deployed + ConfigSyncVersion version = 1; + + // Information about the deployment of ConfigSync, including the version + // of the various Pods deployed + ConfigSyncDeploymentState deployment_state = 2; + + // The state of ConfigSync's process to sync configs to a cluster + SyncState sync_state = 3; +} + +// Specific versioning information pertaining to ConfigSync's Pods +message ConfigSyncVersion { + // Version of the deployed importer pod + string importer = 1; + + // Version of the deployed syncer pod + string syncer = 2; + + // Version of the deployed git-sync pod + string git_sync = 3; + + // Version of the deployed monitor pod + string monitor = 4; + + // Version of the deployed reconciler-manager pod + string reconciler_manager = 5; + + // Version of the deployed reconciler container in root-reconciler pod + string root_reconciler = 6; +} + +// The state of ConfigSync's deployment on a cluster +message ConfigSyncDeploymentState { + // Deployment state of the importer pod + DeploymentState importer = 1; + + // Deployment state of the syncer pod + DeploymentState syncer = 2; + + // Deployment state of the git-sync pod + DeploymentState git_sync = 3; + + // Deployment state of the monitor pod + DeploymentState monitor = 4; + + // Deployment state of reconciler-manager pod + DeploymentState reconciler_manager = 5; + + // Deployment state of root-reconciler + DeploymentState root_reconciler = 6; +} + +// State indicating an ACM's progress syncing configurations to a cluster +message SyncState { + // An enum representing an ACM's status syncing configs to a cluster + enum SyncCode { + // ACM cannot determine a sync code + SYNC_CODE_UNSPECIFIED = 0; + + // ACM successfully synced the git Repo with the cluster + SYNCED = 1; + + // ACM is in the progress of syncing a new change + PENDING = 2; + + // Indicates an error configuring ACM, and user action is required + ERROR = 3; + + // ACM has been installed (operator manifest deployed), + // but not configured. + NOT_CONFIGURED = 4; + + // ACM has not been installed (no operator pod found) + NOT_INSTALLED = 5; + + // Error authorizing with the cluster + UNAUTHORIZED = 6; + + // Cluster could not be reached + UNREACHABLE = 7; + } + + // Token indicating the state of the repo. + string source_token = 1; + + // Token indicating the state of the importer. + string import_token = 2; + + // Token indicating the state of the syncer. + string sync_token = 3; + + // Deprecated: use last_sync_time instead. + // Timestamp of when ACM last successfully synced the repo + // The time format is specified in https://golang.org/pkg/time/#Time.String + string last_sync = 4 [deprecated = true]; + + // Timestamp type of when ACM last successfully synced the repo + google.protobuf.Timestamp last_sync_time = 7; + + // Sync status code + SyncCode code = 5; + + // A list of errors resulting from problematic configs. + // This list will be truncated after 100 errors, although it is + // unlikely for that many errors to simultaneously exist. + repeated SyncError errors = 6; +} + +// An ACM created error representing a problem syncing configurations +message SyncError { + // An ACM defined error code + string code = 1; + + // A description of the error + string error_message = 2; + + // A list of config(s) associated with the error, if any + repeated ErrorResource error_resources = 3; +} + +// Model for a config file in the git repo with an associated Sync error +message ErrorResource { + // Path in the git repo of the erroneous config + string source_path = 1; + + // Metadata name of the resource that is causing an error + string resource_name = 2; + + // Namespace of the resource that is causing an error + string resource_namespace = 3; + + // Group/version/kind of the resource that is causing an error + GroupVersionKind resource_gvk = 4; +} + +// A Kubernetes object's GVK +message GroupVersionKind { + // Kubernetes Group + string group = 1; + + // Kubernetes Version + string version = 2; + + // Kubernetes Kind + string kind = 3; +} + +// State for PolicyControllerState. +message PolicyControllerState { + // The version of Gatekeeper Policy Controller deployed. + PolicyControllerVersion version = 1; + + // The state about the policy controller installation. + GatekeeperDeploymentState deployment_state = 2; +} + +// The build version of Gatekeeper Policy Controller is using. +message PolicyControllerVersion { + // The gatekeeper image tag that is composed of ACM version, git tag, build + // number. + string version = 1; +} + +// State for Binauthz +message BinauthzState { + // The state of the binauthz webhook. + DeploymentState webhook = 1; + + // The version of binauthz that is installed. + BinauthzVersion version = 2; +} + +// The version of binauthz. +message BinauthzVersion { + // The version of the binauthz webhook. + string webhook_version = 1; +} + +// State of Policy Controller installation. +message GatekeeperDeploymentState { + // Status of gatekeeper-controller-manager pod. + DeploymentState gatekeeper_controller_manager_state = 1; + + // Status of gatekeeper-audit deployment. + DeploymentState gatekeeper_audit = 2; +} diff --git a/packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1beta/feature.proto b/packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1beta/feature.proto new file mode 100644 index 00000000000..82c032c8943 --- /dev/null +++ b/packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1beta/feature.proto @@ -0,0 +1,203 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.cloud.gkehub.v1beta; + +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/cloud/gkehub/v1beta/configmanagement/configmanagement.proto"; +import "google/cloud/gkehub/v1beta/metering/metering.proto"; +import "google/cloud/gkehub/v1beta/multiclusteringress/multiclusteringress.proto"; +import "google/protobuf/timestamp.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Cloud.GkeHub.V1Beta"; +option go_package = "google.golang.org/genproto/googleapis/cloud/gkehub/v1beta;gkehub"; +option java_multiple_files = true; +option java_outer_classname = "FeatureProto"; +option java_package = "com.google.cloud.gkehub.v1beta"; +option php_namespace = "Google\\Cloud\\GkeHub\\V1beta"; +option ruby_package = "Google::Cloud::GkeHub::V1beta"; + +// Feature represents the settings and status of any Hub Feature. +message Feature { + option (google.api.resource) = { + type: "gkehub.googleapis.com/Feature" + pattern: "projects/{project}/locations/{location}/features/{feature}" + }; + + // Output only. The full, unique name of this Feature resource in the format + // `projects/*/locations/*/features/*`. + string name = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // GCP labels for this Feature. + map labels = 2; + + // Output only. State of the Feature resource itself. + FeatureResourceState resource_state = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Optional. Hub-wide Feature configuration. If this Feature does not support any + // Hub-wide configuration, this field may be unused. + CommonFeatureSpec spec = 4 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. Membership-specific configuration for this Feature. If this Feature does + // not support any per-Membership configuration, this field may be unused. + // + // The keys indicate which Membership the configuration is for, in the form: + // + // projects/{p}/locations/{l}/memberships/{m} + // + // Where {p} is the project, {l} is a valid location and {m} is a valid + // Membership in this project at that location. {p} WILL match the Feature's + // project. + // + // {p} will always be returned as the project number, but the project ID is + // also accepted during input. If the same Membership is specified in the map + // twice (using the project ID form, and the project number form), exactly + // ONE of the entries will be saved, with no guarantees as to which. For this + // reason, it is recommended the same format be used for all entries when + // mutating a Feature. + map membership_specs = 5 [(google.api.field_behavior) = OPTIONAL]; + + // Output only. The Hub-wide Feature state. + CommonFeatureState state = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Membership-specific Feature status. If this Feature does + // report any per-Membership status, this field may be unused. + // + // The keys indicate which Membership the state is for, in the form: + // + // projects/{p}/locations/{l}/memberships/{m} + // + // Where {p} is the project number, {l} is a valid location and {m} is a valid + // Membership in this project at that location. {p} MUST match the Feature's + // project number. + map membership_states = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. When the Feature resource was created. + google.protobuf.Timestamp create_time = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. When the Feature resource was last updated. + google.protobuf.Timestamp update_time = 9 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. When the Feature resource was deleted. + google.protobuf.Timestamp delete_time = 10 [(google.api.field_behavior) = OUTPUT_ONLY]; +} + +// FeatureResourceState describes the state of a Feature *resource* in the +// GkeHub API. See `FeatureState` for the "running state" of the Feature in the +// Hub and across Memberships. +message FeatureResourceState { + // State describes the lifecycle status of a Feature. + enum State { + // State is unknown or not set. + STATE_UNSPECIFIED = 0; + + // The Feature is being enabled, and the Feature resource is being created. + // Once complete, the corresponding Feature will be enabled in this Hub. + ENABLING = 1; + + // The Feature is enabled in this Hub, and the Feature resource is fully + // available. + ACTIVE = 2; + + // The Feature is being disabled in this Hub, and the Feature resource + // is being deleted. + DISABLING = 3; + + // The Feature resource is being updated. + UPDATING = 4; + + // The Feature resource is being updated by the Hub Service. + SERVICE_UPDATING = 5; + } + + // The current state of the Feature resource in the Hub API. + State state = 1; +} + +// FeatureState describes the high-level state of a Feature. It may be used to +// describe a Feature's state at the environ-level, or per-membershop, depending +// on the context. +message FeatureState { + // Code represents a machine-readable, high-level status of the Feature. + enum Code { + // Unknown or not set. + CODE_UNSPECIFIED = 0; + + // The Feature is operating normally. + OK = 1; + + // The Feature has encountered an issue, and is operating in a degraded + // state. The Feature may need intervention to return to normal operation. + // See the description and any associated Feature-specific details for more + // information. + WARNING = 2; + + // The Feature is not operating or is in a severely degraded state. + // The Feature may need intervention to return to normal operation. + // See the description and any associated Feature-specific details for more + // information. + ERROR = 3; + } + + // The high-level, machine-readable status of this Feature. + Code code = 1; + + // A human-readable description of the current status. + string description = 2; + + // The time this status and any related Feature-specific details were updated. + google.protobuf.Timestamp update_time = 3; +} + +// CommonFeatureSpec contains Hub-wide configuration information +message CommonFeatureSpec { + oneof feature_spec { + // Multicluster Ingress-specific spec. + google.cloud.gkehub.multiclusteringress.v1beta.FeatureSpec multiclusteringress = 102; + } +} + +// CommonFeatureState contains Hub-wide Feature status information. +message CommonFeatureState { + // Output only. The "running state" of the Feature in this Hub. + FeatureState state = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; +} + +// MembershipFeatureSpec contains configuration information for a single +// Membership. +message MembershipFeatureSpec { + oneof feature_spec { + // Config Management-specific spec. + google.cloud.gkehub.configmanagement.v1beta.MembershipSpec configmanagement = 106; + } +} + +// MembershipFeatureState contains Feature status information for a single +// Membership. +message MembershipFeatureState { + oneof feature_state { + // Metering-specific spec. + google.cloud.gkehub.metering.v1beta.MembershipState metering = 104; + + // Config Management-specific state. + google.cloud.gkehub.configmanagement.v1beta.MembershipState configmanagement = 106; + } + + // The high-level state of this Feature for a single membership. + FeatureState state = 1; +} diff --git a/packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1beta/metering/metering.proto b/packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1beta/metering/metering.proto new file mode 100644 index 00000000000..948be8f1b8a --- /dev/null +++ b/packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1beta/metering/metering.proto @@ -0,0 +1,39 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.cloud.gkehub.metering.v1beta; + +import "google/protobuf/timestamp.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Cloud.GkeHub.Metering.V1Beta"; +option go_package = "google.golang.org/genproto/googleapis/cloud/gkehub/metering/v1beta;metering"; +option java_multiple_files = true; +option java_outer_classname = "MeteringProto"; +option java_package = "com.google.cloud.gkehub.metering.v1beta"; +option php_namespace = "Google\\Cloud\\GkeHub\\Metering\\V1beta"; +option ruby_package = "Google::Cloud::GkeHub::Metering::V1beta"; + +// **Metering**: Per-Membership Feature State. +message MembershipState { + // The time stamp of the most recent measurement of the number of vCPUs + // in the cluster. + google.protobuf.Timestamp last_measurement_time = 1; + + // The vCPUs capacity in the cluster according to the most recent + // measurement (1/1000 precision). + float precise_last_measured_cluster_vcpu_capacity = 3; +} diff --git a/packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1beta/multiclusteringress/multiclusteringress.proto b/packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1beta/multiclusteringress/multiclusteringress.proto new file mode 100644 index 00000000000..6391de2e177 --- /dev/null +++ b/packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1beta/multiclusteringress/multiclusteringress.proto @@ -0,0 +1,50 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.cloud.gkehub.multiclusteringress.v1beta; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Cloud.GkeHub.MultiClusterIngress.V1Beta"; +option go_package = "google.golang.org/genproto/googleapis/cloud/gkehub/multiclusteringress/v1beta;multiclusteringress"; +option java_multiple_files = true; +option java_outer_classname = "MultiClusterIngressProto"; +option java_package = "com.google.cloud.gkehub.multiclusteringress.v1beta"; +option php_namespace = "Google\\Cloud\\GkeHub\\MultiClusterIngress\\V1beta"; +option ruby_package = "Google::Cloud::GkeHub::MultiClusterIngress::V1beta"; + +// Billing identifies which billing structure the customer is using. +enum Billing { + // Unknown + BILLING_UNSPECIFIED = 0; + + // User pays a fee per-endpoint. + PAY_AS_YOU_GO = 1; + + // User is paying for Anthos as a whole. + ANTHOS_LICENSE = 2; +} + +// **Multi-cluster Ingress**: The configuration for the MultiClusterIngress +// feature. +message FeatureSpec { + // Fully-qualified Membership name which hosts the MultiClusterIngress CRD. + // Example: `projects/foo-proj/locations/global/memberships/bar` + string config_membership = 1; + + // Customer's billing structure + Billing billing = 2; +} diff --git a/packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1beta/service.proto b/packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1beta/service.proto new file mode 100644 index 00000000000..5d28318d16c --- /dev/null +++ b/packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1beta/service.proto @@ -0,0 +1,281 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.cloud.gkehub.v1beta; + +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/cloud/gkehub/v1beta/feature.proto"; +import "google/longrunning/operations.proto"; +import "google/protobuf/field_mask.proto"; +import "google/protobuf/timestamp.proto"; + +option csharp_namespace = "Google.Cloud.GkeHub.V1Beta"; +option go_package = "google.golang.org/genproto/googleapis/cloud/gkehub/v1beta;gkehub"; +option java_multiple_files = true; +option java_outer_classname = "ServiceProto"; +option java_package = "com.google.cloud.gkehub.v1beta"; +option php_namespace = "Google\\Cloud\\GkeHub\\V1beta"; +option ruby_package = "Google::Cloud::GkeHub::V1beta"; + +// The GKE Hub service handles the registration of many Kubernetes clusters to +// Google Cloud, and the management of multi-cluster features over those +// clusters. +// +// The GKE Hub service operates on the following resources: +// +// * [Membership][google.cloud.gkehub.v1beta.Membership] +// * [Feature][google.cloud.gkehub.v1beta.Feature] +// +// GKE Hub is currently only available in the global region. +// +// **Membership management may be non-trivial:** it is recommended to use one +// of the Google-provided client libraries or tools where possible when working +// with Membership resources. +service GkeHub { + option (google.api.default_host) = "gkehub.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/cloud-platform"; + + // Lists Features in a given project and location. + rpc ListFeatures(ListFeaturesRequest) returns (ListFeaturesResponse) { + option (google.api.http) = { + get: "/v1beta/{parent=projects/*/locations/*}/features" + }; + option (google.api.method_signature) = "parent"; + } + + // Gets details of a single Feature. + rpc GetFeature(GetFeatureRequest) returns (Feature) { + option (google.api.http) = { + get: "/v1beta/{name=projects/*/locations/*/features/*}" + }; + option (google.api.method_signature) = "name"; + } + + // Adds a new Feature. + rpc CreateFeature(CreateFeatureRequest) returns (google.longrunning.Operation) { + option (google.api.http) = { + post: "/v1beta/{parent=projects/*/locations/*}/features" + body: "resource" + }; + option (google.api.method_signature) = "parent,resource,feature_id"; + option (google.longrunning.operation_info) = { + response_type: "Feature" + metadata_type: "OperationMetadata" + }; + } + + // Removes a Feature. + rpc DeleteFeature(DeleteFeatureRequest) returns (google.longrunning.Operation) { + option (google.api.http) = { + delete: "/v1beta/{name=projects/*/locations/*/features/*}" + }; + option (google.api.method_signature) = "name"; + option (google.longrunning.operation_info) = { + response_type: "google.protobuf.Empty" + metadata_type: "OperationMetadata" + }; + } + + // Updates an existing Feature. + rpc UpdateFeature(UpdateFeatureRequest) returns (google.longrunning.Operation) { + option (google.api.http) = { + patch: "/v1beta/{name=projects/*/locations/*/features/*}" + body: "resource" + }; + option (google.api.method_signature) = "name,resource,update_mask"; + option (google.longrunning.operation_info) = { + response_type: "Feature" + metadata_type: "OperationMetadata" + }; + } +} + +// Request message for `GkeHub.ListFeatures` method. +message ListFeaturesRequest { + // The parent (project and location) where the Features will be listed. + // Specified in the format `projects/*/locations/*`. + string parent = 1; + + // When requesting a 'page' of resources, `page_size` specifies number of + // resources to return. If unspecified or set to 0, all resources will + // be returned. + int32 page_size = 2; + + // Token returned by previous call to `ListFeatures` which + // specifies the position in the list from where to continue listing the + // resources. + string page_token = 3; + + // Lists Features that match the filter expression, following the syntax + // outlined in https://google.aip.dev/160. + // + // Examples: + // + // - Feature with the name "servicemesh" in project "foo-proj": + // + // name = "projects/foo-proj/locations/global/features/servicemesh" + // + // - Features that have a label called `foo`: + // + // labels.foo:* + // + // - Features that have a label called `foo` whose value is `bar`: + // + // labels.foo = bar + string filter = 4; + + // One or more fields to compare and use to sort the output. + // See https://google.aip.dev/132#ordering. + string order_by = 5; +} + +// Response message for the `GkeHub.ListFeatures` method. +message ListFeaturesResponse { + // The list of matching Features + repeated Feature resources = 1; + + // A token to request the next page of resources from the + // `ListFeatures` method. The value of an empty string means + // that there are no more resources to return. + string next_page_token = 2; +} + +// Request message for `GkeHub.GetFeature` method. +message GetFeatureRequest { + // The Feature resource name in the format + // `projects/*/locations/*/features/*` + string name = 1; +} + +// Request message for the `GkeHub.CreateFeature` method. +message CreateFeatureRequest { + // The parent (project and location) where the Feature will be created. + // Specified in the format `projects/*/locations/*`. + string parent = 1; + + // The ID of the feature to create. + string feature_id = 2; + + // The Feature resource to create. + Feature resource = 3; + + // Optional. A request ID to identify requests. Specify a unique request ID + // so that if you must retry your request, the server will know to ignore + // the request if it has already been completed. The server will guarantee + // that for at least 60 minutes after the first request. + // + // For example, consider a situation where you make an initial request and + // the request times out. If you make the request again with the same request + // ID, the server can check if original operation with the same request ID + // was received, and if so, will ignore the second request. This prevents + // clients from accidentally creating duplicate commitments. + // + // The request ID must be a valid UUID with the exception that zero UUID is + // not supported (00000000-0000-0000-0000-000000000000). + string request_id = 4 [(google.api.field_behavior) = OPTIONAL]; +} + +// Request message for `GkeHub.DeleteFeature` method. +message DeleteFeatureRequest { + // The Feature resource name in the format + // `projects/*/locations/*/features/*`. + string name = 1; + + // If set to true, the delete will ignore any outstanding resources for + // this Feature (that is, `FeatureState.has_resources` is set to true). These + // resources will NOT be cleaned up or modified in any way. + bool force = 2; + + // Optional. A request ID to identify requests. Specify a unique request ID + // so that if you must retry your request, the server will know to ignore + // the request if it has already been completed. The server will guarantee + // that for at least 60 minutes after the first request. + // + // For example, consider a situation where you make an initial request and + // the request times out. If you make the request again with the same request + // ID, the server can check if original operation with the same request ID + // was received, and if so, will ignore the second request. This prevents + // clients from accidentally creating duplicate commitments. + // + // The request ID must be a valid UUID with the exception that zero UUID is + // not supported (00000000-0000-0000-0000-000000000000). + string request_id = 3 [(google.api.field_behavior) = OPTIONAL]; +} + +// Request message for `GkeHub.UpdateFeature` method. +message UpdateFeatureRequest { + // The Feature resource name in the format + // `projects/*/locations/*/features/*`. + string name = 1; + + // Mask of fields to update. + google.protobuf.FieldMask update_mask = 2; + + // Only fields specified in update_mask are updated. + // If you specify a field in the update_mask but don't specify its value here + // that field will be deleted. + // If you are updating a map field, set the value of a key to null or empty + // string to delete the key from the map. It's not possible to update a key's + // value to the empty string. + // If you specify the update_mask to be a special path "*", fully replaces all + // user-modifiable fields to match `resource`. + Feature resource = 3; + + // Optional. A request ID to identify requests. Specify a unique request ID + // so that if you must retry your request, the server will know to ignore + // the request if it has already been completed. The server will guarantee + // that for at least 60 minutes after the first request. + // + // For example, consider a situation where you make an initial request and + // the request times out. If you make the request again with the same request + // ID, the server can check if original operation with the same request ID + // was received, and if so, will ignore the second request. This prevents + // clients from accidentally creating duplicate commitments. + // + // The request ID must be a valid UUID with the exception that zero UUID is + // not supported (00000000-0000-0000-0000-000000000000). + string request_id = 4 [(google.api.field_behavior) = OPTIONAL]; +} + +// Represents the metadata of the long-running operation. +message OperationMetadata { + // Output only. The time the operation was created. + google.protobuf.Timestamp create_time = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The time the operation finished running. + google.protobuf.Timestamp end_time = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Server-defined resource path for the target of the operation. + string target = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Name of the verb executed by the operation. + string verb = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Human-readable status of the operation, if any. + string status_detail = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Identifies whether the user has requested cancellation + // of the operation. Operations that have successfully been cancelled + // have [Operation.error][] value with a [google.rpc.Status.code][google.rpc.Status.code] of 1, + // corresponding to `Code.CANCELLED`. + bool cancel_requested = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. API version used to start the operation. + string api_version = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; +} diff --git a/packages/google-cloud-gkehub/protos/protos.d.ts b/packages/google-cloud-gkehub/protos/protos.d.ts index ba0bcf8f6e0..e4862647b1e 100644 --- a/packages/google-cloud-gkehub/protos/protos.d.ts +++ b/packages/google-cloud-gkehub/protos/protos.d.ts @@ -17,7021 +17,24989 @@ import {protobuf as $protobuf} from "google-gax"; /** Namespace google. */ export namespace google { - /** Namespace cloud. */ - namespace cloud { - - /** Namespace gkehub. */ - namespace gkehub { + /** Namespace protobuf. */ + namespace protobuf { - /** Namespace v1beta1. */ - namespace v1beta1 { + /** Properties of a Timestamp. */ + interface ITimestamp { - /** Represents a GkeHubMembershipService */ - class GkeHubMembershipService extends $protobuf.rpc.Service { + /** Timestamp seconds */ + seconds?: (number|Long|string|null); - /** - * Constructs a new GkeHubMembershipService 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); + /** Timestamp nanos */ + nanos?: (number|null); + } - /** - * Creates new GkeHubMembershipService 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): GkeHubMembershipService; + /** Represents a Timestamp. */ + class Timestamp implements ITimestamp { - /** - * Calls ListMemberships. - * @param request ListMembershipsRequest message or plain object - * @param callback Node-style callback called with the error, if any, and ListMembershipsResponse - */ - public listMemberships(request: google.cloud.gkehub.v1beta1.IListMembershipsRequest, callback: google.cloud.gkehub.v1beta1.GkeHubMembershipService.ListMembershipsCallback): void; + /** + * Constructs a new Timestamp. + * @param [properties] Properties to set + */ + constructor(properties?: google.protobuf.ITimestamp); - /** - * Calls ListMemberships. - * @param request ListMembershipsRequest message or plain object - * @returns Promise - */ - public listMemberships(request: google.cloud.gkehub.v1beta1.IListMembershipsRequest): Promise; + /** Timestamp seconds. */ + public seconds: (number|Long|string); - /** - * Calls GetMembership. - * @param request GetMembershipRequest message or plain object - * @param callback Node-style callback called with the error, if any, and Membership - */ - public getMembership(request: google.cloud.gkehub.v1beta1.IGetMembershipRequest, callback: google.cloud.gkehub.v1beta1.GkeHubMembershipService.GetMembershipCallback): void; + /** Timestamp nanos. */ + public nanos: number; - /** - * Calls GetMembership. - * @param request GetMembershipRequest message or plain object - * @returns Promise - */ - public getMembership(request: google.cloud.gkehub.v1beta1.IGetMembershipRequest): Promise; + /** + * 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; - /** - * Calls CreateMembership. - * @param request CreateMembershipRequest message or plain object - * @param callback Node-style callback called with the error, if any, and Operation - */ - public createMembership(request: google.cloud.gkehub.v1beta1.ICreateMembershipRequest, callback: google.cloud.gkehub.v1beta1.GkeHubMembershipService.CreateMembershipCallback): void; + /** + * 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; - /** - * Calls CreateMembership. - * @param request CreateMembershipRequest message or plain object - * @returns Promise - */ - public createMembership(request: google.cloud.gkehub.v1beta1.ICreateMembershipRequest): Promise; + /** + * 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; - /** - * Calls DeleteMembership. - * @param request DeleteMembershipRequest message or plain object - * @param callback Node-style callback called with the error, if any, and Operation - */ - public deleteMembership(request: google.cloud.gkehub.v1beta1.IDeleteMembershipRequest, callback: google.cloud.gkehub.v1beta1.GkeHubMembershipService.DeleteMembershipCallback): void; + /** + * 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; - /** - * Calls DeleteMembership. - * @param request DeleteMembershipRequest message or plain object - * @returns Promise - */ - public deleteMembership(request: google.cloud.gkehub.v1beta1.IDeleteMembershipRequest): Promise; + /** + * 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; - /** - * Calls UpdateMembership. - * @param request UpdateMembershipRequest message or plain object - * @param callback Node-style callback called with the error, if any, and Operation - */ - public updateMembership(request: google.cloud.gkehub.v1beta1.IUpdateMembershipRequest, callback: google.cloud.gkehub.v1beta1.GkeHubMembershipService.UpdateMembershipCallback): void; + /** + * 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); - /** - * Calls UpdateMembership. - * @param request UpdateMembershipRequest message or plain object - * @returns Promise - */ - public updateMembership(request: google.cloud.gkehub.v1beta1.IUpdateMembershipRequest): Promise; + /** + * 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; - /** - * Calls GenerateConnectManifest. - * @param request GenerateConnectManifestRequest message or plain object - * @param callback Node-style callback called with the error, if any, and GenerateConnectManifestResponse - */ - public generateConnectManifest(request: google.cloud.gkehub.v1beta1.IGenerateConnectManifestRequest, callback: google.cloud.gkehub.v1beta1.GkeHubMembershipService.GenerateConnectManifestCallback): void; + /** + * 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 }; - /** - * Calls GenerateConnectManifest. - * @param request GenerateConnectManifestRequest message or plain object - * @returns Promise - */ - public generateConnectManifest(request: google.cloud.gkehub.v1beta1.IGenerateConnectManifestRequest): Promise; + /** + * Converts this Timestamp to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } - /** - * Calls ValidateExclusivity. - * @param request ValidateExclusivityRequest message or plain object - * @param callback Node-style callback called with the error, if any, and ValidateExclusivityResponse - */ - public validateExclusivity(request: google.cloud.gkehub.v1beta1.IValidateExclusivityRequest, callback: google.cloud.gkehub.v1beta1.GkeHubMembershipService.ValidateExclusivityCallback): void; + /** Properties of a FileDescriptorSet. */ + interface IFileDescriptorSet { - /** - * Calls ValidateExclusivity. - * @param request ValidateExclusivityRequest message or plain object - * @returns Promise - */ - public validateExclusivity(request: google.cloud.gkehub.v1beta1.IValidateExclusivityRequest): Promise; + /** FileDescriptorSet file */ + file?: (google.protobuf.IFileDescriptorProto[]|null); + } - /** - * Calls GenerateExclusivityManifest. - * @param request GenerateExclusivityManifestRequest message or plain object - * @param callback Node-style callback called with the error, if any, and GenerateExclusivityManifestResponse - */ - public generateExclusivityManifest(request: google.cloud.gkehub.v1beta1.IGenerateExclusivityManifestRequest, callback: google.cloud.gkehub.v1beta1.GkeHubMembershipService.GenerateExclusivityManifestCallback): void; + /** Represents a FileDescriptorSet. */ + class FileDescriptorSet implements IFileDescriptorSet { - /** - * Calls GenerateExclusivityManifest. - * @param request GenerateExclusivityManifestRequest message or plain object - * @returns Promise - */ - public generateExclusivityManifest(request: google.cloud.gkehub.v1beta1.IGenerateExclusivityManifestRequest): Promise; - } + /** + * Constructs a new FileDescriptorSet. + * @param [properties] Properties to set + */ + constructor(properties?: google.protobuf.IFileDescriptorSet); - namespace GkeHubMembershipService { + /** FileDescriptorSet file. */ + public file: google.protobuf.IFileDescriptorProto[]; - /** - * Callback as used by {@link google.cloud.gkehub.v1beta1.GkeHubMembershipService#listMemberships}. - * @param error Error, if any - * @param [response] ListMembershipsResponse - */ - type ListMembershipsCallback = (error: (Error|null), response?: google.cloud.gkehub.v1beta1.ListMembershipsResponse) => void; + /** + * 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; - /** - * Callback as used by {@link google.cloud.gkehub.v1beta1.GkeHubMembershipService#getMembership}. - * @param error Error, if any - * @param [response] Membership - */ - type GetMembershipCallback = (error: (Error|null), response?: google.cloud.gkehub.v1beta1.Membership) => void; + /** + * 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; - /** - * Callback as used by {@link google.cloud.gkehub.v1beta1.GkeHubMembershipService#createMembership}. - * @param error Error, if any - * @param [response] Operation - */ - type CreateMembershipCallback = (error: (Error|null), response?: google.longrunning.Operation) => void; + /** + * 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; - /** - * Callback as used by {@link google.cloud.gkehub.v1beta1.GkeHubMembershipService#deleteMembership}. - * @param error Error, if any - * @param [response] Operation - */ - type DeleteMembershipCallback = (error: (Error|null), response?: google.longrunning.Operation) => void; + /** + * 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; - /** - * Callback as used by {@link google.cloud.gkehub.v1beta1.GkeHubMembershipService#updateMembership}. - * @param error Error, if any - * @param [response] Operation - */ - type UpdateMembershipCallback = (error: (Error|null), response?: google.longrunning.Operation) => void; + /** + * 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; - /** - * Callback as used by {@link google.cloud.gkehub.v1beta1.GkeHubMembershipService#generateConnectManifest}. - * @param error Error, if any - * @param [response] GenerateConnectManifestResponse - */ - type GenerateConnectManifestCallback = (error: (Error|null), response?: google.cloud.gkehub.v1beta1.GenerateConnectManifestResponse) => void; + /** + * 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); - /** - * Callback as used by {@link google.cloud.gkehub.v1beta1.GkeHubMembershipService#validateExclusivity}. - * @param error Error, if any - * @param [response] ValidateExclusivityResponse - */ - type ValidateExclusivityCallback = (error: (Error|null), response?: google.cloud.gkehub.v1beta1.ValidateExclusivityResponse) => void; + /** + * 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; - /** - * Callback as used by {@link google.cloud.gkehub.v1beta1.GkeHubMembershipService#generateExclusivityManifest}. - * @param error Error, if any - * @param [response] GenerateExclusivityManifestResponse - */ - type GenerateExclusivityManifestCallback = (error: (Error|null), response?: google.cloud.gkehub.v1beta1.GenerateExclusivityManifestResponse) => void; - } + /** + * 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 }; - /** Properties of a Membership. */ - interface IMembership { + /** + * Converts this FileDescriptorSet to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } - /** Membership name */ - name?: (string|null); + /** Properties of a FileDescriptorProto. */ + interface IFileDescriptorProto { - /** Membership labels */ - labels?: ({ [k: string]: string }|null); + /** FileDescriptorProto name */ + name?: (string|null); - /** Membership description */ - description?: (string|null); + /** FileDescriptorProto package */ + "package"?: (string|null); - /** Membership endpoint */ - endpoint?: (google.cloud.gkehub.v1beta1.IMembershipEndpoint|null); + /** FileDescriptorProto dependency */ + dependency?: (string[]|null); - /** Membership state */ - state?: (google.cloud.gkehub.v1beta1.IMembershipState|null); + /** FileDescriptorProto publicDependency */ + publicDependency?: (number[]|null); - /** Membership authority */ - authority?: (google.cloud.gkehub.v1beta1.IAuthority|null); + /** FileDescriptorProto weakDependency */ + weakDependency?: (number[]|null); - /** Membership createTime */ - createTime?: (google.protobuf.ITimestamp|null); + /** FileDescriptorProto messageType */ + messageType?: (google.protobuf.IDescriptorProto[]|null); - /** Membership updateTime */ - updateTime?: (google.protobuf.ITimestamp|null); + /** FileDescriptorProto enumType */ + enumType?: (google.protobuf.IEnumDescriptorProto[]|null); - /** Membership deleteTime */ - deleteTime?: (google.protobuf.ITimestamp|null); + /** FileDescriptorProto service */ + service?: (google.protobuf.IServiceDescriptorProto[]|null); - /** Membership externalId */ - externalId?: (string|null); + /** FileDescriptorProto extension */ + extension?: (google.protobuf.IFieldDescriptorProto[]|null); - /** Membership lastConnectionTime */ - lastConnectionTime?: (google.protobuf.ITimestamp|null); + /** FileDescriptorProto options */ + options?: (google.protobuf.IFileOptions|null); - /** Membership uniqueId */ - uniqueId?: (string|null); + /** FileDescriptorProto sourceCodeInfo */ + sourceCodeInfo?: (google.protobuf.ISourceCodeInfo|null); - /** Membership infrastructureType */ - infrastructureType?: (google.cloud.gkehub.v1beta1.Membership.InfrastructureType|keyof typeof google.cloud.gkehub.v1beta1.Membership.InfrastructureType|null); - } + /** FileDescriptorProto syntax */ + syntax?: (string|null); + } - /** Represents a Membership. */ - class Membership implements IMembership { + /** Represents a FileDescriptorProto. */ + class FileDescriptorProto implements IFileDescriptorProto { - /** - * Constructs a new Membership. - * @param [properties] Properties to set - */ - constructor(properties?: google.cloud.gkehub.v1beta1.IMembership); + /** + * Constructs a new FileDescriptorProto. + * @param [properties] Properties to set + */ + constructor(properties?: google.protobuf.IFileDescriptorProto); - /** Membership name. */ - public name: string; + /** FileDescriptorProto name. */ + public name: string; - /** Membership labels. */ - public labels: { [k: string]: string }; + /** FileDescriptorProto package. */ + public package: string; - /** Membership description. */ - public description: string; + /** FileDescriptorProto dependency. */ + public dependency: string[]; - /** Membership endpoint. */ - public endpoint?: (google.cloud.gkehub.v1beta1.IMembershipEndpoint|null); + /** FileDescriptorProto publicDependency. */ + public publicDependency: number[]; - /** Membership state. */ - public state?: (google.cloud.gkehub.v1beta1.IMembershipState|null); + /** FileDescriptorProto weakDependency. */ + public weakDependency: number[]; - /** Membership authority. */ - public authority?: (google.cloud.gkehub.v1beta1.IAuthority|null); + /** FileDescriptorProto messageType. */ + public messageType: google.protobuf.IDescriptorProto[]; - /** Membership createTime. */ - public createTime?: (google.protobuf.ITimestamp|null); + /** FileDescriptorProto enumType. */ + public enumType: google.protobuf.IEnumDescriptorProto[]; - /** Membership updateTime. */ - public updateTime?: (google.protobuf.ITimestamp|null); + /** FileDescriptorProto service. */ + public service: google.protobuf.IServiceDescriptorProto[]; - /** Membership deleteTime. */ - public deleteTime?: (google.protobuf.ITimestamp|null); + /** FileDescriptorProto extension. */ + public extension: google.protobuf.IFieldDescriptorProto[]; - /** Membership externalId. */ - public externalId: string; + /** FileDescriptorProto options. */ + public options?: (google.protobuf.IFileOptions|null); - /** Membership lastConnectionTime. */ - public lastConnectionTime?: (google.protobuf.ITimestamp|null); + /** FileDescriptorProto sourceCodeInfo. */ + public sourceCodeInfo?: (google.protobuf.ISourceCodeInfo|null); - /** Membership uniqueId. */ - public uniqueId: string; + /** FileDescriptorProto syntax. */ + public syntax: string; - /** Membership infrastructureType. */ - public infrastructureType: (google.cloud.gkehub.v1beta1.Membership.InfrastructureType|keyof typeof google.cloud.gkehub.v1beta1.Membership.InfrastructureType); + /** + * 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; - /** Membership type. */ - public type?: "endpoint"; + /** + * 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; - /** - * Creates a new Membership instance using the specified properties. - * @param [properties] Properties to set - * @returns Membership instance - */ - public static create(properties?: google.cloud.gkehub.v1beta1.IMembership): google.cloud.gkehub.v1beta1.Membership; + /** + * 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; - /** - * Encodes the specified Membership message. Does not implicitly {@link google.cloud.gkehub.v1beta1.Membership.verify|verify} messages. - * @param message Membership message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encode(message: google.cloud.gkehub.v1beta1.IMembership, 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; - /** - * Encodes the specified Membership message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta1.Membership.verify|verify} messages. - * @param message Membership message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encodeDelimited(message: google.cloud.gkehub.v1beta1.IMembership, writer?: $protobuf.Writer): $protobuf.Writer; + /** + * 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; - /** - * Decodes a Membership message from the specified reader or buffer. - * @param reader Reader or buffer to decode from - * @param [length] Message length if known beforehand - * @returns Membership - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.v1beta1.Membership; + /** + * 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); - /** - * Decodes a Membership message from the specified reader or buffer, length delimited. - * @param reader Reader or buffer to decode from - * @returns Membership - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.v1beta1.Membership; + /** + * 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; - /** - * Verifies a Membership message. - * @param message Plain object to verify - * @returns `null` if valid, otherwise the reason why it is not - */ - public static verify(message: { [k: string]: any }): (string|null); + /** + * 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 }; - /** - * Creates a Membership message from a plain object. Also converts values to their respective internal types. - * @param object Plain object - * @returns Membership - */ - public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.v1beta1.Membership; + /** + * Converts this FileDescriptorProto to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } - /** - * Creates a plain object from a Membership message. Also converts values to other types if specified. - * @param message Membership - * @param [options] Conversion options - * @returns Plain object - */ - public static toObject(message: google.cloud.gkehub.v1beta1.Membership, options?: $protobuf.IConversionOptions): { [k: string]: any }; + /** Properties of a DescriptorProto. */ + interface IDescriptorProto { - /** - * Converts this Membership to JSON. - * @returns JSON object - */ - public toJSON(): { [k: string]: any }; - } + /** DescriptorProto name */ + name?: (string|null); - namespace Membership { + /** DescriptorProto field */ + field?: (google.protobuf.IFieldDescriptorProto[]|null); - /** InfrastructureType enum. */ - enum InfrastructureType { - INFRASTRUCTURE_TYPE_UNSPECIFIED = 0, - ON_PREM = 1, - MULTI_CLOUD = 2 - } - } + /** DescriptorProto extension */ + extension?: (google.protobuf.IFieldDescriptorProto[]|null); - /** Properties of a MembershipEndpoint. */ - interface IMembershipEndpoint { + /** DescriptorProto nestedType */ + nestedType?: (google.protobuf.IDescriptorProto[]|null); - /** MembershipEndpoint gkeCluster */ - gkeCluster?: (google.cloud.gkehub.v1beta1.IGkeCluster|null); + /** DescriptorProto enumType */ + enumType?: (google.protobuf.IEnumDescriptorProto[]|null); - /** MembershipEndpoint kubernetesMetadata */ - kubernetesMetadata?: (google.cloud.gkehub.v1beta1.IKubernetesMetadata|null); + /** DescriptorProto extensionRange */ + extensionRange?: (google.protobuf.DescriptorProto.IExtensionRange[]|null); - /** MembershipEndpoint kubernetesResource */ - kubernetesResource?: (google.cloud.gkehub.v1beta1.IKubernetesResource|null); - } + /** DescriptorProto oneofDecl */ + oneofDecl?: (google.protobuf.IOneofDescriptorProto[]|null); - /** Represents a MembershipEndpoint. */ - class MembershipEndpoint implements IMembershipEndpoint { + /** DescriptorProto options */ + options?: (google.protobuf.IMessageOptions|null); - /** - * Constructs a new MembershipEndpoint. - * @param [properties] Properties to set - */ - constructor(properties?: google.cloud.gkehub.v1beta1.IMembershipEndpoint); + /** DescriptorProto reservedRange */ + reservedRange?: (google.protobuf.DescriptorProto.IReservedRange[]|null); - /** MembershipEndpoint gkeCluster. */ - public gkeCluster?: (google.cloud.gkehub.v1beta1.IGkeCluster|null); + /** DescriptorProto reservedName */ + reservedName?: (string[]|null); + } - /** MembershipEndpoint kubernetesMetadata. */ - public kubernetesMetadata?: (google.cloud.gkehub.v1beta1.IKubernetesMetadata|null); + /** Represents a DescriptorProto. */ + class DescriptorProto implements IDescriptorProto { - /** MembershipEndpoint kubernetesResource. */ - public kubernetesResource?: (google.cloud.gkehub.v1beta1.IKubernetesResource|null); + /** + * Constructs a new DescriptorProto. + * @param [properties] Properties to set + */ + constructor(properties?: google.protobuf.IDescriptorProto); - /** - * Creates a new MembershipEndpoint instance using the specified properties. - * @param [properties] Properties to set - * @returns MembershipEndpoint instance - */ - public static create(properties?: google.cloud.gkehub.v1beta1.IMembershipEndpoint): google.cloud.gkehub.v1beta1.MembershipEndpoint; + /** DescriptorProto name. */ + public name: string; - /** - * Encodes the specified MembershipEndpoint message. Does not implicitly {@link google.cloud.gkehub.v1beta1.MembershipEndpoint.verify|verify} messages. - * @param message MembershipEndpoint message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encode(message: google.cloud.gkehub.v1beta1.IMembershipEndpoint, writer?: $protobuf.Writer): $protobuf.Writer; + /** DescriptorProto field. */ + public field: google.protobuf.IFieldDescriptorProto[]; - /** - * Encodes the specified MembershipEndpoint message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta1.MembershipEndpoint.verify|verify} messages. - * @param message MembershipEndpoint message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encodeDelimited(message: google.cloud.gkehub.v1beta1.IMembershipEndpoint, writer?: $protobuf.Writer): $protobuf.Writer; + /** DescriptorProto extension. */ + public extension: google.protobuf.IFieldDescriptorProto[]; - /** - * Decodes a MembershipEndpoint message from the specified reader or buffer. - * @param reader Reader or buffer to decode from - * @param [length] Message length if known beforehand - * @returns MembershipEndpoint - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.v1beta1.MembershipEndpoint; + /** DescriptorProto nestedType. */ + public nestedType: google.protobuf.IDescriptorProto[]; - /** - * Decodes a MembershipEndpoint message from the specified reader or buffer, length delimited. - * @param reader Reader or buffer to decode from - * @returns MembershipEndpoint - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.v1beta1.MembershipEndpoint; + /** DescriptorProto enumType. */ + public enumType: google.protobuf.IEnumDescriptorProto[]; - /** - * Verifies a MembershipEndpoint message. - * @param message Plain object to verify - * @returns `null` if valid, otherwise the reason why it is not - */ - public static verify(message: { [k: string]: any }): (string|null); + /** DescriptorProto extensionRange. */ + public extensionRange: google.protobuf.DescriptorProto.IExtensionRange[]; - /** - * Creates a MembershipEndpoint message from a plain object. Also converts values to their respective internal types. - * @param object Plain object - * @returns MembershipEndpoint - */ - public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.v1beta1.MembershipEndpoint; + /** DescriptorProto oneofDecl. */ + public oneofDecl: google.protobuf.IOneofDescriptorProto[]; - /** - * Creates a plain object from a MembershipEndpoint message. Also converts values to other types if specified. - * @param message MembershipEndpoint - * @param [options] Conversion options - * @returns Plain object - */ - public static toObject(message: google.cloud.gkehub.v1beta1.MembershipEndpoint, options?: $protobuf.IConversionOptions): { [k: string]: any }; + /** DescriptorProto options. */ + public options?: (google.protobuf.IMessageOptions|null); - /** - * Converts this MembershipEndpoint to JSON. - * @returns JSON object - */ - public toJSON(): { [k: string]: any }; - } + /** DescriptorProto reservedRange. */ + public reservedRange: google.protobuf.DescriptorProto.IReservedRange[]; - /** Properties of a KubernetesResource. */ - interface IKubernetesResource { + /** DescriptorProto reservedName. */ + public reservedName: string[]; - /** KubernetesResource membershipCrManifest */ - membershipCrManifest?: (string|null); + /** + * 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; - /** KubernetesResource membershipResources */ - membershipResources?: (google.cloud.gkehub.v1beta1.IResourceManifest[]|null); + /** + * 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; - /** KubernetesResource connectResources */ - connectResources?: (google.cloud.gkehub.v1beta1.IResourceManifest[]|null); + /** + * 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; - /** KubernetesResource resourceOptions */ - resourceOptions?: (google.cloud.gkehub.v1beta1.IResourceOptions|null); - } + /** + * 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; - /** Represents a KubernetesResource. */ - class KubernetesResource implements IKubernetesResource { + /** + * 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; - /** - * Constructs a new KubernetesResource. - * @param [properties] Properties to set - */ - constructor(properties?: google.cloud.gkehub.v1beta1.IKubernetesResource); + /** + * 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); - /** KubernetesResource membershipCrManifest. */ - public membershipCrManifest: string; + /** + * 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; - /** KubernetesResource membershipResources. */ - public membershipResources: google.cloud.gkehub.v1beta1.IResourceManifest[]; + /** + * 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 }; - /** KubernetesResource connectResources. */ - public connectResources: google.cloud.gkehub.v1beta1.IResourceManifest[]; + /** + * Converts this DescriptorProto to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } - /** KubernetesResource resourceOptions. */ - public resourceOptions?: (google.cloud.gkehub.v1beta1.IResourceOptions|null); + namespace DescriptorProto { - /** - * Creates a new KubernetesResource instance using the specified properties. - * @param [properties] Properties to set - * @returns KubernetesResource instance - */ - public static create(properties?: google.cloud.gkehub.v1beta1.IKubernetesResource): google.cloud.gkehub.v1beta1.KubernetesResource; + /** Properties of an ExtensionRange. */ + interface IExtensionRange { - /** - * Encodes the specified KubernetesResource message. Does not implicitly {@link google.cloud.gkehub.v1beta1.KubernetesResource.verify|verify} messages. - * @param message KubernetesResource message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encode(message: google.cloud.gkehub.v1beta1.IKubernetesResource, writer?: $protobuf.Writer): $protobuf.Writer; + /** ExtensionRange start */ + start?: (number|null); - /** - * Encodes the specified KubernetesResource message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta1.KubernetesResource.verify|verify} messages. - * @param message KubernetesResource message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encodeDelimited(message: google.cloud.gkehub.v1beta1.IKubernetesResource, writer?: $protobuf.Writer): $protobuf.Writer; + /** ExtensionRange end */ + end?: (number|null); - /** - * Decodes a KubernetesResource message from the specified reader or buffer. - * @param reader Reader or buffer to decode from - * @param [length] Message length if known beforehand - * @returns KubernetesResource - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.v1beta1.KubernetesResource; + /** ExtensionRange options */ + options?: (google.protobuf.IExtensionRangeOptions|null); + } - /** - * Decodes a KubernetesResource message from the specified reader or buffer, length delimited. - * @param reader Reader or buffer to decode from - * @returns KubernetesResource - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.v1beta1.KubernetesResource; + /** Represents an ExtensionRange. */ + class ExtensionRange implements IExtensionRange { - /** - * Verifies a KubernetesResource message. - * @param message Plain object to verify - * @returns `null` if valid, otherwise the reason why it is not - */ - public static verify(message: { [k: string]: any }): (string|null); + /** + * Constructs a new ExtensionRange. + * @param [properties] Properties to set + */ + constructor(properties?: google.protobuf.DescriptorProto.IExtensionRange); - /** - * Creates a KubernetesResource message from a plain object. Also converts values to their respective internal types. - * @param object Plain object - * @returns KubernetesResource - */ - public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.v1beta1.KubernetesResource; + /** ExtensionRange start. */ + public start: number; - /** - * Creates a plain object from a KubernetesResource message. Also converts values to other types if specified. - * @param message KubernetesResource - * @param [options] Conversion options - * @returns Plain object - */ - public static toObject(message: google.cloud.gkehub.v1beta1.KubernetesResource, options?: $protobuf.IConversionOptions): { [k: string]: any }; + /** ExtensionRange end. */ + public end: number; - /** - * Converts this KubernetesResource to JSON. - * @returns JSON object - */ - public toJSON(): { [k: string]: any }; - } + /** ExtensionRange options. */ + public options?: (google.protobuf.IExtensionRangeOptions|null); - /** Properties of a ResourceOptions. */ - interface IResourceOptions { + /** + * 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; - /** ResourceOptions connectVersion */ - connectVersion?: (string|null); + /** + * 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; - /** ResourceOptions v1beta1Crd */ - v1beta1Crd?: (boolean|null); - } + /** + * 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; - /** Represents a ResourceOptions. */ - class ResourceOptions implements IResourceOptions { + /** + * 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; - /** - * Constructs a new ResourceOptions. - * @param [properties] Properties to set - */ - constructor(properties?: google.cloud.gkehub.v1beta1.IResourceOptions); + /** + * 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; - /** ResourceOptions connectVersion. */ - public connectVersion: string; + /** + * 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); - /** ResourceOptions v1beta1Crd. */ - public v1beta1Crd: boolean; + /** + * 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 new ResourceOptions instance using the specified properties. - * @param [properties] Properties to set - * @returns ResourceOptions instance - */ - public static create(properties?: google.cloud.gkehub.v1beta1.IResourceOptions): google.cloud.gkehub.v1beta1.ResourceOptions; + /** + * 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 }; - /** - * Encodes the specified ResourceOptions message. Does not implicitly {@link google.cloud.gkehub.v1beta1.ResourceOptions.verify|verify} messages. - * @param message ResourceOptions message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encode(message: google.cloud.gkehub.v1beta1.IResourceOptions, writer?: $protobuf.Writer): $protobuf.Writer; + /** + * Converts this ExtensionRange to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } - /** - * Encodes the specified ResourceOptions message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta1.ResourceOptions.verify|verify} messages. - * @param message ResourceOptions message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encodeDelimited(message: google.cloud.gkehub.v1beta1.IResourceOptions, writer?: $protobuf.Writer): $protobuf.Writer; + /** Properties of a ReservedRange. */ + interface IReservedRange { - /** - * Decodes a ResourceOptions message from the specified reader or buffer. - * @param reader Reader or buffer to decode from - * @param [length] Message length if known beforehand - * @returns ResourceOptions - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.v1beta1.ResourceOptions; + /** ReservedRange start */ + start?: (number|null); - /** - * Decodes a ResourceOptions message from the specified reader or buffer, length delimited. - * @param reader Reader or buffer to decode from - * @returns ResourceOptions - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.v1beta1.ResourceOptions; + /** ReservedRange end */ + end?: (number|null); + } - /** - * Verifies a ResourceOptions message. - * @param message Plain object to verify - * @returns `null` if valid, otherwise the reason why it is not - */ - public static verify(message: { [k: string]: any }): (string|null); + /** Represents a ReservedRange. */ + class ReservedRange implements IReservedRange { - /** - * Creates a ResourceOptions message from a plain object. Also converts values to their respective internal types. - * @param object Plain object - * @returns ResourceOptions - */ - public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.v1beta1.ResourceOptions; - - /** - * Creates a plain object from a ResourceOptions message. Also converts values to other types if specified. - * @param message ResourceOptions - * @param [options] Conversion options - * @returns Plain object - */ - public static toObject(message: google.cloud.gkehub.v1beta1.ResourceOptions, options?: $protobuf.IConversionOptions): { [k: string]: any }; + /** + * Constructs a new ReservedRange. + * @param [properties] Properties to set + */ + constructor(properties?: google.protobuf.DescriptorProto.IReservedRange); - /** - * Converts this ResourceOptions to JSON. - * @returns JSON object - */ - public toJSON(): { [k: string]: any }; - } + /** ReservedRange start. */ + public start: number; - /** Properties of a ResourceManifest. */ - interface IResourceManifest { + /** ReservedRange end. */ + public end: number; - /** ResourceManifest manifest */ - manifest?: (string|null); + /** + * 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; - /** ResourceManifest clusterScoped */ - clusterScoped?: (boolean|null); - } + /** + * 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; - /** Represents a ResourceManifest. */ - class ResourceManifest implements IResourceManifest { + /** + * 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; - /** - * Constructs a new ResourceManifest. - * @param [properties] Properties to set - */ - constructor(properties?: google.cloud.gkehub.v1beta1.IResourceManifest); + /** + * 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; - /** ResourceManifest manifest. */ - public manifest: string; + /** + * 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; - /** ResourceManifest clusterScoped. */ - public clusterScoped: boolean; + /** + * 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 new ResourceManifest instance using the specified properties. - * @param [properties] Properties to set - * @returns ResourceManifest instance - */ - public static create(properties?: google.cloud.gkehub.v1beta1.IResourceManifest): google.cloud.gkehub.v1beta1.ResourceManifest; + /** + * 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; - /** - * Encodes the specified ResourceManifest message. Does not implicitly {@link google.cloud.gkehub.v1beta1.ResourceManifest.verify|verify} messages. - * @param message ResourceManifest message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encode(message: google.cloud.gkehub.v1beta1.IResourceManifest, writer?: $protobuf.Writer): $protobuf.Writer; + /** + * 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 }; - /** - * Encodes the specified ResourceManifest message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta1.ResourceManifest.verify|verify} messages. - * @param message ResourceManifest message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encodeDelimited(message: google.cloud.gkehub.v1beta1.IResourceManifest, writer?: $protobuf.Writer): $protobuf.Writer; + /** + * Converts this ReservedRange to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + } - /** - * Decodes a ResourceManifest message from the specified reader or buffer. - * @param reader Reader or buffer to decode from - * @param [length] Message length if known beforehand - * @returns ResourceManifest - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.v1beta1.ResourceManifest; + /** Properties of an ExtensionRangeOptions. */ + interface IExtensionRangeOptions { - /** - * Decodes a ResourceManifest message from the specified reader or buffer, length delimited. - * @param reader Reader or buffer to decode from - * @returns ResourceManifest - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.v1beta1.ResourceManifest; + /** ExtensionRangeOptions uninterpretedOption */ + uninterpretedOption?: (google.protobuf.IUninterpretedOption[]|null); + } - /** - * Verifies a ResourceManifest message. - * @param message Plain object to verify - * @returns `null` if valid, otherwise the reason why it is not - */ - public static verify(message: { [k: string]: any }): (string|null); + /** Represents an ExtensionRangeOptions. */ + class ExtensionRangeOptions implements IExtensionRangeOptions { - /** - * Creates a ResourceManifest message from a plain object. Also converts values to their respective internal types. - * @param object Plain object - * @returns ResourceManifest - */ - public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.v1beta1.ResourceManifest; + /** + * Constructs a new ExtensionRangeOptions. + * @param [properties] Properties to set + */ + constructor(properties?: google.protobuf.IExtensionRangeOptions); - /** - * Creates a plain object from a ResourceManifest message. Also converts values to other types if specified. - * @param message ResourceManifest - * @param [options] Conversion options - * @returns Plain object - */ - public static toObject(message: google.cloud.gkehub.v1beta1.ResourceManifest, options?: $protobuf.IConversionOptions): { [k: string]: any }; + /** ExtensionRangeOptions uninterpretedOption. */ + public uninterpretedOption: google.protobuf.IUninterpretedOption[]; - /** - * Converts this ResourceManifest to JSON. - * @returns JSON object - */ - public toJSON(): { [k: string]: any }; - } + /** + * 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; - /** Properties of a GkeCluster. */ - interface IGkeCluster { + /** + * 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; - /** GkeCluster resourceLink */ - resourceLink?: (string|null); - } + /** + * 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; - /** Represents a GkeCluster. */ - class GkeCluster implements IGkeCluster { + /** + * 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; - /** - * Constructs a new GkeCluster. - * @param [properties] Properties to set - */ - constructor(properties?: google.cloud.gkehub.v1beta1.IGkeCluster); + /** + * 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; - /** GkeCluster resourceLink. */ - public resourceLink: string; + /** + * 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 a new GkeCluster instance using the specified properties. - * @param [properties] Properties to set - * @returns GkeCluster instance - */ - public static create(properties?: google.cloud.gkehub.v1beta1.IGkeCluster): google.cloud.gkehub.v1beta1.GkeCluster; + /** + * 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; - /** - * Encodes the specified GkeCluster message. Does not implicitly {@link google.cloud.gkehub.v1beta1.GkeCluster.verify|verify} messages. - * @param message GkeCluster message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encode(message: google.cloud.gkehub.v1beta1.IGkeCluster, writer?: $protobuf.Writer): $protobuf.Writer; - - /** - * Encodes the specified GkeCluster message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta1.GkeCluster.verify|verify} messages. - * @param message GkeCluster message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encodeDelimited(message: google.cloud.gkehub.v1beta1.IGkeCluster, writer?: $protobuf.Writer): $protobuf.Writer; + /** + * 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 }; - /** - * Decodes a GkeCluster message from the specified reader or buffer. - * @param reader Reader or buffer to decode from - * @param [length] Message length if known beforehand - * @returns GkeCluster - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.v1beta1.GkeCluster; + /** + * Converts this ExtensionRangeOptions to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } - /** - * Decodes a GkeCluster message from the specified reader or buffer, length delimited. - * @param reader Reader or buffer to decode from - * @returns GkeCluster - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.v1beta1.GkeCluster; + /** Properties of a FieldDescriptorProto. */ + interface IFieldDescriptorProto { - /** - * Verifies a GkeCluster message. - * @param message Plain object to verify - * @returns `null` if valid, otherwise the reason why it is not - */ - public static verify(message: { [k: string]: any }): (string|null); + /** FieldDescriptorProto name */ + name?: (string|null); - /** - * Creates a GkeCluster message from a plain object. Also converts values to their respective internal types. - * @param object Plain object - * @returns GkeCluster - */ - public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.v1beta1.GkeCluster; + /** FieldDescriptorProto number */ + number?: (number|null); - /** - * Creates a plain object from a GkeCluster message. Also converts values to other types if specified. - * @param message GkeCluster - * @param [options] Conversion options - * @returns Plain object - */ - public static toObject(message: google.cloud.gkehub.v1beta1.GkeCluster, options?: $protobuf.IConversionOptions): { [k: string]: any }; + /** FieldDescriptorProto label */ + label?: (google.protobuf.FieldDescriptorProto.Label|keyof typeof google.protobuf.FieldDescriptorProto.Label|null); - /** - * Converts this GkeCluster to JSON. - * @returns JSON object - */ - public toJSON(): { [k: string]: any }; - } + /** FieldDescriptorProto type */ + type?: (google.protobuf.FieldDescriptorProto.Type|keyof typeof google.protobuf.FieldDescriptorProto.Type|null); - /** Properties of a KubernetesMetadata. */ - interface IKubernetesMetadata { + /** FieldDescriptorProto typeName */ + typeName?: (string|null); - /** KubernetesMetadata kubernetesApiServerVersion */ - kubernetesApiServerVersion?: (string|null); + /** FieldDescriptorProto extendee */ + extendee?: (string|null); - /** KubernetesMetadata nodeProviderId */ - nodeProviderId?: (string|null); + /** FieldDescriptorProto defaultValue */ + defaultValue?: (string|null); - /** KubernetesMetadata nodeCount */ - nodeCount?: (number|null); + /** FieldDescriptorProto oneofIndex */ + oneofIndex?: (number|null); - /** KubernetesMetadata vcpuCount */ - vcpuCount?: (number|null); + /** FieldDescriptorProto jsonName */ + jsonName?: (string|null); - /** KubernetesMetadata memoryMb */ - memoryMb?: (number|null); + /** FieldDescriptorProto options */ + options?: (google.protobuf.IFieldOptions|null); - /** KubernetesMetadata updateTime */ - updateTime?: (google.protobuf.ITimestamp|null); - } + /** FieldDescriptorProto proto3Optional */ + proto3Optional?: (boolean|null); + } - /** Represents a KubernetesMetadata. */ - class KubernetesMetadata implements IKubernetesMetadata { + /** Represents a FieldDescriptorProto. */ + class FieldDescriptorProto implements IFieldDescriptorProto { - /** - * Constructs a new KubernetesMetadata. - * @param [properties] Properties to set - */ - constructor(properties?: google.cloud.gkehub.v1beta1.IKubernetesMetadata); + /** + * Constructs a new FieldDescriptorProto. + * @param [properties] Properties to set + */ + constructor(properties?: google.protobuf.IFieldDescriptorProto); - /** KubernetesMetadata kubernetesApiServerVersion. */ - public kubernetesApiServerVersion: string; + /** FieldDescriptorProto name. */ + public name: string; - /** KubernetesMetadata nodeProviderId. */ - public nodeProviderId: string; + /** FieldDescriptorProto number. */ + public number: number; - /** KubernetesMetadata nodeCount. */ - public nodeCount: number; + /** FieldDescriptorProto label. */ + public label: (google.protobuf.FieldDescriptorProto.Label|keyof typeof google.protobuf.FieldDescriptorProto.Label); - /** KubernetesMetadata vcpuCount. */ - public vcpuCount: number; + /** FieldDescriptorProto type. */ + public type: (google.protobuf.FieldDescriptorProto.Type|keyof typeof google.protobuf.FieldDescriptorProto.Type); - /** KubernetesMetadata memoryMb. */ - public memoryMb: number; + /** FieldDescriptorProto typeName. */ + public typeName: string; - /** KubernetesMetadata updateTime. */ - public updateTime?: (google.protobuf.ITimestamp|null); + /** FieldDescriptorProto extendee. */ + public extendee: string; - /** - * Creates a new KubernetesMetadata instance using the specified properties. - * @param [properties] Properties to set - * @returns KubernetesMetadata instance - */ - public static create(properties?: google.cloud.gkehub.v1beta1.IKubernetesMetadata): google.cloud.gkehub.v1beta1.KubernetesMetadata; + /** FieldDescriptorProto defaultValue. */ + public defaultValue: string; - /** - * Encodes the specified KubernetesMetadata message. Does not implicitly {@link google.cloud.gkehub.v1beta1.KubernetesMetadata.verify|verify} messages. - * @param message KubernetesMetadata message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encode(message: google.cloud.gkehub.v1beta1.IKubernetesMetadata, writer?: $protobuf.Writer): $protobuf.Writer; + /** FieldDescriptorProto oneofIndex. */ + public oneofIndex: number; - /** - * Encodes the specified KubernetesMetadata message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta1.KubernetesMetadata.verify|verify} messages. - * @param message KubernetesMetadata message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encodeDelimited(message: google.cloud.gkehub.v1beta1.IKubernetesMetadata, writer?: $protobuf.Writer): $protobuf.Writer; + /** FieldDescriptorProto jsonName. */ + public jsonName: string; - /** - * Decodes a KubernetesMetadata message from the specified reader or buffer. - * @param reader Reader or buffer to decode from - * @param [length] Message length if known beforehand - * @returns KubernetesMetadata - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.v1beta1.KubernetesMetadata; + /** FieldDescriptorProto options. */ + public options?: (google.protobuf.IFieldOptions|null); - /** - * Decodes a KubernetesMetadata message from the specified reader or buffer, length delimited. - * @param reader Reader or buffer to decode from - * @returns KubernetesMetadata - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.v1beta1.KubernetesMetadata; + /** FieldDescriptorProto proto3Optional. */ + public proto3Optional: boolean; - /** - * Verifies a KubernetesMetadata message. - * @param message Plain object to verify - * @returns `null` if valid, otherwise the reason why it is not - */ - public static verify(message: { [k: string]: any }): (string|null); + /** + * 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; - /** - * Creates a KubernetesMetadata message from a plain object. Also converts values to their respective internal types. - * @param object Plain object - * @returns KubernetesMetadata - */ - public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.v1beta1.KubernetesMetadata; + /** + * 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; - /** - * Creates a plain object from a KubernetesMetadata message. Also converts values to other types if specified. - * @param message KubernetesMetadata - * @param [options] Conversion options - * @returns Plain object - */ - public static toObject(message: google.cloud.gkehub.v1beta1.KubernetesMetadata, options?: $protobuf.IConversionOptions): { [k: string]: any }; + /** + * 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; - /** - * Converts this KubernetesMetadata to JSON. - * @returns JSON object - */ - public toJSON(): { [k: string]: any }; - } + /** + * 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; - /** Properties of an Authority. */ - interface IAuthority { + /** + * 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; - /** Authority issuer */ - issuer?: (string|null); + /** + * 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); - /** Authority workloadIdentityPool */ - workloadIdentityPool?: (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; - /** Authority identityProvider */ - identityProvider?: (string|null); + /** + * 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 }; - /** Authority oidcJwks */ - oidcJwks?: (Uint8Array|string|null); - } + /** + * Converts this FieldDescriptorProto to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } - /** Represents an Authority. */ - class Authority implements IAuthority { + namespace FieldDescriptorProto { - /** - * Constructs a new Authority. - * @param [properties] Properties to set - */ - constructor(properties?: google.cloud.gkehub.v1beta1.IAuthority); + /** 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 + } - /** Authority issuer. */ - public issuer: string; + /** Label enum. */ + enum Label { + LABEL_OPTIONAL = 1, + LABEL_REQUIRED = 2, + LABEL_REPEATED = 3 + } + } - /** Authority workloadIdentityPool. */ - public workloadIdentityPool: string; + /** Properties of an OneofDescriptorProto. */ + interface IOneofDescriptorProto { - /** Authority identityProvider. */ - public identityProvider: string; + /** OneofDescriptorProto name */ + name?: (string|null); - /** Authority oidcJwks. */ - public oidcJwks: (Uint8Array|string); + /** OneofDescriptorProto options */ + options?: (google.protobuf.IOneofOptions|null); + } - /** - * Creates a new Authority instance using the specified properties. - * @param [properties] Properties to set - * @returns Authority instance - */ - public static create(properties?: google.cloud.gkehub.v1beta1.IAuthority): google.cloud.gkehub.v1beta1.Authority; + /** Represents an OneofDescriptorProto. */ + class OneofDescriptorProto implements IOneofDescriptorProto { - /** - * Encodes the specified Authority message. Does not implicitly {@link google.cloud.gkehub.v1beta1.Authority.verify|verify} messages. - * @param message Authority message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encode(message: google.cloud.gkehub.v1beta1.IAuthority, writer?: $protobuf.Writer): $protobuf.Writer; + /** + * Constructs a new OneofDescriptorProto. + * @param [properties] Properties to set + */ + constructor(properties?: google.protobuf.IOneofDescriptorProto); - /** - * Encodes the specified Authority message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta1.Authority.verify|verify} messages. - * @param message Authority message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encodeDelimited(message: google.cloud.gkehub.v1beta1.IAuthority, writer?: $protobuf.Writer): $protobuf.Writer; + /** OneofDescriptorProto name. */ + public name: string; - /** - * Decodes an Authority message from the specified reader or buffer. - * @param reader Reader or buffer to decode from - * @param [length] Message length if known beforehand - * @returns Authority - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.v1beta1.Authority; + /** OneofDescriptorProto options. */ + public options?: (google.protobuf.IOneofOptions|null); - /** - * Decodes an Authority message from the specified reader or buffer, length delimited. - * @param reader Reader or buffer to decode from - * @returns Authority - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.v1beta1.Authority; + /** + * 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; - /** - * Verifies an Authority message. - * @param message Plain object to verify - * @returns `null` if valid, otherwise the reason why it is not - */ - public static verify(message: { [k: string]: any }): (string|null); + /** + * 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; - /** - * Creates an Authority message from a plain object. Also converts values to their respective internal types. - * @param object Plain object - * @returns Authority - */ - public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.v1beta1.Authority; + /** + * 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; - /** - * Creates a plain object from an Authority message. Also converts values to other types if specified. - * @param message Authority - * @param [options] Conversion options - * @returns Plain object - */ - public static toObject(message: google.cloud.gkehub.v1beta1.Authority, options?: $protobuf.IConversionOptions): { [k: string]: any }; + /** + * 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; - /** - * Converts this Authority to JSON. - * @returns JSON object - */ - public toJSON(): { [k: string]: any }; - } + /** + * 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; - /** Properties of a MembershipState. */ - interface IMembershipState { + /** + * 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); - /** MembershipState code */ - code?: (google.cloud.gkehub.v1beta1.MembershipState.Code|keyof typeof google.cloud.gkehub.v1beta1.MembershipState.Code|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; - /** MembershipState description */ - description?: (string|null); + /** + * 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 }; - /** MembershipState updateTime */ - updateTime?: (google.protobuf.ITimestamp|null); - } + /** + * Converts this OneofDescriptorProto to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } - /** Represents a MembershipState. */ - class MembershipState implements IMembershipState { + /** Properties of an EnumDescriptorProto. */ + interface IEnumDescriptorProto { - /** - * Constructs a new MembershipState. - * @param [properties] Properties to set - */ - constructor(properties?: google.cloud.gkehub.v1beta1.IMembershipState); + /** EnumDescriptorProto name */ + name?: (string|null); - /** MembershipState code. */ - public code: (google.cloud.gkehub.v1beta1.MembershipState.Code|keyof typeof google.cloud.gkehub.v1beta1.MembershipState.Code); + /** EnumDescriptorProto value */ + value?: (google.protobuf.IEnumValueDescriptorProto[]|null); - /** MembershipState description. */ - public description: string; + /** EnumDescriptorProto options */ + options?: (google.protobuf.IEnumOptions|null); - /** MembershipState updateTime. */ - public updateTime?: (google.protobuf.ITimestamp|null); + /** EnumDescriptorProto reservedRange */ + reservedRange?: (google.protobuf.EnumDescriptorProto.IEnumReservedRange[]|null); - /** - * Creates a new MembershipState instance using the specified properties. - * @param [properties] Properties to set - * @returns MembershipState instance - */ - public static create(properties?: google.cloud.gkehub.v1beta1.IMembershipState): google.cloud.gkehub.v1beta1.MembershipState; + /** EnumDescriptorProto reservedName */ + reservedName?: (string[]|null); + } - /** - * Encodes the specified MembershipState message. Does not implicitly {@link google.cloud.gkehub.v1beta1.MembershipState.verify|verify} messages. - * @param message MembershipState message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encode(message: google.cloud.gkehub.v1beta1.IMembershipState, writer?: $protobuf.Writer): $protobuf.Writer; + /** Represents an EnumDescriptorProto. */ + class EnumDescriptorProto implements IEnumDescriptorProto { - /** - * Encodes the specified MembershipState message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta1.MembershipState.verify|verify} messages. - * @param message MembershipState message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encodeDelimited(message: google.cloud.gkehub.v1beta1.IMembershipState, writer?: $protobuf.Writer): $protobuf.Writer; + /** + * Constructs a new EnumDescriptorProto. + * @param [properties] Properties to set + */ + constructor(properties?: google.protobuf.IEnumDescriptorProto); - /** - * Decodes a MembershipState message from the specified reader or buffer. - * @param reader Reader or buffer to decode from - * @param [length] Message length if known beforehand - * @returns MembershipState - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.v1beta1.MembershipState; + /** EnumDescriptorProto name. */ + public name: string; - /** - * Decodes a MembershipState message from the specified reader or buffer, length delimited. - * @param reader Reader or buffer to decode from - * @returns MembershipState - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.v1beta1.MembershipState; + /** EnumDescriptorProto value. */ + public value: google.protobuf.IEnumValueDescriptorProto[]; - /** - * Verifies a MembershipState message. - * @param message Plain object to verify - * @returns `null` if valid, otherwise the reason why it is not - */ - public static verify(message: { [k: string]: any }): (string|null); + /** EnumDescriptorProto options. */ + public options?: (google.protobuf.IEnumOptions|null); - /** - * Creates a MembershipState message from a plain object. Also converts values to their respective internal types. - * @param object Plain object - * @returns MembershipState - */ - public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.v1beta1.MembershipState; + /** EnumDescriptorProto reservedRange. */ + public reservedRange: google.protobuf.EnumDescriptorProto.IEnumReservedRange[]; - /** - * Creates a plain object from a MembershipState message. Also converts values to other types if specified. - * @param message MembershipState - * @param [options] Conversion options - * @returns Plain object - */ - public static toObject(message: google.cloud.gkehub.v1beta1.MembershipState, options?: $protobuf.IConversionOptions): { [k: string]: any }; + /** EnumDescriptorProto reservedName. */ + public reservedName: string[]; - /** - * Converts this MembershipState to JSON. - * @returns JSON object - */ - public toJSON(): { [k: string]: any }; - } + /** + * 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; - namespace MembershipState { + /** + * 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; - /** Code enum. */ - enum Code { - CODE_UNSPECIFIED = 0, - CREATING = 1, - READY = 2, - DELETING = 3, - UPDATING = 4, - SERVICE_UPDATING = 5 - } - } + /** + * 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; - /** Properties of a ListMembershipsRequest. */ - interface IListMembershipsRequest { + /** + * 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; - /** ListMembershipsRequest parent */ - parent?: (string|null); + /** + * 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; - /** ListMembershipsRequest pageSize */ - pageSize?: (number|null); + /** + * 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); - /** ListMembershipsRequest pageToken */ - pageToken?: (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; - /** ListMembershipsRequest filter */ - filter?: (string|null); + /** + * 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 }; - /** ListMembershipsRequest orderBy */ - orderBy?: (string|null); - } + /** + * Converts this EnumDescriptorProto to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } - /** Represents a ListMembershipsRequest. */ - class ListMembershipsRequest implements IListMembershipsRequest { + namespace EnumDescriptorProto { - /** - * Constructs a new ListMembershipsRequest. - * @param [properties] Properties to set - */ - constructor(properties?: google.cloud.gkehub.v1beta1.IListMembershipsRequest); + /** Properties of an EnumReservedRange. */ + interface IEnumReservedRange { - /** ListMembershipsRequest parent. */ - public parent: string; + /** EnumReservedRange start */ + start?: (number|null); - /** ListMembershipsRequest pageSize. */ - public pageSize: number; + /** EnumReservedRange end */ + end?: (number|null); + } - /** ListMembershipsRequest pageToken. */ - public pageToken: string; + /** Represents an EnumReservedRange. */ + class EnumReservedRange implements IEnumReservedRange { - /** ListMembershipsRequest filter. */ - public filter: string; + /** + * Constructs a new EnumReservedRange. + * @param [properties] Properties to set + */ + constructor(properties?: google.protobuf.EnumDescriptorProto.IEnumReservedRange); - /** ListMembershipsRequest orderBy. */ - public orderBy: string; + /** EnumReservedRange start. */ + public start: number; - /** - * Creates a new ListMembershipsRequest instance using the specified properties. - * @param [properties] Properties to set - * @returns ListMembershipsRequest instance - */ - public static create(properties?: google.cloud.gkehub.v1beta1.IListMembershipsRequest): google.cloud.gkehub.v1beta1.ListMembershipsRequest; + /** EnumReservedRange end. */ + public end: number; - /** - * Encodes the specified ListMembershipsRequest message. Does not implicitly {@link google.cloud.gkehub.v1beta1.ListMembershipsRequest.verify|verify} messages. - * @param message ListMembershipsRequest message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encode(message: google.cloud.gkehub.v1beta1.IListMembershipsRequest, writer?: $protobuf.Writer): $protobuf.Writer; + /** + * 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 ListMembershipsRequest message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta1.ListMembershipsRequest.verify|verify} messages. - * @param message ListMembershipsRequest message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encodeDelimited(message: google.cloud.gkehub.v1beta1.IListMembershipsRequest, writer?: $protobuf.Writer): $protobuf.Writer; + /** + * 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; - /** - * Decodes a ListMembershipsRequest message from the specified reader or buffer. - * @param reader Reader or buffer to decode from - * @param [length] Message length if known beforehand - * @returns ListMembershipsRequest - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.v1beta1.ListMembershipsRequest; + /** + * 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 a ListMembershipsRequest message from the specified reader or buffer, length delimited. - * @param reader Reader or buffer to decode from - * @returns ListMembershipsRequest - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.v1beta1.ListMembershipsRequest; + /** + * 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; - /** - * Verifies a ListMembershipsRequest message. - * @param message Plain object to verify - * @returns `null` if valid, otherwise the reason why it is not - */ - public static verify(message: { [k: string]: any }): (string|null); + /** + * 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; - /** - * Creates a ListMembershipsRequest message from a plain object. Also converts values to their respective internal types. - * @param object Plain object - * @returns ListMembershipsRequest - */ - public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.v1beta1.ListMembershipsRequest; + /** + * 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 a plain object from a ListMembershipsRequest message. Also converts values to other types if specified. - * @param message ListMembershipsRequest - * @param [options] Conversion options - * @returns Plain object - */ - public static toObject(message: google.cloud.gkehub.v1beta1.ListMembershipsRequest, options?: $protobuf.IConversionOptions): { [k: string]: any }; + /** + * 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; - /** - * Converts this ListMembershipsRequest to JSON. - * @returns JSON object - */ - public toJSON(): { [k: string]: any }; - } + /** + * 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 }; - /** Properties of a ListMembershipsResponse. */ - interface IListMembershipsResponse { + /** + * Converts this EnumReservedRange to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + } - /** ListMembershipsResponse resources */ - resources?: (google.cloud.gkehub.v1beta1.IMembership[]|null); + /** Properties of an EnumValueDescriptorProto. */ + interface IEnumValueDescriptorProto { - /** ListMembershipsResponse nextPageToken */ - nextPageToken?: (string|null); + /** EnumValueDescriptorProto name */ + name?: (string|null); - /** ListMembershipsResponse unreachable */ - unreachable?: (string[]|null); - } + /** EnumValueDescriptorProto number */ + number?: (number|null); - /** Represents a ListMembershipsResponse. */ - class ListMembershipsResponse implements IListMembershipsResponse { + /** EnumValueDescriptorProto options */ + options?: (google.protobuf.IEnumValueOptions|null); + } - /** - * Constructs a new ListMembershipsResponse. - * @param [properties] Properties to set - */ - constructor(properties?: google.cloud.gkehub.v1beta1.IListMembershipsResponse); + /** Represents an EnumValueDescriptorProto. */ + class EnumValueDescriptorProto implements IEnumValueDescriptorProto { - /** ListMembershipsResponse resources. */ - public resources: google.cloud.gkehub.v1beta1.IMembership[]; + /** + * Constructs a new EnumValueDescriptorProto. + * @param [properties] Properties to set + */ + constructor(properties?: google.protobuf.IEnumValueDescriptorProto); - /** ListMembershipsResponse nextPageToken. */ - public nextPageToken: string; + /** EnumValueDescriptorProto name. */ + public name: string; - /** ListMembershipsResponse unreachable. */ - public unreachable: string[]; + /** EnumValueDescriptorProto number. */ + public number: number; - /** - * Creates a new ListMembershipsResponse instance using the specified properties. - * @param [properties] Properties to set - * @returns ListMembershipsResponse instance - */ - public static create(properties?: google.cloud.gkehub.v1beta1.IListMembershipsResponse): google.cloud.gkehub.v1beta1.ListMembershipsResponse; + /** EnumValueDescriptorProto options. */ + public options?: (google.protobuf.IEnumValueOptions|null); - /** - * Encodes the specified ListMembershipsResponse message. Does not implicitly {@link google.cloud.gkehub.v1beta1.ListMembershipsResponse.verify|verify} messages. - * @param message ListMembershipsResponse message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encode(message: google.cloud.gkehub.v1beta1.IListMembershipsResponse, writer?: $protobuf.Writer): $protobuf.Writer; + /** + * 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 ListMembershipsResponse message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta1.ListMembershipsResponse.verify|verify} messages. - * @param message ListMembershipsResponse message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encodeDelimited(message: google.cloud.gkehub.v1beta1.IListMembershipsResponse, writer?: $protobuf.Writer): $protobuf.Writer; + /** + * 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; - /** - * Decodes a ListMembershipsResponse message from the specified reader or buffer. - * @param reader Reader or buffer to decode from - * @param [length] Message length if known beforehand - * @returns ListMembershipsResponse - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.v1beta1.ListMembershipsResponse; + /** + * 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 a ListMembershipsResponse message from the specified reader or buffer, length delimited. - * @param reader Reader or buffer to decode from - * @returns ListMembershipsResponse - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.v1beta1.ListMembershipsResponse; + /** + * 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; - /** - * Verifies a ListMembershipsResponse message. - * @param message Plain object to verify - * @returns `null` if valid, otherwise the reason why it is not - */ - public static verify(message: { [k: string]: any }): (string|null); + /** + * 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; - /** - * Creates a ListMembershipsResponse message from a plain object. Also converts values to their respective internal types. - * @param object Plain object - * @returns ListMembershipsResponse - */ - public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.v1beta1.ListMembershipsResponse; + /** + * 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 a plain object from a ListMembershipsResponse message. Also converts values to other types if specified. - * @param message ListMembershipsResponse - * @param [options] Conversion options - * @returns Plain object - */ - public static toObject(message: google.cloud.gkehub.v1beta1.ListMembershipsResponse, options?: $protobuf.IConversionOptions): { [k: string]: any }; + /** + * 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; - /** - * Converts this ListMembershipsResponse to JSON. - * @returns JSON object - */ - public toJSON(): { [k: string]: any }; - } + /** + * 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 }; - /** Properties of a GetMembershipRequest. */ - interface IGetMembershipRequest { + /** + * Converts this EnumValueDescriptorProto to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } - /** GetMembershipRequest name */ - name?: (string|null); - } + /** Properties of a ServiceDescriptorProto. */ + interface IServiceDescriptorProto { - /** Represents a GetMembershipRequest. */ - class GetMembershipRequest implements IGetMembershipRequest { + /** ServiceDescriptorProto name */ + name?: (string|null); - /** - * Constructs a new GetMembershipRequest. - * @param [properties] Properties to set - */ - constructor(properties?: google.cloud.gkehub.v1beta1.IGetMembershipRequest); + /** ServiceDescriptorProto method */ + method?: (google.protobuf.IMethodDescriptorProto[]|null); - /** GetMembershipRequest name. */ - public name: string; + /** ServiceDescriptorProto options */ + options?: (google.protobuf.IServiceOptions|null); + } - /** - * Creates a new GetMembershipRequest instance using the specified properties. - * @param [properties] Properties to set - * @returns GetMembershipRequest instance - */ - public static create(properties?: google.cloud.gkehub.v1beta1.IGetMembershipRequest): google.cloud.gkehub.v1beta1.GetMembershipRequest; + /** Represents a ServiceDescriptorProto. */ + class ServiceDescriptorProto implements IServiceDescriptorProto { - /** - * Encodes the specified GetMembershipRequest message. Does not implicitly {@link google.cloud.gkehub.v1beta1.GetMembershipRequest.verify|verify} messages. - * @param message GetMembershipRequest message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encode(message: google.cloud.gkehub.v1beta1.IGetMembershipRequest, writer?: $protobuf.Writer): $protobuf.Writer; + /** + * Constructs a new ServiceDescriptorProto. + * @param [properties] Properties to set + */ + constructor(properties?: google.protobuf.IServiceDescriptorProto); - /** - * Encodes the specified GetMembershipRequest message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta1.GetMembershipRequest.verify|verify} messages. - * @param message GetMembershipRequest message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encodeDelimited(message: google.cloud.gkehub.v1beta1.IGetMembershipRequest, writer?: $protobuf.Writer): $protobuf.Writer; + /** ServiceDescriptorProto name. */ + public name: string; - /** - * Decodes a GetMembershipRequest message from the specified reader or buffer. - * @param reader Reader or buffer to decode from - * @param [length] Message length if known beforehand - * @returns GetMembershipRequest - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.v1beta1.GetMembershipRequest; + /** ServiceDescriptorProto method. */ + public method: google.protobuf.IMethodDescriptorProto[]; - /** - * Decodes a GetMembershipRequest message from the specified reader or buffer, length delimited. - * @param reader Reader or buffer to decode from - * @returns GetMembershipRequest - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.v1beta1.GetMembershipRequest; + /** ServiceDescriptorProto options. */ + public options?: (google.protobuf.IServiceOptions|null); - /** - * Verifies a GetMembershipRequest message. - * @param message Plain object to verify - * @returns `null` if valid, otherwise the reason why it is not - */ - public static verify(message: { [k: string]: any }): (string|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; - /** - * Creates a GetMembershipRequest message from a plain object. Also converts values to their respective internal types. - * @param object Plain object - * @returns GetMembershipRequest - */ - public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.v1beta1.GetMembershipRequest; + /** + * 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; - /** - * Creates a plain object from a GetMembershipRequest message. Also converts values to other types if specified. - * @param message GetMembershipRequest - * @param [options] Conversion options - * @returns Plain object - */ - public static toObject(message: google.cloud.gkehub.v1beta1.GetMembershipRequest, options?: $protobuf.IConversionOptions): { [k: string]: any }; + /** + * 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; - /** - * Converts this GetMembershipRequest to JSON. - * @returns JSON object - */ - public toJSON(): { [k: string]: any }; - } + /** + * 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; - /** Properties of a CreateMembershipRequest. */ - interface ICreateMembershipRequest { + /** + * 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; - /** CreateMembershipRequest parent */ - parent?: (string|null); + /** + * 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); - /** CreateMembershipRequest membershipId */ - membershipId?: (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; - /** CreateMembershipRequest resource */ - resource?: (google.cloud.gkehub.v1beta1.IMembership|null); - } + /** + * 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 }; - /** Represents a CreateMembershipRequest. */ - class CreateMembershipRequest implements ICreateMembershipRequest { + /** + * Converts this ServiceDescriptorProto to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } - /** - * Constructs a new CreateMembershipRequest. - * @param [properties] Properties to set - */ - constructor(properties?: google.cloud.gkehub.v1beta1.ICreateMembershipRequest); + /** Properties of a MethodDescriptorProto. */ + interface IMethodDescriptorProto { - /** CreateMembershipRequest parent. */ - public parent: string; + /** MethodDescriptorProto name */ + name?: (string|null); - /** CreateMembershipRequest membershipId. */ - public membershipId: string; + /** MethodDescriptorProto inputType */ + inputType?: (string|null); - /** CreateMembershipRequest resource. */ - public resource?: (google.cloud.gkehub.v1beta1.IMembership|null); + /** MethodDescriptorProto outputType */ + outputType?: (string|null); - /** - * Creates a new CreateMembershipRequest instance using the specified properties. - * @param [properties] Properties to set - * @returns CreateMembershipRequest instance - */ - public static create(properties?: google.cloud.gkehub.v1beta1.ICreateMembershipRequest): google.cloud.gkehub.v1beta1.CreateMembershipRequest; + /** MethodDescriptorProto options */ + options?: (google.protobuf.IMethodOptions|null); - /** - * Encodes the specified CreateMembershipRequest message. Does not implicitly {@link google.cloud.gkehub.v1beta1.CreateMembershipRequest.verify|verify} messages. - * @param message CreateMembershipRequest message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encode(message: google.cloud.gkehub.v1beta1.ICreateMembershipRequest, writer?: $protobuf.Writer): $protobuf.Writer; + /** MethodDescriptorProto clientStreaming */ + clientStreaming?: (boolean|null); - /** - * Encodes the specified CreateMembershipRequest message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta1.CreateMembershipRequest.verify|verify} messages. - * @param message CreateMembershipRequest message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encodeDelimited(message: google.cloud.gkehub.v1beta1.ICreateMembershipRequest, writer?: $protobuf.Writer): $protobuf.Writer; + /** MethodDescriptorProto serverStreaming */ + serverStreaming?: (boolean|null); + } - /** - * Decodes a CreateMembershipRequest message from the specified reader or buffer. - * @param reader Reader or buffer to decode from - * @param [length] Message length if known beforehand - * @returns CreateMembershipRequest - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.v1beta1.CreateMembershipRequest; + /** Represents a MethodDescriptorProto. */ + class MethodDescriptorProto implements IMethodDescriptorProto { - /** - * Decodes a CreateMembershipRequest message from the specified reader or buffer, length delimited. - * @param reader Reader or buffer to decode from - * @returns CreateMembershipRequest - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.v1beta1.CreateMembershipRequest; + /** + * Constructs a new MethodDescriptorProto. + * @param [properties] Properties to set + */ + constructor(properties?: google.protobuf.IMethodDescriptorProto); - /** - * Verifies a CreateMembershipRequest message. - * @param message Plain object to verify - * @returns `null` if valid, otherwise the reason why it is not - */ - public static verify(message: { [k: string]: any }): (string|null); + /** MethodDescriptorProto name. */ + public name: string; - /** - * Creates a CreateMembershipRequest message from a plain object. Also converts values to their respective internal types. - * @param object Plain object - * @returns CreateMembershipRequest - */ - public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.v1beta1.CreateMembershipRequest; + /** MethodDescriptorProto inputType. */ + public inputType: string; - /** - * Creates a plain object from a CreateMembershipRequest message. Also converts values to other types if specified. - * @param message CreateMembershipRequest - * @param [options] Conversion options - * @returns Plain object - */ - public static toObject(message: google.cloud.gkehub.v1beta1.CreateMembershipRequest, options?: $protobuf.IConversionOptions): { [k: string]: any }; + /** MethodDescriptorProto outputType. */ + public outputType: string; - /** - * Converts this CreateMembershipRequest to JSON. - * @returns JSON object - */ - public toJSON(): { [k: string]: any }; - } + /** MethodDescriptorProto options. */ + public options?: (google.protobuf.IMethodOptions|null); - /** Properties of a DeleteMembershipRequest. */ - interface IDeleteMembershipRequest { + /** MethodDescriptorProto clientStreaming. */ + public clientStreaming: boolean; - /** DeleteMembershipRequest name */ - name?: (string|null); - } + /** MethodDescriptorProto serverStreaming. */ + public serverStreaming: boolean; - /** Represents a DeleteMembershipRequest. */ - class DeleteMembershipRequest implements IDeleteMembershipRequest { + /** + * 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; - /** - * Constructs a new DeleteMembershipRequest. - * @param [properties] Properties to set - */ - constructor(properties?: google.cloud.gkehub.v1beta1.IDeleteMembershipRequest); + /** + * 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; - /** DeleteMembershipRequest name. */ - public name: string; + /** + * 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; - /** - * Creates a new DeleteMembershipRequest instance using the specified properties. - * @param [properties] Properties to set - * @returns DeleteMembershipRequest instance - */ - public static create(properties?: google.cloud.gkehub.v1beta1.IDeleteMembershipRequest): google.cloud.gkehub.v1beta1.DeleteMembershipRequest; + /** + * 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; - /** - * Encodes the specified DeleteMembershipRequest message. Does not implicitly {@link google.cloud.gkehub.v1beta1.DeleteMembershipRequest.verify|verify} messages. - * @param message DeleteMembershipRequest message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encode(message: google.cloud.gkehub.v1beta1.IDeleteMembershipRequest, writer?: $protobuf.Writer): $protobuf.Writer; + /** + * 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; - /** - * Encodes the specified DeleteMembershipRequest message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta1.DeleteMembershipRequest.verify|verify} messages. - * @param message DeleteMembershipRequest message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encodeDelimited(message: google.cloud.gkehub.v1beta1.IDeleteMembershipRequest, writer?: $protobuf.Writer): $protobuf.Writer; + /** + * 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); - /** - * Decodes a DeleteMembershipRequest message from the specified reader or buffer. - * @param reader Reader or buffer to decode from - * @param [length] Message length if known beforehand - * @returns DeleteMembershipRequest - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.v1beta1.DeleteMembershipRequest; + /** + * 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; - /** - * Decodes a DeleteMembershipRequest message from the specified reader or buffer, length delimited. - * @param reader Reader or buffer to decode from - * @returns DeleteMembershipRequest - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.v1beta1.DeleteMembershipRequest; + /** + * 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 }; - /** - * Verifies a DeleteMembershipRequest message. - * @param message Plain object to verify - * @returns `null` if valid, otherwise the reason why it is not - */ - public static verify(message: { [k: string]: any }): (string|null); + /** + * Converts this MethodDescriptorProto to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } - /** - * Creates a DeleteMembershipRequest message from a plain object. Also converts values to their respective internal types. - * @param object Plain object - * @returns DeleteMembershipRequest - */ - public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.v1beta1.DeleteMembershipRequest; + /** Properties of a FileOptions. */ + interface IFileOptions { - /** - * Creates a plain object from a DeleteMembershipRequest message. Also converts values to other types if specified. - * @param message DeleteMembershipRequest - * @param [options] Conversion options - * @returns Plain object - */ - public static toObject(message: google.cloud.gkehub.v1beta1.DeleteMembershipRequest, options?: $protobuf.IConversionOptions): { [k: string]: any }; + /** FileOptions javaPackage */ + javaPackage?: (string|null); - /** - * Converts this DeleteMembershipRequest to JSON. - * @returns JSON object - */ - public toJSON(): { [k: string]: any }; - } + /** FileOptions javaOuterClassname */ + javaOuterClassname?: (string|null); - /** Properties of an UpdateMembershipRequest. */ - interface IUpdateMembershipRequest { + /** FileOptions javaMultipleFiles */ + javaMultipleFiles?: (boolean|null); - /** UpdateMembershipRequest name */ - name?: (string|null); + /** FileOptions javaGenerateEqualsAndHash */ + javaGenerateEqualsAndHash?: (boolean|null); - /** UpdateMembershipRequest updateMask */ - updateMask?: (google.protobuf.IFieldMask|null); + /** FileOptions javaStringCheckUtf8 */ + javaStringCheckUtf8?: (boolean|null); - /** UpdateMembershipRequest resource */ - resource?: (google.cloud.gkehub.v1beta1.IMembership|null); - } + /** FileOptions optimizeFor */ + optimizeFor?: (google.protobuf.FileOptions.OptimizeMode|keyof typeof google.protobuf.FileOptions.OptimizeMode|null); - /** Represents an UpdateMembershipRequest. */ - class UpdateMembershipRequest implements IUpdateMembershipRequest { + /** FileOptions goPackage */ + goPackage?: (string|null); - /** - * Constructs a new UpdateMembershipRequest. - * @param [properties] Properties to set - */ - constructor(properties?: google.cloud.gkehub.v1beta1.IUpdateMembershipRequest); + /** FileOptions ccGenericServices */ + ccGenericServices?: (boolean|null); - /** UpdateMembershipRequest name. */ - public name: string; + /** FileOptions javaGenericServices */ + javaGenericServices?: (boolean|null); - /** UpdateMembershipRequest updateMask. */ - public updateMask?: (google.protobuf.IFieldMask|null); + /** FileOptions pyGenericServices */ + pyGenericServices?: (boolean|null); - /** UpdateMembershipRequest resource. */ - public resource?: (google.cloud.gkehub.v1beta1.IMembership|null); + /** FileOptions phpGenericServices */ + phpGenericServices?: (boolean|null); - /** - * Creates a new UpdateMembershipRequest instance using the specified properties. - * @param [properties] Properties to set - * @returns UpdateMembershipRequest instance - */ - public static create(properties?: google.cloud.gkehub.v1beta1.IUpdateMembershipRequest): google.cloud.gkehub.v1beta1.UpdateMembershipRequest; + /** FileOptions deprecated */ + deprecated?: (boolean|null); - /** - * Encodes the specified UpdateMembershipRequest message. Does not implicitly {@link google.cloud.gkehub.v1beta1.UpdateMembershipRequest.verify|verify} messages. - * @param message UpdateMembershipRequest message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encode(message: google.cloud.gkehub.v1beta1.IUpdateMembershipRequest, writer?: $protobuf.Writer): $protobuf.Writer; + /** FileOptions ccEnableArenas */ + ccEnableArenas?: (boolean|null); - /** - * Encodes the specified UpdateMembershipRequest message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta1.UpdateMembershipRequest.verify|verify} messages. - * @param message UpdateMembershipRequest message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encodeDelimited(message: google.cloud.gkehub.v1beta1.IUpdateMembershipRequest, writer?: $protobuf.Writer): $protobuf.Writer; + /** FileOptions objcClassPrefix */ + objcClassPrefix?: (string|null); - /** - * Decodes an UpdateMembershipRequest message from the specified reader or buffer. - * @param reader Reader or buffer to decode from - * @param [length] Message length if known beforehand - * @returns UpdateMembershipRequest - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.v1beta1.UpdateMembershipRequest; + /** FileOptions csharpNamespace */ + csharpNamespace?: (string|null); - /** - * Decodes an UpdateMembershipRequest message from the specified reader or buffer, length delimited. - * @param reader Reader or buffer to decode from - * @returns UpdateMembershipRequest - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.v1beta1.UpdateMembershipRequest; + /** FileOptions swiftPrefix */ + swiftPrefix?: (string|null); - /** - * Verifies an UpdateMembershipRequest message. - * @param message Plain object to verify - * @returns `null` if valid, otherwise the reason why it is not - */ - public static verify(message: { [k: string]: any }): (string|null); + /** FileOptions phpClassPrefix */ + phpClassPrefix?: (string|null); - /** - * Creates an UpdateMembershipRequest message from a plain object. Also converts values to their respective internal types. - * @param object Plain object - * @returns UpdateMembershipRequest - */ - public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.v1beta1.UpdateMembershipRequest; + /** FileOptions phpNamespace */ + phpNamespace?: (string|null); - /** - * Creates a plain object from an UpdateMembershipRequest message. Also converts values to other types if specified. - * @param message UpdateMembershipRequest - * @param [options] Conversion options - * @returns Plain object - */ - public static toObject(message: google.cloud.gkehub.v1beta1.UpdateMembershipRequest, options?: $protobuf.IConversionOptions): { [k: string]: any }; - - /** - * Converts this UpdateMembershipRequest to JSON. - * @returns JSON object - */ - public toJSON(): { [k: string]: any }; - } + /** FileOptions phpMetadataNamespace */ + phpMetadataNamespace?: (string|null); - /** Properties of a GenerateConnectManifestRequest. */ - interface IGenerateConnectManifestRequest { + /** FileOptions rubyPackage */ + rubyPackage?: (string|null); - /** GenerateConnectManifestRequest name */ - name?: (string|null); + /** FileOptions uninterpretedOption */ + uninterpretedOption?: (google.protobuf.IUninterpretedOption[]|null); - /** GenerateConnectManifestRequest connectAgent */ - connectAgent?: (google.cloud.gkehub.v1beta1.IConnectAgent|null); + /** FileOptions .google.api.resourceDefinition */ + ".google.api.resourceDefinition"?: (google.api.IResourceDescriptor[]|null); + } - /** GenerateConnectManifestRequest version */ - version?: (string|null); + /** Represents a FileOptions. */ + class FileOptions implements IFileOptions { - /** GenerateConnectManifestRequest isUpgrade */ - isUpgrade?: (boolean|null); + /** + * Constructs a new FileOptions. + * @param [properties] Properties to set + */ + constructor(properties?: google.protobuf.IFileOptions); - /** GenerateConnectManifestRequest registry */ - registry?: (string|null); + /** FileOptions javaPackage. */ + public javaPackage: string; - /** GenerateConnectManifestRequest imagePullSecretContent */ - imagePullSecretContent?: (Uint8Array|string|null); - } + /** FileOptions javaOuterClassname. */ + public javaOuterClassname: string; - /** Represents a GenerateConnectManifestRequest. */ - class GenerateConnectManifestRequest implements IGenerateConnectManifestRequest { + /** FileOptions javaMultipleFiles. */ + public javaMultipleFiles: boolean; - /** - * Constructs a new GenerateConnectManifestRequest. - * @param [properties] Properties to set - */ - constructor(properties?: google.cloud.gkehub.v1beta1.IGenerateConnectManifestRequest); + /** FileOptions javaGenerateEqualsAndHash. */ + public javaGenerateEqualsAndHash: boolean; - /** GenerateConnectManifestRequest name. */ - public name: string; + /** FileOptions javaStringCheckUtf8. */ + public javaStringCheckUtf8: boolean; - /** GenerateConnectManifestRequest connectAgent. */ - public connectAgent?: (google.cloud.gkehub.v1beta1.IConnectAgent|null); + /** FileOptions optimizeFor. */ + public optimizeFor: (google.protobuf.FileOptions.OptimizeMode|keyof typeof google.protobuf.FileOptions.OptimizeMode); - /** GenerateConnectManifestRequest version. */ - public version: string; + /** FileOptions goPackage. */ + public goPackage: string; - /** GenerateConnectManifestRequest isUpgrade. */ - public isUpgrade: boolean; + /** FileOptions ccGenericServices. */ + public ccGenericServices: boolean; - /** GenerateConnectManifestRequest registry. */ - public registry: string; + /** FileOptions javaGenericServices. */ + public javaGenericServices: boolean; - /** GenerateConnectManifestRequest imagePullSecretContent. */ - public imagePullSecretContent: (Uint8Array|string); + /** FileOptions pyGenericServices. */ + public pyGenericServices: boolean; - /** - * Creates a new GenerateConnectManifestRequest instance using the specified properties. - * @param [properties] Properties to set - * @returns GenerateConnectManifestRequest instance - */ - public static create(properties?: google.cloud.gkehub.v1beta1.IGenerateConnectManifestRequest): google.cloud.gkehub.v1beta1.GenerateConnectManifestRequest; + /** FileOptions phpGenericServices. */ + public phpGenericServices: boolean; - /** - * Encodes the specified GenerateConnectManifestRequest message. Does not implicitly {@link google.cloud.gkehub.v1beta1.GenerateConnectManifestRequest.verify|verify} messages. - * @param message GenerateConnectManifestRequest message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encode(message: google.cloud.gkehub.v1beta1.IGenerateConnectManifestRequest, writer?: $protobuf.Writer): $protobuf.Writer; + /** FileOptions deprecated. */ + public deprecated: boolean; - /** - * Encodes the specified GenerateConnectManifestRequest message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta1.GenerateConnectManifestRequest.verify|verify} messages. - * @param message GenerateConnectManifestRequest message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encodeDelimited(message: google.cloud.gkehub.v1beta1.IGenerateConnectManifestRequest, writer?: $protobuf.Writer): $protobuf.Writer; + /** FileOptions ccEnableArenas. */ + public ccEnableArenas: boolean; - /** - * Decodes a GenerateConnectManifestRequest message from the specified reader or buffer. - * @param reader Reader or buffer to decode from - * @param [length] Message length if known beforehand - * @returns GenerateConnectManifestRequest - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.v1beta1.GenerateConnectManifestRequest; + /** FileOptions objcClassPrefix. */ + public objcClassPrefix: string; - /** - * Decodes a GenerateConnectManifestRequest message from the specified reader or buffer, length delimited. - * @param reader Reader or buffer to decode from - * @returns GenerateConnectManifestRequest - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.v1beta1.GenerateConnectManifestRequest; + /** FileOptions csharpNamespace. */ + public csharpNamespace: string; - /** - * Verifies a GenerateConnectManifestRequest message. - * @param message Plain object to verify - * @returns `null` if valid, otherwise the reason why it is not - */ - public static verify(message: { [k: string]: any }): (string|null); + /** FileOptions swiftPrefix. */ + public swiftPrefix: string; - /** - * Creates a GenerateConnectManifestRequest message from a plain object. Also converts values to their respective internal types. - * @param object Plain object - * @returns GenerateConnectManifestRequest - */ - public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.v1beta1.GenerateConnectManifestRequest; + /** FileOptions phpClassPrefix. */ + public phpClassPrefix: string; - /** - * Creates a plain object from a GenerateConnectManifestRequest message. Also converts values to other types if specified. - * @param message GenerateConnectManifestRequest - * @param [options] Conversion options - * @returns Plain object - */ - public static toObject(message: google.cloud.gkehub.v1beta1.GenerateConnectManifestRequest, options?: $protobuf.IConversionOptions): { [k: string]: any }; + /** FileOptions phpNamespace. */ + public phpNamespace: string; - /** - * Converts this GenerateConnectManifestRequest to JSON. - * @returns JSON object - */ - public toJSON(): { [k: string]: any }; - } + /** FileOptions phpMetadataNamespace. */ + public phpMetadataNamespace: string; - /** Properties of a GenerateConnectManifestResponse. */ - interface IGenerateConnectManifestResponse { + /** FileOptions rubyPackage. */ + public rubyPackage: string; - /** GenerateConnectManifestResponse manifest */ - manifest?: (google.cloud.gkehub.v1beta1.IConnectAgentResource[]|null); - } + /** FileOptions uninterpretedOption. */ + public uninterpretedOption: google.protobuf.IUninterpretedOption[]; - /** Represents a GenerateConnectManifestResponse. */ - class GenerateConnectManifestResponse implements IGenerateConnectManifestResponse { + /** + * 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; - /** - * Constructs a new GenerateConnectManifestResponse. - * @param [properties] Properties to set - */ - constructor(properties?: google.cloud.gkehub.v1beta1.IGenerateConnectManifestResponse); + /** + * 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; - /** GenerateConnectManifestResponse manifest. */ - public manifest: google.cloud.gkehub.v1beta1.IConnectAgentResource[]; + /** + * 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; - /** - * Creates a new GenerateConnectManifestResponse instance using the specified properties. - * @param [properties] Properties to set - * @returns GenerateConnectManifestResponse instance - */ - public static create(properties?: google.cloud.gkehub.v1beta1.IGenerateConnectManifestResponse): google.cloud.gkehub.v1beta1.GenerateConnectManifestResponse; + /** + * 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; - /** - * Encodes the specified GenerateConnectManifestResponse message. Does not implicitly {@link google.cloud.gkehub.v1beta1.GenerateConnectManifestResponse.verify|verify} messages. - * @param message GenerateConnectManifestResponse message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encode(message: google.cloud.gkehub.v1beta1.IGenerateConnectManifestResponse, writer?: $protobuf.Writer): $protobuf.Writer; + /** + * 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; - /** - * Encodes the specified GenerateConnectManifestResponse message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta1.GenerateConnectManifestResponse.verify|verify} messages. - * @param message GenerateConnectManifestResponse message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encodeDelimited(message: google.cloud.gkehub.v1beta1.IGenerateConnectManifestResponse, writer?: $protobuf.Writer): $protobuf.Writer; + /** + * 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); - /** - * Decodes a GenerateConnectManifestResponse message from the specified reader or buffer. - * @param reader Reader or buffer to decode from - * @param [length] Message length if known beforehand - * @returns GenerateConnectManifestResponse - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.v1beta1.GenerateConnectManifestResponse; + /** + * 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; - /** - * Decodes a GenerateConnectManifestResponse message from the specified reader or buffer, length delimited. - * @param reader Reader or buffer to decode from - * @returns GenerateConnectManifestResponse - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.v1beta1.GenerateConnectManifestResponse; + /** + * 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 }; - /** - * Verifies a GenerateConnectManifestResponse message. - * @param message Plain object to verify - * @returns `null` if valid, otherwise the reason why it is not - */ - public static verify(message: { [k: string]: any }): (string|null); + /** + * Converts this FileOptions to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } - /** - * Creates a GenerateConnectManifestResponse message from a plain object. Also converts values to their respective internal types. - * @param object Plain object - * @returns GenerateConnectManifestResponse - */ - public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.v1beta1.GenerateConnectManifestResponse; + namespace FileOptions { - /** - * Creates a plain object from a GenerateConnectManifestResponse message. Also converts values to other types if specified. - * @param message GenerateConnectManifestResponse - * @param [options] Conversion options - * @returns Plain object - */ - public static toObject(message: google.cloud.gkehub.v1beta1.GenerateConnectManifestResponse, options?: $protobuf.IConversionOptions): { [k: string]: any }; + /** OptimizeMode enum. */ + enum OptimizeMode { + SPEED = 1, + CODE_SIZE = 2, + LITE_RUNTIME = 3 + } + } - /** - * Converts this GenerateConnectManifestResponse to JSON. - * @returns JSON object - */ - public toJSON(): { [k: string]: any }; - } + /** Properties of a MessageOptions. */ + interface IMessageOptions { - /** Properties of a ConnectAgentResource. */ - interface IConnectAgentResource { + /** MessageOptions messageSetWireFormat */ + messageSetWireFormat?: (boolean|null); - /** ConnectAgentResource type */ - type?: (google.cloud.gkehub.v1beta1.ITypeMeta|null); + /** MessageOptions noStandardDescriptorAccessor */ + noStandardDescriptorAccessor?: (boolean|null); - /** ConnectAgentResource manifest */ - manifest?: (string|null); - } + /** MessageOptions deprecated */ + deprecated?: (boolean|null); - /** Represents a ConnectAgentResource. */ - class ConnectAgentResource implements IConnectAgentResource { + /** MessageOptions mapEntry */ + mapEntry?: (boolean|null); - /** - * Constructs a new ConnectAgentResource. - * @param [properties] Properties to set - */ - constructor(properties?: google.cloud.gkehub.v1beta1.IConnectAgentResource); + /** MessageOptions uninterpretedOption */ + uninterpretedOption?: (google.protobuf.IUninterpretedOption[]|null); - /** ConnectAgentResource type. */ - public type?: (google.cloud.gkehub.v1beta1.ITypeMeta|null); + /** MessageOptions .google.api.resource */ + ".google.api.resource"?: (google.api.IResourceDescriptor|null); + } - /** ConnectAgentResource manifest. */ - public manifest: string; + /** Represents a MessageOptions. */ + class MessageOptions implements IMessageOptions { - /** - * Creates a new ConnectAgentResource instance using the specified properties. - * @param [properties] Properties to set - * @returns ConnectAgentResource instance - */ - public static create(properties?: google.cloud.gkehub.v1beta1.IConnectAgentResource): google.cloud.gkehub.v1beta1.ConnectAgentResource; + /** + * Constructs a new MessageOptions. + * @param [properties] Properties to set + */ + constructor(properties?: google.protobuf.IMessageOptions); - /** - * Encodes the specified ConnectAgentResource message. Does not implicitly {@link google.cloud.gkehub.v1beta1.ConnectAgentResource.verify|verify} messages. - * @param message ConnectAgentResource message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encode(message: google.cloud.gkehub.v1beta1.IConnectAgentResource, writer?: $protobuf.Writer): $protobuf.Writer; + /** MessageOptions messageSetWireFormat. */ + public messageSetWireFormat: boolean; - /** - * Encodes the specified ConnectAgentResource message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta1.ConnectAgentResource.verify|verify} messages. - * @param message ConnectAgentResource message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encodeDelimited(message: google.cloud.gkehub.v1beta1.IConnectAgentResource, writer?: $protobuf.Writer): $protobuf.Writer; + /** MessageOptions noStandardDescriptorAccessor. */ + public noStandardDescriptorAccessor: boolean; - /** - * Decodes a ConnectAgentResource message from the specified reader or buffer. - * @param reader Reader or buffer to decode from - * @param [length] Message length if known beforehand - * @returns ConnectAgentResource - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.v1beta1.ConnectAgentResource; + /** MessageOptions deprecated. */ + public deprecated: boolean; - /** - * Decodes a ConnectAgentResource message from the specified reader or buffer, length delimited. - * @param reader Reader or buffer to decode from - * @returns ConnectAgentResource - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.v1beta1.ConnectAgentResource; + /** MessageOptions mapEntry. */ + public mapEntry: boolean; - /** - * Verifies a ConnectAgentResource message. - * @param message Plain object to verify - * @returns `null` if valid, otherwise the reason why it is not - */ - public static verify(message: { [k: string]: any }): (string|null); + /** MessageOptions uninterpretedOption. */ + public uninterpretedOption: google.protobuf.IUninterpretedOption[]; - /** - * Creates a ConnectAgentResource message from a plain object. Also converts values to their respective internal types. - * @param object Plain object - * @returns ConnectAgentResource - */ - public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.v1beta1.ConnectAgentResource; + /** + * 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; - /** - * Creates a plain object from a ConnectAgentResource message. Also converts values to other types if specified. - * @param message ConnectAgentResource - * @param [options] Conversion options - * @returns Plain object - */ - public static toObject(message: google.cloud.gkehub.v1beta1.ConnectAgentResource, options?: $protobuf.IConversionOptions): { [k: string]: any }; + /** + * 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; - /** - * Converts this ConnectAgentResource to JSON. - * @returns JSON object - */ - public toJSON(): { [k: string]: any }; - } + /** + * 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; - /** Properties of a TypeMeta. */ - interface ITypeMeta { + /** + * 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; - /** TypeMeta kind */ - kind?: (string|null); + /** + * 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; - /** TypeMeta apiVersion */ - apiVersion?: (string|null); - } + /** + * 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); - /** Represents a TypeMeta. */ - class TypeMeta implements ITypeMeta { + /** + * 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; - /** - * Constructs a new TypeMeta. - * @param [properties] Properties to set - */ - constructor(properties?: google.cloud.gkehub.v1beta1.ITypeMeta); + /** + * 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 }; - /** TypeMeta kind. */ - public kind: string; + /** + * Converts this MessageOptions to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } - /** TypeMeta apiVersion. */ - public apiVersion: string; + /** Properties of a FieldOptions. */ + interface IFieldOptions { - /** - * Creates a new TypeMeta instance using the specified properties. - * @param [properties] Properties to set - * @returns TypeMeta instance - */ - public static create(properties?: google.cloud.gkehub.v1beta1.ITypeMeta): google.cloud.gkehub.v1beta1.TypeMeta; + /** FieldOptions ctype */ + ctype?: (google.protobuf.FieldOptions.CType|keyof typeof google.protobuf.FieldOptions.CType|null); - /** - * Encodes the specified TypeMeta message. Does not implicitly {@link google.cloud.gkehub.v1beta1.TypeMeta.verify|verify} messages. - * @param message TypeMeta message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encode(message: google.cloud.gkehub.v1beta1.ITypeMeta, writer?: $protobuf.Writer): $protobuf.Writer; - - /** - * Encodes the specified TypeMeta message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta1.TypeMeta.verify|verify} messages. - * @param message TypeMeta message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encodeDelimited(message: google.cloud.gkehub.v1beta1.ITypeMeta, writer?: $protobuf.Writer): $protobuf.Writer; - - /** - * Decodes a TypeMeta message from the specified reader or buffer. - * @param reader Reader or buffer to decode from - * @param [length] Message length if known beforehand - * @returns TypeMeta - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.v1beta1.TypeMeta; + /** FieldOptions packed */ + packed?: (boolean|null); - /** - * Decodes a TypeMeta message from the specified reader or buffer, length delimited. - * @param reader Reader or buffer to decode from - * @returns TypeMeta - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.v1beta1.TypeMeta; + /** FieldOptions jstype */ + jstype?: (google.protobuf.FieldOptions.JSType|keyof typeof google.protobuf.FieldOptions.JSType|null); - /** - * Verifies a TypeMeta message. - * @param message Plain object to verify - * @returns `null` if valid, otherwise the reason why it is not - */ - public static verify(message: { [k: string]: any }): (string|null); + /** FieldOptions lazy */ + lazy?: (boolean|null); - /** - * Creates a TypeMeta message from a plain object. Also converts values to their respective internal types. - * @param object Plain object - * @returns TypeMeta - */ - public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.v1beta1.TypeMeta; + /** FieldOptions deprecated */ + deprecated?: (boolean|null); - /** - * Creates a plain object from a TypeMeta message. Also converts values to other types if specified. - * @param message TypeMeta - * @param [options] Conversion options - * @returns Plain object - */ - public static toObject(message: google.cloud.gkehub.v1beta1.TypeMeta, options?: $protobuf.IConversionOptions): { [k: string]: any }; + /** FieldOptions weak */ + weak?: (boolean|null); - /** - * Converts this TypeMeta to JSON. - * @returns JSON object - */ - public toJSON(): { [k: string]: any }; - } + /** FieldOptions uninterpretedOption */ + uninterpretedOption?: (google.protobuf.IUninterpretedOption[]|null); - /** Properties of a ConnectAgent. */ - interface IConnectAgent { + /** FieldOptions .google.api.fieldBehavior */ + ".google.api.fieldBehavior"?: (google.api.FieldBehavior[]|null); - /** ConnectAgent name */ - name?: (string|null); + /** FieldOptions .google.api.resourceReference */ + ".google.api.resourceReference"?: (google.api.IResourceReference|null); + } - /** ConnectAgent proxy */ - proxy?: (Uint8Array|string|null); + /** Represents a FieldOptions. */ + class FieldOptions implements IFieldOptions { - /** ConnectAgent namespace */ - namespace?: (string|null); - } + /** + * Constructs a new FieldOptions. + * @param [properties] Properties to set + */ + constructor(properties?: google.protobuf.IFieldOptions); - /** Represents a ConnectAgent. */ - class ConnectAgent implements IConnectAgent { + /** FieldOptions ctype. */ + public ctype: (google.protobuf.FieldOptions.CType|keyof typeof google.protobuf.FieldOptions.CType); - /** - * Constructs a new ConnectAgent. - * @param [properties] Properties to set - */ - constructor(properties?: google.cloud.gkehub.v1beta1.IConnectAgent); + /** FieldOptions packed. */ + public packed: boolean; - /** ConnectAgent name. */ - public name: string; + /** FieldOptions jstype. */ + public jstype: (google.protobuf.FieldOptions.JSType|keyof typeof google.protobuf.FieldOptions.JSType); - /** ConnectAgent proxy. */ - public proxy: (Uint8Array|string); + /** FieldOptions lazy. */ + public lazy: boolean; - /** ConnectAgent namespace. */ - public namespace: string; + /** FieldOptions deprecated. */ + public deprecated: boolean; - /** - * Creates a new ConnectAgent instance using the specified properties. - * @param [properties] Properties to set - * @returns ConnectAgent instance - */ - public static create(properties?: google.cloud.gkehub.v1beta1.IConnectAgent): google.cloud.gkehub.v1beta1.ConnectAgent; + /** FieldOptions weak. */ + public weak: boolean; - /** - * Encodes the specified ConnectAgent message. Does not implicitly {@link google.cloud.gkehub.v1beta1.ConnectAgent.verify|verify} messages. - * @param message ConnectAgent message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encode(message: google.cloud.gkehub.v1beta1.IConnectAgent, writer?: $protobuf.Writer): $protobuf.Writer; + /** FieldOptions uninterpretedOption. */ + public uninterpretedOption: google.protobuf.IUninterpretedOption[]; - /** - * Encodes the specified ConnectAgent message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta1.ConnectAgent.verify|verify} messages. - * @param message ConnectAgent message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encodeDelimited(message: google.cloud.gkehub.v1beta1.IConnectAgent, writer?: $protobuf.Writer): $protobuf.Writer; + /** + * 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; - /** - * Decodes a ConnectAgent message from the specified reader or buffer. - * @param reader Reader or buffer to decode from - * @param [length] Message length if known beforehand - * @returns ConnectAgent - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.v1beta1.ConnectAgent; + /** + * 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; - /** - * Decodes a ConnectAgent message from the specified reader or buffer, length delimited. - * @param reader Reader or buffer to decode from - * @returns ConnectAgent - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.v1beta1.ConnectAgent; + /** + * 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; - /** - * Verifies a ConnectAgent message. - * @param message Plain object to verify - * @returns `null` if valid, otherwise the reason why it is not - */ - public static verify(message: { [k: string]: any }): (string|null); + /** + * 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; - /** - * Creates a ConnectAgent message from a plain object. Also converts values to their respective internal types. - * @param object Plain object - * @returns ConnectAgent - */ - public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.v1beta1.ConnectAgent; + /** + * 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; - /** - * Creates a plain object from a ConnectAgent message. Also converts values to other types if specified. - * @param message ConnectAgent - * @param [options] Conversion options - * @returns Plain object - */ - public static toObject(message: google.cloud.gkehub.v1beta1.ConnectAgent, options?: $protobuf.IConversionOptions): { [k: string]: any }; + /** + * 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); - /** - * Converts this ConnectAgent to JSON. - * @returns JSON object - */ - public toJSON(): { [k: string]: any }; - } + /** + * 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; - /** Properties of a ValidateExclusivityRequest. */ - interface IValidateExclusivityRequest { + /** + * 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 }; - /** ValidateExclusivityRequest parent */ - parent?: (string|null); + /** + * Converts this FieldOptions to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } - /** ValidateExclusivityRequest crManifest */ - crManifest?: (string|null); + namespace FieldOptions { - /** ValidateExclusivityRequest intendedMembership */ - intendedMembership?: (string|null); - } + /** CType enum. */ + enum CType { + STRING = 0, + CORD = 1, + STRING_PIECE = 2 + } - /** Represents a ValidateExclusivityRequest. */ - class ValidateExclusivityRequest implements IValidateExclusivityRequest { + /** JSType enum. */ + enum JSType { + JS_NORMAL = 0, + JS_STRING = 1, + JS_NUMBER = 2 + } + } - /** - * Constructs a new ValidateExclusivityRequest. - * @param [properties] Properties to set - */ - constructor(properties?: google.cloud.gkehub.v1beta1.IValidateExclusivityRequest); + /** Properties of an OneofOptions. */ + interface IOneofOptions { - /** ValidateExclusivityRequest parent. */ - public parent: string; + /** OneofOptions uninterpretedOption */ + uninterpretedOption?: (google.protobuf.IUninterpretedOption[]|null); + } - /** ValidateExclusivityRequest crManifest. */ - public crManifest: string; + /** Represents an OneofOptions. */ + class OneofOptions implements IOneofOptions { - /** ValidateExclusivityRequest intendedMembership. */ - public intendedMembership: string; + /** + * Constructs a new OneofOptions. + * @param [properties] Properties to set + */ + constructor(properties?: google.protobuf.IOneofOptions); - /** - * Creates a new ValidateExclusivityRequest instance using the specified properties. - * @param [properties] Properties to set - * @returns ValidateExclusivityRequest instance - */ - public static create(properties?: google.cloud.gkehub.v1beta1.IValidateExclusivityRequest): google.cloud.gkehub.v1beta1.ValidateExclusivityRequest; + /** OneofOptions uninterpretedOption. */ + public uninterpretedOption: google.protobuf.IUninterpretedOption[]; - /** - * Encodes the specified ValidateExclusivityRequest message. Does not implicitly {@link google.cloud.gkehub.v1beta1.ValidateExclusivityRequest.verify|verify} messages. - * @param message ValidateExclusivityRequest message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encode(message: google.cloud.gkehub.v1beta1.IValidateExclusivityRequest, writer?: $protobuf.Writer): $protobuf.Writer; + /** + * 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 ValidateExclusivityRequest message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta1.ValidateExclusivityRequest.verify|verify} messages. - * @param message ValidateExclusivityRequest message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encodeDelimited(message: google.cloud.gkehub.v1beta1.IValidateExclusivityRequest, writer?: $protobuf.Writer): $protobuf.Writer; + /** + * 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; - /** - * Decodes a ValidateExclusivityRequest message from the specified reader or buffer. - * @param reader Reader or buffer to decode from - * @param [length] Message length if known beforehand - * @returns ValidateExclusivityRequest - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.v1beta1.ValidateExclusivityRequest; + /** + * 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 a ValidateExclusivityRequest message from the specified reader or buffer, length delimited. - * @param reader Reader or buffer to decode from - * @returns ValidateExclusivityRequest - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.v1beta1.ValidateExclusivityRequest; + /** + * 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; - /** - * Verifies a ValidateExclusivityRequest message. - * @param message Plain object to verify - * @returns `null` if valid, otherwise the reason why it is not - */ - public static verify(message: { [k: string]: any }): (string|null); + /** + * 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; - /** - * Creates a ValidateExclusivityRequest message from a plain object. Also converts values to their respective internal types. - * @param object Plain object - * @returns ValidateExclusivityRequest - */ - public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.v1beta1.ValidateExclusivityRequest; + /** + * 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 a plain object from a ValidateExclusivityRequest message. Also converts values to other types if specified. - * @param message ValidateExclusivityRequest - * @param [options] Conversion options - * @returns Plain object - */ - public static toObject(message: google.cloud.gkehub.v1beta1.ValidateExclusivityRequest, options?: $protobuf.IConversionOptions): { [k: string]: any }; + /** + * 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; - /** - * Converts this ValidateExclusivityRequest to JSON. - * @returns JSON object - */ - public toJSON(): { [k: string]: any }; - } + /** + * 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 }; - /** Properties of a ValidateExclusivityResponse. */ - interface IValidateExclusivityResponse { + /** + * Converts this OneofOptions to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } - /** ValidateExclusivityResponse status */ - status?: (google.rpc.IStatus|null); - } + /** Properties of an EnumOptions. */ + interface IEnumOptions { - /** Represents a ValidateExclusivityResponse. */ - class ValidateExclusivityResponse implements IValidateExclusivityResponse { + /** EnumOptions allowAlias */ + allowAlias?: (boolean|null); - /** - * Constructs a new ValidateExclusivityResponse. - * @param [properties] Properties to set - */ - constructor(properties?: google.cloud.gkehub.v1beta1.IValidateExclusivityResponse); + /** EnumOptions deprecated */ + deprecated?: (boolean|null); - /** ValidateExclusivityResponse status. */ - public status?: (google.rpc.IStatus|null); + /** EnumOptions uninterpretedOption */ + uninterpretedOption?: (google.protobuf.IUninterpretedOption[]|null); + } - /** - * Creates a new ValidateExclusivityResponse instance using the specified properties. - * @param [properties] Properties to set - * @returns ValidateExclusivityResponse instance - */ - public static create(properties?: google.cloud.gkehub.v1beta1.IValidateExclusivityResponse): google.cloud.gkehub.v1beta1.ValidateExclusivityResponse; + /** Represents an EnumOptions. */ + class EnumOptions implements IEnumOptions { - /** - * Encodes the specified ValidateExclusivityResponse message. Does not implicitly {@link google.cloud.gkehub.v1beta1.ValidateExclusivityResponse.verify|verify} messages. - * @param message ValidateExclusivityResponse message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encode(message: google.cloud.gkehub.v1beta1.IValidateExclusivityResponse, writer?: $protobuf.Writer): $protobuf.Writer; + /** + * Constructs a new EnumOptions. + * @param [properties] Properties to set + */ + constructor(properties?: google.protobuf.IEnumOptions); - /** - * Encodes the specified ValidateExclusivityResponse message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta1.ValidateExclusivityResponse.verify|verify} messages. - * @param message ValidateExclusivityResponse message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encodeDelimited(message: google.cloud.gkehub.v1beta1.IValidateExclusivityResponse, writer?: $protobuf.Writer): $protobuf.Writer; + /** EnumOptions allowAlias. */ + public allowAlias: boolean; - /** - * Decodes a ValidateExclusivityResponse message from the specified reader or buffer. - * @param reader Reader or buffer to decode from - * @param [length] Message length if known beforehand - * @returns ValidateExclusivityResponse - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.v1beta1.ValidateExclusivityResponse; + /** EnumOptions deprecated. */ + public deprecated: boolean; - /** - * Decodes a ValidateExclusivityResponse message from the specified reader or buffer, length delimited. - * @param reader Reader or buffer to decode from - * @returns ValidateExclusivityResponse - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.v1beta1.ValidateExclusivityResponse; + /** EnumOptions uninterpretedOption. */ + public uninterpretedOption: google.protobuf.IUninterpretedOption[]; - /** - * Verifies a ValidateExclusivityResponse message. - * @param message Plain object to verify - * @returns `null` if valid, otherwise the reason why it is not - */ - public static verify(message: { [k: string]: any }): (string|null); + /** + * 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; - /** - * Creates a ValidateExclusivityResponse message from a plain object. Also converts values to their respective internal types. - * @param object Plain object - * @returns ValidateExclusivityResponse - */ - public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.v1beta1.ValidateExclusivityResponse; + /** + * 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; - /** - * Creates a plain object from a ValidateExclusivityResponse message. Also converts values to other types if specified. - * @param message ValidateExclusivityResponse - * @param [options] Conversion options - * @returns Plain object - */ - public static toObject(message: google.cloud.gkehub.v1beta1.ValidateExclusivityResponse, options?: $protobuf.IConversionOptions): { [k: string]: any }; + /** + * 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; - /** - * Converts this ValidateExclusivityResponse to JSON. - * @returns JSON object - */ - public toJSON(): { [k: string]: any }; - } + /** + * 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; - /** Properties of a GenerateExclusivityManifestRequest. */ - interface IGenerateExclusivityManifestRequest { + /** + * 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; - /** GenerateExclusivityManifestRequest name */ - name?: (string|null); + /** + * 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); - /** GenerateExclusivityManifestRequest crdManifest */ - crdManifest?: (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; - /** GenerateExclusivityManifestRequest crManifest */ - crManifest?: (string|null); - } + /** + * 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 }; - /** Represents a GenerateExclusivityManifestRequest. */ - class GenerateExclusivityManifestRequest implements IGenerateExclusivityManifestRequest { + /** + * Converts this EnumOptions to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } - /** - * Constructs a new GenerateExclusivityManifestRequest. - * @param [properties] Properties to set - */ - constructor(properties?: google.cloud.gkehub.v1beta1.IGenerateExclusivityManifestRequest); + /** Properties of an EnumValueOptions. */ + interface IEnumValueOptions { - /** GenerateExclusivityManifestRequest name. */ - public name: string; + /** EnumValueOptions deprecated */ + deprecated?: (boolean|null); - /** GenerateExclusivityManifestRequest crdManifest. */ - public crdManifest: string; + /** EnumValueOptions uninterpretedOption */ + uninterpretedOption?: (google.protobuf.IUninterpretedOption[]|null); + } - /** GenerateExclusivityManifestRequest crManifest. */ - public crManifest: string; + /** Represents an EnumValueOptions. */ + class EnumValueOptions implements IEnumValueOptions { - /** - * Creates a new GenerateExclusivityManifestRequest instance using the specified properties. - * @param [properties] Properties to set - * @returns GenerateExclusivityManifestRequest instance - */ - public static create(properties?: google.cloud.gkehub.v1beta1.IGenerateExclusivityManifestRequest): google.cloud.gkehub.v1beta1.GenerateExclusivityManifestRequest; + /** + * Constructs a new EnumValueOptions. + * @param [properties] Properties to set + */ + constructor(properties?: google.protobuf.IEnumValueOptions); - /** - * Encodes the specified GenerateExclusivityManifestRequest message. Does not implicitly {@link google.cloud.gkehub.v1beta1.GenerateExclusivityManifestRequest.verify|verify} messages. - * @param message GenerateExclusivityManifestRequest message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encode(message: google.cloud.gkehub.v1beta1.IGenerateExclusivityManifestRequest, writer?: $protobuf.Writer): $protobuf.Writer; + /** EnumValueOptions deprecated. */ + public deprecated: boolean; - /** - * Encodes the specified GenerateExclusivityManifestRequest message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta1.GenerateExclusivityManifestRequest.verify|verify} messages. - * @param message GenerateExclusivityManifestRequest message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encodeDelimited(message: google.cloud.gkehub.v1beta1.IGenerateExclusivityManifestRequest, writer?: $protobuf.Writer): $protobuf.Writer; + /** EnumValueOptions uninterpretedOption. */ + public uninterpretedOption: google.protobuf.IUninterpretedOption[]; - /** - * Decodes a GenerateExclusivityManifestRequest message from the specified reader or buffer. - * @param reader Reader or buffer to decode from - * @param [length] Message length if known beforehand - * @returns GenerateExclusivityManifestRequest - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.v1beta1.GenerateExclusivityManifestRequest; + /** + * 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; - /** - * Decodes a GenerateExclusivityManifestRequest message from the specified reader or buffer, length delimited. - * @param reader Reader or buffer to decode from - * @returns GenerateExclusivityManifestRequest - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.v1beta1.GenerateExclusivityManifestRequest; + /** + * 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; - /** - * Verifies a GenerateExclusivityManifestRequest message. - * @param message Plain object to verify - * @returns `null` if valid, otherwise the reason why it is not - */ - public static verify(message: { [k: string]: any }): (string|null); + /** + * 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; - /** - * Creates a GenerateExclusivityManifestRequest message from a plain object. Also converts values to their respective internal types. - * @param object Plain object - * @returns GenerateExclusivityManifestRequest - */ - public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.v1beta1.GenerateExclusivityManifestRequest; + /** + * 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; - /** - * Creates a plain object from a GenerateExclusivityManifestRequest message. Also converts values to other types if specified. - * @param message GenerateExclusivityManifestRequest - * @param [options] Conversion options - * @returns Plain object - */ - public static toObject(message: google.cloud.gkehub.v1beta1.GenerateExclusivityManifestRequest, options?: $protobuf.IConversionOptions): { [k: string]: any }; + /** + * 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; - /** - * Converts this GenerateExclusivityManifestRequest to JSON. - * @returns JSON object - */ - public toJSON(): { [k: string]: any }; - } + /** + * 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); - /** Properties of a GenerateExclusivityManifestResponse. */ - interface IGenerateExclusivityManifestResponse { + /** + * 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; - /** GenerateExclusivityManifestResponse crdManifest */ - crdManifest?: (string|null); + /** + * 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 }; - /** GenerateExclusivityManifestResponse crManifest */ - crManifest?: (string|null); - } + /** + * Converts this EnumValueOptions to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } - /** Represents a GenerateExclusivityManifestResponse. */ - class GenerateExclusivityManifestResponse implements IGenerateExclusivityManifestResponse { + /** Properties of a ServiceOptions. */ + interface IServiceOptions { - /** - * Constructs a new GenerateExclusivityManifestResponse. - * @param [properties] Properties to set - */ - constructor(properties?: google.cloud.gkehub.v1beta1.IGenerateExclusivityManifestResponse); + /** ServiceOptions deprecated */ + deprecated?: (boolean|null); - /** GenerateExclusivityManifestResponse crdManifest. */ - public crdManifest: string; + /** ServiceOptions uninterpretedOption */ + uninterpretedOption?: (google.protobuf.IUninterpretedOption[]|null); - /** GenerateExclusivityManifestResponse crManifest. */ - public crManifest: string; + /** ServiceOptions .google.api.defaultHost */ + ".google.api.defaultHost"?: (string|null); - /** - * Creates a new GenerateExclusivityManifestResponse instance using the specified properties. - * @param [properties] Properties to set - * @returns GenerateExclusivityManifestResponse instance - */ - public static create(properties?: google.cloud.gkehub.v1beta1.IGenerateExclusivityManifestResponse): google.cloud.gkehub.v1beta1.GenerateExclusivityManifestResponse; - - /** - * Encodes the specified GenerateExclusivityManifestResponse message. Does not implicitly {@link google.cloud.gkehub.v1beta1.GenerateExclusivityManifestResponse.verify|verify} messages. - * @param message GenerateExclusivityManifestResponse message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encode(message: google.cloud.gkehub.v1beta1.IGenerateExclusivityManifestResponse, writer?: $protobuf.Writer): $protobuf.Writer; - - /** - * Encodes the specified GenerateExclusivityManifestResponse message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta1.GenerateExclusivityManifestResponse.verify|verify} messages. - * @param message GenerateExclusivityManifestResponse message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encodeDelimited(message: google.cloud.gkehub.v1beta1.IGenerateExclusivityManifestResponse, writer?: $protobuf.Writer): $protobuf.Writer; - - /** - * Decodes a GenerateExclusivityManifestResponse message from the specified reader or buffer. - * @param reader Reader or buffer to decode from - * @param [length] Message length if known beforehand - * @returns GenerateExclusivityManifestResponse - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.v1beta1.GenerateExclusivityManifestResponse; - - /** - * Decodes a GenerateExclusivityManifestResponse message from the specified reader or buffer, length delimited. - * @param reader Reader or buffer to decode from - * @returns GenerateExclusivityManifestResponse - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.v1beta1.GenerateExclusivityManifestResponse; - - /** - * Verifies a GenerateExclusivityManifestResponse message. - * @param message Plain object to verify - * @returns `null` if valid, otherwise the reason why it is not - */ - public static verify(message: { [k: string]: any }): (string|null); - - /** - * Creates a GenerateExclusivityManifestResponse message from a plain object. Also converts values to their respective internal types. - * @param object Plain object - * @returns GenerateExclusivityManifestResponse - */ - public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.v1beta1.GenerateExclusivityManifestResponse; - - /** - * Creates a plain object from a GenerateExclusivityManifestResponse message. Also converts values to other types if specified. - * @param message GenerateExclusivityManifestResponse - * @param [options] Conversion options - * @returns Plain object - */ - public static toObject(message: google.cloud.gkehub.v1beta1.GenerateExclusivityManifestResponse, options?: $protobuf.IConversionOptions): { [k: string]: any }; - - /** - * Converts this GenerateExclusivityManifestResponse to JSON. - * @returns JSON object - */ - public toJSON(): { [k: string]: any }; - } - - /** Properties of an OperationMetadata. */ - interface IOperationMetadata { - - /** OperationMetadata createTime */ - createTime?: (google.protobuf.ITimestamp|null); - - /** OperationMetadata endTime */ - endTime?: (google.protobuf.ITimestamp|null); - - /** OperationMetadata target */ - target?: (string|null); - - /** OperationMetadata verb */ - verb?: (string|null); - - /** OperationMetadata statusDetail */ - statusDetail?: (string|null); - - /** OperationMetadata cancelRequested */ - cancelRequested?: (boolean|null); - - /** OperationMetadata apiVersion */ - apiVersion?: (string|null); - } - - /** Represents an OperationMetadata. */ - class OperationMetadata implements IOperationMetadata { - - /** - * Constructs a new OperationMetadata. - * @param [properties] Properties to set - */ - constructor(properties?: google.cloud.gkehub.v1beta1.IOperationMetadata); - - /** OperationMetadata createTime. */ - public createTime?: (google.protobuf.ITimestamp|null); - - /** OperationMetadata endTime. */ - public endTime?: (google.protobuf.ITimestamp|null); - - /** OperationMetadata target. */ - public target: string; - - /** OperationMetadata verb. */ - public verb: string; - - /** OperationMetadata statusDetail. */ - public statusDetail: string; - - /** OperationMetadata cancelRequested. */ - public cancelRequested: boolean; - - /** OperationMetadata apiVersion. */ - public apiVersion: string; - - /** - * Creates a new OperationMetadata instance using the specified properties. - * @param [properties] Properties to set - * @returns OperationMetadata instance - */ - public static create(properties?: google.cloud.gkehub.v1beta1.IOperationMetadata): google.cloud.gkehub.v1beta1.OperationMetadata; - - /** - * Encodes the specified OperationMetadata message. Does not implicitly {@link google.cloud.gkehub.v1beta1.OperationMetadata.verify|verify} messages. - * @param message OperationMetadata message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encode(message: google.cloud.gkehub.v1beta1.IOperationMetadata, writer?: $protobuf.Writer): $protobuf.Writer; - - /** - * Encodes the specified OperationMetadata message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta1.OperationMetadata.verify|verify} messages. - * @param message OperationMetadata message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encodeDelimited(message: google.cloud.gkehub.v1beta1.IOperationMetadata, writer?: $protobuf.Writer): $protobuf.Writer; - - /** - * Decodes an OperationMetadata message from the specified reader or buffer. - * @param reader Reader or buffer to decode from - * @param [length] Message length if known beforehand - * @returns OperationMetadata - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.v1beta1.OperationMetadata; - - /** - * Decodes an OperationMetadata message from the specified reader or buffer, length delimited. - * @param reader Reader or buffer to decode from - * @returns OperationMetadata - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.v1beta1.OperationMetadata; - - /** - * Verifies an OperationMetadata message. - * @param message Plain 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 OperationMetadata message from a plain object. Also converts values to their respective internal types. - * @param object Plain object - * @returns OperationMetadata - */ - public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.v1beta1.OperationMetadata; - - /** - * Creates a plain object from an OperationMetadata message. Also converts values to other types if specified. - * @param message OperationMetadata - * @param [options] Conversion options - * @returns Plain object - */ - public static toObject(message: google.cloud.gkehub.v1beta1.OperationMetadata, options?: $protobuf.IConversionOptions): { [k: string]: any }; - - /** - * Converts this OperationMetadata to JSON. - * @returns JSON object - */ - public toJSON(): { [k: string]: any }; - } - } - } - } - - /** Namespace api. */ - namespace api { - - /** Properties of a Http. */ - interface IHttp { - - /** Http rules */ - rules?: (google.api.IHttpRule[]|null); - - /** Http fullyDecodeReservedExpansion */ - fullyDecodeReservedExpansion?: (boolean|null); + /** ServiceOptions .google.api.oauthScopes */ + ".google.api.oauthScopes"?: (string|null); } - /** Represents a Http. */ - class Http implements IHttp { + /** Represents a ServiceOptions. */ + class ServiceOptions implements IServiceOptions { /** - * Constructs a new Http. + * Constructs a new ServiceOptions. * @param [properties] Properties to set */ - constructor(properties?: google.api.IHttp); + constructor(properties?: google.protobuf.IServiceOptions); - /** Http rules. */ - public rules: google.api.IHttpRule[]; + /** ServiceOptions deprecated. */ + public deprecated: boolean; - /** Http fullyDecodeReservedExpansion. */ - public fullyDecodeReservedExpansion: boolean; + /** ServiceOptions uninterpretedOption. */ + public uninterpretedOption: google.protobuf.IUninterpretedOption[]; /** - * Creates a new Http instance using the specified properties. + * Creates a new ServiceOptions instance using the specified properties. * @param [properties] Properties to set - * @returns Http instance + * @returns ServiceOptions instance */ - public static create(properties?: google.api.IHttp): google.api.Http; + public static create(properties?: google.protobuf.IServiceOptions): google.protobuf.ServiceOptions; /** - * Encodes the specified Http message. Does not implicitly {@link google.api.Http.verify|verify} messages. - * @param message Http message or plain object to encode + * 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.api.IHttp, writer?: $protobuf.Writer): $protobuf.Writer; + public static encode(message: google.protobuf.IServiceOptions, 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 + * 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.api.IHttp, writer?: $protobuf.Writer): $protobuf.Writer; + public static encodeDelimited(message: google.protobuf.IServiceOptions, writer?: $protobuf.Writer): $protobuf.Writer; /** - * Decodes a Http message from the specified reader or buffer. + * 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 Http + * @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.api.Http; + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.ServiceOptions; /** - * Decodes a Http message from the specified reader or buffer, length delimited. + * Decodes a ServiceOptions message from the specified reader or buffer, length delimited. * @param reader Reader or buffer to decode from - * @returns Http + * @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.api.Http; + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.ServiceOptions; /** - * Verifies a Http message. + * 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 Http message from a plain object. Also converts values to their respective internal types. + * Creates a ServiceOptions message from a plain object. Also converts values to their respective internal types. * @param object Plain object - * @returns Http + * @returns ServiceOptions */ - public static fromObject(object: { [k: string]: any }): google.api.Http; + public static fromObject(object: { [k: string]: any }): google.protobuf.ServiceOptions; /** - * Creates a plain object from a Http message. Also converts values to other types if specified. - * @param message Http + * 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.api.Http, options?: $protobuf.IConversionOptions): { [k: string]: any }; + public static toObject(message: google.protobuf.ServiceOptions, options?: $protobuf.IConversionOptions): { [k: string]: any }; /** - * Converts this Http to JSON. + * Converts this ServiceOptions to JSON. * @returns JSON object */ public toJSON(): { [k: string]: any }; } - /** 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); + /** Properties of a MethodOptions. */ + interface IMethodOptions { - /** HttpRule delete */ - "delete"?: (string|null); + /** MethodOptions deprecated */ + deprecated?: (boolean|null); - /** HttpRule patch */ - patch?: (string|null); + /** MethodOptions idempotencyLevel */ + idempotencyLevel?: (google.protobuf.MethodOptions.IdempotencyLevel|keyof typeof google.protobuf.MethodOptions.IdempotencyLevel|null); - /** HttpRule custom */ - custom?: (google.api.ICustomHttpPattern|null); + /** MethodOptions uninterpretedOption */ + uninterpretedOption?: (google.protobuf.IUninterpretedOption[]|null); - /** HttpRule body */ - body?: (string|null); + /** MethodOptions .google.api.http */ + ".google.api.http"?: (google.api.IHttpRule|null); - /** HttpRule responseBody */ - responseBody?: (string|null); + /** MethodOptions .google.api.methodSignature */ + ".google.api.methodSignature"?: (string[]|null); - /** HttpRule additionalBindings */ - additionalBindings?: (google.api.IHttpRule[]|null); + /** MethodOptions .google.longrunning.operationInfo */ + ".google.longrunning.operationInfo"?: (google.longrunning.IOperationInfo|null); } - /** Represents a HttpRule. */ - class HttpRule implements IHttpRule { + /** Represents a MethodOptions. */ + class MethodOptions implements IMethodOptions { /** - * Constructs a new HttpRule. + * Constructs a new MethodOptions. * @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; + constructor(properties?: google.protobuf.IMethodOptions); - /** HttpRule responseBody. */ - public responseBody: string; + /** MethodOptions deprecated. */ + public deprecated: boolean; - /** HttpRule additionalBindings. */ - public additionalBindings: google.api.IHttpRule[]; + /** MethodOptions idempotencyLevel. */ + public idempotencyLevel: (google.protobuf.MethodOptions.IdempotencyLevel|keyof typeof google.protobuf.MethodOptions.IdempotencyLevel); - /** HttpRule pattern. */ - public pattern?: ("get"|"put"|"post"|"delete"|"patch"|"custom"); + /** MethodOptions uninterpretedOption. */ + public uninterpretedOption: google.protobuf.IUninterpretedOption[]; /** - * Creates a new HttpRule instance using the specified properties. + * Creates a new MethodOptions instance using the specified properties. * @param [properties] Properties to set - * @returns HttpRule instance + * @returns MethodOptions instance */ - public static create(properties?: google.api.IHttpRule): google.api.HttpRule; + public static create(properties?: google.protobuf.IMethodOptions): google.protobuf.MethodOptions; /** - * Encodes the specified HttpRule message. Does not implicitly {@link google.api.HttpRule.verify|verify} messages. - * @param message HttpRule message or plain object to encode + * 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.api.IHttpRule, writer?: $protobuf.Writer): $protobuf.Writer; + public static encode(message: google.protobuf.IMethodOptions, 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 + * 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.api.IHttpRule, writer?: $protobuf.Writer): $protobuf.Writer; + public static encodeDelimited(message: google.protobuf.IMethodOptions, writer?: $protobuf.Writer): $protobuf.Writer; /** - * Decodes a HttpRule message from the specified reader or buffer. + * 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 HttpRule + * @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.api.HttpRule; + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.MethodOptions; /** - * Decodes a HttpRule message from the specified reader or buffer, length delimited. + * Decodes a MethodOptions message from the specified reader or buffer, length delimited. * @param reader Reader or buffer to decode from - * @returns HttpRule + * @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.api.HttpRule; + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.MethodOptions; /** - * Verifies a HttpRule message. + * 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 HttpRule message from a plain object. Also converts values to their respective internal types. + * Creates a MethodOptions message from a plain object. Also converts values to their respective internal types. * @param object Plain object - * @returns HttpRule + * @returns MethodOptions */ - public static fromObject(object: { [k: string]: any }): google.api.HttpRule; + public static fromObject(object: { [k: string]: any }): google.protobuf.MethodOptions; /** - * Creates a plain object from a HttpRule message. Also converts values to other types if specified. - * @param message HttpRule + * 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.api.HttpRule, options?: $protobuf.IConversionOptions): { [k: string]: any }; + public static toObject(message: google.protobuf.MethodOptions, options?: $protobuf.IConversionOptions): { [k: string]: any }; /** - * Converts this HttpRule to JSON. + * Converts this MethodOptions to JSON. * @returns JSON object */ public toJSON(): { [k: string]: any }; } - /** Properties of a CustomHttpPattern. */ - interface ICustomHttpPattern { + namespace MethodOptions { - /** CustomHttpPattern kind */ - kind?: (string|null); + /** IdempotencyLevel enum. */ + enum IdempotencyLevel { + IDEMPOTENCY_UNKNOWN = 0, + NO_SIDE_EFFECTS = 1, + IDEMPOTENT = 2 + } + } - /** CustomHttpPattern path */ - path?: (string|null); + /** 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 a CustomHttpPattern. */ - class CustomHttpPattern implements ICustomHttpPattern { + /** Represents an UninterpretedOption. */ + class UninterpretedOption implements IUninterpretedOption { /** - * Constructs a new CustomHttpPattern. + * Constructs a new UninterpretedOption. * @param [properties] Properties to set */ - constructor(properties?: google.api.ICustomHttpPattern); + constructor(properties?: google.protobuf.IUninterpretedOption); - /** CustomHttpPattern kind. */ - public kind: string; + /** UninterpretedOption name. */ + public name: google.protobuf.UninterpretedOption.INamePart[]; - /** CustomHttpPattern path. */ - public path: string; + /** 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 CustomHttpPattern instance using the specified properties. + * Creates a new UninterpretedOption instance using the specified properties. * @param [properties] Properties to set - * @returns CustomHttpPattern instance + * @returns UninterpretedOption instance */ - public static create(properties?: google.api.ICustomHttpPattern): google.api.CustomHttpPattern; + public static create(properties?: google.protobuf.IUninterpretedOption): google.protobuf.UninterpretedOption; /** - * Encodes the specified CustomHttpPattern message. Does not implicitly {@link google.api.CustomHttpPattern.verify|verify} messages. - * @param message CustomHttpPattern message or plain object to encode + * 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.api.ICustomHttpPattern, writer?: $protobuf.Writer): $protobuf.Writer; + public static encode(message: google.protobuf.IUninterpretedOption, 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 + * 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.api.ICustomHttpPattern, writer?: $protobuf.Writer): $protobuf.Writer; + public static encodeDelimited(message: google.protobuf.IUninterpretedOption, writer?: $protobuf.Writer): $protobuf.Writer; /** - * Decodes a CustomHttpPattern message from the specified reader or buffer. + * 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 CustomHttpPattern + * @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.api.CustomHttpPattern; + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.UninterpretedOption; /** - * Decodes a CustomHttpPattern message from the specified reader or buffer, length delimited. + * Decodes an UninterpretedOption message from the specified reader or buffer, length delimited. * @param reader Reader or buffer to decode from - * @returns CustomHttpPattern + * @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.api.CustomHttpPattern; + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.UninterpretedOption; /** - * Verifies a CustomHttpPattern message. + * 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 a CustomHttpPattern message from a plain object. Also converts values to their respective internal types. + * Creates an UninterpretedOption message from a plain object. Also converts values to their respective internal types. * @param object Plain object - * @returns CustomHttpPattern + * @returns UninterpretedOption */ - public static fromObject(object: { [k: string]: any }): google.api.CustomHttpPattern; + public static fromObject(object: { [k: string]: any }): google.protobuf.UninterpretedOption; /** - * Creates a plain object from a CustomHttpPattern message. Also converts values to other types if specified. - * @param message CustomHttpPattern + * 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.api.CustomHttpPattern, options?: $protobuf.IConversionOptions): { [k: string]: any }; + public static toObject(message: google.protobuf.UninterpretedOption, options?: $protobuf.IConversionOptions): { [k: string]: any }; /** - * Converts this CustomHttpPattern to JSON. + * Converts this UninterpretedOption to JSON. * @returns JSON object */ public toJSON(): { [k: string]: any }; } - /** FieldBehavior enum. */ - enum FieldBehavior { - FIELD_BEHAVIOR_UNSPECIFIED = 0, - OPTIONAL = 1, - REQUIRED = 2, - OUTPUT_ONLY = 3, - INPUT_ONLY = 4, - IMMUTABLE = 5, - UNORDERED_LIST = 6 - } + namespace UninterpretedOption { - /** Properties of a ResourceDescriptor. */ - interface IResourceDescriptor { + /** Properties of a NamePart. */ + interface INamePart { - /** ResourceDescriptor type */ - type?: (string|null); + /** NamePart namePart */ + namePart: string; - /** ResourceDescriptor pattern */ - pattern?: (string[]|null); + /** NamePart isExtension */ + isExtension: boolean; + } - /** ResourceDescriptor nameField */ - nameField?: (string|null); + /** Represents a NamePart. */ + class NamePart implements INamePart { - /** ResourceDescriptor history */ - history?: (google.api.ResourceDescriptor.History|keyof typeof google.api.ResourceDescriptor.History|null); + /** + * Constructs a new NamePart. + * @param [properties] Properties to set + */ + constructor(properties?: google.protobuf.UninterpretedOption.INamePart); - /** ResourceDescriptor plural */ - plural?: (string|null); + /** NamePart namePart. */ + public namePart: string; - /** ResourceDescriptor singular */ - singular?: (string|null); + /** NamePart isExtension. */ + public isExtension: boolean; - /** ResourceDescriptor style */ - style?: (google.api.ResourceDescriptor.Style[]|null); - } + /** + * 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; - /** Represents a ResourceDescriptor. */ - class ResourceDescriptor implements IResourceDescriptor { + /** + * 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; - /** - * Constructs a new ResourceDescriptor. - * @param [properties] Properties to set - */ - constructor(properties?: google.api.IResourceDescriptor); + /** + * 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; - /** ResourceDescriptor type. */ - public type: string; + /** + * 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; - /** ResourceDescriptor pattern. */ - public pattern: string[]; + /** + * 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; - /** ResourceDescriptor nameField. */ - public nameField: string; + /** + * 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); - /** ResourceDescriptor history. */ - public history: (google.api.ResourceDescriptor.History|keyof typeof google.api.ResourceDescriptor.History); + /** + * 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; - /** ResourceDescriptor plural. */ - public plural: string; + /** + * 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 }; - /** ResourceDescriptor singular. */ - public singular: string; + /** + * Converts this NamePart to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + } - /** ResourceDescriptor style. */ - public style: google.api.ResourceDescriptor.Style[]; + /** Properties of a SourceCodeInfo. */ + interface ISourceCodeInfo { + + /** SourceCodeInfo location */ + location?: (google.protobuf.SourceCodeInfo.ILocation[]|null); + } + + /** Represents a SourceCodeInfo. */ + class SourceCodeInfo implements ISourceCodeInfo { /** - * Creates a new ResourceDescriptor instance using the specified properties. + * Constructs a new SourceCodeInfo. * @param [properties] Properties to set - * @returns ResourceDescriptor instance */ - public static create(properties?: google.api.IResourceDescriptor): google.api.ResourceDescriptor; + constructor(properties?: google.protobuf.ISourceCodeInfo); + + /** SourceCodeInfo location. */ + public location: google.protobuf.SourceCodeInfo.ILocation[]; /** - * Encodes the specified ResourceDescriptor message. Does not implicitly {@link google.api.ResourceDescriptor.verify|verify} messages. - * @param message ResourceDescriptor message or plain object to encode + * 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.api.IResourceDescriptor, writer?: $protobuf.Writer): $protobuf.Writer; + public static encode(message: google.protobuf.ISourceCodeInfo, 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 + * 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.api.IResourceDescriptor, writer?: $protobuf.Writer): $protobuf.Writer; + public static encodeDelimited(message: google.protobuf.ISourceCodeInfo, writer?: $protobuf.Writer): $protobuf.Writer; /** - * Decodes a ResourceDescriptor message from the specified reader or buffer. + * 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 ResourceDescriptor + * @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.api.ResourceDescriptor; + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.SourceCodeInfo; /** - * Decodes a ResourceDescriptor message from the specified reader or buffer, length delimited. + * Decodes a SourceCodeInfo message from the specified reader or buffer, length delimited. * @param reader Reader or buffer to decode from - * @returns ResourceDescriptor + * @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.api.ResourceDescriptor; + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.SourceCodeInfo; /** - * Verifies a ResourceDescriptor message. + * 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 ResourceDescriptor message from a plain object. Also converts values to their respective internal types. + * Creates a SourceCodeInfo message from a plain object. Also converts values to their respective internal types. * @param object Plain object - * @returns ResourceDescriptor + * @returns SourceCodeInfo */ - public static fromObject(object: { [k: string]: any }): google.api.ResourceDescriptor; + public static fromObject(object: { [k: string]: any }): google.protobuf.SourceCodeInfo; /** - * Creates a plain object from a ResourceDescriptor message. Also converts values to other types if specified. - * @param message ResourceDescriptor + * 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.api.ResourceDescriptor, options?: $protobuf.IConversionOptions): { [k: string]: any }; + public static toObject(message: google.protobuf.SourceCodeInfo, options?: $protobuf.IConversionOptions): { [k: string]: any }; /** - * Converts this ResourceDescriptor to JSON. + * Converts this SourceCodeInfo to JSON. * @returns JSON object */ public toJSON(): { [k: string]: any }; } - namespace ResourceDescriptor { + namespace SourceCodeInfo { - /** History enum. */ - enum History { - HISTORY_UNSPECIFIED = 0, - ORIGINALLY_SINGLE_PATTERN = 1, - FUTURE_MULTI_PATTERN = 2 - } + /** Properties of a Location. */ + interface ILocation { - /** Style enum. */ - enum Style { - STYLE_UNSPECIFIED = 0, - DECLARATIVE_FRIENDLY = 1 - } - } + /** Location path */ + path?: (number[]|null); - /** Properties of a ResourceReference. */ - interface IResourceReference { + /** Location span */ + span?: (number[]|null); - /** ResourceReference type */ - type?: (string|null); + /** Location leadingComments */ + leadingComments?: (string|null); - /** ResourceReference childType */ - childType?: (string|null); - } + /** Location trailingComments */ + trailingComments?: (string|null); - /** Represents a ResourceReference. */ - class ResourceReference implements IResourceReference { + /** Location leadingDetachedComments */ + leadingDetachedComments?: (string[]|null); + } - /** - * Constructs a new ResourceReference. - * @param [properties] Properties to set - */ - constructor(properties?: google.api.IResourceReference); + /** Represents a Location. */ + class Location implements ILocation { - /** ResourceReference type. */ - public type: string; + /** + * Constructs a new Location. + * @param [properties] Properties to set + */ + constructor(properties?: google.protobuf.SourceCodeInfo.ILocation); - /** ResourceReference childType. */ - public childType: string; + /** Location path. */ + public path: number[]; - /** - * 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; + /** Location span. */ + public span: number[]; - /** - * 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; + /** Location leadingComments. */ + public leadingComments: string; - /** - * 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; + /** Location trailingComments. */ + public trailingComments: string; - /** - * 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; + /** Location leadingDetachedComments. */ + public leadingDetachedComments: string[]; - /** - * 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; + /** + * 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; - /** - * 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); + /** + * 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; - /** - * 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; + /** + * 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; - /** - * 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 }; + /** + * 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; - /** - * Converts this ResourceReference to JSON. - * @returns JSON object - */ - public toJSON(): { [k: string]: any }; - } - } + /** + * 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; - /** Namespace protobuf. */ - namespace protobuf { + /** + * 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); - /** Properties of a FileDescriptorSet. */ - interface IFileDescriptorSet { + /** + * 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; - /** FileDescriptorSet file */ - file?: (google.protobuf.IFileDescriptorProto[]|null); + /** + * 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 }; + } } - /** Represents a FileDescriptorSet. */ - class FileDescriptorSet implements IFileDescriptorSet { + /** Properties of a GeneratedCodeInfo. */ + interface IGeneratedCodeInfo { + + /** GeneratedCodeInfo annotation */ + annotation?: (google.protobuf.GeneratedCodeInfo.IAnnotation[]|null); + } + + /** Represents a GeneratedCodeInfo. */ + class GeneratedCodeInfo implements IGeneratedCodeInfo { /** - * Constructs a new FileDescriptorSet. + * Constructs a new GeneratedCodeInfo. * @param [properties] Properties to set */ - constructor(properties?: google.protobuf.IFileDescriptorSet); + constructor(properties?: google.protobuf.IGeneratedCodeInfo); - /** FileDescriptorSet file. */ - public file: google.protobuf.IFileDescriptorProto[]; + /** GeneratedCodeInfo annotation. */ + public annotation: google.protobuf.GeneratedCodeInfo.IAnnotation[]; /** - * Creates a new FileDescriptorSet instance using the specified properties. + * Creates a new GeneratedCodeInfo instance using the specified properties. * @param [properties] Properties to set - * @returns FileDescriptorSet instance + * @returns GeneratedCodeInfo instance */ - public static create(properties?: google.protobuf.IFileDescriptorSet): google.protobuf.FileDescriptorSet; + public static create(properties?: google.protobuf.IGeneratedCodeInfo): google.protobuf.GeneratedCodeInfo; /** - * Encodes the specified FileDescriptorSet message. Does not implicitly {@link google.protobuf.FileDescriptorSet.verify|verify} messages. - * @param message FileDescriptorSet message or plain object to encode + * 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.IFileDescriptorSet, writer?: $protobuf.Writer): $protobuf.Writer; + public static encode(message: google.protobuf.IGeneratedCodeInfo, 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 + * 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.IFileDescriptorSet, writer?: $protobuf.Writer): $protobuf.Writer; + public static encodeDelimited(message: google.protobuf.IGeneratedCodeInfo, writer?: $protobuf.Writer): $protobuf.Writer; /** - * Decodes a FileDescriptorSet message from the specified reader or buffer. + * 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 FileDescriptorSet + * @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.FileDescriptorSet; + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.GeneratedCodeInfo; /** - * Decodes a FileDescriptorSet message from the specified reader or buffer, length delimited. + * Decodes a GeneratedCodeInfo message from the specified reader or buffer, length delimited. * @param reader Reader or buffer to decode from - * @returns FileDescriptorSet + * @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.FileDescriptorSet; + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.GeneratedCodeInfo; /** - * Verifies a FileDescriptorSet message. + * 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 FileDescriptorSet message from a plain object. Also converts values to their respective internal types. + * Creates a GeneratedCodeInfo message from a plain object. Also converts values to their respective internal types. * @param object Plain object - * @returns FileDescriptorSet + * @returns GeneratedCodeInfo */ - public static fromObject(object: { [k: string]: any }): google.protobuf.FileDescriptorSet; + public static fromObject(object: { [k: string]: any }): google.protobuf.GeneratedCodeInfo; /** - * Creates a plain object from a FileDescriptorSet message. Also converts values to other types if specified. - * @param message FileDescriptorSet + * 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.FileDescriptorSet, options?: $protobuf.IConversionOptions): { [k: string]: any }; + public static toObject(message: google.protobuf.GeneratedCodeInfo, options?: $protobuf.IConversionOptions): { [k: string]: any }; /** - * Converts this FileDescriptorSet to JSON. + * Converts this GeneratedCodeInfo to JSON. * @returns JSON object */ public toJSON(): { [k: string]: any }; } - /** Properties of a FileDescriptorProto. */ - interface IFileDescriptorProto { - - /** FileDescriptorProto name */ - name?: (string|null); + namespace GeneratedCodeInfo { - /** FileDescriptorProto package */ - "package"?: (string|null); + /** Properties of an Annotation. */ + interface IAnnotation { - /** FileDescriptorProto dependency */ - dependency?: (string[]|null); + /** Annotation path */ + path?: (number[]|null); - /** FileDescriptorProto publicDependency */ - publicDependency?: (number[]|null); + /** Annotation sourceFile */ + sourceFile?: (string|null); - /** FileDescriptorProto weakDependency */ - weakDependency?: (number[]|null); + /** Annotation begin */ + begin?: (number|null); - /** FileDescriptorProto messageType */ - messageType?: (google.protobuf.IDescriptorProto[]|null); + /** Annotation end */ + end?: (number|null); + } - /** FileDescriptorProto enumType */ - enumType?: (google.protobuf.IEnumDescriptorProto[]|null); + /** Represents an Annotation. */ + class Annotation implements IAnnotation { - /** FileDescriptorProto service */ - service?: (google.protobuf.IServiceDescriptorProto[]|null); + /** + * Constructs a new Annotation. + * @param [properties] Properties to set + */ + constructor(properties?: google.protobuf.GeneratedCodeInfo.IAnnotation); - /** FileDescriptorProto extension */ - extension?: (google.protobuf.IFieldDescriptorProto[]|null); + /** Annotation path. */ + public path: number[]; - /** FileDescriptorProto options */ - options?: (google.protobuf.IFileOptions|null); + /** Annotation sourceFile. */ + public sourceFile: string; - /** FileDescriptorProto sourceCodeInfo */ - sourceCodeInfo?: (google.protobuf.ISourceCodeInfo|null); + /** Annotation begin. */ + public begin: number; - /** FileDescriptorProto syntax */ - syntax?: (string|null); - } + /** Annotation end. */ + public end: number; - /** Represents a FileDescriptorProto. */ - class FileDescriptorProto implements IFileDescriptorProto { + /** + * 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; - /** - * Constructs a new FileDescriptorProto. - * @param [properties] Properties to set - */ - constructor(properties?: google.protobuf.IFileDescriptorProto); + /** + * 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; - /** FileDescriptorProto name. */ - public name: string; + /** + * 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; - /** FileDescriptorProto package. */ - public package: string; + /** + * 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; - /** FileDescriptorProto dependency. */ - public dependency: string[]; + /** + * 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; - /** FileDescriptorProto publicDependency. */ - public publicDependency: number[]; + /** + * 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); - /** FileDescriptorProto weakDependency. */ - public weakDependency: number[]; + /** + * 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; - /** FileDescriptorProto messageType. */ - public messageType: google.protobuf.IDescriptorProto[]; + /** + * 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 }; - /** FileDescriptorProto enumType. */ - public enumType: google.protobuf.IEnumDescriptorProto[]; + /** + * Converts this Annotation to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + } - /** FileDescriptorProto service. */ - public service: google.protobuf.IServiceDescriptorProto[]; + /** Properties of an Any. */ + interface IAny { - /** FileDescriptorProto extension. */ - public extension: google.protobuf.IFieldDescriptorProto[]; + /** Any type_url */ + type_url?: (string|null); - /** FileDescriptorProto options. */ - public options?: (google.protobuf.IFileOptions|null); + /** Any value */ + value?: (Uint8Array|string|null); + } - /** FileDescriptorProto sourceCodeInfo. */ - public sourceCodeInfo?: (google.protobuf.ISourceCodeInfo|null); + /** Represents an Any. */ + class Any implements IAny { - /** FileDescriptorProto syntax. */ - public syntax: string; + /** + * 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 FileDescriptorProto instance using the specified properties. + * Creates a new Any instance using the specified properties. * @param [properties] Properties to set - * @returns FileDescriptorProto instance + * @returns Any instance */ - public static create(properties?: google.protobuf.IFileDescriptorProto): google.protobuf.FileDescriptorProto; + public static create(properties?: google.protobuf.IAny): google.protobuf.Any; /** - * Encodes the specified FileDescriptorProto message. Does not implicitly {@link google.protobuf.FileDescriptorProto.verify|verify} messages. - * @param message FileDescriptorProto message or plain object to encode + * 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.IFileDescriptorProto, writer?: $protobuf.Writer): $protobuf.Writer; + public static encode(message: google.protobuf.IAny, 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 + * 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.IFileDescriptorProto, writer?: $protobuf.Writer): $protobuf.Writer; + public static encodeDelimited(message: google.protobuf.IAny, writer?: $protobuf.Writer): $protobuf.Writer; /** - * Decodes a FileDescriptorProto message from the specified reader or buffer. + * 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 FileDescriptorProto + * @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.FileDescriptorProto; + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.Any; /** - * Decodes a FileDescriptorProto message from the specified reader or buffer, length delimited. + * Decodes an Any message from the specified reader or buffer, length delimited. * @param reader Reader or buffer to decode from - * @returns FileDescriptorProto + * @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.FileDescriptorProto; + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.Any; /** - * Verifies a FileDescriptorProto message. + * 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 a FileDescriptorProto message from a plain object. Also converts values to their respective internal types. + * Creates an Any message from a plain object. Also converts values to their respective internal types. * @param object Plain object - * @returns FileDescriptorProto + * @returns Any */ - public static fromObject(object: { [k: string]: any }): google.protobuf.FileDescriptorProto; + public static fromObject(object: { [k: string]: any }): google.protobuf.Any; /** - * Creates a plain object from a FileDescriptorProto message. Also converts values to other types if specified. - * @param message FileDescriptorProto + * 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.FileDescriptorProto, options?: $protobuf.IConversionOptions): { [k: string]: any }; + public static toObject(message: google.protobuf.Any, options?: $protobuf.IConversionOptions): { [k: string]: any }; /** - * Converts this FileDescriptorProto to JSON. + * Converts this Any to JSON. * @returns JSON object */ public toJSON(): { [k: string]: any }; } - /** 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); + /** Properties of a Duration. */ + interface IDuration { - /** DescriptorProto reservedRange */ - reservedRange?: (google.protobuf.DescriptorProto.IReservedRange[]|null); + /** Duration seconds */ + seconds?: (number|Long|string|null); - /** DescriptorProto reservedName */ - reservedName?: (string[]|null); + /** Duration nanos */ + nanos?: (number|null); } - /** Represents a DescriptorProto. */ - class DescriptorProto implements IDescriptorProto { + /** Represents a Duration. */ + class Duration implements IDuration { /** - * Constructs a new DescriptorProto. + * Constructs a new Duration. * @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); + constructor(properties?: google.protobuf.IDuration); - /** DescriptorProto reservedRange. */ - public reservedRange: google.protobuf.DescriptorProto.IReservedRange[]; + /** Duration seconds. */ + public seconds: (number|Long|string); - /** DescriptorProto reservedName. */ - public reservedName: string[]; + /** Duration nanos. */ + public nanos: number; /** - * Creates a new DescriptorProto instance using the specified properties. + * Creates a new Duration instance using the specified properties. * @param [properties] Properties to set - * @returns DescriptorProto instance + * @returns Duration instance */ - public static create(properties?: google.protobuf.IDescriptorProto): google.protobuf.DescriptorProto; + public static create(properties?: google.protobuf.IDuration): google.protobuf.Duration; /** - * Encodes the specified DescriptorProto message. Does not implicitly {@link google.protobuf.DescriptorProto.verify|verify} messages. - * @param message DescriptorProto message or plain object to encode + * 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.IDescriptorProto, writer?: $protobuf.Writer): $protobuf.Writer; + public static encode(message: google.protobuf.IDuration, 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 + * 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.IDescriptorProto, writer?: $protobuf.Writer): $protobuf.Writer; + public static encodeDelimited(message: google.protobuf.IDuration, writer?: $protobuf.Writer): $protobuf.Writer; /** - * Decodes a DescriptorProto message from the specified reader or buffer. + * 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 DescriptorProto + * @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.DescriptorProto; + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.Duration; /** - * Decodes a DescriptorProto message from the specified reader or buffer, length delimited. + * Decodes a Duration message from the specified reader or buffer, length delimited. * @param reader Reader or buffer to decode from - * @returns DescriptorProto + * @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.DescriptorProto; + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.Duration; /** - * Verifies a DescriptorProto message. + * 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 DescriptorProto message from a plain object. Also converts values to their respective internal types. + * Creates a Duration message from a plain object. Also converts values to their respective internal types. * @param object Plain object - * @returns DescriptorProto + * @returns Duration */ - public static fromObject(object: { [k: string]: any }): google.protobuf.DescriptorProto; + public static fromObject(object: { [k: string]: any }): google.protobuf.Duration; /** - * Creates a plain object from a DescriptorProto message. Also converts values to other types if specified. - * @param message DescriptorProto + * 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.DescriptorProto, options?: $protobuf.IConversionOptions): { [k: string]: any }; + public static toObject(message: google.protobuf.Duration, options?: $protobuf.IConversionOptions): { [k: string]: any }; /** - * Converts this DescriptorProto to JSON. + * Converts this Duration to JSON. * @returns JSON object */ public toJSON(): { [k: string]: any }; } - namespace DescriptorProto { - - /** Properties of an ExtensionRange. */ - interface IExtensionRange { + /** Properties of an Empty. */ + interface IEmpty { + } - /** ExtensionRange start */ - start?: (number|null); + /** Represents an Empty. */ + class Empty implements IEmpty { - /** ExtensionRange end */ - end?: (number|null); + /** + * Constructs a new Empty. + * @param [properties] Properties to set + */ + constructor(properties?: google.protobuf.IEmpty); - /** ExtensionRange options */ - options?: (google.protobuf.IExtensionRangeOptions|null); - } + /** + * 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; - /** Represents an ExtensionRange. */ - class ExtensionRange implements IExtensionRange { + /** + * 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; - /** - * Constructs a new ExtensionRange. - * @param [properties] Properties to set - */ - constructor(properties?: google.protobuf.DescriptorProto.IExtensionRange); + /** + * 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; - /** ExtensionRange start. */ - public start: number; + /** + * 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; - /** ExtensionRange end. */ - public end: number; + /** + * 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; - /** ExtensionRange options. */ - public options?: (google.protobuf.IExtensionRangeOptions|null); + /** + * 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 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; + /** + * 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; - /** - * 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; + /** + * 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 }; - /** - * 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; + /** + * Converts this Empty to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } - /** - * 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; + /** Properties of a FieldMask. */ + interface IFieldMask { - /** - * 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; + /** FieldMask paths */ + paths?: (string[]|null); + } - /** - * 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); + /** Represents a FieldMask. */ + class FieldMask implements IFieldMask { - /** - * 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; + /** + * Constructs a new FieldMask. + * @param [properties] Properties to set + */ + constructor(properties?: google.protobuf.IFieldMask); - /** - * 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 }; + /** FieldMask paths. */ + public paths: string[]; - /** - * Converts this ExtensionRange to JSON. - * @returns JSON object - */ - public toJSON(): { [k: string]: any }; - } + /** + * Creates a new FieldMask instance using the specified properties. + * @param [properties] Properties to set + * @returns FieldMask instance + */ + public static create(properties?: google.protobuf.IFieldMask): google.protobuf.FieldMask; - /** Properties of a ReservedRange. */ - interface IReservedRange { + /** + * Encodes the specified FieldMask message. Does not implicitly {@link google.protobuf.FieldMask.verify|verify} messages. + * @param message FieldMask message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.protobuf.IFieldMask, writer?: $protobuf.Writer): $protobuf.Writer; - /** ReservedRange start */ - start?: (number|null); + /** + * Encodes the specified FieldMask message, length delimited. Does not implicitly {@link google.protobuf.FieldMask.verify|verify} messages. + * @param message FieldMask message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.protobuf.IFieldMask, writer?: $protobuf.Writer): $protobuf.Writer; - /** ReservedRange end */ - end?: (number|null); - } + /** + * Decodes a FieldMask message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns FieldMask + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.FieldMask; - /** Represents a ReservedRange. */ - class ReservedRange implements IReservedRange { + /** + * Decodes a FieldMask message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns FieldMask + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.FieldMask; - /** - * Constructs a new ReservedRange. - * @param [properties] Properties to set - */ - constructor(properties?: google.protobuf.DescriptorProto.IReservedRange); + /** + * Verifies a FieldMask message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); - /** 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 FieldMask message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns FieldMask + */ + public static fromObject(object: { [k: string]: any }): google.protobuf.FieldMask; - /** - * Creates a plain object from a 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 }; + /** + * Creates a plain object from a FieldMask message. Also converts values to other types if specified. + * @param message FieldMask + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.protobuf.FieldMask, options?: $protobuf.IConversionOptions): { [k: string]: any }; - /** - * Converts this ReservedRange to JSON. - * @returns JSON object - */ - public toJSON(): { [k: string]: any }; - } + /** + * Converts this FieldMask to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; } - /** Properties of an ExtensionRangeOptions. */ - interface IExtensionRangeOptions { + /** Properties of a Struct. */ + interface IStruct { - /** ExtensionRangeOptions uninterpretedOption */ - uninterpretedOption?: (google.protobuf.IUninterpretedOption[]|null); + /** Struct fields */ + fields?: ({ [k: string]: google.protobuf.IValue }|null); } - /** Represents an ExtensionRangeOptions. */ - class ExtensionRangeOptions implements IExtensionRangeOptions { + /** Represents a Struct. */ + class Struct implements IStruct { /** - * Constructs a new ExtensionRangeOptions. + * Constructs a new Struct. * @param [properties] Properties to set */ - constructor(properties?: google.protobuf.IExtensionRangeOptions); + constructor(properties?: google.protobuf.IStruct); - /** ExtensionRangeOptions uninterpretedOption. */ - public uninterpretedOption: google.protobuf.IUninterpretedOption[]; + /** Struct fields. */ + public fields: { [k: string]: google.protobuf.IValue }; /** - * Creates a new ExtensionRangeOptions instance using the specified properties. + * Creates a new Struct instance using the specified properties. * @param [properties] Properties to set - * @returns ExtensionRangeOptions instance + * @returns Struct instance */ - public static create(properties?: google.protobuf.IExtensionRangeOptions): google.protobuf.ExtensionRangeOptions; + public static create(properties?: google.protobuf.IStruct): google.protobuf.Struct; /** - * Encodes the specified ExtensionRangeOptions message. Does not implicitly {@link google.protobuf.ExtensionRangeOptions.verify|verify} messages. - * @param message ExtensionRangeOptions message or plain object to encode + * Encodes the specified Struct message. Does not implicitly {@link google.protobuf.Struct.verify|verify} messages. + * @param message Struct message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ - public static encode(message: google.protobuf.IExtensionRangeOptions, writer?: $protobuf.Writer): $protobuf.Writer; + public static encode(message: google.protobuf.IStruct, 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 + * Encodes the specified Struct message, length delimited. Does not implicitly {@link google.protobuf.Struct.verify|verify} messages. + * @param message Struct message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ - public static encodeDelimited(message: google.protobuf.IExtensionRangeOptions, writer?: $protobuf.Writer): $protobuf.Writer; + public static encodeDelimited(message: google.protobuf.IStruct, writer?: $protobuf.Writer): $protobuf.Writer; /** - * Decodes an ExtensionRangeOptions message from the specified reader or buffer. + * Decodes a Struct message from the specified reader or buffer. * @param reader Reader or buffer to decode from * @param [length] Message length if known beforehand - * @returns ExtensionRangeOptions + * @returns Struct * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.ExtensionRangeOptions; + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.Struct; /** - * Decodes an ExtensionRangeOptions message from the specified reader or buffer, length delimited. + * Decodes a Struct message from the specified reader or buffer, length delimited. * @param reader Reader or buffer to decode from - * @returns ExtensionRangeOptions + * @returns Struct * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.ExtensionRangeOptions; + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.Struct; /** - * Verifies an ExtensionRangeOptions message. + * Verifies a Struct message. * @param message Plain object to verify * @returns `null` if valid, otherwise the reason why it is not */ public static verify(message: { [k: string]: any }): (string|null); /** - * Creates an ExtensionRangeOptions message from a plain object. Also converts values to their respective internal types. + * Creates a Struct message from a plain object. Also converts values to their respective internal types. * @param object Plain object - * @returns ExtensionRangeOptions + * @returns Struct */ - public static fromObject(object: { [k: string]: any }): google.protobuf.ExtensionRangeOptions; + public static fromObject(object: { [k: string]: any }): google.protobuf.Struct; /** - * Creates a plain object from an ExtensionRangeOptions message. Also converts values to other types if specified. - * @param message ExtensionRangeOptions + * Creates a plain object from a Struct message. Also converts values to other types if specified. + * @param message Struct * @param [options] Conversion options * @returns Plain object */ - public static toObject(message: google.protobuf.ExtensionRangeOptions, options?: $protobuf.IConversionOptions): { [k: string]: any }; + public static toObject(message: google.protobuf.Struct, options?: $protobuf.IConversionOptions): { [k: string]: any }; /** - * Converts this ExtensionRangeOptions to JSON. + * Converts this Struct to JSON. * @returns JSON object */ public toJSON(): { [k: string]: any }; } - /** 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); + /** Properties of a Value. */ + interface IValue { - /** FieldDescriptorProto extendee */ - extendee?: (string|null); + /** Value nullValue */ + nullValue?: (google.protobuf.NullValue|keyof typeof google.protobuf.NullValue|null); - /** FieldDescriptorProto defaultValue */ - defaultValue?: (string|null); + /** Value numberValue */ + numberValue?: (number|null); - /** FieldDescriptorProto oneofIndex */ - oneofIndex?: (number|null); + /** Value stringValue */ + stringValue?: (string|null); - /** FieldDescriptorProto jsonName */ - jsonName?: (string|null); + /** Value boolValue */ + boolValue?: (boolean|null); - /** FieldDescriptorProto options */ - options?: (google.protobuf.IFieldOptions|null); + /** Value structValue */ + structValue?: (google.protobuf.IStruct|null); - /** FieldDescriptorProto proto3Optional */ - proto3Optional?: (boolean|null); + /** Value listValue */ + listValue?: (google.protobuf.IListValue|null); } - /** Represents a FieldDescriptorProto. */ - class FieldDescriptorProto implements IFieldDescriptorProto { + /** Represents a Value. */ + class Value implements IValue { /** - * Constructs a new FieldDescriptorProto. + * Constructs a new Value. * @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); + constructor(properties?: google.protobuf.IValue); - /** FieldDescriptorProto typeName. */ - public typeName: string; + /** Value nullValue. */ + public nullValue?: (google.protobuf.NullValue|keyof typeof google.protobuf.NullValue|null); - /** FieldDescriptorProto extendee. */ - public extendee: string; + /** Value numberValue. */ + public numberValue?: (number|null); - /** FieldDescriptorProto defaultValue. */ - public defaultValue: string; + /** Value stringValue. */ + public stringValue?: (string|null); - /** FieldDescriptorProto oneofIndex. */ - public oneofIndex: number; + /** Value boolValue. */ + public boolValue?: (boolean|null); - /** FieldDescriptorProto jsonName. */ - public jsonName: string; + /** Value structValue. */ + public structValue?: (google.protobuf.IStruct|null); - /** FieldDescriptorProto options. */ - public options?: (google.protobuf.IFieldOptions|null); + /** Value listValue. */ + public listValue?: (google.protobuf.IListValue|null); - /** FieldDescriptorProto proto3Optional. */ - public proto3Optional: boolean; + /** Value kind. */ + public kind?: ("nullValue"|"numberValue"|"stringValue"|"boolValue"|"structValue"|"listValue"); /** - * Creates a new FieldDescriptorProto instance using the specified properties. + * Creates a new Value instance using the specified properties. * @param [properties] Properties to set - * @returns FieldDescriptorProto instance + * @returns Value instance */ - public static create(properties?: google.protobuf.IFieldDescriptorProto): google.protobuf.FieldDescriptorProto; + public static create(properties?: google.protobuf.IValue): google.protobuf.Value; /** - * Encodes the specified FieldDescriptorProto message. Does not implicitly {@link google.protobuf.FieldDescriptorProto.verify|verify} messages. - * @param message FieldDescriptorProto message or plain object to encode + * Encodes the specified Value message. Does not implicitly {@link google.protobuf.Value.verify|verify} messages. + * @param message Value message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ - public static encode(message: google.protobuf.IFieldDescriptorProto, writer?: $protobuf.Writer): $protobuf.Writer; + public static encode(message: google.protobuf.IValue, 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 + * Encodes the specified Value message, length delimited. Does not implicitly {@link google.protobuf.Value.verify|verify} messages. + * @param message Value message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ - public static encodeDelimited(message: google.protobuf.IFieldDescriptorProto, writer?: $protobuf.Writer): $protobuf.Writer; + public static encodeDelimited(message: google.protobuf.IValue, writer?: $protobuf.Writer): $protobuf.Writer; /** - * Decodes a FieldDescriptorProto message from the specified reader or buffer. + * Decodes a Value message from the specified reader or buffer. * @param reader Reader or buffer to decode from * @param [length] Message length if known beforehand - * @returns FieldDescriptorProto + * @returns Value * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.FieldDescriptorProto; + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.Value; /** - * Decodes a FieldDescriptorProto message from the specified reader or buffer, length delimited. + * Decodes a Value message from the specified reader or buffer, length delimited. * @param reader Reader or buffer to decode from - * @returns FieldDescriptorProto + * @returns Value * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.FieldDescriptorProto; + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.Value; /** - * Verifies a FieldDescriptorProto message. + * Verifies a Value message. * @param message Plain object to verify * @returns `null` if valid, otherwise the reason why it is not */ public static verify(message: { [k: string]: any }): (string|null); /** - * Creates a FieldDescriptorProto message from a plain object. Also converts values to their respective internal types. + * Creates a Value message from a plain object. Also converts values to their respective internal types. * @param object Plain object - * @returns FieldDescriptorProto + * @returns Value */ - public static fromObject(object: { [k: string]: any }): google.protobuf.FieldDescriptorProto; + public static fromObject(object: { [k: string]: any }): google.protobuf.Value; /** - * Creates a plain object from a FieldDescriptorProto message. Also converts values to other types if specified. - * @param message FieldDescriptorProto + * Creates a plain object from a Value message. Also converts values to other types if specified. + * @param message Value * @param [options] Conversion options * @returns Plain object */ - public static toObject(message: google.protobuf.FieldDescriptorProto, options?: $protobuf.IConversionOptions): { [k: string]: any }; + public static toObject(message: google.protobuf.Value, options?: $protobuf.IConversionOptions): { [k: string]: any }; /** - * Converts this FieldDescriptorProto to JSON. + * Converts this Value to JSON. * @returns JSON object */ public toJSON(): { [k: string]: any }; } - 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 - } + /** NullValue enum. */ + enum NullValue { + NULL_VALUE = 0 } - /** Properties of an OneofDescriptorProto. */ - interface IOneofDescriptorProto { - - /** OneofDescriptorProto name */ - name?: (string|null); + /** Properties of a ListValue. */ + interface IListValue { - /** OneofDescriptorProto options */ - options?: (google.protobuf.IOneofOptions|null); + /** ListValue values */ + values?: (google.protobuf.IValue[]|null); } - /** Represents an OneofDescriptorProto. */ - class OneofDescriptorProto implements IOneofDescriptorProto { + /** Represents a ListValue. */ + class ListValue implements IListValue { /** - * Constructs a new OneofDescriptorProto. + * Constructs a new ListValue. * @param [properties] Properties to set */ - constructor(properties?: google.protobuf.IOneofDescriptorProto); - - /** OneofDescriptorProto name. */ - public name: string; + constructor(properties?: google.protobuf.IListValue); - /** OneofDescriptorProto options. */ - public options?: (google.protobuf.IOneofOptions|null); + /** ListValue values. */ + public values: google.protobuf.IValue[]; /** - * Creates a new OneofDescriptorProto instance using the specified properties. + * Creates a new ListValue instance using the specified properties. * @param [properties] Properties to set - * @returns OneofDescriptorProto instance + * @returns ListValue instance */ - public static create(properties?: google.protobuf.IOneofDescriptorProto): google.protobuf.OneofDescriptorProto; + public static create(properties?: google.protobuf.IListValue): google.protobuf.ListValue; /** - * Encodes the specified OneofDescriptorProto message. Does not implicitly {@link google.protobuf.OneofDescriptorProto.verify|verify} messages. - * @param message OneofDescriptorProto message or plain object to encode + * Encodes the specified ListValue message. Does not implicitly {@link google.protobuf.ListValue.verify|verify} messages. + * @param message ListValue message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ - public static encode(message: google.protobuf.IOneofDescriptorProto, writer?: $protobuf.Writer): $protobuf.Writer; + public static encode(message: google.protobuf.IListValue, 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 + * Encodes the specified ListValue message, length delimited. Does not implicitly {@link google.protobuf.ListValue.verify|verify} messages. + * @param message ListValue message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ - public static encodeDelimited(message: google.protobuf.IOneofDescriptorProto, writer?: $protobuf.Writer): $protobuf.Writer; + public static encodeDelimited(message: google.protobuf.IListValue, writer?: $protobuf.Writer): $protobuf.Writer; /** - * Decodes an OneofDescriptorProto message from the specified reader or buffer. + * Decodes a ListValue message from the specified reader or buffer. * @param reader Reader or buffer to decode from * @param [length] Message length if known beforehand - * @returns OneofDescriptorProto + * @returns ListValue * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.OneofDescriptorProto; + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.ListValue; /** - * Decodes an OneofDescriptorProto message from the specified reader or buffer, length delimited. + * Decodes a ListValue message from the specified reader or buffer, length delimited. * @param reader Reader or buffer to decode from - * @returns OneofDescriptorProto + * @returns ListValue * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.OneofDescriptorProto; + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.ListValue; /** - * Verifies an OneofDescriptorProto message. + * Verifies a ListValue message. * @param message Plain object to verify * @returns `null` if valid, otherwise the reason why it is not */ public static verify(message: { [k: string]: any }): (string|null); /** - * Creates an OneofDescriptorProto message from a plain object. Also converts values to their respective internal types. + * Creates a ListValue message from a plain object. Also converts values to their respective internal types. * @param object Plain object - * @returns OneofDescriptorProto + * @returns ListValue */ - public static fromObject(object: { [k: string]: any }): google.protobuf.OneofDescriptorProto; + public static fromObject(object: { [k: string]: any }): google.protobuf.ListValue; /** - * Creates a plain object from an OneofDescriptorProto message. Also converts values to other types if specified. - * @param message OneofDescriptorProto + * Creates a plain object from a ListValue message. Also converts values to other types if specified. + * @param message ListValue * @param [options] Conversion options * @returns Plain object */ - public static toObject(message: google.protobuf.OneofDescriptorProto, options?: $protobuf.IConversionOptions): { [k: string]: any }; + public static toObject(message: google.protobuf.ListValue, options?: $protobuf.IConversionOptions): { [k: string]: any }; /** - * Converts this OneofDescriptorProto to JSON. + * Converts this ListValue to JSON. * @returns JSON object */ public toJSON(): { [k: string]: any }; } + } - /** Properties of an EnumDescriptorProto. */ - interface IEnumDescriptorProto { + /** Namespace cloud. */ + namespace cloud { - /** EnumDescriptorProto name */ - name?: (string|null); + /** Namespace gkehub. */ + namespace gkehub { - /** EnumDescriptorProto value */ - value?: (google.protobuf.IEnumValueDescriptorProto[]|null); + /** Namespace configmanagement. */ + namespace configmanagement { - /** EnumDescriptorProto options */ - options?: (google.protobuf.IEnumOptions|null); + /** Namespace v1. */ + namespace v1 { - /** EnumDescriptorProto reservedRange */ - reservedRange?: (google.protobuf.EnumDescriptorProto.IEnumReservedRange[]|null); + /** DeploymentState enum. */ + enum DeploymentState { + DEPLOYMENT_STATE_UNSPECIFIED = 0, + NOT_INSTALLED = 1, + INSTALLED = 2, + ERROR = 3 + } - /** EnumDescriptorProto reservedName */ - reservedName?: (string[]|null); - } + /** Properties of a MembershipState. */ + interface IMembershipState { - /** Represents an EnumDescriptorProto. */ - class EnumDescriptorProto implements IEnumDescriptorProto { + /** MembershipState clusterName */ + clusterName?: (string|null); - /** - * Constructs a new EnumDescriptorProto. - * @param [properties] Properties to set - */ - constructor(properties?: google.protobuf.IEnumDescriptorProto); + /** MembershipState membershipSpec */ + membershipSpec?: (google.cloud.gkehub.configmanagement.v1.IMembershipSpec|null); - /** EnumDescriptorProto name. */ - public name: string; + /** MembershipState operatorState */ + operatorState?: (google.cloud.gkehub.configmanagement.v1.IOperatorState|null); - /** EnumDescriptorProto value. */ - public value: google.protobuf.IEnumValueDescriptorProto[]; + /** MembershipState configSyncState */ + configSyncState?: (google.cloud.gkehub.configmanagement.v1.IConfigSyncState|null); - /** EnumDescriptorProto options. */ - public options?: (google.protobuf.IEnumOptions|null); + /** MembershipState policyControllerState */ + policyControllerState?: (google.cloud.gkehub.configmanagement.v1.IPolicyControllerState|null); - /** EnumDescriptorProto reservedRange. */ - public reservedRange: google.protobuf.EnumDescriptorProto.IEnumReservedRange[]; + /** MembershipState hierarchyControllerState */ + hierarchyControllerState?: (google.cloud.gkehub.configmanagement.v1.IHierarchyControllerState|null); + } - /** EnumDescriptorProto reservedName. */ - public reservedName: string[]; + /** Represents a MembershipState. */ + class MembershipState implements IMembershipState { + + /** + * Constructs a new MembershipState. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.configmanagement.v1.IMembershipState); + + /** MembershipState clusterName. */ + public clusterName: string; + + /** MembershipState membershipSpec. */ + public membershipSpec?: (google.cloud.gkehub.configmanagement.v1.IMembershipSpec|null); + + /** MembershipState operatorState. */ + public operatorState?: (google.cloud.gkehub.configmanagement.v1.IOperatorState|null); + + /** MembershipState configSyncState. */ + public configSyncState?: (google.cloud.gkehub.configmanagement.v1.IConfigSyncState|null); + + /** MembershipState policyControllerState. */ + public policyControllerState?: (google.cloud.gkehub.configmanagement.v1.IPolicyControllerState|null); + + /** MembershipState hierarchyControllerState. */ + public hierarchyControllerState?: (google.cloud.gkehub.configmanagement.v1.IHierarchyControllerState|null); + + /** + * Creates a new MembershipState instance using the specified properties. + * @param [properties] Properties to set + * @returns MembershipState instance + */ + public static create(properties?: google.cloud.gkehub.configmanagement.v1.IMembershipState): google.cloud.gkehub.configmanagement.v1.MembershipState; + + /** + * Encodes the specified MembershipState message. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1.MembershipState.verify|verify} messages. + * @param message MembershipState message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.configmanagement.v1.IMembershipState, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified MembershipState message, length delimited. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1.MembershipState.verify|verify} messages. + * @param message MembershipState message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.configmanagement.v1.IMembershipState, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a MembershipState message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns MembershipState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.configmanagement.v1.MembershipState; + + /** + * Decodes a MembershipState message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns MembershipState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.configmanagement.v1.MembershipState; + + /** + * Verifies a MembershipState message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a MembershipState message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns MembershipState + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.configmanagement.v1.MembershipState; + + /** + * Creates a plain object from a MembershipState message. Also converts values to other types if specified. + * @param message MembershipState + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.configmanagement.v1.MembershipState, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this MembershipState to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } - /** - * 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; + /** Properties of a MembershipSpec. */ + interface IMembershipSpec { - /** - * 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; + /** MembershipSpec configSync */ + configSync?: (google.cloud.gkehub.configmanagement.v1.IConfigSync|null); - /** - * 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; + /** MembershipSpec policyController */ + policyController?: (google.cloud.gkehub.configmanagement.v1.IPolicyController|null); - /** - * 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; + /** MembershipSpec hierarchyController */ + hierarchyController?: (google.cloud.gkehub.configmanagement.v1.IHierarchyControllerConfig|null); - /** - * 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; + /** MembershipSpec version */ + version?: (string|null); + } - /** - * 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); + /** Represents a MembershipSpec. */ + class MembershipSpec implements IMembershipSpec { + + /** + * Constructs a new MembershipSpec. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.configmanagement.v1.IMembershipSpec); + + /** MembershipSpec configSync. */ + public configSync?: (google.cloud.gkehub.configmanagement.v1.IConfigSync|null); + + /** MembershipSpec policyController. */ + public policyController?: (google.cloud.gkehub.configmanagement.v1.IPolicyController|null); + + /** MembershipSpec hierarchyController. */ + public hierarchyController?: (google.cloud.gkehub.configmanagement.v1.IHierarchyControllerConfig|null); + + /** MembershipSpec version. */ + public version: string; + + /** + * Creates a new MembershipSpec instance using the specified properties. + * @param [properties] Properties to set + * @returns MembershipSpec instance + */ + public static create(properties?: google.cloud.gkehub.configmanagement.v1.IMembershipSpec): google.cloud.gkehub.configmanagement.v1.MembershipSpec; + + /** + * Encodes the specified MembershipSpec message. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1.MembershipSpec.verify|verify} messages. + * @param message MembershipSpec message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.configmanagement.v1.IMembershipSpec, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified MembershipSpec message, length delimited. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1.MembershipSpec.verify|verify} messages. + * @param message MembershipSpec message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.configmanagement.v1.IMembershipSpec, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a MembershipSpec message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns MembershipSpec + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.configmanagement.v1.MembershipSpec; + + /** + * Decodes a MembershipSpec message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns MembershipSpec + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.configmanagement.v1.MembershipSpec; + + /** + * Verifies a MembershipSpec message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a MembershipSpec message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns MembershipSpec + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.configmanagement.v1.MembershipSpec; + + /** + * Creates a plain object from a MembershipSpec message. Also converts values to other types if specified. + * @param message MembershipSpec + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.configmanagement.v1.MembershipSpec, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this MembershipSpec to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } - /** - * 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; + /** Properties of a ConfigSync. */ + interface IConfigSync { - /** - * 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 }; + /** ConfigSync git */ + git?: (google.cloud.gkehub.configmanagement.v1.IGitConfig|null); - /** - * Converts this EnumDescriptorProto to JSON. - * @returns JSON object - */ - public toJSON(): { [k: string]: any }; - } + /** ConfigSync sourceFormat */ + sourceFormat?: (string|null); + } - namespace EnumDescriptorProto { + /** Represents a ConfigSync. */ + class ConfigSync implements IConfigSync { + + /** + * Constructs a new ConfigSync. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.configmanagement.v1.IConfigSync); + + /** ConfigSync git. */ + public git?: (google.cloud.gkehub.configmanagement.v1.IGitConfig|null); + + /** ConfigSync sourceFormat. */ + public sourceFormat: string; + + /** + * Creates a new ConfigSync instance using the specified properties. + * @param [properties] Properties to set + * @returns ConfigSync instance + */ + public static create(properties?: google.cloud.gkehub.configmanagement.v1.IConfigSync): google.cloud.gkehub.configmanagement.v1.ConfigSync; + + /** + * Encodes the specified ConfigSync message. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1.ConfigSync.verify|verify} messages. + * @param message ConfigSync message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.configmanagement.v1.IConfigSync, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified ConfigSync message, length delimited. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1.ConfigSync.verify|verify} messages. + * @param message ConfigSync message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.configmanagement.v1.IConfigSync, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a ConfigSync message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns ConfigSync + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.configmanagement.v1.ConfigSync; + + /** + * Decodes a ConfigSync message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns ConfigSync + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.configmanagement.v1.ConfigSync; + + /** + * Verifies a ConfigSync message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a ConfigSync message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns ConfigSync + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.configmanagement.v1.ConfigSync; + + /** + * Creates a plain object from a ConfigSync message. Also converts values to other types if specified. + * @param message ConfigSync + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.configmanagement.v1.ConfigSync, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this ConfigSync to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } - /** Properties of an EnumReservedRange. */ - interface IEnumReservedRange { + /** Properties of a GitConfig. */ + interface IGitConfig { - /** EnumReservedRange start */ - start?: (number|null); + /** GitConfig syncRepo */ + syncRepo?: (string|null); - /** EnumReservedRange end */ - end?: (number|null); - } + /** GitConfig syncBranch */ + syncBranch?: (string|null); - /** Represents an EnumReservedRange. */ - class EnumReservedRange implements IEnumReservedRange { + /** GitConfig policyDir */ + policyDir?: (string|null); - /** - * Constructs a new EnumReservedRange. - * @param [properties] Properties to set - */ - constructor(properties?: google.protobuf.EnumDescriptorProto.IEnumReservedRange); + /** GitConfig syncWaitSecs */ + syncWaitSecs?: (number|Long|string|null); - /** EnumReservedRange start. */ - public start: number; + /** GitConfig syncRev */ + syncRev?: (string|null); - /** EnumReservedRange end. */ - public end: number; + /** GitConfig secretType */ + secretType?: (string|null); - /** - * 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; + /** GitConfig httpsProxy */ + httpsProxy?: (string|null); - /** - * 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; + /** GitConfig gcpServiceAccountEmail */ + gcpServiceAccountEmail?: (string|null); + } - /** - * 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; + /** Represents a GitConfig. */ + class GitConfig implements IGitConfig { + + /** + * Constructs a new GitConfig. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.configmanagement.v1.IGitConfig); + + /** GitConfig syncRepo. */ + public syncRepo: string; + + /** GitConfig syncBranch. */ + public syncBranch: string; + + /** GitConfig policyDir. */ + public policyDir: string; + + /** GitConfig syncWaitSecs. */ + public syncWaitSecs: (number|Long|string); + + /** GitConfig syncRev. */ + public syncRev: string; + + /** GitConfig secretType. */ + public secretType: string; + + /** GitConfig httpsProxy. */ + public httpsProxy: string; + + /** GitConfig gcpServiceAccountEmail. */ + public gcpServiceAccountEmail: string; + + /** + * Creates a new GitConfig instance using the specified properties. + * @param [properties] Properties to set + * @returns GitConfig instance + */ + public static create(properties?: google.cloud.gkehub.configmanagement.v1.IGitConfig): google.cloud.gkehub.configmanagement.v1.GitConfig; + + /** + * Encodes the specified GitConfig message. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1.GitConfig.verify|verify} messages. + * @param message GitConfig message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.configmanagement.v1.IGitConfig, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified GitConfig message, length delimited. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1.GitConfig.verify|verify} messages. + * @param message GitConfig message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.configmanagement.v1.IGitConfig, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a GitConfig message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns GitConfig + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.configmanagement.v1.GitConfig; + + /** + * Decodes a GitConfig message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns GitConfig + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.configmanagement.v1.GitConfig; + + /** + * Verifies a GitConfig message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a GitConfig message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns GitConfig + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.configmanagement.v1.GitConfig; + + /** + * Creates a plain object from a GitConfig message. Also converts values to other types if specified. + * @param message GitConfig + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.configmanagement.v1.GitConfig, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this GitConfig to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } - /** - * 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; + /** Properties of a PolicyController. */ + interface IPolicyController { - /** - * 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; + /** PolicyController enabled */ + enabled?: (boolean|null); - /** - * 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); + /** PolicyController templateLibraryInstalled */ + templateLibraryInstalled?: (boolean|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; + /** PolicyController auditIntervalSeconds */ + auditIntervalSeconds?: (number|Long|string|null); - /** - * 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 }; + /** PolicyController exemptableNamespaces */ + exemptableNamespaces?: (string[]|null); - /** - * Converts this EnumReservedRange to JSON. - * @returns JSON object - */ - public toJSON(): { [k: string]: any }; - } - } + /** PolicyController referentialRulesEnabled */ + referentialRulesEnabled?: (boolean|null); - /** Properties of an EnumValueDescriptorProto. */ - interface IEnumValueDescriptorProto { + /** PolicyController logDeniesEnabled */ + logDeniesEnabled?: (boolean|null); + } - /** EnumValueDescriptorProto name */ - name?: (string|null); + /** Represents a PolicyController. */ + class PolicyController implements IPolicyController { + + /** + * Constructs a new PolicyController. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.configmanagement.v1.IPolicyController); + + /** PolicyController enabled. */ + public enabled: boolean; + + /** PolicyController templateLibraryInstalled. */ + public templateLibraryInstalled?: (boolean|null); + + /** PolicyController auditIntervalSeconds. */ + public auditIntervalSeconds?: (number|Long|string|null); + + /** PolicyController exemptableNamespaces. */ + public exemptableNamespaces: string[]; + + /** PolicyController referentialRulesEnabled. */ + public referentialRulesEnabled: boolean; + + /** PolicyController logDeniesEnabled. */ + public logDeniesEnabled: boolean; + + /** PolicyController _templateLibraryInstalled. */ + public _templateLibraryInstalled?: "templateLibraryInstalled"; + + /** PolicyController _auditIntervalSeconds. */ + public _auditIntervalSeconds?: "auditIntervalSeconds"; + + /** + * Creates a new PolicyController instance using the specified properties. + * @param [properties] Properties to set + * @returns PolicyController instance + */ + public static create(properties?: google.cloud.gkehub.configmanagement.v1.IPolicyController): google.cloud.gkehub.configmanagement.v1.PolicyController; + + /** + * Encodes the specified PolicyController message. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1.PolicyController.verify|verify} messages. + * @param message PolicyController message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.configmanagement.v1.IPolicyController, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified PolicyController message, length delimited. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1.PolicyController.verify|verify} messages. + * @param message PolicyController message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.configmanagement.v1.IPolicyController, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a PolicyController message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns PolicyController + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.configmanagement.v1.PolicyController; + + /** + * Decodes a PolicyController message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns PolicyController + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.configmanagement.v1.PolicyController; + + /** + * Verifies a PolicyController message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a PolicyController message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns PolicyController + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.configmanagement.v1.PolicyController; + + /** + * Creates a plain object from a PolicyController message. Also converts values to other types if specified. + * @param message PolicyController + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.configmanagement.v1.PolicyController, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this PolicyController to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } - /** EnumValueDescriptorProto number */ - number?: (number|null); + /** Properties of a HierarchyControllerConfig. */ + interface IHierarchyControllerConfig { - /** EnumValueDescriptorProto options */ - options?: (google.protobuf.IEnumValueOptions|null); - } + /** HierarchyControllerConfig enabled */ + enabled?: (boolean|null); - /** Represents an EnumValueDescriptorProto. */ - class EnumValueDescriptorProto implements IEnumValueDescriptorProto { + /** HierarchyControllerConfig enablePodTreeLabels */ + enablePodTreeLabels?: (boolean|null); - /** - * Constructs a new EnumValueDescriptorProto. - * @param [properties] Properties to set - */ - constructor(properties?: google.protobuf.IEnumValueDescriptorProto); + /** HierarchyControllerConfig enableHierarchicalResourceQuota */ + enableHierarchicalResourceQuota?: (boolean|null); + } - /** EnumValueDescriptorProto name. */ - public name: string; + /** Represents a HierarchyControllerConfig. */ + class HierarchyControllerConfig implements IHierarchyControllerConfig { + + /** + * Constructs a new HierarchyControllerConfig. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.configmanagement.v1.IHierarchyControllerConfig); + + /** HierarchyControllerConfig enabled. */ + public enabled: boolean; + + /** HierarchyControllerConfig enablePodTreeLabels. */ + public enablePodTreeLabels: boolean; + + /** HierarchyControllerConfig enableHierarchicalResourceQuota. */ + public enableHierarchicalResourceQuota: boolean; + + /** + * Creates a new HierarchyControllerConfig instance using the specified properties. + * @param [properties] Properties to set + * @returns HierarchyControllerConfig instance + */ + public static create(properties?: google.cloud.gkehub.configmanagement.v1.IHierarchyControllerConfig): google.cloud.gkehub.configmanagement.v1.HierarchyControllerConfig; + + /** + * Encodes the specified HierarchyControllerConfig message. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1.HierarchyControllerConfig.verify|verify} messages. + * @param message HierarchyControllerConfig message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.configmanagement.v1.IHierarchyControllerConfig, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified HierarchyControllerConfig message, length delimited. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1.HierarchyControllerConfig.verify|verify} messages. + * @param message HierarchyControllerConfig message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.configmanagement.v1.IHierarchyControllerConfig, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a HierarchyControllerConfig message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns HierarchyControllerConfig + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.configmanagement.v1.HierarchyControllerConfig; + + /** + * Decodes a HierarchyControllerConfig message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns HierarchyControllerConfig + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.configmanagement.v1.HierarchyControllerConfig; + + /** + * Verifies a HierarchyControllerConfig message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a HierarchyControllerConfig message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns HierarchyControllerConfig + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.configmanagement.v1.HierarchyControllerConfig; + + /** + * Creates a plain object from a HierarchyControllerConfig message. Also converts values to other types if specified. + * @param message HierarchyControllerConfig + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.configmanagement.v1.HierarchyControllerConfig, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this HierarchyControllerConfig to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } - /** EnumValueDescriptorProto number. */ - public number: number; + /** Properties of a HierarchyControllerDeploymentState. */ + interface IHierarchyControllerDeploymentState { - /** EnumValueDescriptorProto options. */ - public options?: (google.protobuf.IEnumValueOptions|null); + /** HierarchyControllerDeploymentState hnc */ + hnc?: (google.cloud.gkehub.configmanagement.v1.DeploymentState|keyof typeof google.cloud.gkehub.configmanagement.v1.DeploymentState|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; + /** HierarchyControllerDeploymentState extension */ + extension?: (google.cloud.gkehub.configmanagement.v1.DeploymentState|keyof typeof google.cloud.gkehub.configmanagement.v1.DeploymentState|null); + } - /** - * 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; + /** Represents a HierarchyControllerDeploymentState. */ + class HierarchyControllerDeploymentState implements IHierarchyControllerDeploymentState { + + /** + * Constructs a new HierarchyControllerDeploymentState. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.configmanagement.v1.IHierarchyControllerDeploymentState); + + /** HierarchyControllerDeploymentState hnc. */ + public hnc: (google.cloud.gkehub.configmanagement.v1.DeploymentState|keyof typeof google.cloud.gkehub.configmanagement.v1.DeploymentState); + + /** HierarchyControllerDeploymentState extension. */ + public extension: (google.cloud.gkehub.configmanagement.v1.DeploymentState|keyof typeof google.cloud.gkehub.configmanagement.v1.DeploymentState); + + /** + * Creates a new HierarchyControllerDeploymentState instance using the specified properties. + * @param [properties] Properties to set + * @returns HierarchyControllerDeploymentState instance + */ + public static create(properties?: google.cloud.gkehub.configmanagement.v1.IHierarchyControllerDeploymentState): google.cloud.gkehub.configmanagement.v1.HierarchyControllerDeploymentState; + + /** + * Encodes the specified HierarchyControllerDeploymentState message. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1.HierarchyControllerDeploymentState.verify|verify} messages. + * @param message HierarchyControllerDeploymentState message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.configmanagement.v1.IHierarchyControllerDeploymentState, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified HierarchyControllerDeploymentState message, length delimited. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1.HierarchyControllerDeploymentState.verify|verify} messages. + * @param message HierarchyControllerDeploymentState message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.configmanagement.v1.IHierarchyControllerDeploymentState, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a HierarchyControllerDeploymentState message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns HierarchyControllerDeploymentState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.configmanagement.v1.HierarchyControllerDeploymentState; + + /** + * Decodes a HierarchyControllerDeploymentState message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns HierarchyControllerDeploymentState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.configmanagement.v1.HierarchyControllerDeploymentState; + + /** + * Verifies a HierarchyControllerDeploymentState message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a HierarchyControllerDeploymentState message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns HierarchyControllerDeploymentState + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.configmanagement.v1.HierarchyControllerDeploymentState; + + /** + * Creates a plain object from a HierarchyControllerDeploymentState message. Also converts values to other types if specified. + * @param message HierarchyControllerDeploymentState + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.configmanagement.v1.HierarchyControllerDeploymentState, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this HierarchyControllerDeploymentState to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } - /** - * 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; + /** Properties of a HierarchyControllerVersion. */ + interface IHierarchyControllerVersion { - /** - * 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; + /** HierarchyControllerVersion hnc */ + hnc?: (string|null); - /** - * 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; + /** HierarchyControllerVersion extension */ + extension?: (string|null); + } - /** - * 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); + /** Represents a HierarchyControllerVersion. */ + class HierarchyControllerVersion implements IHierarchyControllerVersion { + + /** + * Constructs a new HierarchyControllerVersion. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.configmanagement.v1.IHierarchyControllerVersion); + + /** HierarchyControllerVersion hnc. */ + public hnc: string; + + /** HierarchyControllerVersion extension. */ + public extension: string; + + /** + * Creates a new HierarchyControllerVersion instance using the specified properties. + * @param [properties] Properties to set + * @returns HierarchyControllerVersion instance + */ + public static create(properties?: google.cloud.gkehub.configmanagement.v1.IHierarchyControllerVersion): google.cloud.gkehub.configmanagement.v1.HierarchyControllerVersion; + + /** + * Encodes the specified HierarchyControllerVersion message. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1.HierarchyControllerVersion.verify|verify} messages. + * @param message HierarchyControllerVersion message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.configmanagement.v1.IHierarchyControllerVersion, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified HierarchyControllerVersion message, length delimited. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1.HierarchyControllerVersion.verify|verify} messages. + * @param message HierarchyControllerVersion message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.configmanagement.v1.IHierarchyControllerVersion, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a HierarchyControllerVersion message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns HierarchyControllerVersion + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.configmanagement.v1.HierarchyControllerVersion; + + /** + * Decodes a HierarchyControllerVersion message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns HierarchyControllerVersion + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.configmanagement.v1.HierarchyControllerVersion; + + /** + * Verifies a HierarchyControllerVersion message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a HierarchyControllerVersion message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns HierarchyControllerVersion + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.configmanagement.v1.HierarchyControllerVersion; + + /** + * Creates a plain object from a HierarchyControllerVersion message. Also converts values to other types if specified. + * @param message HierarchyControllerVersion + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.configmanagement.v1.HierarchyControllerVersion, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this HierarchyControllerVersion to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } - /** - * 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; + /** Properties of a HierarchyControllerState. */ + interface IHierarchyControllerState { - /** - * 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 }; + /** HierarchyControllerState version */ + version?: (google.cloud.gkehub.configmanagement.v1.IHierarchyControllerVersion|null); - /** - * Converts this EnumValueDescriptorProto to JSON. - * @returns JSON object - */ - public toJSON(): { [k: string]: any }; - } + /** HierarchyControllerState state */ + state?: (google.cloud.gkehub.configmanagement.v1.IHierarchyControllerDeploymentState|null); + } - /** Properties of a ServiceDescriptorProto. */ - interface IServiceDescriptorProto { + /** Represents a HierarchyControllerState. */ + class HierarchyControllerState implements IHierarchyControllerState { + + /** + * Constructs a new HierarchyControllerState. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.configmanagement.v1.IHierarchyControllerState); + + /** HierarchyControllerState version. */ + public version?: (google.cloud.gkehub.configmanagement.v1.IHierarchyControllerVersion|null); + + /** HierarchyControllerState state. */ + public state?: (google.cloud.gkehub.configmanagement.v1.IHierarchyControllerDeploymentState|null); + + /** + * Creates a new HierarchyControllerState instance using the specified properties. + * @param [properties] Properties to set + * @returns HierarchyControllerState instance + */ + public static create(properties?: google.cloud.gkehub.configmanagement.v1.IHierarchyControllerState): google.cloud.gkehub.configmanagement.v1.HierarchyControllerState; + + /** + * Encodes the specified HierarchyControllerState message. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1.HierarchyControllerState.verify|verify} messages. + * @param message HierarchyControllerState message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.configmanagement.v1.IHierarchyControllerState, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified HierarchyControllerState message, length delimited. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1.HierarchyControllerState.verify|verify} messages. + * @param message HierarchyControllerState message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.configmanagement.v1.IHierarchyControllerState, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a HierarchyControllerState message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns HierarchyControllerState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.configmanagement.v1.HierarchyControllerState; + + /** + * Decodes a HierarchyControllerState message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns HierarchyControllerState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.configmanagement.v1.HierarchyControllerState; + + /** + * Verifies a HierarchyControllerState message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a HierarchyControllerState message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns HierarchyControllerState + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.configmanagement.v1.HierarchyControllerState; + + /** + * Creates a plain object from a HierarchyControllerState message. Also converts values to other types if specified. + * @param message HierarchyControllerState + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.configmanagement.v1.HierarchyControllerState, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this HierarchyControllerState to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } - /** ServiceDescriptorProto name */ - name?: (string|null); + /** Properties of an OperatorState. */ + interface IOperatorState { - /** ServiceDescriptorProto method */ - method?: (google.protobuf.IMethodDescriptorProto[]|null); + /** OperatorState version */ + version?: (string|null); - /** ServiceDescriptorProto options */ - options?: (google.protobuf.IServiceOptions|null); - } + /** OperatorState deploymentState */ + deploymentState?: (google.cloud.gkehub.configmanagement.v1.DeploymentState|keyof typeof google.cloud.gkehub.configmanagement.v1.DeploymentState|null); - /** Represents a ServiceDescriptorProto. */ - class ServiceDescriptorProto implements IServiceDescriptorProto { + /** OperatorState errors */ + errors?: (google.cloud.gkehub.configmanagement.v1.IInstallError[]|null); + } - /** - * Constructs a new ServiceDescriptorProto. - * @param [properties] Properties to set - */ - constructor(properties?: google.protobuf.IServiceDescriptorProto); + /** Represents an OperatorState. */ + class OperatorState implements IOperatorState { + + /** + * Constructs a new OperatorState. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.configmanagement.v1.IOperatorState); + + /** OperatorState version. */ + public version: string; + + /** OperatorState deploymentState. */ + public deploymentState: (google.cloud.gkehub.configmanagement.v1.DeploymentState|keyof typeof google.cloud.gkehub.configmanagement.v1.DeploymentState); + + /** OperatorState errors. */ + public errors: google.cloud.gkehub.configmanagement.v1.IInstallError[]; + + /** + * Creates a new OperatorState instance using the specified properties. + * @param [properties] Properties to set + * @returns OperatorState instance + */ + public static create(properties?: google.cloud.gkehub.configmanagement.v1.IOperatorState): google.cloud.gkehub.configmanagement.v1.OperatorState; + + /** + * Encodes the specified OperatorState message. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1.OperatorState.verify|verify} messages. + * @param message OperatorState message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.configmanagement.v1.IOperatorState, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified OperatorState message, length delimited. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1.OperatorState.verify|verify} messages. + * @param message OperatorState message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.configmanagement.v1.IOperatorState, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes an OperatorState message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns OperatorState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.configmanagement.v1.OperatorState; + + /** + * Decodes an OperatorState message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns OperatorState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.configmanagement.v1.OperatorState; + + /** + * Verifies an OperatorState message. + * @param message Plain 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 OperatorState message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns OperatorState + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.configmanagement.v1.OperatorState; + + /** + * Creates a plain object from an OperatorState message. Also converts values to other types if specified. + * @param message OperatorState + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.configmanagement.v1.OperatorState, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this OperatorState to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } - /** ServiceDescriptorProto name. */ - public name: string; + /** Properties of an InstallError. */ + interface IInstallError { - /** ServiceDescriptorProto method. */ - public method: google.protobuf.IMethodDescriptorProto[]; + /** InstallError errorMessage */ + errorMessage?: (string|null); + } - /** ServiceDescriptorProto options. */ - public options?: (google.protobuf.IServiceOptions|null); + /** Represents an InstallError. */ + class InstallError implements IInstallError { + + /** + * Constructs a new InstallError. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.configmanagement.v1.IInstallError); + + /** InstallError errorMessage. */ + public errorMessage: string; + + /** + * Creates a new InstallError instance using the specified properties. + * @param [properties] Properties to set + * @returns InstallError instance + */ + public static create(properties?: google.cloud.gkehub.configmanagement.v1.IInstallError): google.cloud.gkehub.configmanagement.v1.InstallError; + + /** + * Encodes the specified InstallError message. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1.InstallError.verify|verify} messages. + * @param message InstallError message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.configmanagement.v1.IInstallError, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified InstallError message, length delimited. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1.InstallError.verify|verify} messages. + * @param message InstallError message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.configmanagement.v1.IInstallError, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes an InstallError message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns InstallError + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.configmanagement.v1.InstallError; + + /** + * Decodes an InstallError message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns InstallError + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.configmanagement.v1.InstallError; + + /** + * Verifies an InstallError message. + * @param message Plain 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 InstallError message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns InstallError + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.configmanagement.v1.InstallError; + + /** + * Creates a plain object from an InstallError message. Also converts values to other types if specified. + * @param message InstallError + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.configmanagement.v1.InstallError, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this InstallError to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } - /** - * 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; + /** Properties of a ConfigSyncState. */ + interface IConfigSyncState { - /** - * 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; + /** ConfigSyncState version */ + version?: (google.cloud.gkehub.configmanagement.v1.IConfigSyncVersion|null); - /** - * 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; + /** ConfigSyncState deploymentState */ + deploymentState?: (google.cloud.gkehub.configmanagement.v1.IConfigSyncDeploymentState|null); - /** - * 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; + /** ConfigSyncState syncState */ + syncState?: (google.cloud.gkehub.configmanagement.v1.ISyncState|null); + } - /** - * 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; + /** Represents a ConfigSyncState. */ + class ConfigSyncState implements IConfigSyncState { + + /** + * Constructs a new ConfigSyncState. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.configmanagement.v1.IConfigSyncState); + + /** ConfigSyncState version. */ + public version?: (google.cloud.gkehub.configmanagement.v1.IConfigSyncVersion|null); + + /** ConfigSyncState deploymentState. */ + public deploymentState?: (google.cloud.gkehub.configmanagement.v1.IConfigSyncDeploymentState|null); + + /** ConfigSyncState syncState. */ + public syncState?: (google.cloud.gkehub.configmanagement.v1.ISyncState|null); + + /** + * Creates a new ConfigSyncState instance using the specified properties. + * @param [properties] Properties to set + * @returns ConfigSyncState instance + */ + public static create(properties?: google.cloud.gkehub.configmanagement.v1.IConfigSyncState): google.cloud.gkehub.configmanagement.v1.ConfigSyncState; + + /** + * Encodes the specified ConfigSyncState message. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1.ConfigSyncState.verify|verify} messages. + * @param message ConfigSyncState message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.configmanagement.v1.IConfigSyncState, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified ConfigSyncState message, length delimited. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1.ConfigSyncState.verify|verify} messages. + * @param message ConfigSyncState message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.configmanagement.v1.IConfigSyncState, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a ConfigSyncState message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns ConfigSyncState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.configmanagement.v1.ConfigSyncState; + + /** + * Decodes a ConfigSyncState message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns ConfigSyncState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.configmanagement.v1.ConfigSyncState; + + /** + * Verifies a ConfigSyncState message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a ConfigSyncState message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns ConfigSyncState + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.configmanagement.v1.ConfigSyncState; + + /** + * Creates a plain object from a ConfigSyncState message. Also converts values to other types if specified. + * @param message ConfigSyncState + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.configmanagement.v1.ConfigSyncState, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this ConfigSyncState to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } - /** - * 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); + /** Properties of a ConfigSyncVersion. */ + interface IConfigSyncVersion { - /** - * 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; + /** ConfigSyncVersion importer */ + importer?: (string|null); - /** - * 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 }; + /** ConfigSyncVersion syncer */ + syncer?: (string|null); - /** - * Converts this ServiceDescriptorProto to JSON. - * @returns JSON object - */ - public toJSON(): { [k: string]: any }; - } + /** ConfigSyncVersion gitSync */ + gitSync?: (string|null); - /** Properties of a MethodDescriptorProto. */ - interface IMethodDescriptorProto { + /** ConfigSyncVersion monitor */ + monitor?: (string|null); - /** MethodDescriptorProto name */ - name?: (string|null); + /** ConfigSyncVersion reconcilerManager */ + reconcilerManager?: (string|null); - /** MethodDescriptorProto inputType */ - inputType?: (string|null); + /** ConfigSyncVersion rootReconciler */ + rootReconciler?: (string|null); + } - /** MethodDescriptorProto outputType */ - outputType?: (string|null); + /** Represents a ConfigSyncVersion. */ + class ConfigSyncVersion implements IConfigSyncVersion { + + /** + * Constructs a new ConfigSyncVersion. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.configmanagement.v1.IConfigSyncVersion); + + /** ConfigSyncVersion importer. */ + public importer: string; + + /** ConfigSyncVersion syncer. */ + public syncer: string; + + /** ConfigSyncVersion gitSync. */ + public gitSync: string; + + /** ConfigSyncVersion monitor. */ + public monitor: string; + + /** ConfigSyncVersion reconcilerManager. */ + public reconcilerManager: string; + + /** ConfigSyncVersion rootReconciler. */ + public rootReconciler: string; + + /** + * Creates a new ConfigSyncVersion instance using the specified properties. + * @param [properties] Properties to set + * @returns ConfigSyncVersion instance + */ + public static create(properties?: google.cloud.gkehub.configmanagement.v1.IConfigSyncVersion): google.cloud.gkehub.configmanagement.v1.ConfigSyncVersion; + + /** + * Encodes the specified ConfigSyncVersion message. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1.ConfigSyncVersion.verify|verify} messages. + * @param message ConfigSyncVersion message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.configmanagement.v1.IConfigSyncVersion, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified ConfigSyncVersion message, length delimited. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1.ConfigSyncVersion.verify|verify} messages. + * @param message ConfigSyncVersion message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.configmanagement.v1.IConfigSyncVersion, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a ConfigSyncVersion message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns ConfigSyncVersion + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.configmanagement.v1.ConfigSyncVersion; + + /** + * Decodes a ConfigSyncVersion message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns ConfigSyncVersion + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.configmanagement.v1.ConfigSyncVersion; + + /** + * Verifies a ConfigSyncVersion message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a ConfigSyncVersion message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns ConfigSyncVersion + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.configmanagement.v1.ConfigSyncVersion; + + /** + * Creates a plain object from a ConfigSyncVersion message. Also converts values to other types if specified. + * @param message ConfigSyncVersion + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.configmanagement.v1.ConfigSyncVersion, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this ConfigSyncVersion to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } - /** MethodDescriptorProto options */ - options?: (google.protobuf.IMethodOptions|null); + /** Properties of a ConfigSyncDeploymentState. */ + interface IConfigSyncDeploymentState { - /** MethodDescriptorProto clientStreaming */ - clientStreaming?: (boolean|null); + /** ConfigSyncDeploymentState importer */ + importer?: (google.cloud.gkehub.configmanagement.v1.DeploymentState|keyof typeof google.cloud.gkehub.configmanagement.v1.DeploymentState|null); - /** MethodDescriptorProto serverStreaming */ - serverStreaming?: (boolean|null); - } + /** ConfigSyncDeploymentState syncer */ + syncer?: (google.cloud.gkehub.configmanagement.v1.DeploymentState|keyof typeof google.cloud.gkehub.configmanagement.v1.DeploymentState|null); - /** Represents a MethodDescriptorProto. */ - class MethodDescriptorProto implements IMethodDescriptorProto { + /** ConfigSyncDeploymentState gitSync */ + gitSync?: (google.cloud.gkehub.configmanagement.v1.DeploymentState|keyof typeof google.cloud.gkehub.configmanagement.v1.DeploymentState|null); - /** - * Constructs a new MethodDescriptorProto. - * @param [properties] Properties to set - */ - constructor(properties?: google.protobuf.IMethodDescriptorProto); + /** ConfigSyncDeploymentState monitor */ + monitor?: (google.cloud.gkehub.configmanagement.v1.DeploymentState|keyof typeof google.cloud.gkehub.configmanagement.v1.DeploymentState|null); - /** MethodDescriptorProto name. */ - public name: string; + /** ConfigSyncDeploymentState reconcilerManager */ + reconcilerManager?: (google.cloud.gkehub.configmanagement.v1.DeploymentState|keyof typeof google.cloud.gkehub.configmanagement.v1.DeploymentState|null); - /** MethodDescriptorProto inputType. */ - public inputType: string; + /** ConfigSyncDeploymentState rootReconciler */ + rootReconciler?: (google.cloud.gkehub.configmanagement.v1.DeploymentState|keyof typeof google.cloud.gkehub.configmanagement.v1.DeploymentState|null); + } - /** MethodDescriptorProto outputType. */ - public outputType: string; + /** Represents a ConfigSyncDeploymentState. */ + class ConfigSyncDeploymentState implements IConfigSyncDeploymentState { + + /** + * Constructs a new ConfigSyncDeploymentState. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.configmanagement.v1.IConfigSyncDeploymentState); + + /** ConfigSyncDeploymentState importer. */ + public importer: (google.cloud.gkehub.configmanagement.v1.DeploymentState|keyof typeof google.cloud.gkehub.configmanagement.v1.DeploymentState); + + /** ConfigSyncDeploymentState syncer. */ + public syncer: (google.cloud.gkehub.configmanagement.v1.DeploymentState|keyof typeof google.cloud.gkehub.configmanagement.v1.DeploymentState); + + /** ConfigSyncDeploymentState gitSync. */ + public gitSync: (google.cloud.gkehub.configmanagement.v1.DeploymentState|keyof typeof google.cloud.gkehub.configmanagement.v1.DeploymentState); + + /** ConfigSyncDeploymentState monitor. */ + public monitor: (google.cloud.gkehub.configmanagement.v1.DeploymentState|keyof typeof google.cloud.gkehub.configmanagement.v1.DeploymentState); + + /** ConfigSyncDeploymentState reconcilerManager. */ + public reconcilerManager: (google.cloud.gkehub.configmanagement.v1.DeploymentState|keyof typeof google.cloud.gkehub.configmanagement.v1.DeploymentState); + + /** ConfigSyncDeploymentState rootReconciler. */ + public rootReconciler: (google.cloud.gkehub.configmanagement.v1.DeploymentState|keyof typeof google.cloud.gkehub.configmanagement.v1.DeploymentState); + + /** + * Creates a new ConfigSyncDeploymentState instance using the specified properties. + * @param [properties] Properties to set + * @returns ConfigSyncDeploymentState instance + */ + public static create(properties?: google.cloud.gkehub.configmanagement.v1.IConfigSyncDeploymentState): google.cloud.gkehub.configmanagement.v1.ConfigSyncDeploymentState; + + /** + * Encodes the specified ConfigSyncDeploymentState message. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1.ConfigSyncDeploymentState.verify|verify} messages. + * @param message ConfigSyncDeploymentState message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.configmanagement.v1.IConfigSyncDeploymentState, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified ConfigSyncDeploymentState message, length delimited. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1.ConfigSyncDeploymentState.verify|verify} messages. + * @param message ConfigSyncDeploymentState message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.configmanagement.v1.IConfigSyncDeploymentState, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a ConfigSyncDeploymentState message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns ConfigSyncDeploymentState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.configmanagement.v1.ConfigSyncDeploymentState; + + /** + * Decodes a ConfigSyncDeploymentState message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns ConfigSyncDeploymentState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.configmanagement.v1.ConfigSyncDeploymentState; + + /** + * Verifies a ConfigSyncDeploymentState message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a ConfigSyncDeploymentState message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns ConfigSyncDeploymentState + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.configmanagement.v1.ConfigSyncDeploymentState; + + /** + * Creates a plain object from a ConfigSyncDeploymentState message. Also converts values to other types if specified. + * @param message ConfigSyncDeploymentState + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.configmanagement.v1.ConfigSyncDeploymentState, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this ConfigSyncDeploymentState to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } - /** MethodDescriptorProto options. */ - public options?: (google.protobuf.IMethodOptions|null); + /** Properties of a SyncState. */ + interface ISyncState { - /** MethodDescriptorProto clientStreaming. */ - public clientStreaming: boolean; + /** SyncState sourceToken */ + sourceToken?: (string|null); - /** MethodDescriptorProto serverStreaming. */ - public serverStreaming: boolean; + /** SyncState importToken */ + importToken?: (string|null); - /** - * 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; + /** SyncState syncToken */ + syncToken?: (string|null); - /** - * 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; + /** SyncState lastSync */ + lastSync?: (string|null); - /** - * 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; + /** SyncState lastSyncTime */ + lastSyncTime?: (google.protobuf.ITimestamp|null); - /** - * 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; + /** SyncState code */ + code?: (google.cloud.gkehub.configmanagement.v1.SyncState.SyncCode|keyof typeof google.cloud.gkehub.configmanagement.v1.SyncState.SyncCode|null); - /** - * 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; + /** SyncState errors */ + errors?: (google.cloud.gkehub.configmanagement.v1.ISyncError[]|null); + } - /** - * 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); + /** Represents a SyncState. */ + class SyncState implements ISyncState { + + /** + * Constructs a new SyncState. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.configmanagement.v1.ISyncState); + + /** SyncState sourceToken. */ + public sourceToken: string; + + /** SyncState importToken. */ + public importToken: string; + + /** SyncState syncToken. */ + public syncToken: string; + + /** SyncState lastSync. */ + public lastSync: string; + + /** SyncState lastSyncTime. */ + public lastSyncTime?: (google.protobuf.ITimestamp|null); + + /** SyncState code. */ + public code: (google.cloud.gkehub.configmanagement.v1.SyncState.SyncCode|keyof typeof google.cloud.gkehub.configmanagement.v1.SyncState.SyncCode); + + /** SyncState errors. */ + public errors: google.cloud.gkehub.configmanagement.v1.ISyncError[]; + + /** + * Creates a new SyncState instance using the specified properties. + * @param [properties] Properties to set + * @returns SyncState instance + */ + public static create(properties?: google.cloud.gkehub.configmanagement.v1.ISyncState): google.cloud.gkehub.configmanagement.v1.SyncState; + + /** + * Encodes the specified SyncState message. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1.SyncState.verify|verify} messages. + * @param message SyncState message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.configmanagement.v1.ISyncState, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified SyncState message, length delimited. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1.SyncState.verify|verify} messages. + * @param message SyncState message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.configmanagement.v1.ISyncState, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a SyncState message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns SyncState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.configmanagement.v1.SyncState; + + /** + * Decodes a SyncState message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns SyncState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.configmanagement.v1.SyncState; + + /** + * Verifies a SyncState message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a SyncState message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns SyncState + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.configmanagement.v1.SyncState; + + /** + * Creates a plain object from a SyncState message. Also converts values to other types if specified. + * @param message SyncState + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.configmanagement.v1.SyncState, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this SyncState to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } - /** - * 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; + namespace SyncState { + + /** SyncCode enum. */ + enum SyncCode { + SYNC_CODE_UNSPECIFIED = 0, + SYNCED = 1, + PENDING = 2, + ERROR = 3, + NOT_CONFIGURED = 4, + NOT_INSTALLED = 5, + UNAUTHORIZED = 6, + UNREACHABLE = 7 + } + } - /** - * 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 }; + /** Properties of a SyncError. */ + interface ISyncError { - /** - * Converts this MethodDescriptorProto to JSON. - * @returns JSON object - */ - public toJSON(): { [k: string]: any }; - } + /** SyncError code */ + code?: (string|null); - /** Properties of a FileOptions. */ - interface IFileOptions { + /** SyncError errorMessage */ + errorMessage?: (string|null); - /** FileOptions javaPackage */ - javaPackage?: (string|null); + /** SyncError errorResources */ + errorResources?: (google.cloud.gkehub.configmanagement.v1.IErrorResource[]|null); + } - /** FileOptions javaOuterClassname */ - javaOuterClassname?: (string|null); + /** Represents a SyncError. */ + class SyncError implements ISyncError { + + /** + * Constructs a new SyncError. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.configmanagement.v1.ISyncError); + + /** SyncError code. */ + public code: string; + + /** SyncError errorMessage. */ + public errorMessage: string; + + /** SyncError errorResources. */ + public errorResources: google.cloud.gkehub.configmanagement.v1.IErrorResource[]; + + /** + * Creates a new SyncError instance using the specified properties. + * @param [properties] Properties to set + * @returns SyncError instance + */ + public static create(properties?: google.cloud.gkehub.configmanagement.v1.ISyncError): google.cloud.gkehub.configmanagement.v1.SyncError; + + /** + * Encodes the specified SyncError message. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1.SyncError.verify|verify} messages. + * @param message SyncError message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.configmanagement.v1.ISyncError, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified SyncError message, length delimited. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1.SyncError.verify|verify} messages. + * @param message SyncError message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.configmanagement.v1.ISyncError, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a SyncError message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns SyncError + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.configmanagement.v1.SyncError; + + /** + * Decodes a SyncError message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns SyncError + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.configmanagement.v1.SyncError; + + /** + * Verifies a SyncError message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a SyncError message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns SyncError + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.configmanagement.v1.SyncError; + + /** + * Creates a plain object from a SyncError message. Also converts values to other types if specified. + * @param message SyncError + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.configmanagement.v1.SyncError, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this SyncError to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } - /** FileOptions javaMultipleFiles */ - javaMultipleFiles?: (boolean|null); + /** Properties of an ErrorResource. */ + interface IErrorResource { - /** FileOptions javaGenerateEqualsAndHash */ - javaGenerateEqualsAndHash?: (boolean|null); + /** ErrorResource sourcePath */ + sourcePath?: (string|null); - /** FileOptions javaStringCheckUtf8 */ - javaStringCheckUtf8?: (boolean|null); + /** ErrorResource resourceName */ + resourceName?: (string|null); - /** FileOptions optimizeFor */ - optimizeFor?: (google.protobuf.FileOptions.OptimizeMode|keyof typeof google.protobuf.FileOptions.OptimizeMode|null); + /** ErrorResource resourceNamespace */ + resourceNamespace?: (string|null); - /** FileOptions goPackage */ - goPackage?: (string|null); + /** ErrorResource resourceGvk */ + resourceGvk?: (google.cloud.gkehub.configmanagement.v1.IGroupVersionKind|null); + } - /** FileOptions ccGenericServices */ - ccGenericServices?: (boolean|null); + /** Represents an ErrorResource. */ + class ErrorResource implements IErrorResource { + + /** + * Constructs a new ErrorResource. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.configmanagement.v1.IErrorResource); + + /** ErrorResource sourcePath. */ + public sourcePath: string; + + /** ErrorResource resourceName. */ + public resourceName: string; + + /** ErrorResource resourceNamespace. */ + public resourceNamespace: string; + + /** ErrorResource resourceGvk. */ + public resourceGvk?: (google.cloud.gkehub.configmanagement.v1.IGroupVersionKind|null); + + /** + * Creates a new ErrorResource instance using the specified properties. + * @param [properties] Properties to set + * @returns ErrorResource instance + */ + public static create(properties?: google.cloud.gkehub.configmanagement.v1.IErrorResource): google.cloud.gkehub.configmanagement.v1.ErrorResource; + + /** + * Encodes the specified ErrorResource message. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1.ErrorResource.verify|verify} messages. + * @param message ErrorResource message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.configmanagement.v1.IErrorResource, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified ErrorResource message, length delimited. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1.ErrorResource.verify|verify} messages. + * @param message ErrorResource message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.configmanagement.v1.IErrorResource, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes an ErrorResource message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns ErrorResource + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.configmanagement.v1.ErrorResource; + + /** + * Decodes an ErrorResource message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns ErrorResource + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.configmanagement.v1.ErrorResource; + + /** + * Verifies an ErrorResource message. + * @param message Plain 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 ErrorResource message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns ErrorResource + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.configmanagement.v1.ErrorResource; + + /** + * Creates a plain object from an ErrorResource message. Also converts values to other types if specified. + * @param message ErrorResource + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.configmanagement.v1.ErrorResource, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this ErrorResource to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } - /** FileOptions javaGenericServices */ - javaGenericServices?: (boolean|null); + /** Properties of a GroupVersionKind. */ + interface IGroupVersionKind { - /** FileOptions pyGenericServices */ - pyGenericServices?: (boolean|null); + /** GroupVersionKind group */ + group?: (string|null); - /** FileOptions phpGenericServices */ - phpGenericServices?: (boolean|null); + /** GroupVersionKind version */ + version?: (string|null); - /** FileOptions deprecated */ - deprecated?: (boolean|null); + /** GroupVersionKind kind */ + kind?: (string|null); + } - /** FileOptions ccEnableArenas */ - ccEnableArenas?: (boolean|null); + /** Represents a GroupVersionKind. */ + class GroupVersionKind implements IGroupVersionKind { + + /** + * Constructs a new GroupVersionKind. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.configmanagement.v1.IGroupVersionKind); + + /** GroupVersionKind group. */ + public group: string; + + /** GroupVersionKind version. */ + public version: string; + + /** GroupVersionKind kind. */ + public kind: string; + + /** + * Creates a new GroupVersionKind instance using the specified properties. + * @param [properties] Properties to set + * @returns GroupVersionKind instance + */ + public static create(properties?: google.cloud.gkehub.configmanagement.v1.IGroupVersionKind): google.cloud.gkehub.configmanagement.v1.GroupVersionKind; + + /** + * Encodes the specified GroupVersionKind message. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1.GroupVersionKind.verify|verify} messages. + * @param message GroupVersionKind message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.configmanagement.v1.IGroupVersionKind, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified GroupVersionKind message, length delimited. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1.GroupVersionKind.verify|verify} messages. + * @param message GroupVersionKind message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.configmanagement.v1.IGroupVersionKind, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a GroupVersionKind message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns GroupVersionKind + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.configmanagement.v1.GroupVersionKind; + + /** + * Decodes a GroupVersionKind message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns GroupVersionKind + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.configmanagement.v1.GroupVersionKind; + + /** + * Verifies a GroupVersionKind message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a GroupVersionKind message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns GroupVersionKind + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.configmanagement.v1.GroupVersionKind; + + /** + * Creates a plain object from a GroupVersionKind message. Also converts values to other types if specified. + * @param message GroupVersionKind + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.configmanagement.v1.GroupVersionKind, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this GroupVersionKind to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } - /** FileOptions objcClassPrefix */ - objcClassPrefix?: (string|null); + /** Properties of a PolicyControllerState. */ + interface IPolicyControllerState { - /** FileOptions csharpNamespace */ - csharpNamespace?: (string|null); + /** PolicyControllerState version */ + version?: (google.cloud.gkehub.configmanagement.v1.IPolicyControllerVersion|null); - /** FileOptions swiftPrefix */ - swiftPrefix?: (string|null); + /** PolicyControllerState deploymentState */ + deploymentState?: (google.cloud.gkehub.configmanagement.v1.IGatekeeperDeploymentState|null); + } - /** FileOptions phpClassPrefix */ - phpClassPrefix?: (string|null); + /** Represents a PolicyControllerState. */ + class PolicyControllerState implements IPolicyControllerState { + + /** + * Constructs a new PolicyControllerState. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.configmanagement.v1.IPolicyControllerState); + + /** PolicyControllerState version. */ + public version?: (google.cloud.gkehub.configmanagement.v1.IPolicyControllerVersion|null); + + /** PolicyControllerState deploymentState. */ + public deploymentState?: (google.cloud.gkehub.configmanagement.v1.IGatekeeperDeploymentState|null); + + /** + * Creates a new PolicyControllerState instance using the specified properties. + * @param [properties] Properties to set + * @returns PolicyControllerState instance + */ + public static create(properties?: google.cloud.gkehub.configmanagement.v1.IPolicyControllerState): google.cloud.gkehub.configmanagement.v1.PolicyControllerState; + + /** + * Encodes the specified PolicyControllerState message. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1.PolicyControllerState.verify|verify} messages. + * @param message PolicyControllerState message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.configmanagement.v1.IPolicyControllerState, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified PolicyControllerState message, length delimited. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1.PolicyControllerState.verify|verify} messages. + * @param message PolicyControllerState message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.configmanagement.v1.IPolicyControllerState, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a PolicyControllerState message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns PolicyControllerState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.configmanagement.v1.PolicyControllerState; + + /** + * Decodes a PolicyControllerState message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns PolicyControllerState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.configmanagement.v1.PolicyControllerState; + + /** + * Verifies a PolicyControllerState message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a PolicyControllerState message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns PolicyControllerState + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.configmanagement.v1.PolicyControllerState; + + /** + * Creates a plain object from a PolicyControllerState message. Also converts values to other types if specified. + * @param message PolicyControllerState + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.configmanagement.v1.PolicyControllerState, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this PolicyControllerState to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } - /** FileOptions phpNamespace */ - phpNamespace?: (string|null); + /** Properties of a PolicyControllerVersion. */ + interface IPolicyControllerVersion { - /** FileOptions phpMetadataNamespace */ - phpMetadataNamespace?: (string|null); + /** PolicyControllerVersion version */ + version?: (string|null); + } - /** FileOptions rubyPackage */ - rubyPackage?: (string|null); + /** Represents a PolicyControllerVersion. */ + class PolicyControllerVersion implements IPolicyControllerVersion { + + /** + * Constructs a new PolicyControllerVersion. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.configmanagement.v1.IPolicyControllerVersion); + + /** PolicyControllerVersion version. */ + public version: string; + + /** + * Creates a new PolicyControllerVersion instance using the specified properties. + * @param [properties] Properties to set + * @returns PolicyControllerVersion instance + */ + public static create(properties?: google.cloud.gkehub.configmanagement.v1.IPolicyControllerVersion): google.cloud.gkehub.configmanagement.v1.PolicyControllerVersion; + + /** + * Encodes the specified PolicyControllerVersion message. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1.PolicyControllerVersion.verify|verify} messages. + * @param message PolicyControllerVersion message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.configmanagement.v1.IPolicyControllerVersion, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified PolicyControllerVersion message, length delimited. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1.PolicyControllerVersion.verify|verify} messages. + * @param message PolicyControllerVersion message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.configmanagement.v1.IPolicyControllerVersion, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a PolicyControllerVersion message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns PolicyControllerVersion + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.configmanagement.v1.PolicyControllerVersion; + + /** + * Decodes a PolicyControllerVersion message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns PolicyControllerVersion + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.configmanagement.v1.PolicyControllerVersion; + + /** + * Verifies a PolicyControllerVersion message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a PolicyControllerVersion message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns PolicyControllerVersion + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.configmanagement.v1.PolicyControllerVersion; + + /** + * Creates a plain object from a PolicyControllerVersion message. Also converts values to other types if specified. + * @param message PolicyControllerVersion + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.configmanagement.v1.PolicyControllerVersion, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this PolicyControllerVersion to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } - /** FileOptions uninterpretedOption */ - uninterpretedOption?: (google.protobuf.IUninterpretedOption[]|null); + /** Properties of a GatekeeperDeploymentState. */ + interface IGatekeeperDeploymentState { - /** FileOptions .google.api.resourceDefinition */ - ".google.api.resourceDefinition"?: (google.api.IResourceDescriptor[]|null); - } + /** GatekeeperDeploymentState gatekeeperControllerManagerState */ + gatekeeperControllerManagerState?: (google.cloud.gkehub.configmanagement.v1.DeploymentState|keyof typeof google.cloud.gkehub.configmanagement.v1.DeploymentState|null); - /** Represents a FileOptions. */ - class FileOptions implements IFileOptions { + /** GatekeeperDeploymentState gatekeeperAudit */ + gatekeeperAudit?: (google.cloud.gkehub.configmanagement.v1.DeploymentState|keyof typeof google.cloud.gkehub.configmanagement.v1.DeploymentState|null); + } - /** - * Constructs a new FileOptions. - * @param [properties] Properties to set - */ - constructor(properties?: google.protobuf.IFileOptions); + /** Represents a GatekeeperDeploymentState. */ + class GatekeeperDeploymentState implements IGatekeeperDeploymentState { + + /** + * Constructs a new GatekeeperDeploymentState. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.configmanagement.v1.IGatekeeperDeploymentState); + + /** GatekeeperDeploymentState gatekeeperControllerManagerState. */ + public gatekeeperControllerManagerState: (google.cloud.gkehub.configmanagement.v1.DeploymentState|keyof typeof google.cloud.gkehub.configmanagement.v1.DeploymentState); + + /** GatekeeperDeploymentState gatekeeperAudit. */ + public gatekeeperAudit: (google.cloud.gkehub.configmanagement.v1.DeploymentState|keyof typeof google.cloud.gkehub.configmanagement.v1.DeploymentState); + + /** + * Creates a new GatekeeperDeploymentState instance using the specified properties. + * @param [properties] Properties to set + * @returns GatekeeperDeploymentState instance + */ + public static create(properties?: google.cloud.gkehub.configmanagement.v1.IGatekeeperDeploymentState): google.cloud.gkehub.configmanagement.v1.GatekeeperDeploymentState; + + /** + * Encodes the specified GatekeeperDeploymentState message. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1.GatekeeperDeploymentState.verify|verify} messages. + * @param message GatekeeperDeploymentState message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.configmanagement.v1.IGatekeeperDeploymentState, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified GatekeeperDeploymentState message, length delimited. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1.GatekeeperDeploymentState.verify|verify} messages. + * @param message GatekeeperDeploymentState message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.configmanagement.v1.IGatekeeperDeploymentState, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a GatekeeperDeploymentState message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns GatekeeperDeploymentState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.configmanagement.v1.GatekeeperDeploymentState; + + /** + * Decodes a GatekeeperDeploymentState message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns GatekeeperDeploymentState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.configmanagement.v1.GatekeeperDeploymentState; + + /** + * Verifies a GatekeeperDeploymentState message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a GatekeeperDeploymentState message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns GatekeeperDeploymentState + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.configmanagement.v1.GatekeeperDeploymentState; + + /** + * Creates a plain object from a GatekeeperDeploymentState message. Also converts values to other types if specified. + * @param message GatekeeperDeploymentState + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.configmanagement.v1.GatekeeperDeploymentState, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this GatekeeperDeploymentState to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + } - /** FileOptions javaPackage. */ - public javaPackage: string; + /** Namespace v1alpha. */ + namespace v1alpha { - /** FileOptions javaOuterClassname. */ - public javaOuterClassname: string; + /** DeploymentState enum. */ + enum DeploymentState { + DEPLOYMENT_STATE_UNSPECIFIED = 0, + NOT_INSTALLED = 1, + INSTALLED = 2, + ERROR = 3 + } - /** FileOptions javaMultipleFiles. */ - public javaMultipleFiles: boolean; + /** Properties of a MembershipState. */ + interface IMembershipState { - /** FileOptions javaGenerateEqualsAndHash. */ - public javaGenerateEqualsAndHash: boolean; + /** MembershipState clusterName */ + clusterName?: (string|null); - /** FileOptions javaStringCheckUtf8. */ - public javaStringCheckUtf8: boolean; + /** MembershipState membershipSpec */ + membershipSpec?: (google.cloud.gkehub.configmanagement.v1alpha.IMembershipSpec|null); - /** FileOptions optimizeFor. */ - public optimizeFor: (google.protobuf.FileOptions.OptimizeMode|keyof typeof google.protobuf.FileOptions.OptimizeMode); + /** MembershipState operatorState */ + operatorState?: (google.cloud.gkehub.configmanagement.v1alpha.IOperatorState|null); - /** FileOptions goPackage. */ - public goPackage: string; + /** MembershipState configSyncState */ + configSyncState?: (google.cloud.gkehub.configmanagement.v1alpha.IConfigSyncState|null); - /** FileOptions ccGenericServices. */ - public ccGenericServices: boolean; + /** MembershipState policyControllerState */ + policyControllerState?: (google.cloud.gkehub.configmanagement.v1alpha.IPolicyControllerState|null); - /** FileOptions javaGenericServices. */ - public javaGenericServices: boolean; + /** MembershipState binauthzState */ + binauthzState?: (google.cloud.gkehub.configmanagement.v1alpha.IBinauthzState|null); - /** FileOptions pyGenericServices. */ - public pyGenericServices: boolean; + /** MembershipState hierarchyControllerState */ + hierarchyControllerState?: (google.cloud.gkehub.configmanagement.v1alpha.IHierarchyControllerState|null); + } - /** FileOptions phpGenericServices. */ - public phpGenericServices: boolean; + /** Represents a MembershipState. */ + class MembershipState implements IMembershipState { + + /** + * Constructs a new MembershipState. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.configmanagement.v1alpha.IMembershipState); + + /** MembershipState clusterName. */ + public clusterName: string; + + /** MembershipState membershipSpec. */ + public membershipSpec?: (google.cloud.gkehub.configmanagement.v1alpha.IMembershipSpec|null); + + /** MembershipState operatorState. */ + public operatorState?: (google.cloud.gkehub.configmanagement.v1alpha.IOperatorState|null); + + /** MembershipState configSyncState. */ + public configSyncState?: (google.cloud.gkehub.configmanagement.v1alpha.IConfigSyncState|null); + + /** MembershipState policyControllerState. */ + public policyControllerState?: (google.cloud.gkehub.configmanagement.v1alpha.IPolicyControllerState|null); + + /** MembershipState binauthzState. */ + public binauthzState?: (google.cloud.gkehub.configmanagement.v1alpha.IBinauthzState|null); + + /** MembershipState hierarchyControllerState. */ + public hierarchyControllerState?: (google.cloud.gkehub.configmanagement.v1alpha.IHierarchyControllerState|null); + + /** + * Creates a new MembershipState instance using the specified properties. + * @param [properties] Properties to set + * @returns MembershipState instance + */ + public static create(properties?: google.cloud.gkehub.configmanagement.v1alpha.IMembershipState): google.cloud.gkehub.configmanagement.v1alpha.MembershipState; + + /** + * Encodes the specified MembershipState message. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1alpha.MembershipState.verify|verify} messages. + * @param message MembershipState message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.configmanagement.v1alpha.IMembershipState, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified MembershipState message, length delimited. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1alpha.MembershipState.verify|verify} messages. + * @param message MembershipState message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.configmanagement.v1alpha.IMembershipState, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a MembershipState message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns MembershipState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.configmanagement.v1alpha.MembershipState; + + /** + * Decodes a MembershipState message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns MembershipState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.configmanagement.v1alpha.MembershipState; + + /** + * Verifies a MembershipState message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a MembershipState message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns MembershipState + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.configmanagement.v1alpha.MembershipState; + + /** + * Creates a plain object from a MembershipState message. Also converts values to other types if specified. + * @param message MembershipState + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.configmanagement.v1alpha.MembershipState, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this MembershipState to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } - /** FileOptions deprecated. */ - public deprecated: boolean; + /** Properties of a MembershipSpec. */ + interface IMembershipSpec { - /** FileOptions ccEnableArenas. */ - public ccEnableArenas: boolean; + /** MembershipSpec configSync */ + configSync?: (google.cloud.gkehub.configmanagement.v1alpha.IConfigSync|null); - /** FileOptions objcClassPrefix. */ - public objcClassPrefix: string; + /** MembershipSpec policyController */ + policyController?: (google.cloud.gkehub.configmanagement.v1alpha.IPolicyController|null); - /** FileOptions csharpNamespace. */ - public csharpNamespace: string; + /** MembershipSpec binauthz */ + binauthz?: (google.cloud.gkehub.configmanagement.v1alpha.IBinauthzConfig|null); - /** FileOptions swiftPrefix. */ - public swiftPrefix: string; + /** MembershipSpec hierarchyController */ + hierarchyController?: (google.cloud.gkehub.configmanagement.v1alpha.IHierarchyControllerConfig|null); - /** FileOptions phpClassPrefix. */ - public phpClassPrefix: string; + /** MembershipSpec version */ + version?: (string|null); + } - /** FileOptions phpNamespace. */ - public phpNamespace: string; + /** Represents a MembershipSpec. */ + class MembershipSpec implements IMembershipSpec { + + /** + * Constructs a new MembershipSpec. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.configmanagement.v1alpha.IMembershipSpec); + + /** MembershipSpec configSync. */ + public configSync?: (google.cloud.gkehub.configmanagement.v1alpha.IConfigSync|null); + + /** MembershipSpec policyController. */ + public policyController?: (google.cloud.gkehub.configmanagement.v1alpha.IPolicyController|null); + + /** MembershipSpec binauthz. */ + public binauthz?: (google.cloud.gkehub.configmanagement.v1alpha.IBinauthzConfig|null); + + /** MembershipSpec hierarchyController. */ + public hierarchyController?: (google.cloud.gkehub.configmanagement.v1alpha.IHierarchyControllerConfig|null); + + /** MembershipSpec version. */ + public version: string; + + /** + * Creates a new MembershipSpec instance using the specified properties. + * @param [properties] Properties to set + * @returns MembershipSpec instance + */ + public static create(properties?: google.cloud.gkehub.configmanagement.v1alpha.IMembershipSpec): google.cloud.gkehub.configmanagement.v1alpha.MembershipSpec; + + /** + * Encodes the specified MembershipSpec message. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1alpha.MembershipSpec.verify|verify} messages. + * @param message MembershipSpec message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.configmanagement.v1alpha.IMembershipSpec, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified MembershipSpec message, length delimited. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1alpha.MembershipSpec.verify|verify} messages. + * @param message MembershipSpec message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.configmanagement.v1alpha.IMembershipSpec, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a MembershipSpec message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns MembershipSpec + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.configmanagement.v1alpha.MembershipSpec; + + /** + * Decodes a MembershipSpec message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns MembershipSpec + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.configmanagement.v1alpha.MembershipSpec; + + /** + * Verifies a MembershipSpec message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a MembershipSpec message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns MembershipSpec + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.configmanagement.v1alpha.MembershipSpec; + + /** + * Creates a plain object from a MembershipSpec message. Also converts values to other types if specified. + * @param message MembershipSpec + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.configmanagement.v1alpha.MembershipSpec, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this MembershipSpec to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } - /** FileOptions phpMetadataNamespace. */ - public phpMetadataNamespace: string; + /** Properties of a ConfigSync. */ + interface IConfigSync { - /** FileOptions rubyPackage. */ - public rubyPackage: string; + /** ConfigSync git */ + git?: (google.cloud.gkehub.configmanagement.v1alpha.IGitConfig|null); - /** FileOptions uninterpretedOption. */ - public uninterpretedOption: google.protobuf.IUninterpretedOption[]; + /** ConfigSync sourceFormat */ + sourceFormat?: (string|null); + } - /** - * 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; + /** Represents a ConfigSync. */ + class ConfigSync implements IConfigSync { + + /** + * Constructs a new ConfigSync. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.configmanagement.v1alpha.IConfigSync); + + /** ConfigSync git. */ + public git?: (google.cloud.gkehub.configmanagement.v1alpha.IGitConfig|null); + + /** ConfigSync sourceFormat. */ + public sourceFormat: string; + + /** + * Creates a new ConfigSync instance using the specified properties. + * @param [properties] Properties to set + * @returns ConfigSync instance + */ + public static create(properties?: google.cloud.gkehub.configmanagement.v1alpha.IConfigSync): google.cloud.gkehub.configmanagement.v1alpha.ConfigSync; + + /** + * Encodes the specified ConfigSync message. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1alpha.ConfigSync.verify|verify} messages. + * @param message ConfigSync message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.configmanagement.v1alpha.IConfigSync, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified ConfigSync message, length delimited. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1alpha.ConfigSync.verify|verify} messages. + * @param message ConfigSync message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.configmanagement.v1alpha.IConfigSync, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a ConfigSync message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns ConfigSync + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.configmanagement.v1alpha.ConfigSync; + + /** + * Decodes a ConfigSync message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns ConfigSync + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.configmanagement.v1alpha.ConfigSync; + + /** + * Verifies a ConfigSync message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a ConfigSync message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns ConfigSync + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.configmanagement.v1alpha.ConfigSync; + + /** + * Creates a plain object from a ConfigSync message. Also converts values to other types if specified. + * @param message ConfigSync + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.configmanagement.v1alpha.ConfigSync, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this ConfigSync to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } - /** - * 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; + /** Properties of a GitConfig. */ + interface IGitConfig { - /** - * 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; + /** GitConfig syncRepo */ + syncRepo?: (string|null); - /** - * 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; + /** GitConfig syncBranch */ + syncBranch?: (string|null); - /** - * 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; + /** GitConfig policyDir */ + policyDir?: (string|null); - /** - * 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); + /** GitConfig syncWaitSecs */ + syncWaitSecs?: (number|Long|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; + /** GitConfig syncRev */ + syncRev?: (string|null); - /** - * 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 }; + /** GitConfig secretType */ + secretType?: (string|null); - /** - * Converts this FileOptions to JSON. - * @returns JSON object - */ - public toJSON(): { [k: string]: any }; - } + /** GitConfig httpsProxy */ + httpsProxy?: (string|null); - namespace FileOptions { + /** GitConfig gcpServiceAccountEmail */ + gcpServiceAccountEmail?: (string|null); + } - /** OptimizeMode enum. */ - enum OptimizeMode { - SPEED = 1, - CODE_SIZE = 2, - LITE_RUNTIME = 3 - } - } + /** Represents a GitConfig. */ + class GitConfig implements IGitConfig { + + /** + * Constructs a new GitConfig. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.configmanagement.v1alpha.IGitConfig); + + /** GitConfig syncRepo. */ + public syncRepo: string; + + /** GitConfig syncBranch. */ + public syncBranch: string; + + /** GitConfig policyDir. */ + public policyDir: string; + + /** GitConfig syncWaitSecs. */ + public syncWaitSecs: (number|Long|string); + + /** GitConfig syncRev. */ + public syncRev: string; + + /** GitConfig secretType. */ + public secretType: string; + + /** GitConfig httpsProxy. */ + public httpsProxy: string; + + /** GitConfig gcpServiceAccountEmail. */ + public gcpServiceAccountEmail: string; + + /** + * Creates a new GitConfig instance using the specified properties. + * @param [properties] Properties to set + * @returns GitConfig instance + */ + public static create(properties?: google.cloud.gkehub.configmanagement.v1alpha.IGitConfig): google.cloud.gkehub.configmanagement.v1alpha.GitConfig; + + /** + * Encodes the specified GitConfig message. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1alpha.GitConfig.verify|verify} messages. + * @param message GitConfig message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.configmanagement.v1alpha.IGitConfig, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified GitConfig message, length delimited. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1alpha.GitConfig.verify|verify} messages. + * @param message GitConfig message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.configmanagement.v1alpha.IGitConfig, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a GitConfig message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns GitConfig + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.configmanagement.v1alpha.GitConfig; + + /** + * Decodes a GitConfig message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns GitConfig + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.configmanagement.v1alpha.GitConfig; + + /** + * Verifies a GitConfig message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a GitConfig message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns GitConfig + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.configmanagement.v1alpha.GitConfig; + + /** + * Creates a plain object from a GitConfig message. Also converts values to other types if specified. + * @param message GitConfig + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.configmanagement.v1alpha.GitConfig, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this GitConfig to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } - /** Properties of a MessageOptions. */ - interface IMessageOptions { + /** Properties of a PolicyController. */ + interface IPolicyController { - /** MessageOptions messageSetWireFormat */ - messageSetWireFormat?: (boolean|null); + /** PolicyController enabled */ + enabled?: (boolean|null); - /** MessageOptions noStandardDescriptorAccessor */ - noStandardDescriptorAccessor?: (boolean|null); + /** PolicyController templateLibraryInstalled */ + templateLibraryInstalled?: (boolean|null); - /** MessageOptions deprecated */ - deprecated?: (boolean|null); + /** PolicyController auditIntervalSeconds */ + auditIntervalSeconds?: (number|Long|string|null); - /** MessageOptions mapEntry */ - mapEntry?: (boolean|null); + /** PolicyController exemptableNamespaces */ + exemptableNamespaces?: (string[]|null); - /** MessageOptions uninterpretedOption */ - uninterpretedOption?: (google.protobuf.IUninterpretedOption[]|null); + /** PolicyController referentialRulesEnabled */ + referentialRulesEnabled?: (boolean|null); - /** MessageOptions .google.api.resource */ - ".google.api.resource"?: (google.api.IResourceDescriptor|null); - } + /** PolicyController logDeniesEnabled */ + logDeniesEnabled?: (boolean|null); - /** Represents a MessageOptions. */ - class MessageOptions implements IMessageOptions { + /** PolicyController mutationEnabled */ + mutationEnabled?: (boolean|null); + } - /** - * Constructs a new MessageOptions. - * @param [properties] Properties to set - */ - constructor(properties?: google.protobuf.IMessageOptions); + /** Represents a PolicyController. */ + class PolicyController implements IPolicyController { + + /** + * Constructs a new PolicyController. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.configmanagement.v1alpha.IPolicyController); + + /** PolicyController enabled. */ + public enabled: boolean; + + /** PolicyController templateLibraryInstalled. */ + public templateLibraryInstalled?: (boolean|null); + + /** PolicyController auditIntervalSeconds. */ + public auditIntervalSeconds?: (number|Long|string|null); + + /** PolicyController exemptableNamespaces. */ + public exemptableNamespaces: string[]; + + /** PolicyController referentialRulesEnabled. */ + public referentialRulesEnabled: boolean; + + /** PolicyController logDeniesEnabled. */ + public logDeniesEnabled: boolean; + + /** PolicyController mutationEnabled. */ + public mutationEnabled: boolean; + + /** PolicyController _templateLibraryInstalled. */ + public _templateLibraryInstalled?: "templateLibraryInstalled"; + + /** PolicyController _auditIntervalSeconds. */ + public _auditIntervalSeconds?: "auditIntervalSeconds"; + + /** + * Creates a new PolicyController instance using the specified properties. + * @param [properties] Properties to set + * @returns PolicyController instance + */ + public static create(properties?: google.cloud.gkehub.configmanagement.v1alpha.IPolicyController): google.cloud.gkehub.configmanagement.v1alpha.PolicyController; + + /** + * Encodes the specified PolicyController message. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1alpha.PolicyController.verify|verify} messages. + * @param message PolicyController message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.configmanagement.v1alpha.IPolicyController, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified PolicyController message, length delimited. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1alpha.PolicyController.verify|verify} messages. + * @param message PolicyController message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.configmanagement.v1alpha.IPolicyController, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a PolicyController message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns PolicyController + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.configmanagement.v1alpha.PolicyController; + + /** + * Decodes a PolicyController message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns PolicyController + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.configmanagement.v1alpha.PolicyController; + + /** + * Verifies a PolicyController message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a PolicyController message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns PolicyController + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.configmanagement.v1alpha.PolicyController; + + /** + * Creates a plain object from a PolicyController message. Also converts values to other types if specified. + * @param message PolicyController + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.configmanagement.v1alpha.PolicyController, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this PolicyController to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } - /** MessageOptions messageSetWireFormat. */ - public messageSetWireFormat: boolean; + /** Properties of a BinauthzConfig. */ + interface IBinauthzConfig { - /** MessageOptions noStandardDescriptorAccessor. */ - public noStandardDescriptorAccessor: boolean; + /** BinauthzConfig enabled */ + enabled?: (boolean|null); + } - /** MessageOptions deprecated. */ - public deprecated: boolean; + /** Represents a BinauthzConfig. */ + class BinauthzConfig implements IBinauthzConfig { + + /** + * Constructs a new BinauthzConfig. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.configmanagement.v1alpha.IBinauthzConfig); + + /** BinauthzConfig enabled. */ + public enabled: boolean; + + /** + * Creates a new BinauthzConfig instance using the specified properties. + * @param [properties] Properties to set + * @returns BinauthzConfig instance + */ + public static create(properties?: google.cloud.gkehub.configmanagement.v1alpha.IBinauthzConfig): google.cloud.gkehub.configmanagement.v1alpha.BinauthzConfig; + + /** + * Encodes the specified BinauthzConfig message. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1alpha.BinauthzConfig.verify|verify} messages. + * @param message BinauthzConfig message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.configmanagement.v1alpha.IBinauthzConfig, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified BinauthzConfig message, length delimited. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1alpha.BinauthzConfig.verify|verify} messages. + * @param message BinauthzConfig message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.configmanagement.v1alpha.IBinauthzConfig, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a BinauthzConfig message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns BinauthzConfig + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.configmanagement.v1alpha.BinauthzConfig; + + /** + * Decodes a BinauthzConfig message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns BinauthzConfig + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.configmanagement.v1alpha.BinauthzConfig; + + /** + * Verifies a BinauthzConfig message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a BinauthzConfig message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns BinauthzConfig + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.configmanagement.v1alpha.BinauthzConfig; + + /** + * Creates a plain object from a BinauthzConfig message. Also converts values to other types if specified. + * @param message BinauthzConfig + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.configmanagement.v1alpha.BinauthzConfig, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this BinauthzConfig to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } - /** MessageOptions mapEntry. */ - public mapEntry: boolean; + /** Properties of a HierarchyControllerConfig. */ + interface IHierarchyControllerConfig { - /** MessageOptions uninterpretedOption. */ - public uninterpretedOption: google.protobuf.IUninterpretedOption[]; + /** HierarchyControllerConfig enabled */ + enabled?: (boolean|null); - /** - * 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; + /** HierarchyControllerConfig enablePodTreeLabels */ + enablePodTreeLabels?: (boolean|null); - /** - * 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; + /** HierarchyControllerConfig enableHierarchicalResourceQuota */ + enableHierarchicalResourceQuota?: (boolean|null); + } - /** - * 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; + /** Represents a HierarchyControllerConfig. */ + class HierarchyControllerConfig implements IHierarchyControllerConfig { + + /** + * Constructs a new HierarchyControllerConfig. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.configmanagement.v1alpha.IHierarchyControllerConfig); + + /** HierarchyControllerConfig enabled. */ + public enabled: boolean; + + /** HierarchyControllerConfig enablePodTreeLabels. */ + public enablePodTreeLabels: boolean; + + /** HierarchyControllerConfig enableHierarchicalResourceQuota. */ + public enableHierarchicalResourceQuota: boolean; + + /** + * Creates a new HierarchyControllerConfig instance using the specified properties. + * @param [properties] Properties to set + * @returns HierarchyControllerConfig instance + */ + public static create(properties?: google.cloud.gkehub.configmanagement.v1alpha.IHierarchyControllerConfig): google.cloud.gkehub.configmanagement.v1alpha.HierarchyControllerConfig; + + /** + * Encodes the specified HierarchyControllerConfig message. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1alpha.HierarchyControllerConfig.verify|verify} messages. + * @param message HierarchyControllerConfig message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.configmanagement.v1alpha.IHierarchyControllerConfig, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified HierarchyControllerConfig message, length delimited. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1alpha.HierarchyControllerConfig.verify|verify} messages. + * @param message HierarchyControllerConfig message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.configmanagement.v1alpha.IHierarchyControllerConfig, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a HierarchyControllerConfig message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns HierarchyControllerConfig + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.configmanagement.v1alpha.HierarchyControllerConfig; + + /** + * Decodes a HierarchyControllerConfig message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns HierarchyControllerConfig + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.configmanagement.v1alpha.HierarchyControllerConfig; + + /** + * Verifies a HierarchyControllerConfig message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a HierarchyControllerConfig message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns HierarchyControllerConfig + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.configmanagement.v1alpha.HierarchyControllerConfig; + + /** + * Creates a plain object from a HierarchyControllerConfig message. Also converts values to other types if specified. + * @param message HierarchyControllerConfig + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.configmanagement.v1alpha.HierarchyControllerConfig, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this HierarchyControllerConfig to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } - /** - * 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; + /** Properties of a HierarchyControllerDeploymentState. */ + interface IHierarchyControllerDeploymentState { - /** - * 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; + /** HierarchyControllerDeploymentState hnc */ + hnc?: (google.cloud.gkehub.configmanagement.v1alpha.DeploymentState|keyof typeof google.cloud.gkehub.configmanagement.v1alpha.DeploymentState|null); - /** - * 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); + /** HierarchyControllerDeploymentState extension */ + extension?: (google.cloud.gkehub.configmanagement.v1alpha.DeploymentState|keyof typeof google.cloud.gkehub.configmanagement.v1alpha.DeploymentState|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; + /** Represents a HierarchyControllerDeploymentState. */ + class HierarchyControllerDeploymentState implements IHierarchyControllerDeploymentState { + + /** + * Constructs a new HierarchyControllerDeploymentState. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.configmanagement.v1alpha.IHierarchyControllerDeploymentState); + + /** HierarchyControllerDeploymentState hnc. */ + public hnc: (google.cloud.gkehub.configmanagement.v1alpha.DeploymentState|keyof typeof google.cloud.gkehub.configmanagement.v1alpha.DeploymentState); + + /** HierarchyControllerDeploymentState extension. */ + public extension: (google.cloud.gkehub.configmanagement.v1alpha.DeploymentState|keyof typeof google.cloud.gkehub.configmanagement.v1alpha.DeploymentState); + + /** + * Creates a new HierarchyControllerDeploymentState instance using the specified properties. + * @param [properties] Properties to set + * @returns HierarchyControllerDeploymentState instance + */ + public static create(properties?: google.cloud.gkehub.configmanagement.v1alpha.IHierarchyControllerDeploymentState): google.cloud.gkehub.configmanagement.v1alpha.HierarchyControllerDeploymentState; + + /** + * Encodes the specified HierarchyControllerDeploymentState message. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1alpha.HierarchyControllerDeploymentState.verify|verify} messages. + * @param message HierarchyControllerDeploymentState message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.configmanagement.v1alpha.IHierarchyControllerDeploymentState, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified HierarchyControllerDeploymentState message, length delimited. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1alpha.HierarchyControllerDeploymentState.verify|verify} messages. + * @param message HierarchyControllerDeploymentState message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.configmanagement.v1alpha.IHierarchyControllerDeploymentState, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a HierarchyControllerDeploymentState message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns HierarchyControllerDeploymentState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.configmanagement.v1alpha.HierarchyControllerDeploymentState; + + /** + * Decodes a HierarchyControllerDeploymentState message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns HierarchyControllerDeploymentState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.configmanagement.v1alpha.HierarchyControllerDeploymentState; + + /** + * Verifies a HierarchyControllerDeploymentState message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a HierarchyControllerDeploymentState message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns HierarchyControllerDeploymentState + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.configmanagement.v1alpha.HierarchyControllerDeploymentState; + + /** + * Creates a plain object from a HierarchyControllerDeploymentState message. Also converts values to other types if specified. + * @param message HierarchyControllerDeploymentState + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.configmanagement.v1alpha.HierarchyControllerDeploymentState, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this HierarchyControllerDeploymentState to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } - /** - * 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 }; + /** Properties of a HierarchyControllerVersion. */ + interface IHierarchyControllerVersion { - /** - * Converts this MessageOptions to JSON. - * @returns JSON object - */ - public toJSON(): { [k: string]: any }; - } + /** HierarchyControllerVersion hnc */ + hnc?: (string|null); - /** Properties of a FieldOptions. */ - interface IFieldOptions { + /** HierarchyControllerVersion extension */ + extension?: (string|null); + } - /** FieldOptions ctype */ - ctype?: (google.protobuf.FieldOptions.CType|keyof typeof google.protobuf.FieldOptions.CType|null); + /** Represents a HierarchyControllerVersion. */ + class HierarchyControllerVersion implements IHierarchyControllerVersion { + + /** + * Constructs a new HierarchyControllerVersion. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.configmanagement.v1alpha.IHierarchyControllerVersion); + + /** HierarchyControllerVersion hnc. */ + public hnc: string; + + /** HierarchyControllerVersion extension. */ + public extension: string; + + /** + * Creates a new HierarchyControllerVersion instance using the specified properties. + * @param [properties] Properties to set + * @returns HierarchyControllerVersion instance + */ + public static create(properties?: google.cloud.gkehub.configmanagement.v1alpha.IHierarchyControllerVersion): google.cloud.gkehub.configmanagement.v1alpha.HierarchyControllerVersion; + + /** + * Encodes the specified HierarchyControllerVersion message. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1alpha.HierarchyControllerVersion.verify|verify} messages. + * @param message HierarchyControllerVersion message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.configmanagement.v1alpha.IHierarchyControllerVersion, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified HierarchyControllerVersion message, length delimited. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1alpha.HierarchyControllerVersion.verify|verify} messages. + * @param message HierarchyControllerVersion message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.configmanagement.v1alpha.IHierarchyControllerVersion, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a HierarchyControllerVersion message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns HierarchyControllerVersion + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.configmanagement.v1alpha.HierarchyControllerVersion; + + /** + * Decodes a HierarchyControllerVersion message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns HierarchyControllerVersion + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.configmanagement.v1alpha.HierarchyControllerVersion; + + /** + * Verifies a HierarchyControllerVersion message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a HierarchyControllerVersion message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns HierarchyControllerVersion + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.configmanagement.v1alpha.HierarchyControllerVersion; + + /** + * Creates a plain object from a HierarchyControllerVersion message. Also converts values to other types if specified. + * @param message HierarchyControllerVersion + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.configmanagement.v1alpha.HierarchyControllerVersion, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this HierarchyControllerVersion to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } - /** FieldOptions packed */ - packed?: (boolean|null); + /** Properties of a HierarchyControllerState. */ + interface IHierarchyControllerState { - /** FieldOptions jstype */ - jstype?: (google.protobuf.FieldOptions.JSType|keyof typeof google.protobuf.FieldOptions.JSType|null); + /** HierarchyControllerState version */ + version?: (google.cloud.gkehub.configmanagement.v1alpha.IHierarchyControllerVersion|null); - /** FieldOptions lazy */ - lazy?: (boolean|null); + /** HierarchyControllerState state */ + state?: (google.cloud.gkehub.configmanagement.v1alpha.IHierarchyControllerDeploymentState|null); + } - /** FieldOptions deprecated */ - deprecated?: (boolean|null); + /** Represents a HierarchyControllerState. */ + class HierarchyControllerState implements IHierarchyControllerState { + + /** + * Constructs a new HierarchyControllerState. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.configmanagement.v1alpha.IHierarchyControllerState); + + /** HierarchyControllerState version. */ + public version?: (google.cloud.gkehub.configmanagement.v1alpha.IHierarchyControllerVersion|null); + + /** HierarchyControllerState state. */ + public state?: (google.cloud.gkehub.configmanagement.v1alpha.IHierarchyControllerDeploymentState|null); + + /** + * Creates a new HierarchyControllerState instance using the specified properties. + * @param [properties] Properties to set + * @returns HierarchyControllerState instance + */ + public static create(properties?: google.cloud.gkehub.configmanagement.v1alpha.IHierarchyControllerState): google.cloud.gkehub.configmanagement.v1alpha.HierarchyControllerState; + + /** + * Encodes the specified HierarchyControllerState message. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1alpha.HierarchyControllerState.verify|verify} messages. + * @param message HierarchyControllerState message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.configmanagement.v1alpha.IHierarchyControllerState, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified HierarchyControllerState message, length delimited. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1alpha.HierarchyControllerState.verify|verify} messages. + * @param message HierarchyControllerState message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.configmanagement.v1alpha.IHierarchyControllerState, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a HierarchyControllerState message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns HierarchyControllerState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.configmanagement.v1alpha.HierarchyControllerState; + + /** + * Decodes a HierarchyControllerState message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns HierarchyControllerState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.configmanagement.v1alpha.HierarchyControllerState; + + /** + * Verifies a HierarchyControllerState message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a HierarchyControllerState message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns HierarchyControllerState + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.configmanagement.v1alpha.HierarchyControllerState; + + /** + * Creates a plain object from a HierarchyControllerState message. Also converts values to other types if specified. + * @param message HierarchyControllerState + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.configmanagement.v1alpha.HierarchyControllerState, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this HierarchyControllerState to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } - /** FieldOptions weak */ - weak?: (boolean|null); + /** Properties of an OperatorState. */ + interface IOperatorState { - /** FieldOptions uninterpretedOption */ - uninterpretedOption?: (google.protobuf.IUninterpretedOption[]|null); + /** OperatorState version */ + version?: (string|null); - /** FieldOptions .google.api.fieldBehavior */ - ".google.api.fieldBehavior"?: (google.api.FieldBehavior[]|null); + /** OperatorState deploymentState */ + deploymentState?: (google.cloud.gkehub.configmanagement.v1alpha.DeploymentState|keyof typeof google.cloud.gkehub.configmanagement.v1alpha.DeploymentState|null); - /** FieldOptions .google.api.resourceReference */ - ".google.api.resourceReference"?: (google.api.IResourceReference|null); - } + /** OperatorState errors */ + errors?: (google.cloud.gkehub.configmanagement.v1alpha.IInstallError[]|null); + } - /** Represents a FieldOptions. */ - class FieldOptions implements IFieldOptions { + /** Represents an OperatorState. */ + class OperatorState implements IOperatorState { + + /** + * Constructs a new OperatorState. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.configmanagement.v1alpha.IOperatorState); + + /** OperatorState version. */ + public version: string; + + /** OperatorState deploymentState. */ + public deploymentState: (google.cloud.gkehub.configmanagement.v1alpha.DeploymentState|keyof typeof google.cloud.gkehub.configmanagement.v1alpha.DeploymentState); + + /** OperatorState errors. */ + public errors: google.cloud.gkehub.configmanagement.v1alpha.IInstallError[]; + + /** + * Creates a new OperatorState instance using the specified properties. + * @param [properties] Properties to set + * @returns OperatorState instance + */ + public static create(properties?: google.cloud.gkehub.configmanagement.v1alpha.IOperatorState): google.cloud.gkehub.configmanagement.v1alpha.OperatorState; + + /** + * Encodes the specified OperatorState message. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1alpha.OperatorState.verify|verify} messages. + * @param message OperatorState message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.configmanagement.v1alpha.IOperatorState, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified OperatorState message, length delimited. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1alpha.OperatorState.verify|verify} messages. + * @param message OperatorState message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.configmanagement.v1alpha.IOperatorState, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes an OperatorState message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns OperatorState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.configmanagement.v1alpha.OperatorState; + + /** + * Decodes an OperatorState message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns OperatorState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.configmanagement.v1alpha.OperatorState; + + /** + * Verifies an OperatorState message. + * @param message Plain 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 OperatorState message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns OperatorState + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.configmanagement.v1alpha.OperatorState; + + /** + * Creates a plain object from an OperatorState message. Also converts values to other types if specified. + * @param message OperatorState + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.configmanagement.v1alpha.OperatorState, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this OperatorState to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } - /** - * Constructs a new FieldOptions. - * @param [properties] Properties to set - */ - constructor(properties?: google.protobuf.IFieldOptions); + /** Properties of an InstallError. */ + interface IInstallError { - /** FieldOptions ctype. */ - public ctype: (google.protobuf.FieldOptions.CType|keyof typeof google.protobuf.FieldOptions.CType); + /** InstallError errorMessage */ + errorMessage?: (string|null); + } - /** FieldOptions packed. */ - public packed: boolean; + /** Represents an InstallError. */ + class InstallError implements IInstallError { + + /** + * Constructs a new InstallError. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.configmanagement.v1alpha.IInstallError); + + /** InstallError errorMessage. */ + public errorMessage: string; + + /** + * Creates a new InstallError instance using the specified properties. + * @param [properties] Properties to set + * @returns InstallError instance + */ + public static create(properties?: google.cloud.gkehub.configmanagement.v1alpha.IInstallError): google.cloud.gkehub.configmanagement.v1alpha.InstallError; + + /** + * Encodes the specified InstallError message. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1alpha.InstallError.verify|verify} messages. + * @param message InstallError message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.configmanagement.v1alpha.IInstallError, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified InstallError message, length delimited. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1alpha.InstallError.verify|verify} messages. + * @param message InstallError message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.configmanagement.v1alpha.IInstallError, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes an InstallError message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns InstallError + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.configmanagement.v1alpha.InstallError; + + /** + * Decodes an InstallError message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns InstallError + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.configmanagement.v1alpha.InstallError; + + /** + * Verifies an InstallError message. + * @param message Plain 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 InstallError message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns InstallError + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.configmanagement.v1alpha.InstallError; + + /** + * Creates a plain object from an InstallError message. Also converts values to other types if specified. + * @param message InstallError + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.configmanagement.v1alpha.InstallError, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this InstallError to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } - /** FieldOptions jstype. */ - public jstype: (google.protobuf.FieldOptions.JSType|keyof typeof google.protobuf.FieldOptions.JSType); + /** Properties of a ConfigSyncState. */ + interface IConfigSyncState { - /** FieldOptions lazy. */ - public lazy: boolean; + /** ConfigSyncState version */ + version?: (google.cloud.gkehub.configmanagement.v1alpha.IConfigSyncVersion|null); - /** FieldOptions deprecated. */ - public deprecated: boolean; + /** ConfigSyncState deploymentState */ + deploymentState?: (google.cloud.gkehub.configmanagement.v1alpha.IConfigSyncDeploymentState|null); - /** FieldOptions weak. */ - public weak: boolean; + /** ConfigSyncState syncState */ + syncState?: (google.cloud.gkehub.configmanagement.v1alpha.ISyncState|null); + } - /** FieldOptions uninterpretedOption. */ - public uninterpretedOption: google.protobuf.IUninterpretedOption[]; + /** Represents a ConfigSyncState. */ + class ConfigSyncState implements IConfigSyncState { + + /** + * Constructs a new ConfigSyncState. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.configmanagement.v1alpha.IConfigSyncState); + + /** ConfigSyncState version. */ + public version?: (google.cloud.gkehub.configmanagement.v1alpha.IConfigSyncVersion|null); + + /** ConfigSyncState deploymentState. */ + public deploymentState?: (google.cloud.gkehub.configmanagement.v1alpha.IConfigSyncDeploymentState|null); + + /** ConfigSyncState syncState. */ + public syncState?: (google.cloud.gkehub.configmanagement.v1alpha.ISyncState|null); + + /** + * Creates a new ConfigSyncState instance using the specified properties. + * @param [properties] Properties to set + * @returns ConfigSyncState instance + */ + public static create(properties?: google.cloud.gkehub.configmanagement.v1alpha.IConfigSyncState): google.cloud.gkehub.configmanagement.v1alpha.ConfigSyncState; + + /** + * Encodes the specified ConfigSyncState message. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1alpha.ConfigSyncState.verify|verify} messages. + * @param message ConfigSyncState message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.configmanagement.v1alpha.IConfigSyncState, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified ConfigSyncState message, length delimited. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1alpha.ConfigSyncState.verify|verify} messages. + * @param message ConfigSyncState message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.configmanagement.v1alpha.IConfigSyncState, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a ConfigSyncState message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns ConfigSyncState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.configmanagement.v1alpha.ConfigSyncState; + + /** + * Decodes a ConfigSyncState message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns ConfigSyncState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.configmanagement.v1alpha.ConfigSyncState; + + /** + * Verifies a ConfigSyncState message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a ConfigSyncState message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns ConfigSyncState + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.configmanagement.v1alpha.ConfigSyncState; + + /** + * Creates a plain object from a ConfigSyncState message. Also converts values to other types if specified. + * @param message ConfigSyncState + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.configmanagement.v1alpha.ConfigSyncState, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this ConfigSyncState to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } - /** - * 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; + /** Properties of a ConfigSyncVersion. */ + interface IConfigSyncVersion { - /** - * 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; + /** ConfigSyncVersion importer */ + importer?: (string|null); - /** - * 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; + /** ConfigSyncVersion syncer */ + syncer?: (string|null); - /** - * 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; + /** ConfigSyncVersion gitSync */ + gitSync?: (string|null); - /** - * 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; + /** ConfigSyncVersion monitor */ + monitor?: (string|null); - /** - * 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); + /** ConfigSyncVersion reconcilerManager */ + reconcilerManager?: (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; + /** ConfigSyncVersion rootReconciler */ + rootReconciler?: (string|null); + } - /** - * 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 }; + /** Represents a ConfigSyncVersion. */ + class ConfigSyncVersion implements IConfigSyncVersion { + + /** + * Constructs a new ConfigSyncVersion. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.configmanagement.v1alpha.IConfigSyncVersion); + + /** ConfigSyncVersion importer. */ + public importer: string; + + /** ConfigSyncVersion syncer. */ + public syncer: string; + + /** ConfigSyncVersion gitSync. */ + public gitSync: string; + + /** ConfigSyncVersion monitor. */ + public monitor: string; + + /** ConfigSyncVersion reconcilerManager. */ + public reconcilerManager: string; + + /** ConfigSyncVersion rootReconciler. */ + public rootReconciler: string; + + /** + * Creates a new ConfigSyncVersion instance using the specified properties. + * @param [properties] Properties to set + * @returns ConfigSyncVersion instance + */ + public static create(properties?: google.cloud.gkehub.configmanagement.v1alpha.IConfigSyncVersion): google.cloud.gkehub.configmanagement.v1alpha.ConfigSyncVersion; + + /** + * Encodes the specified ConfigSyncVersion message. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1alpha.ConfigSyncVersion.verify|verify} messages. + * @param message ConfigSyncVersion message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.configmanagement.v1alpha.IConfigSyncVersion, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified ConfigSyncVersion message, length delimited. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1alpha.ConfigSyncVersion.verify|verify} messages. + * @param message ConfigSyncVersion message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.configmanagement.v1alpha.IConfigSyncVersion, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a ConfigSyncVersion message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns ConfigSyncVersion + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.configmanagement.v1alpha.ConfigSyncVersion; + + /** + * Decodes a ConfigSyncVersion message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns ConfigSyncVersion + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.configmanagement.v1alpha.ConfigSyncVersion; + + /** + * Verifies a ConfigSyncVersion message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a ConfigSyncVersion message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns ConfigSyncVersion + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.configmanagement.v1alpha.ConfigSyncVersion; + + /** + * Creates a plain object from a ConfigSyncVersion message. Also converts values to other types if specified. + * @param message ConfigSyncVersion + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.configmanagement.v1alpha.ConfigSyncVersion, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this ConfigSyncVersion to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } - /** - * Converts this FieldOptions to JSON. - * @returns JSON object - */ - public toJSON(): { [k: string]: any }; - } + /** Properties of a ConfigSyncDeploymentState. */ + interface IConfigSyncDeploymentState { - namespace FieldOptions { + /** ConfigSyncDeploymentState importer */ + importer?: (google.cloud.gkehub.configmanagement.v1alpha.DeploymentState|keyof typeof google.cloud.gkehub.configmanagement.v1alpha.DeploymentState|null); - /** CType enum. */ - enum CType { - STRING = 0, - CORD = 1, - STRING_PIECE = 2 - } + /** ConfigSyncDeploymentState syncer */ + syncer?: (google.cloud.gkehub.configmanagement.v1alpha.DeploymentState|keyof typeof google.cloud.gkehub.configmanagement.v1alpha.DeploymentState|null); - /** JSType enum. */ - enum JSType { - JS_NORMAL = 0, - JS_STRING = 1, - JS_NUMBER = 2 - } - } + /** ConfigSyncDeploymentState gitSync */ + gitSync?: (google.cloud.gkehub.configmanagement.v1alpha.DeploymentState|keyof typeof google.cloud.gkehub.configmanagement.v1alpha.DeploymentState|null); - /** Properties of an OneofOptions. */ - interface IOneofOptions { + /** ConfigSyncDeploymentState monitor */ + monitor?: (google.cloud.gkehub.configmanagement.v1alpha.DeploymentState|keyof typeof google.cloud.gkehub.configmanagement.v1alpha.DeploymentState|null); - /** OneofOptions uninterpretedOption */ - uninterpretedOption?: (google.protobuf.IUninterpretedOption[]|null); - } + /** ConfigSyncDeploymentState reconcilerManager */ + reconcilerManager?: (google.cloud.gkehub.configmanagement.v1alpha.DeploymentState|keyof typeof google.cloud.gkehub.configmanagement.v1alpha.DeploymentState|null); - /** Represents an OneofOptions. */ - class OneofOptions implements IOneofOptions { + /** ConfigSyncDeploymentState rootReconciler */ + rootReconciler?: (google.cloud.gkehub.configmanagement.v1alpha.DeploymentState|keyof typeof google.cloud.gkehub.configmanagement.v1alpha.DeploymentState|null); + } - /** - * Constructs a new OneofOptions. - * @param [properties] Properties to set - */ - constructor(properties?: google.protobuf.IOneofOptions); + /** Represents a ConfigSyncDeploymentState. */ + class ConfigSyncDeploymentState implements IConfigSyncDeploymentState { + + /** + * Constructs a new ConfigSyncDeploymentState. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.configmanagement.v1alpha.IConfigSyncDeploymentState); + + /** ConfigSyncDeploymentState importer. */ + public importer: (google.cloud.gkehub.configmanagement.v1alpha.DeploymentState|keyof typeof google.cloud.gkehub.configmanagement.v1alpha.DeploymentState); + + /** ConfigSyncDeploymentState syncer. */ + public syncer: (google.cloud.gkehub.configmanagement.v1alpha.DeploymentState|keyof typeof google.cloud.gkehub.configmanagement.v1alpha.DeploymentState); + + /** ConfigSyncDeploymentState gitSync. */ + public gitSync: (google.cloud.gkehub.configmanagement.v1alpha.DeploymentState|keyof typeof google.cloud.gkehub.configmanagement.v1alpha.DeploymentState); + + /** ConfigSyncDeploymentState monitor. */ + public monitor: (google.cloud.gkehub.configmanagement.v1alpha.DeploymentState|keyof typeof google.cloud.gkehub.configmanagement.v1alpha.DeploymentState); + + /** ConfigSyncDeploymentState reconcilerManager. */ + public reconcilerManager: (google.cloud.gkehub.configmanagement.v1alpha.DeploymentState|keyof typeof google.cloud.gkehub.configmanagement.v1alpha.DeploymentState); + + /** ConfigSyncDeploymentState rootReconciler. */ + public rootReconciler: (google.cloud.gkehub.configmanagement.v1alpha.DeploymentState|keyof typeof google.cloud.gkehub.configmanagement.v1alpha.DeploymentState); + + /** + * Creates a new ConfigSyncDeploymentState instance using the specified properties. + * @param [properties] Properties to set + * @returns ConfigSyncDeploymentState instance + */ + public static create(properties?: google.cloud.gkehub.configmanagement.v1alpha.IConfigSyncDeploymentState): google.cloud.gkehub.configmanagement.v1alpha.ConfigSyncDeploymentState; + + /** + * Encodes the specified ConfigSyncDeploymentState message. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1alpha.ConfigSyncDeploymentState.verify|verify} messages. + * @param message ConfigSyncDeploymentState message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.configmanagement.v1alpha.IConfigSyncDeploymentState, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified ConfigSyncDeploymentState message, length delimited. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1alpha.ConfigSyncDeploymentState.verify|verify} messages. + * @param message ConfigSyncDeploymentState message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.configmanagement.v1alpha.IConfigSyncDeploymentState, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a ConfigSyncDeploymentState message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns ConfigSyncDeploymentState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.configmanagement.v1alpha.ConfigSyncDeploymentState; + + /** + * Decodes a ConfigSyncDeploymentState message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns ConfigSyncDeploymentState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.configmanagement.v1alpha.ConfigSyncDeploymentState; + + /** + * Verifies a ConfigSyncDeploymentState message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a ConfigSyncDeploymentState message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns ConfigSyncDeploymentState + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.configmanagement.v1alpha.ConfigSyncDeploymentState; + + /** + * Creates a plain object from a ConfigSyncDeploymentState message. Also converts values to other types if specified. + * @param message ConfigSyncDeploymentState + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.configmanagement.v1alpha.ConfigSyncDeploymentState, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this ConfigSyncDeploymentState to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } - /** OneofOptions uninterpretedOption. */ - public uninterpretedOption: google.protobuf.IUninterpretedOption[]; + /** Properties of a SyncState. */ + interface ISyncState { - /** - * 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; + /** SyncState sourceToken */ + sourceToken?: (string|null); - /** - * 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; + /** SyncState importToken */ + importToken?: (string|null); - /** - * 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; + /** SyncState syncToken */ + syncToken?: (string|null); - /** - * 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; + /** SyncState lastSync */ + lastSync?: (string|null); - /** - * 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; + /** SyncState lastSyncTime */ + lastSyncTime?: (google.protobuf.ITimestamp|null); - /** - * 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); + /** SyncState code */ + code?: (google.cloud.gkehub.configmanagement.v1alpha.SyncState.SyncCode|keyof typeof google.cloud.gkehub.configmanagement.v1alpha.SyncState.SyncCode|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; + /** SyncState errors */ + errors?: (google.cloud.gkehub.configmanagement.v1alpha.ISyncError[]|null); + } - /** - * 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 }; + /** Represents a SyncState. */ + class SyncState implements ISyncState { + + /** + * Constructs a new SyncState. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.configmanagement.v1alpha.ISyncState); + + /** SyncState sourceToken. */ + public sourceToken: string; + + /** SyncState importToken. */ + public importToken: string; + + /** SyncState syncToken. */ + public syncToken: string; + + /** SyncState lastSync. */ + public lastSync: string; + + /** SyncState lastSyncTime. */ + public lastSyncTime?: (google.protobuf.ITimestamp|null); + + /** SyncState code. */ + public code: (google.cloud.gkehub.configmanagement.v1alpha.SyncState.SyncCode|keyof typeof google.cloud.gkehub.configmanagement.v1alpha.SyncState.SyncCode); + + /** SyncState errors. */ + public errors: google.cloud.gkehub.configmanagement.v1alpha.ISyncError[]; + + /** + * Creates a new SyncState instance using the specified properties. + * @param [properties] Properties to set + * @returns SyncState instance + */ + public static create(properties?: google.cloud.gkehub.configmanagement.v1alpha.ISyncState): google.cloud.gkehub.configmanagement.v1alpha.SyncState; + + /** + * Encodes the specified SyncState message. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1alpha.SyncState.verify|verify} messages. + * @param message SyncState message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.configmanagement.v1alpha.ISyncState, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified SyncState message, length delimited. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1alpha.SyncState.verify|verify} messages. + * @param message SyncState message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.configmanagement.v1alpha.ISyncState, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a SyncState message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns SyncState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.configmanagement.v1alpha.SyncState; + + /** + * Decodes a SyncState message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns SyncState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.configmanagement.v1alpha.SyncState; + + /** + * Verifies a SyncState message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a SyncState message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns SyncState + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.configmanagement.v1alpha.SyncState; + + /** + * Creates a plain object from a SyncState message. Also converts values to other types if specified. + * @param message SyncState + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.configmanagement.v1alpha.SyncState, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this SyncState to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } - /** - * Converts this OneofOptions to JSON. - * @returns JSON object - */ - public toJSON(): { [k: string]: any }; - } + namespace SyncState { + + /** SyncCode enum. */ + enum SyncCode { + SYNC_CODE_UNSPECIFIED = 0, + SYNCED = 1, + PENDING = 2, + ERROR = 3, + NOT_CONFIGURED = 4, + NOT_INSTALLED = 5, + UNAUTHORIZED = 6, + UNREACHABLE = 7 + } + } - /** Properties of an EnumOptions. */ - interface IEnumOptions { + /** Properties of a SyncError. */ + interface ISyncError { - /** EnumOptions allowAlias */ - allowAlias?: (boolean|null); + /** SyncError code */ + code?: (string|null); - /** EnumOptions deprecated */ - deprecated?: (boolean|null); + /** SyncError errorMessage */ + errorMessage?: (string|null); - /** EnumOptions uninterpretedOption */ - uninterpretedOption?: (google.protobuf.IUninterpretedOption[]|null); - } + /** SyncError errorResources */ + errorResources?: (google.cloud.gkehub.configmanagement.v1alpha.IErrorResource[]|null); + } - /** Represents an EnumOptions. */ - class EnumOptions implements IEnumOptions { + /** Represents a SyncError. */ + class SyncError implements ISyncError { + + /** + * Constructs a new SyncError. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.configmanagement.v1alpha.ISyncError); + + /** SyncError code. */ + public code: string; + + /** SyncError errorMessage. */ + public errorMessage: string; + + /** SyncError errorResources. */ + public errorResources: google.cloud.gkehub.configmanagement.v1alpha.IErrorResource[]; + + /** + * Creates a new SyncError instance using the specified properties. + * @param [properties] Properties to set + * @returns SyncError instance + */ + public static create(properties?: google.cloud.gkehub.configmanagement.v1alpha.ISyncError): google.cloud.gkehub.configmanagement.v1alpha.SyncError; + + /** + * Encodes the specified SyncError message. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1alpha.SyncError.verify|verify} messages. + * @param message SyncError message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.configmanagement.v1alpha.ISyncError, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified SyncError message, length delimited. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1alpha.SyncError.verify|verify} messages. + * @param message SyncError message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.configmanagement.v1alpha.ISyncError, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a SyncError message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns SyncError + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.configmanagement.v1alpha.SyncError; + + /** + * Decodes a SyncError message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns SyncError + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.configmanagement.v1alpha.SyncError; + + /** + * Verifies a SyncError message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a SyncError message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns SyncError + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.configmanagement.v1alpha.SyncError; + + /** + * Creates a plain object from a SyncError message. Also converts values to other types if specified. + * @param message SyncError + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.configmanagement.v1alpha.SyncError, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this SyncError to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } - /** - * Constructs a new EnumOptions. - * @param [properties] Properties to set - */ - constructor(properties?: google.protobuf.IEnumOptions); + /** Properties of an ErrorResource. */ + interface IErrorResource { - /** EnumOptions allowAlias. */ - public allowAlias: boolean; + /** ErrorResource sourcePath */ + sourcePath?: (string|null); - /** EnumOptions deprecated. */ - public deprecated: boolean; + /** ErrorResource resourceName */ + resourceName?: (string|null); - /** EnumOptions uninterpretedOption. */ - public uninterpretedOption: google.protobuf.IUninterpretedOption[]; + /** ErrorResource resourceNamespace */ + resourceNamespace?: (string|null); - /** - * 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; + /** ErrorResource resourceGvk */ + resourceGvk?: (google.cloud.gkehub.configmanagement.v1alpha.IGroupVersionKind|null); + } - /** - * 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; + /** Represents an ErrorResource. */ + class ErrorResource implements IErrorResource { + + /** + * Constructs a new ErrorResource. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.configmanagement.v1alpha.IErrorResource); + + /** ErrorResource sourcePath. */ + public sourcePath: string; + + /** ErrorResource resourceName. */ + public resourceName: string; + + /** ErrorResource resourceNamespace. */ + public resourceNamespace: string; + + /** ErrorResource resourceGvk. */ + public resourceGvk?: (google.cloud.gkehub.configmanagement.v1alpha.IGroupVersionKind|null); + + /** + * Creates a new ErrorResource instance using the specified properties. + * @param [properties] Properties to set + * @returns ErrorResource instance + */ + public static create(properties?: google.cloud.gkehub.configmanagement.v1alpha.IErrorResource): google.cloud.gkehub.configmanagement.v1alpha.ErrorResource; + + /** + * Encodes the specified ErrorResource message. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1alpha.ErrorResource.verify|verify} messages. + * @param message ErrorResource message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.configmanagement.v1alpha.IErrorResource, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified ErrorResource message, length delimited. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1alpha.ErrorResource.verify|verify} messages. + * @param message ErrorResource message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.configmanagement.v1alpha.IErrorResource, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes an ErrorResource message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns ErrorResource + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.configmanagement.v1alpha.ErrorResource; + + /** + * Decodes an ErrorResource message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns ErrorResource + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.configmanagement.v1alpha.ErrorResource; + + /** + * Verifies an ErrorResource message. + * @param message Plain 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 ErrorResource message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns ErrorResource + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.configmanagement.v1alpha.ErrorResource; + + /** + * Creates a plain object from an ErrorResource message. Also converts values to other types if specified. + * @param message ErrorResource + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.configmanagement.v1alpha.ErrorResource, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this ErrorResource to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } - /** - * 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; + /** Properties of a GroupVersionKind. */ + interface IGroupVersionKind { - /** - * 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; + /** GroupVersionKind group */ + group?: (string|null); - /** - * 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; + /** GroupVersionKind version */ + version?: (string|null); - /** - * 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); + /** GroupVersionKind kind */ + kind?: (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; + /** Represents a GroupVersionKind. */ + class GroupVersionKind implements IGroupVersionKind { + + /** + * Constructs a new GroupVersionKind. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.configmanagement.v1alpha.IGroupVersionKind); + + /** GroupVersionKind group. */ + public group: string; + + /** GroupVersionKind version. */ + public version: string; + + /** GroupVersionKind kind. */ + public kind: string; + + /** + * Creates a new GroupVersionKind instance using the specified properties. + * @param [properties] Properties to set + * @returns GroupVersionKind instance + */ + public static create(properties?: google.cloud.gkehub.configmanagement.v1alpha.IGroupVersionKind): google.cloud.gkehub.configmanagement.v1alpha.GroupVersionKind; + + /** + * Encodes the specified GroupVersionKind message. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1alpha.GroupVersionKind.verify|verify} messages. + * @param message GroupVersionKind message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.configmanagement.v1alpha.IGroupVersionKind, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified GroupVersionKind message, length delimited. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1alpha.GroupVersionKind.verify|verify} messages. + * @param message GroupVersionKind message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.configmanagement.v1alpha.IGroupVersionKind, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a GroupVersionKind message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns GroupVersionKind + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.configmanagement.v1alpha.GroupVersionKind; + + /** + * Decodes a GroupVersionKind message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns GroupVersionKind + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.configmanagement.v1alpha.GroupVersionKind; + + /** + * Verifies a GroupVersionKind message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a GroupVersionKind message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns GroupVersionKind + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.configmanagement.v1alpha.GroupVersionKind; + + /** + * Creates a plain object from a GroupVersionKind message. Also converts values to other types if specified. + * @param message GroupVersionKind + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.configmanagement.v1alpha.GroupVersionKind, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this GroupVersionKind to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } - /** - * 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 }; + /** Properties of a PolicyControllerState. */ + interface IPolicyControllerState { - /** - * Converts this EnumOptions to JSON. - * @returns JSON object - */ - public toJSON(): { [k: string]: any }; - } + /** PolicyControllerState version */ + version?: (google.cloud.gkehub.configmanagement.v1alpha.IPolicyControllerVersion|null); - /** Properties of an EnumValueOptions. */ - interface IEnumValueOptions { + /** PolicyControllerState deploymentState */ + deploymentState?: (google.cloud.gkehub.configmanagement.v1alpha.IGatekeeperDeploymentState|null); + } - /** EnumValueOptions deprecated */ - deprecated?: (boolean|null); + /** Represents a PolicyControllerState. */ + class PolicyControllerState implements IPolicyControllerState { + + /** + * Constructs a new PolicyControllerState. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.configmanagement.v1alpha.IPolicyControllerState); + + /** PolicyControllerState version. */ + public version?: (google.cloud.gkehub.configmanagement.v1alpha.IPolicyControllerVersion|null); + + /** PolicyControllerState deploymentState. */ + public deploymentState?: (google.cloud.gkehub.configmanagement.v1alpha.IGatekeeperDeploymentState|null); + + /** + * Creates a new PolicyControllerState instance using the specified properties. + * @param [properties] Properties to set + * @returns PolicyControllerState instance + */ + public static create(properties?: google.cloud.gkehub.configmanagement.v1alpha.IPolicyControllerState): google.cloud.gkehub.configmanagement.v1alpha.PolicyControllerState; + + /** + * Encodes the specified PolicyControllerState message. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1alpha.PolicyControllerState.verify|verify} messages. + * @param message PolicyControllerState message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.configmanagement.v1alpha.IPolicyControllerState, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified PolicyControllerState message, length delimited. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1alpha.PolicyControllerState.verify|verify} messages. + * @param message PolicyControllerState message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.configmanagement.v1alpha.IPolicyControllerState, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a PolicyControllerState message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns PolicyControllerState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.configmanagement.v1alpha.PolicyControllerState; + + /** + * Decodes a PolicyControllerState message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns PolicyControllerState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.configmanagement.v1alpha.PolicyControllerState; + + /** + * Verifies a PolicyControllerState message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a PolicyControllerState message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns PolicyControllerState + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.configmanagement.v1alpha.PolicyControllerState; + + /** + * Creates a plain object from a PolicyControllerState message. Also converts values to other types if specified. + * @param message PolicyControllerState + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.configmanagement.v1alpha.PolicyControllerState, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this PolicyControllerState to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } - /** EnumValueOptions uninterpretedOption */ - uninterpretedOption?: (google.protobuf.IUninterpretedOption[]|null); - } + /** Properties of a PolicyControllerVersion. */ + interface IPolicyControllerVersion { - /** Represents an EnumValueOptions. */ - class EnumValueOptions implements IEnumValueOptions { + /** PolicyControllerVersion version */ + version?: (string|null); + } - /** - * Constructs a new EnumValueOptions. - * @param [properties] Properties to set - */ - constructor(properties?: google.protobuf.IEnumValueOptions); + /** Represents a PolicyControllerVersion. */ + class PolicyControllerVersion implements IPolicyControllerVersion { + + /** + * Constructs a new PolicyControllerVersion. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.configmanagement.v1alpha.IPolicyControllerVersion); + + /** PolicyControllerVersion version. */ + public version: string; + + /** + * Creates a new PolicyControllerVersion instance using the specified properties. + * @param [properties] Properties to set + * @returns PolicyControllerVersion instance + */ + public static create(properties?: google.cloud.gkehub.configmanagement.v1alpha.IPolicyControllerVersion): google.cloud.gkehub.configmanagement.v1alpha.PolicyControllerVersion; + + /** + * Encodes the specified PolicyControllerVersion message. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1alpha.PolicyControllerVersion.verify|verify} messages. + * @param message PolicyControllerVersion message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.configmanagement.v1alpha.IPolicyControllerVersion, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified PolicyControllerVersion message, length delimited. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1alpha.PolicyControllerVersion.verify|verify} messages. + * @param message PolicyControllerVersion message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.configmanagement.v1alpha.IPolicyControllerVersion, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a PolicyControllerVersion message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns PolicyControllerVersion + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.configmanagement.v1alpha.PolicyControllerVersion; + + /** + * Decodes a PolicyControllerVersion message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns PolicyControllerVersion + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.configmanagement.v1alpha.PolicyControllerVersion; + + /** + * Verifies a PolicyControllerVersion message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a PolicyControllerVersion message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns PolicyControllerVersion + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.configmanagement.v1alpha.PolicyControllerVersion; + + /** + * Creates a plain object from a PolicyControllerVersion message. Also converts values to other types if specified. + * @param message PolicyControllerVersion + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.configmanagement.v1alpha.PolicyControllerVersion, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this PolicyControllerVersion to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } - /** EnumValueOptions deprecated. */ - public deprecated: boolean; + /** Properties of a BinauthzState. */ + interface IBinauthzState { - /** EnumValueOptions uninterpretedOption. */ - public uninterpretedOption: google.protobuf.IUninterpretedOption[]; + /** BinauthzState webhook */ + webhook?: (google.cloud.gkehub.configmanagement.v1alpha.DeploymentState|keyof typeof google.cloud.gkehub.configmanagement.v1alpha.DeploymentState|null); - /** - * 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; + /** BinauthzState version */ + version?: (google.cloud.gkehub.configmanagement.v1alpha.IBinauthzVersion|null); + } - /** - * 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; + /** Represents a BinauthzState. */ + class BinauthzState implements IBinauthzState { + + /** + * Constructs a new BinauthzState. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.configmanagement.v1alpha.IBinauthzState); + + /** BinauthzState webhook. */ + public webhook: (google.cloud.gkehub.configmanagement.v1alpha.DeploymentState|keyof typeof google.cloud.gkehub.configmanagement.v1alpha.DeploymentState); + + /** BinauthzState version. */ + public version?: (google.cloud.gkehub.configmanagement.v1alpha.IBinauthzVersion|null); + + /** + * Creates a new BinauthzState instance using the specified properties. + * @param [properties] Properties to set + * @returns BinauthzState instance + */ + public static create(properties?: google.cloud.gkehub.configmanagement.v1alpha.IBinauthzState): google.cloud.gkehub.configmanagement.v1alpha.BinauthzState; + + /** + * Encodes the specified BinauthzState message. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1alpha.BinauthzState.verify|verify} messages. + * @param message BinauthzState message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.configmanagement.v1alpha.IBinauthzState, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified BinauthzState message, length delimited. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1alpha.BinauthzState.verify|verify} messages. + * @param message BinauthzState message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.configmanagement.v1alpha.IBinauthzState, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a BinauthzState message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns BinauthzState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.configmanagement.v1alpha.BinauthzState; + + /** + * Decodes a BinauthzState message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns BinauthzState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.configmanagement.v1alpha.BinauthzState; + + /** + * Verifies a BinauthzState message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a BinauthzState message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns BinauthzState + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.configmanagement.v1alpha.BinauthzState; + + /** + * Creates a plain object from a BinauthzState message. Also converts values to other types if specified. + * @param message BinauthzState + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.configmanagement.v1alpha.BinauthzState, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this BinauthzState to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } - /** - * 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; + /** Properties of a BinauthzVersion. */ + interface IBinauthzVersion { - /** - * 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; + /** BinauthzVersion webhookVersion */ + webhookVersion?: (string|null); + } - /** - * 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; + /** Represents a BinauthzVersion. */ + class BinauthzVersion implements IBinauthzVersion { + + /** + * Constructs a new BinauthzVersion. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.configmanagement.v1alpha.IBinauthzVersion); + + /** BinauthzVersion webhookVersion. */ + public webhookVersion: string; + + /** + * Creates a new BinauthzVersion instance using the specified properties. + * @param [properties] Properties to set + * @returns BinauthzVersion instance + */ + public static create(properties?: google.cloud.gkehub.configmanagement.v1alpha.IBinauthzVersion): google.cloud.gkehub.configmanagement.v1alpha.BinauthzVersion; + + /** + * Encodes the specified BinauthzVersion message. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1alpha.BinauthzVersion.verify|verify} messages. + * @param message BinauthzVersion message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.configmanagement.v1alpha.IBinauthzVersion, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified BinauthzVersion message, length delimited. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1alpha.BinauthzVersion.verify|verify} messages. + * @param message BinauthzVersion message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.configmanagement.v1alpha.IBinauthzVersion, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a BinauthzVersion message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns BinauthzVersion + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.configmanagement.v1alpha.BinauthzVersion; + + /** + * Decodes a BinauthzVersion message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns BinauthzVersion + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.configmanagement.v1alpha.BinauthzVersion; + + /** + * Verifies a BinauthzVersion message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a BinauthzVersion message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns BinauthzVersion + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.configmanagement.v1alpha.BinauthzVersion; + + /** + * Creates a plain object from a BinauthzVersion message. Also converts values to other types if specified. + * @param message BinauthzVersion + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.configmanagement.v1alpha.BinauthzVersion, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this BinauthzVersion to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } - /** - * 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); + /** Properties of a GatekeeperDeploymentState. */ + interface IGatekeeperDeploymentState { - /** - * 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; + /** GatekeeperDeploymentState gatekeeperControllerManagerState */ + gatekeeperControllerManagerState?: (google.cloud.gkehub.configmanagement.v1alpha.DeploymentState|keyof typeof google.cloud.gkehub.configmanagement.v1alpha.DeploymentState|null); - /** - * 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 }; + /** GatekeeperDeploymentState gatekeeperAudit */ + gatekeeperAudit?: (google.cloud.gkehub.configmanagement.v1alpha.DeploymentState|keyof typeof google.cloud.gkehub.configmanagement.v1alpha.DeploymentState|null); - /** - * Converts this EnumValueOptions to JSON. - * @returns JSON object - */ - public toJSON(): { [k: string]: any }; - } + /** GatekeeperDeploymentState gatekeeperMutation */ + gatekeeperMutation?: (google.cloud.gkehub.configmanagement.v1alpha.DeploymentState|keyof typeof google.cloud.gkehub.configmanagement.v1alpha.DeploymentState|null); + } - /** Properties of a ServiceOptions. */ - interface IServiceOptions { + /** Represents a GatekeeperDeploymentState. */ + class GatekeeperDeploymentState implements IGatekeeperDeploymentState { + + /** + * Constructs a new GatekeeperDeploymentState. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.configmanagement.v1alpha.IGatekeeperDeploymentState); + + /** GatekeeperDeploymentState gatekeeperControllerManagerState. */ + public gatekeeperControllerManagerState: (google.cloud.gkehub.configmanagement.v1alpha.DeploymentState|keyof typeof google.cloud.gkehub.configmanagement.v1alpha.DeploymentState); + + /** GatekeeperDeploymentState gatekeeperAudit. */ + public gatekeeperAudit: (google.cloud.gkehub.configmanagement.v1alpha.DeploymentState|keyof typeof google.cloud.gkehub.configmanagement.v1alpha.DeploymentState); + + /** GatekeeperDeploymentState gatekeeperMutation. */ + public gatekeeperMutation: (google.cloud.gkehub.configmanagement.v1alpha.DeploymentState|keyof typeof google.cloud.gkehub.configmanagement.v1alpha.DeploymentState); + + /** + * Creates a new GatekeeperDeploymentState instance using the specified properties. + * @param [properties] Properties to set + * @returns GatekeeperDeploymentState instance + */ + public static create(properties?: google.cloud.gkehub.configmanagement.v1alpha.IGatekeeperDeploymentState): google.cloud.gkehub.configmanagement.v1alpha.GatekeeperDeploymentState; + + /** + * Encodes the specified GatekeeperDeploymentState message. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1alpha.GatekeeperDeploymentState.verify|verify} messages. + * @param message GatekeeperDeploymentState message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.configmanagement.v1alpha.IGatekeeperDeploymentState, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified GatekeeperDeploymentState message, length delimited. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1alpha.GatekeeperDeploymentState.verify|verify} messages. + * @param message GatekeeperDeploymentState message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.configmanagement.v1alpha.IGatekeeperDeploymentState, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a GatekeeperDeploymentState message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns GatekeeperDeploymentState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.configmanagement.v1alpha.GatekeeperDeploymentState; + + /** + * Decodes a GatekeeperDeploymentState message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns GatekeeperDeploymentState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.configmanagement.v1alpha.GatekeeperDeploymentState; + + /** + * Verifies a GatekeeperDeploymentState message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a GatekeeperDeploymentState message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns GatekeeperDeploymentState + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.configmanagement.v1alpha.GatekeeperDeploymentState; + + /** + * Creates a plain object from a GatekeeperDeploymentState message. Also converts values to other types if specified. + * @param message GatekeeperDeploymentState + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.configmanagement.v1alpha.GatekeeperDeploymentState, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this GatekeeperDeploymentState to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + } - /** ServiceOptions deprecated */ - deprecated?: (boolean|null); + /** Namespace v1beta. */ + namespace v1beta { - /** ServiceOptions uninterpretedOption */ - uninterpretedOption?: (google.protobuf.IUninterpretedOption[]|null); + /** DeploymentState enum. */ + enum DeploymentState { + DEPLOYMENT_STATE_UNSPECIFIED = 0, + NOT_INSTALLED = 1, + INSTALLED = 2, + ERROR = 3 + } - /** ServiceOptions .google.api.defaultHost */ - ".google.api.defaultHost"?: (string|null); + /** Properties of a MembershipState. */ + interface IMembershipState { - /** ServiceOptions .google.api.oauthScopes */ - ".google.api.oauthScopes"?: (string|null); - } + /** MembershipState clusterName */ + clusterName?: (string|null); - /** Represents a ServiceOptions. */ - class ServiceOptions implements IServiceOptions { + /** MembershipState membershipSpec */ + membershipSpec?: (google.cloud.gkehub.configmanagement.v1beta.IMembershipSpec|null); - /** - * Constructs a new ServiceOptions. - * @param [properties] Properties to set - */ - constructor(properties?: google.protobuf.IServiceOptions); + /** MembershipState operatorState */ + operatorState?: (google.cloud.gkehub.configmanagement.v1beta.IOperatorState|null); - /** ServiceOptions deprecated. */ - public deprecated: boolean; + /** MembershipState configSyncState */ + configSyncState?: (google.cloud.gkehub.configmanagement.v1beta.IConfigSyncState|null); - /** ServiceOptions uninterpretedOption. */ - public uninterpretedOption: google.protobuf.IUninterpretedOption[]; + /** MembershipState policyControllerState */ + policyControllerState?: (google.cloud.gkehub.configmanagement.v1beta.IPolicyControllerState|null); - /** - * 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; + /** MembershipState binauthzState */ + binauthzState?: (google.cloud.gkehub.configmanagement.v1beta.IBinauthzState|null); - /** - * 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; + /** MembershipState hierarchyControllerState */ + hierarchyControllerState?: (google.cloud.gkehub.configmanagement.v1beta.IHierarchyControllerState|null); + } - /** - * 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; + /** Represents a MembershipState. */ + class MembershipState implements IMembershipState { + + /** + * Constructs a new MembershipState. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.configmanagement.v1beta.IMembershipState); + + /** MembershipState clusterName. */ + public clusterName: string; + + /** MembershipState membershipSpec. */ + public membershipSpec?: (google.cloud.gkehub.configmanagement.v1beta.IMembershipSpec|null); + + /** MembershipState operatorState. */ + public operatorState?: (google.cloud.gkehub.configmanagement.v1beta.IOperatorState|null); + + /** MembershipState configSyncState. */ + public configSyncState?: (google.cloud.gkehub.configmanagement.v1beta.IConfigSyncState|null); + + /** MembershipState policyControllerState. */ + public policyControllerState?: (google.cloud.gkehub.configmanagement.v1beta.IPolicyControllerState|null); + + /** MembershipState binauthzState. */ + public binauthzState?: (google.cloud.gkehub.configmanagement.v1beta.IBinauthzState|null); + + /** MembershipState hierarchyControllerState. */ + public hierarchyControllerState?: (google.cloud.gkehub.configmanagement.v1beta.IHierarchyControllerState|null); + + /** + * Creates a new MembershipState instance using the specified properties. + * @param [properties] Properties to set + * @returns MembershipState instance + */ + public static create(properties?: google.cloud.gkehub.configmanagement.v1beta.IMembershipState): google.cloud.gkehub.configmanagement.v1beta.MembershipState; + + /** + * Encodes the specified MembershipState message. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1beta.MembershipState.verify|verify} messages. + * @param message MembershipState message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.configmanagement.v1beta.IMembershipState, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified MembershipState message, length delimited. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1beta.MembershipState.verify|verify} messages. + * @param message MembershipState message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.configmanagement.v1beta.IMembershipState, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a MembershipState message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns MembershipState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.configmanagement.v1beta.MembershipState; + + /** + * Decodes a MembershipState message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns MembershipState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.configmanagement.v1beta.MembershipState; + + /** + * Verifies a MembershipState message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a MembershipState message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns MembershipState + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.configmanagement.v1beta.MembershipState; + + /** + * Creates a plain object from a MembershipState message. Also converts values to other types if specified. + * @param message MembershipState + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.configmanagement.v1beta.MembershipState, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this MembershipState to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } - /** - * 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; + /** Properties of a MembershipSpec. */ + interface IMembershipSpec { - /** - * 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; + /** MembershipSpec configSync */ + configSync?: (google.cloud.gkehub.configmanagement.v1beta.IConfigSync|null); - /** - * 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); + /** MembershipSpec policyController */ + policyController?: (google.cloud.gkehub.configmanagement.v1beta.IPolicyController|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; + /** MembershipSpec binauthz */ + binauthz?: (google.cloud.gkehub.configmanagement.v1beta.IBinauthzConfig|null); - /** - * 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 }; + /** MembershipSpec hierarchyController */ + hierarchyController?: (google.cloud.gkehub.configmanagement.v1beta.IHierarchyControllerConfig|null); - /** - * Converts this ServiceOptions to JSON. - * @returns JSON object - */ - public toJSON(): { [k: string]: any }; - } + /** MembershipSpec version */ + version?: (string|null); + } - /** Properties of a MethodOptions. */ - interface IMethodOptions { + /** Represents a MembershipSpec. */ + class MembershipSpec implements IMembershipSpec { + + /** + * Constructs a new MembershipSpec. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.configmanagement.v1beta.IMembershipSpec); + + /** MembershipSpec configSync. */ + public configSync?: (google.cloud.gkehub.configmanagement.v1beta.IConfigSync|null); + + /** MembershipSpec policyController. */ + public policyController?: (google.cloud.gkehub.configmanagement.v1beta.IPolicyController|null); + + /** MembershipSpec binauthz. */ + public binauthz?: (google.cloud.gkehub.configmanagement.v1beta.IBinauthzConfig|null); + + /** MembershipSpec hierarchyController. */ + public hierarchyController?: (google.cloud.gkehub.configmanagement.v1beta.IHierarchyControllerConfig|null); + + /** MembershipSpec version. */ + public version: string; + + /** + * Creates a new MembershipSpec instance using the specified properties. + * @param [properties] Properties to set + * @returns MembershipSpec instance + */ + public static create(properties?: google.cloud.gkehub.configmanagement.v1beta.IMembershipSpec): google.cloud.gkehub.configmanagement.v1beta.MembershipSpec; + + /** + * Encodes the specified MembershipSpec message. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1beta.MembershipSpec.verify|verify} messages. + * @param message MembershipSpec message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.configmanagement.v1beta.IMembershipSpec, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified MembershipSpec message, length delimited. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1beta.MembershipSpec.verify|verify} messages. + * @param message MembershipSpec message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.configmanagement.v1beta.IMembershipSpec, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a MembershipSpec message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns MembershipSpec + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.configmanagement.v1beta.MembershipSpec; + + /** + * Decodes a MembershipSpec message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns MembershipSpec + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.configmanagement.v1beta.MembershipSpec; + + /** + * Verifies a MembershipSpec message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a MembershipSpec message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns MembershipSpec + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.configmanagement.v1beta.MembershipSpec; + + /** + * Creates a plain object from a MembershipSpec message. Also converts values to other types if specified. + * @param message MembershipSpec + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.configmanagement.v1beta.MembershipSpec, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this MembershipSpec to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } - /** MethodOptions deprecated */ - deprecated?: (boolean|null); + /** Properties of a ConfigSync. */ + interface IConfigSync { - /** MethodOptions idempotencyLevel */ - idempotencyLevel?: (google.protobuf.MethodOptions.IdempotencyLevel|keyof typeof google.protobuf.MethodOptions.IdempotencyLevel|null); + /** ConfigSync git */ + git?: (google.cloud.gkehub.configmanagement.v1beta.IGitConfig|null); - /** MethodOptions uninterpretedOption */ - uninterpretedOption?: (google.protobuf.IUninterpretedOption[]|null); + /** ConfigSync sourceFormat */ + sourceFormat?: (string|null); + } - /** MethodOptions .google.api.http */ - ".google.api.http"?: (google.api.IHttpRule|null); + /** Represents a ConfigSync. */ + class ConfigSync implements IConfigSync { + + /** + * Constructs a new ConfigSync. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.configmanagement.v1beta.IConfigSync); + + /** ConfigSync git. */ + public git?: (google.cloud.gkehub.configmanagement.v1beta.IGitConfig|null); + + /** ConfigSync sourceFormat. */ + public sourceFormat: string; + + /** + * Creates a new ConfigSync instance using the specified properties. + * @param [properties] Properties to set + * @returns ConfigSync instance + */ + public static create(properties?: google.cloud.gkehub.configmanagement.v1beta.IConfigSync): google.cloud.gkehub.configmanagement.v1beta.ConfigSync; + + /** + * Encodes the specified ConfigSync message. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1beta.ConfigSync.verify|verify} messages. + * @param message ConfigSync message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.configmanagement.v1beta.IConfigSync, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified ConfigSync message, length delimited. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1beta.ConfigSync.verify|verify} messages. + * @param message ConfigSync message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.configmanagement.v1beta.IConfigSync, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a ConfigSync message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns ConfigSync + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.configmanagement.v1beta.ConfigSync; + + /** + * Decodes a ConfigSync message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns ConfigSync + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.configmanagement.v1beta.ConfigSync; + + /** + * Verifies a ConfigSync message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a ConfigSync message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns ConfigSync + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.configmanagement.v1beta.ConfigSync; + + /** + * Creates a plain object from a ConfigSync message. Also converts values to other types if specified. + * @param message ConfigSync + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.configmanagement.v1beta.ConfigSync, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this ConfigSync to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } - /** MethodOptions .google.api.methodSignature */ - ".google.api.methodSignature"?: (string[]|null); + /** Properties of a GitConfig. */ + interface IGitConfig { - /** MethodOptions .google.longrunning.operationInfo */ - ".google.longrunning.operationInfo"?: (google.longrunning.IOperationInfo|null); - } + /** GitConfig syncRepo */ + syncRepo?: (string|null); - /** Represents a MethodOptions. */ - class MethodOptions implements IMethodOptions { + /** GitConfig syncBranch */ + syncBranch?: (string|null); - /** - * Constructs a new MethodOptions. - * @param [properties] Properties to set - */ - constructor(properties?: google.protobuf.IMethodOptions); + /** GitConfig policyDir */ + policyDir?: (string|null); - /** MethodOptions deprecated. */ - public deprecated: boolean; + /** GitConfig syncWaitSecs */ + syncWaitSecs?: (number|Long|string|null); - /** MethodOptions idempotencyLevel. */ - public idempotencyLevel: (google.protobuf.MethodOptions.IdempotencyLevel|keyof typeof google.protobuf.MethodOptions.IdempotencyLevel); + /** GitConfig syncRev */ + syncRev?: (string|null); - /** MethodOptions uninterpretedOption. */ - public uninterpretedOption: google.protobuf.IUninterpretedOption[]; + /** GitConfig secretType */ + secretType?: (string|null); - /** - * 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; + /** GitConfig httpsProxy */ + httpsProxy?: (string|null); - /** - * 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; + /** GitConfig gcpServiceAccountEmail */ + gcpServiceAccountEmail?: (string|null); + } - /** - * 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; + /** Represents a GitConfig. */ + class GitConfig implements IGitConfig { + + /** + * Constructs a new GitConfig. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.configmanagement.v1beta.IGitConfig); + + /** GitConfig syncRepo. */ + public syncRepo: string; + + /** GitConfig syncBranch. */ + public syncBranch: string; + + /** GitConfig policyDir. */ + public policyDir: string; + + /** GitConfig syncWaitSecs. */ + public syncWaitSecs: (number|Long|string); + + /** GitConfig syncRev. */ + public syncRev: string; + + /** GitConfig secretType. */ + public secretType: string; + + /** GitConfig httpsProxy. */ + public httpsProxy: string; + + /** GitConfig gcpServiceAccountEmail. */ + public gcpServiceAccountEmail: string; + + /** + * Creates a new GitConfig instance using the specified properties. + * @param [properties] Properties to set + * @returns GitConfig instance + */ + public static create(properties?: google.cloud.gkehub.configmanagement.v1beta.IGitConfig): google.cloud.gkehub.configmanagement.v1beta.GitConfig; + + /** + * Encodes the specified GitConfig message. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1beta.GitConfig.verify|verify} messages. + * @param message GitConfig message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.configmanagement.v1beta.IGitConfig, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified GitConfig message, length delimited. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1beta.GitConfig.verify|verify} messages. + * @param message GitConfig message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.configmanagement.v1beta.IGitConfig, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a GitConfig message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns GitConfig + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.configmanagement.v1beta.GitConfig; + + /** + * Decodes a GitConfig message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns GitConfig + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.configmanagement.v1beta.GitConfig; + + /** + * Verifies a GitConfig message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a GitConfig message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns GitConfig + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.configmanagement.v1beta.GitConfig; + + /** + * Creates a plain object from a GitConfig message. Also converts values to other types if specified. + * @param message GitConfig + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.configmanagement.v1beta.GitConfig, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this GitConfig to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } - /** - * 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; + /** Properties of a PolicyController. */ + interface IPolicyController { - /** - * 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; + /** PolicyController enabled */ + enabled?: (boolean|null); - /** - * 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); + /** PolicyController templateLibraryInstalled */ + templateLibraryInstalled?: (boolean|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; + /** PolicyController auditIntervalSeconds */ + auditIntervalSeconds?: (number|Long|string|null); - /** - * 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 }; + /** PolicyController exemptableNamespaces */ + exemptableNamespaces?: (string[]|null); - /** - * Converts this MethodOptions to JSON. - * @returns JSON object - */ - public toJSON(): { [k: string]: any }; - } + /** PolicyController referentialRulesEnabled */ + referentialRulesEnabled?: (boolean|null); - namespace MethodOptions { + /** PolicyController logDeniesEnabled */ + logDeniesEnabled?: (boolean|null); + } - /** IdempotencyLevel enum. */ - enum IdempotencyLevel { - IDEMPOTENCY_UNKNOWN = 0, - NO_SIDE_EFFECTS = 1, - IDEMPOTENT = 2 - } - } + /** Represents a PolicyController. */ + class PolicyController implements IPolicyController { + + /** + * Constructs a new PolicyController. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.configmanagement.v1beta.IPolicyController); + + /** PolicyController enabled. */ + public enabled: boolean; + + /** PolicyController templateLibraryInstalled. */ + public templateLibraryInstalled?: (boolean|null); + + /** PolicyController auditIntervalSeconds. */ + public auditIntervalSeconds?: (number|Long|string|null); + + /** PolicyController exemptableNamespaces. */ + public exemptableNamespaces: string[]; + + /** PolicyController referentialRulesEnabled. */ + public referentialRulesEnabled: boolean; + + /** PolicyController logDeniesEnabled. */ + public logDeniesEnabled: boolean; + + /** PolicyController _templateLibraryInstalled. */ + public _templateLibraryInstalled?: "templateLibraryInstalled"; + + /** PolicyController _auditIntervalSeconds. */ + public _auditIntervalSeconds?: "auditIntervalSeconds"; + + /** + * Creates a new PolicyController instance using the specified properties. + * @param [properties] Properties to set + * @returns PolicyController instance + */ + public static create(properties?: google.cloud.gkehub.configmanagement.v1beta.IPolicyController): google.cloud.gkehub.configmanagement.v1beta.PolicyController; + + /** + * Encodes the specified PolicyController message. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1beta.PolicyController.verify|verify} messages. + * @param message PolicyController message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.configmanagement.v1beta.IPolicyController, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified PolicyController message, length delimited. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1beta.PolicyController.verify|verify} messages. + * @param message PolicyController message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.configmanagement.v1beta.IPolicyController, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a PolicyController message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns PolicyController + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.configmanagement.v1beta.PolicyController; + + /** + * Decodes a PolicyController message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns PolicyController + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.configmanagement.v1beta.PolicyController; + + /** + * Verifies a PolicyController message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a PolicyController message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns PolicyController + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.configmanagement.v1beta.PolicyController; + + /** + * Creates a plain object from a PolicyController message. Also converts values to other types if specified. + * @param message PolicyController + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.configmanagement.v1beta.PolicyController, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this PolicyController to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } - /** Properties of an UninterpretedOption. */ - interface IUninterpretedOption { + /** Properties of a BinauthzConfig. */ + interface IBinauthzConfig { - /** UninterpretedOption name */ - name?: (google.protobuf.UninterpretedOption.INamePart[]|null); + /** BinauthzConfig enabled */ + enabled?: (boolean|null); + } - /** UninterpretedOption identifierValue */ - identifierValue?: (string|null); + /** Represents a BinauthzConfig. */ + class BinauthzConfig implements IBinauthzConfig { + + /** + * Constructs a new BinauthzConfig. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.configmanagement.v1beta.IBinauthzConfig); + + /** BinauthzConfig enabled. */ + public enabled: boolean; + + /** + * Creates a new BinauthzConfig instance using the specified properties. + * @param [properties] Properties to set + * @returns BinauthzConfig instance + */ + public static create(properties?: google.cloud.gkehub.configmanagement.v1beta.IBinauthzConfig): google.cloud.gkehub.configmanagement.v1beta.BinauthzConfig; + + /** + * Encodes the specified BinauthzConfig message. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1beta.BinauthzConfig.verify|verify} messages. + * @param message BinauthzConfig message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.configmanagement.v1beta.IBinauthzConfig, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified BinauthzConfig message, length delimited. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1beta.BinauthzConfig.verify|verify} messages. + * @param message BinauthzConfig message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.configmanagement.v1beta.IBinauthzConfig, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a BinauthzConfig message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns BinauthzConfig + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.configmanagement.v1beta.BinauthzConfig; + + /** + * Decodes a BinauthzConfig message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns BinauthzConfig + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.configmanagement.v1beta.BinauthzConfig; + + /** + * Verifies a BinauthzConfig message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a BinauthzConfig message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns BinauthzConfig + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.configmanagement.v1beta.BinauthzConfig; + + /** + * Creates a plain object from a BinauthzConfig message. Also converts values to other types if specified. + * @param message BinauthzConfig + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.configmanagement.v1beta.BinauthzConfig, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this BinauthzConfig to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } - /** UninterpretedOption positiveIntValue */ - positiveIntValue?: (number|Long|string|null); + /** Properties of a HierarchyControllerConfig. */ + interface IHierarchyControllerConfig { - /** UninterpretedOption negativeIntValue */ - negativeIntValue?: (number|Long|string|null); + /** HierarchyControllerConfig enabled */ + enabled?: (boolean|null); - /** UninterpretedOption doubleValue */ - doubleValue?: (number|null); + /** HierarchyControllerConfig enablePodTreeLabels */ + enablePodTreeLabels?: (boolean|null); - /** UninterpretedOption stringValue */ - stringValue?: (Uint8Array|string|null); + /** HierarchyControllerConfig enableHierarchicalResourceQuota */ + enableHierarchicalResourceQuota?: (boolean|null); + } - /** UninterpretedOption aggregateValue */ - aggregateValue?: (string|null); - } + /** Represents a HierarchyControllerConfig. */ + class HierarchyControllerConfig implements IHierarchyControllerConfig { + + /** + * Constructs a new HierarchyControllerConfig. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.configmanagement.v1beta.IHierarchyControllerConfig); + + /** HierarchyControllerConfig enabled. */ + public enabled: boolean; + + /** HierarchyControllerConfig enablePodTreeLabels. */ + public enablePodTreeLabels: boolean; + + /** HierarchyControllerConfig enableHierarchicalResourceQuota. */ + public enableHierarchicalResourceQuota: boolean; + + /** + * Creates a new HierarchyControllerConfig instance using the specified properties. + * @param [properties] Properties to set + * @returns HierarchyControllerConfig instance + */ + public static create(properties?: google.cloud.gkehub.configmanagement.v1beta.IHierarchyControllerConfig): google.cloud.gkehub.configmanagement.v1beta.HierarchyControllerConfig; + + /** + * Encodes the specified HierarchyControllerConfig message. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1beta.HierarchyControllerConfig.verify|verify} messages. + * @param message HierarchyControllerConfig message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.configmanagement.v1beta.IHierarchyControllerConfig, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified HierarchyControllerConfig message, length delimited. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1beta.HierarchyControllerConfig.verify|verify} messages. + * @param message HierarchyControllerConfig message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.configmanagement.v1beta.IHierarchyControllerConfig, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a HierarchyControllerConfig message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns HierarchyControllerConfig + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.configmanagement.v1beta.HierarchyControllerConfig; + + /** + * Decodes a HierarchyControllerConfig message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns HierarchyControllerConfig + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.configmanagement.v1beta.HierarchyControllerConfig; + + /** + * Verifies a HierarchyControllerConfig message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a HierarchyControllerConfig message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns HierarchyControllerConfig + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.configmanagement.v1beta.HierarchyControllerConfig; + + /** + * Creates a plain object from a HierarchyControllerConfig message. Also converts values to other types if specified. + * @param message HierarchyControllerConfig + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.configmanagement.v1beta.HierarchyControllerConfig, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this HierarchyControllerConfig to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } - /** Represents an UninterpretedOption. */ - class UninterpretedOption implements IUninterpretedOption { + /** Properties of a HierarchyControllerDeploymentState. */ + interface IHierarchyControllerDeploymentState { - /** - * Constructs a new UninterpretedOption. - * @param [properties] Properties to set - */ - constructor(properties?: google.protobuf.IUninterpretedOption); + /** HierarchyControllerDeploymentState hnc */ + hnc?: (google.cloud.gkehub.configmanagement.v1beta.DeploymentState|keyof typeof google.cloud.gkehub.configmanagement.v1beta.DeploymentState|null); - /** UninterpretedOption name. */ - public name: google.protobuf.UninterpretedOption.INamePart[]; + /** HierarchyControllerDeploymentState extension */ + extension?: (google.cloud.gkehub.configmanagement.v1beta.DeploymentState|keyof typeof google.cloud.gkehub.configmanagement.v1beta.DeploymentState|null); + } - /** UninterpretedOption identifierValue. */ - public identifierValue: string; + /** Represents a HierarchyControllerDeploymentState. */ + class HierarchyControllerDeploymentState implements IHierarchyControllerDeploymentState { + + /** + * Constructs a new HierarchyControllerDeploymentState. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.configmanagement.v1beta.IHierarchyControllerDeploymentState); + + /** HierarchyControllerDeploymentState hnc. */ + public hnc: (google.cloud.gkehub.configmanagement.v1beta.DeploymentState|keyof typeof google.cloud.gkehub.configmanagement.v1beta.DeploymentState); + + /** HierarchyControllerDeploymentState extension. */ + public extension: (google.cloud.gkehub.configmanagement.v1beta.DeploymentState|keyof typeof google.cloud.gkehub.configmanagement.v1beta.DeploymentState); + + /** + * Creates a new HierarchyControllerDeploymentState instance using the specified properties. + * @param [properties] Properties to set + * @returns HierarchyControllerDeploymentState instance + */ + public static create(properties?: google.cloud.gkehub.configmanagement.v1beta.IHierarchyControllerDeploymentState): google.cloud.gkehub.configmanagement.v1beta.HierarchyControllerDeploymentState; + + /** + * Encodes the specified HierarchyControllerDeploymentState message. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1beta.HierarchyControllerDeploymentState.verify|verify} messages. + * @param message HierarchyControllerDeploymentState message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.configmanagement.v1beta.IHierarchyControllerDeploymentState, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified HierarchyControllerDeploymentState message, length delimited. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1beta.HierarchyControllerDeploymentState.verify|verify} messages. + * @param message HierarchyControllerDeploymentState message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.configmanagement.v1beta.IHierarchyControllerDeploymentState, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a HierarchyControllerDeploymentState message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns HierarchyControllerDeploymentState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.configmanagement.v1beta.HierarchyControllerDeploymentState; + + /** + * Decodes a HierarchyControllerDeploymentState message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns HierarchyControllerDeploymentState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.configmanagement.v1beta.HierarchyControllerDeploymentState; + + /** + * Verifies a HierarchyControllerDeploymentState message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a HierarchyControllerDeploymentState message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns HierarchyControllerDeploymentState + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.configmanagement.v1beta.HierarchyControllerDeploymentState; + + /** + * Creates a plain object from a HierarchyControllerDeploymentState message. Also converts values to other types if specified. + * @param message HierarchyControllerDeploymentState + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.configmanagement.v1beta.HierarchyControllerDeploymentState, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this HierarchyControllerDeploymentState to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } - /** UninterpretedOption positiveIntValue. */ - public positiveIntValue: (number|Long|string); + /** Properties of a HierarchyControllerVersion. */ + interface IHierarchyControllerVersion { - /** UninterpretedOption negativeIntValue. */ - public negativeIntValue: (number|Long|string); + /** HierarchyControllerVersion hnc */ + hnc?: (string|null); - /** UninterpretedOption doubleValue. */ - public doubleValue: number; + /** HierarchyControllerVersion extension */ + extension?: (string|null); + } - /** UninterpretedOption stringValue. */ - public stringValue: (Uint8Array|string); + /** Represents a HierarchyControllerVersion. */ + class HierarchyControllerVersion implements IHierarchyControllerVersion { + + /** + * Constructs a new HierarchyControllerVersion. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.configmanagement.v1beta.IHierarchyControllerVersion); + + /** HierarchyControllerVersion hnc. */ + public hnc: string; + + /** HierarchyControllerVersion extension. */ + public extension: string; + + /** + * Creates a new HierarchyControllerVersion instance using the specified properties. + * @param [properties] Properties to set + * @returns HierarchyControllerVersion instance + */ + public static create(properties?: google.cloud.gkehub.configmanagement.v1beta.IHierarchyControllerVersion): google.cloud.gkehub.configmanagement.v1beta.HierarchyControllerVersion; + + /** + * Encodes the specified HierarchyControllerVersion message. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1beta.HierarchyControllerVersion.verify|verify} messages. + * @param message HierarchyControllerVersion message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.configmanagement.v1beta.IHierarchyControllerVersion, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified HierarchyControllerVersion message, length delimited. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1beta.HierarchyControllerVersion.verify|verify} messages. + * @param message HierarchyControllerVersion message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.configmanagement.v1beta.IHierarchyControllerVersion, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a HierarchyControllerVersion message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns HierarchyControllerVersion + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.configmanagement.v1beta.HierarchyControllerVersion; + + /** + * Decodes a HierarchyControllerVersion message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns HierarchyControllerVersion + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.configmanagement.v1beta.HierarchyControllerVersion; + + /** + * Verifies a HierarchyControllerVersion message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a HierarchyControllerVersion message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns HierarchyControllerVersion + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.configmanagement.v1beta.HierarchyControllerVersion; + + /** + * Creates a plain object from a HierarchyControllerVersion message. Also converts values to other types if specified. + * @param message HierarchyControllerVersion + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.configmanagement.v1beta.HierarchyControllerVersion, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this HierarchyControllerVersion to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } - /** UninterpretedOption aggregateValue. */ - public aggregateValue: string; + /** Properties of a HierarchyControllerState. */ + interface IHierarchyControllerState { - /** - * 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; + /** HierarchyControllerState version */ + version?: (google.cloud.gkehub.configmanagement.v1beta.IHierarchyControllerVersion|null); - /** - * 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; + /** HierarchyControllerState state */ + state?: (google.cloud.gkehub.configmanagement.v1beta.IHierarchyControllerDeploymentState|null); + } - /** - * 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; + /** Represents a HierarchyControllerState. */ + class HierarchyControllerState implements IHierarchyControllerState { + + /** + * Constructs a new HierarchyControllerState. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.configmanagement.v1beta.IHierarchyControllerState); + + /** HierarchyControllerState version. */ + public version?: (google.cloud.gkehub.configmanagement.v1beta.IHierarchyControllerVersion|null); + + /** HierarchyControllerState state. */ + public state?: (google.cloud.gkehub.configmanagement.v1beta.IHierarchyControllerDeploymentState|null); + + /** + * Creates a new HierarchyControllerState instance using the specified properties. + * @param [properties] Properties to set + * @returns HierarchyControllerState instance + */ + public static create(properties?: google.cloud.gkehub.configmanagement.v1beta.IHierarchyControllerState): google.cloud.gkehub.configmanagement.v1beta.HierarchyControllerState; + + /** + * Encodes the specified HierarchyControllerState message. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1beta.HierarchyControllerState.verify|verify} messages. + * @param message HierarchyControllerState message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.configmanagement.v1beta.IHierarchyControllerState, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified HierarchyControllerState message, length delimited. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1beta.HierarchyControllerState.verify|verify} messages. + * @param message HierarchyControllerState message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.configmanagement.v1beta.IHierarchyControllerState, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a HierarchyControllerState message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns HierarchyControllerState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.configmanagement.v1beta.HierarchyControllerState; + + /** + * Decodes a HierarchyControllerState message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns HierarchyControllerState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.configmanagement.v1beta.HierarchyControllerState; + + /** + * Verifies a HierarchyControllerState message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a HierarchyControllerState message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns HierarchyControllerState + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.configmanagement.v1beta.HierarchyControllerState; + + /** + * Creates a plain object from a HierarchyControllerState message. Also converts values to other types if specified. + * @param message HierarchyControllerState + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.configmanagement.v1beta.HierarchyControllerState, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this HierarchyControllerState to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } - /** - * 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; + /** Properties of an OperatorState. */ + interface IOperatorState { - /** - * 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; + /** OperatorState version */ + version?: (string|null); - /** - * 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); + /** OperatorState deploymentState */ + deploymentState?: (google.cloud.gkehub.configmanagement.v1beta.DeploymentState|keyof typeof google.cloud.gkehub.configmanagement.v1beta.DeploymentState|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; + /** OperatorState errors */ + errors?: (google.cloud.gkehub.configmanagement.v1beta.IInstallError[]|null); + } - /** - * 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 }; + /** Represents an OperatorState. */ + class OperatorState implements IOperatorState { + + /** + * Constructs a new OperatorState. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.configmanagement.v1beta.IOperatorState); + + /** OperatorState version. */ + public version: string; + + /** OperatorState deploymentState. */ + public deploymentState: (google.cloud.gkehub.configmanagement.v1beta.DeploymentState|keyof typeof google.cloud.gkehub.configmanagement.v1beta.DeploymentState); + + /** OperatorState errors. */ + public errors: google.cloud.gkehub.configmanagement.v1beta.IInstallError[]; + + /** + * Creates a new OperatorState instance using the specified properties. + * @param [properties] Properties to set + * @returns OperatorState instance + */ + public static create(properties?: google.cloud.gkehub.configmanagement.v1beta.IOperatorState): google.cloud.gkehub.configmanagement.v1beta.OperatorState; + + /** + * Encodes the specified OperatorState message. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1beta.OperatorState.verify|verify} messages. + * @param message OperatorState message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.configmanagement.v1beta.IOperatorState, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified OperatorState message, length delimited. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1beta.OperatorState.verify|verify} messages. + * @param message OperatorState message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.configmanagement.v1beta.IOperatorState, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes an OperatorState message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns OperatorState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.configmanagement.v1beta.OperatorState; + + /** + * Decodes an OperatorState message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns OperatorState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.configmanagement.v1beta.OperatorState; + + /** + * Verifies an OperatorState message. + * @param message Plain 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 OperatorState message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns OperatorState + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.configmanagement.v1beta.OperatorState; + + /** + * Creates a plain object from an OperatorState message. Also converts values to other types if specified. + * @param message OperatorState + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.configmanagement.v1beta.OperatorState, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this OperatorState to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } - /** - * Converts this UninterpretedOption to JSON. - * @returns JSON object - */ - public toJSON(): { [k: string]: any }; - } + /** Properties of an InstallError. */ + interface IInstallError { - namespace UninterpretedOption { + /** InstallError errorMessage */ + errorMessage?: (string|null); + } - /** Properties of a NamePart. */ - interface INamePart { + /** Represents an InstallError. */ + class InstallError implements IInstallError { + + /** + * Constructs a new InstallError. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.configmanagement.v1beta.IInstallError); + + /** InstallError errorMessage. */ + public errorMessage: string; + + /** + * Creates a new InstallError instance using the specified properties. + * @param [properties] Properties to set + * @returns InstallError instance + */ + public static create(properties?: google.cloud.gkehub.configmanagement.v1beta.IInstallError): google.cloud.gkehub.configmanagement.v1beta.InstallError; + + /** + * Encodes the specified InstallError message. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1beta.InstallError.verify|verify} messages. + * @param message InstallError message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.configmanagement.v1beta.IInstallError, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified InstallError message, length delimited. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1beta.InstallError.verify|verify} messages. + * @param message InstallError message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.configmanagement.v1beta.IInstallError, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes an InstallError message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns InstallError + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.configmanagement.v1beta.InstallError; + + /** + * Decodes an InstallError message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns InstallError + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.configmanagement.v1beta.InstallError; + + /** + * Verifies an InstallError message. + * @param message Plain 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 InstallError message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns InstallError + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.configmanagement.v1beta.InstallError; + + /** + * Creates a plain object from an InstallError message. Also converts values to other types if specified. + * @param message InstallError + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.configmanagement.v1beta.InstallError, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this InstallError to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } - /** NamePart namePart */ - namePart: string; + /** Properties of a ConfigSyncState. */ + interface IConfigSyncState { - /** NamePart isExtension */ - isExtension: boolean; - } + /** ConfigSyncState version */ + version?: (google.cloud.gkehub.configmanagement.v1beta.IConfigSyncVersion|null); - /** Represents a NamePart. */ - class NamePart implements INamePart { + /** ConfigSyncState deploymentState */ + deploymentState?: (google.cloud.gkehub.configmanagement.v1beta.IConfigSyncDeploymentState|null); - /** - * Constructs a new NamePart. - * @param [properties] Properties to set - */ - constructor(properties?: google.protobuf.UninterpretedOption.INamePart); + /** ConfigSyncState syncState */ + syncState?: (google.cloud.gkehub.configmanagement.v1beta.ISyncState|null); + } - /** NamePart namePart. */ - public namePart: string; + /** Represents a ConfigSyncState. */ + class ConfigSyncState implements IConfigSyncState { + + /** + * Constructs a new ConfigSyncState. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.configmanagement.v1beta.IConfigSyncState); + + /** ConfigSyncState version. */ + public version?: (google.cloud.gkehub.configmanagement.v1beta.IConfigSyncVersion|null); + + /** ConfigSyncState deploymentState. */ + public deploymentState?: (google.cloud.gkehub.configmanagement.v1beta.IConfigSyncDeploymentState|null); + + /** ConfigSyncState syncState. */ + public syncState?: (google.cloud.gkehub.configmanagement.v1beta.ISyncState|null); + + /** + * Creates a new ConfigSyncState instance using the specified properties. + * @param [properties] Properties to set + * @returns ConfigSyncState instance + */ + public static create(properties?: google.cloud.gkehub.configmanagement.v1beta.IConfigSyncState): google.cloud.gkehub.configmanagement.v1beta.ConfigSyncState; + + /** + * Encodes the specified ConfigSyncState message. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1beta.ConfigSyncState.verify|verify} messages. + * @param message ConfigSyncState message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.configmanagement.v1beta.IConfigSyncState, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified ConfigSyncState message, length delimited. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1beta.ConfigSyncState.verify|verify} messages. + * @param message ConfigSyncState message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.configmanagement.v1beta.IConfigSyncState, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a ConfigSyncState message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns ConfigSyncState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.configmanagement.v1beta.ConfigSyncState; + + /** + * Decodes a ConfigSyncState message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns ConfigSyncState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.configmanagement.v1beta.ConfigSyncState; + + /** + * Verifies a ConfigSyncState message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a ConfigSyncState message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns ConfigSyncState + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.configmanagement.v1beta.ConfigSyncState; + + /** + * Creates a plain object from a ConfigSyncState message. Also converts values to other types if specified. + * @param message ConfigSyncState + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.configmanagement.v1beta.ConfigSyncState, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this ConfigSyncState to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } - /** NamePart isExtension. */ - public isExtension: boolean; + /** Properties of a ConfigSyncVersion. */ + interface IConfigSyncVersion { - /** - * 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; + /** ConfigSyncVersion importer */ + importer?: (string|null); - /** - * 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; + /** ConfigSyncVersion syncer */ + syncer?: (string|null); - /** - * 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; + /** ConfigSyncVersion gitSync */ + gitSync?: (string|null); - /** - * 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; + /** ConfigSyncVersion monitor */ + monitor?: (string|null); - /** - * 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; + /** ConfigSyncVersion reconcilerManager */ + reconcilerManager?: (string|null); - /** - * 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); + /** ConfigSyncVersion rootReconciler */ + rootReconciler?: (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; + /** Represents a ConfigSyncVersion. */ + class ConfigSyncVersion implements IConfigSyncVersion { + + /** + * Constructs a new ConfigSyncVersion. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.configmanagement.v1beta.IConfigSyncVersion); + + /** ConfigSyncVersion importer. */ + public importer: string; + + /** ConfigSyncVersion syncer. */ + public syncer: string; + + /** ConfigSyncVersion gitSync. */ + public gitSync: string; + + /** ConfigSyncVersion monitor. */ + public monitor: string; + + /** ConfigSyncVersion reconcilerManager. */ + public reconcilerManager: string; + + /** ConfigSyncVersion rootReconciler. */ + public rootReconciler: string; + + /** + * Creates a new ConfigSyncVersion instance using the specified properties. + * @param [properties] Properties to set + * @returns ConfigSyncVersion instance + */ + public static create(properties?: google.cloud.gkehub.configmanagement.v1beta.IConfigSyncVersion): google.cloud.gkehub.configmanagement.v1beta.ConfigSyncVersion; + + /** + * Encodes the specified ConfigSyncVersion message. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1beta.ConfigSyncVersion.verify|verify} messages. + * @param message ConfigSyncVersion message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.configmanagement.v1beta.IConfigSyncVersion, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified ConfigSyncVersion message, length delimited. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1beta.ConfigSyncVersion.verify|verify} messages. + * @param message ConfigSyncVersion message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.configmanagement.v1beta.IConfigSyncVersion, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a ConfigSyncVersion message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns ConfigSyncVersion + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.configmanagement.v1beta.ConfigSyncVersion; + + /** + * Decodes a ConfigSyncVersion message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns ConfigSyncVersion + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.configmanagement.v1beta.ConfigSyncVersion; + + /** + * Verifies a ConfigSyncVersion message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a ConfigSyncVersion message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns ConfigSyncVersion + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.configmanagement.v1beta.ConfigSyncVersion; + + /** + * Creates a plain object from a ConfigSyncVersion message. Also converts values to other types if specified. + * @param message ConfigSyncVersion + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.configmanagement.v1beta.ConfigSyncVersion, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this ConfigSyncVersion to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } - /** - * 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 }; + /** Properties of a ConfigSyncDeploymentState. */ + interface IConfigSyncDeploymentState { - /** - * Converts this NamePart to JSON. - * @returns JSON object - */ - public toJSON(): { [k: string]: any }; + /** ConfigSyncDeploymentState importer */ + importer?: (google.cloud.gkehub.configmanagement.v1beta.DeploymentState|keyof typeof google.cloud.gkehub.configmanagement.v1beta.DeploymentState|null); + + /** ConfigSyncDeploymentState syncer */ + syncer?: (google.cloud.gkehub.configmanagement.v1beta.DeploymentState|keyof typeof google.cloud.gkehub.configmanagement.v1beta.DeploymentState|null); + + /** ConfigSyncDeploymentState gitSync */ + gitSync?: (google.cloud.gkehub.configmanagement.v1beta.DeploymentState|keyof typeof google.cloud.gkehub.configmanagement.v1beta.DeploymentState|null); + + /** ConfigSyncDeploymentState monitor */ + monitor?: (google.cloud.gkehub.configmanagement.v1beta.DeploymentState|keyof typeof google.cloud.gkehub.configmanagement.v1beta.DeploymentState|null); + + /** ConfigSyncDeploymentState reconcilerManager */ + reconcilerManager?: (google.cloud.gkehub.configmanagement.v1beta.DeploymentState|keyof typeof google.cloud.gkehub.configmanagement.v1beta.DeploymentState|null); + + /** ConfigSyncDeploymentState rootReconciler */ + rootReconciler?: (google.cloud.gkehub.configmanagement.v1beta.DeploymentState|keyof typeof google.cloud.gkehub.configmanagement.v1beta.DeploymentState|null); + } + + /** Represents a ConfigSyncDeploymentState. */ + class ConfigSyncDeploymentState implements IConfigSyncDeploymentState { + + /** + * Constructs a new ConfigSyncDeploymentState. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.configmanagement.v1beta.IConfigSyncDeploymentState); + + /** ConfigSyncDeploymentState importer. */ + public importer: (google.cloud.gkehub.configmanagement.v1beta.DeploymentState|keyof typeof google.cloud.gkehub.configmanagement.v1beta.DeploymentState); + + /** ConfigSyncDeploymentState syncer. */ + public syncer: (google.cloud.gkehub.configmanagement.v1beta.DeploymentState|keyof typeof google.cloud.gkehub.configmanagement.v1beta.DeploymentState); + + /** ConfigSyncDeploymentState gitSync. */ + public gitSync: (google.cloud.gkehub.configmanagement.v1beta.DeploymentState|keyof typeof google.cloud.gkehub.configmanagement.v1beta.DeploymentState); + + /** ConfigSyncDeploymentState monitor. */ + public monitor: (google.cloud.gkehub.configmanagement.v1beta.DeploymentState|keyof typeof google.cloud.gkehub.configmanagement.v1beta.DeploymentState); + + /** ConfigSyncDeploymentState reconcilerManager. */ + public reconcilerManager: (google.cloud.gkehub.configmanagement.v1beta.DeploymentState|keyof typeof google.cloud.gkehub.configmanagement.v1beta.DeploymentState); + + /** ConfigSyncDeploymentState rootReconciler. */ + public rootReconciler: (google.cloud.gkehub.configmanagement.v1beta.DeploymentState|keyof typeof google.cloud.gkehub.configmanagement.v1beta.DeploymentState); + + /** + * Creates a new ConfigSyncDeploymentState instance using the specified properties. + * @param [properties] Properties to set + * @returns ConfigSyncDeploymentState instance + */ + public static create(properties?: google.cloud.gkehub.configmanagement.v1beta.IConfigSyncDeploymentState): google.cloud.gkehub.configmanagement.v1beta.ConfigSyncDeploymentState; + + /** + * Encodes the specified ConfigSyncDeploymentState message. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1beta.ConfigSyncDeploymentState.verify|verify} messages. + * @param message ConfigSyncDeploymentState message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.configmanagement.v1beta.IConfigSyncDeploymentState, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified ConfigSyncDeploymentState message, length delimited. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1beta.ConfigSyncDeploymentState.verify|verify} messages. + * @param message ConfigSyncDeploymentState message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.configmanagement.v1beta.IConfigSyncDeploymentState, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a ConfigSyncDeploymentState message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns ConfigSyncDeploymentState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.configmanagement.v1beta.ConfigSyncDeploymentState; + + /** + * Decodes a ConfigSyncDeploymentState message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns ConfigSyncDeploymentState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.configmanagement.v1beta.ConfigSyncDeploymentState; + + /** + * Verifies a ConfigSyncDeploymentState message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a ConfigSyncDeploymentState message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns ConfigSyncDeploymentState + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.configmanagement.v1beta.ConfigSyncDeploymentState; + + /** + * Creates a plain object from a ConfigSyncDeploymentState message. Also converts values to other types if specified. + * @param message ConfigSyncDeploymentState + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.configmanagement.v1beta.ConfigSyncDeploymentState, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this ConfigSyncDeploymentState to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + + /** Properties of a SyncState. */ + interface ISyncState { + + /** SyncState sourceToken */ + sourceToken?: (string|null); + + /** SyncState importToken */ + importToken?: (string|null); + + /** SyncState syncToken */ + syncToken?: (string|null); + + /** SyncState lastSync */ + lastSync?: (string|null); + + /** SyncState lastSyncTime */ + lastSyncTime?: (google.protobuf.ITimestamp|null); + + /** SyncState code */ + code?: (google.cloud.gkehub.configmanagement.v1beta.SyncState.SyncCode|keyof typeof google.cloud.gkehub.configmanagement.v1beta.SyncState.SyncCode|null); + + /** SyncState errors */ + errors?: (google.cloud.gkehub.configmanagement.v1beta.ISyncError[]|null); + } + + /** Represents a SyncState. */ + class SyncState implements ISyncState { + + /** + * Constructs a new SyncState. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.configmanagement.v1beta.ISyncState); + + /** SyncState sourceToken. */ + public sourceToken: string; + + /** SyncState importToken. */ + public importToken: string; + + /** SyncState syncToken. */ + public syncToken: string; + + /** SyncState lastSync. */ + public lastSync: string; + + /** SyncState lastSyncTime. */ + public lastSyncTime?: (google.protobuf.ITimestamp|null); + + /** SyncState code. */ + public code: (google.cloud.gkehub.configmanagement.v1beta.SyncState.SyncCode|keyof typeof google.cloud.gkehub.configmanagement.v1beta.SyncState.SyncCode); + + /** SyncState errors. */ + public errors: google.cloud.gkehub.configmanagement.v1beta.ISyncError[]; + + /** + * Creates a new SyncState instance using the specified properties. + * @param [properties] Properties to set + * @returns SyncState instance + */ + public static create(properties?: google.cloud.gkehub.configmanagement.v1beta.ISyncState): google.cloud.gkehub.configmanagement.v1beta.SyncState; + + /** + * Encodes the specified SyncState message. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1beta.SyncState.verify|verify} messages. + * @param message SyncState message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.configmanagement.v1beta.ISyncState, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified SyncState message, length delimited. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1beta.SyncState.verify|verify} messages. + * @param message SyncState message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.configmanagement.v1beta.ISyncState, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a SyncState message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns SyncState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.configmanagement.v1beta.SyncState; + + /** + * Decodes a SyncState message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns SyncState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.configmanagement.v1beta.SyncState; + + /** + * Verifies a SyncState message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a SyncState message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns SyncState + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.configmanagement.v1beta.SyncState; + + /** + * Creates a plain object from a SyncState message. Also converts values to other types if specified. + * @param message SyncState + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.configmanagement.v1beta.SyncState, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this SyncState to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + + namespace SyncState { + + /** SyncCode enum. */ + enum SyncCode { + SYNC_CODE_UNSPECIFIED = 0, + SYNCED = 1, + PENDING = 2, + ERROR = 3, + NOT_CONFIGURED = 4, + NOT_INSTALLED = 5, + UNAUTHORIZED = 6, + UNREACHABLE = 7 + } + } + + /** Properties of a SyncError. */ + interface ISyncError { + + /** SyncError code */ + code?: (string|null); + + /** SyncError errorMessage */ + errorMessage?: (string|null); + + /** SyncError errorResources */ + errorResources?: (google.cloud.gkehub.configmanagement.v1beta.IErrorResource[]|null); + } + + /** Represents a SyncError. */ + class SyncError implements ISyncError { + + /** + * Constructs a new SyncError. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.configmanagement.v1beta.ISyncError); + + /** SyncError code. */ + public code: string; + + /** SyncError errorMessage. */ + public errorMessage: string; + + /** SyncError errorResources. */ + public errorResources: google.cloud.gkehub.configmanagement.v1beta.IErrorResource[]; + + /** + * Creates a new SyncError instance using the specified properties. + * @param [properties] Properties to set + * @returns SyncError instance + */ + public static create(properties?: google.cloud.gkehub.configmanagement.v1beta.ISyncError): google.cloud.gkehub.configmanagement.v1beta.SyncError; + + /** + * Encodes the specified SyncError message. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1beta.SyncError.verify|verify} messages. + * @param message SyncError message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.configmanagement.v1beta.ISyncError, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified SyncError message, length delimited. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1beta.SyncError.verify|verify} messages. + * @param message SyncError message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.configmanagement.v1beta.ISyncError, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a SyncError message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns SyncError + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.configmanagement.v1beta.SyncError; + + /** + * Decodes a SyncError message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns SyncError + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.configmanagement.v1beta.SyncError; + + /** + * Verifies a SyncError message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a SyncError message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns SyncError + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.configmanagement.v1beta.SyncError; + + /** + * Creates a plain object from a SyncError message. Also converts values to other types if specified. + * @param message SyncError + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.configmanagement.v1beta.SyncError, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this SyncError to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + + /** Properties of an ErrorResource. */ + interface IErrorResource { + + /** ErrorResource sourcePath */ + sourcePath?: (string|null); + + /** ErrorResource resourceName */ + resourceName?: (string|null); + + /** ErrorResource resourceNamespace */ + resourceNamespace?: (string|null); + + /** ErrorResource resourceGvk */ + resourceGvk?: (google.cloud.gkehub.configmanagement.v1beta.IGroupVersionKind|null); + } + + /** Represents an ErrorResource. */ + class ErrorResource implements IErrorResource { + + /** + * Constructs a new ErrorResource. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.configmanagement.v1beta.IErrorResource); + + /** ErrorResource sourcePath. */ + public sourcePath: string; + + /** ErrorResource resourceName. */ + public resourceName: string; + + /** ErrorResource resourceNamespace. */ + public resourceNamespace: string; + + /** ErrorResource resourceGvk. */ + public resourceGvk?: (google.cloud.gkehub.configmanagement.v1beta.IGroupVersionKind|null); + + /** + * Creates a new ErrorResource instance using the specified properties. + * @param [properties] Properties to set + * @returns ErrorResource instance + */ + public static create(properties?: google.cloud.gkehub.configmanagement.v1beta.IErrorResource): google.cloud.gkehub.configmanagement.v1beta.ErrorResource; + + /** + * Encodes the specified ErrorResource message. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1beta.ErrorResource.verify|verify} messages. + * @param message ErrorResource message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.configmanagement.v1beta.IErrorResource, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified ErrorResource message, length delimited. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1beta.ErrorResource.verify|verify} messages. + * @param message ErrorResource message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.configmanagement.v1beta.IErrorResource, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes an ErrorResource message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns ErrorResource + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.configmanagement.v1beta.ErrorResource; + + /** + * Decodes an ErrorResource message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns ErrorResource + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.configmanagement.v1beta.ErrorResource; + + /** + * Verifies an ErrorResource message. + * @param message Plain 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 ErrorResource message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns ErrorResource + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.configmanagement.v1beta.ErrorResource; + + /** + * Creates a plain object from an ErrorResource message. Also converts values to other types if specified. + * @param message ErrorResource + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.configmanagement.v1beta.ErrorResource, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this ErrorResource to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + + /** Properties of a GroupVersionKind. */ + interface IGroupVersionKind { + + /** GroupVersionKind group */ + group?: (string|null); + + /** GroupVersionKind version */ + version?: (string|null); + + /** GroupVersionKind kind */ + kind?: (string|null); + } + + /** Represents a GroupVersionKind. */ + class GroupVersionKind implements IGroupVersionKind { + + /** + * Constructs a new GroupVersionKind. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.configmanagement.v1beta.IGroupVersionKind); + + /** GroupVersionKind group. */ + public group: string; + + /** GroupVersionKind version. */ + public version: string; + + /** GroupVersionKind kind. */ + public kind: string; + + /** + * Creates a new GroupVersionKind instance using the specified properties. + * @param [properties] Properties to set + * @returns GroupVersionKind instance + */ + public static create(properties?: google.cloud.gkehub.configmanagement.v1beta.IGroupVersionKind): google.cloud.gkehub.configmanagement.v1beta.GroupVersionKind; + + /** + * Encodes the specified GroupVersionKind message. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1beta.GroupVersionKind.verify|verify} messages. + * @param message GroupVersionKind message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.configmanagement.v1beta.IGroupVersionKind, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified GroupVersionKind message, length delimited. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1beta.GroupVersionKind.verify|verify} messages. + * @param message GroupVersionKind message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.configmanagement.v1beta.IGroupVersionKind, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a GroupVersionKind message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns GroupVersionKind + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.configmanagement.v1beta.GroupVersionKind; + + /** + * Decodes a GroupVersionKind message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns GroupVersionKind + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.configmanagement.v1beta.GroupVersionKind; + + /** + * Verifies a GroupVersionKind message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a GroupVersionKind message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns GroupVersionKind + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.configmanagement.v1beta.GroupVersionKind; + + /** + * Creates a plain object from a GroupVersionKind message. Also converts values to other types if specified. + * @param message GroupVersionKind + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.configmanagement.v1beta.GroupVersionKind, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this GroupVersionKind to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + + /** Properties of a PolicyControllerState. */ + interface IPolicyControllerState { + + /** PolicyControllerState version */ + version?: (google.cloud.gkehub.configmanagement.v1beta.IPolicyControllerVersion|null); + + /** PolicyControllerState deploymentState */ + deploymentState?: (google.cloud.gkehub.configmanagement.v1beta.IGatekeeperDeploymentState|null); + } + + /** Represents a PolicyControllerState. */ + class PolicyControllerState implements IPolicyControllerState { + + /** + * Constructs a new PolicyControllerState. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.configmanagement.v1beta.IPolicyControllerState); + + /** PolicyControllerState version. */ + public version?: (google.cloud.gkehub.configmanagement.v1beta.IPolicyControllerVersion|null); + + /** PolicyControllerState deploymentState. */ + public deploymentState?: (google.cloud.gkehub.configmanagement.v1beta.IGatekeeperDeploymentState|null); + + /** + * Creates a new PolicyControllerState instance using the specified properties. + * @param [properties] Properties to set + * @returns PolicyControllerState instance + */ + public static create(properties?: google.cloud.gkehub.configmanagement.v1beta.IPolicyControllerState): google.cloud.gkehub.configmanagement.v1beta.PolicyControllerState; + + /** + * Encodes the specified PolicyControllerState message. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1beta.PolicyControllerState.verify|verify} messages. + * @param message PolicyControllerState message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.configmanagement.v1beta.IPolicyControllerState, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified PolicyControllerState message, length delimited. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1beta.PolicyControllerState.verify|verify} messages. + * @param message PolicyControllerState message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.configmanagement.v1beta.IPolicyControllerState, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a PolicyControllerState message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns PolicyControllerState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.configmanagement.v1beta.PolicyControllerState; + + /** + * Decodes a PolicyControllerState message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns PolicyControllerState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.configmanagement.v1beta.PolicyControllerState; + + /** + * Verifies a PolicyControllerState message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a PolicyControllerState message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns PolicyControllerState + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.configmanagement.v1beta.PolicyControllerState; + + /** + * Creates a plain object from a PolicyControllerState message. Also converts values to other types if specified. + * @param message PolicyControllerState + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.configmanagement.v1beta.PolicyControllerState, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this PolicyControllerState to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + + /** Properties of a PolicyControllerVersion. */ + interface IPolicyControllerVersion { + + /** PolicyControllerVersion version */ + version?: (string|null); + } + + /** Represents a PolicyControllerVersion. */ + class PolicyControllerVersion implements IPolicyControllerVersion { + + /** + * Constructs a new PolicyControllerVersion. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.configmanagement.v1beta.IPolicyControllerVersion); + + /** PolicyControllerVersion version. */ + public version: string; + + /** + * Creates a new PolicyControllerVersion instance using the specified properties. + * @param [properties] Properties to set + * @returns PolicyControllerVersion instance + */ + public static create(properties?: google.cloud.gkehub.configmanagement.v1beta.IPolicyControllerVersion): google.cloud.gkehub.configmanagement.v1beta.PolicyControllerVersion; + + /** + * Encodes the specified PolicyControllerVersion message. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1beta.PolicyControllerVersion.verify|verify} messages. + * @param message PolicyControllerVersion message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.configmanagement.v1beta.IPolicyControllerVersion, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified PolicyControllerVersion message, length delimited. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1beta.PolicyControllerVersion.verify|verify} messages. + * @param message PolicyControllerVersion message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.configmanagement.v1beta.IPolicyControllerVersion, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a PolicyControllerVersion message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns PolicyControllerVersion + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.configmanagement.v1beta.PolicyControllerVersion; + + /** + * Decodes a PolicyControllerVersion message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns PolicyControllerVersion + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.configmanagement.v1beta.PolicyControllerVersion; + + /** + * Verifies a PolicyControllerVersion message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a PolicyControllerVersion message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns PolicyControllerVersion + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.configmanagement.v1beta.PolicyControllerVersion; + + /** + * Creates a plain object from a PolicyControllerVersion message. Also converts values to other types if specified. + * @param message PolicyControllerVersion + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.configmanagement.v1beta.PolicyControllerVersion, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this PolicyControllerVersion to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + + /** Properties of a BinauthzState. */ + interface IBinauthzState { + + /** BinauthzState webhook */ + webhook?: (google.cloud.gkehub.configmanagement.v1beta.DeploymentState|keyof typeof google.cloud.gkehub.configmanagement.v1beta.DeploymentState|null); + + /** BinauthzState version */ + version?: (google.cloud.gkehub.configmanagement.v1beta.IBinauthzVersion|null); + } + + /** Represents a BinauthzState. */ + class BinauthzState implements IBinauthzState { + + /** + * Constructs a new BinauthzState. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.configmanagement.v1beta.IBinauthzState); + + /** BinauthzState webhook. */ + public webhook: (google.cloud.gkehub.configmanagement.v1beta.DeploymentState|keyof typeof google.cloud.gkehub.configmanagement.v1beta.DeploymentState); + + /** BinauthzState version. */ + public version?: (google.cloud.gkehub.configmanagement.v1beta.IBinauthzVersion|null); + + /** + * Creates a new BinauthzState instance using the specified properties. + * @param [properties] Properties to set + * @returns BinauthzState instance + */ + public static create(properties?: google.cloud.gkehub.configmanagement.v1beta.IBinauthzState): google.cloud.gkehub.configmanagement.v1beta.BinauthzState; + + /** + * Encodes the specified BinauthzState message. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1beta.BinauthzState.verify|verify} messages. + * @param message BinauthzState message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.configmanagement.v1beta.IBinauthzState, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified BinauthzState message, length delimited. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1beta.BinauthzState.verify|verify} messages. + * @param message BinauthzState message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.configmanagement.v1beta.IBinauthzState, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a BinauthzState message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns BinauthzState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.configmanagement.v1beta.BinauthzState; + + /** + * Decodes a BinauthzState message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns BinauthzState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.configmanagement.v1beta.BinauthzState; + + /** + * Verifies a BinauthzState message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a BinauthzState message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns BinauthzState + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.configmanagement.v1beta.BinauthzState; + + /** + * Creates a plain object from a BinauthzState message. Also converts values to other types if specified. + * @param message BinauthzState + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.configmanagement.v1beta.BinauthzState, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this BinauthzState to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + + /** Properties of a BinauthzVersion. */ + interface IBinauthzVersion { + + /** BinauthzVersion webhookVersion */ + webhookVersion?: (string|null); + } + + /** Represents a BinauthzVersion. */ + class BinauthzVersion implements IBinauthzVersion { + + /** + * Constructs a new BinauthzVersion. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.configmanagement.v1beta.IBinauthzVersion); + + /** BinauthzVersion webhookVersion. */ + public webhookVersion: string; + + /** + * Creates a new BinauthzVersion instance using the specified properties. + * @param [properties] Properties to set + * @returns BinauthzVersion instance + */ + public static create(properties?: google.cloud.gkehub.configmanagement.v1beta.IBinauthzVersion): google.cloud.gkehub.configmanagement.v1beta.BinauthzVersion; + + /** + * Encodes the specified BinauthzVersion message. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1beta.BinauthzVersion.verify|verify} messages. + * @param message BinauthzVersion message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.configmanagement.v1beta.IBinauthzVersion, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified BinauthzVersion message, length delimited. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1beta.BinauthzVersion.verify|verify} messages. + * @param message BinauthzVersion message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.configmanagement.v1beta.IBinauthzVersion, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a BinauthzVersion message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns BinauthzVersion + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.configmanagement.v1beta.BinauthzVersion; + + /** + * Decodes a BinauthzVersion message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns BinauthzVersion + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.configmanagement.v1beta.BinauthzVersion; + + /** + * Verifies a BinauthzVersion message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a BinauthzVersion message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns BinauthzVersion + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.configmanagement.v1beta.BinauthzVersion; + + /** + * Creates a plain object from a BinauthzVersion message. Also converts values to other types if specified. + * @param message BinauthzVersion + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.configmanagement.v1beta.BinauthzVersion, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this BinauthzVersion to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + + /** Properties of a GatekeeperDeploymentState. */ + interface IGatekeeperDeploymentState { + + /** GatekeeperDeploymentState gatekeeperControllerManagerState */ + gatekeeperControllerManagerState?: (google.cloud.gkehub.configmanagement.v1beta.DeploymentState|keyof typeof google.cloud.gkehub.configmanagement.v1beta.DeploymentState|null); + + /** GatekeeperDeploymentState gatekeeperAudit */ + gatekeeperAudit?: (google.cloud.gkehub.configmanagement.v1beta.DeploymentState|keyof typeof google.cloud.gkehub.configmanagement.v1beta.DeploymentState|null); + } + + /** Represents a GatekeeperDeploymentState. */ + class GatekeeperDeploymentState implements IGatekeeperDeploymentState { + + /** + * Constructs a new GatekeeperDeploymentState. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.configmanagement.v1beta.IGatekeeperDeploymentState); + + /** GatekeeperDeploymentState gatekeeperControllerManagerState. */ + public gatekeeperControllerManagerState: (google.cloud.gkehub.configmanagement.v1beta.DeploymentState|keyof typeof google.cloud.gkehub.configmanagement.v1beta.DeploymentState); + + /** GatekeeperDeploymentState gatekeeperAudit. */ + public gatekeeperAudit: (google.cloud.gkehub.configmanagement.v1beta.DeploymentState|keyof typeof google.cloud.gkehub.configmanagement.v1beta.DeploymentState); + + /** + * Creates a new GatekeeperDeploymentState instance using the specified properties. + * @param [properties] Properties to set + * @returns GatekeeperDeploymentState instance + */ + public static create(properties?: google.cloud.gkehub.configmanagement.v1beta.IGatekeeperDeploymentState): google.cloud.gkehub.configmanagement.v1beta.GatekeeperDeploymentState; + + /** + * Encodes the specified GatekeeperDeploymentState message. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1beta.GatekeeperDeploymentState.verify|verify} messages. + * @param message GatekeeperDeploymentState message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.configmanagement.v1beta.IGatekeeperDeploymentState, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified GatekeeperDeploymentState message, length delimited. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1beta.GatekeeperDeploymentState.verify|verify} messages. + * @param message GatekeeperDeploymentState message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.configmanagement.v1beta.IGatekeeperDeploymentState, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a GatekeeperDeploymentState message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns GatekeeperDeploymentState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.configmanagement.v1beta.GatekeeperDeploymentState; + + /** + * Decodes a GatekeeperDeploymentState message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns GatekeeperDeploymentState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.configmanagement.v1beta.GatekeeperDeploymentState; + + /** + * Verifies a GatekeeperDeploymentState message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a GatekeeperDeploymentState message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns GatekeeperDeploymentState + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.configmanagement.v1beta.GatekeeperDeploymentState; + + /** + * Creates a plain object from a GatekeeperDeploymentState message. Also converts values to other types if specified. + * @param message GatekeeperDeploymentState + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.configmanagement.v1beta.GatekeeperDeploymentState, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this GatekeeperDeploymentState to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + } } - } - /** Properties of a SourceCodeInfo. */ - interface ISourceCodeInfo { + /** Namespace v1. */ + namespace v1 { - /** SourceCodeInfo location */ - location?: (google.protobuf.SourceCodeInfo.ILocation[]|null); - } + /** Properties of a Feature. */ + interface IFeature { - /** Represents a SourceCodeInfo. */ - class SourceCodeInfo implements ISourceCodeInfo { + /** Feature name */ + name?: (string|null); - /** - * Constructs a new SourceCodeInfo. - * @param [properties] Properties to set - */ - constructor(properties?: google.protobuf.ISourceCodeInfo); + /** Feature labels */ + labels?: ({ [k: string]: string }|null); - /** SourceCodeInfo location. */ - public location: google.protobuf.SourceCodeInfo.ILocation[]; + /** Feature resourceState */ + resourceState?: (google.cloud.gkehub.v1.IFeatureResourceState|null); - /** - * 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; + /** Feature spec */ + spec?: (google.cloud.gkehub.v1.ICommonFeatureSpec|null); - /** - * 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; + /** Feature membershipSpecs */ + membershipSpecs?: ({ [k: string]: google.cloud.gkehub.v1.IMembershipFeatureSpec }|null); - /** - * 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; + /** Feature state */ + state?: (google.cloud.gkehub.v1.ICommonFeatureState|null); - /** - * 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; + /** Feature membershipStates */ + membershipStates?: ({ [k: string]: google.cloud.gkehub.v1.IMembershipFeatureState }|null); - /** - * 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; + /** Feature createTime */ + createTime?: (google.protobuf.ITimestamp|null); - /** - * 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); + /** Feature updateTime */ + updateTime?: (google.protobuf.ITimestamp|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; + /** Feature deleteTime */ + deleteTime?: (google.protobuf.ITimestamp|null); + } + + /** Represents a Feature. */ + class Feature implements IFeature { + + /** + * Constructs a new Feature. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.v1.IFeature); + + /** Feature name. */ + public name: string; + + /** Feature labels. */ + public labels: { [k: string]: string }; + + /** Feature resourceState. */ + public resourceState?: (google.cloud.gkehub.v1.IFeatureResourceState|null); + + /** Feature spec. */ + public spec?: (google.cloud.gkehub.v1.ICommonFeatureSpec|null); + + /** Feature membershipSpecs. */ + public membershipSpecs: { [k: string]: google.cloud.gkehub.v1.IMembershipFeatureSpec }; + + /** Feature state. */ + public state?: (google.cloud.gkehub.v1.ICommonFeatureState|null); + + /** Feature membershipStates. */ + public membershipStates: { [k: string]: google.cloud.gkehub.v1.IMembershipFeatureState }; + + /** Feature createTime. */ + public createTime?: (google.protobuf.ITimestamp|null); + + /** Feature updateTime. */ + public updateTime?: (google.protobuf.ITimestamp|null); + + /** Feature deleteTime. */ + public deleteTime?: (google.protobuf.ITimestamp|null); + + /** + * Creates a new Feature instance using the specified properties. + * @param [properties] Properties to set + * @returns Feature instance + */ + public static create(properties?: google.cloud.gkehub.v1.IFeature): google.cloud.gkehub.v1.Feature; + + /** + * Encodes the specified Feature message. Does not implicitly {@link google.cloud.gkehub.v1.Feature.verify|verify} messages. + * @param message Feature message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.v1.IFeature, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified Feature message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1.Feature.verify|verify} messages. + * @param message Feature message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.v1.IFeature, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a Feature message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns Feature + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.v1.Feature; + + /** + * Decodes a Feature message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns Feature + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.v1.Feature; + + /** + * Verifies a Feature message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a Feature message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns Feature + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.v1.Feature; + + /** + * Creates a plain object from a Feature message. Also converts values to other types if specified. + * @param message Feature + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.v1.Feature, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this Feature to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + + /** Properties of a FeatureResourceState. */ + interface IFeatureResourceState { + + /** FeatureResourceState state */ + state?: (google.cloud.gkehub.v1.FeatureResourceState.State|keyof typeof google.cloud.gkehub.v1.FeatureResourceState.State|null); + } + + /** Represents a FeatureResourceState. */ + class FeatureResourceState implements IFeatureResourceState { + + /** + * Constructs a new FeatureResourceState. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.v1.IFeatureResourceState); + + /** FeatureResourceState state. */ + public state: (google.cloud.gkehub.v1.FeatureResourceState.State|keyof typeof google.cloud.gkehub.v1.FeatureResourceState.State); + + /** + * Creates a new FeatureResourceState instance using the specified properties. + * @param [properties] Properties to set + * @returns FeatureResourceState instance + */ + public static create(properties?: google.cloud.gkehub.v1.IFeatureResourceState): google.cloud.gkehub.v1.FeatureResourceState; + + /** + * Encodes the specified FeatureResourceState message. Does not implicitly {@link google.cloud.gkehub.v1.FeatureResourceState.verify|verify} messages. + * @param message FeatureResourceState message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.v1.IFeatureResourceState, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified FeatureResourceState message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1.FeatureResourceState.verify|verify} messages. + * @param message FeatureResourceState message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.v1.IFeatureResourceState, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a FeatureResourceState message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns FeatureResourceState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.v1.FeatureResourceState; + + /** + * Decodes a FeatureResourceState message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns FeatureResourceState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.v1.FeatureResourceState; + + /** + * Verifies a FeatureResourceState message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a FeatureResourceState message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns FeatureResourceState + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.v1.FeatureResourceState; + + /** + * Creates a plain object from a FeatureResourceState message. Also converts values to other types if specified. + * @param message FeatureResourceState + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.v1.FeatureResourceState, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this FeatureResourceState to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + + namespace FeatureResourceState { + + /** State enum. */ + enum State { + STATE_UNSPECIFIED = 0, + ENABLING = 1, + ACTIVE = 2, + DISABLING = 3, + UPDATING = 4, + SERVICE_UPDATING = 5 + } + } + + /** Properties of a FeatureState. */ + interface IFeatureState { + + /** FeatureState code */ + code?: (google.cloud.gkehub.v1.FeatureState.Code|keyof typeof google.cloud.gkehub.v1.FeatureState.Code|null); + + /** FeatureState description */ + description?: (string|null); + + /** FeatureState updateTime */ + updateTime?: (google.protobuf.ITimestamp|null); + } + + /** Represents a FeatureState. */ + class FeatureState implements IFeatureState { + + /** + * Constructs a new FeatureState. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.v1.IFeatureState); + + /** FeatureState code. */ + public code: (google.cloud.gkehub.v1.FeatureState.Code|keyof typeof google.cloud.gkehub.v1.FeatureState.Code); + + /** FeatureState description. */ + public description: string; + + /** FeatureState updateTime. */ + public updateTime?: (google.protobuf.ITimestamp|null); + + /** + * Creates a new FeatureState instance using the specified properties. + * @param [properties] Properties to set + * @returns FeatureState instance + */ + public static create(properties?: google.cloud.gkehub.v1.IFeatureState): google.cloud.gkehub.v1.FeatureState; + + /** + * Encodes the specified FeatureState message. Does not implicitly {@link google.cloud.gkehub.v1.FeatureState.verify|verify} messages. + * @param message FeatureState message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.v1.IFeatureState, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified FeatureState message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1.FeatureState.verify|verify} messages. + * @param message FeatureState message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.v1.IFeatureState, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a FeatureState message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns FeatureState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.v1.FeatureState; + + /** + * Decodes a FeatureState message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns FeatureState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.v1.FeatureState; + + /** + * Verifies a FeatureState message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a FeatureState message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns FeatureState + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.v1.FeatureState; + + /** + * Creates a plain object from a FeatureState message. Also converts values to other types if specified. + * @param message FeatureState + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.v1.FeatureState, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this FeatureState to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + + namespace FeatureState { + + /** Code enum. */ + enum Code { + CODE_UNSPECIFIED = 0, + OK = 1, + WARNING = 2, + ERROR = 3 + } + } + + /** Properties of a CommonFeatureSpec. */ + interface ICommonFeatureSpec { + + /** CommonFeatureSpec multiclusteringress */ + multiclusteringress?: (google.cloud.gkehub.multiclusteringress.v1.IFeatureSpec|null); + } + + /** Represents a CommonFeatureSpec. */ + class CommonFeatureSpec implements ICommonFeatureSpec { + + /** + * Constructs a new CommonFeatureSpec. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.v1.ICommonFeatureSpec); + + /** CommonFeatureSpec multiclusteringress. */ + public multiclusteringress?: (google.cloud.gkehub.multiclusteringress.v1.IFeatureSpec|null); + + /** CommonFeatureSpec featureSpec. */ + public featureSpec?: "multiclusteringress"; + + /** + * Creates a new CommonFeatureSpec instance using the specified properties. + * @param [properties] Properties to set + * @returns CommonFeatureSpec instance + */ + public static create(properties?: google.cloud.gkehub.v1.ICommonFeatureSpec): google.cloud.gkehub.v1.CommonFeatureSpec; + + /** + * Encodes the specified CommonFeatureSpec message. Does not implicitly {@link google.cloud.gkehub.v1.CommonFeatureSpec.verify|verify} messages. + * @param message CommonFeatureSpec message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.v1.ICommonFeatureSpec, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified CommonFeatureSpec message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1.CommonFeatureSpec.verify|verify} messages. + * @param message CommonFeatureSpec message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.v1.ICommonFeatureSpec, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a CommonFeatureSpec message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns CommonFeatureSpec + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.v1.CommonFeatureSpec; + + /** + * Decodes a CommonFeatureSpec message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns CommonFeatureSpec + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.v1.CommonFeatureSpec; + + /** + * Verifies a CommonFeatureSpec message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a CommonFeatureSpec message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns CommonFeatureSpec + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.v1.CommonFeatureSpec; + + /** + * Creates a plain object from a CommonFeatureSpec message. Also converts values to other types if specified. + * @param message CommonFeatureSpec + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.v1.CommonFeatureSpec, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this CommonFeatureSpec to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + + /** Properties of a CommonFeatureState. */ + interface ICommonFeatureState { + + /** CommonFeatureState state */ + state?: (google.cloud.gkehub.v1.IFeatureState|null); + } + + /** Represents a CommonFeatureState. */ + class CommonFeatureState implements ICommonFeatureState { + + /** + * Constructs a new CommonFeatureState. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.v1.ICommonFeatureState); + + /** CommonFeatureState state. */ + public state?: (google.cloud.gkehub.v1.IFeatureState|null); + + /** + * Creates a new CommonFeatureState instance using the specified properties. + * @param [properties] Properties to set + * @returns CommonFeatureState instance + */ + public static create(properties?: google.cloud.gkehub.v1.ICommonFeatureState): google.cloud.gkehub.v1.CommonFeatureState; + + /** + * Encodes the specified CommonFeatureState message. Does not implicitly {@link google.cloud.gkehub.v1.CommonFeatureState.verify|verify} messages. + * @param message CommonFeatureState message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.v1.ICommonFeatureState, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified CommonFeatureState message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1.CommonFeatureState.verify|verify} messages. + * @param message CommonFeatureState message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.v1.ICommonFeatureState, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a CommonFeatureState message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns CommonFeatureState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.v1.CommonFeatureState; + + /** + * Decodes a CommonFeatureState message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns CommonFeatureState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.v1.CommonFeatureState; + + /** + * Verifies a CommonFeatureState message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a CommonFeatureState message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns CommonFeatureState + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.v1.CommonFeatureState; + + /** + * Creates a plain object from a CommonFeatureState message. Also converts values to other types if specified. + * @param message CommonFeatureState + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.v1.CommonFeatureState, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this CommonFeatureState to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + + /** Properties of a MembershipFeatureSpec. */ + interface IMembershipFeatureSpec { + + /** MembershipFeatureSpec configmanagement */ + configmanagement?: (google.cloud.gkehub.configmanagement.v1.IMembershipSpec|null); + } + + /** Represents a MembershipFeatureSpec. */ + class MembershipFeatureSpec implements IMembershipFeatureSpec { + + /** + * Constructs a new MembershipFeatureSpec. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.v1.IMembershipFeatureSpec); + + /** MembershipFeatureSpec configmanagement. */ + public configmanagement?: (google.cloud.gkehub.configmanagement.v1.IMembershipSpec|null); + + /** MembershipFeatureSpec featureSpec. */ + public featureSpec?: "configmanagement"; + + /** + * Creates a new MembershipFeatureSpec instance using the specified properties. + * @param [properties] Properties to set + * @returns MembershipFeatureSpec instance + */ + public static create(properties?: google.cloud.gkehub.v1.IMembershipFeatureSpec): google.cloud.gkehub.v1.MembershipFeatureSpec; + + /** + * Encodes the specified MembershipFeatureSpec message. Does not implicitly {@link google.cloud.gkehub.v1.MembershipFeatureSpec.verify|verify} messages. + * @param message MembershipFeatureSpec message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.v1.IMembershipFeatureSpec, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified MembershipFeatureSpec message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1.MembershipFeatureSpec.verify|verify} messages. + * @param message MembershipFeatureSpec message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.v1.IMembershipFeatureSpec, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a MembershipFeatureSpec message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns MembershipFeatureSpec + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.v1.MembershipFeatureSpec; + + /** + * Decodes a MembershipFeatureSpec message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns MembershipFeatureSpec + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.v1.MembershipFeatureSpec; + + /** + * Verifies a MembershipFeatureSpec message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a MembershipFeatureSpec message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns MembershipFeatureSpec + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.v1.MembershipFeatureSpec; + + /** + * Creates a plain object from a MembershipFeatureSpec message. Also converts values to other types if specified. + * @param message MembershipFeatureSpec + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.v1.MembershipFeatureSpec, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this MembershipFeatureSpec to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + + /** Properties of a MembershipFeatureState. */ + interface IMembershipFeatureState { + + /** MembershipFeatureState configmanagement */ + configmanagement?: (google.cloud.gkehub.configmanagement.v1.IMembershipState|null); + + /** MembershipFeatureState state */ + state?: (google.cloud.gkehub.v1.IFeatureState|null); + } + + /** Represents a MembershipFeatureState. */ + class MembershipFeatureState implements IMembershipFeatureState { + + /** + * Constructs a new MembershipFeatureState. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.v1.IMembershipFeatureState); + + /** MembershipFeatureState configmanagement. */ + public configmanagement?: (google.cloud.gkehub.configmanagement.v1.IMembershipState|null); + + /** MembershipFeatureState state. */ + public state?: (google.cloud.gkehub.v1.IFeatureState|null); + + /** MembershipFeatureState featureState. */ + public featureState?: "configmanagement"; + + /** + * Creates a new MembershipFeatureState instance using the specified properties. + * @param [properties] Properties to set + * @returns MembershipFeatureState instance + */ + public static create(properties?: google.cloud.gkehub.v1.IMembershipFeatureState): google.cloud.gkehub.v1.MembershipFeatureState; + + /** + * Encodes the specified MembershipFeatureState message. Does not implicitly {@link google.cloud.gkehub.v1.MembershipFeatureState.verify|verify} messages. + * @param message MembershipFeatureState message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.v1.IMembershipFeatureState, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified MembershipFeatureState message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1.MembershipFeatureState.verify|verify} messages. + * @param message MembershipFeatureState message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.v1.IMembershipFeatureState, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a MembershipFeatureState message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns MembershipFeatureState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.v1.MembershipFeatureState; + + /** + * Decodes a MembershipFeatureState message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns MembershipFeatureState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.v1.MembershipFeatureState; + + /** + * Verifies a MembershipFeatureState message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a MembershipFeatureState message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns MembershipFeatureState + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.v1.MembershipFeatureState; + + /** + * Creates a plain object from a MembershipFeatureState message. Also converts values to other types if specified. + * @param message MembershipFeatureState + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.v1.MembershipFeatureState, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this MembershipFeatureState to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + + /** Properties of a Membership. */ + interface IMembership { + + /** Membership endpoint */ + endpoint?: (google.cloud.gkehub.v1.IMembershipEndpoint|null); + + /** Membership name */ + name?: (string|null); + + /** Membership labels */ + labels?: ({ [k: string]: string }|null); + + /** Membership description */ + description?: (string|null); + + /** Membership state */ + state?: (google.cloud.gkehub.v1.IMembershipState|null); + + /** Membership createTime */ + createTime?: (google.protobuf.ITimestamp|null); + + /** Membership updateTime */ + updateTime?: (google.protobuf.ITimestamp|null); + + /** Membership deleteTime */ + deleteTime?: (google.protobuf.ITimestamp|null); + + /** Membership externalId */ + externalId?: (string|null); + + /** Membership lastConnectionTime */ + lastConnectionTime?: (google.protobuf.ITimestamp|null); + + /** Membership uniqueId */ + uniqueId?: (string|null); + + /** Membership authority */ + authority?: (google.cloud.gkehub.v1.IAuthority|null); + } + + /** Represents a Membership. */ + class Membership implements IMembership { + + /** + * Constructs a new Membership. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.v1.IMembership); + + /** Membership endpoint. */ + public endpoint?: (google.cloud.gkehub.v1.IMembershipEndpoint|null); + + /** Membership name. */ + public name: string; + + /** Membership labels. */ + public labels: { [k: string]: string }; + + /** Membership description. */ + public description: string; + + /** Membership state. */ + public state?: (google.cloud.gkehub.v1.IMembershipState|null); + + /** Membership createTime. */ + public createTime?: (google.protobuf.ITimestamp|null); + + /** Membership updateTime. */ + public updateTime?: (google.protobuf.ITimestamp|null); + + /** Membership deleteTime. */ + public deleteTime?: (google.protobuf.ITimestamp|null); + + /** Membership externalId. */ + public externalId: string; + + /** Membership lastConnectionTime. */ + public lastConnectionTime?: (google.protobuf.ITimestamp|null); + + /** Membership uniqueId. */ + public uniqueId: string; + + /** Membership authority. */ + public authority?: (google.cloud.gkehub.v1.IAuthority|null); + + /** Membership type. */ + public type?: "endpoint"; + + /** + * Creates a new Membership instance using the specified properties. + * @param [properties] Properties to set + * @returns Membership instance + */ + public static create(properties?: google.cloud.gkehub.v1.IMembership): google.cloud.gkehub.v1.Membership; + + /** + * Encodes the specified Membership message. Does not implicitly {@link google.cloud.gkehub.v1.Membership.verify|verify} messages. + * @param message Membership message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.v1.IMembership, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified Membership message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1.Membership.verify|verify} messages. + * @param message Membership message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.v1.IMembership, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a Membership message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns Membership + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.v1.Membership; + + /** + * Decodes a Membership message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns Membership + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.v1.Membership; + + /** + * Verifies a Membership message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a Membership message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns Membership + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.v1.Membership; + + /** + * Creates a plain object from a Membership message. Also converts values to other types if specified. + * @param message Membership + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.v1.Membership, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this Membership to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + + /** Properties of a MembershipEndpoint. */ + interface IMembershipEndpoint { + + /** MembershipEndpoint gkeCluster */ + gkeCluster?: (google.cloud.gkehub.v1.IGkeCluster|null); + + /** MembershipEndpoint kubernetesMetadata */ + kubernetesMetadata?: (google.cloud.gkehub.v1.IKubernetesMetadata|null); + } + + /** Represents a MembershipEndpoint. */ + class MembershipEndpoint implements IMembershipEndpoint { + + /** + * Constructs a new MembershipEndpoint. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.v1.IMembershipEndpoint); + + /** MembershipEndpoint gkeCluster. */ + public gkeCluster?: (google.cloud.gkehub.v1.IGkeCluster|null); + + /** MembershipEndpoint kubernetesMetadata. */ + public kubernetesMetadata?: (google.cloud.gkehub.v1.IKubernetesMetadata|null); + + /** + * Creates a new MembershipEndpoint instance using the specified properties. + * @param [properties] Properties to set + * @returns MembershipEndpoint instance + */ + public static create(properties?: google.cloud.gkehub.v1.IMembershipEndpoint): google.cloud.gkehub.v1.MembershipEndpoint; + + /** + * Encodes the specified MembershipEndpoint message. Does not implicitly {@link google.cloud.gkehub.v1.MembershipEndpoint.verify|verify} messages. + * @param message MembershipEndpoint message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.v1.IMembershipEndpoint, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified MembershipEndpoint message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1.MembershipEndpoint.verify|verify} messages. + * @param message MembershipEndpoint message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.v1.IMembershipEndpoint, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a MembershipEndpoint message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns MembershipEndpoint + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.v1.MembershipEndpoint; + + /** + * Decodes a MembershipEndpoint message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns MembershipEndpoint + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.v1.MembershipEndpoint; + + /** + * Verifies a MembershipEndpoint message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a MembershipEndpoint message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns MembershipEndpoint + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.v1.MembershipEndpoint; + + /** + * Creates a plain object from a MembershipEndpoint message. Also converts values to other types if specified. + * @param message MembershipEndpoint + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.v1.MembershipEndpoint, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this MembershipEndpoint to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + + /** Properties of a GkeCluster. */ + interface IGkeCluster { + + /** GkeCluster resourceLink */ + resourceLink?: (string|null); + } + + /** Represents a GkeCluster. */ + class GkeCluster implements IGkeCluster { + + /** + * Constructs a new GkeCluster. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.v1.IGkeCluster); + + /** GkeCluster resourceLink. */ + public resourceLink: string; + + /** + * Creates a new GkeCluster instance using the specified properties. + * @param [properties] Properties to set + * @returns GkeCluster instance + */ + public static create(properties?: google.cloud.gkehub.v1.IGkeCluster): google.cloud.gkehub.v1.GkeCluster; + + /** + * Encodes the specified GkeCluster message. Does not implicitly {@link google.cloud.gkehub.v1.GkeCluster.verify|verify} messages. + * @param message GkeCluster message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.v1.IGkeCluster, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified GkeCluster message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1.GkeCluster.verify|verify} messages. + * @param message GkeCluster message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.v1.IGkeCluster, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a GkeCluster message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns GkeCluster + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.v1.GkeCluster; + + /** + * Decodes a GkeCluster message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns GkeCluster + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.v1.GkeCluster; + + /** + * Verifies a GkeCluster message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a GkeCluster message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns GkeCluster + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.v1.GkeCluster; + + /** + * Creates a plain object from a GkeCluster message. Also converts values to other types if specified. + * @param message GkeCluster + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.v1.GkeCluster, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this GkeCluster to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + + /** Properties of a KubernetesMetadata. */ + interface IKubernetesMetadata { + + /** KubernetesMetadata kubernetesApiServerVersion */ + kubernetesApiServerVersion?: (string|null); + + /** KubernetesMetadata nodeProviderId */ + nodeProviderId?: (string|null); + + /** KubernetesMetadata nodeCount */ + nodeCount?: (number|null); + + /** KubernetesMetadata vcpuCount */ + vcpuCount?: (number|null); + + /** KubernetesMetadata memoryMb */ + memoryMb?: (number|null); + + /** KubernetesMetadata updateTime */ + updateTime?: (google.protobuf.ITimestamp|null); + } + + /** Represents a KubernetesMetadata. */ + class KubernetesMetadata implements IKubernetesMetadata { + + /** + * Constructs a new KubernetesMetadata. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.v1.IKubernetesMetadata); + + /** KubernetesMetadata kubernetesApiServerVersion. */ + public kubernetesApiServerVersion: string; + + /** KubernetesMetadata nodeProviderId. */ + public nodeProviderId: string; + + /** KubernetesMetadata nodeCount. */ + public nodeCount: number; + + /** KubernetesMetadata vcpuCount. */ + public vcpuCount: number; + + /** KubernetesMetadata memoryMb. */ + public memoryMb: number; + + /** KubernetesMetadata updateTime. */ + public updateTime?: (google.protobuf.ITimestamp|null); + + /** + * Creates a new KubernetesMetadata instance using the specified properties. + * @param [properties] Properties to set + * @returns KubernetesMetadata instance + */ + public static create(properties?: google.cloud.gkehub.v1.IKubernetesMetadata): google.cloud.gkehub.v1.KubernetesMetadata; + + /** + * Encodes the specified KubernetesMetadata message. Does not implicitly {@link google.cloud.gkehub.v1.KubernetesMetadata.verify|verify} messages. + * @param message KubernetesMetadata message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.v1.IKubernetesMetadata, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified KubernetesMetadata message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1.KubernetesMetadata.verify|verify} messages. + * @param message KubernetesMetadata message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.v1.IKubernetesMetadata, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a KubernetesMetadata message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns KubernetesMetadata + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.v1.KubernetesMetadata; + + /** + * Decodes a KubernetesMetadata message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns KubernetesMetadata + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.v1.KubernetesMetadata; + + /** + * Verifies a KubernetesMetadata message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a KubernetesMetadata message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns KubernetesMetadata + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.v1.KubernetesMetadata; + + /** + * Creates a plain object from a KubernetesMetadata message. Also converts values to other types if specified. + * @param message KubernetesMetadata + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.v1.KubernetesMetadata, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this KubernetesMetadata to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + + /** Properties of a MembershipState. */ + interface IMembershipState { + + /** MembershipState code */ + code?: (google.cloud.gkehub.v1.MembershipState.Code|keyof typeof google.cloud.gkehub.v1.MembershipState.Code|null); + } + + /** Represents a MembershipState. */ + class MembershipState implements IMembershipState { + + /** + * Constructs a new MembershipState. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.v1.IMembershipState); + + /** MembershipState code. */ + public code: (google.cloud.gkehub.v1.MembershipState.Code|keyof typeof google.cloud.gkehub.v1.MembershipState.Code); + + /** + * Creates a new MembershipState instance using the specified properties. + * @param [properties] Properties to set + * @returns MembershipState instance + */ + public static create(properties?: google.cloud.gkehub.v1.IMembershipState): google.cloud.gkehub.v1.MembershipState; + + /** + * Encodes the specified MembershipState message. Does not implicitly {@link google.cloud.gkehub.v1.MembershipState.verify|verify} messages. + * @param message MembershipState message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.v1.IMembershipState, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified MembershipState message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1.MembershipState.verify|verify} messages. + * @param message MembershipState message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.v1.IMembershipState, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a MembershipState message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns MembershipState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.v1.MembershipState; + + /** + * Decodes a MembershipState message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns MembershipState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.v1.MembershipState; + + /** + * Verifies a MembershipState message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a MembershipState message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns MembershipState + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.v1.MembershipState; + + /** + * Creates a plain object from a MembershipState message. Also converts values to other types if specified. + * @param message MembershipState + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.v1.MembershipState, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this MembershipState to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + + namespace MembershipState { + + /** Code enum. */ + enum Code { + CODE_UNSPECIFIED = 0, + CREATING = 1, + READY = 2, + DELETING = 3, + UPDATING = 4, + SERVICE_UPDATING = 5 + } + } + + /** Properties of an Authority. */ + interface IAuthority { + + /** Authority issuer */ + issuer?: (string|null); + + /** Authority workloadIdentityPool */ + workloadIdentityPool?: (string|null); + + /** Authority identityProvider */ + identityProvider?: (string|null); + + /** Authority oidcJwks */ + oidcJwks?: (Uint8Array|string|null); + } + + /** Represents an Authority. */ + class Authority implements IAuthority { + + /** + * Constructs a new Authority. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.v1.IAuthority); + + /** Authority issuer. */ + public issuer: string; + + /** Authority workloadIdentityPool. */ + public workloadIdentityPool: string; + + /** Authority identityProvider. */ + public identityProvider: string; + + /** Authority oidcJwks. */ + public oidcJwks: (Uint8Array|string); + + /** + * Creates a new Authority instance using the specified properties. + * @param [properties] Properties to set + * @returns Authority instance + */ + public static create(properties?: google.cloud.gkehub.v1.IAuthority): google.cloud.gkehub.v1.Authority; + + /** + * Encodes the specified Authority message. Does not implicitly {@link google.cloud.gkehub.v1.Authority.verify|verify} messages. + * @param message Authority message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.v1.IAuthority, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified Authority message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1.Authority.verify|verify} messages. + * @param message Authority message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.v1.IAuthority, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes an Authority message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns Authority + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.v1.Authority; + + /** + * Decodes an Authority message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns Authority + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.v1.Authority; + + /** + * Verifies an Authority message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates an Authority message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns Authority + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.v1.Authority; + + /** + * Creates a plain object from an Authority message. Also converts values to other types if specified. + * @param message Authority + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.v1.Authority, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this Authority to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + + /** Represents a GkeHub */ + class GkeHub extends $protobuf.rpc.Service { + + /** + * Constructs a new GkeHub 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 GkeHub 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): GkeHub; + + /** + * Calls ListMemberships. + * @param request ListMembershipsRequest message or plain object + * @param callback Node-style callback called with the error, if any, and ListMembershipsResponse + */ + public listMemberships(request: google.cloud.gkehub.v1.IListMembershipsRequest, callback: google.cloud.gkehub.v1.GkeHub.ListMembershipsCallback): void; + + /** + * Calls ListMemberships. + * @param request ListMembershipsRequest message or plain object + * @returns Promise + */ + public listMemberships(request: google.cloud.gkehub.v1.IListMembershipsRequest): Promise; + + /** + * Calls ListFeatures. + * @param request ListFeaturesRequest message or plain object + * @param callback Node-style callback called with the error, if any, and ListFeaturesResponse + */ + public listFeatures(request: google.cloud.gkehub.v1.IListFeaturesRequest, callback: google.cloud.gkehub.v1.GkeHub.ListFeaturesCallback): void; + + /** + * Calls ListFeatures. + * @param request ListFeaturesRequest message or plain object + * @returns Promise + */ + public listFeatures(request: google.cloud.gkehub.v1.IListFeaturesRequest): Promise; + + /** + * Calls GetMembership. + * @param request GetMembershipRequest message or plain object + * @param callback Node-style callback called with the error, if any, and Membership + */ + public getMembership(request: google.cloud.gkehub.v1.IGetMembershipRequest, callback: google.cloud.gkehub.v1.GkeHub.GetMembershipCallback): void; + + /** + * Calls GetMembership. + * @param request GetMembershipRequest message or plain object + * @returns Promise + */ + public getMembership(request: google.cloud.gkehub.v1.IGetMembershipRequest): Promise; + + /** + * Calls GetFeature. + * @param request GetFeatureRequest message or plain object + * @param callback Node-style callback called with the error, if any, and Feature + */ + public getFeature(request: google.cloud.gkehub.v1.IGetFeatureRequest, callback: google.cloud.gkehub.v1.GkeHub.GetFeatureCallback): void; + + /** + * Calls GetFeature. + * @param request GetFeatureRequest message or plain object + * @returns Promise + */ + public getFeature(request: google.cloud.gkehub.v1.IGetFeatureRequest): Promise; + + /** + * Calls CreateMembership. + * @param request CreateMembershipRequest message or plain object + * @param callback Node-style callback called with the error, if any, and Operation + */ + public createMembership(request: google.cloud.gkehub.v1.ICreateMembershipRequest, callback: google.cloud.gkehub.v1.GkeHub.CreateMembershipCallback): void; + + /** + * Calls CreateMembership. + * @param request CreateMembershipRequest message or plain object + * @returns Promise + */ + public createMembership(request: google.cloud.gkehub.v1.ICreateMembershipRequest): Promise; + + /** + * Calls CreateFeature. + * @param request CreateFeatureRequest message or plain object + * @param callback Node-style callback called with the error, if any, and Operation + */ + public createFeature(request: google.cloud.gkehub.v1.ICreateFeatureRequest, callback: google.cloud.gkehub.v1.GkeHub.CreateFeatureCallback): void; + + /** + * Calls CreateFeature. + * @param request CreateFeatureRequest message or plain object + * @returns Promise + */ + public createFeature(request: google.cloud.gkehub.v1.ICreateFeatureRequest): Promise; + + /** + * Calls DeleteMembership. + * @param request DeleteMembershipRequest message or plain object + * @param callback Node-style callback called with the error, if any, and Operation + */ + public deleteMembership(request: google.cloud.gkehub.v1.IDeleteMembershipRequest, callback: google.cloud.gkehub.v1.GkeHub.DeleteMembershipCallback): void; + + /** + * Calls DeleteMembership. + * @param request DeleteMembershipRequest message or plain object + * @returns Promise + */ + public deleteMembership(request: google.cloud.gkehub.v1.IDeleteMembershipRequest): Promise; + + /** + * Calls DeleteFeature. + * @param request DeleteFeatureRequest message or plain object + * @param callback Node-style callback called with the error, if any, and Operation + */ + public deleteFeature(request: google.cloud.gkehub.v1.IDeleteFeatureRequest, callback: google.cloud.gkehub.v1.GkeHub.DeleteFeatureCallback): void; + + /** + * Calls DeleteFeature. + * @param request DeleteFeatureRequest message or plain object + * @returns Promise + */ + public deleteFeature(request: google.cloud.gkehub.v1.IDeleteFeatureRequest): Promise; + + /** + * Calls UpdateMembership. + * @param request UpdateMembershipRequest message or plain object + * @param callback Node-style callback called with the error, if any, and Operation + */ + public updateMembership(request: google.cloud.gkehub.v1.IUpdateMembershipRequest, callback: google.cloud.gkehub.v1.GkeHub.UpdateMembershipCallback): void; + + /** + * Calls UpdateMembership. + * @param request UpdateMembershipRequest message or plain object + * @returns Promise + */ + public updateMembership(request: google.cloud.gkehub.v1.IUpdateMembershipRequest): Promise; + + /** + * Calls UpdateFeature. + * @param request UpdateFeatureRequest message or plain object + * @param callback Node-style callback called with the error, if any, and Operation + */ + public updateFeature(request: google.cloud.gkehub.v1.IUpdateFeatureRequest, callback: google.cloud.gkehub.v1.GkeHub.UpdateFeatureCallback): void; + + /** + * Calls UpdateFeature. + * @param request UpdateFeatureRequest message or plain object + * @returns Promise + */ + public updateFeature(request: google.cloud.gkehub.v1.IUpdateFeatureRequest): Promise; + + /** + * Calls GenerateConnectManifest. + * @param request GenerateConnectManifestRequest message or plain object + * @param callback Node-style callback called with the error, if any, and GenerateConnectManifestResponse + */ + public generateConnectManifest(request: google.cloud.gkehub.v1.IGenerateConnectManifestRequest, callback: google.cloud.gkehub.v1.GkeHub.GenerateConnectManifestCallback): void; + + /** + * Calls GenerateConnectManifest. + * @param request GenerateConnectManifestRequest message or plain object + * @returns Promise + */ + public generateConnectManifest(request: google.cloud.gkehub.v1.IGenerateConnectManifestRequest): Promise; + } + + namespace GkeHub { + + /** + * Callback as used by {@link google.cloud.gkehub.v1.GkeHub#listMemberships}. + * @param error Error, if any + * @param [response] ListMembershipsResponse + */ + type ListMembershipsCallback = (error: (Error|null), response?: google.cloud.gkehub.v1.ListMembershipsResponse) => void; + + /** + * Callback as used by {@link google.cloud.gkehub.v1.GkeHub#listFeatures}. + * @param error Error, if any + * @param [response] ListFeaturesResponse + */ + type ListFeaturesCallback = (error: (Error|null), response?: google.cloud.gkehub.v1.ListFeaturesResponse) => void; + + /** + * Callback as used by {@link google.cloud.gkehub.v1.GkeHub#getMembership}. + * @param error Error, if any + * @param [response] Membership + */ + type GetMembershipCallback = (error: (Error|null), response?: google.cloud.gkehub.v1.Membership) => void; + + /** + * Callback as used by {@link google.cloud.gkehub.v1.GkeHub#getFeature}. + * @param error Error, if any + * @param [response] Feature + */ + type GetFeatureCallback = (error: (Error|null), response?: google.cloud.gkehub.v1.Feature) => void; + + /** + * Callback as used by {@link google.cloud.gkehub.v1.GkeHub#createMembership}. + * @param error Error, if any + * @param [response] Operation + */ + type CreateMembershipCallback = (error: (Error|null), response?: google.longrunning.Operation) => void; + + /** + * Callback as used by {@link google.cloud.gkehub.v1.GkeHub#createFeature}. + * @param error Error, if any + * @param [response] Operation + */ + type CreateFeatureCallback = (error: (Error|null), response?: google.longrunning.Operation) => void; + + /** + * Callback as used by {@link google.cloud.gkehub.v1.GkeHub#deleteMembership}. + * @param error Error, if any + * @param [response] Operation + */ + type DeleteMembershipCallback = (error: (Error|null), response?: google.longrunning.Operation) => void; + + /** + * Callback as used by {@link google.cloud.gkehub.v1.GkeHub#deleteFeature}. + * @param error Error, if any + * @param [response] Operation + */ + type DeleteFeatureCallback = (error: (Error|null), response?: google.longrunning.Operation) => void; + + /** + * Callback as used by {@link google.cloud.gkehub.v1.GkeHub#updateMembership}. + * @param error Error, if any + * @param [response] Operation + */ + type UpdateMembershipCallback = (error: (Error|null), response?: google.longrunning.Operation) => void; + + /** + * Callback as used by {@link google.cloud.gkehub.v1.GkeHub#updateFeature}. + * @param error Error, if any + * @param [response] Operation + */ + type UpdateFeatureCallback = (error: (Error|null), response?: google.longrunning.Operation) => void; + + /** + * Callback as used by {@link google.cloud.gkehub.v1.GkeHub#generateConnectManifest}. + * @param error Error, if any + * @param [response] GenerateConnectManifestResponse + */ + type GenerateConnectManifestCallback = (error: (Error|null), response?: google.cloud.gkehub.v1.GenerateConnectManifestResponse) => void; + } + + /** Properties of a ListMembershipsRequest. */ + interface IListMembershipsRequest { + + /** ListMembershipsRequest parent */ + parent?: (string|null); + + /** ListMembershipsRequest pageSize */ + pageSize?: (number|null); + + /** ListMembershipsRequest pageToken */ + pageToken?: (string|null); + + /** ListMembershipsRequest filter */ + filter?: (string|null); + + /** ListMembershipsRequest orderBy */ + orderBy?: (string|null); + } + + /** Represents a ListMembershipsRequest. */ + class ListMembershipsRequest implements IListMembershipsRequest { + + /** + * Constructs a new ListMembershipsRequest. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.v1.IListMembershipsRequest); + + /** ListMembershipsRequest parent. */ + public parent: string; + + /** ListMembershipsRequest pageSize. */ + public pageSize: number; + + /** ListMembershipsRequest pageToken. */ + public pageToken: string; + + /** ListMembershipsRequest filter. */ + public filter: string; + + /** ListMembershipsRequest orderBy. */ + public orderBy: string; + + /** + * Creates a new ListMembershipsRequest instance using the specified properties. + * @param [properties] Properties to set + * @returns ListMembershipsRequest instance + */ + public static create(properties?: google.cloud.gkehub.v1.IListMembershipsRequest): google.cloud.gkehub.v1.ListMembershipsRequest; + + /** + * Encodes the specified ListMembershipsRequest message. Does not implicitly {@link google.cloud.gkehub.v1.ListMembershipsRequest.verify|verify} messages. + * @param message ListMembershipsRequest message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.v1.IListMembershipsRequest, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified ListMembershipsRequest message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1.ListMembershipsRequest.verify|verify} messages. + * @param message ListMembershipsRequest message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.v1.IListMembershipsRequest, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a ListMembershipsRequest message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns ListMembershipsRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.v1.ListMembershipsRequest; + + /** + * Decodes a ListMembershipsRequest message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns ListMembershipsRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.v1.ListMembershipsRequest; + + /** + * Verifies a ListMembershipsRequest message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a ListMembershipsRequest message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns ListMembershipsRequest + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.v1.ListMembershipsRequest; + + /** + * Creates a plain object from a ListMembershipsRequest message. Also converts values to other types if specified. + * @param message ListMembershipsRequest + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.v1.ListMembershipsRequest, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this ListMembershipsRequest to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + + /** Properties of a ListMembershipsResponse. */ + interface IListMembershipsResponse { + + /** ListMembershipsResponse resources */ + resources?: (google.cloud.gkehub.v1.IMembership[]|null); + + /** ListMembershipsResponse nextPageToken */ + nextPageToken?: (string|null); + + /** ListMembershipsResponse unreachable */ + unreachable?: (string[]|null); + } + + /** Represents a ListMembershipsResponse. */ + class ListMembershipsResponse implements IListMembershipsResponse { + + /** + * Constructs a new ListMembershipsResponse. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.v1.IListMembershipsResponse); + + /** ListMembershipsResponse resources. */ + public resources: google.cloud.gkehub.v1.IMembership[]; + + /** ListMembershipsResponse nextPageToken. */ + public nextPageToken: string; + + /** ListMembershipsResponse unreachable. */ + public unreachable: string[]; + + /** + * Creates a new ListMembershipsResponse instance using the specified properties. + * @param [properties] Properties to set + * @returns ListMembershipsResponse instance + */ + public static create(properties?: google.cloud.gkehub.v1.IListMembershipsResponse): google.cloud.gkehub.v1.ListMembershipsResponse; + + /** + * Encodes the specified ListMembershipsResponse message. Does not implicitly {@link google.cloud.gkehub.v1.ListMembershipsResponse.verify|verify} messages. + * @param message ListMembershipsResponse message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.v1.IListMembershipsResponse, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified ListMembershipsResponse message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1.ListMembershipsResponse.verify|verify} messages. + * @param message ListMembershipsResponse message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.v1.IListMembershipsResponse, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a ListMembershipsResponse message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns ListMembershipsResponse + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.v1.ListMembershipsResponse; + + /** + * Decodes a ListMembershipsResponse message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns ListMembershipsResponse + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.v1.ListMembershipsResponse; + + /** + * Verifies a ListMembershipsResponse message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a ListMembershipsResponse message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns ListMembershipsResponse + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.v1.ListMembershipsResponse; + + /** + * Creates a plain object from a ListMembershipsResponse message. Also converts values to other types if specified. + * @param message ListMembershipsResponse + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.v1.ListMembershipsResponse, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this ListMembershipsResponse to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + + /** Properties of a GetMembershipRequest. */ + interface IGetMembershipRequest { + + /** GetMembershipRequest name */ + name?: (string|null); + } + + /** Represents a GetMembershipRequest. */ + class GetMembershipRequest implements IGetMembershipRequest { + + /** + * Constructs a new GetMembershipRequest. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.v1.IGetMembershipRequest); + + /** GetMembershipRequest name. */ + public name: string; + + /** + * Creates a new GetMembershipRequest instance using the specified properties. + * @param [properties] Properties to set + * @returns GetMembershipRequest instance + */ + public static create(properties?: google.cloud.gkehub.v1.IGetMembershipRequest): google.cloud.gkehub.v1.GetMembershipRequest; + + /** + * Encodes the specified GetMembershipRequest message. Does not implicitly {@link google.cloud.gkehub.v1.GetMembershipRequest.verify|verify} messages. + * @param message GetMembershipRequest message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.v1.IGetMembershipRequest, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified GetMembershipRequest message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1.GetMembershipRequest.verify|verify} messages. + * @param message GetMembershipRequest message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.v1.IGetMembershipRequest, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a GetMembershipRequest message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns GetMembershipRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.v1.GetMembershipRequest; + + /** + * Decodes a GetMembershipRequest message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns GetMembershipRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.v1.GetMembershipRequest; + + /** + * Verifies a GetMembershipRequest message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a GetMembershipRequest message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns GetMembershipRequest + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.v1.GetMembershipRequest; + + /** + * Creates a plain object from a GetMembershipRequest message. Also converts values to other types if specified. + * @param message GetMembershipRequest + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.v1.GetMembershipRequest, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this GetMembershipRequest to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + + /** Properties of a CreateMembershipRequest. */ + interface ICreateMembershipRequest { + + /** CreateMembershipRequest parent */ + parent?: (string|null); + + /** CreateMembershipRequest membershipId */ + membershipId?: (string|null); + + /** CreateMembershipRequest resource */ + resource?: (google.cloud.gkehub.v1.IMembership|null); + + /** CreateMembershipRequest requestId */ + requestId?: (string|null); + } + + /** Represents a CreateMembershipRequest. */ + class CreateMembershipRequest implements ICreateMembershipRequest { + + /** + * Constructs a new CreateMembershipRequest. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.v1.ICreateMembershipRequest); + + /** CreateMembershipRequest parent. */ + public parent: string; + + /** CreateMembershipRequest membershipId. */ + public membershipId: string; + + /** CreateMembershipRequest resource. */ + public resource?: (google.cloud.gkehub.v1.IMembership|null); + + /** CreateMembershipRequest requestId. */ + public requestId: string; + + /** + * Creates a new CreateMembershipRequest instance using the specified properties. + * @param [properties] Properties to set + * @returns CreateMembershipRequest instance + */ + public static create(properties?: google.cloud.gkehub.v1.ICreateMembershipRequest): google.cloud.gkehub.v1.CreateMembershipRequest; + + /** + * Encodes the specified CreateMembershipRequest message. Does not implicitly {@link google.cloud.gkehub.v1.CreateMembershipRequest.verify|verify} messages. + * @param message CreateMembershipRequest message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.v1.ICreateMembershipRequest, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified CreateMembershipRequest message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1.CreateMembershipRequest.verify|verify} messages. + * @param message CreateMembershipRequest message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.v1.ICreateMembershipRequest, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a CreateMembershipRequest message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns CreateMembershipRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.v1.CreateMembershipRequest; + + /** + * Decodes a CreateMembershipRequest message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns CreateMembershipRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.v1.CreateMembershipRequest; + + /** + * Verifies a CreateMembershipRequest message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a CreateMembershipRequest message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns CreateMembershipRequest + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.v1.CreateMembershipRequest; + + /** + * Creates a plain object from a CreateMembershipRequest message. Also converts values to other types if specified. + * @param message CreateMembershipRequest + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.v1.CreateMembershipRequest, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this CreateMembershipRequest to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + + /** Properties of a DeleteMembershipRequest. */ + interface IDeleteMembershipRequest { + + /** DeleteMembershipRequest name */ + name?: (string|null); + + /** DeleteMembershipRequest requestId */ + requestId?: (string|null); + } + + /** Represents a DeleteMembershipRequest. */ + class DeleteMembershipRequest implements IDeleteMembershipRequest { + + /** + * Constructs a new DeleteMembershipRequest. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.v1.IDeleteMembershipRequest); + + /** DeleteMembershipRequest name. */ + public name: string; + + /** DeleteMembershipRequest requestId. */ + public requestId: string; + + /** + * Creates a new DeleteMembershipRequest instance using the specified properties. + * @param [properties] Properties to set + * @returns DeleteMembershipRequest instance + */ + public static create(properties?: google.cloud.gkehub.v1.IDeleteMembershipRequest): google.cloud.gkehub.v1.DeleteMembershipRequest; + + /** + * Encodes the specified DeleteMembershipRequest message. Does not implicitly {@link google.cloud.gkehub.v1.DeleteMembershipRequest.verify|verify} messages. + * @param message DeleteMembershipRequest message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.v1.IDeleteMembershipRequest, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified DeleteMembershipRequest message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1.DeleteMembershipRequest.verify|verify} messages. + * @param message DeleteMembershipRequest message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.v1.IDeleteMembershipRequest, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a DeleteMembershipRequest message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns DeleteMembershipRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.v1.DeleteMembershipRequest; + + /** + * Decodes a DeleteMembershipRequest message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns DeleteMembershipRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.v1.DeleteMembershipRequest; + + /** + * Verifies a DeleteMembershipRequest message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a DeleteMembershipRequest message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns DeleteMembershipRequest + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.v1.DeleteMembershipRequest; + + /** + * Creates a plain object from a DeleteMembershipRequest message. Also converts values to other types if specified. + * @param message DeleteMembershipRequest + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.v1.DeleteMembershipRequest, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this DeleteMembershipRequest to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + + /** Properties of an UpdateMembershipRequest. */ + interface IUpdateMembershipRequest { + + /** UpdateMembershipRequest name */ + name?: (string|null); + + /** UpdateMembershipRequest updateMask */ + updateMask?: (google.protobuf.IFieldMask|null); + + /** UpdateMembershipRequest resource */ + resource?: (google.cloud.gkehub.v1.IMembership|null); + + /** UpdateMembershipRequest requestId */ + requestId?: (string|null); + } + + /** Represents an UpdateMembershipRequest. */ + class UpdateMembershipRequest implements IUpdateMembershipRequest { + + /** + * Constructs a new UpdateMembershipRequest. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.v1.IUpdateMembershipRequest); + + /** UpdateMembershipRequest name. */ + public name: string; + + /** UpdateMembershipRequest updateMask. */ + public updateMask?: (google.protobuf.IFieldMask|null); + + /** UpdateMembershipRequest resource. */ + public resource?: (google.cloud.gkehub.v1.IMembership|null); + + /** UpdateMembershipRequest requestId. */ + public requestId: string; + + /** + * Creates a new UpdateMembershipRequest instance using the specified properties. + * @param [properties] Properties to set + * @returns UpdateMembershipRequest instance + */ + public static create(properties?: google.cloud.gkehub.v1.IUpdateMembershipRequest): google.cloud.gkehub.v1.UpdateMembershipRequest; + + /** + * Encodes the specified UpdateMembershipRequest message. Does not implicitly {@link google.cloud.gkehub.v1.UpdateMembershipRequest.verify|verify} messages. + * @param message UpdateMembershipRequest message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.v1.IUpdateMembershipRequest, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified UpdateMembershipRequest message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1.UpdateMembershipRequest.verify|verify} messages. + * @param message UpdateMembershipRequest message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.v1.IUpdateMembershipRequest, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes an UpdateMembershipRequest message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns UpdateMembershipRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.v1.UpdateMembershipRequest; + + /** + * Decodes an UpdateMembershipRequest message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns UpdateMembershipRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.v1.UpdateMembershipRequest; + + /** + * Verifies an UpdateMembershipRequest message. + * @param message Plain 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 UpdateMembershipRequest message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns UpdateMembershipRequest + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.v1.UpdateMembershipRequest; + + /** + * Creates a plain object from an UpdateMembershipRequest message. Also converts values to other types if specified. + * @param message UpdateMembershipRequest + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.v1.UpdateMembershipRequest, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this UpdateMembershipRequest to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + + /** Properties of a GenerateConnectManifestRequest. */ + interface IGenerateConnectManifestRequest { + + /** GenerateConnectManifestRequest name */ + name?: (string|null); + + /** GenerateConnectManifestRequest namespace */ + namespace?: (string|null); + + /** GenerateConnectManifestRequest proxy */ + proxy?: (Uint8Array|string|null); + + /** GenerateConnectManifestRequest version */ + version?: (string|null); + + /** GenerateConnectManifestRequest isUpgrade */ + isUpgrade?: (boolean|null); + + /** GenerateConnectManifestRequest registry */ + registry?: (string|null); + + /** GenerateConnectManifestRequest imagePullSecretContent */ + imagePullSecretContent?: (Uint8Array|string|null); + } + + /** Represents a GenerateConnectManifestRequest. */ + class GenerateConnectManifestRequest implements IGenerateConnectManifestRequest { + + /** + * Constructs a new GenerateConnectManifestRequest. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.v1.IGenerateConnectManifestRequest); + + /** GenerateConnectManifestRequest name. */ + public name: string; + + /** GenerateConnectManifestRequest namespace. */ + public namespace: string; + + /** GenerateConnectManifestRequest proxy. */ + public proxy: (Uint8Array|string); + + /** GenerateConnectManifestRequest version. */ + public version: string; + + /** GenerateConnectManifestRequest isUpgrade. */ + public isUpgrade: boolean; + + /** GenerateConnectManifestRequest registry. */ + public registry: string; + + /** GenerateConnectManifestRequest imagePullSecretContent. */ + public imagePullSecretContent: (Uint8Array|string); + + /** + * Creates a new GenerateConnectManifestRequest instance using the specified properties. + * @param [properties] Properties to set + * @returns GenerateConnectManifestRequest instance + */ + public static create(properties?: google.cloud.gkehub.v1.IGenerateConnectManifestRequest): google.cloud.gkehub.v1.GenerateConnectManifestRequest; + + /** + * Encodes the specified GenerateConnectManifestRequest message. Does not implicitly {@link google.cloud.gkehub.v1.GenerateConnectManifestRequest.verify|verify} messages. + * @param message GenerateConnectManifestRequest message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.v1.IGenerateConnectManifestRequest, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified GenerateConnectManifestRequest message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1.GenerateConnectManifestRequest.verify|verify} messages. + * @param message GenerateConnectManifestRequest message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.v1.IGenerateConnectManifestRequest, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a GenerateConnectManifestRequest message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns GenerateConnectManifestRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.v1.GenerateConnectManifestRequest; + + /** + * Decodes a GenerateConnectManifestRequest message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns GenerateConnectManifestRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.v1.GenerateConnectManifestRequest; + + /** + * Verifies a GenerateConnectManifestRequest message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a GenerateConnectManifestRequest message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns GenerateConnectManifestRequest + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.v1.GenerateConnectManifestRequest; + + /** + * Creates a plain object from a GenerateConnectManifestRequest message. Also converts values to other types if specified. + * @param message GenerateConnectManifestRequest + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.v1.GenerateConnectManifestRequest, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this GenerateConnectManifestRequest to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + + /** Properties of a GenerateConnectManifestResponse. */ + interface IGenerateConnectManifestResponse { + + /** GenerateConnectManifestResponse manifest */ + manifest?: (google.cloud.gkehub.v1.IConnectAgentResource[]|null); + } + + /** Represents a GenerateConnectManifestResponse. */ + class GenerateConnectManifestResponse implements IGenerateConnectManifestResponse { + + /** + * Constructs a new GenerateConnectManifestResponse. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.v1.IGenerateConnectManifestResponse); + + /** GenerateConnectManifestResponse manifest. */ + public manifest: google.cloud.gkehub.v1.IConnectAgentResource[]; + + /** + * Creates a new GenerateConnectManifestResponse instance using the specified properties. + * @param [properties] Properties to set + * @returns GenerateConnectManifestResponse instance + */ + public static create(properties?: google.cloud.gkehub.v1.IGenerateConnectManifestResponse): google.cloud.gkehub.v1.GenerateConnectManifestResponse; + + /** + * Encodes the specified GenerateConnectManifestResponse message. Does not implicitly {@link google.cloud.gkehub.v1.GenerateConnectManifestResponse.verify|verify} messages. + * @param message GenerateConnectManifestResponse message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.v1.IGenerateConnectManifestResponse, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified GenerateConnectManifestResponse message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1.GenerateConnectManifestResponse.verify|verify} messages. + * @param message GenerateConnectManifestResponse message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.v1.IGenerateConnectManifestResponse, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a GenerateConnectManifestResponse message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns GenerateConnectManifestResponse + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.v1.GenerateConnectManifestResponse; + + /** + * Decodes a GenerateConnectManifestResponse message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns GenerateConnectManifestResponse + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.v1.GenerateConnectManifestResponse; + + /** + * Verifies a GenerateConnectManifestResponse message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a GenerateConnectManifestResponse message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns GenerateConnectManifestResponse + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.v1.GenerateConnectManifestResponse; + + /** + * Creates a plain object from a GenerateConnectManifestResponse message. Also converts values to other types if specified. + * @param message GenerateConnectManifestResponse + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.v1.GenerateConnectManifestResponse, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this GenerateConnectManifestResponse to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + + /** Properties of a ConnectAgentResource. */ + interface IConnectAgentResource { + + /** ConnectAgentResource type */ + type?: (google.cloud.gkehub.v1.ITypeMeta|null); + + /** ConnectAgentResource manifest */ + manifest?: (string|null); + } + + /** Represents a ConnectAgentResource. */ + class ConnectAgentResource implements IConnectAgentResource { + + /** + * Constructs a new ConnectAgentResource. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.v1.IConnectAgentResource); + + /** ConnectAgentResource type. */ + public type?: (google.cloud.gkehub.v1.ITypeMeta|null); + + /** ConnectAgentResource manifest. */ + public manifest: string; + + /** + * Creates a new ConnectAgentResource instance using the specified properties. + * @param [properties] Properties to set + * @returns ConnectAgentResource instance + */ + public static create(properties?: google.cloud.gkehub.v1.IConnectAgentResource): google.cloud.gkehub.v1.ConnectAgentResource; + + /** + * Encodes the specified ConnectAgentResource message. Does not implicitly {@link google.cloud.gkehub.v1.ConnectAgentResource.verify|verify} messages. + * @param message ConnectAgentResource message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.v1.IConnectAgentResource, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified ConnectAgentResource message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1.ConnectAgentResource.verify|verify} messages. + * @param message ConnectAgentResource message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.v1.IConnectAgentResource, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a ConnectAgentResource message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns ConnectAgentResource + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.v1.ConnectAgentResource; + + /** + * Decodes a ConnectAgentResource message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns ConnectAgentResource + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.v1.ConnectAgentResource; + + /** + * Verifies a ConnectAgentResource message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a ConnectAgentResource message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns ConnectAgentResource + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.v1.ConnectAgentResource; + + /** + * Creates a plain object from a ConnectAgentResource message. Also converts values to other types if specified. + * @param message ConnectAgentResource + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.v1.ConnectAgentResource, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this ConnectAgentResource to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + + /** Properties of a TypeMeta. */ + interface ITypeMeta { + + /** TypeMeta kind */ + kind?: (string|null); + + /** TypeMeta apiVersion */ + apiVersion?: (string|null); + } + + /** Represents a TypeMeta. */ + class TypeMeta implements ITypeMeta { + + /** + * Constructs a new TypeMeta. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.v1.ITypeMeta); + + /** TypeMeta kind. */ + public kind: string; + + /** TypeMeta apiVersion. */ + public apiVersion: string; + + /** + * Creates a new TypeMeta instance using the specified properties. + * @param [properties] Properties to set + * @returns TypeMeta instance + */ + public static create(properties?: google.cloud.gkehub.v1.ITypeMeta): google.cloud.gkehub.v1.TypeMeta; + + /** + * Encodes the specified TypeMeta message. Does not implicitly {@link google.cloud.gkehub.v1.TypeMeta.verify|verify} messages. + * @param message TypeMeta message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.v1.ITypeMeta, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified TypeMeta message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1.TypeMeta.verify|verify} messages. + * @param message TypeMeta message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.v1.ITypeMeta, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a TypeMeta message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns TypeMeta + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.v1.TypeMeta; + + /** + * Decodes a TypeMeta message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns TypeMeta + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.v1.TypeMeta; + + /** + * Verifies a TypeMeta message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a TypeMeta message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns TypeMeta + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.v1.TypeMeta; + + /** + * Creates a plain object from a TypeMeta message. Also converts values to other types if specified. + * @param message TypeMeta + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.v1.TypeMeta, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this TypeMeta to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + + /** Properties of a ListFeaturesRequest. */ + interface IListFeaturesRequest { + + /** ListFeaturesRequest parent */ + parent?: (string|null); + + /** ListFeaturesRequest pageSize */ + pageSize?: (number|null); + + /** ListFeaturesRequest pageToken */ + pageToken?: (string|null); + + /** ListFeaturesRequest filter */ + filter?: (string|null); + + /** ListFeaturesRequest orderBy */ + orderBy?: (string|null); + } + + /** Represents a ListFeaturesRequest. */ + class ListFeaturesRequest implements IListFeaturesRequest { + + /** + * Constructs a new ListFeaturesRequest. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.v1.IListFeaturesRequest); + + /** ListFeaturesRequest parent. */ + public parent: string; + + /** ListFeaturesRequest pageSize. */ + public pageSize: number; + + /** ListFeaturesRequest pageToken. */ + public pageToken: string; + + /** ListFeaturesRequest filter. */ + public filter: string; + + /** ListFeaturesRequest orderBy. */ + public orderBy: string; + + /** + * Creates a new ListFeaturesRequest instance using the specified properties. + * @param [properties] Properties to set + * @returns ListFeaturesRequest instance + */ + public static create(properties?: google.cloud.gkehub.v1.IListFeaturesRequest): google.cloud.gkehub.v1.ListFeaturesRequest; + + /** + * Encodes the specified ListFeaturesRequest message. Does not implicitly {@link google.cloud.gkehub.v1.ListFeaturesRequest.verify|verify} messages. + * @param message ListFeaturesRequest message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.v1.IListFeaturesRequest, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified ListFeaturesRequest message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1.ListFeaturesRequest.verify|verify} messages. + * @param message ListFeaturesRequest message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.v1.IListFeaturesRequest, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a ListFeaturesRequest message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns ListFeaturesRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.v1.ListFeaturesRequest; + + /** + * Decodes a ListFeaturesRequest message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns ListFeaturesRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.v1.ListFeaturesRequest; + + /** + * Verifies a ListFeaturesRequest message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a ListFeaturesRequest message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns ListFeaturesRequest + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.v1.ListFeaturesRequest; + + /** + * Creates a plain object from a ListFeaturesRequest message. Also converts values to other types if specified. + * @param message ListFeaturesRequest + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.v1.ListFeaturesRequest, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this ListFeaturesRequest to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + + /** Properties of a ListFeaturesResponse. */ + interface IListFeaturesResponse { + + /** ListFeaturesResponse resources */ + resources?: (google.cloud.gkehub.v1.IFeature[]|null); + + /** ListFeaturesResponse nextPageToken */ + nextPageToken?: (string|null); + } + + /** Represents a ListFeaturesResponse. */ + class ListFeaturesResponse implements IListFeaturesResponse { + + /** + * Constructs a new ListFeaturesResponse. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.v1.IListFeaturesResponse); + + /** ListFeaturesResponse resources. */ + public resources: google.cloud.gkehub.v1.IFeature[]; + + /** ListFeaturesResponse nextPageToken. */ + public nextPageToken: string; + + /** + * Creates a new ListFeaturesResponse instance using the specified properties. + * @param [properties] Properties to set + * @returns ListFeaturesResponse instance + */ + public static create(properties?: google.cloud.gkehub.v1.IListFeaturesResponse): google.cloud.gkehub.v1.ListFeaturesResponse; + + /** + * Encodes the specified ListFeaturesResponse message. Does not implicitly {@link google.cloud.gkehub.v1.ListFeaturesResponse.verify|verify} messages. + * @param message ListFeaturesResponse message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.v1.IListFeaturesResponse, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified ListFeaturesResponse message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1.ListFeaturesResponse.verify|verify} messages. + * @param message ListFeaturesResponse message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.v1.IListFeaturesResponse, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a ListFeaturesResponse message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns ListFeaturesResponse + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.v1.ListFeaturesResponse; + + /** + * Decodes a ListFeaturesResponse message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns ListFeaturesResponse + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.v1.ListFeaturesResponse; + + /** + * Verifies a ListFeaturesResponse message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a ListFeaturesResponse message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns ListFeaturesResponse + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.v1.ListFeaturesResponse; + + /** + * Creates a plain object from a ListFeaturesResponse message. Also converts values to other types if specified. + * @param message ListFeaturesResponse + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.v1.ListFeaturesResponse, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this ListFeaturesResponse to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + + /** Properties of a GetFeatureRequest. */ + interface IGetFeatureRequest { + + /** GetFeatureRequest name */ + name?: (string|null); + } + + /** Represents a GetFeatureRequest. */ + class GetFeatureRequest implements IGetFeatureRequest { + + /** + * Constructs a new GetFeatureRequest. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.v1.IGetFeatureRequest); + + /** GetFeatureRequest name. */ + public name: string; + + /** + * Creates a new GetFeatureRequest instance using the specified properties. + * @param [properties] Properties to set + * @returns GetFeatureRequest instance + */ + public static create(properties?: google.cloud.gkehub.v1.IGetFeatureRequest): google.cloud.gkehub.v1.GetFeatureRequest; + + /** + * Encodes the specified GetFeatureRequest message. Does not implicitly {@link google.cloud.gkehub.v1.GetFeatureRequest.verify|verify} messages. + * @param message GetFeatureRequest message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.v1.IGetFeatureRequest, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified GetFeatureRequest message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1.GetFeatureRequest.verify|verify} messages. + * @param message GetFeatureRequest message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.v1.IGetFeatureRequest, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a GetFeatureRequest message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns GetFeatureRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.v1.GetFeatureRequest; + + /** + * Decodes a GetFeatureRequest message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns GetFeatureRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.v1.GetFeatureRequest; + + /** + * Verifies a GetFeatureRequest message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a GetFeatureRequest message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns GetFeatureRequest + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.v1.GetFeatureRequest; + + /** + * Creates a plain object from a GetFeatureRequest message. Also converts values to other types if specified. + * @param message GetFeatureRequest + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.v1.GetFeatureRequest, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this GetFeatureRequest to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + + /** Properties of a CreateFeatureRequest. */ + interface ICreateFeatureRequest { + + /** CreateFeatureRequest parent */ + parent?: (string|null); + + /** CreateFeatureRequest featureId */ + featureId?: (string|null); + + /** CreateFeatureRequest resource */ + resource?: (google.cloud.gkehub.v1.IFeature|null); + + /** CreateFeatureRequest requestId */ + requestId?: (string|null); + } + + /** Represents a CreateFeatureRequest. */ + class CreateFeatureRequest implements ICreateFeatureRequest { + + /** + * Constructs a new CreateFeatureRequest. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.v1.ICreateFeatureRequest); + + /** CreateFeatureRequest parent. */ + public parent: string; + + /** CreateFeatureRequest featureId. */ + public featureId: string; + + /** CreateFeatureRequest resource. */ + public resource?: (google.cloud.gkehub.v1.IFeature|null); + + /** CreateFeatureRequest requestId. */ + public requestId: string; + + /** + * Creates a new CreateFeatureRequest instance using the specified properties. + * @param [properties] Properties to set + * @returns CreateFeatureRequest instance + */ + public static create(properties?: google.cloud.gkehub.v1.ICreateFeatureRequest): google.cloud.gkehub.v1.CreateFeatureRequest; + + /** + * Encodes the specified CreateFeatureRequest message. Does not implicitly {@link google.cloud.gkehub.v1.CreateFeatureRequest.verify|verify} messages. + * @param message CreateFeatureRequest message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.v1.ICreateFeatureRequest, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified CreateFeatureRequest message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1.CreateFeatureRequest.verify|verify} messages. + * @param message CreateFeatureRequest message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.v1.ICreateFeatureRequest, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a CreateFeatureRequest message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns CreateFeatureRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.v1.CreateFeatureRequest; + + /** + * Decodes a CreateFeatureRequest message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns CreateFeatureRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.v1.CreateFeatureRequest; + + /** + * Verifies a CreateFeatureRequest message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a CreateFeatureRequest message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns CreateFeatureRequest + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.v1.CreateFeatureRequest; + + /** + * Creates a plain object from a CreateFeatureRequest message. Also converts values to other types if specified. + * @param message CreateFeatureRequest + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.v1.CreateFeatureRequest, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this CreateFeatureRequest to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + + /** Properties of a DeleteFeatureRequest. */ + interface IDeleteFeatureRequest { + + /** DeleteFeatureRequest name */ + name?: (string|null); + + /** DeleteFeatureRequest force */ + force?: (boolean|null); + + /** DeleteFeatureRequest requestId */ + requestId?: (string|null); + } + + /** Represents a DeleteFeatureRequest. */ + class DeleteFeatureRequest implements IDeleteFeatureRequest { + + /** + * Constructs a new DeleteFeatureRequest. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.v1.IDeleteFeatureRequest); + + /** DeleteFeatureRequest name. */ + public name: string; + + /** DeleteFeatureRequest force. */ + public force: boolean; + + /** DeleteFeatureRequest requestId. */ + public requestId: string; + + /** + * Creates a new DeleteFeatureRequest instance using the specified properties. + * @param [properties] Properties to set + * @returns DeleteFeatureRequest instance + */ + public static create(properties?: google.cloud.gkehub.v1.IDeleteFeatureRequest): google.cloud.gkehub.v1.DeleteFeatureRequest; + + /** + * Encodes the specified DeleteFeatureRequest message. Does not implicitly {@link google.cloud.gkehub.v1.DeleteFeatureRequest.verify|verify} messages. + * @param message DeleteFeatureRequest message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.v1.IDeleteFeatureRequest, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified DeleteFeatureRequest message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1.DeleteFeatureRequest.verify|verify} messages. + * @param message DeleteFeatureRequest message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.v1.IDeleteFeatureRequest, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a DeleteFeatureRequest message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns DeleteFeatureRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.v1.DeleteFeatureRequest; + + /** + * Decodes a DeleteFeatureRequest message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns DeleteFeatureRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.v1.DeleteFeatureRequest; + + /** + * Verifies a DeleteFeatureRequest message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a DeleteFeatureRequest message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns DeleteFeatureRequest + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.v1.DeleteFeatureRequest; + + /** + * Creates a plain object from a DeleteFeatureRequest message. Also converts values to other types if specified. + * @param message DeleteFeatureRequest + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.v1.DeleteFeatureRequest, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this DeleteFeatureRequest to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + + /** Properties of an UpdateFeatureRequest. */ + interface IUpdateFeatureRequest { + + /** UpdateFeatureRequest name */ + name?: (string|null); + + /** UpdateFeatureRequest updateMask */ + updateMask?: (google.protobuf.IFieldMask|null); + + /** UpdateFeatureRequest resource */ + resource?: (google.cloud.gkehub.v1.IFeature|null); + + /** UpdateFeatureRequest requestId */ + requestId?: (string|null); + } + + /** Represents an UpdateFeatureRequest. */ + class UpdateFeatureRequest implements IUpdateFeatureRequest { + + /** + * Constructs a new UpdateFeatureRequest. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.v1.IUpdateFeatureRequest); + + /** UpdateFeatureRequest name. */ + public name: string; + + /** UpdateFeatureRequest updateMask. */ + public updateMask?: (google.protobuf.IFieldMask|null); + + /** UpdateFeatureRequest resource. */ + public resource?: (google.cloud.gkehub.v1.IFeature|null); + + /** UpdateFeatureRequest requestId. */ + public requestId: string; + + /** + * Creates a new UpdateFeatureRequest instance using the specified properties. + * @param [properties] Properties to set + * @returns UpdateFeatureRequest instance + */ + public static create(properties?: google.cloud.gkehub.v1.IUpdateFeatureRequest): google.cloud.gkehub.v1.UpdateFeatureRequest; + + /** + * Encodes the specified UpdateFeatureRequest message. Does not implicitly {@link google.cloud.gkehub.v1.UpdateFeatureRequest.verify|verify} messages. + * @param message UpdateFeatureRequest message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.v1.IUpdateFeatureRequest, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified UpdateFeatureRequest message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1.UpdateFeatureRequest.verify|verify} messages. + * @param message UpdateFeatureRequest message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.v1.IUpdateFeatureRequest, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes an UpdateFeatureRequest message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns UpdateFeatureRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.v1.UpdateFeatureRequest; + + /** + * Decodes an UpdateFeatureRequest message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns UpdateFeatureRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.v1.UpdateFeatureRequest; + + /** + * Verifies an UpdateFeatureRequest message. + * @param message Plain 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 UpdateFeatureRequest message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns UpdateFeatureRequest + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.v1.UpdateFeatureRequest; + + /** + * Creates a plain object from an UpdateFeatureRequest message. Also converts values to other types if specified. + * @param message UpdateFeatureRequest + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.v1.UpdateFeatureRequest, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this UpdateFeatureRequest to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + + /** Properties of an OperationMetadata. */ + interface IOperationMetadata { + + /** OperationMetadata createTime */ + createTime?: (google.protobuf.ITimestamp|null); + + /** OperationMetadata endTime */ + endTime?: (google.protobuf.ITimestamp|null); + + /** OperationMetadata target */ + target?: (string|null); + + /** OperationMetadata verb */ + verb?: (string|null); + + /** OperationMetadata statusDetail */ + statusDetail?: (string|null); + + /** OperationMetadata cancelRequested */ + cancelRequested?: (boolean|null); + + /** OperationMetadata apiVersion */ + apiVersion?: (string|null); + } + + /** Represents an OperationMetadata. */ + class OperationMetadata implements IOperationMetadata { + + /** + * Constructs a new OperationMetadata. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.v1.IOperationMetadata); + + /** OperationMetadata createTime. */ + public createTime?: (google.protobuf.ITimestamp|null); + + /** OperationMetadata endTime. */ + public endTime?: (google.protobuf.ITimestamp|null); + + /** OperationMetadata target. */ + public target: string; + + /** OperationMetadata verb. */ + public verb: string; + + /** OperationMetadata statusDetail. */ + public statusDetail: string; + + /** OperationMetadata cancelRequested. */ + public cancelRequested: boolean; + + /** OperationMetadata apiVersion. */ + public apiVersion: string; + + /** + * Creates a new OperationMetadata instance using the specified properties. + * @param [properties] Properties to set + * @returns OperationMetadata instance + */ + public static create(properties?: google.cloud.gkehub.v1.IOperationMetadata): google.cloud.gkehub.v1.OperationMetadata; + + /** + * Encodes the specified OperationMetadata message. Does not implicitly {@link google.cloud.gkehub.v1.OperationMetadata.verify|verify} messages. + * @param message OperationMetadata message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.v1.IOperationMetadata, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified OperationMetadata message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1.OperationMetadata.verify|verify} messages. + * @param message OperationMetadata message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.v1.IOperationMetadata, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes an OperationMetadata message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns OperationMetadata + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.v1.OperationMetadata; + + /** + * Decodes an OperationMetadata message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns OperationMetadata + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.v1.OperationMetadata; + + /** + * Verifies an OperationMetadata message. + * @param message Plain 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 OperationMetadata message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns OperationMetadata + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.v1.OperationMetadata; + + /** + * Creates a plain object from an OperationMetadata message. Also converts values to other types if specified. + * @param message OperationMetadata + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.v1.OperationMetadata, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this OperationMetadata to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + } + + /** Namespace multiclusteringress. */ + namespace multiclusteringress { + + /** Namespace v1. */ + namespace v1 { + + /** Properties of a FeatureSpec. */ + interface IFeatureSpec { + + /** FeatureSpec configMembership */ + configMembership?: (string|null); + } + + /** Represents a FeatureSpec. */ + class FeatureSpec implements IFeatureSpec { + + /** + * Constructs a new FeatureSpec. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.multiclusteringress.v1.IFeatureSpec); + + /** FeatureSpec configMembership. */ + public configMembership: string; + + /** + * Creates a new FeatureSpec instance using the specified properties. + * @param [properties] Properties to set + * @returns FeatureSpec instance + */ + public static create(properties?: google.cloud.gkehub.multiclusteringress.v1.IFeatureSpec): google.cloud.gkehub.multiclusteringress.v1.FeatureSpec; + + /** + * Encodes the specified FeatureSpec message. Does not implicitly {@link google.cloud.gkehub.multiclusteringress.v1.FeatureSpec.verify|verify} messages. + * @param message FeatureSpec message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.multiclusteringress.v1.IFeatureSpec, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified FeatureSpec message, length delimited. Does not implicitly {@link google.cloud.gkehub.multiclusteringress.v1.FeatureSpec.verify|verify} messages. + * @param message FeatureSpec message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.multiclusteringress.v1.IFeatureSpec, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a FeatureSpec message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns FeatureSpec + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.multiclusteringress.v1.FeatureSpec; + + /** + * Decodes a FeatureSpec message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns FeatureSpec + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.multiclusteringress.v1.FeatureSpec; + + /** + * Verifies a FeatureSpec message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a FeatureSpec message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns FeatureSpec + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.multiclusteringress.v1.FeatureSpec; + + /** + * Creates a plain object from a FeatureSpec message. Also converts values to other types if specified. + * @param message FeatureSpec + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.multiclusteringress.v1.FeatureSpec, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this FeatureSpec to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + } + + /** Namespace v1alpha. */ + namespace v1alpha { + + /** Billing enum. */ + enum Billing { + BILLING_UNSPECIFIED = 0, + PAY_AS_YOU_GO = 1, + ANTHOS_LICENSE = 2 + } + + /** Properties of a FeatureSpec. */ + interface IFeatureSpec { + + /** FeatureSpec configMembership */ + configMembership?: (string|null); + + /** FeatureSpec billing */ + billing?: (google.cloud.gkehub.multiclusteringress.v1alpha.Billing|keyof typeof google.cloud.gkehub.multiclusteringress.v1alpha.Billing|null); + } + + /** Represents a FeatureSpec. */ + class FeatureSpec implements IFeatureSpec { + + /** + * Constructs a new FeatureSpec. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.multiclusteringress.v1alpha.IFeatureSpec); + + /** FeatureSpec configMembership. */ + public configMembership: string; + + /** FeatureSpec billing. */ + public billing: (google.cloud.gkehub.multiclusteringress.v1alpha.Billing|keyof typeof google.cloud.gkehub.multiclusteringress.v1alpha.Billing); + + /** + * Creates a new FeatureSpec instance using the specified properties. + * @param [properties] Properties to set + * @returns FeatureSpec instance + */ + public static create(properties?: google.cloud.gkehub.multiclusteringress.v1alpha.IFeatureSpec): google.cloud.gkehub.multiclusteringress.v1alpha.FeatureSpec; + + /** + * Encodes the specified FeatureSpec message. Does not implicitly {@link google.cloud.gkehub.multiclusteringress.v1alpha.FeatureSpec.verify|verify} messages. + * @param message FeatureSpec message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.multiclusteringress.v1alpha.IFeatureSpec, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified FeatureSpec message, length delimited. Does not implicitly {@link google.cloud.gkehub.multiclusteringress.v1alpha.FeatureSpec.verify|verify} messages. + * @param message FeatureSpec message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.multiclusteringress.v1alpha.IFeatureSpec, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a FeatureSpec message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns FeatureSpec + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.multiclusteringress.v1alpha.FeatureSpec; + + /** + * Decodes a FeatureSpec message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns FeatureSpec + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.multiclusteringress.v1alpha.FeatureSpec; + + /** + * Verifies a FeatureSpec message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a FeatureSpec message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns FeatureSpec + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.multiclusteringress.v1alpha.FeatureSpec; + + /** + * Creates a plain object from a FeatureSpec message. Also converts values to other types if specified. + * @param message FeatureSpec + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.multiclusteringress.v1alpha.FeatureSpec, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this FeatureSpec to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + } + + /** Namespace v1beta. */ + namespace v1beta { + + /** Billing enum. */ + enum Billing { + BILLING_UNSPECIFIED = 0, + PAY_AS_YOU_GO = 1, + ANTHOS_LICENSE = 2 + } + + /** Properties of a FeatureSpec. */ + interface IFeatureSpec { + + /** FeatureSpec configMembership */ + configMembership?: (string|null); + + /** FeatureSpec billing */ + billing?: (google.cloud.gkehub.multiclusteringress.v1beta.Billing|keyof typeof google.cloud.gkehub.multiclusteringress.v1beta.Billing|null); + } + + /** Represents a FeatureSpec. */ + class FeatureSpec implements IFeatureSpec { + + /** + * Constructs a new FeatureSpec. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.multiclusteringress.v1beta.IFeatureSpec); + + /** FeatureSpec configMembership. */ + public configMembership: string; + + /** FeatureSpec billing. */ + public billing: (google.cloud.gkehub.multiclusteringress.v1beta.Billing|keyof typeof google.cloud.gkehub.multiclusteringress.v1beta.Billing); + + /** + * Creates a new FeatureSpec instance using the specified properties. + * @param [properties] Properties to set + * @returns FeatureSpec instance + */ + public static create(properties?: google.cloud.gkehub.multiclusteringress.v1beta.IFeatureSpec): google.cloud.gkehub.multiclusteringress.v1beta.FeatureSpec; + + /** + * Encodes the specified FeatureSpec message. Does not implicitly {@link google.cloud.gkehub.multiclusteringress.v1beta.FeatureSpec.verify|verify} messages. + * @param message FeatureSpec message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.multiclusteringress.v1beta.IFeatureSpec, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified FeatureSpec message, length delimited. Does not implicitly {@link google.cloud.gkehub.multiclusteringress.v1beta.FeatureSpec.verify|verify} messages. + * @param message FeatureSpec message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.multiclusteringress.v1beta.IFeatureSpec, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a FeatureSpec message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns FeatureSpec + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.multiclusteringress.v1beta.FeatureSpec; + + /** + * Decodes a FeatureSpec message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns FeatureSpec + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.multiclusteringress.v1beta.FeatureSpec; + + /** + * Verifies a FeatureSpec message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a FeatureSpec message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns FeatureSpec + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.multiclusteringress.v1beta.FeatureSpec; + + /** + * Creates a plain object from a FeatureSpec message. Also converts values to other types if specified. + * @param message FeatureSpec + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.multiclusteringress.v1beta.FeatureSpec, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this FeatureSpec to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + } + } + + /** Namespace cloudauditlogging. */ + namespace cloudauditlogging { + + /** Namespace v1alpha. */ + namespace v1alpha { + + /** Properties of a FeatureSpec. */ + interface IFeatureSpec { + + /** FeatureSpec allowlistedServiceAccounts */ + allowlistedServiceAccounts?: (string[]|null); + } + + /** Represents a FeatureSpec. */ + class FeatureSpec implements IFeatureSpec { + + /** + * Constructs a new FeatureSpec. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.cloudauditlogging.v1alpha.IFeatureSpec); + + /** FeatureSpec allowlistedServiceAccounts. */ + public allowlistedServiceAccounts: string[]; + + /** + * Creates a new FeatureSpec instance using the specified properties. + * @param [properties] Properties to set + * @returns FeatureSpec instance + */ + public static create(properties?: google.cloud.gkehub.cloudauditlogging.v1alpha.IFeatureSpec): google.cloud.gkehub.cloudauditlogging.v1alpha.FeatureSpec; + + /** + * Encodes the specified FeatureSpec message. Does not implicitly {@link google.cloud.gkehub.cloudauditlogging.v1alpha.FeatureSpec.verify|verify} messages. + * @param message FeatureSpec message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.cloudauditlogging.v1alpha.IFeatureSpec, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified FeatureSpec message, length delimited. Does not implicitly {@link google.cloud.gkehub.cloudauditlogging.v1alpha.FeatureSpec.verify|verify} messages. + * @param message FeatureSpec message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.cloudauditlogging.v1alpha.IFeatureSpec, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a FeatureSpec message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns FeatureSpec + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.cloudauditlogging.v1alpha.FeatureSpec; + + /** + * Decodes a FeatureSpec message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns FeatureSpec + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.cloudauditlogging.v1alpha.FeatureSpec; + + /** + * Verifies a FeatureSpec message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a FeatureSpec message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns FeatureSpec + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.cloudauditlogging.v1alpha.FeatureSpec; + + /** + * Creates a plain object from a FeatureSpec message. Also converts values to other types if specified. + * @param message FeatureSpec + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.cloudauditlogging.v1alpha.FeatureSpec, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this FeatureSpec to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + } + } + + /** Namespace v1alpha. */ + namespace v1alpha { + + /** Properties of a Feature. */ + interface IFeature { + + /** Feature name */ + name?: (string|null); + + /** Feature labels */ + labels?: ({ [k: string]: string }|null); + + /** Feature resourceState */ + resourceState?: (google.cloud.gkehub.v1alpha.IFeatureResourceState|null); + + /** Feature spec */ + spec?: (google.cloud.gkehub.v1alpha.ICommonFeatureSpec|null); + + /** Feature membershipSpecs */ + membershipSpecs?: ({ [k: string]: google.cloud.gkehub.v1alpha.IMembershipFeatureSpec }|null); + + /** Feature state */ + state?: (google.cloud.gkehub.v1alpha.ICommonFeatureState|null); + + /** Feature membershipStates */ + membershipStates?: ({ [k: string]: google.cloud.gkehub.v1alpha.IMembershipFeatureState }|null); + + /** Feature createTime */ + createTime?: (google.protobuf.ITimestamp|null); + + /** Feature updateTime */ + updateTime?: (google.protobuf.ITimestamp|null); + + /** Feature deleteTime */ + deleteTime?: (google.protobuf.ITimestamp|null); + } + + /** Represents a Feature. */ + class Feature implements IFeature { + + /** + * Constructs a new Feature. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.v1alpha.IFeature); + + /** Feature name. */ + public name: string; + + /** Feature labels. */ + public labels: { [k: string]: string }; + + /** Feature resourceState. */ + public resourceState?: (google.cloud.gkehub.v1alpha.IFeatureResourceState|null); + + /** Feature spec. */ + public spec?: (google.cloud.gkehub.v1alpha.ICommonFeatureSpec|null); + + /** Feature membershipSpecs. */ + public membershipSpecs: { [k: string]: google.cloud.gkehub.v1alpha.IMembershipFeatureSpec }; + + /** Feature state. */ + public state?: (google.cloud.gkehub.v1alpha.ICommonFeatureState|null); + + /** Feature membershipStates. */ + public membershipStates: { [k: string]: google.cloud.gkehub.v1alpha.IMembershipFeatureState }; + + /** Feature createTime. */ + public createTime?: (google.protobuf.ITimestamp|null); + + /** Feature updateTime. */ + public updateTime?: (google.protobuf.ITimestamp|null); + + /** Feature deleteTime. */ + public deleteTime?: (google.protobuf.ITimestamp|null); + + /** + * Creates a new Feature instance using the specified properties. + * @param [properties] Properties to set + * @returns Feature instance + */ + public static create(properties?: google.cloud.gkehub.v1alpha.IFeature): google.cloud.gkehub.v1alpha.Feature; + + /** + * Encodes the specified Feature message. Does not implicitly {@link google.cloud.gkehub.v1alpha.Feature.verify|verify} messages. + * @param message Feature message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.v1alpha.IFeature, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified Feature message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1alpha.Feature.verify|verify} messages. + * @param message Feature message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.v1alpha.IFeature, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a Feature message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns Feature + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.v1alpha.Feature; + + /** + * Decodes a Feature message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns Feature + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.v1alpha.Feature; + + /** + * Verifies a Feature message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a Feature message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns Feature + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.v1alpha.Feature; + + /** + * Creates a plain object from a Feature message. Also converts values to other types if specified. + * @param message Feature + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.v1alpha.Feature, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this Feature to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + + /** Properties of a FeatureResourceState. */ + interface IFeatureResourceState { + + /** FeatureResourceState state */ + state?: (google.cloud.gkehub.v1alpha.FeatureResourceState.State|keyof typeof google.cloud.gkehub.v1alpha.FeatureResourceState.State|null); + } + + /** Represents a FeatureResourceState. */ + class FeatureResourceState implements IFeatureResourceState { + + /** + * Constructs a new FeatureResourceState. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.v1alpha.IFeatureResourceState); + + /** FeatureResourceState state. */ + public state: (google.cloud.gkehub.v1alpha.FeatureResourceState.State|keyof typeof google.cloud.gkehub.v1alpha.FeatureResourceState.State); + + /** + * Creates a new FeatureResourceState instance using the specified properties. + * @param [properties] Properties to set + * @returns FeatureResourceState instance + */ + public static create(properties?: google.cloud.gkehub.v1alpha.IFeatureResourceState): google.cloud.gkehub.v1alpha.FeatureResourceState; + + /** + * Encodes the specified FeatureResourceState message. Does not implicitly {@link google.cloud.gkehub.v1alpha.FeatureResourceState.verify|verify} messages. + * @param message FeatureResourceState message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.v1alpha.IFeatureResourceState, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified FeatureResourceState message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1alpha.FeatureResourceState.verify|verify} messages. + * @param message FeatureResourceState message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.v1alpha.IFeatureResourceState, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a FeatureResourceState message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns FeatureResourceState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.v1alpha.FeatureResourceState; + + /** + * Decodes a FeatureResourceState message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns FeatureResourceState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.v1alpha.FeatureResourceState; + + /** + * Verifies a FeatureResourceState message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a FeatureResourceState message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns FeatureResourceState + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.v1alpha.FeatureResourceState; + + /** + * Creates a plain object from a FeatureResourceState message. Also converts values to other types if specified. + * @param message FeatureResourceState + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.v1alpha.FeatureResourceState, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this FeatureResourceState to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + + namespace FeatureResourceState { + + /** State enum. */ + enum State { + STATE_UNSPECIFIED = 0, + ENABLING = 1, + ACTIVE = 2, + DISABLING = 3, + UPDATING = 4, + SERVICE_UPDATING = 5 + } + } + + /** Properties of a FeatureState. */ + interface IFeatureState { + + /** FeatureState code */ + code?: (google.cloud.gkehub.v1alpha.FeatureState.Code|keyof typeof google.cloud.gkehub.v1alpha.FeatureState.Code|null); + + /** FeatureState description */ + description?: (string|null); + + /** FeatureState updateTime */ + updateTime?: (google.protobuf.ITimestamp|null); + } + + /** Represents a FeatureState. */ + class FeatureState implements IFeatureState { + + /** + * Constructs a new FeatureState. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.v1alpha.IFeatureState); + + /** FeatureState code. */ + public code: (google.cloud.gkehub.v1alpha.FeatureState.Code|keyof typeof google.cloud.gkehub.v1alpha.FeatureState.Code); + + /** FeatureState description. */ + public description: string; + + /** FeatureState updateTime. */ + public updateTime?: (google.protobuf.ITimestamp|null); + + /** + * Creates a new FeatureState instance using the specified properties. + * @param [properties] Properties to set + * @returns FeatureState instance + */ + public static create(properties?: google.cloud.gkehub.v1alpha.IFeatureState): google.cloud.gkehub.v1alpha.FeatureState; + + /** + * Encodes the specified FeatureState message. Does not implicitly {@link google.cloud.gkehub.v1alpha.FeatureState.verify|verify} messages. + * @param message FeatureState message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.v1alpha.IFeatureState, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified FeatureState message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1alpha.FeatureState.verify|verify} messages. + * @param message FeatureState message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.v1alpha.IFeatureState, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a FeatureState message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns FeatureState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.v1alpha.FeatureState; + + /** + * Decodes a FeatureState message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns FeatureState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.v1alpha.FeatureState; + + /** + * Verifies a FeatureState message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a FeatureState message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns FeatureState + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.v1alpha.FeatureState; + + /** + * Creates a plain object from a FeatureState message. Also converts values to other types if specified. + * @param message FeatureState + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.v1alpha.FeatureState, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this FeatureState to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + + namespace FeatureState { + + /** Code enum. */ + enum Code { + CODE_UNSPECIFIED = 0, + OK = 1, + WARNING = 2, + ERROR = 3 + } + } + + /** Properties of a CommonFeatureSpec. */ + interface ICommonFeatureSpec { + + /** CommonFeatureSpec multiclusteringress */ + multiclusteringress?: (google.cloud.gkehub.multiclusteringress.v1alpha.IFeatureSpec|null); + + /** CommonFeatureSpec cloudauditlogging */ + cloudauditlogging?: (google.cloud.gkehub.cloudauditlogging.v1alpha.IFeatureSpec|null); + } + + /** Represents a CommonFeatureSpec. */ + class CommonFeatureSpec implements ICommonFeatureSpec { + + /** + * Constructs a new CommonFeatureSpec. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.v1alpha.ICommonFeatureSpec); + + /** CommonFeatureSpec multiclusteringress. */ + public multiclusteringress?: (google.cloud.gkehub.multiclusteringress.v1alpha.IFeatureSpec|null); + + /** CommonFeatureSpec cloudauditlogging. */ + public cloudauditlogging?: (google.cloud.gkehub.cloudauditlogging.v1alpha.IFeatureSpec|null); + + /** CommonFeatureSpec featureSpec. */ + public featureSpec?: ("multiclusteringress"|"cloudauditlogging"); + + /** + * Creates a new CommonFeatureSpec instance using the specified properties. + * @param [properties] Properties to set + * @returns CommonFeatureSpec instance + */ + public static create(properties?: google.cloud.gkehub.v1alpha.ICommonFeatureSpec): google.cloud.gkehub.v1alpha.CommonFeatureSpec; + + /** + * Encodes the specified CommonFeatureSpec message. Does not implicitly {@link google.cloud.gkehub.v1alpha.CommonFeatureSpec.verify|verify} messages. + * @param message CommonFeatureSpec message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.v1alpha.ICommonFeatureSpec, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified CommonFeatureSpec message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1alpha.CommonFeatureSpec.verify|verify} messages. + * @param message CommonFeatureSpec message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.v1alpha.ICommonFeatureSpec, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a CommonFeatureSpec message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns CommonFeatureSpec + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.v1alpha.CommonFeatureSpec; + + /** + * Decodes a CommonFeatureSpec message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns CommonFeatureSpec + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.v1alpha.CommonFeatureSpec; + + /** + * Verifies a CommonFeatureSpec message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a CommonFeatureSpec message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns CommonFeatureSpec + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.v1alpha.CommonFeatureSpec; + + /** + * Creates a plain object from a CommonFeatureSpec message. Also converts values to other types if specified. + * @param message CommonFeatureSpec + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.v1alpha.CommonFeatureSpec, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this CommonFeatureSpec to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + + /** Properties of a CommonFeatureState. */ + interface ICommonFeatureState { + + /** CommonFeatureState servicemesh */ + servicemesh?: (google.cloud.gkehub.servicemesh.v1alpha.IFeatureState|null); + + /** CommonFeatureState state */ + state?: (google.cloud.gkehub.v1alpha.IFeatureState|null); + } + + /** Represents a CommonFeatureState. */ + class CommonFeatureState implements ICommonFeatureState { + + /** + * Constructs a new CommonFeatureState. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.v1alpha.ICommonFeatureState); + + /** CommonFeatureState servicemesh. */ + public servicemesh?: (google.cloud.gkehub.servicemesh.v1alpha.IFeatureState|null); + + /** CommonFeatureState state. */ + public state?: (google.cloud.gkehub.v1alpha.IFeatureState|null); + + /** CommonFeatureState featureState. */ + public featureState?: "servicemesh"; + + /** + * Creates a new CommonFeatureState instance using the specified properties. + * @param [properties] Properties to set + * @returns CommonFeatureState instance + */ + public static create(properties?: google.cloud.gkehub.v1alpha.ICommonFeatureState): google.cloud.gkehub.v1alpha.CommonFeatureState; + + /** + * Encodes the specified CommonFeatureState message. Does not implicitly {@link google.cloud.gkehub.v1alpha.CommonFeatureState.verify|verify} messages. + * @param message CommonFeatureState message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.v1alpha.ICommonFeatureState, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified CommonFeatureState message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1alpha.CommonFeatureState.verify|verify} messages. + * @param message CommonFeatureState message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.v1alpha.ICommonFeatureState, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a CommonFeatureState message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns CommonFeatureState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.v1alpha.CommonFeatureState; + + /** + * Decodes a CommonFeatureState message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns CommonFeatureState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.v1alpha.CommonFeatureState; + + /** + * Verifies a CommonFeatureState message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a CommonFeatureState message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns CommonFeatureState + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.v1alpha.CommonFeatureState; + + /** + * Creates a plain object from a CommonFeatureState message. Also converts values to other types if specified. + * @param message CommonFeatureState + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.v1alpha.CommonFeatureState, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this CommonFeatureState to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + + /** Properties of a MembershipFeatureSpec. */ + interface IMembershipFeatureSpec { + + /** MembershipFeatureSpec configmanagement */ + configmanagement?: (google.cloud.gkehub.configmanagement.v1alpha.IMembershipSpec|null); + } + + /** Represents a MembershipFeatureSpec. */ + class MembershipFeatureSpec implements IMembershipFeatureSpec { + + /** + * Constructs a new MembershipFeatureSpec. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.v1alpha.IMembershipFeatureSpec); + + /** MembershipFeatureSpec configmanagement. */ + public configmanagement?: (google.cloud.gkehub.configmanagement.v1alpha.IMembershipSpec|null); + + /** MembershipFeatureSpec featureSpec. */ + public featureSpec?: "configmanagement"; + + /** + * Creates a new MembershipFeatureSpec instance using the specified properties. + * @param [properties] Properties to set + * @returns MembershipFeatureSpec instance + */ + public static create(properties?: google.cloud.gkehub.v1alpha.IMembershipFeatureSpec): google.cloud.gkehub.v1alpha.MembershipFeatureSpec; + + /** + * Encodes the specified MembershipFeatureSpec message. Does not implicitly {@link google.cloud.gkehub.v1alpha.MembershipFeatureSpec.verify|verify} messages. + * @param message MembershipFeatureSpec message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.v1alpha.IMembershipFeatureSpec, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified MembershipFeatureSpec message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1alpha.MembershipFeatureSpec.verify|verify} messages. + * @param message MembershipFeatureSpec message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.v1alpha.IMembershipFeatureSpec, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a MembershipFeatureSpec message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns MembershipFeatureSpec + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.v1alpha.MembershipFeatureSpec; + + /** + * Decodes a MembershipFeatureSpec message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns MembershipFeatureSpec + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.v1alpha.MembershipFeatureSpec; + + /** + * Verifies a MembershipFeatureSpec message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a MembershipFeatureSpec message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns MembershipFeatureSpec + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.v1alpha.MembershipFeatureSpec; + + /** + * Creates a plain object from a MembershipFeatureSpec message. Also converts values to other types if specified. + * @param message MembershipFeatureSpec + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.v1alpha.MembershipFeatureSpec, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this MembershipFeatureSpec to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + + /** Properties of a MembershipFeatureState. */ + interface IMembershipFeatureState { + + /** MembershipFeatureState servicemesh */ + servicemesh?: (google.cloud.gkehub.servicemesh.v1alpha.IMembershipState|null); + + /** MembershipFeatureState metering */ + metering?: (google.cloud.gkehub.metering.v1alpha.IMembershipState|null); + + /** MembershipFeatureState configmanagement */ + configmanagement?: (google.cloud.gkehub.configmanagement.v1alpha.IMembershipState|null); + + /** MembershipFeatureState state */ + state?: (google.cloud.gkehub.v1alpha.IFeatureState|null); + } + + /** Represents a MembershipFeatureState. */ + class MembershipFeatureState implements IMembershipFeatureState { + + /** + * Constructs a new MembershipFeatureState. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.v1alpha.IMembershipFeatureState); + + /** MembershipFeatureState servicemesh. */ + public servicemesh?: (google.cloud.gkehub.servicemesh.v1alpha.IMembershipState|null); + + /** MembershipFeatureState metering. */ + public metering?: (google.cloud.gkehub.metering.v1alpha.IMembershipState|null); + + /** MembershipFeatureState configmanagement. */ + public configmanagement?: (google.cloud.gkehub.configmanagement.v1alpha.IMembershipState|null); + + /** MembershipFeatureState state. */ + public state?: (google.cloud.gkehub.v1alpha.IFeatureState|null); + + /** MembershipFeatureState featureState. */ + public featureState?: ("servicemesh"|"metering"|"configmanagement"); + + /** + * Creates a new MembershipFeatureState instance using the specified properties. + * @param [properties] Properties to set + * @returns MembershipFeatureState instance + */ + public static create(properties?: google.cloud.gkehub.v1alpha.IMembershipFeatureState): google.cloud.gkehub.v1alpha.MembershipFeatureState; + + /** + * Encodes the specified MembershipFeatureState message. Does not implicitly {@link google.cloud.gkehub.v1alpha.MembershipFeatureState.verify|verify} messages. + * @param message MembershipFeatureState message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.v1alpha.IMembershipFeatureState, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified MembershipFeatureState message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1alpha.MembershipFeatureState.verify|verify} messages. + * @param message MembershipFeatureState message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.v1alpha.IMembershipFeatureState, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a MembershipFeatureState message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns MembershipFeatureState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.v1alpha.MembershipFeatureState; + + /** + * Decodes a MembershipFeatureState message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns MembershipFeatureState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.v1alpha.MembershipFeatureState; + + /** + * Verifies a MembershipFeatureState message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a MembershipFeatureState message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns MembershipFeatureState + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.v1alpha.MembershipFeatureState; + + /** + * Creates a plain object from a MembershipFeatureState message. Also converts values to other types if specified. + * @param message MembershipFeatureState + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.v1alpha.MembershipFeatureState, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this MembershipFeatureState to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + + /** Represents a GkeHub */ + class GkeHub extends $protobuf.rpc.Service { + + /** + * Constructs a new GkeHub 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 GkeHub 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): GkeHub; + + /** + * Calls ListFeatures. + * @param request ListFeaturesRequest message or plain object + * @param callback Node-style callback called with the error, if any, and ListFeaturesResponse + */ + public listFeatures(request: google.cloud.gkehub.v1alpha.IListFeaturesRequest, callback: google.cloud.gkehub.v1alpha.GkeHub.ListFeaturesCallback): void; + + /** + * Calls ListFeatures. + * @param request ListFeaturesRequest message or plain object + * @returns Promise + */ + public listFeatures(request: google.cloud.gkehub.v1alpha.IListFeaturesRequest): Promise; + + /** + * Calls GetFeature. + * @param request GetFeatureRequest message or plain object + * @param callback Node-style callback called with the error, if any, and Feature + */ + public getFeature(request: google.cloud.gkehub.v1alpha.IGetFeatureRequest, callback: google.cloud.gkehub.v1alpha.GkeHub.GetFeatureCallback): void; + + /** + * Calls GetFeature. + * @param request GetFeatureRequest message or plain object + * @returns Promise + */ + public getFeature(request: google.cloud.gkehub.v1alpha.IGetFeatureRequest): Promise; + + /** + * Calls CreateFeature. + * @param request CreateFeatureRequest message or plain object + * @param callback Node-style callback called with the error, if any, and Operation + */ + public createFeature(request: google.cloud.gkehub.v1alpha.ICreateFeatureRequest, callback: google.cloud.gkehub.v1alpha.GkeHub.CreateFeatureCallback): void; + + /** + * Calls CreateFeature. + * @param request CreateFeatureRequest message or plain object + * @returns Promise + */ + public createFeature(request: google.cloud.gkehub.v1alpha.ICreateFeatureRequest): Promise; + + /** + * Calls DeleteFeature. + * @param request DeleteFeatureRequest message or plain object + * @param callback Node-style callback called with the error, if any, and Operation + */ + public deleteFeature(request: google.cloud.gkehub.v1alpha.IDeleteFeatureRequest, callback: google.cloud.gkehub.v1alpha.GkeHub.DeleteFeatureCallback): void; + + /** + * Calls DeleteFeature. + * @param request DeleteFeatureRequest message or plain object + * @returns Promise + */ + public deleteFeature(request: google.cloud.gkehub.v1alpha.IDeleteFeatureRequest): Promise; + + /** + * Calls UpdateFeature. + * @param request UpdateFeatureRequest message or plain object + * @param callback Node-style callback called with the error, if any, and Operation + */ + public updateFeature(request: google.cloud.gkehub.v1alpha.IUpdateFeatureRequest, callback: google.cloud.gkehub.v1alpha.GkeHub.UpdateFeatureCallback): void; + + /** + * Calls UpdateFeature. + * @param request UpdateFeatureRequest message or plain object + * @returns Promise + */ + public updateFeature(request: google.cloud.gkehub.v1alpha.IUpdateFeatureRequest): Promise; + } + + namespace GkeHub { + + /** + * Callback as used by {@link google.cloud.gkehub.v1alpha.GkeHub#listFeatures}. + * @param error Error, if any + * @param [response] ListFeaturesResponse + */ + type ListFeaturesCallback = (error: (Error|null), response?: google.cloud.gkehub.v1alpha.ListFeaturesResponse) => void; + + /** + * Callback as used by {@link google.cloud.gkehub.v1alpha.GkeHub#getFeature}. + * @param error Error, if any + * @param [response] Feature + */ + type GetFeatureCallback = (error: (Error|null), response?: google.cloud.gkehub.v1alpha.Feature) => void; + + /** + * Callback as used by {@link google.cloud.gkehub.v1alpha.GkeHub#createFeature}. + * @param error Error, if any + * @param [response] Operation + */ + type CreateFeatureCallback = (error: (Error|null), response?: google.longrunning.Operation) => void; + + /** + * Callback as used by {@link google.cloud.gkehub.v1alpha.GkeHub#deleteFeature}. + * @param error Error, if any + * @param [response] Operation + */ + type DeleteFeatureCallback = (error: (Error|null), response?: google.longrunning.Operation) => void; + + /** + * Callback as used by {@link google.cloud.gkehub.v1alpha.GkeHub#updateFeature}. + * @param error Error, if any + * @param [response] Operation + */ + type UpdateFeatureCallback = (error: (Error|null), response?: google.longrunning.Operation) => void; + } + + /** Properties of a ListFeaturesRequest. */ + interface IListFeaturesRequest { + + /** ListFeaturesRequest parent */ + parent?: (string|null); + + /** ListFeaturesRequest pageSize */ + pageSize?: (number|null); + + /** ListFeaturesRequest pageToken */ + pageToken?: (string|null); + + /** ListFeaturesRequest filter */ + filter?: (string|null); + + /** ListFeaturesRequest orderBy */ + orderBy?: (string|null); + } + + /** Represents a ListFeaturesRequest. */ + class ListFeaturesRequest implements IListFeaturesRequest { + + /** + * Constructs a new ListFeaturesRequest. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.v1alpha.IListFeaturesRequest); + + /** ListFeaturesRequest parent. */ + public parent: string; + + /** ListFeaturesRequest pageSize. */ + public pageSize: number; + + /** ListFeaturesRequest pageToken. */ + public pageToken: string; + + /** ListFeaturesRequest filter. */ + public filter: string; + + /** ListFeaturesRequest orderBy. */ + public orderBy: string; + + /** + * Creates a new ListFeaturesRequest instance using the specified properties. + * @param [properties] Properties to set + * @returns ListFeaturesRequest instance + */ + public static create(properties?: google.cloud.gkehub.v1alpha.IListFeaturesRequest): google.cloud.gkehub.v1alpha.ListFeaturesRequest; + + /** + * Encodes the specified ListFeaturesRequest message. Does not implicitly {@link google.cloud.gkehub.v1alpha.ListFeaturesRequest.verify|verify} messages. + * @param message ListFeaturesRequest message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.v1alpha.IListFeaturesRequest, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified ListFeaturesRequest message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1alpha.ListFeaturesRequest.verify|verify} messages. + * @param message ListFeaturesRequest message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.v1alpha.IListFeaturesRequest, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a ListFeaturesRequest message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns ListFeaturesRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.v1alpha.ListFeaturesRequest; + + /** + * Decodes a ListFeaturesRequest message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns ListFeaturesRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.v1alpha.ListFeaturesRequest; + + /** + * Verifies a ListFeaturesRequest message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a ListFeaturesRequest message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns ListFeaturesRequest + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.v1alpha.ListFeaturesRequest; + + /** + * Creates a plain object from a ListFeaturesRequest message. Also converts values to other types if specified. + * @param message ListFeaturesRequest + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.v1alpha.ListFeaturesRequest, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this ListFeaturesRequest to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + + /** Properties of a ListFeaturesResponse. */ + interface IListFeaturesResponse { + + /** ListFeaturesResponse resources */ + resources?: (google.cloud.gkehub.v1alpha.IFeature[]|null); + + /** ListFeaturesResponse nextPageToken */ + nextPageToken?: (string|null); + } + + /** Represents a ListFeaturesResponse. */ + class ListFeaturesResponse implements IListFeaturesResponse { + + /** + * Constructs a new ListFeaturesResponse. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.v1alpha.IListFeaturesResponse); + + /** ListFeaturesResponse resources. */ + public resources: google.cloud.gkehub.v1alpha.IFeature[]; + + /** ListFeaturesResponse nextPageToken. */ + public nextPageToken: string; + + /** + * Creates a new ListFeaturesResponse instance using the specified properties. + * @param [properties] Properties to set + * @returns ListFeaturesResponse instance + */ + public static create(properties?: google.cloud.gkehub.v1alpha.IListFeaturesResponse): google.cloud.gkehub.v1alpha.ListFeaturesResponse; + + /** + * Encodes the specified ListFeaturesResponse message. Does not implicitly {@link google.cloud.gkehub.v1alpha.ListFeaturesResponse.verify|verify} messages. + * @param message ListFeaturesResponse message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.v1alpha.IListFeaturesResponse, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified ListFeaturesResponse message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1alpha.ListFeaturesResponse.verify|verify} messages. + * @param message ListFeaturesResponse message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.v1alpha.IListFeaturesResponse, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a ListFeaturesResponse message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns ListFeaturesResponse + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.v1alpha.ListFeaturesResponse; + + /** + * Decodes a ListFeaturesResponse message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns ListFeaturesResponse + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.v1alpha.ListFeaturesResponse; + + /** + * Verifies a ListFeaturesResponse message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a ListFeaturesResponse message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns ListFeaturesResponse + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.v1alpha.ListFeaturesResponse; + + /** + * Creates a plain object from a ListFeaturesResponse message. Also converts values to other types if specified. + * @param message ListFeaturesResponse + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.v1alpha.ListFeaturesResponse, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this ListFeaturesResponse to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + + /** Properties of a GetFeatureRequest. */ + interface IGetFeatureRequest { + + /** GetFeatureRequest name */ + name?: (string|null); + } + + /** Represents a GetFeatureRequest. */ + class GetFeatureRequest implements IGetFeatureRequest { + + /** + * Constructs a new GetFeatureRequest. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.v1alpha.IGetFeatureRequest); + + /** GetFeatureRequest name. */ + public name: string; + + /** + * Creates a new GetFeatureRequest instance using the specified properties. + * @param [properties] Properties to set + * @returns GetFeatureRequest instance + */ + public static create(properties?: google.cloud.gkehub.v1alpha.IGetFeatureRequest): google.cloud.gkehub.v1alpha.GetFeatureRequest; + + /** + * Encodes the specified GetFeatureRequest message. Does not implicitly {@link google.cloud.gkehub.v1alpha.GetFeatureRequest.verify|verify} messages. + * @param message GetFeatureRequest message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.v1alpha.IGetFeatureRequest, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified GetFeatureRequest message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1alpha.GetFeatureRequest.verify|verify} messages. + * @param message GetFeatureRequest message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.v1alpha.IGetFeatureRequest, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a GetFeatureRequest message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns GetFeatureRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.v1alpha.GetFeatureRequest; + + /** + * Decodes a GetFeatureRequest message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns GetFeatureRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.v1alpha.GetFeatureRequest; + + /** + * Verifies a GetFeatureRequest message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a GetFeatureRequest message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns GetFeatureRequest + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.v1alpha.GetFeatureRequest; + + /** + * Creates a plain object from a GetFeatureRequest message. Also converts values to other types if specified. + * @param message GetFeatureRequest + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.v1alpha.GetFeatureRequest, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this GetFeatureRequest to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + + /** Properties of a CreateFeatureRequest. */ + interface ICreateFeatureRequest { + + /** CreateFeatureRequest parent */ + parent?: (string|null); + + /** CreateFeatureRequest featureId */ + featureId?: (string|null); + + /** CreateFeatureRequest resource */ + resource?: (google.cloud.gkehub.v1alpha.IFeature|null); + + /** CreateFeatureRequest requestId */ + requestId?: (string|null); + } + + /** Represents a CreateFeatureRequest. */ + class CreateFeatureRequest implements ICreateFeatureRequest { + + /** + * Constructs a new CreateFeatureRequest. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.v1alpha.ICreateFeatureRequest); + + /** CreateFeatureRequest parent. */ + public parent: string; + + /** CreateFeatureRequest featureId. */ + public featureId: string; + + /** CreateFeatureRequest resource. */ + public resource?: (google.cloud.gkehub.v1alpha.IFeature|null); + + /** CreateFeatureRequest requestId. */ + public requestId: string; + + /** + * Creates a new CreateFeatureRequest instance using the specified properties. + * @param [properties] Properties to set + * @returns CreateFeatureRequest instance + */ + public static create(properties?: google.cloud.gkehub.v1alpha.ICreateFeatureRequest): google.cloud.gkehub.v1alpha.CreateFeatureRequest; + + /** + * Encodes the specified CreateFeatureRequest message. Does not implicitly {@link google.cloud.gkehub.v1alpha.CreateFeatureRequest.verify|verify} messages. + * @param message CreateFeatureRequest message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.v1alpha.ICreateFeatureRequest, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified CreateFeatureRequest message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1alpha.CreateFeatureRequest.verify|verify} messages. + * @param message CreateFeatureRequest message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.v1alpha.ICreateFeatureRequest, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a CreateFeatureRequest message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns CreateFeatureRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.v1alpha.CreateFeatureRequest; + + /** + * Decodes a CreateFeatureRequest message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns CreateFeatureRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.v1alpha.CreateFeatureRequest; + + /** + * Verifies a CreateFeatureRequest message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a CreateFeatureRequest message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns CreateFeatureRequest + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.v1alpha.CreateFeatureRequest; + + /** + * Creates a plain object from a CreateFeatureRequest message. Also converts values to other types if specified. + * @param message CreateFeatureRequest + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.v1alpha.CreateFeatureRequest, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this CreateFeatureRequest to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + + /** Properties of a DeleteFeatureRequest. */ + interface IDeleteFeatureRequest { + + /** DeleteFeatureRequest name */ + name?: (string|null); + + /** DeleteFeatureRequest force */ + force?: (boolean|null); + + /** DeleteFeatureRequest requestId */ + requestId?: (string|null); + } + + /** Represents a DeleteFeatureRequest. */ + class DeleteFeatureRequest implements IDeleteFeatureRequest { + + /** + * Constructs a new DeleteFeatureRequest. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.v1alpha.IDeleteFeatureRequest); + + /** DeleteFeatureRequest name. */ + public name: string; + + /** DeleteFeatureRequest force. */ + public force: boolean; + + /** DeleteFeatureRequest requestId. */ + public requestId: string; + + /** + * Creates a new DeleteFeatureRequest instance using the specified properties. + * @param [properties] Properties to set + * @returns DeleteFeatureRequest instance + */ + public static create(properties?: google.cloud.gkehub.v1alpha.IDeleteFeatureRequest): google.cloud.gkehub.v1alpha.DeleteFeatureRequest; + + /** + * Encodes the specified DeleteFeatureRequest message. Does not implicitly {@link google.cloud.gkehub.v1alpha.DeleteFeatureRequest.verify|verify} messages. + * @param message DeleteFeatureRequest message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.v1alpha.IDeleteFeatureRequest, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified DeleteFeatureRequest message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1alpha.DeleteFeatureRequest.verify|verify} messages. + * @param message DeleteFeatureRequest message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.v1alpha.IDeleteFeatureRequest, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a DeleteFeatureRequest message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns DeleteFeatureRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.v1alpha.DeleteFeatureRequest; + + /** + * Decodes a DeleteFeatureRequest message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns DeleteFeatureRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.v1alpha.DeleteFeatureRequest; + + /** + * Verifies a DeleteFeatureRequest message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a DeleteFeatureRequest message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns DeleteFeatureRequest + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.v1alpha.DeleteFeatureRequest; + + /** + * Creates a plain object from a DeleteFeatureRequest message. Also converts values to other types if specified. + * @param message DeleteFeatureRequest + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.v1alpha.DeleteFeatureRequest, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this DeleteFeatureRequest to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + + /** Properties of an UpdateFeatureRequest. */ + interface IUpdateFeatureRequest { + + /** UpdateFeatureRequest name */ + name?: (string|null); + + /** UpdateFeatureRequest updateMask */ + updateMask?: (google.protobuf.IFieldMask|null); + + /** UpdateFeatureRequest resource */ + resource?: (google.cloud.gkehub.v1alpha.IFeature|null); + + /** UpdateFeatureRequest requestId */ + requestId?: (string|null); + } + + /** Represents an UpdateFeatureRequest. */ + class UpdateFeatureRequest implements IUpdateFeatureRequest { + + /** + * Constructs a new UpdateFeatureRequest. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.v1alpha.IUpdateFeatureRequest); + + /** UpdateFeatureRequest name. */ + public name: string; + + /** UpdateFeatureRequest updateMask. */ + public updateMask?: (google.protobuf.IFieldMask|null); + + /** UpdateFeatureRequest resource. */ + public resource?: (google.cloud.gkehub.v1alpha.IFeature|null); + + /** UpdateFeatureRequest requestId. */ + public requestId: string; + + /** + * Creates a new UpdateFeatureRequest instance using the specified properties. + * @param [properties] Properties to set + * @returns UpdateFeatureRequest instance + */ + public static create(properties?: google.cloud.gkehub.v1alpha.IUpdateFeatureRequest): google.cloud.gkehub.v1alpha.UpdateFeatureRequest; + + /** + * Encodes the specified UpdateFeatureRequest message. Does not implicitly {@link google.cloud.gkehub.v1alpha.UpdateFeatureRequest.verify|verify} messages. + * @param message UpdateFeatureRequest message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.v1alpha.IUpdateFeatureRequest, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified UpdateFeatureRequest message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1alpha.UpdateFeatureRequest.verify|verify} messages. + * @param message UpdateFeatureRequest message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.v1alpha.IUpdateFeatureRequest, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes an UpdateFeatureRequest message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns UpdateFeatureRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.v1alpha.UpdateFeatureRequest; + + /** + * Decodes an UpdateFeatureRequest message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns UpdateFeatureRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.v1alpha.UpdateFeatureRequest; + + /** + * Verifies an UpdateFeatureRequest message. + * @param message Plain 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 UpdateFeatureRequest message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns UpdateFeatureRequest + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.v1alpha.UpdateFeatureRequest; + + /** + * Creates a plain object from an UpdateFeatureRequest message. Also converts values to other types if specified. + * @param message UpdateFeatureRequest + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.v1alpha.UpdateFeatureRequest, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this UpdateFeatureRequest to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + + /** Properties of an OperationMetadata. */ + interface IOperationMetadata { + + /** OperationMetadata createTime */ + createTime?: (google.protobuf.ITimestamp|null); + + /** OperationMetadata endTime */ + endTime?: (google.protobuf.ITimestamp|null); + + /** OperationMetadata target */ + target?: (string|null); + + /** OperationMetadata verb */ + verb?: (string|null); + + /** OperationMetadata statusDetail */ + statusDetail?: (string|null); + + /** OperationMetadata cancelRequested */ + cancelRequested?: (boolean|null); + + /** OperationMetadata apiVersion */ + apiVersion?: (string|null); + } + + /** Represents an OperationMetadata. */ + class OperationMetadata implements IOperationMetadata { + + /** + * Constructs a new OperationMetadata. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.v1alpha.IOperationMetadata); + + /** OperationMetadata createTime. */ + public createTime?: (google.protobuf.ITimestamp|null); + + /** OperationMetadata endTime. */ + public endTime?: (google.protobuf.ITimestamp|null); + + /** OperationMetadata target. */ + public target: string; + + /** OperationMetadata verb. */ + public verb: string; + + /** OperationMetadata statusDetail. */ + public statusDetail: string; + + /** OperationMetadata cancelRequested. */ + public cancelRequested: boolean; + + /** OperationMetadata apiVersion. */ + public apiVersion: string; + + /** + * Creates a new OperationMetadata instance using the specified properties. + * @param [properties] Properties to set + * @returns OperationMetadata instance + */ + public static create(properties?: google.cloud.gkehub.v1alpha.IOperationMetadata): google.cloud.gkehub.v1alpha.OperationMetadata; + + /** + * Encodes the specified OperationMetadata message. Does not implicitly {@link google.cloud.gkehub.v1alpha.OperationMetadata.verify|verify} messages. + * @param message OperationMetadata message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.v1alpha.IOperationMetadata, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified OperationMetadata message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1alpha.OperationMetadata.verify|verify} messages. + * @param message OperationMetadata message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.v1alpha.IOperationMetadata, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes an OperationMetadata message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns OperationMetadata + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.v1alpha.OperationMetadata; + + /** + * Decodes an OperationMetadata message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns OperationMetadata + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.v1alpha.OperationMetadata; + + /** + * Verifies an OperationMetadata message. + * @param message Plain 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 OperationMetadata message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns OperationMetadata + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.v1alpha.OperationMetadata; + + /** + * Creates a plain object from an OperationMetadata message. Also converts values to other types if specified. + * @param message OperationMetadata + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.v1alpha.OperationMetadata, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this OperationMetadata to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + } + + /** Namespace metering. */ + namespace metering { + + /** Namespace v1alpha. */ + namespace v1alpha { + + /** Properties of a MembershipState. */ + interface IMembershipState { + + /** MembershipState lastMeasurementTime */ + lastMeasurementTime?: (google.protobuf.ITimestamp|null); + + /** MembershipState preciseLastMeasuredClusterVcpuCapacity */ + preciseLastMeasuredClusterVcpuCapacity?: (number|null); + } + + /** Represents a MembershipState. */ + class MembershipState implements IMembershipState { + + /** + * Constructs a new MembershipState. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.metering.v1alpha.IMembershipState); + + /** MembershipState lastMeasurementTime. */ + public lastMeasurementTime?: (google.protobuf.ITimestamp|null); + + /** MembershipState preciseLastMeasuredClusterVcpuCapacity. */ + public preciseLastMeasuredClusterVcpuCapacity: number; + + /** + * Creates a new MembershipState instance using the specified properties. + * @param [properties] Properties to set + * @returns MembershipState instance + */ + public static create(properties?: google.cloud.gkehub.metering.v1alpha.IMembershipState): google.cloud.gkehub.metering.v1alpha.MembershipState; + + /** + * Encodes the specified MembershipState message. Does not implicitly {@link google.cloud.gkehub.metering.v1alpha.MembershipState.verify|verify} messages. + * @param message MembershipState message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.metering.v1alpha.IMembershipState, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified MembershipState message, length delimited. Does not implicitly {@link google.cloud.gkehub.metering.v1alpha.MembershipState.verify|verify} messages. + * @param message MembershipState message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.metering.v1alpha.IMembershipState, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a MembershipState message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns MembershipState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.metering.v1alpha.MembershipState; + + /** + * Decodes a MembershipState message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns MembershipState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.metering.v1alpha.MembershipState; + + /** + * Verifies a MembershipState message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a MembershipState message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns MembershipState + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.metering.v1alpha.MembershipState; + + /** + * Creates a plain object from a MembershipState message. Also converts values to other types if specified. + * @param message MembershipState + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.metering.v1alpha.MembershipState, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this MembershipState to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + } + + /** Namespace v1beta. */ + namespace v1beta { + + /** Properties of a MembershipState. */ + interface IMembershipState { + + /** MembershipState lastMeasurementTime */ + lastMeasurementTime?: (google.protobuf.ITimestamp|null); + + /** MembershipState preciseLastMeasuredClusterVcpuCapacity */ + preciseLastMeasuredClusterVcpuCapacity?: (number|null); + } + + /** Represents a MembershipState. */ + class MembershipState implements IMembershipState { + + /** + * Constructs a new MembershipState. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.metering.v1beta.IMembershipState); + + /** MembershipState lastMeasurementTime. */ + public lastMeasurementTime?: (google.protobuf.ITimestamp|null); + + /** MembershipState preciseLastMeasuredClusterVcpuCapacity. */ + public preciseLastMeasuredClusterVcpuCapacity: number; + + /** + * Creates a new MembershipState instance using the specified properties. + * @param [properties] Properties to set + * @returns MembershipState instance + */ + public static create(properties?: google.cloud.gkehub.metering.v1beta.IMembershipState): google.cloud.gkehub.metering.v1beta.MembershipState; + + /** + * Encodes the specified MembershipState message. Does not implicitly {@link google.cloud.gkehub.metering.v1beta.MembershipState.verify|verify} messages. + * @param message MembershipState message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.metering.v1beta.IMembershipState, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified MembershipState message, length delimited. Does not implicitly {@link google.cloud.gkehub.metering.v1beta.MembershipState.verify|verify} messages. + * @param message MembershipState message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.metering.v1beta.IMembershipState, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a MembershipState message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns MembershipState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.metering.v1beta.MembershipState; + + /** + * Decodes a MembershipState message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns MembershipState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.metering.v1beta.MembershipState; + + /** + * Verifies a MembershipState message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a MembershipState message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns MembershipState + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.metering.v1beta.MembershipState; + + /** + * Creates a plain object from a MembershipState message. Also converts values to other types if specified. + * @param message MembershipState + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.metering.v1beta.MembershipState, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this MembershipState to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + } + } + + /** Namespace servicemesh. */ + namespace servicemesh { + + /** Namespace v1alpha. */ + namespace v1alpha { + + /** Properties of a FeatureState. */ + interface IFeatureState { + + /** FeatureState analysisMessages */ + analysisMessages?: (google.cloud.gkehub.servicemesh.v1alpha.IAnalysisMessage[]|null); + } + + /** Represents a FeatureState. */ + class FeatureState implements IFeatureState { + + /** + * Constructs a new FeatureState. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.servicemesh.v1alpha.IFeatureState); + + /** FeatureState analysisMessages. */ + public analysisMessages: google.cloud.gkehub.servicemesh.v1alpha.IAnalysisMessage[]; + + /** + * Creates a new FeatureState instance using the specified properties. + * @param [properties] Properties to set + * @returns FeatureState instance + */ + public static create(properties?: google.cloud.gkehub.servicemesh.v1alpha.IFeatureState): google.cloud.gkehub.servicemesh.v1alpha.FeatureState; + + /** + * Encodes the specified FeatureState message. Does not implicitly {@link google.cloud.gkehub.servicemesh.v1alpha.FeatureState.verify|verify} messages. + * @param message FeatureState message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.servicemesh.v1alpha.IFeatureState, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified FeatureState message, length delimited. Does not implicitly {@link google.cloud.gkehub.servicemesh.v1alpha.FeatureState.verify|verify} messages. + * @param message FeatureState message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.servicemesh.v1alpha.IFeatureState, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a FeatureState message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns FeatureState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.servicemesh.v1alpha.FeatureState; + + /** + * Decodes a FeatureState message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns FeatureState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.servicemesh.v1alpha.FeatureState; + + /** + * Verifies a FeatureState message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a FeatureState message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns FeatureState + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.servicemesh.v1alpha.FeatureState; + + /** + * Creates a plain object from a FeatureState message. Also converts values to other types if specified. + * @param message FeatureState + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.servicemesh.v1alpha.FeatureState, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this FeatureState to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + + /** Properties of a MembershipState. */ + interface IMembershipState { + + /** MembershipState analysisMessages */ + analysisMessages?: (google.cloud.gkehub.servicemesh.v1alpha.IAnalysisMessage[]|null); + } + + /** Represents a MembershipState. */ + class MembershipState implements IMembershipState { + + /** + * Constructs a new MembershipState. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.servicemesh.v1alpha.IMembershipState); + + /** MembershipState analysisMessages. */ + public analysisMessages: google.cloud.gkehub.servicemesh.v1alpha.IAnalysisMessage[]; + + /** + * Creates a new MembershipState instance using the specified properties. + * @param [properties] Properties to set + * @returns MembershipState instance + */ + public static create(properties?: google.cloud.gkehub.servicemesh.v1alpha.IMembershipState): google.cloud.gkehub.servicemesh.v1alpha.MembershipState; + + /** + * Encodes the specified MembershipState message. Does not implicitly {@link google.cloud.gkehub.servicemesh.v1alpha.MembershipState.verify|verify} messages. + * @param message MembershipState message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.servicemesh.v1alpha.IMembershipState, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified MembershipState message, length delimited. Does not implicitly {@link google.cloud.gkehub.servicemesh.v1alpha.MembershipState.verify|verify} messages. + * @param message MembershipState message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.servicemesh.v1alpha.IMembershipState, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a MembershipState message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns MembershipState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.servicemesh.v1alpha.MembershipState; + + /** + * Decodes a MembershipState message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns MembershipState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.servicemesh.v1alpha.MembershipState; + + /** + * Verifies a MembershipState message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a MembershipState message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns MembershipState + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.servicemesh.v1alpha.MembershipState; + + /** + * Creates a plain object from a MembershipState message. Also converts values to other types if specified. + * @param message MembershipState + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.servicemesh.v1alpha.MembershipState, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this MembershipState to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + + /** Properties of an AnalysisMessageBase. */ + interface IAnalysisMessageBase { + + /** AnalysisMessageBase type */ + type?: (google.cloud.gkehub.servicemesh.v1alpha.AnalysisMessageBase.IType|null); + + /** AnalysisMessageBase level */ + level?: (google.cloud.gkehub.servicemesh.v1alpha.AnalysisMessageBase.Level|keyof typeof google.cloud.gkehub.servicemesh.v1alpha.AnalysisMessageBase.Level|null); + + /** AnalysisMessageBase documentationUrl */ + documentationUrl?: (string|null); + } + + /** Represents an AnalysisMessageBase. */ + class AnalysisMessageBase implements IAnalysisMessageBase { + + /** + * Constructs a new AnalysisMessageBase. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.servicemesh.v1alpha.IAnalysisMessageBase); + + /** AnalysisMessageBase type. */ + public type?: (google.cloud.gkehub.servicemesh.v1alpha.AnalysisMessageBase.IType|null); + + /** AnalysisMessageBase level. */ + public level: (google.cloud.gkehub.servicemesh.v1alpha.AnalysisMessageBase.Level|keyof typeof google.cloud.gkehub.servicemesh.v1alpha.AnalysisMessageBase.Level); + + /** AnalysisMessageBase documentationUrl. */ + public documentationUrl: string; + + /** + * Creates a new AnalysisMessageBase instance using the specified properties. + * @param [properties] Properties to set + * @returns AnalysisMessageBase instance + */ + public static create(properties?: google.cloud.gkehub.servicemesh.v1alpha.IAnalysisMessageBase): google.cloud.gkehub.servicemesh.v1alpha.AnalysisMessageBase; + + /** + * Encodes the specified AnalysisMessageBase message. Does not implicitly {@link google.cloud.gkehub.servicemesh.v1alpha.AnalysisMessageBase.verify|verify} messages. + * @param message AnalysisMessageBase message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.servicemesh.v1alpha.IAnalysisMessageBase, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified AnalysisMessageBase message, length delimited. Does not implicitly {@link google.cloud.gkehub.servicemesh.v1alpha.AnalysisMessageBase.verify|verify} messages. + * @param message AnalysisMessageBase message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.servicemesh.v1alpha.IAnalysisMessageBase, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes an AnalysisMessageBase message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns AnalysisMessageBase + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.servicemesh.v1alpha.AnalysisMessageBase; + + /** + * Decodes an AnalysisMessageBase message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns AnalysisMessageBase + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.servicemesh.v1alpha.AnalysisMessageBase; + + /** + * Verifies an AnalysisMessageBase message. + * @param message Plain 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 AnalysisMessageBase message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns AnalysisMessageBase + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.servicemesh.v1alpha.AnalysisMessageBase; + + /** + * Creates a plain object from an AnalysisMessageBase message. Also converts values to other types if specified. + * @param message AnalysisMessageBase + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.servicemesh.v1alpha.AnalysisMessageBase, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this AnalysisMessageBase to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + + namespace AnalysisMessageBase { + + /** Properties of a Type. */ + interface IType { + + /** Type displayName */ + displayName?: (string|null); + + /** Type code */ + code?: (string|null); + } + + /** Represents a Type. */ + class Type implements IType { + + /** + * Constructs a new Type. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.servicemesh.v1alpha.AnalysisMessageBase.IType); + + /** Type displayName. */ + public displayName: string; + + /** Type code. */ + public code: string; + + /** + * Creates a new Type instance using the specified properties. + * @param [properties] Properties to set + * @returns Type instance + */ + public static create(properties?: google.cloud.gkehub.servicemesh.v1alpha.AnalysisMessageBase.IType): google.cloud.gkehub.servicemesh.v1alpha.AnalysisMessageBase.Type; + + /** + * Encodes the specified Type message. Does not implicitly {@link google.cloud.gkehub.servicemesh.v1alpha.AnalysisMessageBase.Type.verify|verify} messages. + * @param message Type message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.servicemesh.v1alpha.AnalysisMessageBase.IType, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified Type message, length delimited. Does not implicitly {@link google.cloud.gkehub.servicemesh.v1alpha.AnalysisMessageBase.Type.verify|verify} messages. + * @param message Type message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.servicemesh.v1alpha.AnalysisMessageBase.IType, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a Type message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns Type + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.servicemesh.v1alpha.AnalysisMessageBase.Type; + + /** + * Decodes a Type message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns Type + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.servicemesh.v1alpha.AnalysisMessageBase.Type; + + /** + * Verifies a Type message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a Type message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns Type + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.servicemesh.v1alpha.AnalysisMessageBase.Type; + + /** + * Creates a plain object from a Type message. Also converts values to other types if specified. + * @param message Type + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.servicemesh.v1alpha.AnalysisMessageBase.Type, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this Type to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + + /** Level enum. */ + enum Level { + LEVEL_UNSPECIFIED = 0, + ERROR = 3, + WARNING = 8, + INFO = 12 + } + } + + /** Properties of an AnalysisMessage. */ + interface IAnalysisMessage { + + /** AnalysisMessage messageBase */ + messageBase?: (google.cloud.gkehub.servicemesh.v1alpha.IAnalysisMessageBase|null); + + /** AnalysisMessage description */ + description?: (string|null); + + /** AnalysisMessage resourcePaths */ + resourcePaths?: (string[]|null); + + /** AnalysisMessage args */ + args?: (google.protobuf.IStruct|null); + } + + /** Represents an AnalysisMessage. */ + class AnalysisMessage implements IAnalysisMessage { + + /** + * Constructs a new AnalysisMessage. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.servicemesh.v1alpha.IAnalysisMessage); + + /** AnalysisMessage messageBase. */ + public messageBase?: (google.cloud.gkehub.servicemesh.v1alpha.IAnalysisMessageBase|null); + + /** AnalysisMessage description. */ + public description: string; + + /** AnalysisMessage resourcePaths. */ + public resourcePaths: string[]; + + /** AnalysisMessage args. */ + public args?: (google.protobuf.IStruct|null); + + /** + * Creates a new AnalysisMessage instance using the specified properties. + * @param [properties] Properties to set + * @returns AnalysisMessage instance + */ + public static create(properties?: google.cloud.gkehub.servicemesh.v1alpha.IAnalysisMessage): google.cloud.gkehub.servicemesh.v1alpha.AnalysisMessage; + + /** + * Encodes the specified AnalysisMessage message. Does not implicitly {@link google.cloud.gkehub.servicemesh.v1alpha.AnalysisMessage.verify|verify} messages. + * @param message AnalysisMessage message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.servicemesh.v1alpha.IAnalysisMessage, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified AnalysisMessage message, length delimited. Does not implicitly {@link google.cloud.gkehub.servicemesh.v1alpha.AnalysisMessage.verify|verify} messages. + * @param message AnalysisMessage message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.servicemesh.v1alpha.IAnalysisMessage, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes an AnalysisMessage message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns AnalysisMessage + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.servicemesh.v1alpha.AnalysisMessage; + + /** + * Decodes an AnalysisMessage message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns AnalysisMessage + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.servicemesh.v1alpha.AnalysisMessage; + + /** + * Verifies an AnalysisMessage message. + * @param message Plain 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 AnalysisMessage message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns AnalysisMessage + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.servicemesh.v1alpha.AnalysisMessage; + + /** + * Creates a plain object from an AnalysisMessage message. Also converts values to other types if specified. + * @param message AnalysisMessage + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.servicemesh.v1alpha.AnalysisMessage, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this AnalysisMessage to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + } + } + + /** Namespace v1alpha2. */ + namespace v1alpha2 { + + /** Represents a GkeHub */ + class GkeHub extends $protobuf.rpc.Service { + + /** + * Constructs a new GkeHub 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 GkeHub 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): GkeHub; + + /** + * Calls ListMemberships. + * @param request ListMembershipsRequest message or plain object + * @param callback Node-style callback called with the error, if any, and ListMembershipsResponse + */ + public listMemberships(request: google.cloud.gkehub.v1alpha2.IListMembershipsRequest, callback: google.cloud.gkehub.v1alpha2.GkeHub.ListMembershipsCallback): void; + + /** + * Calls ListMemberships. + * @param request ListMembershipsRequest message or plain object + * @returns Promise + */ + public listMemberships(request: google.cloud.gkehub.v1alpha2.IListMembershipsRequest): Promise; + + /** + * Calls GetMembership. + * @param request GetMembershipRequest message or plain object + * @param callback Node-style callback called with the error, if any, and Membership + */ + public getMembership(request: google.cloud.gkehub.v1alpha2.IGetMembershipRequest, callback: google.cloud.gkehub.v1alpha2.GkeHub.GetMembershipCallback): void; + + /** + * Calls GetMembership. + * @param request GetMembershipRequest message or plain object + * @returns Promise + */ + public getMembership(request: google.cloud.gkehub.v1alpha2.IGetMembershipRequest): Promise; + + /** + * Calls CreateMembership. + * @param request CreateMembershipRequest message or plain object + * @param callback Node-style callback called with the error, if any, and Operation + */ + public createMembership(request: google.cloud.gkehub.v1alpha2.ICreateMembershipRequest, callback: google.cloud.gkehub.v1alpha2.GkeHub.CreateMembershipCallback): void; + + /** + * Calls CreateMembership. + * @param request CreateMembershipRequest message or plain object + * @returns Promise + */ + public createMembership(request: google.cloud.gkehub.v1alpha2.ICreateMembershipRequest): Promise; + + /** + * Calls DeleteMembership. + * @param request DeleteMembershipRequest message or plain object + * @param callback Node-style callback called with the error, if any, and Operation + */ + public deleteMembership(request: google.cloud.gkehub.v1alpha2.IDeleteMembershipRequest, callback: google.cloud.gkehub.v1alpha2.GkeHub.DeleteMembershipCallback): void; + + /** + * Calls DeleteMembership. + * @param request DeleteMembershipRequest message or plain object + * @returns Promise + */ + public deleteMembership(request: google.cloud.gkehub.v1alpha2.IDeleteMembershipRequest): Promise; + + /** + * Calls UpdateMembership. + * @param request UpdateMembershipRequest message or plain object + * @param callback Node-style callback called with the error, if any, and Operation + */ + public updateMembership(request: google.cloud.gkehub.v1alpha2.IUpdateMembershipRequest, callback: google.cloud.gkehub.v1alpha2.GkeHub.UpdateMembershipCallback): void; + + /** + * Calls UpdateMembership. + * @param request UpdateMembershipRequest message or plain object + * @returns Promise + */ + public updateMembership(request: google.cloud.gkehub.v1alpha2.IUpdateMembershipRequest): Promise; + + /** + * Calls GenerateConnectManifest. + * @param request GenerateConnectManifestRequest message or plain object + * @param callback Node-style callback called with the error, if any, and GenerateConnectManifestResponse + */ + public generateConnectManifest(request: google.cloud.gkehub.v1alpha2.IGenerateConnectManifestRequest, callback: google.cloud.gkehub.v1alpha2.GkeHub.GenerateConnectManifestCallback): void; + + /** + * Calls GenerateConnectManifest. + * @param request GenerateConnectManifestRequest message or plain object + * @returns Promise + */ + public generateConnectManifest(request: google.cloud.gkehub.v1alpha2.IGenerateConnectManifestRequest): Promise; + + /** + * Calls InitializeHub. + * @param request InitializeHubRequest message or plain object + * @param callback Node-style callback called with the error, if any, and InitializeHubResponse + */ + public initializeHub(request: google.cloud.gkehub.v1alpha2.IInitializeHubRequest, callback: google.cloud.gkehub.v1alpha2.GkeHub.InitializeHubCallback): void; + + /** + * Calls InitializeHub. + * @param request InitializeHubRequest message or plain object + * @returns Promise + */ + public initializeHub(request: google.cloud.gkehub.v1alpha2.IInitializeHubRequest): Promise; + } + + namespace GkeHub { + + /** + * Callback as used by {@link google.cloud.gkehub.v1alpha2.GkeHub#listMemberships}. + * @param error Error, if any + * @param [response] ListMembershipsResponse + */ + type ListMembershipsCallback = (error: (Error|null), response?: google.cloud.gkehub.v1alpha2.ListMembershipsResponse) => void; + + /** + * Callback as used by {@link google.cloud.gkehub.v1alpha2.GkeHub#getMembership}. + * @param error Error, if any + * @param [response] Membership + */ + type GetMembershipCallback = (error: (Error|null), response?: google.cloud.gkehub.v1alpha2.Membership) => void; + + /** + * Callback as used by {@link google.cloud.gkehub.v1alpha2.GkeHub#createMembership}. + * @param error Error, if any + * @param [response] Operation + */ + type CreateMembershipCallback = (error: (Error|null), response?: google.longrunning.Operation) => void; + + /** + * Callback as used by {@link google.cloud.gkehub.v1alpha2.GkeHub#deleteMembership}. + * @param error Error, if any + * @param [response] Operation + */ + type DeleteMembershipCallback = (error: (Error|null), response?: google.longrunning.Operation) => void; + + /** + * Callback as used by {@link google.cloud.gkehub.v1alpha2.GkeHub#updateMembership}. + * @param error Error, if any + * @param [response] Operation + */ + type UpdateMembershipCallback = (error: (Error|null), response?: google.longrunning.Operation) => void; + + /** + * Callback as used by {@link google.cloud.gkehub.v1alpha2.GkeHub#generateConnectManifest}. + * @param error Error, if any + * @param [response] GenerateConnectManifestResponse + */ + type GenerateConnectManifestCallback = (error: (Error|null), response?: google.cloud.gkehub.v1alpha2.GenerateConnectManifestResponse) => void; + + /** + * Callback as used by {@link google.cloud.gkehub.v1alpha2.GkeHub#initializeHub}. + * @param error Error, if any + * @param [response] InitializeHubResponse + */ + type InitializeHubCallback = (error: (Error|null), response?: google.cloud.gkehub.v1alpha2.InitializeHubResponse) => void; + } + + /** Properties of a Membership. */ + interface IMembership { + + /** Membership name */ + name?: (string|null); + + /** Membership labels */ + labels?: ({ [k: string]: string }|null); + + /** Membership description */ + description?: (string|null); + + /** Membership endpoint */ + endpoint?: (google.cloud.gkehub.v1alpha2.IMembershipEndpoint|null); + + /** Membership state */ + state?: (google.cloud.gkehub.v1alpha2.IMembershipState|null); + + /** Membership createTime */ + createTime?: (google.protobuf.ITimestamp|null); + + /** Membership updateTime */ + updateTime?: (google.protobuf.ITimestamp|null); + + /** Membership deleteTime */ + deleteTime?: (google.protobuf.ITimestamp|null); + + /** Membership externalId */ + externalId?: (string|null); + + /** Membership authority */ + authority?: (google.cloud.gkehub.v1alpha2.IAuthority|null); + + /** Membership lastConnectionTime */ + lastConnectionTime?: (google.protobuf.ITimestamp|null); + + /** Membership uniqueId */ + uniqueId?: (string|null); + + /** Membership infrastructureType */ + infrastructureType?: (google.cloud.gkehub.v1alpha2.Membership.InfrastructureType|keyof typeof google.cloud.gkehub.v1alpha2.Membership.InfrastructureType|null); + } + + /** Represents a Membership. */ + class Membership implements IMembership { + + /** + * Constructs a new Membership. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.v1alpha2.IMembership); + + /** Membership name. */ + public name: string; + + /** Membership labels. */ + public labels: { [k: string]: string }; + + /** Membership description. */ + public description: string; + + /** Membership endpoint. */ + public endpoint?: (google.cloud.gkehub.v1alpha2.IMembershipEndpoint|null); + + /** Membership state. */ + public state?: (google.cloud.gkehub.v1alpha2.IMembershipState|null); + + /** Membership createTime. */ + public createTime?: (google.protobuf.ITimestamp|null); + + /** Membership updateTime. */ + public updateTime?: (google.protobuf.ITimestamp|null); + + /** Membership deleteTime. */ + public deleteTime?: (google.protobuf.ITimestamp|null); + + /** Membership externalId. */ + public externalId: string; + + /** Membership authority. */ + public authority?: (google.cloud.gkehub.v1alpha2.IAuthority|null); + + /** Membership lastConnectionTime. */ + public lastConnectionTime?: (google.protobuf.ITimestamp|null); + + /** Membership uniqueId. */ + public uniqueId: string; + + /** Membership infrastructureType. */ + public infrastructureType: (google.cloud.gkehub.v1alpha2.Membership.InfrastructureType|keyof typeof google.cloud.gkehub.v1alpha2.Membership.InfrastructureType); + + /** Membership type. */ + public type?: "endpoint"; + + /** + * Creates a new Membership instance using the specified properties. + * @param [properties] Properties to set + * @returns Membership instance + */ + public static create(properties?: google.cloud.gkehub.v1alpha2.IMembership): google.cloud.gkehub.v1alpha2.Membership; + + /** + * Encodes the specified Membership message. Does not implicitly {@link google.cloud.gkehub.v1alpha2.Membership.verify|verify} messages. + * @param message Membership message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.v1alpha2.IMembership, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified Membership message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1alpha2.Membership.verify|verify} messages. + * @param message Membership message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.v1alpha2.IMembership, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a Membership message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns Membership + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.v1alpha2.Membership; + + /** + * Decodes a Membership message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns Membership + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.v1alpha2.Membership; + + /** + * Verifies a Membership message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a Membership message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns Membership + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.v1alpha2.Membership; + + /** + * Creates a plain object from a Membership message. Also converts values to other types if specified. + * @param message Membership + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.v1alpha2.Membership, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this Membership to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + + namespace Membership { + + /** InfrastructureType enum. */ + enum InfrastructureType { + INFRASTRUCTURE_TYPE_UNSPECIFIED = 0, + ON_PREM = 1, + MULTI_CLOUD = 2 + } + } + + /** Properties of a MembershipEndpoint. */ + interface IMembershipEndpoint { + + /** MembershipEndpoint gkeCluster */ + gkeCluster?: (google.cloud.gkehub.v1alpha2.IGkeCluster|null); + + /** MembershipEndpoint kubernetesMetadata */ + kubernetesMetadata?: (google.cloud.gkehub.v1alpha2.IKubernetesMetadata|null); + + /** MembershipEndpoint kubernetesResource */ + kubernetesResource?: (google.cloud.gkehub.v1alpha2.IKubernetesResource|null); + } + + /** Represents a MembershipEndpoint. */ + class MembershipEndpoint implements IMembershipEndpoint { + + /** + * Constructs a new MembershipEndpoint. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.v1alpha2.IMembershipEndpoint); + + /** MembershipEndpoint gkeCluster. */ + public gkeCluster?: (google.cloud.gkehub.v1alpha2.IGkeCluster|null); + + /** MembershipEndpoint kubernetesMetadata. */ + public kubernetesMetadata?: (google.cloud.gkehub.v1alpha2.IKubernetesMetadata|null); + + /** MembershipEndpoint kubernetesResource. */ + public kubernetesResource?: (google.cloud.gkehub.v1alpha2.IKubernetesResource|null); + + /** + * Creates a new MembershipEndpoint instance using the specified properties. + * @param [properties] Properties to set + * @returns MembershipEndpoint instance + */ + public static create(properties?: google.cloud.gkehub.v1alpha2.IMembershipEndpoint): google.cloud.gkehub.v1alpha2.MembershipEndpoint; + + /** + * Encodes the specified MembershipEndpoint message. Does not implicitly {@link google.cloud.gkehub.v1alpha2.MembershipEndpoint.verify|verify} messages. + * @param message MembershipEndpoint message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.v1alpha2.IMembershipEndpoint, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified MembershipEndpoint message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1alpha2.MembershipEndpoint.verify|verify} messages. + * @param message MembershipEndpoint message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.v1alpha2.IMembershipEndpoint, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a MembershipEndpoint message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns MembershipEndpoint + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.v1alpha2.MembershipEndpoint; + + /** + * Decodes a MembershipEndpoint message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns MembershipEndpoint + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.v1alpha2.MembershipEndpoint; + + /** + * Verifies a MembershipEndpoint message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a MembershipEndpoint message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns MembershipEndpoint + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.v1alpha2.MembershipEndpoint; + + /** + * Creates a plain object from a MembershipEndpoint message. Also converts values to other types if specified. + * @param message MembershipEndpoint + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.v1alpha2.MembershipEndpoint, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this MembershipEndpoint to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + + /** Properties of a KubernetesResource. */ + interface IKubernetesResource { + + /** KubernetesResource membershipCrManifest */ + membershipCrManifest?: (string|null); + + /** KubernetesResource membershipResources */ + membershipResources?: (google.cloud.gkehub.v1alpha2.IResourceManifest[]|null); + + /** KubernetesResource connectResources */ + connectResources?: (google.cloud.gkehub.v1alpha2.IResourceManifest[]|null); + + /** KubernetesResource resourceOptions */ + resourceOptions?: (google.cloud.gkehub.v1alpha2.IResourceOptions|null); + } + + /** Represents a KubernetesResource. */ + class KubernetesResource implements IKubernetesResource { + + /** + * Constructs a new KubernetesResource. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.v1alpha2.IKubernetesResource); + + /** KubernetesResource membershipCrManifest. */ + public membershipCrManifest: string; + + /** KubernetesResource membershipResources. */ + public membershipResources: google.cloud.gkehub.v1alpha2.IResourceManifest[]; + + /** KubernetesResource connectResources. */ + public connectResources: google.cloud.gkehub.v1alpha2.IResourceManifest[]; + + /** KubernetesResource resourceOptions. */ + public resourceOptions?: (google.cloud.gkehub.v1alpha2.IResourceOptions|null); + + /** + * Creates a new KubernetesResource instance using the specified properties. + * @param [properties] Properties to set + * @returns KubernetesResource instance + */ + public static create(properties?: google.cloud.gkehub.v1alpha2.IKubernetesResource): google.cloud.gkehub.v1alpha2.KubernetesResource; + + /** + * Encodes the specified KubernetesResource message. Does not implicitly {@link google.cloud.gkehub.v1alpha2.KubernetesResource.verify|verify} messages. + * @param message KubernetesResource message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.v1alpha2.IKubernetesResource, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified KubernetesResource message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1alpha2.KubernetesResource.verify|verify} messages. + * @param message KubernetesResource message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.v1alpha2.IKubernetesResource, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a KubernetesResource message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns KubernetesResource + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.v1alpha2.KubernetesResource; + + /** + * Decodes a KubernetesResource message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns KubernetesResource + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.v1alpha2.KubernetesResource; + + /** + * Verifies a KubernetesResource message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a KubernetesResource message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns KubernetesResource + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.v1alpha2.KubernetesResource; + + /** + * Creates a plain object from a KubernetesResource message. Also converts values to other types if specified. + * @param message KubernetesResource + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.v1alpha2.KubernetesResource, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this KubernetesResource to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + + /** Properties of a ResourceOptions. */ + interface IResourceOptions { + + /** ResourceOptions connectVersion */ + connectVersion?: (string|null); + + /** ResourceOptions v1beta1Crd */ + v1beta1Crd?: (boolean|null); + } + + /** Represents a ResourceOptions. */ + class ResourceOptions implements IResourceOptions { + + /** + * Constructs a new ResourceOptions. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.v1alpha2.IResourceOptions); + + /** ResourceOptions connectVersion. */ + public connectVersion: string; + + /** ResourceOptions v1beta1Crd. */ + public v1beta1Crd: boolean; + + /** + * Creates a new ResourceOptions instance using the specified properties. + * @param [properties] Properties to set + * @returns ResourceOptions instance + */ + public static create(properties?: google.cloud.gkehub.v1alpha2.IResourceOptions): google.cloud.gkehub.v1alpha2.ResourceOptions; + + /** + * Encodes the specified ResourceOptions message. Does not implicitly {@link google.cloud.gkehub.v1alpha2.ResourceOptions.verify|verify} messages. + * @param message ResourceOptions message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.v1alpha2.IResourceOptions, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified ResourceOptions message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1alpha2.ResourceOptions.verify|verify} messages. + * @param message ResourceOptions message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.v1alpha2.IResourceOptions, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a ResourceOptions message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns ResourceOptions + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.v1alpha2.ResourceOptions; + + /** + * Decodes a ResourceOptions message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns ResourceOptions + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.v1alpha2.ResourceOptions; + + /** + * Verifies a ResourceOptions message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a ResourceOptions message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns ResourceOptions + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.v1alpha2.ResourceOptions; + + /** + * Creates a plain object from a ResourceOptions message. Also converts values to other types if specified. + * @param message ResourceOptions + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.v1alpha2.ResourceOptions, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this ResourceOptions to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + + /** Properties of a GkeCluster. */ + interface IGkeCluster { + + /** GkeCluster resourceLink */ + resourceLink?: (string|null); + } + + /** Represents a GkeCluster. */ + class GkeCluster implements IGkeCluster { + + /** + * Constructs a new GkeCluster. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.v1alpha2.IGkeCluster); + + /** GkeCluster resourceLink. */ + public resourceLink: string; + + /** + * Creates a new GkeCluster instance using the specified properties. + * @param [properties] Properties to set + * @returns GkeCluster instance + */ + public static create(properties?: google.cloud.gkehub.v1alpha2.IGkeCluster): google.cloud.gkehub.v1alpha2.GkeCluster; + + /** + * Encodes the specified GkeCluster message. Does not implicitly {@link google.cloud.gkehub.v1alpha2.GkeCluster.verify|verify} messages. + * @param message GkeCluster message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.v1alpha2.IGkeCluster, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified GkeCluster message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1alpha2.GkeCluster.verify|verify} messages. + * @param message GkeCluster message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.v1alpha2.IGkeCluster, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a GkeCluster message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns GkeCluster + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.v1alpha2.GkeCluster; + + /** + * Decodes a GkeCluster message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns GkeCluster + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.v1alpha2.GkeCluster; + + /** + * Verifies a GkeCluster message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a GkeCluster message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns GkeCluster + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.v1alpha2.GkeCluster; + + /** + * Creates a plain object from a GkeCluster message. Also converts values to other types if specified. + * @param message GkeCluster + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.v1alpha2.GkeCluster, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this GkeCluster to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + + /** Properties of a KubernetesMetadata. */ + interface IKubernetesMetadata { + + /** KubernetesMetadata kubernetesApiServerVersion */ + kubernetesApiServerVersion?: (string|null); + + /** KubernetesMetadata nodeProviderId */ + nodeProviderId?: (string|null); + + /** KubernetesMetadata nodeCount */ + nodeCount?: (number|null); + + /** KubernetesMetadata vcpuCount */ + vcpuCount?: (number|null); + + /** KubernetesMetadata memoryMb */ + memoryMb?: (number|null); + + /** KubernetesMetadata updateTime */ + updateTime?: (google.protobuf.ITimestamp|null); + } + + /** Represents a KubernetesMetadata. */ + class KubernetesMetadata implements IKubernetesMetadata { + + /** + * Constructs a new KubernetesMetadata. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.v1alpha2.IKubernetesMetadata); + + /** KubernetesMetadata kubernetesApiServerVersion. */ + public kubernetesApiServerVersion: string; + + /** KubernetesMetadata nodeProviderId. */ + public nodeProviderId: string; + + /** KubernetesMetadata nodeCount. */ + public nodeCount: number; + + /** KubernetesMetadata vcpuCount. */ + public vcpuCount: number; + + /** KubernetesMetadata memoryMb. */ + public memoryMb: number; + + /** KubernetesMetadata updateTime. */ + public updateTime?: (google.protobuf.ITimestamp|null); + + /** + * Creates a new KubernetesMetadata instance using the specified properties. + * @param [properties] Properties to set + * @returns KubernetesMetadata instance + */ + public static create(properties?: google.cloud.gkehub.v1alpha2.IKubernetesMetadata): google.cloud.gkehub.v1alpha2.KubernetesMetadata; + + /** + * Encodes the specified KubernetesMetadata message. Does not implicitly {@link google.cloud.gkehub.v1alpha2.KubernetesMetadata.verify|verify} messages. + * @param message KubernetesMetadata message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.v1alpha2.IKubernetesMetadata, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified KubernetesMetadata message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1alpha2.KubernetesMetadata.verify|verify} messages. + * @param message KubernetesMetadata message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.v1alpha2.IKubernetesMetadata, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a KubernetesMetadata message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns KubernetesMetadata + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.v1alpha2.KubernetesMetadata; + + /** + * Decodes a KubernetesMetadata message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns KubernetesMetadata + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.v1alpha2.KubernetesMetadata; + + /** + * Verifies a KubernetesMetadata message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a KubernetesMetadata message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns KubernetesMetadata + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.v1alpha2.KubernetesMetadata; + + /** + * Creates a plain object from a KubernetesMetadata message. Also converts values to other types if specified. + * @param message KubernetesMetadata + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.v1alpha2.KubernetesMetadata, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this KubernetesMetadata to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + + /** Properties of an Authority. */ + interface IAuthority { + + /** Authority issuer */ + issuer?: (string|null); + + /** Authority oidcJwks */ + oidcJwks?: (Uint8Array|string|null); + + /** Authority identityProvider */ + identityProvider?: (string|null); + + /** Authority workloadIdentityPool */ + workloadIdentityPool?: (string|null); + } + + /** Represents an Authority. */ + class Authority implements IAuthority { + + /** + * Constructs a new Authority. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.v1alpha2.IAuthority); + + /** Authority issuer. */ + public issuer: string; + + /** Authority oidcJwks. */ + public oidcJwks: (Uint8Array|string); + + /** Authority identityProvider. */ + public identityProvider: string; + + /** Authority workloadIdentityPool. */ + public workloadIdentityPool: string; + + /** + * Creates a new Authority instance using the specified properties. + * @param [properties] Properties to set + * @returns Authority instance + */ + public static create(properties?: google.cloud.gkehub.v1alpha2.IAuthority): google.cloud.gkehub.v1alpha2.Authority; + + /** + * Encodes the specified Authority message. Does not implicitly {@link google.cloud.gkehub.v1alpha2.Authority.verify|verify} messages. + * @param message Authority message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.v1alpha2.IAuthority, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified Authority message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1alpha2.Authority.verify|verify} messages. + * @param message Authority message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.v1alpha2.IAuthority, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes an Authority message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns Authority + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.v1alpha2.Authority; + + /** + * Decodes an Authority message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns Authority + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.v1alpha2.Authority; + + /** + * Verifies an Authority message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates an Authority message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns Authority + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.v1alpha2.Authority; + + /** + * Creates a plain object from an Authority message. Also converts values to other types if specified. + * @param message Authority + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.v1alpha2.Authority, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this Authority to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + + /** Properties of a MembershipState. */ + interface IMembershipState { + + /** MembershipState code */ + code?: (google.cloud.gkehub.v1alpha2.MembershipState.Code|keyof typeof google.cloud.gkehub.v1alpha2.MembershipState.Code|null); + } + + /** Represents a MembershipState. */ + class MembershipState implements IMembershipState { + + /** + * Constructs a new MembershipState. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.v1alpha2.IMembershipState); + + /** MembershipState code. */ + public code: (google.cloud.gkehub.v1alpha2.MembershipState.Code|keyof typeof google.cloud.gkehub.v1alpha2.MembershipState.Code); + + /** + * Creates a new MembershipState instance using the specified properties. + * @param [properties] Properties to set + * @returns MembershipState instance + */ + public static create(properties?: google.cloud.gkehub.v1alpha2.IMembershipState): google.cloud.gkehub.v1alpha2.MembershipState; + + /** + * Encodes the specified MembershipState message. Does not implicitly {@link google.cloud.gkehub.v1alpha2.MembershipState.verify|verify} messages. + * @param message MembershipState message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.v1alpha2.IMembershipState, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified MembershipState message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1alpha2.MembershipState.verify|verify} messages. + * @param message MembershipState message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.v1alpha2.IMembershipState, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a MembershipState message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns MembershipState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.v1alpha2.MembershipState; + + /** + * Decodes a MembershipState message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns MembershipState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.v1alpha2.MembershipState; + + /** + * Verifies a MembershipState message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a MembershipState message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns MembershipState + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.v1alpha2.MembershipState; + + /** + * Creates a plain object from a MembershipState message. Also converts values to other types if specified. + * @param message MembershipState + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.v1alpha2.MembershipState, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this MembershipState to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + + namespace MembershipState { + + /** Code enum. */ + enum Code { + CODE_UNSPECIFIED = 0, + CREATING = 1, + READY = 2, + DELETING = 3, + UPDATING = 4, + SERVICE_UPDATING = 5 + } + } + + /** Properties of a ListMembershipsRequest. */ + interface IListMembershipsRequest { + + /** ListMembershipsRequest parent */ + parent?: (string|null); + + /** ListMembershipsRequest pageSize */ + pageSize?: (number|null); + + /** ListMembershipsRequest pageToken */ + pageToken?: (string|null); + + /** ListMembershipsRequest filter */ + filter?: (string|null); + + /** ListMembershipsRequest orderBy */ + orderBy?: (string|null); + } + + /** Represents a ListMembershipsRequest. */ + class ListMembershipsRequest implements IListMembershipsRequest { + + /** + * Constructs a new ListMembershipsRequest. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.v1alpha2.IListMembershipsRequest); + + /** ListMembershipsRequest parent. */ + public parent: string; + + /** ListMembershipsRequest pageSize. */ + public pageSize: number; + + /** ListMembershipsRequest pageToken. */ + public pageToken: string; + + /** ListMembershipsRequest filter. */ + public filter: string; + + /** ListMembershipsRequest orderBy. */ + public orderBy: string; + + /** + * Creates a new ListMembershipsRequest instance using the specified properties. + * @param [properties] Properties to set + * @returns ListMembershipsRequest instance + */ + public static create(properties?: google.cloud.gkehub.v1alpha2.IListMembershipsRequest): google.cloud.gkehub.v1alpha2.ListMembershipsRequest; + + /** + * Encodes the specified ListMembershipsRequest message. Does not implicitly {@link google.cloud.gkehub.v1alpha2.ListMembershipsRequest.verify|verify} messages. + * @param message ListMembershipsRequest message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.v1alpha2.IListMembershipsRequest, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified ListMembershipsRequest message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1alpha2.ListMembershipsRequest.verify|verify} messages. + * @param message ListMembershipsRequest message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.v1alpha2.IListMembershipsRequest, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a ListMembershipsRequest message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns ListMembershipsRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.v1alpha2.ListMembershipsRequest; + + /** + * Decodes a ListMembershipsRequest message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns ListMembershipsRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.v1alpha2.ListMembershipsRequest; + + /** + * Verifies a ListMembershipsRequest message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a ListMembershipsRequest message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns ListMembershipsRequest + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.v1alpha2.ListMembershipsRequest; + + /** + * Creates a plain object from a ListMembershipsRequest message. Also converts values to other types if specified. + * @param message ListMembershipsRequest + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.v1alpha2.ListMembershipsRequest, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this ListMembershipsRequest to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + + /** Properties of a ListMembershipsResponse. */ + interface IListMembershipsResponse { + + /** ListMembershipsResponse resources */ + resources?: (google.cloud.gkehub.v1alpha2.IMembership[]|null); + + /** ListMembershipsResponse nextPageToken */ + nextPageToken?: (string|null); + + /** ListMembershipsResponse unreachable */ + unreachable?: (string[]|null); + } + + /** Represents a ListMembershipsResponse. */ + class ListMembershipsResponse implements IListMembershipsResponse { + + /** + * Constructs a new ListMembershipsResponse. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.v1alpha2.IListMembershipsResponse); + + /** ListMembershipsResponse resources. */ + public resources: google.cloud.gkehub.v1alpha2.IMembership[]; + + /** ListMembershipsResponse nextPageToken. */ + public nextPageToken: string; + + /** ListMembershipsResponse unreachable. */ + public unreachable: string[]; + + /** + * Creates a new ListMembershipsResponse instance using the specified properties. + * @param [properties] Properties to set + * @returns ListMembershipsResponse instance + */ + public static create(properties?: google.cloud.gkehub.v1alpha2.IListMembershipsResponse): google.cloud.gkehub.v1alpha2.ListMembershipsResponse; + + /** + * Encodes the specified ListMembershipsResponse message. Does not implicitly {@link google.cloud.gkehub.v1alpha2.ListMembershipsResponse.verify|verify} messages. + * @param message ListMembershipsResponse message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.v1alpha2.IListMembershipsResponse, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified ListMembershipsResponse message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1alpha2.ListMembershipsResponse.verify|verify} messages. + * @param message ListMembershipsResponse message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.v1alpha2.IListMembershipsResponse, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a ListMembershipsResponse message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns ListMembershipsResponse + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.v1alpha2.ListMembershipsResponse; + + /** + * Decodes a ListMembershipsResponse message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns ListMembershipsResponse + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.v1alpha2.ListMembershipsResponse; + + /** + * Verifies a ListMembershipsResponse message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a ListMembershipsResponse message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns ListMembershipsResponse + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.v1alpha2.ListMembershipsResponse; + + /** + * Creates a plain object from a ListMembershipsResponse message. Also converts values to other types if specified. + * @param message ListMembershipsResponse + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.v1alpha2.ListMembershipsResponse, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this ListMembershipsResponse to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + + /** Properties of a GetMembershipRequest. */ + interface IGetMembershipRequest { + + /** GetMembershipRequest name */ + name?: (string|null); + } + + /** Represents a GetMembershipRequest. */ + class GetMembershipRequest implements IGetMembershipRequest { + + /** + * Constructs a new GetMembershipRequest. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.v1alpha2.IGetMembershipRequest); + + /** GetMembershipRequest name. */ + public name: string; + + /** + * Creates a new GetMembershipRequest instance using the specified properties. + * @param [properties] Properties to set + * @returns GetMembershipRequest instance + */ + public static create(properties?: google.cloud.gkehub.v1alpha2.IGetMembershipRequest): google.cloud.gkehub.v1alpha2.GetMembershipRequest; + + /** + * Encodes the specified GetMembershipRequest message. Does not implicitly {@link google.cloud.gkehub.v1alpha2.GetMembershipRequest.verify|verify} messages. + * @param message GetMembershipRequest message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.v1alpha2.IGetMembershipRequest, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified GetMembershipRequest message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1alpha2.GetMembershipRequest.verify|verify} messages. + * @param message GetMembershipRequest message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.v1alpha2.IGetMembershipRequest, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a GetMembershipRequest message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns GetMembershipRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.v1alpha2.GetMembershipRequest; + + /** + * Decodes a GetMembershipRequest message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns GetMembershipRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.v1alpha2.GetMembershipRequest; + + /** + * Verifies a GetMembershipRequest message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a GetMembershipRequest message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns GetMembershipRequest + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.v1alpha2.GetMembershipRequest; + + /** + * Creates a plain object from a GetMembershipRequest message. Also converts values to other types if specified. + * @param message GetMembershipRequest + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.v1alpha2.GetMembershipRequest, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this GetMembershipRequest to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + + /** Properties of a CreateMembershipRequest. */ + interface ICreateMembershipRequest { + + /** CreateMembershipRequest parent */ + parent?: (string|null); + + /** CreateMembershipRequest membershipId */ + membershipId?: (string|null); + + /** CreateMembershipRequest resource */ + resource?: (google.cloud.gkehub.v1alpha2.IMembership|null); + } + + /** Represents a CreateMembershipRequest. */ + class CreateMembershipRequest implements ICreateMembershipRequest { + + /** + * Constructs a new CreateMembershipRequest. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.v1alpha2.ICreateMembershipRequest); + + /** CreateMembershipRequest parent. */ + public parent: string; + + /** CreateMembershipRequest membershipId. */ + public membershipId: string; + + /** CreateMembershipRequest resource. */ + public resource?: (google.cloud.gkehub.v1alpha2.IMembership|null); + + /** + * Creates a new CreateMembershipRequest instance using the specified properties. + * @param [properties] Properties to set + * @returns CreateMembershipRequest instance + */ + public static create(properties?: google.cloud.gkehub.v1alpha2.ICreateMembershipRequest): google.cloud.gkehub.v1alpha2.CreateMembershipRequest; + + /** + * Encodes the specified CreateMembershipRequest message. Does not implicitly {@link google.cloud.gkehub.v1alpha2.CreateMembershipRequest.verify|verify} messages. + * @param message CreateMembershipRequest message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.v1alpha2.ICreateMembershipRequest, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified CreateMembershipRequest message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1alpha2.CreateMembershipRequest.verify|verify} messages. + * @param message CreateMembershipRequest message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.v1alpha2.ICreateMembershipRequest, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a CreateMembershipRequest message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns CreateMembershipRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.v1alpha2.CreateMembershipRequest; + + /** + * Decodes a CreateMembershipRequest message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns CreateMembershipRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.v1alpha2.CreateMembershipRequest; + + /** + * Verifies a CreateMembershipRequest message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a CreateMembershipRequest message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns CreateMembershipRequest + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.v1alpha2.CreateMembershipRequest; + + /** + * Creates a plain object from a CreateMembershipRequest message. Also converts values to other types if specified. + * @param message CreateMembershipRequest + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.v1alpha2.CreateMembershipRequest, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this CreateMembershipRequest to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + + /** Properties of a DeleteMembershipRequest. */ + interface IDeleteMembershipRequest { + + /** DeleteMembershipRequest name */ + name?: (string|null); + } + + /** Represents a DeleteMembershipRequest. */ + class DeleteMembershipRequest implements IDeleteMembershipRequest { + + /** + * Constructs a new DeleteMembershipRequest. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.v1alpha2.IDeleteMembershipRequest); + + /** DeleteMembershipRequest name. */ + public name: string; + + /** + * Creates a new DeleteMembershipRequest instance using the specified properties. + * @param [properties] Properties to set + * @returns DeleteMembershipRequest instance + */ + public static create(properties?: google.cloud.gkehub.v1alpha2.IDeleteMembershipRequest): google.cloud.gkehub.v1alpha2.DeleteMembershipRequest; + + /** + * Encodes the specified DeleteMembershipRequest message. Does not implicitly {@link google.cloud.gkehub.v1alpha2.DeleteMembershipRequest.verify|verify} messages. + * @param message DeleteMembershipRequest message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.v1alpha2.IDeleteMembershipRequest, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified DeleteMembershipRequest message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1alpha2.DeleteMembershipRequest.verify|verify} messages. + * @param message DeleteMembershipRequest message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.v1alpha2.IDeleteMembershipRequest, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a DeleteMembershipRequest message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns DeleteMembershipRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.v1alpha2.DeleteMembershipRequest; + + /** + * Decodes a DeleteMembershipRequest message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns DeleteMembershipRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.v1alpha2.DeleteMembershipRequest; + + /** + * Verifies a DeleteMembershipRequest message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a DeleteMembershipRequest message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns DeleteMembershipRequest + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.v1alpha2.DeleteMembershipRequest; + + /** + * Creates a plain object from a DeleteMembershipRequest message. Also converts values to other types if specified. + * @param message DeleteMembershipRequest + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.v1alpha2.DeleteMembershipRequest, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this DeleteMembershipRequest to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + + /** Properties of an UpdateMembershipRequest. */ + interface IUpdateMembershipRequest { + + /** UpdateMembershipRequest name */ + name?: (string|null); + + /** UpdateMembershipRequest updateMask */ + updateMask?: (google.protobuf.IFieldMask|null); + + /** UpdateMembershipRequest resource */ + resource?: (google.cloud.gkehub.v1alpha2.IMembership|null); + } + + /** Represents an UpdateMembershipRequest. */ + class UpdateMembershipRequest implements IUpdateMembershipRequest { + + /** + * Constructs a new UpdateMembershipRequest. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.v1alpha2.IUpdateMembershipRequest); + + /** UpdateMembershipRequest name. */ + public name: string; + + /** UpdateMembershipRequest updateMask. */ + public updateMask?: (google.protobuf.IFieldMask|null); + + /** UpdateMembershipRequest resource. */ + public resource?: (google.cloud.gkehub.v1alpha2.IMembership|null); + + /** + * Creates a new UpdateMembershipRequest instance using the specified properties. + * @param [properties] Properties to set + * @returns UpdateMembershipRequest instance + */ + public static create(properties?: google.cloud.gkehub.v1alpha2.IUpdateMembershipRequest): google.cloud.gkehub.v1alpha2.UpdateMembershipRequest; + + /** + * Encodes the specified UpdateMembershipRequest message. Does not implicitly {@link google.cloud.gkehub.v1alpha2.UpdateMembershipRequest.verify|verify} messages. + * @param message UpdateMembershipRequest message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.v1alpha2.IUpdateMembershipRequest, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified UpdateMembershipRequest message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1alpha2.UpdateMembershipRequest.verify|verify} messages. + * @param message UpdateMembershipRequest message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.v1alpha2.IUpdateMembershipRequest, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes an UpdateMembershipRequest message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns UpdateMembershipRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.v1alpha2.UpdateMembershipRequest; + + /** + * Decodes an UpdateMembershipRequest message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns UpdateMembershipRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.v1alpha2.UpdateMembershipRequest; + + /** + * Verifies an UpdateMembershipRequest message. + * @param message Plain 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 UpdateMembershipRequest message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns UpdateMembershipRequest + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.v1alpha2.UpdateMembershipRequest; + + /** + * Creates a plain object from an UpdateMembershipRequest message. Also converts values to other types if specified. + * @param message UpdateMembershipRequest + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.v1alpha2.UpdateMembershipRequest, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this UpdateMembershipRequest to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + + /** Properties of a GenerateConnectManifestRequest. */ + interface IGenerateConnectManifestRequest { + + /** GenerateConnectManifestRequest name */ + name?: (string|null); + + /** GenerateConnectManifestRequest namespace */ + namespace?: (string|null); + + /** GenerateConnectManifestRequest proxy */ + proxy?: (Uint8Array|string|null); + + /** GenerateConnectManifestRequest version */ + version?: (string|null); + + /** GenerateConnectManifestRequest isUpgrade */ + isUpgrade?: (boolean|null); + + /** GenerateConnectManifestRequest registry */ + registry?: (string|null); + + /** GenerateConnectManifestRequest imagePullSecretContent */ + imagePullSecretContent?: (Uint8Array|string|null); + } + + /** Represents a GenerateConnectManifestRequest. */ + class GenerateConnectManifestRequest implements IGenerateConnectManifestRequest { + + /** + * Constructs a new GenerateConnectManifestRequest. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.v1alpha2.IGenerateConnectManifestRequest); + + /** GenerateConnectManifestRequest name. */ + public name: string; + + /** GenerateConnectManifestRequest namespace. */ + public namespace: string; + + /** GenerateConnectManifestRequest proxy. */ + public proxy: (Uint8Array|string); + + /** GenerateConnectManifestRequest version. */ + public version: string; + + /** GenerateConnectManifestRequest isUpgrade. */ + public isUpgrade: boolean; + + /** GenerateConnectManifestRequest registry. */ + public registry: string; + + /** GenerateConnectManifestRequest imagePullSecretContent. */ + public imagePullSecretContent: (Uint8Array|string); + + /** + * Creates a new GenerateConnectManifestRequest instance using the specified properties. + * @param [properties] Properties to set + * @returns GenerateConnectManifestRequest instance + */ + public static create(properties?: google.cloud.gkehub.v1alpha2.IGenerateConnectManifestRequest): google.cloud.gkehub.v1alpha2.GenerateConnectManifestRequest; + + /** + * Encodes the specified GenerateConnectManifestRequest message. Does not implicitly {@link google.cloud.gkehub.v1alpha2.GenerateConnectManifestRequest.verify|verify} messages. + * @param message GenerateConnectManifestRequest message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.v1alpha2.IGenerateConnectManifestRequest, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified GenerateConnectManifestRequest message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1alpha2.GenerateConnectManifestRequest.verify|verify} messages. + * @param message GenerateConnectManifestRequest message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.v1alpha2.IGenerateConnectManifestRequest, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a GenerateConnectManifestRequest message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns GenerateConnectManifestRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.v1alpha2.GenerateConnectManifestRequest; + + /** + * Decodes a GenerateConnectManifestRequest message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns GenerateConnectManifestRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.v1alpha2.GenerateConnectManifestRequest; + + /** + * Verifies a GenerateConnectManifestRequest message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a GenerateConnectManifestRequest message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns GenerateConnectManifestRequest + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.v1alpha2.GenerateConnectManifestRequest; + + /** + * Creates a plain object from a GenerateConnectManifestRequest message. Also converts values to other types if specified. + * @param message GenerateConnectManifestRequest + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.v1alpha2.GenerateConnectManifestRequest, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this GenerateConnectManifestRequest to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + + /** Properties of a GenerateConnectManifestResponse. */ + interface IGenerateConnectManifestResponse { + + /** GenerateConnectManifestResponse manifest */ + manifest?: (google.cloud.gkehub.v1alpha2.IConnectAgentResource[]|null); + } + + /** Represents a GenerateConnectManifestResponse. */ + class GenerateConnectManifestResponse implements IGenerateConnectManifestResponse { + + /** + * Constructs a new GenerateConnectManifestResponse. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.v1alpha2.IGenerateConnectManifestResponse); + + /** GenerateConnectManifestResponse manifest. */ + public manifest: google.cloud.gkehub.v1alpha2.IConnectAgentResource[]; + + /** + * Creates a new GenerateConnectManifestResponse instance using the specified properties. + * @param [properties] Properties to set + * @returns GenerateConnectManifestResponse instance + */ + public static create(properties?: google.cloud.gkehub.v1alpha2.IGenerateConnectManifestResponse): google.cloud.gkehub.v1alpha2.GenerateConnectManifestResponse; + + /** + * Encodes the specified GenerateConnectManifestResponse message. Does not implicitly {@link google.cloud.gkehub.v1alpha2.GenerateConnectManifestResponse.verify|verify} messages. + * @param message GenerateConnectManifestResponse message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.v1alpha2.IGenerateConnectManifestResponse, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified GenerateConnectManifestResponse message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1alpha2.GenerateConnectManifestResponse.verify|verify} messages. + * @param message GenerateConnectManifestResponse message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.v1alpha2.IGenerateConnectManifestResponse, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a GenerateConnectManifestResponse message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns GenerateConnectManifestResponse + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.v1alpha2.GenerateConnectManifestResponse; + + /** + * Decodes a GenerateConnectManifestResponse message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns GenerateConnectManifestResponse + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.v1alpha2.GenerateConnectManifestResponse; + + /** + * Verifies a GenerateConnectManifestResponse message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a GenerateConnectManifestResponse message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns GenerateConnectManifestResponse + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.v1alpha2.GenerateConnectManifestResponse; + + /** + * Creates a plain object from a GenerateConnectManifestResponse message. Also converts values to other types if specified. + * @param message GenerateConnectManifestResponse + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.v1alpha2.GenerateConnectManifestResponse, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this GenerateConnectManifestResponse to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + + /** Properties of a ConnectAgentResource. */ + interface IConnectAgentResource { + + /** ConnectAgentResource type */ + type?: (google.cloud.gkehub.v1alpha2.ITypeMeta|null); + + /** ConnectAgentResource manifest */ + manifest?: (string|null); + } + + /** Represents a ConnectAgentResource. */ + class ConnectAgentResource implements IConnectAgentResource { + + /** + * Constructs a new ConnectAgentResource. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.v1alpha2.IConnectAgentResource); + + /** ConnectAgentResource type. */ + public type?: (google.cloud.gkehub.v1alpha2.ITypeMeta|null); + + /** ConnectAgentResource manifest. */ + public manifest: string; + + /** + * Creates a new ConnectAgentResource instance using the specified properties. + * @param [properties] Properties to set + * @returns ConnectAgentResource instance + */ + public static create(properties?: google.cloud.gkehub.v1alpha2.IConnectAgentResource): google.cloud.gkehub.v1alpha2.ConnectAgentResource; + + /** + * Encodes the specified ConnectAgentResource message. Does not implicitly {@link google.cloud.gkehub.v1alpha2.ConnectAgentResource.verify|verify} messages. + * @param message ConnectAgentResource message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.v1alpha2.IConnectAgentResource, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified ConnectAgentResource message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1alpha2.ConnectAgentResource.verify|verify} messages. + * @param message ConnectAgentResource message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.v1alpha2.IConnectAgentResource, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a ConnectAgentResource message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns ConnectAgentResource + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.v1alpha2.ConnectAgentResource; + + /** + * Decodes a ConnectAgentResource message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns ConnectAgentResource + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.v1alpha2.ConnectAgentResource; + + /** + * Verifies a ConnectAgentResource message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a ConnectAgentResource message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns ConnectAgentResource + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.v1alpha2.ConnectAgentResource; + + /** + * Creates a plain object from a ConnectAgentResource message. Also converts values to other types if specified. + * @param message ConnectAgentResource + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.v1alpha2.ConnectAgentResource, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this ConnectAgentResource to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + + /** Properties of a ResourceManifest. */ + interface IResourceManifest { + + /** ResourceManifest manifest */ + manifest?: (string|null); + + /** ResourceManifest clusterScoped */ + clusterScoped?: (boolean|null); + } + + /** Represents a ResourceManifest. */ + class ResourceManifest implements IResourceManifest { + + /** + * Constructs a new ResourceManifest. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.v1alpha2.IResourceManifest); + + /** ResourceManifest manifest. */ + public manifest: string; + + /** ResourceManifest clusterScoped. */ + public clusterScoped: boolean; + + /** + * Creates a new ResourceManifest instance using the specified properties. + * @param [properties] Properties to set + * @returns ResourceManifest instance + */ + public static create(properties?: google.cloud.gkehub.v1alpha2.IResourceManifest): google.cloud.gkehub.v1alpha2.ResourceManifest; + + /** + * Encodes the specified ResourceManifest message. Does not implicitly {@link google.cloud.gkehub.v1alpha2.ResourceManifest.verify|verify} messages. + * @param message ResourceManifest message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.v1alpha2.IResourceManifest, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified ResourceManifest message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1alpha2.ResourceManifest.verify|verify} messages. + * @param message ResourceManifest message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.v1alpha2.IResourceManifest, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a ResourceManifest message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns ResourceManifest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.v1alpha2.ResourceManifest; + + /** + * Decodes a ResourceManifest message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns ResourceManifest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.v1alpha2.ResourceManifest; + + /** + * Verifies a ResourceManifest message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a ResourceManifest message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns ResourceManifest + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.v1alpha2.ResourceManifest; + + /** + * Creates a plain object from a ResourceManifest message. Also converts values to other types if specified. + * @param message ResourceManifest + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.v1alpha2.ResourceManifest, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this ResourceManifest to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + + /** Properties of a TypeMeta. */ + interface ITypeMeta { + + /** TypeMeta kind */ + kind?: (string|null); + + /** TypeMeta apiVersion */ + apiVersion?: (string|null); + } + + /** Represents a TypeMeta. */ + class TypeMeta implements ITypeMeta { + + /** + * Constructs a new TypeMeta. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.v1alpha2.ITypeMeta); + + /** TypeMeta kind. */ + public kind: string; + + /** TypeMeta apiVersion. */ + public apiVersion: string; + + /** + * Creates a new TypeMeta instance using the specified properties. + * @param [properties] Properties to set + * @returns TypeMeta instance + */ + public static create(properties?: google.cloud.gkehub.v1alpha2.ITypeMeta): google.cloud.gkehub.v1alpha2.TypeMeta; + + /** + * Encodes the specified TypeMeta message. Does not implicitly {@link google.cloud.gkehub.v1alpha2.TypeMeta.verify|verify} messages. + * @param message TypeMeta message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.v1alpha2.ITypeMeta, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified TypeMeta message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1alpha2.TypeMeta.verify|verify} messages. + * @param message TypeMeta message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.v1alpha2.ITypeMeta, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a TypeMeta message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns TypeMeta + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.v1alpha2.TypeMeta; + + /** + * Decodes a TypeMeta message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns TypeMeta + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.v1alpha2.TypeMeta; + + /** + * Verifies a TypeMeta message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a TypeMeta message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns TypeMeta + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.v1alpha2.TypeMeta; + + /** + * Creates a plain object from a TypeMeta message. Also converts values to other types if specified. + * @param message TypeMeta + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.v1alpha2.TypeMeta, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this TypeMeta to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + + /** Properties of an InitializeHubRequest. */ + interface IInitializeHubRequest { + + /** InitializeHubRequest project */ + project?: (string|null); + } + + /** Represents an InitializeHubRequest. */ + class InitializeHubRequest implements IInitializeHubRequest { + + /** + * Constructs a new InitializeHubRequest. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.v1alpha2.IInitializeHubRequest); + + /** InitializeHubRequest project. */ + public project: string; + + /** + * Creates a new InitializeHubRequest instance using the specified properties. + * @param [properties] Properties to set + * @returns InitializeHubRequest instance + */ + public static create(properties?: google.cloud.gkehub.v1alpha2.IInitializeHubRequest): google.cloud.gkehub.v1alpha2.InitializeHubRequest; + + /** + * Encodes the specified InitializeHubRequest message. Does not implicitly {@link google.cloud.gkehub.v1alpha2.InitializeHubRequest.verify|verify} messages. + * @param message InitializeHubRequest message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.v1alpha2.IInitializeHubRequest, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified InitializeHubRequest message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1alpha2.InitializeHubRequest.verify|verify} messages. + * @param message InitializeHubRequest message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.v1alpha2.IInitializeHubRequest, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes an InitializeHubRequest message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns InitializeHubRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.v1alpha2.InitializeHubRequest; + + /** + * Decodes an InitializeHubRequest message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns InitializeHubRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.v1alpha2.InitializeHubRequest; + + /** + * Verifies an InitializeHubRequest message. + * @param message Plain 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 InitializeHubRequest message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns InitializeHubRequest + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.v1alpha2.InitializeHubRequest; + + /** + * Creates a plain object from an InitializeHubRequest message. Also converts values to other types if specified. + * @param message InitializeHubRequest + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.v1alpha2.InitializeHubRequest, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this InitializeHubRequest to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + + /** Properties of an InitializeHubResponse. */ + interface IInitializeHubResponse { + + /** InitializeHubResponse serviceIdentity */ + serviceIdentity?: (string|null); + + /** InitializeHubResponse workloadIdentityPool */ + workloadIdentityPool?: (string|null); + } + + /** Represents an InitializeHubResponse. */ + class InitializeHubResponse implements IInitializeHubResponse { + + /** + * Constructs a new InitializeHubResponse. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.v1alpha2.IInitializeHubResponse); + + /** InitializeHubResponse serviceIdentity. */ + public serviceIdentity: string; + + /** InitializeHubResponse workloadIdentityPool. */ + public workloadIdentityPool: string; + + /** + * Creates a new InitializeHubResponse instance using the specified properties. + * @param [properties] Properties to set + * @returns InitializeHubResponse instance + */ + public static create(properties?: google.cloud.gkehub.v1alpha2.IInitializeHubResponse): google.cloud.gkehub.v1alpha2.InitializeHubResponse; + + /** + * Encodes the specified InitializeHubResponse message. Does not implicitly {@link google.cloud.gkehub.v1alpha2.InitializeHubResponse.verify|verify} messages. + * @param message InitializeHubResponse message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.v1alpha2.IInitializeHubResponse, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified InitializeHubResponse message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1alpha2.InitializeHubResponse.verify|verify} messages. + * @param message InitializeHubResponse message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.v1alpha2.IInitializeHubResponse, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes an InitializeHubResponse message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns InitializeHubResponse + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.v1alpha2.InitializeHubResponse; + + /** + * Decodes an InitializeHubResponse message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns InitializeHubResponse + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.v1alpha2.InitializeHubResponse; + + /** + * Verifies an InitializeHubResponse message. + * @param message Plain 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 InitializeHubResponse message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns InitializeHubResponse + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.v1alpha2.InitializeHubResponse; + + /** + * Creates a plain object from an InitializeHubResponse message. Also converts values to other types if specified. + * @param message InitializeHubResponse + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.v1alpha2.InitializeHubResponse, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this InitializeHubResponse to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + + /** Properties of an OperationMetadata. */ + interface IOperationMetadata { + + /** OperationMetadata createTime */ + createTime?: (google.protobuf.ITimestamp|null); + + /** OperationMetadata endTime */ + endTime?: (google.protobuf.ITimestamp|null); + + /** OperationMetadata target */ + target?: (string|null); + + /** OperationMetadata verb */ + verb?: (string|null); + + /** OperationMetadata statusDetail */ + statusDetail?: (string|null); + + /** OperationMetadata cancelRequested */ + cancelRequested?: (boolean|null); + + /** OperationMetadata apiVersion */ + apiVersion?: (string|null); + } + + /** Represents an OperationMetadata. */ + class OperationMetadata implements IOperationMetadata { + + /** + * Constructs a new OperationMetadata. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.v1alpha2.IOperationMetadata); + + /** OperationMetadata createTime. */ + public createTime?: (google.protobuf.ITimestamp|null); + + /** OperationMetadata endTime. */ + public endTime?: (google.protobuf.ITimestamp|null); + + /** OperationMetadata target. */ + public target: string; + + /** OperationMetadata verb. */ + public verb: string; + + /** OperationMetadata statusDetail. */ + public statusDetail: string; + + /** OperationMetadata cancelRequested. */ + public cancelRequested: boolean; + + /** OperationMetadata apiVersion. */ + public apiVersion: string; + + /** + * Creates a new OperationMetadata instance using the specified properties. + * @param [properties] Properties to set + * @returns OperationMetadata instance + */ + public static create(properties?: google.cloud.gkehub.v1alpha2.IOperationMetadata): google.cloud.gkehub.v1alpha2.OperationMetadata; + + /** + * Encodes the specified OperationMetadata message. Does not implicitly {@link google.cloud.gkehub.v1alpha2.OperationMetadata.verify|verify} messages. + * @param message OperationMetadata message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.v1alpha2.IOperationMetadata, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified OperationMetadata message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1alpha2.OperationMetadata.verify|verify} messages. + * @param message OperationMetadata message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.v1alpha2.IOperationMetadata, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes an OperationMetadata message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns OperationMetadata + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.v1alpha2.OperationMetadata; + + /** + * Decodes an OperationMetadata message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns OperationMetadata + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.v1alpha2.OperationMetadata; + + /** + * Verifies an OperationMetadata message. + * @param message Plain 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 OperationMetadata message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns OperationMetadata + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.v1alpha2.OperationMetadata; + + /** + * Creates a plain object from an OperationMetadata message. Also converts values to other types if specified. + * @param message OperationMetadata + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.v1alpha2.OperationMetadata, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this OperationMetadata to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + } + + /** Namespace v1beta. */ + namespace v1beta { + + /** Properties of a Feature. */ + interface IFeature { + + /** Feature name */ + name?: (string|null); + + /** Feature labels */ + labels?: ({ [k: string]: string }|null); + + /** Feature resourceState */ + resourceState?: (google.cloud.gkehub.v1beta.IFeatureResourceState|null); + + /** Feature spec */ + spec?: (google.cloud.gkehub.v1beta.ICommonFeatureSpec|null); + + /** Feature membershipSpecs */ + membershipSpecs?: ({ [k: string]: google.cloud.gkehub.v1beta.IMembershipFeatureSpec }|null); + + /** Feature state */ + state?: (google.cloud.gkehub.v1beta.ICommonFeatureState|null); + + /** Feature membershipStates */ + membershipStates?: ({ [k: string]: google.cloud.gkehub.v1beta.IMembershipFeatureState }|null); + + /** Feature createTime */ + createTime?: (google.protobuf.ITimestamp|null); + + /** Feature updateTime */ + updateTime?: (google.protobuf.ITimestamp|null); + + /** Feature deleteTime */ + deleteTime?: (google.protobuf.ITimestamp|null); + } + + /** Represents a Feature. */ + class Feature implements IFeature { + + /** + * Constructs a new Feature. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.v1beta.IFeature); + + /** Feature name. */ + public name: string; + + /** Feature labels. */ + public labels: { [k: string]: string }; + + /** Feature resourceState. */ + public resourceState?: (google.cloud.gkehub.v1beta.IFeatureResourceState|null); + + /** Feature spec. */ + public spec?: (google.cloud.gkehub.v1beta.ICommonFeatureSpec|null); + + /** Feature membershipSpecs. */ + public membershipSpecs: { [k: string]: google.cloud.gkehub.v1beta.IMembershipFeatureSpec }; + + /** Feature state. */ + public state?: (google.cloud.gkehub.v1beta.ICommonFeatureState|null); + + /** Feature membershipStates. */ + public membershipStates: { [k: string]: google.cloud.gkehub.v1beta.IMembershipFeatureState }; + + /** Feature createTime. */ + public createTime?: (google.protobuf.ITimestamp|null); + + /** Feature updateTime. */ + public updateTime?: (google.protobuf.ITimestamp|null); + + /** Feature deleteTime. */ + public deleteTime?: (google.protobuf.ITimestamp|null); + + /** + * Creates a new Feature instance using the specified properties. + * @param [properties] Properties to set + * @returns Feature instance + */ + public static create(properties?: google.cloud.gkehub.v1beta.IFeature): google.cloud.gkehub.v1beta.Feature; + + /** + * Encodes the specified Feature message. Does not implicitly {@link google.cloud.gkehub.v1beta.Feature.verify|verify} messages. + * @param message Feature message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.v1beta.IFeature, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified Feature message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta.Feature.verify|verify} messages. + * @param message Feature message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.v1beta.IFeature, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a Feature message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns Feature + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.v1beta.Feature; + + /** + * Decodes a Feature message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns Feature + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.v1beta.Feature; + + /** + * Verifies a Feature message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a Feature message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns Feature + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.v1beta.Feature; + + /** + * Creates a plain object from a Feature message. Also converts values to other types if specified. + * @param message Feature + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.v1beta.Feature, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this Feature to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + + /** Properties of a FeatureResourceState. */ + interface IFeatureResourceState { + + /** FeatureResourceState state */ + state?: (google.cloud.gkehub.v1beta.FeatureResourceState.State|keyof typeof google.cloud.gkehub.v1beta.FeatureResourceState.State|null); + } + + /** Represents a FeatureResourceState. */ + class FeatureResourceState implements IFeatureResourceState { + + /** + * Constructs a new FeatureResourceState. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.v1beta.IFeatureResourceState); + + /** FeatureResourceState state. */ + public state: (google.cloud.gkehub.v1beta.FeatureResourceState.State|keyof typeof google.cloud.gkehub.v1beta.FeatureResourceState.State); + + /** + * Creates a new FeatureResourceState instance using the specified properties. + * @param [properties] Properties to set + * @returns FeatureResourceState instance + */ + public static create(properties?: google.cloud.gkehub.v1beta.IFeatureResourceState): google.cloud.gkehub.v1beta.FeatureResourceState; + + /** + * Encodes the specified FeatureResourceState message. Does not implicitly {@link google.cloud.gkehub.v1beta.FeatureResourceState.verify|verify} messages. + * @param message FeatureResourceState message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.v1beta.IFeatureResourceState, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified FeatureResourceState message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta.FeatureResourceState.verify|verify} messages. + * @param message FeatureResourceState message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.v1beta.IFeatureResourceState, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a FeatureResourceState message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns FeatureResourceState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.v1beta.FeatureResourceState; + + /** + * Decodes a FeatureResourceState message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns FeatureResourceState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.v1beta.FeatureResourceState; + + /** + * Verifies a FeatureResourceState message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a FeatureResourceState message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns FeatureResourceState + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.v1beta.FeatureResourceState; + + /** + * Creates a plain object from a FeatureResourceState message. Also converts values to other types if specified. + * @param message FeatureResourceState + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.v1beta.FeatureResourceState, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this FeatureResourceState to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + + namespace FeatureResourceState { + + /** State enum. */ + enum State { + STATE_UNSPECIFIED = 0, + ENABLING = 1, + ACTIVE = 2, + DISABLING = 3, + UPDATING = 4, + SERVICE_UPDATING = 5 + } + } + + /** Properties of a FeatureState. */ + interface IFeatureState { + + /** FeatureState code */ + code?: (google.cloud.gkehub.v1beta.FeatureState.Code|keyof typeof google.cloud.gkehub.v1beta.FeatureState.Code|null); + + /** FeatureState description */ + description?: (string|null); + + /** FeatureState updateTime */ + updateTime?: (google.protobuf.ITimestamp|null); + } + + /** Represents a FeatureState. */ + class FeatureState implements IFeatureState { + + /** + * Constructs a new FeatureState. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.v1beta.IFeatureState); + + /** FeatureState code. */ + public code: (google.cloud.gkehub.v1beta.FeatureState.Code|keyof typeof google.cloud.gkehub.v1beta.FeatureState.Code); + + /** FeatureState description. */ + public description: string; + + /** FeatureState updateTime. */ + public updateTime?: (google.protobuf.ITimestamp|null); + + /** + * Creates a new FeatureState instance using the specified properties. + * @param [properties] Properties to set + * @returns FeatureState instance + */ + public static create(properties?: google.cloud.gkehub.v1beta.IFeatureState): google.cloud.gkehub.v1beta.FeatureState; + + /** + * Encodes the specified FeatureState message. Does not implicitly {@link google.cloud.gkehub.v1beta.FeatureState.verify|verify} messages. + * @param message FeatureState message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.v1beta.IFeatureState, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified FeatureState message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta.FeatureState.verify|verify} messages. + * @param message FeatureState message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.v1beta.IFeatureState, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a FeatureState message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns FeatureState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.v1beta.FeatureState; + + /** + * Decodes a FeatureState message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns FeatureState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.v1beta.FeatureState; + + /** + * Verifies a FeatureState message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a FeatureState message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns FeatureState + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.v1beta.FeatureState; + + /** + * Creates a plain object from a FeatureState message. Also converts values to other types if specified. + * @param message FeatureState + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.v1beta.FeatureState, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this FeatureState to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + + namespace FeatureState { + + /** Code enum. */ + enum Code { + CODE_UNSPECIFIED = 0, + OK = 1, + WARNING = 2, + ERROR = 3 + } + } + + /** Properties of a CommonFeatureSpec. */ + interface ICommonFeatureSpec { + + /** CommonFeatureSpec multiclusteringress */ + multiclusteringress?: (google.cloud.gkehub.multiclusteringress.v1beta.IFeatureSpec|null); + } + + /** Represents a CommonFeatureSpec. */ + class CommonFeatureSpec implements ICommonFeatureSpec { + + /** + * Constructs a new CommonFeatureSpec. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.v1beta.ICommonFeatureSpec); + + /** CommonFeatureSpec multiclusteringress. */ + public multiclusteringress?: (google.cloud.gkehub.multiclusteringress.v1beta.IFeatureSpec|null); + + /** CommonFeatureSpec featureSpec. */ + public featureSpec?: "multiclusteringress"; + + /** + * Creates a new CommonFeatureSpec instance using the specified properties. + * @param [properties] Properties to set + * @returns CommonFeatureSpec instance + */ + public static create(properties?: google.cloud.gkehub.v1beta.ICommonFeatureSpec): google.cloud.gkehub.v1beta.CommonFeatureSpec; + + /** + * Encodes the specified CommonFeatureSpec message. Does not implicitly {@link google.cloud.gkehub.v1beta.CommonFeatureSpec.verify|verify} messages. + * @param message CommonFeatureSpec message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.v1beta.ICommonFeatureSpec, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified CommonFeatureSpec message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta.CommonFeatureSpec.verify|verify} messages. + * @param message CommonFeatureSpec message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.v1beta.ICommonFeatureSpec, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a CommonFeatureSpec message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns CommonFeatureSpec + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.v1beta.CommonFeatureSpec; + + /** + * Decodes a CommonFeatureSpec message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns CommonFeatureSpec + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.v1beta.CommonFeatureSpec; + + /** + * Verifies a CommonFeatureSpec message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a CommonFeatureSpec message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns CommonFeatureSpec + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.v1beta.CommonFeatureSpec; + + /** + * Creates a plain object from a CommonFeatureSpec message. Also converts values to other types if specified. + * @param message CommonFeatureSpec + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.v1beta.CommonFeatureSpec, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this CommonFeatureSpec to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + + /** Properties of a CommonFeatureState. */ + interface ICommonFeatureState { + + /** CommonFeatureState state */ + state?: (google.cloud.gkehub.v1beta.IFeatureState|null); + } + + /** Represents a CommonFeatureState. */ + class CommonFeatureState implements ICommonFeatureState { + + /** + * Constructs a new CommonFeatureState. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.v1beta.ICommonFeatureState); + + /** CommonFeatureState state. */ + public state?: (google.cloud.gkehub.v1beta.IFeatureState|null); + + /** + * Creates a new CommonFeatureState instance using the specified properties. + * @param [properties] Properties to set + * @returns CommonFeatureState instance + */ + public static create(properties?: google.cloud.gkehub.v1beta.ICommonFeatureState): google.cloud.gkehub.v1beta.CommonFeatureState; + + /** + * Encodes the specified CommonFeatureState message. Does not implicitly {@link google.cloud.gkehub.v1beta.CommonFeatureState.verify|verify} messages. + * @param message CommonFeatureState message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.v1beta.ICommonFeatureState, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified CommonFeatureState message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta.CommonFeatureState.verify|verify} messages. + * @param message CommonFeatureState message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.v1beta.ICommonFeatureState, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a CommonFeatureState message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns CommonFeatureState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.v1beta.CommonFeatureState; + + /** + * Decodes a CommonFeatureState message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns CommonFeatureState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.v1beta.CommonFeatureState; + + /** + * Verifies a CommonFeatureState message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a CommonFeatureState message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns CommonFeatureState + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.v1beta.CommonFeatureState; + + /** + * Creates a plain object from a CommonFeatureState message. Also converts values to other types if specified. + * @param message CommonFeatureState + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.v1beta.CommonFeatureState, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this CommonFeatureState to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + + /** Properties of a MembershipFeatureSpec. */ + interface IMembershipFeatureSpec { + + /** MembershipFeatureSpec configmanagement */ + configmanagement?: (google.cloud.gkehub.configmanagement.v1beta.IMembershipSpec|null); + } + + /** Represents a MembershipFeatureSpec. */ + class MembershipFeatureSpec implements IMembershipFeatureSpec { + + /** + * Constructs a new MembershipFeatureSpec. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.v1beta.IMembershipFeatureSpec); + + /** MembershipFeatureSpec configmanagement. */ + public configmanagement?: (google.cloud.gkehub.configmanagement.v1beta.IMembershipSpec|null); + + /** MembershipFeatureSpec featureSpec. */ + public featureSpec?: "configmanagement"; + + /** + * Creates a new MembershipFeatureSpec instance using the specified properties. + * @param [properties] Properties to set + * @returns MembershipFeatureSpec instance + */ + public static create(properties?: google.cloud.gkehub.v1beta.IMembershipFeatureSpec): google.cloud.gkehub.v1beta.MembershipFeatureSpec; + + /** + * Encodes the specified MembershipFeatureSpec message. Does not implicitly {@link google.cloud.gkehub.v1beta.MembershipFeatureSpec.verify|verify} messages. + * @param message MembershipFeatureSpec message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.v1beta.IMembershipFeatureSpec, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified MembershipFeatureSpec message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta.MembershipFeatureSpec.verify|verify} messages. + * @param message MembershipFeatureSpec message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.v1beta.IMembershipFeatureSpec, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a MembershipFeatureSpec message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns MembershipFeatureSpec + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.v1beta.MembershipFeatureSpec; + + /** + * Decodes a MembershipFeatureSpec message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns MembershipFeatureSpec + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.v1beta.MembershipFeatureSpec; + + /** + * Verifies a MembershipFeatureSpec message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a MembershipFeatureSpec message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns MembershipFeatureSpec + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.v1beta.MembershipFeatureSpec; + + /** + * Creates a plain object from a MembershipFeatureSpec message. Also converts values to other types if specified. + * @param message MembershipFeatureSpec + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.v1beta.MembershipFeatureSpec, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this MembershipFeatureSpec to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + + /** Properties of a MembershipFeatureState. */ + interface IMembershipFeatureState { + + /** MembershipFeatureState metering */ + metering?: (google.cloud.gkehub.metering.v1beta.IMembershipState|null); + + /** MembershipFeatureState configmanagement */ + configmanagement?: (google.cloud.gkehub.configmanagement.v1beta.IMembershipState|null); + + /** MembershipFeatureState state */ + state?: (google.cloud.gkehub.v1beta.IFeatureState|null); + } + + /** Represents a MembershipFeatureState. */ + class MembershipFeatureState implements IMembershipFeatureState { + + /** + * Constructs a new MembershipFeatureState. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.v1beta.IMembershipFeatureState); + + /** MembershipFeatureState metering. */ + public metering?: (google.cloud.gkehub.metering.v1beta.IMembershipState|null); + + /** MembershipFeatureState configmanagement. */ + public configmanagement?: (google.cloud.gkehub.configmanagement.v1beta.IMembershipState|null); + + /** MembershipFeatureState state. */ + public state?: (google.cloud.gkehub.v1beta.IFeatureState|null); + + /** MembershipFeatureState featureState. */ + public featureState?: ("metering"|"configmanagement"); + + /** + * Creates a new MembershipFeatureState instance using the specified properties. + * @param [properties] Properties to set + * @returns MembershipFeatureState instance + */ + public static create(properties?: google.cloud.gkehub.v1beta.IMembershipFeatureState): google.cloud.gkehub.v1beta.MembershipFeatureState; + + /** + * Encodes the specified MembershipFeatureState message. Does not implicitly {@link google.cloud.gkehub.v1beta.MembershipFeatureState.verify|verify} messages. + * @param message MembershipFeatureState message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.v1beta.IMembershipFeatureState, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified MembershipFeatureState message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta.MembershipFeatureState.verify|verify} messages. + * @param message MembershipFeatureState message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.v1beta.IMembershipFeatureState, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a MembershipFeatureState message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns MembershipFeatureState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.v1beta.MembershipFeatureState; + + /** + * Decodes a MembershipFeatureState message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns MembershipFeatureState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.v1beta.MembershipFeatureState; + + /** + * Verifies a MembershipFeatureState message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a MembershipFeatureState message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns MembershipFeatureState + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.v1beta.MembershipFeatureState; + + /** + * Creates a plain object from a MembershipFeatureState message. Also converts values to other types if specified. + * @param message MembershipFeatureState + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.v1beta.MembershipFeatureState, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this MembershipFeatureState to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + + /** Represents a GkeHub */ + class GkeHub extends $protobuf.rpc.Service { + + /** + * Constructs a new GkeHub 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 GkeHub 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): GkeHub; + + /** + * Calls ListFeatures. + * @param request ListFeaturesRequest message or plain object + * @param callback Node-style callback called with the error, if any, and ListFeaturesResponse + */ + public listFeatures(request: google.cloud.gkehub.v1beta.IListFeaturesRequest, callback: google.cloud.gkehub.v1beta.GkeHub.ListFeaturesCallback): void; + + /** + * Calls ListFeatures. + * @param request ListFeaturesRequest message or plain object + * @returns Promise + */ + public listFeatures(request: google.cloud.gkehub.v1beta.IListFeaturesRequest): Promise; + + /** + * Calls GetFeature. + * @param request GetFeatureRequest message or plain object + * @param callback Node-style callback called with the error, if any, and Feature + */ + public getFeature(request: google.cloud.gkehub.v1beta.IGetFeatureRequest, callback: google.cloud.gkehub.v1beta.GkeHub.GetFeatureCallback): void; + + /** + * Calls GetFeature. + * @param request GetFeatureRequest message or plain object + * @returns Promise + */ + public getFeature(request: google.cloud.gkehub.v1beta.IGetFeatureRequest): Promise; + + /** + * Calls CreateFeature. + * @param request CreateFeatureRequest message or plain object + * @param callback Node-style callback called with the error, if any, and Operation + */ + public createFeature(request: google.cloud.gkehub.v1beta.ICreateFeatureRequest, callback: google.cloud.gkehub.v1beta.GkeHub.CreateFeatureCallback): void; + + /** + * Calls CreateFeature. + * @param request CreateFeatureRequest message or plain object + * @returns Promise + */ + public createFeature(request: google.cloud.gkehub.v1beta.ICreateFeatureRequest): Promise; + + /** + * Calls DeleteFeature. + * @param request DeleteFeatureRequest message or plain object + * @param callback Node-style callback called with the error, if any, and Operation + */ + public deleteFeature(request: google.cloud.gkehub.v1beta.IDeleteFeatureRequest, callback: google.cloud.gkehub.v1beta.GkeHub.DeleteFeatureCallback): void; + + /** + * Calls DeleteFeature. + * @param request DeleteFeatureRequest message or plain object + * @returns Promise + */ + public deleteFeature(request: google.cloud.gkehub.v1beta.IDeleteFeatureRequest): Promise; + + /** + * Calls UpdateFeature. + * @param request UpdateFeatureRequest message or plain object + * @param callback Node-style callback called with the error, if any, and Operation + */ + public updateFeature(request: google.cloud.gkehub.v1beta.IUpdateFeatureRequest, callback: google.cloud.gkehub.v1beta.GkeHub.UpdateFeatureCallback): void; + + /** + * Calls UpdateFeature. + * @param request UpdateFeatureRequest message or plain object + * @returns Promise + */ + public updateFeature(request: google.cloud.gkehub.v1beta.IUpdateFeatureRequest): Promise; + } + + namespace GkeHub { + + /** + * Callback as used by {@link google.cloud.gkehub.v1beta.GkeHub#listFeatures}. + * @param error Error, if any + * @param [response] ListFeaturesResponse + */ + type ListFeaturesCallback = (error: (Error|null), response?: google.cloud.gkehub.v1beta.ListFeaturesResponse) => void; + + /** + * Callback as used by {@link google.cloud.gkehub.v1beta.GkeHub#getFeature}. + * @param error Error, if any + * @param [response] Feature + */ + type GetFeatureCallback = (error: (Error|null), response?: google.cloud.gkehub.v1beta.Feature) => void; + + /** + * Callback as used by {@link google.cloud.gkehub.v1beta.GkeHub#createFeature}. + * @param error Error, if any + * @param [response] Operation + */ + type CreateFeatureCallback = (error: (Error|null), response?: google.longrunning.Operation) => void; + + /** + * Callback as used by {@link google.cloud.gkehub.v1beta.GkeHub#deleteFeature}. + * @param error Error, if any + * @param [response] Operation + */ + type DeleteFeatureCallback = (error: (Error|null), response?: google.longrunning.Operation) => void; + + /** + * Callback as used by {@link google.cloud.gkehub.v1beta.GkeHub#updateFeature}. + * @param error Error, if any + * @param [response] Operation + */ + type UpdateFeatureCallback = (error: (Error|null), response?: google.longrunning.Operation) => void; + } + + /** Properties of a ListFeaturesRequest. */ + interface IListFeaturesRequest { + + /** ListFeaturesRequest parent */ + parent?: (string|null); + + /** ListFeaturesRequest pageSize */ + pageSize?: (number|null); + + /** ListFeaturesRequest pageToken */ + pageToken?: (string|null); + + /** ListFeaturesRequest filter */ + filter?: (string|null); + + /** ListFeaturesRequest orderBy */ + orderBy?: (string|null); + } + + /** Represents a ListFeaturesRequest. */ + class ListFeaturesRequest implements IListFeaturesRequest { + + /** + * Constructs a new ListFeaturesRequest. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.v1beta.IListFeaturesRequest); + + /** ListFeaturesRequest parent. */ + public parent: string; + + /** ListFeaturesRequest pageSize. */ + public pageSize: number; + + /** ListFeaturesRequest pageToken. */ + public pageToken: string; + + /** ListFeaturesRequest filter. */ + public filter: string; + + /** ListFeaturesRequest orderBy. */ + public orderBy: string; + + /** + * Creates a new ListFeaturesRequest instance using the specified properties. + * @param [properties] Properties to set + * @returns ListFeaturesRequest instance + */ + public static create(properties?: google.cloud.gkehub.v1beta.IListFeaturesRequest): google.cloud.gkehub.v1beta.ListFeaturesRequest; + + /** + * Encodes the specified ListFeaturesRequest message. Does not implicitly {@link google.cloud.gkehub.v1beta.ListFeaturesRequest.verify|verify} messages. + * @param message ListFeaturesRequest message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.v1beta.IListFeaturesRequest, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified ListFeaturesRequest message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta.ListFeaturesRequest.verify|verify} messages. + * @param message ListFeaturesRequest message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.v1beta.IListFeaturesRequest, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a ListFeaturesRequest message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns ListFeaturesRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.v1beta.ListFeaturesRequest; + + /** + * Decodes a ListFeaturesRequest message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns ListFeaturesRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.v1beta.ListFeaturesRequest; + + /** + * Verifies a ListFeaturesRequest message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a ListFeaturesRequest message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns ListFeaturesRequest + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.v1beta.ListFeaturesRequest; + + /** + * Creates a plain object from a ListFeaturesRequest message. Also converts values to other types if specified. + * @param message ListFeaturesRequest + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.v1beta.ListFeaturesRequest, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this ListFeaturesRequest to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + + /** Properties of a ListFeaturesResponse. */ + interface IListFeaturesResponse { + + /** ListFeaturesResponse resources */ + resources?: (google.cloud.gkehub.v1beta.IFeature[]|null); + + /** ListFeaturesResponse nextPageToken */ + nextPageToken?: (string|null); + } + + /** Represents a ListFeaturesResponse. */ + class ListFeaturesResponse implements IListFeaturesResponse { + + /** + * Constructs a new ListFeaturesResponse. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.v1beta.IListFeaturesResponse); + + /** ListFeaturesResponse resources. */ + public resources: google.cloud.gkehub.v1beta.IFeature[]; + + /** ListFeaturesResponse nextPageToken. */ + public nextPageToken: string; + + /** + * Creates a new ListFeaturesResponse instance using the specified properties. + * @param [properties] Properties to set + * @returns ListFeaturesResponse instance + */ + public static create(properties?: google.cloud.gkehub.v1beta.IListFeaturesResponse): google.cloud.gkehub.v1beta.ListFeaturesResponse; + + /** + * Encodes the specified ListFeaturesResponse message. Does not implicitly {@link google.cloud.gkehub.v1beta.ListFeaturesResponse.verify|verify} messages. + * @param message ListFeaturesResponse message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.v1beta.IListFeaturesResponse, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified ListFeaturesResponse message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta.ListFeaturesResponse.verify|verify} messages. + * @param message ListFeaturesResponse message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.v1beta.IListFeaturesResponse, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a ListFeaturesResponse message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns ListFeaturesResponse + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.v1beta.ListFeaturesResponse; + + /** + * Decodes a ListFeaturesResponse message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns ListFeaturesResponse + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.v1beta.ListFeaturesResponse; + + /** + * Verifies a ListFeaturesResponse message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a ListFeaturesResponse message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns ListFeaturesResponse + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.v1beta.ListFeaturesResponse; + + /** + * Creates a plain object from a ListFeaturesResponse message. Also converts values to other types if specified. + * @param message ListFeaturesResponse + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.v1beta.ListFeaturesResponse, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this ListFeaturesResponse to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + + /** Properties of a GetFeatureRequest. */ + interface IGetFeatureRequest { + + /** GetFeatureRequest name */ + name?: (string|null); + } + + /** Represents a GetFeatureRequest. */ + class GetFeatureRequest implements IGetFeatureRequest { + + /** + * Constructs a new GetFeatureRequest. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.v1beta.IGetFeatureRequest); + + /** GetFeatureRequest name. */ + public name: string; + + /** + * Creates a new GetFeatureRequest instance using the specified properties. + * @param [properties] Properties to set + * @returns GetFeatureRequest instance + */ + public static create(properties?: google.cloud.gkehub.v1beta.IGetFeatureRequest): google.cloud.gkehub.v1beta.GetFeatureRequest; + + /** + * Encodes the specified GetFeatureRequest message. Does not implicitly {@link google.cloud.gkehub.v1beta.GetFeatureRequest.verify|verify} messages. + * @param message GetFeatureRequest message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.v1beta.IGetFeatureRequest, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified GetFeatureRequest message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta.GetFeatureRequest.verify|verify} messages. + * @param message GetFeatureRequest message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.v1beta.IGetFeatureRequest, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a GetFeatureRequest message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns GetFeatureRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.v1beta.GetFeatureRequest; + + /** + * Decodes a GetFeatureRequest message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns GetFeatureRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.v1beta.GetFeatureRequest; + + /** + * Verifies a GetFeatureRequest message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a GetFeatureRequest message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns GetFeatureRequest + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.v1beta.GetFeatureRequest; + + /** + * Creates a plain object from a GetFeatureRequest message. Also converts values to other types if specified. + * @param message GetFeatureRequest + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.v1beta.GetFeatureRequest, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this GetFeatureRequest to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + + /** Properties of a CreateFeatureRequest. */ + interface ICreateFeatureRequest { + + /** CreateFeatureRequest parent */ + parent?: (string|null); + + /** CreateFeatureRequest featureId */ + featureId?: (string|null); + + /** CreateFeatureRequest resource */ + resource?: (google.cloud.gkehub.v1beta.IFeature|null); + + /** CreateFeatureRequest requestId */ + requestId?: (string|null); + } + + /** Represents a CreateFeatureRequest. */ + class CreateFeatureRequest implements ICreateFeatureRequest { + + /** + * Constructs a new CreateFeatureRequest. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.v1beta.ICreateFeatureRequest); + + /** CreateFeatureRequest parent. */ + public parent: string; + + /** CreateFeatureRequest featureId. */ + public featureId: string; + + /** CreateFeatureRequest resource. */ + public resource?: (google.cloud.gkehub.v1beta.IFeature|null); + + /** CreateFeatureRequest requestId. */ + public requestId: string; + + /** + * Creates a new CreateFeatureRequest instance using the specified properties. + * @param [properties] Properties to set + * @returns CreateFeatureRequest instance + */ + public static create(properties?: google.cloud.gkehub.v1beta.ICreateFeatureRequest): google.cloud.gkehub.v1beta.CreateFeatureRequest; + + /** + * Encodes the specified CreateFeatureRequest message. Does not implicitly {@link google.cloud.gkehub.v1beta.CreateFeatureRequest.verify|verify} messages. + * @param message CreateFeatureRequest message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.v1beta.ICreateFeatureRequest, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified CreateFeatureRequest message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta.CreateFeatureRequest.verify|verify} messages. + * @param message CreateFeatureRequest message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.v1beta.ICreateFeatureRequest, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a CreateFeatureRequest message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns CreateFeatureRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.v1beta.CreateFeatureRequest; + + /** + * Decodes a CreateFeatureRequest message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns CreateFeatureRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.v1beta.CreateFeatureRequest; + + /** + * Verifies a CreateFeatureRequest message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a CreateFeatureRequest message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns CreateFeatureRequest + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.v1beta.CreateFeatureRequest; + + /** + * Creates a plain object from a CreateFeatureRequest message. Also converts values to other types if specified. + * @param message CreateFeatureRequest + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.v1beta.CreateFeatureRequest, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this CreateFeatureRequest to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + + /** Properties of a DeleteFeatureRequest. */ + interface IDeleteFeatureRequest { + + /** DeleteFeatureRequest name */ + name?: (string|null); + + /** DeleteFeatureRequest force */ + force?: (boolean|null); + + /** DeleteFeatureRequest requestId */ + requestId?: (string|null); + } + + /** Represents a DeleteFeatureRequest. */ + class DeleteFeatureRequest implements IDeleteFeatureRequest { + + /** + * Constructs a new DeleteFeatureRequest. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.v1beta.IDeleteFeatureRequest); + + /** DeleteFeatureRequest name. */ + public name: string; + + /** DeleteFeatureRequest force. */ + public force: boolean; + + /** DeleteFeatureRequest requestId. */ + public requestId: string; + + /** + * Creates a new DeleteFeatureRequest instance using the specified properties. + * @param [properties] Properties to set + * @returns DeleteFeatureRequest instance + */ + public static create(properties?: google.cloud.gkehub.v1beta.IDeleteFeatureRequest): google.cloud.gkehub.v1beta.DeleteFeatureRequest; + + /** + * Encodes the specified DeleteFeatureRequest message. Does not implicitly {@link google.cloud.gkehub.v1beta.DeleteFeatureRequest.verify|verify} messages. + * @param message DeleteFeatureRequest message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.v1beta.IDeleteFeatureRequest, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified DeleteFeatureRequest message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta.DeleteFeatureRequest.verify|verify} messages. + * @param message DeleteFeatureRequest message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.v1beta.IDeleteFeatureRequest, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a DeleteFeatureRequest message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns DeleteFeatureRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.v1beta.DeleteFeatureRequest; + + /** + * Decodes a DeleteFeatureRequest message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns DeleteFeatureRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.v1beta.DeleteFeatureRequest; + + /** + * Verifies a DeleteFeatureRequest message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a DeleteFeatureRequest message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns DeleteFeatureRequest + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.v1beta.DeleteFeatureRequest; + + /** + * Creates a plain object from a DeleteFeatureRequest message. Also converts values to other types if specified. + * @param message DeleteFeatureRequest + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.v1beta.DeleteFeatureRequest, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this DeleteFeatureRequest to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + + /** Properties of an UpdateFeatureRequest. */ + interface IUpdateFeatureRequest { + + /** UpdateFeatureRequest name */ + name?: (string|null); + + /** UpdateFeatureRequest updateMask */ + updateMask?: (google.protobuf.IFieldMask|null); + + /** UpdateFeatureRequest resource */ + resource?: (google.cloud.gkehub.v1beta.IFeature|null); + + /** UpdateFeatureRequest requestId */ + requestId?: (string|null); + } + + /** Represents an UpdateFeatureRequest. */ + class UpdateFeatureRequest implements IUpdateFeatureRequest { + + /** + * Constructs a new UpdateFeatureRequest. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.v1beta.IUpdateFeatureRequest); + + /** UpdateFeatureRequest name. */ + public name: string; + + /** UpdateFeatureRequest updateMask. */ + public updateMask?: (google.protobuf.IFieldMask|null); + + /** UpdateFeatureRequest resource. */ + public resource?: (google.cloud.gkehub.v1beta.IFeature|null); + + /** UpdateFeatureRequest requestId. */ + public requestId: string; + + /** + * Creates a new UpdateFeatureRequest instance using the specified properties. + * @param [properties] Properties to set + * @returns UpdateFeatureRequest instance + */ + public static create(properties?: google.cloud.gkehub.v1beta.IUpdateFeatureRequest): google.cloud.gkehub.v1beta.UpdateFeatureRequest; + + /** + * Encodes the specified UpdateFeatureRequest message. Does not implicitly {@link google.cloud.gkehub.v1beta.UpdateFeatureRequest.verify|verify} messages. + * @param message UpdateFeatureRequest message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.v1beta.IUpdateFeatureRequest, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified UpdateFeatureRequest message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta.UpdateFeatureRequest.verify|verify} messages. + * @param message UpdateFeatureRequest message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.v1beta.IUpdateFeatureRequest, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes an UpdateFeatureRequest message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns UpdateFeatureRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.v1beta.UpdateFeatureRequest; + + /** + * Decodes an UpdateFeatureRequest message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns UpdateFeatureRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.v1beta.UpdateFeatureRequest; + + /** + * Verifies an UpdateFeatureRequest message. + * @param message Plain 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 UpdateFeatureRequest message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns UpdateFeatureRequest + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.v1beta.UpdateFeatureRequest; + + /** + * Creates a plain object from an UpdateFeatureRequest message. Also converts values to other types if specified. + * @param message UpdateFeatureRequest + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.v1beta.UpdateFeatureRequest, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this UpdateFeatureRequest to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + + /** Properties of an OperationMetadata. */ + interface IOperationMetadata { + + /** OperationMetadata createTime */ + createTime?: (google.protobuf.ITimestamp|null); + + /** OperationMetadata endTime */ + endTime?: (google.protobuf.ITimestamp|null); + + /** OperationMetadata target */ + target?: (string|null); + + /** OperationMetadata verb */ + verb?: (string|null); + + /** OperationMetadata statusDetail */ + statusDetail?: (string|null); + + /** OperationMetadata cancelRequested */ + cancelRequested?: (boolean|null); + + /** OperationMetadata apiVersion */ + apiVersion?: (string|null); + } + + /** Represents an OperationMetadata. */ + class OperationMetadata implements IOperationMetadata { + + /** + * Constructs a new OperationMetadata. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.v1beta.IOperationMetadata); + + /** OperationMetadata createTime. */ + public createTime?: (google.protobuf.ITimestamp|null); + + /** OperationMetadata endTime. */ + public endTime?: (google.protobuf.ITimestamp|null); + + /** OperationMetadata target. */ + public target: string; + + /** OperationMetadata verb. */ + public verb: string; + + /** OperationMetadata statusDetail. */ + public statusDetail: string; + + /** OperationMetadata cancelRequested. */ + public cancelRequested: boolean; + + /** OperationMetadata apiVersion. */ + public apiVersion: string; + + /** + * Creates a new OperationMetadata instance using the specified properties. + * @param [properties] Properties to set + * @returns OperationMetadata instance + */ + public static create(properties?: google.cloud.gkehub.v1beta.IOperationMetadata): google.cloud.gkehub.v1beta.OperationMetadata; + + /** + * Encodes the specified OperationMetadata message. Does not implicitly {@link google.cloud.gkehub.v1beta.OperationMetadata.verify|verify} messages. + * @param message OperationMetadata message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.v1beta.IOperationMetadata, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified OperationMetadata message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta.OperationMetadata.verify|verify} messages. + * @param message OperationMetadata message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.v1beta.IOperationMetadata, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes an OperationMetadata message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns OperationMetadata + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.v1beta.OperationMetadata; + + /** + * Decodes an OperationMetadata message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns OperationMetadata + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.v1beta.OperationMetadata; + + /** + * Verifies an OperationMetadata message. + * @param message Plain 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 OperationMetadata message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns OperationMetadata + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.v1beta.OperationMetadata; + + /** + * Creates a plain object from an OperationMetadata message. Also converts values to other types if specified. + * @param message OperationMetadata + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.v1beta.OperationMetadata, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this OperationMetadata to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + } + + /** Namespace v1beta1. */ + namespace v1beta1 { + + /** Represents a GkeHubMembershipService */ + class GkeHubMembershipService extends $protobuf.rpc.Service { + + /** + * Constructs a new GkeHubMembershipService 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 GkeHubMembershipService 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): GkeHubMembershipService; + + /** + * Calls ListMemberships. + * @param request ListMembershipsRequest message or plain object + * @param callback Node-style callback called with the error, if any, and ListMembershipsResponse + */ + public listMemberships(request: google.cloud.gkehub.v1beta1.IListMembershipsRequest, callback: google.cloud.gkehub.v1beta1.GkeHubMembershipService.ListMembershipsCallback): void; + + /** + * Calls ListMemberships. + * @param request ListMembershipsRequest message or plain object + * @returns Promise + */ + public listMemberships(request: google.cloud.gkehub.v1beta1.IListMembershipsRequest): Promise; + + /** + * Calls GetMembership. + * @param request GetMembershipRequest message or plain object + * @param callback Node-style callback called with the error, if any, and Membership + */ + public getMembership(request: google.cloud.gkehub.v1beta1.IGetMembershipRequest, callback: google.cloud.gkehub.v1beta1.GkeHubMembershipService.GetMembershipCallback): void; + + /** + * Calls GetMembership. + * @param request GetMembershipRequest message or plain object + * @returns Promise + */ + public getMembership(request: google.cloud.gkehub.v1beta1.IGetMembershipRequest): Promise; + + /** + * Calls CreateMembership. + * @param request CreateMembershipRequest message or plain object + * @param callback Node-style callback called with the error, if any, and Operation + */ + public createMembership(request: google.cloud.gkehub.v1beta1.ICreateMembershipRequest, callback: google.cloud.gkehub.v1beta1.GkeHubMembershipService.CreateMembershipCallback): void; + + /** + * Calls CreateMembership. + * @param request CreateMembershipRequest message or plain object + * @returns Promise + */ + public createMembership(request: google.cloud.gkehub.v1beta1.ICreateMembershipRequest): Promise; + + /** + * Calls DeleteMembership. + * @param request DeleteMembershipRequest message or plain object + * @param callback Node-style callback called with the error, if any, and Operation + */ + public deleteMembership(request: google.cloud.gkehub.v1beta1.IDeleteMembershipRequest, callback: google.cloud.gkehub.v1beta1.GkeHubMembershipService.DeleteMembershipCallback): void; + + /** + * Calls DeleteMembership. + * @param request DeleteMembershipRequest message or plain object + * @returns Promise + */ + public deleteMembership(request: google.cloud.gkehub.v1beta1.IDeleteMembershipRequest): Promise; + + /** + * Calls UpdateMembership. + * @param request UpdateMembershipRequest message or plain object + * @param callback Node-style callback called with the error, if any, and Operation + */ + public updateMembership(request: google.cloud.gkehub.v1beta1.IUpdateMembershipRequest, callback: google.cloud.gkehub.v1beta1.GkeHubMembershipService.UpdateMembershipCallback): void; + + /** + * Calls UpdateMembership. + * @param request UpdateMembershipRequest message or plain object + * @returns Promise + */ + public updateMembership(request: google.cloud.gkehub.v1beta1.IUpdateMembershipRequest): Promise; + + /** + * Calls GenerateConnectManifest. + * @param request GenerateConnectManifestRequest message or plain object + * @param callback Node-style callback called with the error, if any, and GenerateConnectManifestResponse + */ + public generateConnectManifest(request: google.cloud.gkehub.v1beta1.IGenerateConnectManifestRequest, callback: google.cloud.gkehub.v1beta1.GkeHubMembershipService.GenerateConnectManifestCallback): void; + + /** + * Calls GenerateConnectManifest. + * @param request GenerateConnectManifestRequest message or plain object + * @returns Promise + */ + public generateConnectManifest(request: google.cloud.gkehub.v1beta1.IGenerateConnectManifestRequest): Promise; + + /** + * Calls ValidateExclusivity. + * @param request ValidateExclusivityRequest message or plain object + * @param callback Node-style callback called with the error, if any, and ValidateExclusivityResponse + */ + public validateExclusivity(request: google.cloud.gkehub.v1beta1.IValidateExclusivityRequest, callback: google.cloud.gkehub.v1beta1.GkeHubMembershipService.ValidateExclusivityCallback): void; + + /** + * Calls ValidateExclusivity. + * @param request ValidateExclusivityRequest message or plain object + * @returns Promise + */ + public validateExclusivity(request: google.cloud.gkehub.v1beta1.IValidateExclusivityRequest): Promise; + + /** + * Calls GenerateExclusivityManifest. + * @param request GenerateExclusivityManifestRequest message or plain object + * @param callback Node-style callback called with the error, if any, and GenerateExclusivityManifestResponse + */ + public generateExclusivityManifest(request: google.cloud.gkehub.v1beta1.IGenerateExclusivityManifestRequest, callback: google.cloud.gkehub.v1beta1.GkeHubMembershipService.GenerateExclusivityManifestCallback): void; + + /** + * Calls GenerateExclusivityManifest. + * @param request GenerateExclusivityManifestRequest message or plain object + * @returns Promise + */ + public generateExclusivityManifest(request: google.cloud.gkehub.v1beta1.IGenerateExclusivityManifestRequest): Promise; + } + + namespace GkeHubMembershipService { + + /** + * Callback as used by {@link google.cloud.gkehub.v1beta1.GkeHubMembershipService#listMemberships}. + * @param error Error, if any + * @param [response] ListMembershipsResponse + */ + type ListMembershipsCallback = (error: (Error|null), response?: google.cloud.gkehub.v1beta1.ListMembershipsResponse) => void; + + /** + * Callback as used by {@link google.cloud.gkehub.v1beta1.GkeHubMembershipService#getMembership}. + * @param error Error, if any + * @param [response] Membership + */ + type GetMembershipCallback = (error: (Error|null), response?: google.cloud.gkehub.v1beta1.Membership) => void; + + /** + * Callback as used by {@link google.cloud.gkehub.v1beta1.GkeHubMembershipService#createMembership}. + * @param error Error, if any + * @param [response] Operation + */ + type CreateMembershipCallback = (error: (Error|null), response?: google.longrunning.Operation) => void; + + /** + * Callback as used by {@link google.cloud.gkehub.v1beta1.GkeHubMembershipService#deleteMembership}. + * @param error Error, if any + * @param [response] Operation + */ + type DeleteMembershipCallback = (error: (Error|null), response?: google.longrunning.Operation) => void; + + /** + * Callback as used by {@link google.cloud.gkehub.v1beta1.GkeHubMembershipService#updateMembership}. + * @param error Error, if any + * @param [response] Operation + */ + type UpdateMembershipCallback = (error: (Error|null), response?: google.longrunning.Operation) => void; + + /** + * Callback as used by {@link google.cloud.gkehub.v1beta1.GkeHubMembershipService#generateConnectManifest}. + * @param error Error, if any + * @param [response] GenerateConnectManifestResponse + */ + type GenerateConnectManifestCallback = (error: (Error|null), response?: google.cloud.gkehub.v1beta1.GenerateConnectManifestResponse) => void; + + /** + * Callback as used by {@link google.cloud.gkehub.v1beta1.GkeHubMembershipService#validateExclusivity}. + * @param error Error, if any + * @param [response] ValidateExclusivityResponse + */ + type ValidateExclusivityCallback = (error: (Error|null), response?: google.cloud.gkehub.v1beta1.ValidateExclusivityResponse) => void; + + /** + * Callback as used by {@link google.cloud.gkehub.v1beta1.GkeHubMembershipService#generateExclusivityManifest}. + * @param error Error, if any + * @param [response] GenerateExclusivityManifestResponse + */ + type GenerateExclusivityManifestCallback = (error: (Error|null), response?: google.cloud.gkehub.v1beta1.GenerateExclusivityManifestResponse) => void; + } + + /** Properties of a Membership. */ + interface IMembership { + + /** Membership name */ + name?: (string|null); + + /** Membership labels */ + labels?: ({ [k: string]: string }|null); + + /** Membership description */ + description?: (string|null); + + /** Membership endpoint */ + endpoint?: (google.cloud.gkehub.v1beta1.IMembershipEndpoint|null); + + /** Membership state */ + state?: (google.cloud.gkehub.v1beta1.IMembershipState|null); + + /** Membership authority */ + authority?: (google.cloud.gkehub.v1beta1.IAuthority|null); + + /** Membership createTime */ + createTime?: (google.protobuf.ITimestamp|null); + + /** Membership updateTime */ + updateTime?: (google.protobuf.ITimestamp|null); + + /** Membership deleteTime */ + deleteTime?: (google.protobuf.ITimestamp|null); + + /** Membership externalId */ + externalId?: (string|null); + + /** Membership lastConnectionTime */ + lastConnectionTime?: (google.protobuf.ITimestamp|null); + + /** Membership uniqueId */ + uniqueId?: (string|null); + + /** Membership infrastructureType */ + infrastructureType?: (google.cloud.gkehub.v1beta1.Membership.InfrastructureType|keyof typeof google.cloud.gkehub.v1beta1.Membership.InfrastructureType|null); + } + + /** Represents a Membership. */ + class Membership implements IMembership { + + /** + * Constructs a new Membership. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.v1beta1.IMembership); + + /** Membership name. */ + public name: string; + + /** Membership labels. */ + public labels: { [k: string]: string }; + + /** Membership description. */ + public description: string; + + /** Membership endpoint. */ + public endpoint?: (google.cloud.gkehub.v1beta1.IMembershipEndpoint|null); + + /** Membership state. */ + public state?: (google.cloud.gkehub.v1beta1.IMembershipState|null); + + /** Membership authority. */ + public authority?: (google.cloud.gkehub.v1beta1.IAuthority|null); + + /** Membership createTime. */ + public createTime?: (google.protobuf.ITimestamp|null); + + /** Membership updateTime. */ + public updateTime?: (google.protobuf.ITimestamp|null); + + /** Membership deleteTime. */ + public deleteTime?: (google.protobuf.ITimestamp|null); + + /** Membership externalId. */ + public externalId: string; + + /** Membership lastConnectionTime. */ + public lastConnectionTime?: (google.protobuf.ITimestamp|null); + + /** Membership uniqueId. */ + public uniqueId: string; + + /** Membership infrastructureType. */ + public infrastructureType: (google.cloud.gkehub.v1beta1.Membership.InfrastructureType|keyof typeof google.cloud.gkehub.v1beta1.Membership.InfrastructureType); + + /** Membership type. */ + public type?: "endpoint"; + + /** + * Creates a new Membership instance using the specified properties. + * @param [properties] Properties to set + * @returns Membership instance + */ + public static create(properties?: google.cloud.gkehub.v1beta1.IMembership): google.cloud.gkehub.v1beta1.Membership; + + /** + * Encodes the specified Membership message. Does not implicitly {@link google.cloud.gkehub.v1beta1.Membership.verify|verify} messages. + * @param message Membership message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.v1beta1.IMembership, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified Membership message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta1.Membership.verify|verify} messages. + * @param message Membership message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.v1beta1.IMembership, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a Membership message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns Membership + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.v1beta1.Membership; + + /** + * Decodes a Membership message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns Membership + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.v1beta1.Membership; + + /** + * Verifies a Membership message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a Membership message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns Membership + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.v1beta1.Membership; + + /** + * Creates a plain object from a Membership message. Also converts values to other types if specified. + * @param message Membership + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.v1beta1.Membership, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this Membership to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + + namespace Membership { + + /** InfrastructureType enum. */ + enum InfrastructureType { + INFRASTRUCTURE_TYPE_UNSPECIFIED = 0, + ON_PREM = 1, + MULTI_CLOUD = 2 + } + } + + /** Properties of a MembershipEndpoint. */ + interface IMembershipEndpoint { + + /** MembershipEndpoint gkeCluster */ + gkeCluster?: (google.cloud.gkehub.v1beta1.IGkeCluster|null); + + /** MembershipEndpoint kubernetesMetadata */ + kubernetesMetadata?: (google.cloud.gkehub.v1beta1.IKubernetesMetadata|null); + + /** MembershipEndpoint kubernetesResource */ + kubernetesResource?: (google.cloud.gkehub.v1beta1.IKubernetesResource|null); + } + + /** Represents a MembershipEndpoint. */ + class MembershipEndpoint implements IMembershipEndpoint { + + /** + * Constructs a new MembershipEndpoint. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.v1beta1.IMembershipEndpoint); + + /** MembershipEndpoint gkeCluster. */ + public gkeCluster?: (google.cloud.gkehub.v1beta1.IGkeCluster|null); + + /** MembershipEndpoint kubernetesMetadata. */ + public kubernetesMetadata?: (google.cloud.gkehub.v1beta1.IKubernetesMetadata|null); + + /** MembershipEndpoint kubernetesResource. */ + public kubernetesResource?: (google.cloud.gkehub.v1beta1.IKubernetesResource|null); + + /** + * Creates a new MembershipEndpoint instance using the specified properties. + * @param [properties] Properties to set + * @returns MembershipEndpoint instance + */ + public static create(properties?: google.cloud.gkehub.v1beta1.IMembershipEndpoint): google.cloud.gkehub.v1beta1.MembershipEndpoint; + + /** + * Encodes the specified MembershipEndpoint message. Does not implicitly {@link google.cloud.gkehub.v1beta1.MembershipEndpoint.verify|verify} messages. + * @param message MembershipEndpoint message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.v1beta1.IMembershipEndpoint, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified MembershipEndpoint message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta1.MembershipEndpoint.verify|verify} messages. + * @param message MembershipEndpoint message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.v1beta1.IMembershipEndpoint, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a MembershipEndpoint message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns MembershipEndpoint + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.v1beta1.MembershipEndpoint; + + /** + * Decodes a MembershipEndpoint message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns MembershipEndpoint + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.v1beta1.MembershipEndpoint; + + /** + * Verifies a MembershipEndpoint message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a MembershipEndpoint message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns MembershipEndpoint + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.v1beta1.MembershipEndpoint; + + /** + * Creates a plain object from a MembershipEndpoint message. Also converts values to other types if specified. + * @param message MembershipEndpoint + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.v1beta1.MembershipEndpoint, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this MembershipEndpoint to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + + /** Properties of a KubernetesResource. */ + interface IKubernetesResource { + + /** KubernetesResource membershipCrManifest */ + membershipCrManifest?: (string|null); + + /** KubernetesResource membershipResources */ + membershipResources?: (google.cloud.gkehub.v1beta1.IResourceManifest[]|null); + + /** KubernetesResource connectResources */ + connectResources?: (google.cloud.gkehub.v1beta1.IResourceManifest[]|null); + + /** KubernetesResource resourceOptions */ + resourceOptions?: (google.cloud.gkehub.v1beta1.IResourceOptions|null); + } + + /** Represents a KubernetesResource. */ + class KubernetesResource implements IKubernetesResource { + + /** + * Constructs a new KubernetesResource. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.v1beta1.IKubernetesResource); + + /** KubernetesResource membershipCrManifest. */ + public membershipCrManifest: string; + + /** KubernetesResource membershipResources. */ + public membershipResources: google.cloud.gkehub.v1beta1.IResourceManifest[]; + + /** KubernetesResource connectResources. */ + public connectResources: google.cloud.gkehub.v1beta1.IResourceManifest[]; + + /** KubernetesResource resourceOptions. */ + public resourceOptions?: (google.cloud.gkehub.v1beta1.IResourceOptions|null); + + /** + * Creates a new KubernetesResource instance using the specified properties. + * @param [properties] Properties to set + * @returns KubernetesResource instance + */ + public static create(properties?: google.cloud.gkehub.v1beta1.IKubernetesResource): google.cloud.gkehub.v1beta1.KubernetesResource; + + /** + * Encodes the specified KubernetesResource message. Does not implicitly {@link google.cloud.gkehub.v1beta1.KubernetesResource.verify|verify} messages. + * @param message KubernetesResource message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.v1beta1.IKubernetesResource, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified KubernetesResource message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta1.KubernetesResource.verify|verify} messages. + * @param message KubernetesResource message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.v1beta1.IKubernetesResource, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a KubernetesResource message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns KubernetesResource + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.v1beta1.KubernetesResource; + + /** + * Decodes a KubernetesResource message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns KubernetesResource + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.v1beta1.KubernetesResource; + + /** + * Verifies a KubernetesResource message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a KubernetesResource message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns KubernetesResource + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.v1beta1.KubernetesResource; + + /** + * Creates a plain object from a KubernetesResource message. Also converts values to other types if specified. + * @param message KubernetesResource + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.v1beta1.KubernetesResource, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this KubernetesResource to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + + /** Properties of a ResourceOptions. */ + interface IResourceOptions { + + /** ResourceOptions connectVersion */ + connectVersion?: (string|null); + + /** ResourceOptions v1beta1Crd */ + v1beta1Crd?: (boolean|null); + } + + /** Represents a ResourceOptions. */ + class ResourceOptions implements IResourceOptions { + + /** + * Constructs a new ResourceOptions. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.v1beta1.IResourceOptions); + + /** ResourceOptions connectVersion. */ + public connectVersion: string; + + /** ResourceOptions v1beta1Crd. */ + public v1beta1Crd: boolean; + + /** + * Creates a new ResourceOptions instance using the specified properties. + * @param [properties] Properties to set + * @returns ResourceOptions instance + */ + public static create(properties?: google.cloud.gkehub.v1beta1.IResourceOptions): google.cloud.gkehub.v1beta1.ResourceOptions; + + /** + * Encodes the specified ResourceOptions message. Does not implicitly {@link google.cloud.gkehub.v1beta1.ResourceOptions.verify|verify} messages. + * @param message ResourceOptions message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.v1beta1.IResourceOptions, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified ResourceOptions message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta1.ResourceOptions.verify|verify} messages. + * @param message ResourceOptions message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.v1beta1.IResourceOptions, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a ResourceOptions message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns ResourceOptions + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.v1beta1.ResourceOptions; + + /** + * Decodes a ResourceOptions message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns ResourceOptions + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.v1beta1.ResourceOptions; + + /** + * Verifies a ResourceOptions message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a ResourceOptions message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns ResourceOptions + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.v1beta1.ResourceOptions; + + /** + * Creates a plain object from a ResourceOptions message. Also converts values to other types if specified. + * @param message ResourceOptions + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.v1beta1.ResourceOptions, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this ResourceOptions to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + + /** Properties of a ResourceManifest. */ + interface IResourceManifest { + + /** ResourceManifest manifest */ + manifest?: (string|null); + + /** ResourceManifest clusterScoped */ + clusterScoped?: (boolean|null); + } + + /** Represents a ResourceManifest. */ + class ResourceManifest implements IResourceManifest { + + /** + * Constructs a new ResourceManifest. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.v1beta1.IResourceManifest); + + /** ResourceManifest manifest. */ + public manifest: string; + + /** ResourceManifest clusterScoped. */ + public clusterScoped: boolean; + + /** + * Creates a new ResourceManifest instance using the specified properties. + * @param [properties] Properties to set + * @returns ResourceManifest instance + */ + public static create(properties?: google.cloud.gkehub.v1beta1.IResourceManifest): google.cloud.gkehub.v1beta1.ResourceManifest; + + /** + * Encodes the specified ResourceManifest message. Does not implicitly {@link google.cloud.gkehub.v1beta1.ResourceManifest.verify|verify} messages. + * @param message ResourceManifest message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.v1beta1.IResourceManifest, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified ResourceManifest message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta1.ResourceManifest.verify|verify} messages. + * @param message ResourceManifest message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.v1beta1.IResourceManifest, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a ResourceManifest message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns ResourceManifest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.v1beta1.ResourceManifest; + + /** + * Decodes a ResourceManifest message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns ResourceManifest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.v1beta1.ResourceManifest; + + /** + * Verifies a ResourceManifest message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a ResourceManifest message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns ResourceManifest + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.v1beta1.ResourceManifest; + + /** + * Creates a plain object from a ResourceManifest message. Also converts values to other types if specified. + * @param message ResourceManifest + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.v1beta1.ResourceManifest, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this ResourceManifest to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + + /** Properties of a GkeCluster. */ + interface IGkeCluster { + + /** GkeCluster resourceLink */ + resourceLink?: (string|null); + } + + /** Represents a GkeCluster. */ + class GkeCluster implements IGkeCluster { + + /** + * Constructs a new GkeCluster. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.v1beta1.IGkeCluster); + + /** GkeCluster resourceLink. */ + public resourceLink: string; + + /** + * Creates a new GkeCluster instance using the specified properties. + * @param [properties] Properties to set + * @returns GkeCluster instance + */ + public static create(properties?: google.cloud.gkehub.v1beta1.IGkeCluster): google.cloud.gkehub.v1beta1.GkeCluster; + + /** + * Encodes the specified GkeCluster message. Does not implicitly {@link google.cloud.gkehub.v1beta1.GkeCluster.verify|verify} messages. + * @param message GkeCluster message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.v1beta1.IGkeCluster, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified GkeCluster message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta1.GkeCluster.verify|verify} messages. + * @param message GkeCluster message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.v1beta1.IGkeCluster, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a GkeCluster message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns GkeCluster + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.v1beta1.GkeCluster; + + /** + * Decodes a GkeCluster message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns GkeCluster + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.v1beta1.GkeCluster; + + /** + * Verifies a GkeCluster message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a GkeCluster message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns GkeCluster + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.v1beta1.GkeCluster; + + /** + * Creates a plain object from a GkeCluster message. Also converts values to other types if specified. + * @param message GkeCluster + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.v1beta1.GkeCluster, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this GkeCluster to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + + /** Properties of a KubernetesMetadata. */ + interface IKubernetesMetadata { + + /** KubernetesMetadata kubernetesApiServerVersion */ + kubernetesApiServerVersion?: (string|null); + + /** KubernetesMetadata nodeProviderId */ + nodeProviderId?: (string|null); + + /** KubernetesMetadata nodeCount */ + nodeCount?: (number|null); + + /** KubernetesMetadata vcpuCount */ + vcpuCount?: (number|null); + + /** KubernetesMetadata memoryMb */ + memoryMb?: (number|null); + + /** KubernetesMetadata updateTime */ + updateTime?: (google.protobuf.ITimestamp|null); + } + + /** Represents a KubernetesMetadata. */ + class KubernetesMetadata implements IKubernetesMetadata { + + /** + * Constructs a new KubernetesMetadata. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.v1beta1.IKubernetesMetadata); + + /** KubernetesMetadata kubernetesApiServerVersion. */ + public kubernetesApiServerVersion: string; + + /** KubernetesMetadata nodeProviderId. */ + public nodeProviderId: string; + + /** KubernetesMetadata nodeCount. */ + public nodeCount: number; + + /** KubernetesMetadata vcpuCount. */ + public vcpuCount: number; + + /** KubernetesMetadata memoryMb. */ + public memoryMb: number; + + /** KubernetesMetadata updateTime. */ + public updateTime?: (google.protobuf.ITimestamp|null); + + /** + * Creates a new KubernetesMetadata instance using the specified properties. + * @param [properties] Properties to set + * @returns KubernetesMetadata instance + */ + public static create(properties?: google.cloud.gkehub.v1beta1.IKubernetesMetadata): google.cloud.gkehub.v1beta1.KubernetesMetadata; + + /** + * Encodes the specified KubernetesMetadata message. Does not implicitly {@link google.cloud.gkehub.v1beta1.KubernetesMetadata.verify|verify} messages. + * @param message KubernetesMetadata message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.v1beta1.IKubernetesMetadata, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified KubernetesMetadata message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta1.KubernetesMetadata.verify|verify} messages. + * @param message KubernetesMetadata message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.v1beta1.IKubernetesMetadata, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a KubernetesMetadata message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns KubernetesMetadata + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.v1beta1.KubernetesMetadata; + + /** + * Decodes a KubernetesMetadata message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns KubernetesMetadata + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.v1beta1.KubernetesMetadata; + + /** + * Verifies a KubernetesMetadata message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a KubernetesMetadata message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns KubernetesMetadata + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.v1beta1.KubernetesMetadata; + + /** + * Creates a plain object from a KubernetesMetadata message. Also converts values to other types if specified. + * @param message KubernetesMetadata + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.v1beta1.KubernetesMetadata, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this KubernetesMetadata to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + + /** Properties of an Authority. */ + interface IAuthority { + + /** Authority issuer */ + issuer?: (string|null); + + /** Authority workloadIdentityPool */ + workloadIdentityPool?: (string|null); + + /** Authority identityProvider */ + identityProvider?: (string|null); + + /** Authority oidcJwks */ + oidcJwks?: (Uint8Array|string|null); + } + + /** Represents an Authority. */ + class Authority implements IAuthority { + + /** + * Constructs a new Authority. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.v1beta1.IAuthority); + + /** Authority issuer. */ + public issuer: string; + + /** Authority workloadIdentityPool. */ + public workloadIdentityPool: string; + + /** Authority identityProvider. */ + public identityProvider: string; + + /** Authority oidcJwks. */ + public oidcJwks: (Uint8Array|string); + + /** + * Creates a new Authority instance using the specified properties. + * @param [properties] Properties to set + * @returns Authority instance + */ + public static create(properties?: google.cloud.gkehub.v1beta1.IAuthority): google.cloud.gkehub.v1beta1.Authority; + + /** + * Encodes the specified Authority message. Does not implicitly {@link google.cloud.gkehub.v1beta1.Authority.verify|verify} messages. + * @param message Authority message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.v1beta1.IAuthority, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified Authority message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta1.Authority.verify|verify} messages. + * @param message Authority message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.v1beta1.IAuthority, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes an Authority message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns Authority + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.v1beta1.Authority; + + /** + * Decodes an Authority message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns Authority + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.v1beta1.Authority; + + /** + * Verifies an Authority message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates an Authority message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns Authority + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.v1beta1.Authority; + + /** + * Creates a plain object from an Authority message. Also converts values to other types if specified. + * @param message Authority + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.v1beta1.Authority, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this Authority to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + + /** Properties of a MembershipState. */ + interface IMembershipState { + + /** MembershipState code */ + code?: (google.cloud.gkehub.v1beta1.MembershipState.Code|keyof typeof google.cloud.gkehub.v1beta1.MembershipState.Code|null); + + /** MembershipState description */ + description?: (string|null); + + /** MembershipState updateTime */ + updateTime?: (google.protobuf.ITimestamp|null); + } + + /** Represents a MembershipState. */ + class MembershipState implements IMembershipState { + + /** + * Constructs a new MembershipState. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.v1beta1.IMembershipState); + + /** MembershipState code. */ + public code: (google.cloud.gkehub.v1beta1.MembershipState.Code|keyof typeof google.cloud.gkehub.v1beta1.MembershipState.Code); + + /** MembershipState description. */ + public description: string; + + /** MembershipState updateTime. */ + public updateTime?: (google.protobuf.ITimestamp|null); + + /** + * Creates a new MembershipState instance using the specified properties. + * @param [properties] Properties to set + * @returns MembershipState instance + */ + public static create(properties?: google.cloud.gkehub.v1beta1.IMembershipState): google.cloud.gkehub.v1beta1.MembershipState; + + /** + * Encodes the specified MembershipState message. Does not implicitly {@link google.cloud.gkehub.v1beta1.MembershipState.verify|verify} messages. + * @param message MembershipState message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.v1beta1.IMembershipState, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified MembershipState message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta1.MembershipState.verify|verify} messages. + * @param message MembershipState message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.v1beta1.IMembershipState, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a MembershipState message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns MembershipState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.v1beta1.MembershipState; + + /** + * Decodes a MembershipState message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns MembershipState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.v1beta1.MembershipState; + + /** + * Verifies a MembershipState message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a MembershipState message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns MembershipState + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.v1beta1.MembershipState; + + /** + * Creates a plain object from a MembershipState message. Also converts values to other types if specified. + * @param message MembershipState + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.v1beta1.MembershipState, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this MembershipState to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + + namespace MembershipState { + + /** Code enum. */ + enum Code { + CODE_UNSPECIFIED = 0, + CREATING = 1, + READY = 2, + DELETING = 3, + UPDATING = 4, + SERVICE_UPDATING = 5 + } + } + + /** Properties of a ListMembershipsRequest. */ + interface IListMembershipsRequest { + + /** ListMembershipsRequest parent */ + parent?: (string|null); + + /** ListMembershipsRequest pageSize */ + pageSize?: (number|null); + + /** ListMembershipsRequest pageToken */ + pageToken?: (string|null); + + /** ListMembershipsRequest filter */ + filter?: (string|null); + + /** ListMembershipsRequest orderBy */ + orderBy?: (string|null); + } + + /** Represents a ListMembershipsRequest. */ + class ListMembershipsRequest implements IListMembershipsRequest { + + /** + * Constructs a new ListMembershipsRequest. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.v1beta1.IListMembershipsRequest); + + /** ListMembershipsRequest parent. */ + public parent: string; + + /** ListMembershipsRequest pageSize. */ + public pageSize: number; + + /** ListMembershipsRequest pageToken. */ + public pageToken: string; + + /** ListMembershipsRequest filter. */ + public filter: string; + + /** ListMembershipsRequest orderBy. */ + public orderBy: string; + + /** + * Creates a new ListMembershipsRequest instance using the specified properties. + * @param [properties] Properties to set + * @returns ListMembershipsRequest instance + */ + public static create(properties?: google.cloud.gkehub.v1beta1.IListMembershipsRequest): google.cloud.gkehub.v1beta1.ListMembershipsRequest; + + /** + * Encodes the specified ListMembershipsRequest message. Does not implicitly {@link google.cloud.gkehub.v1beta1.ListMembershipsRequest.verify|verify} messages. + * @param message ListMembershipsRequest message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.v1beta1.IListMembershipsRequest, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified ListMembershipsRequest message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta1.ListMembershipsRequest.verify|verify} messages. + * @param message ListMembershipsRequest message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.v1beta1.IListMembershipsRequest, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a ListMembershipsRequest message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns ListMembershipsRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.v1beta1.ListMembershipsRequest; + + /** + * Decodes a ListMembershipsRequest message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns ListMembershipsRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.v1beta1.ListMembershipsRequest; + + /** + * Verifies a ListMembershipsRequest message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a ListMembershipsRequest message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns ListMembershipsRequest + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.v1beta1.ListMembershipsRequest; + + /** + * Creates a plain object from a ListMembershipsRequest message. Also converts values to other types if specified. + * @param message ListMembershipsRequest + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.v1beta1.ListMembershipsRequest, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this ListMembershipsRequest to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + + /** Properties of a ListMembershipsResponse. */ + interface IListMembershipsResponse { + + /** ListMembershipsResponse resources */ + resources?: (google.cloud.gkehub.v1beta1.IMembership[]|null); + + /** ListMembershipsResponse nextPageToken */ + nextPageToken?: (string|null); + + /** ListMembershipsResponse unreachable */ + unreachable?: (string[]|null); + } + + /** Represents a ListMembershipsResponse. */ + class ListMembershipsResponse implements IListMembershipsResponse { + + /** + * Constructs a new ListMembershipsResponse. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.v1beta1.IListMembershipsResponse); + + /** ListMembershipsResponse resources. */ + public resources: google.cloud.gkehub.v1beta1.IMembership[]; + + /** ListMembershipsResponse nextPageToken. */ + public nextPageToken: string; + + /** ListMembershipsResponse unreachable. */ + public unreachable: string[]; + + /** + * Creates a new ListMembershipsResponse instance using the specified properties. + * @param [properties] Properties to set + * @returns ListMembershipsResponse instance + */ + public static create(properties?: google.cloud.gkehub.v1beta1.IListMembershipsResponse): google.cloud.gkehub.v1beta1.ListMembershipsResponse; + + /** + * Encodes the specified ListMembershipsResponse message. Does not implicitly {@link google.cloud.gkehub.v1beta1.ListMembershipsResponse.verify|verify} messages. + * @param message ListMembershipsResponse message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.v1beta1.IListMembershipsResponse, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified ListMembershipsResponse message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta1.ListMembershipsResponse.verify|verify} messages. + * @param message ListMembershipsResponse message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.v1beta1.IListMembershipsResponse, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a ListMembershipsResponse message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns ListMembershipsResponse + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.v1beta1.ListMembershipsResponse; + + /** + * Decodes a ListMembershipsResponse message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns ListMembershipsResponse + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.v1beta1.ListMembershipsResponse; + + /** + * Verifies a ListMembershipsResponse message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a ListMembershipsResponse message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns ListMembershipsResponse + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.v1beta1.ListMembershipsResponse; + + /** + * Creates a plain object from a ListMembershipsResponse message. Also converts values to other types if specified. + * @param message ListMembershipsResponse + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.v1beta1.ListMembershipsResponse, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this ListMembershipsResponse to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + + /** Properties of a GetMembershipRequest. */ + interface IGetMembershipRequest { + + /** GetMembershipRequest name */ + name?: (string|null); + } + + /** Represents a GetMembershipRequest. */ + class GetMembershipRequest implements IGetMembershipRequest { + + /** + * Constructs a new GetMembershipRequest. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.v1beta1.IGetMembershipRequest); + + /** GetMembershipRequest name. */ + public name: string; + + /** + * Creates a new GetMembershipRequest instance using the specified properties. + * @param [properties] Properties to set + * @returns GetMembershipRequest instance + */ + public static create(properties?: google.cloud.gkehub.v1beta1.IGetMembershipRequest): google.cloud.gkehub.v1beta1.GetMembershipRequest; + + /** + * Encodes the specified GetMembershipRequest message. Does not implicitly {@link google.cloud.gkehub.v1beta1.GetMembershipRequest.verify|verify} messages. + * @param message GetMembershipRequest message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.v1beta1.IGetMembershipRequest, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified GetMembershipRequest message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta1.GetMembershipRequest.verify|verify} messages. + * @param message GetMembershipRequest message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.v1beta1.IGetMembershipRequest, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a GetMembershipRequest message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns GetMembershipRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.v1beta1.GetMembershipRequest; + + /** + * Decodes a GetMembershipRequest message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns GetMembershipRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.v1beta1.GetMembershipRequest; + + /** + * Verifies a GetMembershipRequest message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a GetMembershipRequest message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns GetMembershipRequest + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.v1beta1.GetMembershipRequest; + + /** + * Creates a plain object from a GetMembershipRequest message. Also converts values to other types if specified. + * @param message GetMembershipRequest + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.v1beta1.GetMembershipRequest, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this GetMembershipRequest to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + + /** Properties of a CreateMembershipRequest. */ + interface ICreateMembershipRequest { + + /** CreateMembershipRequest parent */ + parent?: (string|null); + + /** CreateMembershipRequest membershipId */ + membershipId?: (string|null); + + /** CreateMembershipRequest resource */ + resource?: (google.cloud.gkehub.v1beta1.IMembership|null); + } + + /** Represents a CreateMembershipRequest. */ + class CreateMembershipRequest implements ICreateMembershipRequest { + + /** + * Constructs a new CreateMembershipRequest. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.v1beta1.ICreateMembershipRequest); + + /** CreateMembershipRequest parent. */ + public parent: string; + + /** CreateMembershipRequest membershipId. */ + public membershipId: string; + + /** CreateMembershipRequest resource. */ + public resource?: (google.cloud.gkehub.v1beta1.IMembership|null); + + /** + * Creates a new CreateMembershipRequest instance using the specified properties. + * @param [properties] Properties to set + * @returns CreateMembershipRequest instance + */ + public static create(properties?: google.cloud.gkehub.v1beta1.ICreateMembershipRequest): google.cloud.gkehub.v1beta1.CreateMembershipRequest; + + /** + * Encodes the specified CreateMembershipRequest message. Does not implicitly {@link google.cloud.gkehub.v1beta1.CreateMembershipRequest.verify|verify} messages. + * @param message CreateMembershipRequest message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.v1beta1.ICreateMembershipRequest, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified CreateMembershipRequest message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta1.CreateMembershipRequest.verify|verify} messages. + * @param message CreateMembershipRequest message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.v1beta1.ICreateMembershipRequest, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a CreateMembershipRequest message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns CreateMembershipRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.v1beta1.CreateMembershipRequest; + + /** + * Decodes a CreateMembershipRequest message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns CreateMembershipRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.v1beta1.CreateMembershipRequest; + + /** + * Verifies a CreateMembershipRequest message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a CreateMembershipRequest message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns CreateMembershipRequest + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.v1beta1.CreateMembershipRequest; + + /** + * Creates a plain object from a CreateMembershipRequest message. Also converts values to other types if specified. + * @param message CreateMembershipRequest + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.v1beta1.CreateMembershipRequest, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this CreateMembershipRequest to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + + /** Properties of a DeleteMembershipRequest. */ + interface IDeleteMembershipRequest { + + /** DeleteMembershipRequest name */ + name?: (string|null); + } + + /** Represents a DeleteMembershipRequest. */ + class DeleteMembershipRequest implements IDeleteMembershipRequest { + + /** + * Constructs a new DeleteMembershipRequest. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.v1beta1.IDeleteMembershipRequest); + + /** DeleteMembershipRequest name. */ + public name: string; + + /** + * Creates a new DeleteMembershipRequest instance using the specified properties. + * @param [properties] Properties to set + * @returns DeleteMembershipRequest instance + */ + public static create(properties?: google.cloud.gkehub.v1beta1.IDeleteMembershipRequest): google.cloud.gkehub.v1beta1.DeleteMembershipRequest; + + /** + * Encodes the specified DeleteMembershipRequest message. Does not implicitly {@link google.cloud.gkehub.v1beta1.DeleteMembershipRequest.verify|verify} messages. + * @param message DeleteMembershipRequest message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.v1beta1.IDeleteMembershipRequest, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified DeleteMembershipRequest message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta1.DeleteMembershipRequest.verify|verify} messages. + * @param message DeleteMembershipRequest message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.v1beta1.IDeleteMembershipRequest, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a DeleteMembershipRequest message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns DeleteMembershipRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.v1beta1.DeleteMembershipRequest; + + /** + * Decodes a DeleteMembershipRequest message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns DeleteMembershipRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.v1beta1.DeleteMembershipRequest; + + /** + * Verifies a DeleteMembershipRequest message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a DeleteMembershipRequest message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns DeleteMembershipRequest + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.v1beta1.DeleteMembershipRequest; + + /** + * Creates a plain object from a DeleteMembershipRequest message. Also converts values to other types if specified. + * @param message DeleteMembershipRequest + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.v1beta1.DeleteMembershipRequest, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this DeleteMembershipRequest to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + + /** Properties of an UpdateMembershipRequest. */ + interface IUpdateMembershipRequest { + + /** UpdateMembershipRequest name */ + name?: (string|null); + + /** UpdateMembershipRequest updateMask */ + updateMask?: (google.protobuf.IFieldMask|null); + + /** UpdateMembershipRequest resource */ + resource?: (google.cloud.gkehub.v1beta1.IMembership|null); + } + + /** Represents an UpdateMembershipRequest. */ + class UpdateMembershipRequest implements IUpdateMembershipRequest { + + /** + * Constructs a new UpdateMembershipRequest. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.v1beta1.IUpdateMembershipRequest); + + /** UpdateMembershipRequest name. */ + public name: string; + + /** UpdateMembershipRequest updateMask. */ + public updateMask?: (google.protobuf.IFieldMask|null); + + /** UpdateMembershipRequest resource. */ + public resource?: (google.cloud.gkehub.v1beta1.IMembership|null); + + /** + * Creates a new UpdateMembershipRequest instance using the specified properties. + * @param [properties] Properties to set + * @returns UpdateMembershipRequest instance + */ + public static create(properties?: google.cloud.gkehub.v1beta1.IUpdateMembershipRequest): google.cloud.gkehub.v1beta1.UpdateMembershipRequest; + + /** + * Encodes the specified UpdateMembershipRequest message. Does not implicitly {@link google.cloud.gkehub.v1beta1.UpdateMembershipRequest.verify|verify} messages. + * @param message UpdateMembershipRequest message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.v1beta1.IUpdateMembershipRequest, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified UpdateMembershipRequest message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta1.UpdateMembershipRequest.verify|verify} messages. + * @param message UpdateMembershipRequest message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.v1beta1.IUpdateMembershipRequest, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes an UpdateMembershipRequest message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns UpdateMembershipRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.v1beta1.UpdateMembershipRequest; + + /** + * Decodes an UpdateMembershipRequest message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns UpdateMembershipRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.v1beta1.UpdateMembershipRequest; + + /** + * Verifies an UpdateMembershipRequest message. + * @param message Plain 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 UpdateMembershipRequest message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns UpdateMembershipRequest + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.v1beta1.UpdateMembershipRequest; + + /** + * Creates a plain object from an UpdateMembershipRequest message. Also converts values to other types if specified. + * @param message UpdateMembershipRequest + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.v1beta1.UpdateMembershipRequest, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this UpdateMembershipRequest to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + + /** Properties of a GenerateConnectManifestRequest. */ + interface IGenerateConnectManifestRequest { + + /** GenerateConnectManifestRequest name */ + name?: (string|null); + + /** GenerateConnectManifestRequest connectAgent */ + connectAgent?: (google.cloud.gkehub.v1beta1.IConnectAgent|null); + + /** GenerateConnectManifestRequest version */ + version?: (string|null); + + /** GenerateConnectManifestRequest isUpgrade */ + isUpgrade?: (boolean|null); + + /** GenerateConnectManifestRequest registry */ + registry?: (string|null); + + /** GenerateConnectManifestRequest imagePullSecretContent */ + imagePullSecretContent?: (Uint8Array|string|null); + } + + /** Represents a GenerateConnectManifestRequest. */ + class GenerateConnectManifestRequest implements IGenerateConnectManifestRequest { + + /** + * Constructs a new GenerateConnectManifestRequest. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.v1beta1.IGenerateConnectManifestRequest); + + /** GenerateConnectManifestRequest name. */ + public name: string; + + /** GenerateConnectManifestRequest connectAgent. */ + public connectAgent?: (google.cloud.gkehub.v1beta1.IConnectAgent|null); + + /** GenerateConnectManifestRequest version. */ + public version: string; + + /** GenerateConnectManifestRequest isUpgrade. */ + public isUpgrade: boolean; + + /** GenerateConnectManifestRequest registry. */ + public registry: string; + + /** GenerateConnectManifestRequest imagePullSecretContent. */ + public imagePullSecretContent: (Uint8Array|string); + + /** + * Creates a new GenerateConnectManifestRequest instance using the specified properties. + * @param [properties] Properties to set + * @returns GenerateConnectManifestRequest instance + */ + public static create(properties?: google.cloud.gkehub.v1beta1.IGenerateConnectManifestRequest): google.cloud.gkehub.v1beta1.GenerateConnectManifestRequest; + + /** + * Encodes the specified GenerateConnectManifestRequest message. Does not implicitly {@link google.cloud.gkehub.v1beta1.GenerateConnectManifestRequest.verify|verify} messages. + * @param message GenerateConnectManifestRequest message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.v1beta1.IGenerateConnectManifestRequest, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified GenerateConnectManifestRequest message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta1.GenerateConnectManifestRequest.verify|verify} messages. + * @param message GenerateConnectManifestRequest message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.v1beta1.IGenerateConnectManifestRequest, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a GenerateConnectManifestRequest message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns GenerateConnectManifestRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.v1beta1.GenerateConnectManifestRequest; + + /** + * Decodes a GenerateConnectManifestRequest message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns GenerateConnectManifestRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.v1beta1.GenerateConnectManifestRequest; + + /** + * Verifies a GenerateConnectManifestRequest message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a GenerateConnectManifestRequest message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns GenerateConnectManifestRequest + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.v1beta1.GenerateConnectManifestRequest; + + /** + * Creates a plain object from a GenerateConnectManifestRequest message. Also converts values to other types if specified. + * @param message GenerateConnectManifestRequest + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.v1beta1.GenerateConnectManifestRequest, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this GenerateConnectManifestRequest to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + + /** Properties of a GenerateConnectManifestResponse. */ + interface IGenerateConnectManifestResponse { + + /** GenerateConnectManifestResponse manifest */ + manifest?: (google.cloud.gkehub.v1beta1.IConnectAgentResource[]|null); + } + + /** Represents a GenerateConnectManifestResponse. */ + class GenerateConnectManifestResponse implements IGenerateConnectManifestResponse { + + /** + * Constructs a new GenerateConnectManifestResponse. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.v1beta1.IGenerateConnectManifestResponse); + + /** GenerateConnectManifestResponse manifest. */ + public manifest: google.cloud.gkehub.v1beta1.IConnectAgentResource[]; + + /** + * Creates a new GenerateConnectManifestResponse instance using the specified properties. + * @param [properties] Properties to set + * @returns GenerateConnectManifestResponse instance + */ + public static create(properties?: google.cloud.gkehub.v1beta1.IGenerateConnectManifestResponse): google.cloud.gkehub.v1beta1.GenerateConnectManifestResponse; + + /** + * Encodes the specified GenerateConnectManifestResponse message. Does not implicitly {@link google.cloud.gkehub.v1beta1.GenerateConnectManifestResponse.verify|verify} messages. + * @param message GenerateConnectManifestResponse message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.v1beta1.IGenerateConnectManifestResponse, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified GenerateConnectManifestResponse message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta1.GenerateConnectManifestResponse.verify|verify} messages. + * @param message GenerateConnectManifestResponse message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.v1beta1.IGenerateConnectManifestResponse, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a GenerateConnectManifestResponse message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns GenerateConnectManifestResponse + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.v1beta1.GenerateConnectManifestResponse; + + /** + * Decodes a GenerateConnectManifestResponse message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns GenerateConnectManifestResponse + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.v1beta1.GenerateConnectManifestResponse; + + /** + * Verifies a GenerateConnectManifestResponse message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a GenerateConnectManifestResponse message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns GenerateConnectManifestResponse + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.v1beta1.GenerateConnectManifestResponse; + + /** + * Creates a plain object from a GenerateConnectManifestResponse message. Also converts values to other types if specified. + * @param message GenerateConnectManifestResponse + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.v1beta1.GenerateConnectManifestResponse, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this GenerateConnectManifestResponse to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + + /** Properties of a ConnectAgentResource. */ + interface IConnectAgentResource { + + /** ConnectAgentResource type */ + type?: (google.cloud.gkehub.v1beta1.ITypeMeta|null); + + /** ConnectAgentResource manifest */ + manifest?: (string|null); + } + + /** Represents a ConnectAgentResource. */ + class ConnectAgentResource implements IConnectAgentResource { + + /** + * Constructs a new ConnectAgentResource. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.v1beta1.IConnectAgentResource); + + /** ConnectAgentResource type. */ + public type?: (google.cloud.gkehub.v1beta1.ITypeMeta|null); + + /** ConnectAgentResource manifest. */ + public manifest: string; + + /** + * Creates a new ConnectAgentResource instance using the specified properties. + * @param [properties] Properties to set + * @returns ConnectAgentResource instance + */ + public static create(properties?: google.cloud.gkehub.v1beta1.IConnectAgentResource): google.cloud.gkehub.v1beta1.ConnectAgentResource; + + /** + * Encodes the specified ConnectAgentResource message. Does not implicitly {@link google.cloud.gkehub.v1beta1.ConnectAgentResource.verify|verify} messages. + * @param message ConnectAgentResource message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.v1beta1.IConnectAgentResource, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified ConnectAgentResource message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta1.ConnectAgentResource.verify|verify} messages. + * @param message ConnectAgentResource message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.v1beta1.IConnectAgentResource, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a ConnectAgentResource message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns ConnectAgentResource + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.v1beta1.ConnectAgentResource; + + /** + * Decodes a ConnectAgentResource message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns ConnectAgentResource + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.v1beta1.ConnectAgentResource; + + /** + * Verifies a ConnectAgentResource message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a ConnectAgentResource message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns ConnectAgentResource + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.v1beta1.ConnectAgentResource; + + /** + * Creates a plain object from a ConnectAgentResource message. Also converts values to other types if specified. + * @param message ConnectAgentResource + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.v1beta1.ConnectAgentResource, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this ConnectAgentResource to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + + /** Properties of a TypeMeta. */ + interface ITypeMeta { + + /** TypeMeta kind */ + kind?: (string|null); + + /** TypeMeta apiVersion */ + apiVersion?: (string|null); + } + + /** Represents a TypeMeta. */ + class TypeMeta implements ITypeMeta { + + /** + * Constructs a new TypeMeta. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.v1beta1.ITypeMeta); + + /** TypeMeta kind. */ + public kind: string; + + /** TypeMeta apiVersion. */ + public apiVersion: string; + + /** + * Creates a new TypeMeta instance using the specified properties. + * @param [properties] Properties to set + * @returns TypeMeta instance + */ + public static create(properties?: google.cloud.gkehub.v1beta1.ITypeMeta): google.cloud.gkehub.v1beta1.TypeMeta; + + /** + * Encodes the specified TypeMeta message. Does not implicitly {@link google.cloud.gkehub.v1beta1.TypeMeta.verify|verify} messages. + * @param message TypeMeta message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.v1beta1.ITypeMeta, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified TypeMeta message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta1.TypeMeta.verify|verify} messages. + * @param message TypeMeta message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.v1beta1.ITypeMeta, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a TypeMeta message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns TypeMeta + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.v1beta1.TypeMeta; + + /** + * Decodes a TypeMeta message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns TypeMeta + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.v1beta1.TypeMeta; + + /** + * Verifies a TypeMeta message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a TypeMeta message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns TypeMeta + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.v1beta1.TypeMeta; + + /** + * Creates a plain object from a TypeMeta message. Also converts values to other types if specified. + * @param message TypeMeta + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.v1beta1.TypeMeta, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this TypeMeta to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + + /** Properties of a ConnectAgent. */ + interface IConnectAgent { + + /** ConnectAgent name */ + name?: (string|null); + + /** ConnectAgent proxy */ + proxy?: (Uint8Array|string|null); + + /** ConnectAgent namespace */ + namespace?: (string|null); + } + + /** Represents a ConnectAgent. */ + class ConnectAgent implements IConnectAgent { + + /** + * Constructs a new ConnectAgent. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.v1beta1.IConnectAgent); + + /** ConnectAgent name. */ + public name: string; + + /** ConnectAgent proxy. */ + public proxy: (Uint8Array|string); + + /** ConnectAgent namespace. */ + public namespace: string; + + /** + * Creates a new ConnectAgent instance using the specified properties. + * @param [properties] Properties to set + * @returns ConnectAgent instance + */ + public static create(properties?: google.cloud.gkehub.v1beta1.IConnectAgent): google.cloud.gkehub.v1beta1.ConnectAgent; + + /** + * Encodes the specified ConnectAgent message. Does not implicitly {@link google.cloud.gkehub.v1beta1.ConnectAgent.verify|verify} messages. + * @param message ConnectAgent message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.v1beta1.IConnectAgent, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified ConnectAgent message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta1.ConnectAgent.verify|verify} messages. + * @param message ConnectAgent message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.v1beta1.IConnectAgent, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a ConnectAgent message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns ConnectAgent + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.v1beta1.ConnectAgent; + + /** + * Decodes a ConnectAgent message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns ConnectAgent + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.v1beta1.ConnectAgent; + + /** + * Verifies a ConnectAgent message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a ConnectAgent message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns ConnectAgent + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.v1beta1.ConnectAgent; + + /** + * Creates a plain object from a ConnectAgent message. Also converts values to other types if specified. + * @param message ConnectAgent + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.v1beta1.ConnectAgent, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this ConnectAgent to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + + /** Properties of a ValidateExclusivityRequest. */ + interface IValidateExclusivityRequest { + + /** ValidateExclusivityRequest parent */ + parent?: (string|null); + + /** ValidateExclusivityRequest crManifest */ + crManifest?: (string|null); + + /** ValidateExclusivityRequest intendedMembership */ + intendedMembership?: (string|null); + } + + /** Represents a ValidateExclusivityRequest. */ + class ValidateExclusivityRequest implements IValidateExclusivityRequest { + + /** + * Constructs a new ValidateExclusivityRequest. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.v1beta1.IValidateExclusivityRequest); + + /** ValidateExclusivityRequest parent. */ + public parent: string; + + /** ValidateExclusivityRequest crManifest. */ + public crManifest: string; + + /** ValidateExclusivityRequest intendedMembership. */ + public intendedMembership: string; + + /** + * Creates a new ValidateExclusivityRequest instance using the specified properties. + * @param [properties] Properties to set + * @returns ValidateExclusivityRequest instance + */ + public static create(properties?: google.cloud.gkehub.v1beta1.IValidateExclusivityRequest): google.cloud.gkehub.v1beta1.ValidateExclusivityRequest; + + /** + * Encodes the specified ValidateExclusivityRequest message. Does not implicitly {@link google.cloud.gkehub.v1beta1.ValidateExclusivityRequest.verify|verify} messages. + * @param message ValidateExclusivityRequest message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.v1beta1.IValidateExclusivityRequest, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified ValidateExclusivityRequest message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta1.ValidateExclusivityRequest.verify|verify} messages. + * @param message ValidateExclusivityRequest message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.v1beta1.IValidateExclusivityRequest, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a ValidateExclusivityRequest message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns ValidateExclusivityRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.v1beta1.ValidateExclusivityRequest; + + /** + * Decodes a ValidateExclusivityRequest message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns ValidateExclusivityRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.v1beta1.ValidateExclusivityRequest; + + /** + * Verifies a ValidateExclusivityRequest message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a ValidateExclusivityRequest message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns ValidateExclusivityRequest + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.v1beta1.ValidateExclusivityRequest; + + /** + * Creates a plain object from a ValidateExclusivityRequest message. Also converts values to other types if specified. + * @param message ValidateExclusivityRequest + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.v1beta1.ValidateExclusivityRequest, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this ValidateExclusivityRequest to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + + /** Properties of a ValidateExclusivityResponse. */ + interface IValidateExclusivityResponse { + + /** ValidateExclusivityResponse status */ + status?: (google.rpc.IStatus|null); + } + + /** Represents a ValidateExclusivityResponse. */ + class ValidateExclusivityResponse implements IValidateExclusivityResponse { + + /** + * Constructs a new ValidateExclusivityResponse. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.v1beta1.IValidateExclusivityResponse); + + /** ValidateExclusivityResponse status. */ + public status?: (google.rpc.IStatus|null); + + /** + * Creates a new ValidateExclusivityResponse instance using the specified properties. + * @param [properties] Properties to set + * @returns ValidateExclusivityResponse instance + */ + public static create(properties?: google.cloud.gkehub.v1beta1.IValidateExclusivityResponse): google.cloud.gkehub.v1beta1.ValidateExclusivityResponse; + + /** + * Encodes the specified ValidateExclusivityResponse message. Does not implicitly {@link google.cloud.gkehub.v1beta1.ValidateExclusivityResponse.verify|verify} messages. + * @param message ValidateExclusivityResponse message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.v1beta1.IValidateExclusivityResponse, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified ValidateExclusivityResponse message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta1.ValidateExclusivityResponse.verify|verify} messages. + * @param message ValidateExclusivityResponse message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.v1beta1.IValidateExclusivityResponse, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a ValidateExclusivityResponse message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns ValidateExclusivityResponse + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.v1beta1.ValidateExclusivityResponse; + + /** + * Decodes a ValidateExclusivityResponse message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns ValidateExclusivityResponse + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.v1beta1.ValidateExclusivityResponse; + + /** + * Verifies a ValidateExclusivityResponse message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a ValidateExclusivityResponse message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns ValidateExclusivityResponse + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.v1beta1.ValidateExclusivityResponse; + + /** + * Creates a plain object from a ValidateExclusivityResponse message. Also converts values to other types if specified. + * @param message ValidateExclusivityResponse + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.v1beta1.ValidateExclusivityResponse, options?: $protobuf.IConversionOptions): { [k: string]: any }; - /** - * 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 ValidateExclusivityResponse to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } - /** - * Converts this SourceCodeInfo to JSON. - * @returns JSON object - */ - public toJSON(): { [k: string]: any }; - } + /** Properties of a GenerateExclusivityManifestRequest. */ + interface IGenerateExclusivityManifestRequest { - namespace SourceCodeInfo { + /** GenerateExclusivityManifestRequest name */ + name?: (string|null); - /** Properties of a Location. */ - interface ILocation { + /** GenerateExclusivityManifestRequest crdManifest */ + crdManifest?: (string|null); - /** Location path */ - path?: (number[]|null); + /** GenerateExclusivityManifestRequest crManifest */ + crManifest?: (string|null); + } - /** Location span */ - span?: (number[]|null); + /** Represents a GenerateExclusivityManifestRequest. */ + class GenerateExclusivityManifestRequest implements IGenerateExclusivityManifestRequest { - /** Location leadingComments */ - leadingComments?: (string|null); + /** + * Constructs a new GenerateExclusivityManifestRequest. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.v1beta1.IGenerateExclusivityManifestRequest); - /** Location trailingComments */ - trailingComments?: (string|null); + /** GenerateExclusivityManifestRequest name. */ + public name: string; - /** Location leadingDetachedComments */ - leadingDetachedComments?: (string[]|null); - } + /** GenerateExclusivityManifestRequest crdManifest. */ + public crdManifest: string; - /** Represents a Location. */ - class Location implements ILocation { + /** GenerateExclusivityManifestRequest crManifest. */ + public crManifest: string; - /** - * Constructs a new Location. - * @param [properties] Properties to set - */ - constructor(properties?: google.protobuf.SourceCodeInfo.ILocation); + /** + * Creates a new GenerateExclusivityManifestRequest instance using the specified properties. + * @param [properties] Properties to set + * @returns GenerateExclusivityManifestRequest instance + */ + public static create(properties?: google.cloud.gkehub.v1beta1.IGenerateExclusivityManifestRequest): google.cloud.gkehub.v1beta1.GenerateExclusivityManifestRequest; - /** Location path. */ - public path: number[]; + /** + * Encodes the specified GenerateExclusivityManifestRequest message. Does not implicitly {@link google.cloud.gkehub.v1beta1.GenerateExclusivityManifestRequest.verify|verify} messages. + * @param message GenerateExclusivityManifestRequest message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.v1beta1.IGenerateExclusivityManifestRequest, writer?: $protobuf.Writer): $protobuf.Writer; - /** Location span. */ - public span: number[]; + /** + * Encodes the specified GenerateExclusivityManifestRequest message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta1.GenerateExclusivityManifestRequest.verify|verify} messages. + * @param message GenerateExclusivityManifestRequest message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.v1beta1.IGenerateExclusivityManifestRequest, writer?: $protobuf.Writer): $protobuf.Writer; - /** Location leadingComments. */ - public leadingComments: string; + /** + * Decodes a GenerateExclusivityManifestRequest message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns GenerateExclusivityManifestRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.v1beta1.GenerateExclusivityManifestRequest; - /** Location trailingComments. */ - public trailingComments: string; + /** + * Decodes a GenerateExclusivityManifestRequest message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns GenerateExclusivityManifestRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.v1beta1.GenerateExclusivityManifestRequest; - /** Location leadingDetachedComments. */ - public leadingDetachedComments: string[]; + /** + * Verifies a GenerateExclusivityManifestRequest message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); - /** - * 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; + /** + * Creates a GenerateExclusivityManifestRequest message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns GenerateExclusivityManifestRequest + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.v1beta1.GenerateExclusivityManifestRequest; - /** - * 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; + /** + * Creates a plain object from a GenerateExclusivityManifestRequest message. Also converts values to other types if specified. + * @param message GenerateExclusivityManifestRequest + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.v1beta1.GenerateExclusivityManifestRequest, options?: $protobuf.IConversionOptions): { [k: string]: any }; - /** - * 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; + /** + * Converts this GenerateExclusivityManifestRequest to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } - /** - * 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; + /** Properties of a GenerateExclusivityManifestResponse. */ + interface IGenerateExclusivityManifestResponse { - /** - * 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; + /** GenerateExclusivityManifestResponse crdManifest */ + crdManifest?: (string|null); - /** - * 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); + /** GenerateExclusivityManifestResponse crManifest */ + crManifest?: (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; + /** Represents a GenerateExclusivityManifestResponse. */ + class GenerateExclusivityManifestResponse implements IGenerateExclusivityManifestResponse { - /** - * 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 }; + /** + * Constructs a new GenerateExclusivityManifestResponse. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.v1beta1.IGenerateExclusivityManifestResponse); - /** - * Converts this Location to JSON. - * @returns JSON object - */ - public toJSON(): { [k: string]: any }; - } - } + /** GenerateExclusivityManifestResponse crdManifest. */ + public crdManifest: string; - /** Properties of a GeneratedCodeInfo. */ - interface IGeneratedCodeInfo { + /** GenerateExclusivityManifestResponse crManifest. */ + public crManifest: string; - /** GeneratedCodeInfo annotation */ - annotation?: (google.protobuf.GeneratedCodeInfo.IAnnotation[]|null); - } + /** + * Creates a new GenerateExclusivityManifestResponse instance using the specified properties. + * @param [properties] Properties to set + * @returns GenerateExclusivityManifestResponse instance + */ + public static create(properties?: google.cloud.gkehub.v1beta1.IGenerateExclusivityManifestResponse): google.cloud.gkehub.v1beta1.GenerateExclusivityManifestResponse; - /** Represents a GeneratedCodeInfo. */ - class GeneratedCodeInfo implements IGeneratedCodeInfo { + /** + * Encodes the specified GenerateExclusivityManifestResponse message. Does not implicitly {@link google.cloud.gkehub.v1beta1.GenerateExclusivityManifestResponse.verify|verify} messages. + * @param message GenerateExclusivityManifestResponse message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.v1beta1.IGenerateExclusivityManifestResponse, writer?: $protobuf.Writer): $protobuf.Writer; - /** - * Constructs a new GeneratedCodeInfo. - * @param [properties] Properties to set - */ - constructor(properties?: google.protobuf.IGeneratedCodeInfo); + /** + * Encodes the specified GenerateExclusivityManifestResponse message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta1.GenerateExclusivityManifestResponse.verify|verify} messages. + * @param message GenerateExclusivityManifestResponse message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.v1beta1.IGenerateExclusivityManifestResponse, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a GenerateExclusivityManifestResponse message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns GenerateExclusivityManifestResponse + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.v1beta1.GenerateExclusivityManifestResponse; - /** GeneratedCodeInfo annotation. */ - public annotation: google.protobuf.GeneratedCodeInfo.IAnnotation[]; + /** + * Decodes a GenerateExclusivityManifestResponse message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns GenerateExclusivityManifestResponse + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.v1beta1.GenerateExclusivityManifestResponse; - /** - * 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; + /** + * Verifies a GenerateExclusivityManifestResponse message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); - /** - * 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; + /** + * Creates a GenerateExclusivityManifestResponse message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns GenerateExclusivityManifestResponse + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.v1beta1.GenerateExclusivityManifestResponse; - /** - * 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; + /** + * Creates a plain object from a GenerateExclusivityManifestResponse message. Also converts values to other types if specified. + * @param message GenerateExclusivityManifestResponse + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.v1beta1.GenerateExclusivityManifestResponse, options?: $protobuf.IConversionOptions): { [k: string]: any }; - /** - * 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; + /** + * Converts this GenerateExclusivityManifestResponse to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } - /** - * 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; + /** Properties of an OperationMetadata. */ + interface IOperationMetadata { - /** - * 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); + /** OperationMetadata createTime */ + createTime?: (google.protobuf.ITimestamp|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; + /** OperationMetadata endTime */ + endTime?: (google.protobuf.ITimestamp|null); - /** - * 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 }; + /** OperationMetadata target */ + target?: (string|null); - /** - * Converts this GeneratedCodeInfo to JSON. - * @returns JSON object - */ - public toJSON(): { [k: string]: any }; - } + /** OperationMetadata verb */ + verb?: (string|null); - namespace GeneratedCodeInfo { + /** OperationMetadata statusDetail */ + statusDetail?: (string|null); - /** Properties of an Annotation. */ - interface IAnnotation { + /** OperationMetadata cancelRequested */ + cancelRequested?: (boolean|null); - /** Annotation path */ - path?: (number[]|null); + /** OperationMetadata apiVersion */ + apiVersion?: (string|null); + } - /** Annotation sourceFile */ - sourceFile?: (string|null); + /** Represents an OperationMetadata. */ + class OperationMetadata implements IOperationMetadata { - /** Annotation begin */ - begin?: (number|null); + /** + * Constructs a new OperationMetadata. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.v1beta1.IOperationMetadata); - /** Annotation end */ - end?: (number|null); - } + /** OperationMetadata createTime. */ + public createTime?: (google.protobuf.ITimestamp|null); - /** Represents an Annotation. */ - class Annotation implements IAnnotation { + /** OperationMetadata endTime. */ + public endTime?: (google.protobuf.ITimestamp|null); - /** - * Constructs a new Annotation. - * @param [properties] Properties to set - */ - constructor(properties?: google.protobuf.GeneratedCodeInfo.IAnnotation); + /** OperationMetadata target. */ + public target: string; - /** Annotation path. */ - public path: number[]; + /** OperationMetadata verb. */ + public verb: string; - /** Annotation sourceFile. */ - public sourceFile: string; + /** OperationMetadata statusDetail. */ + public statusDetail: string; - /** Annotation begin. */ - public begin: number; + /** OperationMetadata cancelRequested. */ + public cancelRequested: boolean; - /** Annotation end. */ - public end: number; + /** OperationMetadata apiVersion. */ + public apiVersion: string; - /** - * 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; + /** + * Creates a new OperationMetadata instance using the specified properties. + * @param [properties] Properties to set + * @returns OperationMetadata instance + */ + public static create(properties?: google.cloud.gkehub.v1beta1.IOperationMetadata): google.cloud.gkehub.v1beta1.OperationMetadata; - /** - * 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 OperationMetadata message. Does not implicitly {@link google.cloud.gkehub.v1beta1.OperationMetadata.verify|verify} messages. + * @param message OperationMetadata message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.v1beta1.IOperationMetadata, 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; + /** + * Encodes the specified OperationMetadata message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta1.OperationMetadata.verify|verify} messages. + * @param message OperationMetadata message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.v1beta1.IOperationMetadata, 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 OperationMetadata message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns OperationMetadata + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.v1beta1.OperationMetadata; - /** - * 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; + /** + * Decodes an OperationMetadata message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns OperationMetadata + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.v1beta1.OperationMetadata; - /** - * 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); + /** + * Verifies an OperationMetadata message. + * @param message Plain 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 an OperationMetadata message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns OperationMetadata + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.v1beta1.OperationMetadata; - /** - * 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 }; + /** + * Creates a plain object from an OperationMetadata message. Also converts values to other types if specified. + * @param message OperationMetadata + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.v1beta1.OperationMetadata, options?: $protobuf.IConversionOptions): { [k: string]: any }; - /** - * Converts this Annotation to JSON. - * @returns JSON object - */ - public toJSON(): { [k: string]: any }; + /** + * Converts this OperationMetadata to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } } } + } - /** Properties of an Any. */ - interface IAny { + /** Namespace api. */ + namespace api { - /** Any type_url */ - type_url?: (string|null); + /** Properties of a Http. */ + interface IHttp { - /** Any value */ - value?: (Uint8Array|string|null); + /** Http rules */ + rules?: (google.api.IHttpRule[]|null); + + /** Http fullyDecodeReservedExpansion */ + fullyDecodeReservedExpansion?: (boolean|null); } - /** Represents an Any. */ - class Any implements IAny { + /** Represents a Http. */ + class Http implements IHttp { /** - * Constructs a new Any. + * Constructs a new Http. * @param [properties] Properties to set */ - constructor(properties?: google.protobuf.IAny); + constructor(properties?: google.api.IHttp); - /** Any type_url. */ - public type_url: string; + /** Http rules. */ + public rules: google.api.IHttpRule[]; - /** Any value. */ - public value: (Uint8Array|string); + /** Http fullyDecodeReservedExpansion. */ + public fullyDecodeReservedExpansion: boolean; /** - * Creates a new Any instance using the specified properties. + * Creates a new Http instance using the specified properties. * @param [properties] Properties to set - * @returns Any instance + * @returns Http instance */ - public static create(properties?: google.protobuf.IAny): google.protobuf.Any; + public static create(properties?: google.api.IHttp): google.api.Http; /** - * Encodes the specified Any message. Does not implicitly {@link google.protobuf.Any.verify|verify} messages. - * @param message Any message or plain object to encode + * 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.protobuf.IAny, writer?: $protobuf.Writer): $protobuf.Writer; + public static encode(message: google.api.IHttp, 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 + * 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.protobuf.IAny, writer?: $protobuf.Writer): $protobuf.Writer; + public static encodeDelimited(message: google.api.IHttp, writer?: $protobuf.Writer): $protobuf.Writer; /** - * Decodes an Any message from the specified reader or buffer. + * 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 Any + * @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.protobuf.Any; + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.api.Http; /** - * Decodes an Any message from the specified reader or buffer, length delimited. + * Decodes a Http message from the specified reader or buffer, length delimited. * @param reader Reader or buffer to decode from - * @returns Any + * @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.protobuf.Any; + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.api.Http; /** - * Verifies an Any message. + * 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 an Any message from a plain object. Also converts values to their respective internal types. + * Creates a Http message from a plain object. Also converts values to their respective internal types. * @param object Plain object - * @returns Any + * @returns Http */ - public static fromObject(object: { [k: string]: any }): google.protobuf.Any; + public static fromObject(object: { [k: string]: any }): google.api.Http; /** - * Creates a plain object from an Any message. Also converts values to other types if specified. - * @param message Any + * 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.protobuf.Any, options?: $protobuf.IConversionOptions): { [k: string]: any }; + public static toObject(message: google.api.Http, options?: $protobuf.IConversionOptions): { [k: string]: any }; /** - * Converts this Any to JSON. + * Converts this Http to JSON. * @returns JSON object */ public toJSON(): { [k: string]: any }; } - /** Properties of a Duration. */ - interface IDuration { + /** Properties of a HttpRule. */ + interface IHttpRule { - /** Duration seconds */ - seconds?: (number|Long|string|null); + /** HttpRule selector */ + selector?: (string|null); - /** Duration nanos */ - nanos?: (number|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 Duration. */ - class Duration implements IDuration { + /** Represents a HttpRule. */ + class HttpRule implements IHttpRule { /** - * Constructs a new Duration. + * Constructs a new HttpRule. * @param [properties] Properties to set */ - constructor(properties?: google.protobuf.IDuration); + constructor(properties?: google.api.IHttpRule); - /** Duration seconds. */ - public seconds: (number|Long|string); + /** HttpRule selector. */ + public selector: string; - /** Duration nanos. */ - public nanos: number; + /** 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 Duration instance using the specified properties. + * Creates a new HttpRule instance using the specified properties. * @param [properties] Properties to set - * @returns Duration instance + * @returns HttpRule instance */ - public static create(properties?: google.protobuf.IDuration): google.protobuf.Duration; + public static create(properties?: google.api.IHttpRule): google.api.HttpRule; /** - * Encodes the specified Duration message. Does not implicitly {@link google.protobuf.Duration.verify|verify} messages. - * @param message Duration message or plain object to encode + * 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.protobuf.IDuration, writer?: $protobuf.Writer): $protobuf.Writer; + public static encode(message: google.api.IHttpRule, 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 + * 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.protobuf.IDuration, writer?: $protobuf.Writer): $protobuf.Writer; + public static encodeDelimited(message: google.api.IHttpRule, writer?: $protobuf.Writer): $protobuf.Writer; /** - * Decodes a Duration message from the specified reader or buffer. + * 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 Duration + * @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.protobuf.Duration; + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.api.HttpRule; /** - * Decodes a Duration message from the specified reader or buffer, length delimited. + * Decodes a HttpRule message from the specified reader or buffer, length delimited. * @param reader Reader or buffer to decode from - * @returns Duration + * @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.protobuf.Duration; + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.api.HttpRule; /** - * Verifies a Duration message. + * 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 Duration message from a plain object. Also converts values to their respective internal types. + * Creates a HttpRule message from a plain object. Also converts values to their respective internal types. * @param object Plain object - * @returns Duration + * @returns HttpRule */ - public static fromObject(object: { [k: string]: any }): google.protobuf.Duration; + public static fromObject(object: { [k: string]: any }): google.api.HttpRule; /** - * Creates a plain object from a Duration message. Also converts values to other types if specified. - * @param message Duration + * 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.protobuf.Duration, options?: $protobuf.IConversionOptions): { [k: string]: any }; + public static toObject(message: google.api.HttpRule, options?: $protobuf.IConversionOptions): { [k: string]: any }; /** - * Converts this Duration to JSON. + * Converts this HttpRule to JSON. * @returns JSON object */ public toJSON(): { [k: string]: any }; } - /** Properties of an Empty. */ - interface IEmpty { + /** Properties of a CustomHttpPattern. */ + interface ICustomHttpPattern { + + /** CustomHttpPattern kind */ + kind?: (string|null); + + /** CustomHttpPattern path */ + path?: (string|null); } - /** Represents an Empty. */ - class Empty implements IEmpty { + /** 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; - /** - * Constructs a new Empty. - * @param [properties] Properties to set - */ - constructor(properties?: google.protobuf.IEmpty); + /** CustomHttpPattern path. */ + public path: string; /** - * Creates a new Empty instance using the specified properties. + * Creates a new CustomHttpPattern instance using the specified properties. * @param [properties] Properties to set - * @returns Empty instance + * @returns CustomHttpPattern instance */ - public static create(properties?: google.protobuf.IEmpty): google.protobuf.Empty; + public static create(properties?: google.api.ICustomHttpPattern): google.api.CustomHttpPattern; /** - * Encodes the specified Empty message. Does not implicitly {@link google.protobuf.Empty.verify|verify} messages. - * @param message Empty message or plain object to encode + * 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.protobuf.IEmpty, writer?: $protobuf.Writer): $protobuf.Writer; + public static encode(message: google.api.ICustomHttpPattern, 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 + * 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.protobuf.IEmpty, writer?: $protobuf.Writer): $protobuf.Writer; + public static encodeDelimited(message: google.api.ICustomHttpPattern, writer?: $protobuf.Writer): $protobuf.Writer; /** - * Decodes an Empty message from the specified reader or buffer. + * 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 Empty + * @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.protobuf.Empty; + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.api.CustomHttpPattern; /** - * Decodes an Empty message from the specified reader or buffer, length delimited. + * Decodes a CustomHttpPattern message from the specified reader or buffer, length delimited. * @param reader Reader or buffer to decode from - * @returns Empty + * @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.protobuf.Empty; + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.api.CustomHttpPattern; /** - * Verifies an Empty message. + * 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 an Empty message from a plain object. Also converts values to their respective internal types. + * Creates a CustomHttpPattern message from a plain object. Also converts values to their respective internal types. * @param object Plain object - * @returns Empty + * @returns CustomHttpPattern */ - public static fromObject(object: { [k: string]: any }): google.protobuf.Empty; + public static fromObject(object: { [k: string]: any }): google.api.CustomHttpPattern; /** - * Creates a plain object from an Empty message. Also converts values to other types if specified. - * @param message Empty + * 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.protobuf.Empty, options?: $protobuf.IConversionOptions): { [k: string]: any }; + public static toObject(message: google.api.CustomHttpPattern, options?: $protobuf.IConversionOptions): { [k: string]: any }; /** - * Converts this Empty to JSON. + * Converts this CustomHttpPattern to JSON. * @returns JSON object */ public toJSON(): { [k: string]: any }; } - /** Properties of a FieldMask. */ - interface IFieldMask { + /** FieldBehavior enum. */ + enum FieldBehavior { + FIELD_BEHAVIOR_UNSPECIFIED = 0, + OPTIONAL = 1, + REQUIRED = 2, + OUTPUT_ONLY = 3, + INPUT_ONLY = 4, + IMMUTABLE = 5, + UNORDERED_LIST = 6 + } - /** FieldMask paths */ - paths?: (string[]|null); + /** 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 FieldMask. */ - class FieldMask implements IFieldMask { + /** Represents a ResourceDescriptor. */ + class ResourceDescriptor implements IResourceDescriptor { /** - * Constructs a new FieldMask. + * Constructs a new ResourceDescriptor. * @param [properties] Properties to set */ - constructor(properties?: google.protobuf.IFieldMask); + constructor(properties?: google.api.IResourceDescriptor); - /** FieldMask paths. */ - public paths: string[]; + /** 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 FieldMask instance using the specified properties. + * Creates a new ResourceDescriptor instance using the specified properties. * @param [properties] Properties to set - * @returns FieldMask instance + * @returns ResourceDescriptor instance */ - public static create(properties?: google.protobuf.IFieldMask): google.protobuf.FieldMask; + public static create(properties?: google.api.IResourceDescriptor): google.api.ResourceDescriptor; /** - * Encodes the specified FieldMask message. Does not implicitly {@link google.protobuf.FieldMask.verify|verify} messages. - * @param message FieldMask message or plain object to encode + * 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.protobuf.IFieldMask, writer?: $protobuf.Writer): $protobuf.Writer; + public static encode(message: google.api.IResourceDescriptor, writer?: $protobuf.Writer): $protobuf.Writer; /** - * Encodes the specified FieldMask message, length delimited. Does not implicitly {@link google.protobuf.FieldMask.verify|verify} messages. - * @param message FieldMask message or plain object to encode + * 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.protobuf.IFieldMask, writer?: $protobuf.Writer): $protobuf.Writer; + public static encodeDelimited(message: google.api.IResourceDescriptor, writer?: $protobuf.Writer): $protobuf.Writer; /** - * Decodes a FieldMask message from the specified reader or buffer. + * 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 FieldMask + * @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.protobuf.FieldMask; + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.api.ResourceDescriptor; /** - * Decodes a FieldMask message from the specified reader or buffer, length delimited. + * Decodes a ResourceDescriptor message from the specified reader or buffer, length delimited. * @param reader Reader or buffer to decode from - * @returns FieldMask + * @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.protobuf.FieldMask; + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.api.ResourceDescriptor; /** - * Verifies a FieldMask message. + * 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 FieldMask message from a plain object. Also converts values to their respective internal types. + * Creates a ResourceDescriptor message from a plain object. Also converts values to their respective internal types. * @param object Plain object - * @returns FieldMask + * @returns ResourceDescriptor */ - public static fromObject(object: { [k: string]: any }): google.protobuf.FieldMask; + public static fromObject(object: { [k: string]: any }): google.api.ResourceDescriptor; /** - * Creates a plain object from a FieldMask message. Also converts values to other types if specified. - * @param message FieldMask + * 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.protobuf.FieldMask, options?: $protobuf.IConversionOptions): { [k: string]: any }; + public static toObject(message: google.api.ResourceDescriptor, options?: $protobuf.IConversionOptions): { [k: string]: any }; /** - * Converts this FieldMask to JSON. + * Converts this ResourceDescriptor to JSON. * @returns JSON object */ public toJSON(): { [k: string]: any }; } - /** Properties of a Timestamp. */ - interface ITimestamp { + namespace ResourceDescriptor { - /** Timestamp seconds */ - seconds?: (number|Long|string|null); + /** History enum. */ + enum History { + HISTORY_UNSPECIFIED = 0, + ORIGINALLY_SINGLE_PATTERN = 1, + FUTURE_MULTI_PATTERN = 2 + } - /** Timestamp nanos */ - nanos?: (number|null); + /** Style enum. */ + enum Style { + STYLE_UNSPECIFIED = 0, + DECLARATIVE_FRIENDLY = 1 + } } - /** Represents a Timestamp. */ - class Timestamp implements ITimestamp { + /** 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 Timestamp. + * Constructs a new ResourceReference. * @param [properties] Properties to set */ - constructor(properties?: google.protobuf.ITimestamp); + constructor(properties?: google.api.IResourceReference); - /** Timestamp seconds. */ - public seconds: (number|Long|string); + /** ResourceReference type. */ + public type: string; - /** Timestamp nanos. */ - public nanos: number; + /** ResourceReference childType. */ + public childType: string; /** - * Creates a new Timestamp instance using the specified properties. + * Creates a new ResourceReference instance using the specified properties. * @param [properties] Properties to set - * @returns Timestamp instance + * @returns ResourceReference instance */ - public static create(properties?: google.protobuf.ITimestamp): google.protobuf.Timestamp; + public static create(properties?: google.api.IResourceReference): google.api.ResourceReference; /** - * Encodes the specified Timestamp message. Does not implicitly {@link google.protobuf.Timestamp.verify|verify} messages. - * @param message Timestamp message or plain object to encode + * 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.protobuf.ITimestamp, writer?: $protobuf.Writer): $protobuf.Writer; + public static encode(message: google.api.IResourceReference, 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 + * 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.protobuf.ITimestamp, writer?: $protobuf.Writer): $protobuf.Writer; + public static encodeDelimited(message: google.api.IResourceReference, writer?: $protobuf.Writer): $protobuf.Writer; /** - * Decodes a Timestamp message from the specified reader or buffer. + * 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 Timestamp + * @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.protobuf.Timestamp; + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.api.ResourceReference; /** - * Decodes a Timestamp message from the specified reader or buffer, length delimited. + * Decodes a ResourceReference message from the specified reader or buffer, length delimited. * @param reader Reader or buffer to decode from - * @returns Timestamp + * @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.protobuf.Timestamp; + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.api.ResourceReference; /** - * Verifies a Timestamp message. + * 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 Timestamp message from a plain object. Also converts values to their respective internal types. + * Creates a ResourceReference message from a plain object. Also converts values to their respective internal types. * @param object Plain object - * @returns Timestamp + * @returns ResourceReference */ - public static fromObject(object: { [k: string]: any }): google.protobuf.Timestamp; + public static fromObject(object: { [k: string]: any }): google.api.ResourceReference; /** - * Creates a plain object from a Timestamp message. Also converts values to other types if specified. - * @param message Timestamp + * 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.protobuf.Timestamp, options?: $protobuf.IConversionOptions): { [k: string]: any }; + public static toObject(message: google.api.ResourceReference, options?: $protobuf.IConversionOptions): { [k: string]: any }; /** - * Converts this Timestamp to JSON. + * Converts this ResourceReference to JSON. * @returns JSON object */ public toJSON(): { [k: string]: any }; diff --git a/packages/google-cloud-gkehub/protos/protos.js b/packages/google-cloud-gkehub/protos/protos.js index 8f32ebd5ffc..95e14892e06 100644 --- a/packages/google-cloud-gkehub/protos/protos.js +++ b/packages/google-cloud-gkehub/protos/protos.js @@ -39,569 +39,41765 @@ */ var google = {}; - google.cloud = (function() { + google.protobuf = (function() { /** - * Namespace cloud. + * Namespace protobuf. * @memberof google * @namespace */ - var cloud = {}; + var protobuf = {}; - cloud.gkehub = (function() { + protobuf.Timestamp = (function() { /** - * Namespace gkehub. - * @memberof google.cloud - * @namespace + * Properties of a Timestamp. + * @memberof google.protobuf + * @interface ITimestamp + * @property {number|Long|null} [seconds] Timestamp seconds + * @property {number|null} [nanos] Timestamp nanos */ - var gkehub = {}; - gkehub.v1beta1 = (function() { + /** + * Constructs a new Timestamp. + * @memberof google.protobuf + * @classdesc Represents a Timestamp. + * @implements ITimestamp + * @constructor + * @param {google.protobuf.ITimestamp=} [properties] Properties to set + */ + function Timestamp(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]]; + } - /** - * Namespace v1beta1. - * @memberof google.cloud.gkehub - * @namespace - */ - var v1beta1 = {}; + /** + * Timestamp seconds. + * @member {number|Long} seconds + * @memberof google.protobuf.Timestamp + * @instance + */ + Timestamp.prototype.seconds = $util.Long ? $util.Long.fromBits(0,0,false) : 0; - v1beta1.GkeHubMembershipService = (function() { + /** + * Timestamp nanos. + * @member {number} nanos + * @memberof google.protobuf.Timestamp + * @instance + */ + Timestamp.prototype.nanos = 0; - /** - * Constructs a new GkeHubMembershipService service. - * @memberof google.cloud.gkehub.v1beta1 - * @classdesc Represents a GkeHubMembershipService - * @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 GkeHubMembershipService(rpcImpl, requestDelimited, responseDelimited) { - $protobuf.rpc.Service.call(this, rpcImpl, requestDelimited, responseDelimited); - } + /** + * Creates a new Timestamp instance using the specified properties. + * @function create + * @memberof google.protobuf.Timestamp + * @static + * @param {google.protobuf.ITimestamp=} [properties] Properties to set + * @returns {google.protobuf.Timestamp} Timestamp instance + */ + Timestamp.create = function create(properties) { + return new Timestamp(properties); + }; - (GkeHubMembershipService.prototype = Object.create($protobuf.rpc.Service.prototype)).constructor = GkeHubMembershipService; + /** + * Encodes the specified Timestamp message. Does not implicitly {@link google.protobuf.Timestamp.verify|verify} messages. + * @function encode + * @memberof google.protobuf.Timestamp + * @static + * @param {google.protobuf.ITimestamp} message Timestamp message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + Timestamp.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.seconds != null && Object.hasOwnProperty.call(message, "seconds")) + writer.uint32(/* id 1, wireType 0 =*/8).int64(message.seconds); + if (message.nanos != null && Object.hasOwnProperty.call(message, "nanos")) + writer.uint32(/* id 2, wireType 0 =*/16).int32(message.nanos); + return writer; + }; - /** - * Creates new GkeHubMembershipService service using the specified rpc implementation. - * @function create - * @memberof google.cloud.gkehub.v1beta1.GkeHubMembershipService - * @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 {GkeHubMembershipService} RPC service. Useful where requests and/or responses are streamed. - */ - GkeHubMembershipService.create = function create(rpcImpl, requestDelimited, responseDelimited) { - return new this(rpcImpl, requestDelimited, responseDelimited); - }; + /** + * Encodes the specified Timestamp message, length delimited. Does not implicitly {@link google.protobuf.Timestamp.verify|verify} messages. + * @function encodeDelimited + * @memberof google.protobuf.Timestamp + * @static + * @param {google.protobuf.ITimestamp} message Timestamp message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + Timestamp.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; - /** - * Callback as used by {@link google.cloud.gkehub.v1beta1.GkeHubMembershipService#listMemberships}. - * @memberof google.cloud.gkehub.v1beta1.GkeHubMembershipService - * @typedef ListMembershipsCallback - * @type {function} - * @param {Error|null} error Error, if any - * @param {google.cloud.gkehub.v1beta1.ListMembershipsResponse} [response] ListMembershipsResponse - */ + /** + * Decodes a Timestamp message from the specified reader or buffer. + * @function decode + * @memberof google.protobuf.Timestamp + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.protobuf.Timestamp} Timestamp + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + Timestamp.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.protobuf.Timestamp(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.seconds = reader.int64(); + break; + case 2: + message.nanos = reader.int32(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; - /** - * Calls ListMemberships. - * @function listMemberships - * @memberof google.cloud.gkehub.v1beta1.GkeHubMembershipService - * @instance - * @param {google.cloud.gkehub.v1beta1.IListMembershipsRequest} request ListMembershipsRequest message or plain object - * @param {google.cloud.gkehub.v1beta1.GkeHubMembershipService.ListMembershipsCallback} callback Node-style callback called with the error, if any, and ListMembershipsResponse - * @returns {undefined} - * @variation 1 - */ - Object.defineProperty(GkeHubMembershipService.prototype.listMemberships = function listMemberships(request, callback) { - return this.rpcCall(listMemberships, $root.google.cloud.gkehub.v1beta1.ListMembershipsRequest, $root.google.cloud.gkehub.v1beta1.ListMembershipsResponse, request, callback); - }, "name", { value: "ListMemberships" }); + /** + * Decodes a Timestamp message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.protobuf.Timestamp + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.protobuf.Timestamp} Timestamp + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + Timestamp.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; - /** - * Calls ListMemberships. - * @function listMemberships - * @memberof google.cloud.gkehub.v1beta1.GkeHubMembershipService - * @instance - * @param {google.cloud.gkehub.v1beta1.IListMembershipsRequest} request ListMembershipsRequest message or plain object - * @returns {Promise} Promise - * @variation 2 - */ + /** + * Verifies a Timestamp message. + * @function verify + * @memberof google.protobuf.Timestamp + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + Timestamp.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.seconds != null && message.hasOwnProperty("seconds")) + if (!$util.isInteger(message.seconds) && !(message.seconds && $util.isInteger(message.seconds.low) && $util.isInteger(message.seconds.high))) + return "seconds: integer|Long expected"; + if (message.nanos != null && message.hasOwnProperty("nanos")) + if (!$util.isInteger(message.nanos)) + return "nanos: integer expected"; + return null; + }; - /** - * Callback as used by {@link google.cloud.gkehub.v1beta1.GkeHubMembershipService#getMembership}. - * @memberof google.cloud.gkehub.v1beta1.GkeHubMembershipService - * @typedef GetMembershipCallback - * @type {function} - * @param {Error|null} error Error, if any - * @param {google.cloud.gkehub.v1beta1.Membership} [response] Membership - */ + /** + * Creates a Timestamp message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.protobuf.Timestamp + * @static + * @param {Object.} object Plain object + * @returns {google.protobuf.Timestamp} Timestamp + */ + Timestamp.fromObject = function fromObject(object) { + if (object instanceof $root.google.protobuf.Timestamp) + return object; + var message = new $root.google.protobuf.Timestamp(); + if (object.seconds != null) + if ($util.Long) + (message.seconds = $util.Long.fromValue(object.seconds)).unsigned = false; + else if (typeof object.seconds === "string") + message.seconds = parseInt(object.seconds, 10); + else if (typeof object.seconds === "number") + message.seconds = object.seconds; + else if (typeof object.seconds === "object") + message.seconds = new $util.LongBits(object.seconds.low >>> 0, object.seconds.high >>> 0).toNumber(); + if (object.nanos != null) + message.nanos = object.nanos | 0; + return message; + }; - /** - * Calls GetMembership. - * @function getMembership - * @memberof google.cloud.gkehub.v1beta1.GkeHubMembershipService - * @instance - * @param {google.cloud.gkehub.v1beta1.IGetMembershipRequest} request GetMembershipRequest message or plain object - * @param {google.cloud.gkehub.v1beta1.GkeHubMembershipService.GetMembershipCallback} callback Node-style callback called with the error, if any, and Membership - * @returns {undefined} - * @variation 1 - */ - Object.defineProperty(GkeHubMembershipService.prototype.getMembership = function getMembership(request, callback) { - return this.rpcCall(getMembership, $root.google.cloud.gkehub.v1beta1.GetMembershipRequest, $root.google.cloud.gkehub.v1beta1.Membership, request, callback); - }, "name", { value: "GetMembership" }); - - /** - * Calls GetMembership. - * @function getMembership - * @memberof google.cloud.gkehub.v1beta1.GkeHubMembershipService - * @instance - * @param {google.cloud.gkehub.v1beta1.IGetMembershipRequest} request GetMembershipRequest message or plain object - * @returns {Promise} Promise - * @variation 2 - */ + /** + * Creates a plain object from a Timestamp message. Also converts values to other types if specified. + * @function toObject + * @memberof google.protobuf.Timestamp + * @static + * @param {google.protobuf.Timestamp} message Timestamp + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + Timestamp.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + if ($util.Long) { + var long = new $util.Long(0, 0, false); + object.seconds = options.longs === String ? long.toString() : options.longs === Number ? long.toNumber() : long; + } else + object.seconds = options.longs === String ? "0" : 0; + object.nanos = 0; + } + if (message.seconds != null && message.hasOwnProperty("seconds")) + if (typeof message.seconds === "number") + object.seconds = options.longs === String ? String(message.seconds) : message.seconds; + else + object.seconds = options.longs === String ? $util.Long.prototype.toString.call(message.seconds) : options.longs === Number ? new $util.LongBits(message.seconds.low >>> 0, message.seconds.high >>> 0).toNumber() : message.seconds; + if (message.nanos != null && message.hasOwnProperty("nanos")) + object.nanos = message.nanos; + return object; + }; - /** - * Callback as used by {@link google.cloud.gkehub.v1beta1.GkeHubMembershipService#createMembership}. - * @memberof google.cloud.gkehub.v1beta1.GkeHubMembershipService - * @typedef CreateMembershipCallback - * @type {function} - * @param {Error|null} error Error, if any - * @param {google.longrunning.Operation} [response] Operation - */ + /** + * Converts this Timestamp to JSON. + * @function toJSON + * @memberof google.protobuf.Timestamp + * @instance + * @returns {Object.} JSON object + */ + Timestamp.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; - /** - * Calls CreateMembership. - * @function createMembership - * @memberof google.cloud.gkehub.v1beta1.GkeHubMembershipService - * @instance - * @param {google.cloud.gkehub.v1beta1.ICreateMembershipRequest} request CreateMembershipRequest message or plain object - * @param {google.cloud.gkehub.v1beta1.GkeHubMembershipService.CreateMembershipCallback} callback Node-style callback called with the error, if any, and Operation - * @returns {undefined} - * @variation 1 - */ - Object.defineProperty(GkeHubMembershipService.prototype.createMembership = function createMembership(request, callback) { - return this.rpcCall(createMembership, $root.google.cloud.gkehub.v1beta1.CreateMembershipRequest, $root.google.longrunning.Operation, request, callback); - }, "name", { value: "CreateMembership" }); + return Timestamp; + })(); - /** - * Calls CreateMembership. - * @function createMembership - * @memberof google.cloud.gkehub.v1beta1.GkeHubMembershipService - * @instance - * @param {google.cloud.gkehub.v1beta1.ICreateMembershipRequest} request CreateMembershipRequest message or plain object - * @returns {Promise} Promise - * @variation 2 - */ + protobuf.FileDescriptorSet = (function() { - /** - * Callback as used by {@link google.cloud.gkehub.v1beta1.GkeHubMembershipService#deleteMembership}. - * @memberof google.cloud.gkehub.v1beta1.GkeHubMembershipService - * @typedef DeleteMembershipCallback - * @type {function} - * @param {Error|null} error Error, if any - * @param {google.longrunning.Operation} [response] Operation - */ + /** + * Properties of a FileDescriptorSet. + * @memberof google.protobuf + * @interface IFileDescriptorSet + * @property {Array.|null} [file] FileDescriptorSet file + */ - /** - * Calls DeleteMembership. - * @function deleteMembership - * @memberof google.cloud.gkehub.v1beta1.GkeHubMembershipService - * @instance - * @param {google.cloud.gkehub.v1beta1.IDeleteMembershipRequest} request DeleteMembershipRequest message or plain object - * @param {google.cloud.gkehub.v1beta1.GkeHubMembershipService.DeleteMembershipCallback} callback Node-style callback called with the error, if any, and Operation - * @returns {undefined} - * @variation 1 - */ - Object.defineProperty(GkeHubMembershipService.prototype.deleteMembership = function deleteMembership(request, callback) { - return this.rpcCall(deleteMembership, $root.google.cloud.gkehub.v1beta1.DeleteMembershipRequest, $root.google.longrunning.Operation, request, callback); - }, "name", { value: "DeleteMembership" }); + /** + * Constructs a new FileDescriptorSet. + * @memberof google.protobuf + * @classdesc Represents a FileDescriptorSet. + * @implements IFileDescriptorSet + * @constructor + * @param {google.protobuf.IFileDescriptorSet=} [properties] Properties to set + */ + function FileDescriptorSet(properties) { + this.file = []; + 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]]; + } - /** - * Calls DeleteMembership. - * @function deleteMembership - * @memberof google.cloud.gkehub.v1beta1.GkeHubMembershipService - * @instance - * @param {google.cloud.gkehub.v1beta1.IDeleteMembershipRequest} request DeleteMembershipRequest message or plain object - * @returns {Promise} Promise - * @variation 2 - */ + /** + * FileDescriptorSet file. + * @member {Array.} file + * @memberof google.protobuf.FileDescriptorSet + * @instance + */ + FileDescriptorSet.prototype.file = $util.emptyArray; - /** - * Callback as used by {@link google.cloud.gkehub.v1beta1.GkeHubMembershipService#updateMembership}. - * @memberof google.cloud.gkehub.v1beta1.GkeHubMembershipService - * @typedef UpdateMembershipCallback - * @type {function} - * @param {Error|null} error Error, if any - * @param {google.longrunning.Operation} [response] Operation - */ + /** + * Creates a new FileDescriptorSet instance using the specified properties. + * @function create + * @memberof google.protobuf.FileDescriptorSet + * @static + * @param {google.protobuf.IFileDescriptorSet=} [properties] Properties to set + * @returns {google.protobuf.FileDescriptorSet} FileDescriptorSet instance + */ + FileDescriptorSet.create = function create(properties) { + return new FileDescriptorSet(properties); + }; - /** - * Calls UpdateMembership. - * @function updateMembership - * @memberof google.cloud.gkehub.v1beta1.GkeHubMembershipService - * @instance - * @param {google.cloud.gkehub.v1beta1.IUpdateMembershipRequest} request UpdateMembershipRequest message or plain object - * @param {google.cloud.gkehub.v1beta1.GkeHubMembershipService.UpdateMembershipCallback} callback Node-style callback called with the error, if any, and Operation - * @returns {undefined} - * @variation 1 - */ - Object.defineProperty(GkeHubMembershipService.prototype.updateMembership = function updateMembership(request, callback) { - return this.rpcCall(updateMembership, $root.google.cloud.gkehub.v1beta1.UpdateMembershipRequest, $root.google.longrunning.Operation, request, callback); - }, "name", { value: "UpdateMembership" }); + /** + * Encodes the specified FileDescriptorSet message. Does not implicitly {@link google.protobuf.FileDescriptorSet.verify|verify} messages. + * @function encode + * @memberof google.protobuf.FileDescriptorSet + * @static + * @param {google.protobuf.IFileDescriptorSet} message FileDescriptorSet message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + FileDescriptorSet.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.file != null && message.file.length) + for (var i = 0; i < message.file.length; ++i) + $root.google.protobuf.FileDescriptorProto.encode(message.file[i], writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim(); + return writer; + }; - /** - * Calls UpdateMembership. - * @function updateMembership - * @memberof google.cloud.gkehub.v1beta1.GkeHubMembershipService - * @instance - * @param {google.cloud.gkehub.v1beta1.IUpdateMembershipRequest} request UpdateMembershipRequest message or plain object - * @returns {Promise} Promise - * @variation 2 - */ + /** + * Encodes the specified FileDescriptorSet message, length delimited. Does not implicitly {@link google.protobuf.FileDescriptorSet.verify|verify} messages. + * @function encodeDelimited + * @memberof google.protobuf.FileDescriptorSet + * @static + * @param {google.protobuf.IFileDescriptorSet} message FileDescriptorSet message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + FileDescriptorSet.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; - /** - * Callback as used by {@link google.cloud.gkehub.v1beta1.GkeHubMembershipService#generateConnectManifest}. - * @memberof google.cloud.gkehub.v1beta1.GkeHubMembershipService - * @typedef GenerateConnectManifestCallback - * @type {function} - * @param {Error|null} error Error, if any - * @param {google.cloud.gkehub.v1beta1.GenerateConnectManifestResponse} [response] GenerateConnectManifestResponse - */ + /** + * Decodes a FileDescriptorSet message from the specified reader or buffer. + * @function decode + * @memberof google.protobuf.FileDescriptorSet + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.protobuf.FileDescriptorSet} FileDescriptorSet + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + FileDescriptorSet.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.protobuf.FileDescriptorSet(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + if (!(message.file && message.file.length)) + message.file = []; + message.file.push($root.google.protobuf.FileDescriptorProto.decode(reader, reader.uint32())); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; - /** - * Calls GenerateConnectManifest. - * @function generateConnectManifest - * @memberof google.cloud.gkehub.v1beta1.GkeHubMembershipService - * @instance - * @param {google.cloud.gkehub.v1beta1.IGenerateConnectManifestRequest} request GenerateConnectManifestRequest message or plain object - * @param {google.cloud.gkehub.v1beta1.GkeHubMembershipService.GenerateConnectManifestCallback} callback Node-style callback called with the error, if any, and GenerateConnectManifestResponse - * @returns {undefined} - * @variation 1 - */ - Object.defineProperty(GkeHubMembershipService.prototype.generateConnectManifest = function generateConnectManifest(request, callback) { - return this.rpcCall(generateConnectManifest, $root.google.cloud.gkehub.v1beta1.GenerateConnectManifestRequest, $root.google.cloud.gkehub.v1beta1.GenerateConnectManifestResponse, request, callback); - }, "name", { value: "GenerateConnectManifest" }); + /** + * Decodes a FileDescriptorSet message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.protobuf.FileDescriptorSet + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.protobuf.FileDescriptorSet} FileDescriptorSet + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + FileDescriptorSet.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; - /** - * Calls GenerateConnectManifest. - * @function generateConnectManifest - * @memberof google.cloud.gkehub.v1beta1.GkeHubMembershipService - * @instance - * @param {google.cloud.gkehub.v1beta1.IGenerateConnectManifestRequest} request GenerateConnectManifestRequest message or plain object - * @returns {Promise} Promise - * @variation 2 - */ + /** + * Verifies a FileDescriptorSet message. + * @function verify + * @memberof google.protobuf.FileDescriptorSet + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + FileDescriptorSet.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.file != null && message.hasOwnProperty("file")) { + if (!Array.isArray(message.file)) + return "file: array expected"; + for (var i = 0; i < message.file.length; ++i) { + var error = $root.google.protobuf.FileDescriptorProto.verify(message.file[i]); + if (error) + return "file." + error; + } + } + return null; + }; - /** - * Callback as used by {@link google.cloud.gkehub.v1beta1.GkeHubMembershipService#validateExclusivity}. - * @memberof google.cloud.gkehub.v1beta1.GkeHubMembershipService - * @typedef ValidateExclusivityCallback - * @type {function} - * @param {Error|null} error Error, if any - * @param {google.cloud.gkehub.v1beta1.ValidateExclusivityResponse} [response] ValidateExclusivityResponse - */ + /** + * Creates a FileDescriptorSet message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.protobuf.FileDescriptorSet + * @static + * @param {Object.} object Plain object + * @returns {google.protobuf.FileDescriptorSet} FileDescriptorSet + */ + FileDescriptorSet.fromObject = function fromObject(object) { + if (object instanceof $root.google.protobuf.FileDescriptorSet) + return object; + var message = new $root.google.protobuf.FileDescriptorSet(); + if (object.file) { + if (!Array.isArray(object.file)) + throw TypeError(".google.protobuf.FileDescriptorSet.file: array expected"); + message.file = []; + for (var i = 0; i < object.file.length; ++i) { + if (typeof object.file[i] !== "object") + throw TypeError(".google.protobuf.FileDescriptorSet.file: object expected"); + message.file[i] = $root.google.protobuf.FileDescriptorProto.fromObject(object.file[i]); + } + } + return message; + }; - /** - * Calls ValidateExclusivity. - * @function validateExclusivity - * @memberof google.cloud.gkehub.v1beta1.GkeHubMembershipService - * @instance - * @param {google.cloud.gkehub.v1beta1.IValidateExclusivityRequest} request ValidateExclusivityRequest message or plain object - * @param {google.cloud.gkehub.v1beta1.GkeHubMembershipService.ValidateExclusivityCallback} callback Node-style callback called with the error, if any, and ValidateExclusivityResponse - * @returns {undefined} - * @variation 1 - */ - Object.defineProperty(GkeHubMembershipService.prototype.validateExclusivity = function validateExclusivity(request, callback) { - return this.rpcCall(validateExclusivity, $root.google.cloud.gkehub.v1beta1.ValidateExclusivityRequest, $root.google.cloud.gkehub.v1beta1.ValidateExclusivityResponse, request, callback); - }, "name", { value: "ValidateExclusivity" }); + /** + * Creates a plain object from a FileDescriptorSet message. Also converts values to other types if specified. + * @function toObject + * @memberof google.protobuf.FileDescriptorSet + * @static + * @param {google.protobuf.FileDescriptorSet} message FileDescriptorSet + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + FileDescriptorSet.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.arrays || options.defaults) + object.file = []; + if (message.file && message.file.length) { + object.file = []; + for (var j = 0; j < message.file.length; ++j) + object.file[j] = $root.google.protobuf.FileDescriptorProto.toObject(message.file[j], options); + } + return object; + }; - /** - * Calls ValidateExclusivity. - * @function validateExclusivity - * @memberof google.cloud.gkehub.v1beta1.GkeHubMembershipService - * @instance - * @param {google.cloud.gkehub.v1beta1.IValidateExclusivityRequest} request ValidateExclusivityRequest message or plain object - * @returns {Promise} Promise - * @variation 2 - */ + /** + * Converts this FileDescriptorSet to JSON. + * @function toJSON + * @memberof google.protobuf.FileDescriptorSet + * @instance + * @returns {Object.} JSON object + */ + FileDescriptorSet.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; - /** - * Callback as used by {@link google.cloud.gkehub.v1beta1.GkeHubMembershipService#generateExclusivityManifest}. - * @memberof google.cloud.gkehub.v1beta1.GkeHubMembershipService - * @typedef GenerateExclusivityManifestCallback - * @type {function} - * @param {Error|null} error Error, if any - * @param {google.cloud.gkehub.v1beta1.GenerateExclusivityManifestResponse} [response] GenerateExclusivityManifestResponse - */ + return FileDescriptorSet; + })(); - /** - * Calls GenerateExclusivityManifest. - * @function generateExclusivityManifest - * @memberof google.cloud.gkehub.v1beta1.GkeHubMembershipService - * @instance - * @param {google.cloud.gkehub.v1beta1.IGenerateExclusivityManifestRequest} request GenerateExclusivityManifestRequest message or plain object - * @param {google.cloud.gkehub.v1beta1.GkeHubMembershipService.GenerateExclusivityManifestCallback} callback Node-style callback called with the error, if any, and GenerateExclusivityManifestResponse - * @returns {undefined} - * @variation 1 - */ - Object.defineProperty(GkeHubMembershipService.prototype.generateExclusivityManifest = function generateExclusivityManifest(request, callback) { - return this.rpcCall(generateExclusivityManifest, $root.google.cloud.gkehub.v1beta1.GenerateExclusivityManifestRequest, $root.google.cloud.gkehub.v1beta1.GenerateExclusivityManifestResponse, request, callback); - }, "name", { value: "GenerateExclusivityManifest" }); + protobuf.FileDescriptorProto = (function() { - /** - * Calls GenerateExclusivityManifest. - * @function generateExclusivityManifest - * @memberof google.cloud.gkehub.v1beta1.GkeHubMembershipService - * @instance - * @param {google.cloud.gkehub.v1beta1.IGenerateExclusivityManifestRequest} request GenerateExclusivityManifestRequest message or plain object - * @returns {Promise} Promise - * @variation 2 - */ + /** + * Properties of a FileDescriptorProto. + * @memberof google.protobuf + * @interface IFileDescriptorProto + * @property {string|null} [name] FileDescriptorProto name + * @property {string|null} ["package"] FileDescriptorProto package + * @property {Array.|null} [dependency] FileDescriptorProto dependency + * @property {Array.|null} [publicDependency] FileDescriptorProto publicDependency + * @property {Array.|null} [weakDependency] FileDescriptorProto weakDependency + * @property {Array.|null} [messageType] FileDescriptorProto messageType + * @property {Array.|null} [enumType] FileDescriptorProto enumType + * @property {Array.|null} [service] FileDescriptorProto service + * @property {Array.|null} [extension] FileDescriptorProto extension + * @property {google.protobuf.IFileOptions|null} [options] FileDescriptorProto options + * @property {google.protobuf.ISourceCodeInfo|null} [sourceCodeInfo] FileDescriptorProto sourceCodeInfo + * @property {string|null} [syntax] FileDescriptorProto syntax + */ - return GkeHubMembershipService; - })(); + /** + * Constructs a new FileDescriptorProto. + * @memberof google.protobuf + * @classdesc Represents a FileDescriptorProto. + * @implements IFileDescriptorProto + * @constructor + * @param {google.protobuf.IFileDescriptorProto=} [properties] Properties to set + */ + function FileDescriptorProto(properties) { + this.dependency = []; + this.publicDependency = []; + this.weakDependency = []; + this.messageType = []; + this.enumType = []; + this.service = []; + this.extension = []; + 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]]; + } - v1beta1.Membership = (function() { + /** + * FileDescriptorProto name. + * @member {string} name + * @memberof google.protobuf.FileDescriptorProto + * @instance + */ + FileDescriptorProto.prototype.name = ""; - /** - * Properties of a Membership. - * @memberof google.cloud.gkehub.v1beta1 - * @interface IMembership - * @property {string|null} [name] Membership name - * @property {Object.|null} [labels] Membership labels - * @property {string|null} [description] Membership description - * @property {google.cloud.gkehub.v1beta1.IMembershipEndpoint|null} [endpoint] Membership endpoint - * @property {google.cloud.gkehub.v1beta1.IMembershipState|null} [state] Membership state - * @property {google.cloud.gkehub.v1beta1.IAuthority|null} [authority] Membership authority - * @property {google.protobuf.ITimestamp|null} [createTime] Membership createTime - * @property {google.protobuf.ITimestamp|null} [updateTime] Membership updateTime - * @property {google.protobuf.ITimestamp|null} [deleteTime] Membership deleteTime - * @property {string|null} [externalId] Membership externalId - * @property {google.protobuf.ITimestamp|null} [lastConnectionTime] Membership lastConnectionTime - * @property {string|null} [uniqueId] Membership uniqueId - * @property {google.cloud.gkehub.v1beta1.Membership.InfrastructureType|null} [infrastructureType] Membership infrastructureType - */ + /** + * FileDescriptorProto package. + * @member {string} package + * @memberof google.protobuf.FileDescriptorProto + * @instance + */ + FileDescriptorProto.prototype["package"] = ""; - /** - * Constructs a new Membership. - * @memberof google.cloud.gkehub.v1beta1 - * @classdesc Represents a Membership. - * @implements IMembership - * @constructor - * @param {google.cloud.gkehub.v1beta1.IMembership=} [properties] Properties to set - */ - function Membership(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]]; - } - - /** - * Membership name. - * @member {string} name - * @memberof google.cloud.gkehub.v1beta1.Membership - * @instance - */ - Membership.prototype.name = ""; - - /** - * Membership labels. - * @member {Object.} labels - * @memberof google.cloud.gkehub.v1beta1.Membership - * @instance - */ - Membership.prototype.labels = $util.emptyObject; - - /** - * Membership description. - * @member {string} description - * @memberof google.cloud.gkehub.v1beta1.Membership - * @instance - */ - Membership.prototype.description = ""; + /** + * FileDescriptorProto dependency. + * @member {Array.} dependency + * @memberof google.protobuf.FileDescriptorProto + * @instance + */ + FileDescriptorProto.prototype.dependency = $util.emptyArray; - /** - * Membership endpoint. - * @member {google.cloud.gkehub.v1beta1.IMembershipEndpoint|null|undefined} endpoint - * @memberof google.cloud.gkehub.v1beta1.Membership - * @instance - */ - Membership.prototype.endpoint = null; + /** + * FileDescriptorProto publicDependency. + * @member {Array.} publicDependency + * @memberof google.protobuf.FileDescriptorProto + * @instance + */ + FileDescriptorProto.prototype.publicDependency = $util.emptyArray; - /** - * Membership state. - * @member {google.cloud.gkehub.v1beta1.IMembershipState|null|undefined} state - * @memberof google.cloud.gkehub.v1beta1.Membership - * @instance - */ - Membership.prototype.state = null; + /** + * FileDescriptorProto weakDependency. + * @member {Array.} weakDependency + * @memberof google.protobuf.FileDescriptorProto + * @instance + */ + FileDescriptorProto.prototype.weakDependency = $util.emptyArray; - /** - * Membership authority. - * @member {google.cloud.gkehub.v1beta1.IAuthority|null|undefined} authority - * @memberof google.cloud.gkehub.v1beta1.Membership - * @instance - */ - Membership.prototype.authority = null; + /** + * FileDescriptorProto messageType. + * @member {Array.} messageType + * @memberof google.protobuf.FileDescriptorProto + * @instance + */ + FileDescriptorProto.prototype.messageType = $util.emptyArray; - /** - * Membership createTime. - * @member {google.protobuf.ITimestamp|null|undefined} createTime - * @memberof google.cloud.gkehub.v1beta1.Membership - * @instance - */ - Membership.prototype.createTime = null; + /** + * FileDescriptorProto enumType. + * @member {Array.} enumType + * @memberof google.protobuf.FileDescriptorProto + * @instance + */ + FileDescriptorProto.prototype.enumType = $util.emptyArray; - /** - * Membership updateTime. - * @member {google.protobuf.ITimestamp|null|undefined} updateTime - * @memberof google.cloud.gkehub.v1beta1.Membership - * @instance - */ - Membership.prototype.updateTime = null; + /** + * FileDescriptorProto service. + * @member {Array.} service + * @memberof google.protobuf.FileDescriptorProto + * @instance + */ + FileDescriptorProto.prototype.service = $util.emptyArray; - /** - * Membership deleteTime. - * @member {google.protobuf.ITimestamp|null|undefined} deleteTime - * @memberof google.cloud.gkehub.v1beta1.Membership - * @instance - */ - Membership.prototype.deleteTime = null; + /** + * FileDescriptorProto extension. + * @member {Array.} extension + * @memberof google.protobuf.FileDescriptorProto + * @instance + */ + FileDescriptorProto.prototype.extension = $util.emptyArray; - /** - * Membership externalId. - * @member {string} externalId - * @memberof google.cloud.gkehub.v1beta1.Membership - * @instance - */ - Membership.prototype.externalId = ""; + /** + * FileDescriptorProto options. + * @member {google.protobuf.IFileOptions|null|undefined} options + * @memberof google.protobuf.FileDescriptorProto + * @instance + */ + FileDescriptorProto.prototype.options = null; - /** - * Membership lastConnectionTime. - * @member {google.protobuf.ITimestamp|null|undefined} lastConnectionTime - * @memberof google.cloud.gkehub.v1beta1.Membership - * @instance - */ - Membership.prototype.lastConnectionTime = null; + /** + * FileDescriptorProto sourceCodeInfo. + * @member {google.protobuf.ISourceCodeInfo|null|undefined} sourceCodeInfo + * @memberof google.protobuf.FileDescriptorProto + * @instance + */ + FileDescriptorProto.prototype.sourceCodeInfo = null; - /** - * Membership uniqueId. - * @member {string} uniqueId - * @memberof google.cloud.gkehub.v1beta1.Membership - * @instance - */ - Membership.prototype.uniqueId = ""; + /** + * FileDescriptorProto syntax. + * @member {string} syntax + * @memberof google.protobuf.FileDescriptorProto + * @instance + */ + FileDescriptorProto.prototype.syntax = ""; - /** - * Membership infrastructureType. - * @member {google.cloud.gkehub.v1beta1.Membership.InfrastructureType} infrastructureType - * @memberof google.cloud.gkehub.v1beta1.Membership - * @instance - */ - Membership.prototype.infrastructureType = 0; + /** + * Creates a new FileDescriptorProto instance using the specified properties. + * @function create + * @memberof google.protobuf.FileDescriptorProto + * @static + * @param {google.protobuf.IFileDescriptorProto=} [properties] Properties to set + * @returns {google.protobuf.FileDescriptorProto} FileDescriptorProto instance + */ + FileDescriptorProto.create = function create(properties) { + return new FileDescriptorProto(properties); + }; - // OneOf field names bound to virtual getters and setters - var $oneOfFields; + /** + * Encodes the specified FileDescriptorProto message. Does not implicitly {@link google.protobuf.FileDescriptorProto.verify|verify} messages. + * @function encode + * @memberof google.protobuf.FileDescriptorProto + * @static + * @param {google.protobuf.IFileDescriptorProto} message FileDescriptorProto message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + FileDescriptorProto.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.name != null && Object.hasOwnProperty.call(message, "name")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.name); + if (message["package"] != null && Object.hasOwnProperty.call(message, "package")) + writer.uint32(/* id 2, wireType 2 =*/18).string(message["package"]); + if (message.dependency != null && message.dependency.length) + for (var i = 0; i < message.dependency.length; ++i) + writer.uint32(/* id 3, wireType 2 =*/26).string(message.dependency[i]); + if (message.messageType != null && message.messageType.length) + for (var i = 0; i < message.messageType.length; ++i) + $root.google.protobuf.DescriptorProto.encode(message.messageType[i], writer.uint32(/* id 4, wireType 2 =*/34).fork()).ldelim(); + if (message.enumType != null && message.enumType.length) + for (var i = 0; i < message.enumType.length; ++i) + $root.google.protobuf.EnumDescriptorProto.encode(message.enumType[i], writer.uint32(/* id 5, wireType 2 =*/42).fork()).ldelim(); + if (message.service != null && message.service.length) + for (var i = 0; i < message.service.length; ++i) + $root.google.protobuf.ServiceDescriptorProto.encode(message.service[i], writer.uint32(/* id 6, wireType 2 =*/50).fork()).ldelim(); + if (message.extension != null && message.extension.length) + for (var i = 0; i < message.extension.length; ++i) + $root.google.protobuf.FieldDescriptorProto.encode(message.extension[i], writer.uint32(/* id 7, wireType 2 =*/58).fork()).ldelim(); + if (message.options != null && Object.hasOwnProperty.call(message, "options")) + $root.google.protobuf.FileOptions.encode(message.options, writer.uint32(/* id 8, wireType 2 =*/66).fork()).ldelim(); + if (message.sourceCodeInfo != null && Object.hasOwnProperty.call(message, "sourceCodeInfo")) + $root.google.protobuf.SourceCodeInfo.encode(message.sourceCodeInfo, writer.uint32(/* id 9, wireType 2 =*/74).fork()).ldelim(); + if (message.publicDependency != null && message.publicDependency.length) + for (var i = 0; i < message.publicDependency.length; ++i) + writer.uint32(/* id 10, wireType 0 =*/80).int32(message.publicDependency[i]); + if (message.weakDependency != null && message.weakDependency.length) + for (var i = 0; i < message.weakDependency.length; ++i) + writer.uint32(/* id 11, wireType 0 =*/88).int32(message.weakDependency[i]); + if (message.syntax != null && Object.hasOwnProperty.call(message, "syntax")) + writer.uint32(/* id 12, wireType 2 =*/98).string(message.syntax); + return writer; + }; - /** - * Membership type. - * @member {"endpoint"|undefined} type - * @memberof google.cloud.gkehub.v1beta1.Membership - * @instance - */ - Object.defineProperty(Membership.prototype, "type", { - get: $util.oneOfGetter($oneOfFields = ["endpoint"]), - set: $util.oneOfSetter($oneOfFields) - }); + /** + * Encodes the specified FileDescriptorProto message, length delimited. Does not implicitly {@link google.protobuf.FileDescriptorProto.verify|verify} messages. + * @function encodeDelimited + * @memberof google.protobuf.FileDescriptorProto + * @static + * @param {google.protobuf.IFileDescriptorProto} message FileDescriptorProto message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + FileDescriptorProto.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; - /** - * Creates a new Membership instance using the specified properties. - * @function create - * @memberof google.cloud.gkehub.v1beta1.Membership - * @static - * @param {google.cloud.gkehub.v1beta1.IMembership=} [properties] Properties to set - * @returns {google.cloud.gkehub.v1beta1.Membership} Membership instance - */ - Membership.create = function create(properties) { - return new Membership(properties); - }; + /** + * Decodes a FileDescriptorProto message from the specified reader or buffer. + * @function decode + * @memberof google.protobuf.FileDescriptorProto + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.protobuf.FileDescriptorProto} FileDescriptorProto + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + FileDescriptorProto.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.protobuf.FileDescriptorProto(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.name = reader.string(); + break; + case 2: + message["package"] = reader.string(); + break; + case 3: + if (!(message.dependency && message.dependency.length)) + message.dependency = []; + message.dependency.push(reader.string()); + break; + case 10: + if (!(message.publicDependency && message.publicDependency.length)) + message.publicDependency = []; + if ((tag & 7) === 2) { + var end2 = reader.uint32() + reader.pos; + while (reader.pos < end2) + message.publicDependency.push(reader.int32()); + } else + message.publicDependency.push(reader.int32()); + break; + case 11: + if (!(message.weakDependency && message.weakDependency.length)) + message.weakDependency = []; + if ((tag & 7) === 2) { + var end2 = reader.uint32() + reader.pos; + while (reader.pos < end2) + message.weakDependency.push(reader.int32()); + } else + message.weakDependency.push(reader.int32()); + break; + case 4: + if (!(message.messageType && message.messageType.length)) + message.messageType = []; + message.messageType.push($root.google.protobuf.DescriptorProto.decode(reader, reader.uint32())); + break; + case 5: + if (!(message.enumType && message.enumType.length)) + message.enumType = []; + message.enumType.push($root.google.protobuf.EnumDescriptorProto.decode(reader, reader.uint32())); + break; + case 6: + if (!(message.service && message.service.length)) + message.service = []; + message.service.push($root.google.protobuf.ServiceDescriptorProto.decode(reader, reader.uint32())); + break; + case 7: + if (!(message.extension && message.extension.length)) + message.extension = []; + message.extension.push($root.google.protobuf.FieldDescriptorProto.decode(reader, reader.uint32())); + break; + case 8: + message.options = $root.google.protobuf.FileOptions.decode(reader, reader.uint32()); + break; + case 9: + message.sourceCodeInfo = $root.google.protobuf.SourceCodeInfo.decode(reader, reader.uint32()); + break; + case 12: + message.syntax = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; - /** - * Encodes the specified Membership message. Does not implicitly {@link google.cloud.gkehub.v1beta1.Membership.verify|verify} messages. - * @function encode - * @memberof google.cloud.gkehub.v1beta1.Membership - * @static - * @param {google.cloud.gkehub.v1beta1.IMembership} message Membership message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - Membership.encode = function encode(message, writer) { - if (!writer) - writer = $Writer.create(); - if (message.name != null && Object.hasOwnProperty.call(message, "name")) - writer.uint32(/* id 1, wireType 2 =*/10).string(message.name); - if (message.labels != null && Object.hasOwnProperty.call(message, "labels")) - for (var keys = Object.keys(message.labels), i = 0; i < keys.length; ++i) - writer.uint32(/* id 2, wireType 2 =*/18).fork().uint32(/* id 1, wireType 2 =*/10).string(keys[i]).uint32(/* id 2, wireType 2 =*/18).string(message.labels[keys[i]]).ldelim(); - if (message.description != null && Object.hasOwnProperty.call(message, "description")) - writer.uint32(/* id 3, wireType 2 =*/26).string(message.description); - if (message.endpoint != null && Object.hasOwnProperty.call(message, "endpoint")) - $root.google.cloud.gkehub.v1beta1.MembershipEndpoint.encode(message.endpoint, writer.uint32(/* id 4, wireType 2 =*/34).fork()).ldelim(); - if (message.state != null && Object.hasOwnProperty.call(message, "state")) - $root.google.cloud.gkehub.v1beta1.MembershipState.encode(message.state, writer.uint32(/* id 5, wireType 2 =*/42).fork()).ldelim(); - if (message.createTime != null && Object.hasOwnProperty.call(message, "createTime")) - $root.google.protobuf.Timestamp.encode(message.createTime, writer.uint32(/* id 6, wireType 2 =*/50).fork()).ldelim(); - if (message.updateTime != null && Object.hasOwnProperty.call(message, "updateTime")) - $root.google.protobuf.Timestamp.encode(message.updateTime, writer.uint32(/* id 7, wireType 2 =*/58).fork()).ldelim(); - if (message.deleteTime != null && Object.hasOwnProperty.call(message, "deleteTime")) - $root.google.protobuf.Timestamp.encode(message.deleteTime, writer.uint32(/* id 8, wireType 2 =*/66).fork()).ldelim(); - if (message.authority != null && Object.hasOwnProperty.call(message, "authority")) - $root.google.cloud.gkehub.v1beta1.Authority.encode(message.authority, writer.uint32(/* id 9, wireType 2 =*/74).fork()).ldelim(); - if (message.externalId != null && Object.hasOwnProperty.call(message, "externalId")) - writer.uint32(/* id 10, wireType 2 =*/82).string(message.externalId); - if (message.lastConnectionTime != null && Object.hasOwnProperty.call(message, "lastConnectionTime")) - $root.google.protobuf.Timestamp.encode(message.lastConnectionTime, writer.uint32(/* id 11, wireType 2 =*/90).fork()).ldelim(); - if (message.uniqueId != null && Object.hasOwnProperty.call(message, "uniqueId")) - writer.uint32(/* id 12, wireType 2 =*/98).string(message.uniqueId); - if (message.infrastructureType != null && Object.hasOwnProperty.call(message, "infrastructureType")) - writer.uint32(/* id 13, wireType 0 =*/104).int32(message.infrastructureType); - return writer; - }; + /** + * Decodes a FileDescriptorProto message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.protobuf.FileDescriptorProto + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.protobuf.FileDescriptorProto} FileDescriptorProto + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + FileDescriptorProto.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; - /** - * Encodes the specified Membership message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta1.Membership.verify|verify} messages. - * @function encodeDelimited - * @memberof google.cloud.gkehub.v1beta1.Membership - * @static - * @param {google.cloud.gkehub.v1beta1.IMembership} message Membership message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - Membership.encodeDelimited = function encodeDelimited(message, writer) { - return this.encode(message, writer).ldelim(); - }; + /** + * Verifies a FileDescriptorProto message. + * @function verify + * @memberof google.protobuf.FileDescriptorProto + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + FileDescriptorProto.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.name != null && message.hasOwnProperty("name")) + if (!$util.isString(message.name)) + return "name: string expected"; + if (message["package"] != null && message.hasOwnProperty("package")) + if (!$util.isString(message["package"])) + return "package: string expected"; + if (message.dependency != null && message.hasOwnProperty("dependency")) { + if (!Array.isArray(message.dependency)) + return "dependency: array expected"; + for (var i = 0; i < message.dependency.length; ++i) + if (!$util.isString(message.dependency[i])) + return "dependency: string[] expected"; + } + if (message.publicDependency != null && message.hasOwnProperty("publicDependency")) { + if (!Array.isArray(message.publicDependency)) + return "publicDependency: array expected"; + for (var i = 0; i < message.publicDependency.length; ++i) + if (!$util.isInteger(message.publicDependency[i])) + return "publicDependency: integer[] expected"; + } + if (message.weakDependency != null && message.hasOwnProperty("weakDependency")) { + if (!Array.isArray(message.weakDependency)) + return "weakDependency: array expected"; + for (var i = 0; i < message.weakDependency.length; ++i) + if (!$util.isInteger(message.weakDependency[i])) + return "weakDependency: integer[] expected"; + } + if (message.messageType != null && message.hasOwnProperty("messageType")) { + if (!Array.isArray(message.messageType)) + return "messageType: array expected"; + for (var i = 0; i < message.messageType.length; ++i) { + var error = $root.google.protobuf.DescriptorProto.verify(message.messageType[i]); + if (error) + return "messageType." + error; + } + } + if (message.enumType != null && message.hasOwnProperty("enumType")) { + if (!Array.isArray(message.enumType)) + return "enumType: array expected"; + for (var i = 0; i < message.enumType.length; ++i) { + var error = $root.google.protobuf.EnumDescriptorProto.verify(message.enumType[i]); + if (error) + return "enumType." + error; + } + } + if (message.service != null && message.hasOwnProperty("service")) { + if (!Array.isArray(message.service)) + return "service: array expected"; + for (var i = 0; i < message.service.length; ++i) { + var error = $root.google.protobuf.ServiceDescriptorProto.verify(message.service[i]); + if (error) + return "service." + error; + } + } + if (message.extension != null && message.hasOwnProperty("extension")) { + if (!Array.isArray(message.extension)) + return "extension: array expected"; + for (var i = 0; i < message.extension.length; ++i) { + var error = $root.google.protobuf.FieldDescriptorProto.verify(message.extension[i]); + if (error) + return "extension." + error; + } + } + if (message.options != null && message.hasOwnProperty("options")) { + var error = $root.google.protobuf.FileOptions.verify(message.options); + if (error) + return "options." + error; + } + if (message.sourceCodeInfo != null && message.hasOwnProperty("sourceCodeInfo")) { + var error = $root.google.protobuf.SourceCodeInfo.verify(message.sourceCodeInfo); + if (error) + return "sourceCodeInfo." + error; + } + if (message.syntax != null && message.hasOwnProperty("syntax")) + if (!$util.isString(message.syntax)) + return "syntax: string expected"; + return null; + }; - /** - * Decodes a Membership message from the specified reader or buffer. - * @function decode - * @memberof google.cloud.gkehub.v1beta1.Membership - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + /** + * Creates a FileDescriptorProto message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.protobuf.FileDescriptorProto + * @static + * @param {Object.} object Plain object + * @returns {google.protobuf.FileDescriptorProto} FileDescriptorProto + */ + FileDescriptorProto.fromObject = function fromObject(object) { + if (object instanceof $root.google.protobuf.FileDescriptorProto) + return object; + var message = new $root.google.protobuf.FileDescriptorProto(); + if (object.name != null) + message.name = String(object.name); + if (object["package"] != null) + message["package"] = String(object["package"]); + if (object.dependency) { + if (!Array.isArray(object.dependency)) + throw TypeError(".google.protobuf.FileDescriptorProto.dependency: array expected"); + message.dependency = []; + for (var i = 0; i < object.dependency.length; ++i) + message.dependency[i] = String(object.dependency[i]); + } + if (object.publicDependency) { + if (!Array.isArray(object.publicDependency)) + throw TypeError(".google.protobuf.FileDescriptorProto.publicDependency: array expected"); + message.publicDependency = []; + for (var i = 0; i < object.publicDependency.length; ++i) + message.publicDependency[i] = object.publicDependency[i] | 0; + } + if (object.weakDependency) { + if (!Array.isArray(object.weakDependency)) + throw TypeError(".google.protobuf.FileDescriptorProto.weakDependency: array expected"); + message.weakDependency = []; + for (var i = 0; i < object.weakDependency.length; ++i) + message.weakDependency[i] = object.weakDependency[i] | 0; + } + if (object.messageType) { + if (!Array.isArray(object.messageType)) + throw TypeError(".google.protobuf.FileDescriptorProto.messageType: array expected"); + message.messageType = []; + for (var i = 0; i < object.messageType.length; ++i) { + if (typeof object.messageType[i] !== "object") + throw TypeError(".google.protobuf.FileDescriptorProto.messageType: object expected"); + message.messageType[i] = $root.google.protobuf.DescriptorProto.fromObject(object.messageType[i]); + } + } + if (object.enumType) { + if (!Array.isArray(object.enumType)) + throw TypeError(".google.protobuf.FileDescriptorProto.enumType: array expected"); + message.enumType = []; + for (var i = 0; i < object.enumType.length; ++i) { + if (typeof object.enumType[i] !== "object") + throw TypeError(".google.protobuf.FileDescriptorProto.enumType: object expected"); + message.enumType[i] = $root.google.protobuf.EnumDescriptorProto.fromObject(object.enumType[i]); + } + } + if (object.service) { + if (!Array.isArray(object.service)) + throw TypeError(".google.protobuf.FileDescriptorProto.service: array expected"); + message.service = []; + for (var i = 0; i < object.service.length; ++i) { + if (typeof object.service[i] !== "object") + throw TypeError(".google.protobuf.FileDescriptorProto.service: object expected"); + message.service[i] = $root.google.protobuf.ServiceDescriptorProto.fromObject(object.service[i]); + } + } + if (object.extension) { + if (!Array.isArray(object.extension)) + throw TypeError(".google.protobuf.FileDescriptorProto.extension: array expected"); + message.extension = []; + for (var i = 0; i < object.extension.length; ++i) { + if (typeof object.extension[i] !== "object") + throw TypeError(".google.protobuf.FileDescriptorProto.extension: object expected"); + message.extension[i] = $root.google.protobuf.FieldDescriptorProto.fromObject(object.extension[i]); + } + } + if (object.options != null) { + if (typeof object.options !== "object") + throw TypeError(".google.protobuf.FileDescriptorProto.options: object expected"); + message.options = $root.google.protobuf.FileOptions.fromObject(object.options); + } + if (object.sourceCodeInfo != null) { + if (typeof object.sourceCodeInfo !== "object") + throw TypeError(".google.protobuf.FileDescriptorProto.sourceCodeInfo: object expected"); + message.sourceCodeInfo = $root.google.protobuf.SourceCodeInfo.fromObject(object.sourceCodeInfo); + } + if (object.syntax != null) + message.syntax = String(object.syntax); + return message; + }; + + /** + * Creates a plain object from a FileDescriptorProto message. Also converts values to other types if specified. + * @function toObject + * @memberof google.protobuf.FileDescriptorProto + * @static + * @param {google.protobuf.FileDescriptorProto} message FileDescriptorProto + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + FileDescriptorProto.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.arrays || options.defaults) { + object.dependency = []; + object.messageType = []; + object.enumType = []; + object.service = []; + object.extension = []; + object.publicDependency = []; + object.weakDependency = []; + } + if (options.defaults) { + object.name = ""; + object["package"] = ""; + object.options = null; + object.sourceCodeInfo = null; + object.syntax = ""; + } + if (message.name != null && message.hasOwnProperty("name")) + object.name = message.name; + if (message["package"] != null && message.hasOwnProperty("package")) + object["package"] = message["package"]; + if (message.dependency && message.dependency.length) { + object.dependency = []; + for (var j = 0; j < message.dependency.length; ++j) + object.dependency[j] = message.dependency[j]; + } + if (message.messageType && message.messageType.length) { + object.messageType = []; + for (var j = 0; j < message.messageType.length; ++j) + object.messageType[j] = $root.google.protobuf.DescriptorProto.toObject(message.messageType[j], options); + } + if (message.enumType && message.enumType.length) { + object.enumType = []; + for (var j = 0; j < message.enumType.length; ++j) + object.enumType[j] = $root.google.protobuf.EnumDescriptorProto.toObject(message.enumType[j], options); + } + if (message.service && message.service.length) { + object.service = []; + for (var j = 0; j < message.service.length; ++j) + object.service[j] = $root.google.protobuf.ServiceDescriptorProto.toObject(message.service[j], options); + } + if (message.extension && message.extension.length) { + object.extension = []; + for (var j = 0; j < message.extension.length; ++j) + object.extension[j] = $root.google.protobuf.FieldDescriptorProto.toObject(message.extension[j], options); + } + if (message.options != null && message.hasOwnProperty("options")) + object.options = $root.google.protobuf.FileOptions.toObject(message.options, options); + if (message.sourceCodeInfo != null && message.hasOwnProperty("sourceCodeInfo")) + object.sourceCodeInfo = $root.google.protobuf.SourceCodeInfo.toObject(message.sourceCodeInfo, options); + if (message.publicDependency && message.publicDependency.length) { + object.publicDependency = []; + for (var j = 0; j < message.publicDependency.length; ++j) + object.publicDependency[j] = message.publicDependency[j]; + } + if (message.weakDependency && message.weakDependency.length) { + object.weakDependency = []; + for (var j = 0; j < message.weakDependency.length; ++j) + object.weakDependency[j] = message.weakDependency[j]; + } + if (message.syntax != null && message.hasOwnProperty("syntax")) + object.syntax = message.syntax; + return object; + }; + + /** + * Converts this FileDescriptorProto to JSON. + * @function toJSON + * @memberof google.protobuf.FileDescriptorProto + * @instance + * @returns {Object.} JSON object + */ + FileDescriptorProto.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return FileDescriptorProto; + })(); + + protobuf.DescriptorProto = (function() { + + /** + * Properties of a DescriptorProto. + * @memberof google.protobuf + * @interface IDescriptorProto + * @property {string|null} [name] DescriptorProto name + * @property {Array.|null} [field] DescriptorProto field + * @property {Array.|null} [extension] DescriptorProto extension + * @property {Array.|null} [nestedType] DescriptorProto nestedType + * @property {Array.|null} [enumType] DescriptorProto enumType + * @property {Array.|null} [extensionRange] DescriptorProto extensionRange + * @property {Array.|null} [oneofDecl] DescriptorProto oneofDecl + * @property {google.protobuf.IMessageOptions|null} [options] DescriptorProto options + * @property {Array.|null} [reservedRange] DescriptorProto reservedRange + * @property {Array.|null} [reservedName] DescriptorProto reservedName + */ + + /** + * Constructs a new DescriptorProto. + * @memberof google.protobuf + * @classdesc Represents a DescriptorProto. + * @implements IDescriptorProto + * @constructor + * @param {google.protobuf.IDescriptorProto=} [properties] Properties to set + */ + function DescriptorProto(properties) { + this.field = []; + this.extension = []; + this.nestedType = []; + this.enumType = []; + this.extensionRange = []; + this.oneofDecl = []; + this.reservedRange = []; + this.reservedName = []; + 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]]; + } + + /** + * DescriptorProto name. + * @member {string} name + * @memberof google.protobuf.DescriptorProto + * @instance + */ + DescriptorProto.prototype.name = ""; + + /** + * DescriptorProto field. + * @member {Array.} field + * @memberof google.protobuf.DescriptorProto + * @instance + */ + DescriptorProto.prototype.field = $util.emptyArray; + + /** + * DescriptorProto extension. + * @member {Array.} extension + * @memberof google.protobuf.DescriptorProto + * @instance + */ + DescriptorProto.prototype.extension = $util.emptyArray; + + /** + * DescriptorProto nestedType. + * @member {Array.} nestedType + * @memberof google.protobuf.DescriptorProto + * @instance + */ + DescriptorProto.prototype.nestedType = $util.emptyArray; + + /** + * DescriptorProto enumType. + * @member {Array.} enumType + * @memberof google.protobuf.DescriptorProto + * @instance + */ + DescriptorProto.prototype.enumType = $util.emptyArray; + + /** + * DescriptorProto extensionRange. + * @member {Array.} extensionRange + * @memberof google.protobuf.DescriptorProto + * @instance + */ + DescriptorProto.prototype.extensionRange = $util.emptyArray; + + /** + * DescriptorProto oneofDecl. + * @member {Array.} oneofDecl + * @memberof google.protobuf.DescriptorProto + * @instance + */ + DescriptorProto.prototype.oneofDecl = $util.emptyArray; + + /** + * DescriptorProto options. + * @member {google.protobuf.IMessageOptions|null|undefined} options + * @memberof google.protobuf.DescriptorProto + * @instance + */ + DescriptorProto.prototype.options = null; + + /** + * DescriptorProto reservedRange. + * @member {Array.} reservedRange + * @memberof google.protobuf.DescriptorProto + * @instance + */ + DescriptorProto.prototype.reservedRange = $util.emptyArray; + + /** + * DescriptorProto reservedName. + * @member {Array.} reservedName + * @memberof google.protobuf.DescriptorProto + * @instance + */ + DescriptorProto.prototype.reservedName = $util.emptyArray; + + /** + * Creates a new DescriptorProto instance using the specified properties. + * @function create + * @memberof google.protobuf.DescriptorProto + * @static + * @param {google.protobuf.IDescriptorProto=} [properties] Properties to set + * @returns {google.protobuf.DescriptorProto} DescriptorProto instance + */ + DescriptorProto.create = function create(properties) { + return new DescriptorProto(properties); + }; + + /** + * Encodes the specified DescriptorProto message. Does not implicitly {@link google.protobuf.DescriptorProto.verify|verify} messages. + * @function encode + * @memberof google.protobuf.DescriptorProto + * @static + * @param {google.protobuf.IDescriptorProto} message DescriptorProto message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + DescriptorProto.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.name != null && Object.hasOwnProperty.call(message, "name")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.name); + if (message.field != null && message.field.length) + for (var i = 0; i < message.field.length; ++i) + $root.google.protobuf.FieldDescriptorProto.encode(message.field[i], writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim(); + if (message.nestedType != null && message.nestedType.length) + for (var i = 0; i < message.nestedType.length; ++i) + $root.google.protobuf.DescriptorProto.encode(message.nestedType[i], writer.uint32(/* id 3, wireType 2 =*/26).fork()).ldelim(); + if (message.enumType != null && message.enumType.length) + for (var i = 0; i < message.enumType.length; ++i) + $root.google.protobuf.EnumDescriptorProto.encode(message.enumType[i], writer.uint32(/* id 4, wireType 2 =*/34).fork()).ldelim(); + if (message.extensionRange != null && message.extensionRange.length) + for (var i = 0; i < message.extensionRange.length; ++i) + $root.google.protobuf.DescriptorProto.ExtensionRange.encode(message.extensionRange[i], writer.uint32(/* id 5, wireType 2 =*/42).fork()).ldelim(); + if (message.extension != null && message.extension.length) + for (var i = 0; i < message.extension.length; ++i) + $root.google.protobuf.FieldDescriptorProto.encode(message.extension[i], writer.uint32(/* id 6, wireType 2 =*/50).fork()).ldelim(); + if (message.options != null && Object.hasOwnProperty.call(message, "options")) + $root.google.protobuf.MessageOptions.encode(message.options, writer.uint32(/* id 7, wireType 2 =*/58).fork()).ldelim(); + if (message.oneofDecl != null && message.oneofDecl.length) + for (var i = 0; i < message.oneofDecl.length; ++i) + $root.google.protobuf.OneofDescriptorProto.encode(message.oneofDecl[i], writer.uint32(/* id 8, wireType 2 =*/66).fork()).ldelim(); + if (message.reservedRange != null && message.reservedRange.length) + for (var i = 0; i < message.reservedRange.length; ++i) + $root.google.protobuf.DescriptorProto.ReservedRange.encode(message.reservedRange[i], writer.uint32(/* id 9, wireType 2 =*/74).fork()).ldelim(); + if (message.reservedName != null && message.reservedName.length) + for (var i = 0; i < message.reservedName.length; ++i) + writer.uint32(/* id 10, wireType 2 =*/82).string(message.reservedName[i]); + return writer; + }; + + /** + * Encodes the specified DescriptorProto message, length delimited. Does not implicitly {@link google.protobuf.DescriptorProto.verify|verify} messages. + * @function encodeDelimited + * @memberof google.protobuf.DescriptorProto + * @static + * @param {google.protobuf.IDescriptorProto} message DescriptorProto message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + DescriptorProto.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a DescriptorProto message from the specified reader or buffer. + * @function decode + * @memberof google.protobuf.DescriptorProto + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.protobuf.DescriptorProto} DescriptorProto + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + DescriptorProto.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.protobuf.DescriptorProto(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.name = reader.string(); + break; + case 2: + if (!(message.field && message.field.length)) + message.field = []; + message.field.push($root.google.protobuf.FieldDescriptorProto.decode(reader, reader.uint32())); + break; + case 6: + if (!(message.extension && message.extension.length)) + message.extension = []; + message.extension.push($root.google.protobuf.FieldDescriptorProto.decode(reader, reader.uint32())); + break; + case 3: + if (!(message.nestedType && message.nestedType.length)) + message.nestedType = []; + message.nestedType.push($root.google.protobuf.DescriptorProto.decode(reader, reader.uint32())); + break; + case 4: + if (!(message.enumType && message.enumType.length)) + message.enumType = []; + message.enumType.push($root.google.protobuf.EnumDescriptorProto.decode(reader, reader.uint32())); + break; + case 5: + if (!(message.extensionRange && message.extensionRange.length)) + message.extensionRange = []; + message.extensionRange.push($root.google.protobuf.DescriptorProto.ExtensionRange.decode(reader, reader.uint32())); + break; + case 8: + if (!(message.oneofDecl && message.oneofDecl.length)) + message.oneofDecl = []; + message.oneofDecl.push($root.google.protobuf.OneofDescriptorProto.decode(reader, reader.uint32())); + break; + case 7: + message.options = $root.google.protobuf.MessageOptions.decode(reader, reader.uint32()); + break; + case 9: + if (!(message.reservedRange && message.reservedRange.length)) + message.reservedRange = []; + message.reservedRange.push($root.google.protobuf.DescriptorProto.ReservedRange.decode(reader, reader.uint32())); + break; + case 10: + if (!(message.reservedName && message.reservedName.length)) + message.reservedName = []; + message.reservedName.push(reader.string()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a DescriptorProto message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.protobuf.DescriptorProto + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.protobuf.DescriptorProto} DescriptorProto + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + DescriptorProto.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a DescriptorProto message. + * @function verify + * @memberof google.protobuf.DescriptorProto + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + DescriptorProto.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.name != null && message.hasOwnProperty("name")) + if (!$util.isString(message.name)) + return "name: string expected"; + if (message.field != null && message.hasOwnProperty("field")) { + if (!Array.isArray(message.field)) + return "field: array expected"; + for (var i = 0; i < message.field.length; ++i) { + var error = $root.google.protobuf.FieldDescriptorProto.verify(message.field[i]); + if (error) + return "field." + error; + } + } + if (message.extension != null && message.hasOwnProperty("extension")) { + if (!Array.isArray(message.extension)) + return "extension: array expected"; + for (var i = 0; i < message.extension.length; ++i) { + var error = $root.google.protobuf.FieldDescriptorProto.verify(message.extension[i]); + if (error) + return "extension." + error; + } + } + if (message.nestedType != null && message.hasOwnProperty("nestedType")) { + if (!Array.isArray(message.nestedType)) + return "nestedType: array expected"; + for (var i = 0; i < message.nestedType.length; ++i) { + var error = $root.google.protobuf.DescriptorProto.verify(message.nestedType[i]); + if (error) + return "nestedType." + error; + } + } + if (message.enumType != null && message.hasOwnProperty("enumType")) { + if (!Array.isArray(message.enumType)) + return "enumType: array expected"; + for (var i = 0; i < message.enumType.length; ++i) { + var error = $root.google.protobuf.EnumDescriptorProto.verify(message.enumType[i]); + if (error) + return "enumType." + error; + } + } + if (message.extensionRange != null && message.hasOwnProperty("extensionRange")) { + if (!Array.isArray(message.extensionRange)) + return "extensionRange: array expected"; + for (var i = 0; i < message.extensionRange.length; ++i) { + var error = $root.google.protobuf.DescriptorProto.ExtensionRange.verify(message.extensionRange[i]); + if (error) + return "extensionRange." + error; + } + } + if (message.oneofDecl != null && message.hasOwnProperty("oneofDecl")) { + if (!Array.isArray(message.oneofDecl)) + return "oneofDecl: array expected"; + for (var i = 0; i < message.oneofDecl.length; ++i) { + var error = $root.google.protobuf.OneofDescriptorProto.verify(message.oneofDecl[i]); + if (error) + return "oneofDecl." + error; + } + } + if (message.options != null && message.hasOwnProperty("options")) { + var error = $root.google.protobuf.MessageOptions.verify(message.options); + if (error) + return "options." + error; + } + if (message.reservedRange != null && message.hasOwnProperty("reservedRange")) { + if (!Array.isArray(message.reservedRange)) + return "reservedRange: array expected"; + for (var i = 0; i < message.reservedRange.length; ++i) { + var error = $root.google.protobuf.DescriptorProto.ReservedRange.verify(message.reservedRange[i]); + if (error) + return "reservedRange." + error; + } + } + if (message.reservedName != null && message.hasOwnProperty("reservedName")) { + if (!Array.isArray(message.reservedName)) + return "reservedName: array expected"; + for (var i = 0; i < message.reservedName.length; ++i) + if (!$util.isString(message.reservedName[i])) + return "reservedName: string[] expected"; + } + return null; + }; + + /** + * Creates a DescriptorProto message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.protobuf.DescriptorProto + * @static + * @param {Object.} object Plain object + * @returns {google.protobuf.DescriptorProto} DescriptorProto + */ + DescriptorProto.fromObject = function fromObject(object) { + if (object instanceof $root.google.protobuf.DescriptorProto) + return object; + var message = new $root.google.protobuf.DescriptorProto(); + if (object.name != null) + message.name = String(object.name); + if (object.field) { + if (!Array.isArray(object.field)) + throw TypeError(".google.protobuf.DescriptorProto.field: array expected"); + message.field = []; + for (var i = 0; i < object.field.length; ++i) { + if (typeof object.field[i] !== "object") + throw TypeError(".google.protobuf.DescriptorProto.field: object expected"); + message.field[i] = $root.google.protobuf.FieldDescriptorProto.fromObject(object.field[i]); + } + } + if (object.extension) { + if (!Array.isArray(object.extension)) + throw TypeError(".google.protobuf.DescriptorProto.extension: array expected"); + message.extension = []; + for (var i = 0; i < object.extension.length; ++i) { + if (typeof object.extension[i] !== "object") + throw TypeError(".google.protobuf.DescriptorProto.extension: object expected"); + message.extension[i] = $root.google.protobuf.FieldDescriptorProto.fromObject(object.extension[i]); + } + } + if (object.nestedType) { + if (!Array.isArray(object.nestedType)) + throw TypeError(".google.protobuf.DescriptorProto.nestedType: array expected"); + message.nestedType = []; + for (var i = 0; i < object.nestedType.length; ++i) { + if (typeof object.nestedType[i] !== "object") + throw TypeError(".google.protobuf.DescriptorProto.nestedType: object expected"); + message.nestedType[i] = $root.google.protobuf.DescriptorProto.fromObject(object.nestedType[i]); + } + } + if (object.enumType) { + if (!Array.isArray(object.enumType)) + throw TypeError(".google.protobuf.DescriptorProto.enumType: array expected"); + message.enumType = []; + for (var i = 0; i < object.enumType.length; ++i) { + if (typeof object.enumType[i] !== "object") + throw TypeError(".google.protobuf.DescriptorProto.enumType: object expected"); + message.enumType[i] = $root.google.protobuf.EnumDescriptorProto.fromObject(object.enumType[i]); + } + } + if (object.extensionRange) { + if (!Array.isArray(object.extensionRange)) + throw TypeError(".google.protobuf.DescriptorProto.extensionRange: array expected"); + message.extensionRange = []; + for (var i = 0; i < object.extensionRange.length; ++i) { + if (typeof object.extensionRange[i] !== "object") + throw TypeError(".google.protobuf.DescriptorProto.extensionRange: object expected"); + message.extensionRange[i] = $root.google.protobuf.DescriptorProto.ExtensionRange.fromObject(object.extensionRange[i]); + } + } + if (object.oneofDecl) { + if (!Array.isArray(object.oneofDecl)) + throw TypeError(".google.protobuf.DescriptorProto.oneofDecl: array expected"); + message.oneofDecl = []; + for (var i = 0; i < object.oneofDecl.length; ++i) { + if (typeof object.oneofDecl[i] !== "object") + throw TypeError(".google.protobuf.DescriptorProto.oneofDecl: object expected"); + message.oneofDecl[i] = $root.google.protobuf.OneofDescriptorProto.fromObject(object.oneofDecl[i]); + } + } + if (object.options != null) { + if (typeof object.options !== "object") + throw TypeError(".google.protobuf.DescriptorProto.options: object expected"); + message.options = $root.google.protobuf.MessageOptions.fromObject(object.options); + } + if (object.reservedRange) { + if (!Array.isArray(object.reservedRange)) + throw TypeError(".google.protobuf.DescriptorProto.reservedRange: array expected"); + message.reservedRange = []; + for (var i = 0; i < object.reservedRange.length; ++i) { + if (typeof object.reservedRange[i] !== "object") + throw TypeError(".google.protobuf.DescriptorProto.reservedRange: object expected"); + message.reservedRange[i] = $root.google.protobuf.DescriptorProto.ReservedRange.fromObject(object.reservedRange[i]); + } + } + if (object.reservedName) { + if (!Array.isArray(object.reservedName)) + throw TypeError(".google.protobuf.DescriptorProto.reservedName: array expected"); + message.reservedName = []; + for (var i = 0; i < object.reservedName.length; ++i) + message.reservedName[i] = String(object.reservedName[i]); + } + return message; + }; + + /** + * Creates a plain object from a DescriptorProto message. Also converts values to other types if specified. + * @function toObject + * @memberof google.protobuf.DescriptorProto + * @static + * @param {google.protobuf.DescriptorProto} message DescriptorProto + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + DescriptorProto.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.arrays || options.defaults) { + object.field = []; + object.nestedType = []; + object.enumType = []; + object.extensionRange = []; + object.extension = []; + object.oneofDecl = []; + object.reservedRange = []; + object.reservedName = []; + } + if (options.defaults) { + object.name = ""; + object.options = null; + } + if (message.name != null && message.hasOwnProperty("name")) + object.name = message.name; + if (message.field && message.field.length) { + object.field = []; + for (var j = 0; j < message.field.length; ++j) + object.field[j] = $root.google.protobuf.FieldDescriptorProto.toObject(message.field[j], options); + } + if (message.nestedType && message.nestedType.length) { + object.nestedType = []; + for (var j = 0; j < message.nestedType.length; ++j) + object.nestedType[j] = $root.google.protobuf.DescriptorProto.toObject(message.nestedType[j], options); + } + if (message.enumType && message.enumType.length) { + object.enumType = []; + for (var j = 0; j < message.enumType.length; ++j) + object.enumType[j] = $root.google.protobuf.EnumDescriptorProto.toObject(message.enumType[j], options); + } + if (message.extensionRange && message.extensionRange.length) { + object.extensionRange = []; + for (var j = 0; j < message.extensionRange.length; ++j) + object.extensionRange[j] = $root.google.protobuf.DescriptorProto.ExtensionRange.toObject(message.extensionRange[j], options); + } + if (message.extension && message.extension.length) { + object.extension = []; + for (var j = 0; j < message.extension.length; ++j) + object.extension[j] = $root.google.protobuf.FieldDescriptorProto.toObject(message.extension[j], options); + } + if (message.options != null && message.hasOwnProperty("options")) + object.options = $root.google.protobuf.MessageOptions.toObject(message.options, options); + if (message.oneofDecl && message.oneofDecl.length) { + object.oneofDecl = []; + for (var j = 0; j < message.oneofDecl.length; ++j) + object.oneofDecl[j] = $root.google.protobuf.OneofDescriptorProto.toObject(message.oneofDecl[j], options); + } + if (message.reservedRange && message.reservedRange.length) { + object.reservedRange = []; + for (var j = 0; j < message.reservedRange.length; ++j) + object.reservedRange[j] = $root.google.protobuf.DescriptorProto.ReservedRange.toObject(message.reservedRange[j], options); + } + if (message.reservedName && message.reservedName.length) { + object.reservedName = []; + for (var j = 0; j < message.reservedName.length; ++j) + object.reservedName[j] = message.reservedName[j]; + } + return object; + }; + + /** + * Converts this DescriptorProto to JSON. + * @function toJSON + * @memberof google.protobuf.DescriptorProto + * @instance + * @returns {Object.} JSON object + */ + DescriptorProto.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + DescriptorProto.ExtensionRange = (function() { + + /** + * Properties of an ExtensionRange. + * @memberof google.protobuf.DescriptorProto + * @interface IExtensionRange + * @property {number|null} [start] ExtensionRange start + * @property {number|null} [end] ExtensionRange end + * @property {google.protobuf.IExtensionRangeOptions|null} [options] ExtensionRange options + */ + + /** + * Constructs a new ExtensionRange. + * @memberof google.protobuf.DescriptorProto + * @classdesc Represents an ExtensionRange. + * @implements IExtensionRange + * @constructor + * @param {google.protobuf.DescriptorProto.IExtensionRange=} [properties] Properties to set + */ + function ExtensionRange(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]]; + } + + /** + * ExtensionRange start. + * @member {number} start + * @memberof google.protobuf.DescriptorProto.ExtensionRange + * @instance + */ + ExtensionRange.prototype.start = 0; + + /** + * ExtensionRange end. + * @member {number} end + * @memberof google.protobuf.DescriptorProto.ExtensionRange + * @instance + */ + ExtensionRange.prototype.end = 0; + + /** + * ExtensionRange options. + * @member {google.protobuf.IExtensionRangeOptions|null|undefined} options + * @memberof google.protobuf.DescriptorProto.ExtensionRange + * @instance + */ + ExtensionRange.prototype.options = null; + + /** + * Creates a new ExtensionRange instance using the specified properties. + * @function create + * @memberof google.protobuf.DescriptorProto.ExtensionRange + * @static + * @param {google.protobuf.DescriptorProto.IExtensionRange=} [properties] Properties to set + * @returns {google.protobuf.DescriptorProto.ExtensionRange} ExtensionRange instance + */ + ExtensionRange.create = function create(properties) { + return new ExtensionRange(properties); + }; + + /** + * Encodes the specified ExtensionRange message. Does not implicitly {@link google.protobuf.DescriptorProto.ExtensionRange.verify|verify} messages. + * @function encode + * @memberof google.protobuf.DescriptorProto.ExtensionRange + * @static + * @param {google.protobuf.DescriptorProto.IExtensionRange} message ExtensionRange message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + ExtensionRange.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.start != null && Object.hasOwnProperty.call(message, "start")) + writer.uint32(/* id 1, wireType 0 =*/8).int32(message.start); + if (message.end != null && Object.hasOwnProperty.call(message, "end")) + writer.uint32(/* id 2, wireType 0 =*/16).int32(message.end); + if (message.options != null && Object.hasOwnProperty.call(message, "options")) + $root.google.protobuf.ExtensionRangeOptions.encode(message.options, writer.uint32(/* id 3, wireType 2 =*/26).fork()).ldelim(); + return writer; + }; + + /** + * Encodes the specified ExtensionRange message, length delimited. Does not implicitly {@link google.protobuf.DescriptorProto.ExtensionRange.verify|verify} messages. + * @function encodeDelimited + * @memberof google.protobuf.DescriptorProto.ExtensionRange + * @static + * @param {google.protobuf.DescriptorProto.IExtensionRange} message ExtensionRange message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + ExtensionRange.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes an ExtensionRange message from the specified reader or buffer. + * @function decode + * @memberof google.protobuf.DescriptorProto.ExtensionRange + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.protobuf.DescriptorProto.ExtensionRange} ExtensionRange + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + ExtensionRange.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.protobuf.DescriptorProto.ExtensionRange(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.start = reader.int32(); + break; + case 2: + message.end = reader.int32(); + break; + case 3: + message.options = $root.google.protobuf.ExtensionRangeOptions.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes an ExtensionRange message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.protobuf.DescriptorProto.ExtensionRange + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.protobuf.DescriptorProto.ExtensionRange} ExtensionRange + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + ExtensionRange.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies an ExtensionRange message. + * @function verify + * @memberof google.protobuf.DescriptorProto.ExtensionRange + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + ExtensionRange.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.start != null && message.hasOwnProperty("start")) + if (!$util.isInteger(message.start)) + return "start: integer expected"; + if (message.end != null && message.hasOwnProperty("end")) + if (!$util.isInteger(message.end)) + return "end: integer expected"; + if (message.options != null && message.hasOwnProperty("options")) { + var error = $root.google.protobuf.ExtensionRangeOptions.verify(message.options); + if (error) + return "options." + error; + } + return null; + }; + + /** + * Creates an ExtensionRange message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.protobuf.DescriptorProto.ExtensionRange + * @static + * @param {Object.} object Plain object + * @returns {google.protobuf.DescriptorProto.ExtensionRange} ExtensionRange + */ + ExtensionRange.fromObject = function fromObject(object) { + if (object instanceof $root.google.protobuf.DescriptorProto.ExtensionRange) + return object; + var message = new $root.google.protobuf.DescriptorProto.ExtensionRange(); + if (object.start != null) + message.start = object.start | 0; + if (object.end != null) + message.end = object.end | 0; + if (object.options != null) { + if (typeof object.options !== "object") + throw TypeError(".google.protobuf.DescriptorProto.ExtensionRange.options: object expected"); + message.options = $root.google.protobuf.ExtensionRangeOptions.fromObject(object.options); + } + return message; + }; + + /** + * Creates a plain object from an ExtensionRange message. Also converts values to other types if specified. + * @function toObject + * @memberof google.protobuf.DescriptorProto.ExtensionRange + * @static + * @param {google.protobuf.DescriptorProto.ExtensionRange} message ExtensionRange + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + ExtensionRange.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.start = 0; + object.end = 0; + object.options = null; + } + if (message.start != null && message.hasOwnProperty("start")) + object.start = message.start; + if (message.end != null && message.hasOwnProperty("end")) + object.end = message.end; + if (message.options != null && message.hasOwnProperty("options")) + object.options = $root.google.protobuf.ExtensionRangeOptions.toObject(message.options, options); + return object; + }; + + /** + * Converts this ExtensionRange to JSON. + * @function toJSON + * @memberof google.protobuf.DescriptorProto.ExtensionRange + * @instance + * @returns {Object.} JSON object + */ + ExtensionRange.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return ExtensionRange; + })(); + + DescriptorProto.ReservedRange = (function() { + + /** + * Properties of a ReservedRange. + * @memberof google.protobuf.DescriptorProto + * @interface IReservedRange + * @property {number|null} [start] ReservedRange start + * @property {number|null} [end] ReservedRange end + */ + + /** + * Constructs a new ReservedRange. + * @memberof google.protobuf.DescriptorProto + * @classdesc Represents a ReservedRange. + * @implements IReservedRange + * @constructor + * @param {google.protobuf.DescriptorProto.IReservedRange=} [properties] Properties to set + */ + function ReservedRange(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]]; + } + + /** + * ReservedRange start. + * @member {number} start + * @memberof google.protobuf.DescriptorProto.ReservedRange + * @instance + */ + ReservedRange.prototype.start = 0; + + /** + * ReservedRange end. + * @member {number} end + * @memberof google.protobuf.DescriptorProto.ReservedRange + * @instance + */ + ReservedRange.prototype.end = 0; + + /** + * Creates a new ReservedRange instance using the specified properties. + * @function create + * @memberof google.protobuf.DescriptorProto.ReservedRange + * @static + * @param {google.protobuf.DescriptorProto.IReservedRange=} [properties] Properties to set + * @returns {google.protobuf.DescriptorProto.ReservedRange} ReservedRange instance + */ + ReservedRange.create = function create(properties) { + return new ReservedRange(properties); + }; + + /** + * Encodes the specified ReservedRange message. Does not implicitly {@link google.protobuf.DescriptorProto.ReservedRange.verify|verify} messages. + * @function encode + * @memberof google.protobuf.DescriptorProto.ReservedRange + * @static + * @param {google.protobuf.DescriptorProto.IReservedRange} message ReservedRange message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + ReservedRange.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.start != null && Object.hasOwnProperty.call(message, "start")) + writer.uint32(/* id 1, wireType 0 =*/8).int32(message.start); + if (message.end != null && Object.hasOwnProperty.call(message, "end")) + writer.uint32(/* id 2, wireType 0 =*/16).int32(message.end); + return writer; + }; + + /** + * Encodes the specified ReservedRange message, length delimited. Does not implicitly {@link google.protobuf.DescriptorProto.ReservedRange.verify|verify} messages. + * @function encodeDelimited + * @memberof google.protobuf.DescriptorProto.ReservedRange + * @static + * @param {google.protobuf.DescriptorProto.IReservedRange} message ReservedRange message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + ReservedRange.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a ReservedRange message from the specified reader or buffer. + * @function decode + * @memberof google.protobuf.DescriptorProto.ReservedRange + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.protobuf.DescriptorProto.ReservedRange} ReservedRange + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + ReservedRange.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.protobuf.DescriptorProto.ReservedRange(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.start = reader.int32(); + break; + case 2: + message.end = reader.int32(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a ReservedRange message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.protobuf.DescriptorProto.ReservedRange + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.protobuf.DescriptorProto.ReservedRange} ReservedRange + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + ReservedRange.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a ReservedRange message. + * @function verify + * @memberof google.protobuf.DescriptorProto.ReservedRange + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + ReservedRange.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.start != null && message.hasOwnProperty("start")) + if (!$util.isInteger(message.start)) + return "start: integer expected"; + if (message.end != null && message.hasOwnProperty("end")) + if (!$util.isInteger(message.end)) + return "end: integer expected"; + return null; + }; + + /** + * Creates a ReservedRange message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.protobuf.DescriptorProto.ReservedRange + * @static + * @param {Object.} object Plain object + * @returns {google.protobuf.DescriptorProto.ReservedRange} ReservedRange + */ + ReservedRange.fromObject = function fromObject(object) { + if (object instanceof $root.google.protobuf.DescriptorProto.ReservedRange) + return object; + var message = new $root.google.protobuf.DescriptorProto.ReservedRange(); + if (object.start != null) + message.start = object.start | 0; + if (object.end != null) + message.end = object.end | 0; + return message; + }; + + /** + * Creates a plain object from a ReservedRange message. Also converts values to other types if specified. + * @function toObject + * @memberof google.protobuf.DescriptorProto.ReservedRange + * @static + * @param {google.protobuf.DescriptorProto.ReservedRange} message ReservedRange + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + ReservedRange.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.start = 0; + object.end = 0; + } + if (message.start != null && message.hasOwnProperty("start")) + object.start = message.start; + if (message.end != null && message.hasOwnProperty("end")) + object.end = message.end; + return object; + }; + + /** + * Converts this ReservedRange to JSON. + * @function toJSON + * @memberof google.protobuf.DescriptorProto.ReservedRange + * @instance + * @returns {Object.} JSON object + */ + ReservedRange.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return ReservedRange; + })(); + + return DescriptorProto; + })(); + + protobuf.ExtensionRangeOptions = (function() { + + /** + * Properties of an ExtensionRangeOptions. + * @memberof google.protobuf + * @interface IExtensionRangeOptions + * @property {Array.|null} [uninterpretedOption] ExtensionRangeOptions uninterpretedOption + */ + + /** + * Constructs a new ExtensionRangeOptions. + * @memberof google.protobuf + * @classdesc Represents an ExtensionRangeOptions. + * @implements IExtensionRangeOptions + * @constructor + * @param {google.protobuf.IExtensionRangeOptions=} [properties] Properties to set + */ + function ExtensionRangeOptions(properties) { + this.uninterpretedOption = []; + 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]]; + } + + /** + * ExtensionRangeOptions uninterpretedOption. + * @member {Array.} uninterpretedOption + * @memberof google.protobuf.ExtensionRangeOptions + * @instance + */ + ExtensionRangeOptions.prototype.uninterpretedOption = $util.emptyArray; + + /** + * Creates a new ExtensionRangeOptions instance using the specified properties. + * @function create + * @memberof google.protobuf.ExtensionRangeOptions + * @static + * @param {google.protobuf.IExtensionRangeOptions=} [properties] Properties to set + * @returns {google.protobuf.ExtensionRangeOptions} ExtensionRangeOptions instance + */ + ExtensionRangeOptions.create = function create(properties) { + return new ExtensionRangeOptions(properties); + }; + + /** + * Encodes the specified ExtensionRangeOptions message. Does not implicitly {@link google.protobuf.ExtensionRangeOptions.verify|verify} messages. + * @function encode + * @memberof google.protobuf.ExtensionRangeOptions + * @static + * @param {google.protobuf.IExtensionRangeOptions} message ExtensionRangeOptions message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + ExtensionRangeOptions.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.uninterpretedOption != null && message.uninterpretedOption.length) + for (var i = 0; i < message.uninterpretedOption.length; ++i) + $root.google.protobuf.UninterpretedOption.encode(message.uninterpretedOption[i], writer.uint32(/* id 999, wireType 2 =*/7994).fork()).ldelim(); + return writer; + }; + + /** + * Encodes the specified ExtensionRangeOptions message, length delimited. Does not implicitly {@link google.protobuf.ExtensionRangeOptions.verify|verify} messages. + * @function encodeDelimited + * @memberof google.protobuf.ExtensionRangeOptions + * @static + * @param {google.protobuf.IExtensionRangeOptions} message ExtensionRangeOptions message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + ExtensionRangeOptions.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes an ExtensionRangeOptions message from the specified reader or buffer. + * @function decode + * @memberof google.protobuf.ExtensionRangeOptions + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.protobuf.ExtensionRangeOptions} ExtensionRangeOptions + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + ExtensionRangeOptions.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.protobuf.ExtensionRangeOptions(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 999: + if (!(message.uninterpretedOption && message.uninterpretedOption.length)) + message.uninterpretedOption = []; + message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32())); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes an ExtensionRangeOptions message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.protobuf.ExtensionRangeOptions + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.protobuf.ExtensionRangeOptions} ExtensionRangeOptions + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + ExtensionRangeOptions.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies an ExtensionRangeOptions message. + * @function verify + * @memberof google.protobuf.ExtensionRangeOptions + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + ExtensionRangeOptions.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.uninterpretedOption != null && message.hasOwnProperty("uninterpretedOption")) { + if (!Array.isArray(message.uninterpretedOption)) + return "uninterpretedOption: array expected"; + for (var i = 0; i < message.uninterpretedOption.length; ++i) { + var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i]); + if (error) + return "uninterpretedOption." + error; + } + } + return null; + }; + + /** + * Creates an ExtensionRangeOptions message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.protobuf.ExtensionRangeOptions + * @static + * @param {Object.} object Plain object + * @returns {google.protobuf.ExtensionRangeOptions} ExtensionRangeOptions + */ + ExtensionRangeOptions.fromObject = function fromObject(object) { + if (object instanceof $root.google.protobuf.ExtensionRangeOptions) + return object; + var message = new $root.google.protobuf.ExtensionRangeOptions(); + if (object.uninterpretedOption) { + if (!Array.isArray(object.uninterpretedOption)) + throw TypeError(".google.protobuf.ExtensionRangeOptions.uninterpretedOption: array expected"); + message.uninterpretedOption = []; + for (var i = 0; i < object.uninterpretedOption.length; ++i) { + if (typeof object.uninterpretedOption[i] !== "object") + throw TypeError(".google.protobuf.ExtensionRangeOptions.uninterpretedOption: object expected"); + message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i]); + } + } + return message; + }; + + /** + * Creates a plain object from an ExtensionRangeOptions message. Also converts values to other types if specified. + * @function toObject + * @memberof google.protobuf.ExtensionRangeOptions + * @static + * @param {google.protobuf.ExtensionRangeOptions} message ExtensionRangeOptions + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + ExtensionRangeOptions.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.arrays || options.defaults) + object.uninterpretedOption = []; + if (message.uninterpretedOption && message.uninterpretedOption.length) { + object.uninterpretedOption = []; + for (var j = 0; j < message.uninterpretedOption.length; ++j) + object.uninterpretedOption[j] = $root.google.protobuf.UninterpretedOption.toObject(message.uninterpretedOption[j], options); + } + return object; + }; + + /** + * Converts this ExtensionRangeOptions to JSON. + * @function toJSON + * @memberof google.protobuf.ExtensionRangeOptions + * @instance + * @returns {Object.} JSON object + */ + ExtensionRangeOptions.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return ExtensionRangeOptions; + })(); + + protobuf.FieldDescriptorProto = (function() { + + /** + * Properties of a FieldDescriptorProto. + * @memberof google.protobuf + * @interface IFieldDescriptorProto + * @property {string|null} [name] FieldDescriptorProto name + * @property {number|null} [number] FieldDescriptorProto number + * @property {google.protobuf.FieldDescriptorProto.Label|null} [label] FieldDescriptorProto label + * @property {google.protobuf.FieldDescriptorProto.Type|null} [type] FieldDescriptorProto type + * @property {string|null} [typeName] FieldDescriptorProto typeName + * @property {string|null} [extendee] FieldDescriptorProto extendee + * @property {string|null} [defaultValue] FieldDescriptorProto defaultValue + * @property {number|null} [oneofIndex] FieldDescriptorProto oneofIndex + * @property {string|null} [jsonName] FieldDescriptorProto jsonName + * @property {google.protobuf.IFieldOptions|null} [options] FieldDescriptorProto options + * @property {boolean|null} [proto3Optional] FieldDescriptorProto proto3Optional + */ + + /** + * Constructs a new FieldDescriptorProto. + * @memberof google.protobuf + * @classdesc Represents a FieldDescriptorProto. + * @implements IFieldDescriptorProto + * @constructor + * @param {google.protobuf.IFieldDescriptorProto=} [properties] Properties to set + */ + function FieldDescriptorProto(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]]; + } + + /** + * FieldDescriptorProto name. + * @member {string} name + * @memberof google.protobuf.FieldDescriptorProto + * @instance + */ + FieldDescriptorProto.prototype.name = ""; + + /** + * FieldDescriptorProto number. + * @member {number} number + * @memberof google.protobuf.FieldDescriptorProto + * @instance + */ + FieldDescriptorProto.prototype.number = 0; + + /** + * FieldDescriptorProto label. + * @member {google.protobuf.FieldDescriptorProto.Label} label + * @memberof google.protobuf.FieldDescriptorProto + * @instance + */ + FieldDescriptorProto.prototype.label = 1; + + /** + * FieldDescriptorProto type. + * @member {google.protobuf.FieldDescriptorProto.Type} type + * @memberof google.protobuf.FieldDescriptorProto + * @instance + */ + FieldDescriptorProto.prototype.type = 1; + + /** + * FieldDescriptorProto typeName. + * @member {string} typeName + * @memberof google.protobuf.FieldDescriptorProto + * @instance + */ + FieldDescriptorProto.prototype.typeName = ""; + + /** + * FieldDescriptorProto extendee. + * @member {string} extendee + * @memberof google.protobuf.FieldDescriptorProto + * @instance + */ + FieldDescriptorProto.prototype.extendee = ""; + + /** + * FieldDescriptorProto defaultValue. + * @member {string} defaultValue + * @memberof google.protobuf.FieldDescriptorProto + * @instance + */ + FieldDescriptorProto.prototype.defaultValue = ""; + + /** + * FieldDescriptorProto oneofIndex. + * @member {number} oneofIndex + * @memberof google.protobuf.FieldDescriptorProto + * @instance + */ + FieldDescriptorProto.prototype.oneofIndex = 0; + + /** + * FieldDescriptorProto jsonName. + * @member {string} jsonName + * @memberof google.protobuf.FieldDescriptorProto + * @instance + */ + FieldDescriptorProto.prototype.jsonName = ""; + + /** + * FieldDescriptorProto options. + * @member {google.protobuf.IFieldOptions|null|undefined} options + * @memberof google.protobuf.FieldDescriptorProto + * @instance + */ + FieldDescriptorProto.prototype.options = null; + + /** + * FieldDescriptorProto proto3Optional. + * @member {boolean} proto3Optional + * @memberof google.protobuf.FieldDescriptorProto + * @instance + */ + FieldDescriptorProto.prototype.proto3Optional = false; + + /** + * Creates a new FieldDescriptorProto instance using the specified properties. + * @function create + * @memberof google.protobuf.FieldDescriptorProto + * @static + * @param {google.protobuf.IFieldDescriptorProto=} [properties] Properties to set + * @returns {google.protobuf.FieldDescriptorProto} FieldDescriptorProto instance + */ + FieldDescriptorProto.create = function create(properties) { + return new FieldDescriptorProto(properties); + }; + + /** + * Encodes the specified FieldDescriptorProto message. Does not implicitly {@link google.protobuf.FieldDescriptorProto.verify|verify} messages. + * @function encode + * @memberof google.protobuf.FieldDescriptorProto + * @static + * @param {google.protobuf.IFieldDescriptorProto} message FieldDescriptorProto message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + FieldDescriptorProto.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.name != null && Object.hasOwnProperty.call(message, "name")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.name); + if (message.extendee != null && Object.hasOwnProperty.call(message, "extendee")) + writer.uint32(/* id 2, wireType 2 =*/18).string(message.extendee); + if (message.number != null && Object.hasOwnProperty.call(message, "number")) + writer.uint32(/* id 3, wireType 0 =*/24).int32(message.number); + if (message.label != null && Object.hasOwnProperty.call(message, "label")) + writer.uint32(/* id 4, wireType 0 =*/32).int32(message.label); + if (message.type != null && Object.hasOwnProperty.call(message, "type")) + writer.uint32(/* id 5, wireType 0 =*/40).int32(message.type); + if (message.typeName != null && Object.hasOwnProperty.call(message, "typeName")) + writer.uint32(/* id 6, wireType 2 =*/50).string(message.typeName); + if (message.defaultValue != null && Object.hasOwnProperty.call(message, "defaultValue")) + writer.uint32(/* id 7, wireType 2 =*/58).string(message.defaultValue); + if (message.options != null && Object.hasOwnProperty.call(message, "options")) + $root.google.protobuf.FieldOptions.encode(message.options, writer.uint32(/* id 8, wireType 2 =*/66).fork()).ldelim(); + if (message.oneofIndex != null && Object.hasOwnProperty.call(message, "oneofIndex")) + writer.uint32(/* id 9, wireType 0 =*/72).int32(message.oneofIndex); + if (message.jsonName != null && Object.hasOwnProperty.call(message, "jsonName")) + writer.uint32(/* id 10, wireType 2 =*/82).string(message.jsonName); + if (message.proto3Optional != null && Object.hasOwnProperty.call(message, "proto3Optional")) + writer.uint32(/* id 17, wireType 0 =*/136).bool(message.proto3Optional); + return writer; + }; + + /** + * Encodes the specified FieldDescriptorProto message, length delimited. Does not implicitly {@link google.protobuf.FieldDescriptorProto.verify|verify} messages. + * @function encodeDelimited + * @memberof google.protobuf.FieldDescriptorProto + * @static + * @param {google.protobuf.IFieldDescriptorProto} message FieldDescriptorProto message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + FieldDescriptorProto.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a FieldDescriptorProto message from the specified reader or buffer. + * @function decode + * @memberof google.protobuf.FieldDescriptorProto + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.protobuf.FieldDescriptorProto} FieldDescriptorProto + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + FieldDescriptorProto.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.protobuf.FieldDescriptorProto(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.name = reader.string(); + break; + case 3: + message.number = reader.int32(); + break; + case 4: + message.label = reader.int32(); + break; + case 5: + message.type = reader.int32(); + break; + case 6: + message.typeName = reader.string(); + break; + case 2: + message.extendee = reader.string(); + break; + case 7: + message.defaultValue = reader.string(); + break; + case 9: + message.oneofIndex = reader.int32(); + break; + case 10: + message.jsonName = reader.string(); + break; + case 8: + message.options = $root.google.protobuf.FieldOptions.decode(reader, reader.uint32()); + break; + case 17: + message.proto3Optional = reader.bool(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a FieldDescriptorProto message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.protobuf.FieldDescriptorProto + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.protobuf.FieldDescriptorProto} FieldDescriptorProto + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + FieldDescriptorProto.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a FieldDescriptorProto message. + * @function verify + * @memberof google.protobuf.FieldDescriptorProto + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + FieldDescriptorProto.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.name != null && message.hasOwnProperty("name")) + if (!$util.isString(message.name)) + return "name: string expected"; + if (message.number != null && message.hasOwnProperty("number")) + if (!$util.isInteger(message.number)) + return "number: integer expected"; + if (message.label != null && message.hasOwnProperty("label")) + switch (message.label) { + default: + return "label: enum value expected"; + case 1: + case 2: + case 3: + break; + } + if (message.type != null && message.hasOwnProperty("type")) + switch (message.type) { + default: + return "type: enum value expected"; + case 1: + case 2: + case 3: + case 4: + case 5: + case 6: + case 7: + case 8: + case 9: + case 10: + case 11: + case 12: + case 13: + case 14: + case 15: + case 16: + case 17: + case 18: + break; + } + if (message.typeName != null && message.hasOwnProperty("typeName")) + if (!$util.isString(message.typeName)) + return "typeName: string expected"; + if (message.extendee != null && message.hasOwnProperty("extendee")) + if (!$util.isString(message.extendee)) + return "extendee: string expected"; + if (message.defaultValue != null && message.hasOwnProperty("defaultValue")) + if (!$util.isString(message.defaultValue)) + return "defaultValue: string expected"; + if (message.oneofIndex != null && message.hasOwnProperty("oneofIndex")) + if (!$util.isInteger(message.oneofIndex)) + return "oneofIndex: integer expected"; + if (message.jsonName != null && message.hasOwnProperty("jsonName")) + if (!$util.isString(message.jsonName)) + return "jsonName: string expected"; + if (message.options != null && message.hasOwnProperty("options")) { + var error = $root.google.protobuf.FieldOptions.verify(message.options); + if (error) + return "options." + error; + } + if (message.proto3Optional != null && message.hasOwnProperty("proto3Optional")) + if (typeof message.proto3Optional !== "boolean") + return "proto3Optional: boolean expected"; + return null; + }; + + /** + * Creates a FieldDescriptorProto message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.protobuf.FieldDescriptorProto + * @static + * @param {Object.} object Plain object + * @returns {google.protobuf.FieldDescriptorProto} FieldDescriptorProto + */ + FieldDescriptorProto.fromObject = function fromObject(object) { + if (object instanceof $root.google.protobuf.FieldDescriptorProto) + return object; + var message = new $root.google.protobuf.FieldDescriptorProto(); + if (object.name != null) + message.name = String(object.name); + if (object.number != null) + message.number = object.number | 0; + switch (object.label) { + case "LABEL_OPTIONAL": + case 1: + message.label = 1; + break; + case "LABEL_REQUIRED": + case 2: + message.label = 2; + break; + case "LABEL_REPEATED": + case 3: + message.label = 3; + break; + } + switch (object.type) { + case "TYPE_DOUBLE": + case 1: + message.type = 1; + break; + case "TYPE_FLOAT": + case 2: + message.type = 2; + break; + case "TYPE_INT64": + case 3: + message.type = 3; + break; + case "TYPE_UINT64": + case 4: + message.type = 4; + break; + case "TYPE_INT32": + case 5: + message.type = 5; + break; + case "TYPE_FIXED64": + case 6: + message.type = 6; + break; + case "TYPE_FIXED32": + case 7: + message.type = 7; + break; + case "TYPE_BOOL": + case 8: + message.type = 8; + break; + case "TYPE_STRING": + case 9: + message.type = 9; + break; + case "TYPE_GROUP": + case 10: + message.type = 10; + break; + case "TYPE_MESSAGE": + case 11: + message.type = 11; + break; + case "TYPE_BYTES": + case 12: + message.type = 12; + break; + case "TYPE_UINT32": + case 13: + message.type = 13; + break; + case "TYPE_ENUM": + case 14: + message.type = 14; + break; + case "TYPE_SFIXED32": + case 15: + message.type = 15; + break; + case "TYPE_SFIXED64": + case 16: + message.type = 16; + break; + case "TYPE_SINT32": + case 17: + message.type = 17; + break; + case "TYPE_SINT64": + case 18: + message.type = 18; + break; + } + if (object.typeName != null) + message.typeName = String(object.typeName); + if (object.extendee != null) + message.extendee = String(object.extendee); + if (object.defaultValue != null) + message.defaultValue = String(object.defaultValue); + if (object.oneofIndex != null) + message.oneofIndex = object.oneofIndex | 0; + if (object.jsonName != null) + message.jsonName = String(object.jsonName); + if (object.options != null) { + if (typeof object.options !== "object") + throw TypeError(".google.protobuf.FieldDescriptorProto.options: object expected"); + message.options = $root.google.protobuf.FieldOptions.fromObject(object.options); + } + if (object.proto3Optional != null) + message.proto3Optional = Boolean(object.proto3Optional); + return message; + }; + + /** + * Creates a plain object from a FieldDescriptorProto message. Also converts values to other types if specified. + * @function toObject + * @memberof google.protobuf.FieldDescriptorProto + * @static + * @param {google.protobuf.FieldDescriptorProto} message FieldDescriptorProto + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + FieldDescriptorProto.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.name = ""; + object.extendee = ""; + object.number = 0; + object.label = options.enums === String ? "LABEL_OPTIONAL" : 1; + object.type = options.enums === String ? "TYPE_DOUBLE" : 1; + object.typeName = ""; + object.defaultValue = ""; + object.options = null; + object.oneofIndex = 0; + object.jsonName = ""; + object.proto3Optional = false; + } + if (message.name != null && message.hasOwnProperty("name")) + object.name = message.name; + if (message.extendee != null && message.hasOwnProperty("extendee")) + object.extendee = message.extendee; + if (message.number != null && message.hasOwnProperty("number")) + object.number = message.number; + if (message.label != null && message.hasOwnProperty("label")) + object.label = options.enums === String ? $root.google.protobuf.FieldDescriptorProto.Label[message.label] : message.label; + if (message.type != null && message.hasOwnProperty("type")) + object.type = options.enums === String ? $root.google.protobuf.FieldDescriptorProto.Type[message.type] : message.type; + if (message.typeName != null && message.hasOwnProperty("typeName")) + object.typeName = message.typeName; + if (message.defaultValue != null && message.hasOwnProperty("defaultValue")) + object.defaultValue = message.defaultValue; + if (message.options != null && message.hasOwnProperty("options")) + object.options = $root.google.protobuf.FieldOptions.toObject(message.options, options); + if (message.oneofIndex != null && message.hasOwnProperty("oneofIndex")) + object.oneofIndex = message.oneofIndex; + if (message.jsonName != null && message.hasOwnProperty("jsonName")) + object.jsonName = message.jsonName; + if (message.proto3Optional != null && message.hasOwnProperty("proto3Optional")) + object.proto3Optional = message.proto3Optional; + return object; + }; + + /** + * Converts this FieldDescriptorProto to JSON. + * @function toJSON + * @memberof google.protobuf.FieldDescriptorProto + * @instance + * @returns {Object.} JSON object + */ + FieldDescriptorProto.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + /** + * Type enum. + * @name google.protobuf.FieldDescriptorProto.Type + * @enum {number} + * @property {number} TYPE_DOUBLE=1 TYPE_DOUBLE value + * @property {number} TYPE_FLOAT=2 TYPE_FLOAT value + * @property {number} TYPE_INT64=3 TYPE_INT64 value + * @property {number} TYPE_UINT64=4 TYPE_UINT64 value + * @property {number} TYPE_INT32=5 TYPE_INT32 value + * @property {number} TYPE_FIXED64=6 TYPE_FIXED64 value + * @property {number} TYPE_FIXED32=7 TYPE_FIXED32 value + * @property {number} TYPE_BOOL=8 TYPE_BOOL value + * @property {number} TYPE_STRING=9 TYPE_STRING value + * @property {number} TYPE_GROUP=10 TYPE_GROUP value + * @property {number} TYPE_MESSAGE=11 TYPE_MESSAGE value + * @property {number} TYPE_BYTES=12 TYPE_BYTES value + * @property {number} TYPE_UINT32=13 TYPE_UINT32 value + * @property {number} TYPE_ENUM=14 TYPE_ENUM value + * @property {number} TYPE_SFIXED32=15 TYPE_SFIXED32 value + * @property {number} TYPE_SFIXED64=16 TYPE_SFIXED64 value + * @property {number} TYPE_SINT32=17 TYPE_SINT32 value + * @property {number} TYPE_SINT64=18 TYPE_SINT64 value + */ + FieldDescriptorProto.Type = (function() { + var valuesById = {}, values = Object.create(valuesById); + values[valuesById[1] = "TYPE_DOUBLE"] = 1; + values[valuesById[2] = "TYPE_FLOAT"] = 2; + values[valuesById[3] = "TYPE_INT64"] = 3; + values[valuesById[4] = "TYPE_UINT64"] = 4; + values[valuesById[5] = "TYPE_INT32"] = 5; + values[valuesById[6] = "TYPE_FIXED64"] = 6; + values[valuesById[7] = "TYPE_FIXED32"] = 7; + values[valuesById[8] = "TYPE_BOOL"] = 8; + values[valuesById[9] = "TYPE_STRING"] = 9; + values[valuesById[10] = "TYPE_GROUP"] = 10; + values[valuesById[11] = "TYPE_MESSAGE"] = 11; + values[valuesById[12] = "TYPE_BYTES"] = 12; + values[valuesById[13] = "TYPE_UINT32"] = 13; + values[valuesById[14] = "TYPE_ENUM"] = 14; + values[valuesById[15] = "TYPE_SFIXED32"] = 15; + values[valuesById[16] = "TYPE_SFIXED64"] = 16; + values[valuesById[17] = "TYPE_SINT32"] = 17; + values[valuesById[18] = "TYPE_SINT64"] = 18; + return values; + })(); + + /** + * Label enum. + * @name google.protobuf.FieldDescriptorProto.Label + * @enum {number} + * @property {number} LABEL_OPTIONAL=1 LABEL_OPTIONAL value + * @property {number} LABEL_REQUIRED=2 LABEL_REQUIRED value + * @property {number} LABEL_REPEATED=3 LABEL_REPEATED value + */ + FieldDescriptorProto.Label = (function() { + var valuesById = {}, values = Object.create(valuesById); + values[valuesById[1] = "LABEL_OPTIONAL"] = 1; + values[valuesById[2] = "LABEL_REQUIRED"] = 2; + values[valuesById[3] = "LABEL_REPEATED"] = 3; + return values; + })(); + + return FieldDescriptorProto; + })(); + + protobuf.OneofDescriptorProto = (function() { + + /** + * Properties of an OneofDescriptorProto. + * @memberof google.protobuf + * @interface IOneofDescriptorProto + * @property {string|null} [name] OneofDescriptorProto name + * @property {google.protobuf.IOneofOptions|null} [options] OneofDescriptorProto options + */ + + /** + * Constructs a new OneofDescriptorProto. + * @memberof google.protobuf + * @classdesc Represents an OneofDescriptorProto. + * @implements IOneofDescriptorProto + * @constructor + * @param {google.protobuf.IOneofDescriptorProto=} [properties] Properties to set + */ + function OneofDescriptorProto(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]]; + } + + /** + * OneofDescriptorProto name. + * @member {string} name + * @memberof google.protobuf.OneofDescriptorProto + * @instance + */ + OneofDescriptorProto.prototype.name = ""; + + /** + * OneofDescriptorProto options. + * @member {google.protobuf.IOneofOptions|null|undefined} options + * @memberof google.protobuf.OneofDescriptorProto + * @instance + */ + OneofDescriptorProto.prototype.options = null; + + /** + * Creates a new OneofDescriptorProto instance using the specified properties. + * @function create + * @memberof google.protobuf.OneofDescriptorProto + * @static + * @param {google.protobuf.IOneofDescriptorProto=} [properties] Properties to set + * @returns {google.protobuf.OneofDescriptorProto} OneofDescriptorProto instance + */ + OneofDescriptorProto.create = function create(properties) { + return new OneofDescriptorProto(properties); + }; + + /** + * Encodes the specified OneofDescriptorProto message. Does not implicitly {@link google.protobuf.OneofDescriptorProto.verify|verify} messages. + * @function encode + * @memberof google.protobuf.OneofDescriptorProto + * @static + * @param {google.protobuf.IOneofDescriptorProto} message OneofDescriptorProto message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + OneofDescriptorProto.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.name != null && Object.hasOwnProperty.call(message, "name")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.name); + if (message.options != null && Object.hasOwnProperty.call(message, "options")) + $root.google.protobuf.OneofOptions.encode(message.options, writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim(); + return writer; + }; + + /** + * Encodes the specified OneofDescriptorProto message, length delimited. Does not implicitly {@link google.protobuf.OneofDescriptorProto.verify|verify} messages. + * @function encodeDelimited + * @memberof google.protobuf.OneofDescriptorProto + * @static + * @param {google.protobuf.IOneofDescriptorProto} message OneofDescriptorProto message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + OneofDescriptorProto.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes an OneofDescriptorProto message from the specified reader or buffer. + * @function decode + * @memberof google.protobuf.OneofDescriptorProto + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.protobuf.OneofDescriptorProto} OneofDescriptorProto + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + OneofDescriptorProto.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.protobuf.OneofDescriptorProto(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.name = reader.string(); + break; + case 2: + message.options = $root.google.protobuf.OneofOptions.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes an OneofDescriptorProto message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.protobuf.OneofDescriptorProto + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.protobuf.OneofDescriptorProto} OneofDescriptorProto + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + OneofDescriptorProto.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies an OneofDescriptorProto message. + * @function verify + * @memberof google.protobuf.OneofDescriptorProto + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + OneofDescriptorProto.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.name != null && message.hasOwnProperty("name")) + if (!$util.isString(message.name)) + return "name: string expected"; + if (message.options != null && message.hasOwnProperty("options")) { + var error = $root.google.protobuf.OneofOptions.verify(message.options); + if (error) + return "options." + error; + } + return null; + }; + + /** + * Creates an OneofDescriptorProto message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.protobuf.OneofDescriptorProto + * @static + * @param {Object.} object Plain object + * @returns {google.protobuf.OneofDescriptorProto} OneofDescriptorProto + */ + OneofDescriptorProto.fromObject = function fromObject(object) { + if (object instanceof $root.google.protobuf.OneofDescriptorProto) + return object; + var message = new $root.google.protobuf.OneofDescriptorProto(); + if (object.name != null) + message.name = String(object.name); + if (object.options != null) { + if (typeof object.options !== "object") + throw TypeError(".google.protobuf.OneofDescriptorProto.options: object expected"); + message.options = $root.google.protobuf.OneofOptions.fromObject(object.options); + } + return message; + }; + + /** + * Creates a plain object from an OneofDescriptorProto message. Also converts values to other types if specified. + * @function toObject + * @memberof google.protobuf.OneofDescriptorProto + * @static + * @param {google.protobuf.OneofDescriptorProto} message OneofDescriptorProto + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + OneofDescriptorProto.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.name = ""; + object.options = null; + } + if (message.name != null && message.hasOwnProperty("name")) + object.name = message.name; + if (message.options != null && message.hasOwnProperty("options")) + object.options = $root.google.protobuf.OneofOptions.toObject(message.options, options); + return object; + }; + + /** + * Converts this OneofDescriptorProto to JSON. + * @function toJSON + * @memberof google.protobuf.OneofDescriptorProto + * @instance + * @returns {Object.} JSON object + */ + OneofDescriptorProto.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return OneofDescriptorProto; + })(); + + protobuf.EnumDescriptorProto = (function() { + + /** + * Properties of an EnumDescriptorProto. + * @memberof google.protobuf + * @interface IEnumDescriptorProto + * @property {string|null} [name] EnumDescriptorProto name + * @property {Array.|null} [value] EnumDescriptorProto value + * @property {google.protobuf.IEnumOptions|null} [options] EnumDescriptorProto options + * @property {Array.|null} [reservedRange] EnumDescriptorProto reservedRange + * @property {Array.|null} [reservedName] EnumDescriptorProto reservedName + */ + + /** + * Constructs a new EnumDescriptorProto. + * @memberof google.protobuf + * @classdesc Represents an EnumDescriptorProto. + * @implements IEnumDescriptorProto + * @constructor + * @param {google.protobuf.IEnumDescriptorProto=} [properties] Properties to set + */ + function EnumDescriptorProto(properties) { + this.value = []; + this.reservedRange = []; + this.reservedName = []; + 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]]; + } + + /** + * EnumDescriptorProto name. + * @member {string} name + * @memberof google.protobuf.EnumDescriptorProto + * @instance + */ + EnumDescriptorProto.prototype.name = ""; + + /** + * EnumDescriptorProto value. + * @member {Array.} value + * @memberof google.protobuf.EnumDescriptorProto + * @instance + */ + EnumDescriptorProto.prototype.value = $util.emptyArray; + + /** + * EnumDescriptorProto options. + * @member {google.protobuf.IEnumOptions|null|undefined} options + * @memberof google.protobuf.EnumDescriptorProto + * @instance + */ + EnumDescriptorProto.prototype.options = null; + + /** + * EnumDescriptorProto reservedRange. + * @member {Array.} reservedRange + * @memberof google.protobuf.EnumDescriptorProto + * @instance + */ + EnumDescriptorProto.prototype.reservedRange = $util.emptyArray; + + /** + * EnumDescriptorProto reservedName. + * @member {Array.} reservedName + * @memberof google.protobuf.EnumDescriptorProto + * @instance + */ + EnumDescriptorProto.prototype.reservedName = $util.emptyArray; + + /** + * Creates a new EnumDescriptorProto instance using the specified properties. + * @function create + * @memberof google.protobuf.EnumDescriptorProto + * @static + * @param {google.protobuf.IEnumDescriptorProto=} [properties] Properties to set + * @returns {google.protobuf.EnumDescriptorProto} EnumDescriptorProto instance + */ + EnumDescriptorProto.create = function create(properties) { + return new EnumDescriptorProto(properties); + }; + + /** + * Encodes the specified EnumDescriptorProto message. Does not implicitly {@link google.protobuf.EnumDescriptorProto.verify|verify} messages. + * @function encode + * @memberof google.protobuf.EnumDescriptorProto + * @static + * @param {google.protobuf.IEnumDescriptorProto} message EnumDescriptorProto message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + EnumDescriptorProto.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.name != null && Object.hasOwnProperty.call(message, "name")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.name); + if (message.value != null && message.value.length) + for (var i = 0; i < message.value.length; ++i) + $root.google.protobuf.EnumValueDescriptorProto.encode(message.value[i], writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim(); + if (message.options != null && Object.hasOwnProperty.call(message, "options")) + $root.google.protobuf.EnumOptions.encode(message.options, writer.uint32(/* id 3, wireType 2 =*/26).fork()).ldelim(); + if (message.reservedRange != null && message.reservedRange.length) + for (var i = 0; i < message.reservedRange.length; ++i) + $root.google.protobuf.EnumDescriptorProto.EnumReservedRange.encode(message.reservedRange[i], writer.uint32(/* id 4, wireType 2 =*/34).fork()).ldelim(); + if (message.reservedName != null && message.reservedName.length) + for (var i = 0; i < message.reservedName.length; ++i) + writer.uint32(/* id 5, wireType 2 =*/42).string(message.reservedName[i]); + return writer; + }; + + /** + * Encodes the specified EnumDescriptorProto message, length delimited. Does not implicitly {@link google.protobuf.EnumDescriptorProto.verify|verify} messages. + * @function encodeDelimited + * @memberof google.protobuf.EnumDescriptorProto + * @static + * @param {google.protobuf.IEnumDescriptorProto} message EnumDescriptorProto message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + EnumDescriptorProto.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes an EnumDescriptorProto message from the specified reader or buffer. + * @function decode + * @memberof google.protobuf.EnumDescriptorProto + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.protobuf.EnumDescriptorProto} EnumDescriptorProto + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + EnumDescriptorProto.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.protobuf.EnumDescriptorProto(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.name = reader.string(); + break; + case 2: + if (!(message.value && message.value.length)) + message.value = []; + message.value.push($root.google.protobuf.EnumValueDescriptorProto.decode(reader, reader.uint32())); + break; + case 3: + message.options = $root.google.protobuf.EnumOptions.decode(reader, reader.uint32()); + break; + case 4: + if (!(message.reservedRange && message.reservedRange.length)) + message.reservedRange = []; + message.reservedRange.push($root.google.protobuf.EnumDescriptorProto.EnumReservedRange.decode(reader, reader.uint32())); + break; + case 5: + if (!(message.reservedName && message.reservedName.length)) + message.reservedName = []; + message.reservedName.push(reader.string()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes an EnumDescriptorProto message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.protobuf.EnumDescriptorProto + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.protobuf.EnumDescriptorProto} EnumDescriptorProto + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + EnumDescriptorProto.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies an EnumDescriptorProto message. + * @function verify + * @memberof google.protobuf.EnumDescriptorProto + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + EnumDescriptorProto.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.name != null && message.hasOwnProperty("name")) + if (!$util.isString(message.name)) + return "name: string expected"; + if (message.value != null && message.hasOwnProperty("value")) { + if (!Array.isArray(message.value)) + return "value: array expected"; + for (var i = 0; i < message.value.length; ++i) { + var error = $root.google.protobuf.EnumValueDescriptorProto.verify(message.value[i]); + if (error) + return "value." + error; + } + } + if (message.options != null && message.hasOwnProperty("options")) { + var error = $root.google.protobuf.EnumOptions.verify(message.options); + if (error) + return "options." + error; + } + if (message.reservedRange != null && message.hasOwnProperty("reservedRange")) { + if (!Array.isArray(message.reservedRange)) + return "reservedRange: array expected"; + for (var i = 0; i < message.reservedRange.length; ++i) { + var error = $root.google.protobuf.EnumDescriptorProto.EnumReservedRange.verify(message.reservedRange[i]); + if (error) + return "reservedRange." + error; + } + } + if (message.reservedName != null && message.hasOwnProperty("reservedName")) { + if (!Array.isArray(message.reservedName)) + return "reservedName: array expected"; + for (var i = 0; i < message.reservedName.length; ++i) + if (!$util.isString(message.reservedName[i])) + return "reservedName: string[] expected"; + } + return null; + }; + + /** + * Creates an EnumDescriptorProto message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.protobuf.EnumDescriptorProto + * @static + * @param {Object.} object Plain object + * @returns {google.protobuf.EnumDescriptorProto} EnumDescriptorProto + */ + EnumDescriptorProto.fromObject = function fromObject(object) { + if (object instanceof $root.google.protobuf.EnumDescriptorProto) + return object; + var message = new $root.google.protobuf.EnumDescriptorProto(); + if (object.name != null) + message.name = String(object.name); + if (object.value) { + if (!Array.isArray(object.value)) + throw TypeError(".google.protobuf.EnumDescriptorProto.value: array expected"); + message.value = []; + for (var i = 0; i < object.value.length; ++i) { + if (typeof object.value[i] !== "object") + throw TypeError(".google.protobuf.EnumDescriptorProto.value: object expected"); + message.value[i] = $root.google.protobuf.EnumValueDescriptorProto.fromObject(object.value[i]); + } + } + if (object.options != null) { + if (typeof object.options !== "object") + throw TypeError(".google.protobuf.EnumDescriptorProto.options: object expected"); + message.options = $root.google.protobuf.EnumOptions.fromObject(object.options); + } + if (object.reservedRange) { + if (!Array.isArray(object.reservedRange)) + throw TypeError(".google.protobuf.EnumDescriptorProto.reservedRange: array expected"); + message.reservedRange = []; + for (var i = 0; i < object.reservedRange.length; ++i) { + if (typeof object.reservedRange[i] !== "object") + throw TypeError(".google.protobuf.EnumDescriptorProto.reservedRange: object expected"); + message.reservedRange[i] = $root.google.protobuf.EnumDescriptorProto.EnumReservedRange.fromObject(object.reservedRange[i]); + } + } + if (object.reservedName) { + if (!Array.isArray(object.reservedName)) + throw TypeError(".google.protobuf.EnumDescriptorProto.reservedName: array expected"); + message.reservedName = []; + for (var i = 0; i < object.reservedName.length; ++i) + message.reservedName[i] = String(object.reservedName[i]); + } + return message; + }; + + /** + * Creates a plain object from an EnumDescriptorProto message. Also converts values to other types if specified. + * @function toObject + * @memberof google.protobuf.EnumDescriptorProto + * @static + * @param {google.protobuf.EnumDescriptorProto} message EnumDescriptorProto + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + EnumDescriptorProto.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.arrays || options.defaults) { + object.value = []; + object.reservedRange = []; + object.reservedName = []; + } + if (options.defaults) { + object.name = ""; + object.options = null; + } + if (message.name != null && message.hasOwnProperty("name")) + object.name = message.name; + if (message.value && message.value.length) { + object.value = []; + for (var j = 0; j < message.value.length; ++j) + object.value[j] = $root.google.protobuf.EnumValueDescriptorProto.toObject(message.value[j], options); + } + if (message.options != null && message.hasOwnProperty("options")) + object.options = $root.google.protobuf.EnumOptions.toObject(message.options, options); + if (message.reservedRange && message.reservedRange.length) { + object.reservedRange = []; + for (var j = 0; j < message.reservedRange.length; ++j) + object.reservedRange[j] = $root.google.protobuf.EnumDescriptorProto.EnumReservedRange.toObject(message.reservedRange[j], options); + } + if (message.reservedName && message.reservedName.length) { + object.reservedName = []; + for (var j = 0; j < message.reservedName.length; ++j) + object.reservedName[j] = message.reservedName[j]; + } + return object; + }; + + /** + * Converts this EnumDescriptorProto to JSON. + * @function toJSON + * @memberof google.protobuf.EnumDescriptorProto + * @instance + * @returns {Object.} JSON object + */ + EnumDescriptorProto.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + EnumDescriptorProto.EnumReservedRange = (function() { + + /** + * Properties of an EnumReservedRange. + * @memberof google.protobuf.EnumDescriptorProto + * @interface IEnumReservedRange + * @property {number|null} [start] EnumReservedRange start + * @property {number|null} [end] EnumReservedRange end + */ + + /** + * Constructs a new EnumReservedRange. + * @memberof google.protobuf.EnumDescriptorProto + * @classdesc Represents an EnumReservedRange. + * @implements IEnumReservedRange + * @constructor + * @param {google.protobuf.EnumDescriptorProto.IEnumReservedRange=} [properties] Properties to set + */ + function EnumReservedRange(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]]; + } + + /** + * EnumReservedRange start. + * @member {number} start + * @memberof google.protobuf.EnumDescriptorProto.EnumReservedRange + * @instance + */ + EnumReservedRange.prototype.start = 0; + + /** + * EnumReservedRange end. + * @member {number} end + * @memberof google.protobuf.EnumDescriptorProto.EnumReservedRange + * @instance + */ + EnumReservedRange.prototype.end = 0; + + /** + * Creates a new EnumReservedRange instance using the specified properties. + * @function create + * @memberof google.protobuf.EnumDescriptorProto.EnumReservedRange + * @static + * @param {google.protobuf.EnumDescriptorProto.IEnumReservedRange=} [properties] Properties to set + * @returns {google.protobuf.EnumDescriptorProto.EnumReservedRange} EnumReservedRange instance + */ + EnumReservedRange.create = function create(properties) { + return new EnumReservedRange(properties); + }; + + /** + * Encodes the specified EnumReservedRange message. Does not implicitly {@link google.protobuf.EnumDescriptorProto.EnumReservedRange.verify|verify} messages. + * @function encode + * @memberof google.protobuf.EnumDescriptorProto.EnumReservedRange + * @static + * @param {google.protobuf.EnumDescriptorProto.IEnumReservedRange} message EnumReservedRange message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + EnumReservedRange.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.start != null && Object.hasOwnProperty.call(message, "start")) + writer.uint32(/* id 1, wireType 0 =*/8).int32(message.start); + if (message.end != null && Object.hasOwnProperty.call(message, "end")) + writer.uint32(/* id 2, wireType 0 =*/16).int32(message.end); + return writer; + }; + + /** + * Encodes the specified EnumReservedRange message, length delimited. Does not implicitly {@link google.protobuf.EnumDescriptorProto.EnumReservedRange.verify|verify} messages. + * @function encodeDelimited + * @memberof google.protobuf.EnumDescriptorProto.EnumReservedRange + * @static + * @param {google.protobuf.EnumDescriptorProto.IEnumReservedRange} message EnumReservedRange message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + EnumReservedRange.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes an EnumReservedRange message from the specified reader or buffer. + * @function decode + * @memberof google.protobuf.EnumDescriptorProto.EnumReservedRange + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.protobuf.EnumDescriptorProto.EnumReservedRange} EnumReservedRange + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + EnumReservedRange.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.protobuf.EnumDescriptorProto.EnumReservedRange(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.start = reader.int32(); + break; + case 2: + message.end = reader.int32(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes an EnumReservedRange message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.protobuf.EnumDescriptorProto.EnumReservedRange + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.protobuf.EnumDescriptorProto.EnumReservedRange} EnumReservedRange + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + EnumReservedRange.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies an EnumReservedRange message. + * @function verify + * @memberof google.protobuf.EnumDescriptorProto.EnumReservedRange + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + EnumReservedRange.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.start != null && message.hasOwnProperty("start")) + if (!$util.isInteger(message.start)) + return "start: integer expected"; + if (message.end != null && message.hasOwnProperty("end")) + if (!$util.isInteger(message.end)) + return "end: integer expected"; + return null; + }; + + /** + * Creates an EnumReservedRange message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.protobuf.EnumDescriptorProto.EnumReservedRange + * @static + * @param {Object.} object Plain object + * @returns {google.protobuf.EnumDescriptorProto.EnumReservedRange} EnumReservedRange + */ + EnumReservedRange.fromObject = function fromObject(object) { + if (object instanceof $root.google.protobuf.EnumDescriptorProto.EnumReservedRange) + return object; + var message = new $root.google.protobuf.EnumDescriptorProto.EnumReservedRange(); + if (object.start != null) + message.start = object.start | 0; + if (object.end != null) + message.end = object.end | 0; + return message; + }; + + /** + * Creates a plain object from an EnumReservedRange message. Also converts values to other types if specified. + * @function toObject + * @memberof google.protobuf.EnumDescriptorProto.EnumReservedRange + * @static + * @param {google.protobuf.EnumDescriptorProto.EnumReservedRange} message EnumReservedRange + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + EnumReservedRange.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.start = 0; + object.end = 0; + } + if (message.start != null && message.hasOwnProperty("start")) + object.start = message.start; + if (message.end != null && message.hasOwnProperty("end")) + object.end = message.end; + return object; + }; + + /** + * Converts this EnumReservedRange to JSON. + * @function toJSON + * @memberof google.protobuf.EnumDescriptorProto.EnumReservedRange + * @instance + * @returns {Object.} JSON object + */ + EnumReservedRange.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return EnumReservedRange; + })(); + + return EnumDescriptorProto; + })(); + + protobuf.EnumValueDescriptorProto = (function() { + + /** + * Properties of an EnumValueDescriptorProto. + * @memberof google.protobuf + * @interface IEnumValueDescriptorProto + * @property {string|null} [name] EnumValueDescriptorProto name + * @property {number|null} [number] EnumValueDescriptorProto number + * @property {google.protobuf.IEnumValueOptions|null} [options] EnumValueDescriptorProto options + */ + + /** + * Constructs a new EnumValueDescriptorProto. + * @memberof google.protobuf + * @classdesc Represents an EnumValueDescriptorProto. + * @implements IEnumValueDescriptorProto + * @constructor + * @param {google.protobuf.IEnumValueDescriptorProto=} [properties] Properties to set + */ + function EnumValueDescriptorProto(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]]; + } + + /** + * EnumValueDescriptorProto name. + * @member {string} name + * @memberof google.protobuf.EnumValueDescriptorProto + * @instance + */ + EnumValueDescriptorProto.prototype.name = ""; + + /** + * EnumValueDescriptorProto number. + * @member {number} number + * @memberof google.protobuf.EnumValueDescriptorProto + * @instance + */ + EnumValueDescriptorProto.prototype.number = 0; + + /** + * EnumValueDescriptorProto options. + * @member {google.protobuf.IEnumValueOptions|null|undefined} options + * @memberof google.protobuf.EnumValueDescriptorProto + * @instance + */ + EnumValueDescriptorProto.prototype.options = null; + + /** + * Creates a new EnumValueDescriptorProto instance using the specified properties. + * @function create + * @memberof google.protobuf.EnumValueDescriptorProto + * @static + * @param {google.protobuf.IEnumValueDescriptorProto=} [properties] Properties to set + * @returns {google.protobuf.EnumValueDescriptorProto} EnumValueDescriptorProto instance + */ + EnumValueDescriptorProto.create = function create(properties) { + return new EnumValueDescriptorProto(properties); + }; + + /** + * Encodes the specified EnumValueDescriptorProto message. Does not implicitly {@link google.protobuf.EnumValueDescriptorProto.verify|verify} messages. + * @function encode + * @memberof google.protobuf.EnumValueDescriptorProto + * @static + * @param {google.protobuf.IEnumValueDescriptorProto} message EnumValueDescriptorProto message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + EnumValueDescriptorProto.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.name != null && Object.hasOwnProperty.call(message, "name")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.name); + if (message.number != null && Object.hasOwnProperty.call(message, "number")) + writer.uint32(/* id 2, wireType 0 =*/16).int32(message.number); + if (message.options != null && Object.hasOwnProperty.call(message, "options")) + $root.google.protobuf.EnumValueOptions.encode(message.options, writer.uint32(/* id 3, wireType 2 =*/26).fork()).ldelim(); + return writer; + }; + + /** + * Encodes the specified EnumValueDescriptorProto message, length delimited. Does not implicitly {@link google.protobuf.EnumValueDescriptorProto.verify|verify} messages. + * @function encodeDelimited + * @memberof google.protobuf.EnumValueDescriptorProto + * @static + * @param {google.protobuf.IEnumValueDescriptorProto} message EnumValueDescriptorProto message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + EnumValueDescriptorProto.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes an EnumValueDescriptorProto message from the specified reader or buffer. + * @function decode + * @memberof google.protobuf.EnumValueDescriptorProto + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.protobuf.EnumValueDescriptorProto} EnumValueDescriptorProto + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + EnumValueDescriptorProto.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.protobuf.EnumValueDescriptorProto(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.name = reader.string(); + break; + case 2: + message.number = reader.int32(); + break; + case 3: + message.options = $root.google.protobuf.EnumValueOptions.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes an EnumValueDescriptorProto message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.protobuf.EnumValueDescriptorProto + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.protobuf.EnumValueDescriptorProto} EnumValueDescriptorProto + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + EnumValueDescriptorProto.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies an EnumValueDescriptorProto message. + * @function verify + * @memberof google.protobuf.EnumValueDescriptorProto + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + EnumValueDescriptorProto.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.name != null && message.hasOwnProperty("name")) + if (!$util.isString(message.name)) + return "name: string expected"; + if (message.number != null && message.hasOwnProperty("number")) + if (!$util.isInteger(message.number)) + return "number: integer expected"; + if (message.options != null && message.hasOwnProperty("options")) { + var error = $root.google.protobuf.EnumValueOptions.verify(message.options); + if (error) + return "options." + error; + } + return null; + }; + + /** + * Creates an EnumValueDescriptorProto message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.protobuf.EnumValueDescriptorProto + * @static + * @param {Object.} object Plain object + * @returns {google.protobuf.EnumValueDescriptorProto} EnumValueDescriptorProto + */ + EnumValueDescriptorProto.fromObject = function fromObject(object) { + if (object instanceof $root.google.protobuf.EnumValueDescriptorProto) + return object; + var message = new $root.google.protobuf.EnumValueDescriptorProto(); + if (object.name != null) + message.name = String(object.name); + if (object.number != null) + message.number = object.number | 0; + if (object.options != null) { + if (typeof object.options !== "object") + throw TypeError(".google.protobuf.EnumValueDescriptorProto.options: object expected"); + message.options = $root.google.protobuf.EnumValueOptions.fromObject(object.options); + } + return message; + }; + + /** + * Creates a plain object from an EnumValueDescriptorProto message. Also converts values to other types if specified. + * @function toObject + * @memberof google.protobuf.EnumValueDescriptorProto + * @static + * @param {google.protobuf.EnumValueDescriptorProto} message EnumValueDescriptorProto + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + EnumValueDescriptorProto.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.name = ""; + object.number = 0; + object.options = null; + } + if (message.name != null && message.hasOwnProperty("name")) + object.name = message.name; + if (message.number != null && message.hasOwnProperty("number")) + object.number = message.number; + if (message.options != null && message.hasOwnProperty("options")) + object.options = $root.google.protobuf.EnumValueOptions.toObject(message.options, options); + return object; + }; + + /** + * Converts this EnumValueDescriptorProto to JSON. + * @function toJSON + * @memberof google.protobuf.EnumValueDescriptorProto + * @instance + * @returns {Object.} JSON object + */ + EnumValueDescriptorProto.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return EnumValueDescriptorProto; + })(); + + protobuf.ServiceDescriptorProto = (function() { + + /** + * Properties of a ServiceDescriptorProto. + * @memberof google.protobuf + * @interface IServiceDescriptorProto + * @property {string|null} [name] ServiceDescriptorProto name + * @property {Array.|null} [method] ServiceDescriptorProto method + * @property {google.protobuf.IServiceOptions|null} [options] ServiceDescriptorProto options + */ + + /** + * Constructs a new ServiceDescriptorProto. + * @memberof google.protobuf + * @classdesc Represents a ServiceDescriptorProto. + * @implements IServiceDescriptorProto + * @constructor + * @param {google.protobuf.IServiceDescriptorProto=} [properties] Properties to set + */ + function ServiceDescriptorProto(properties) { + this.method = []; + 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]]; + } + + /** + * ServiceDescriptorProto name. + * @member {string} name + * @memberof google.protobuf.ServiceDescriptorProto + * @instance + */ + ServiceDescriptorProto.prototype.name = ""; + + /** + * ServiceDescriptorProto method. + * @member {Array.} method + * @memberof google.protobuf.ServiceDescriptorProto + * @instance + */ + ServiceDescriptorProto.prototype.method = $util.emptyArray; + + /** + * ServiceDescriptorProto options. + * @member {google.protobuf.IServiceOptions|null|undefined} options + * @memberof google.protobuf.ServiceDescriptorProto + * @instance + */ + ServiceDescriptorProto.prototype.options = null; + + /** + * Creates a new ServiceDescriptorProto instance using the specified properties. + * @function create + * @memberof google.protobuf.ServiceDescriptorProto + * @static + * @param {google.protobuf.IServiceDescriptorProto=} [properties] Properties to set + * @returns {google.protobuf.ServiceDescriptorProto} ServiceDescriptorProto instance + */ + ServiceDescriptorProto.create = function create(properties) { + return new ServiceDescriptorProto(properties); + }; + + /** + * Encodes the specified ServiceDescriptorProto message. Does not implicitly {@link google.protobuf.ServiceDescriptorProto.verify|verify} messages. + * @function encode + * @memberof google.protobuf.ServiceDescriptorProto + * @static + * @param {google.protobuf.IServiceDescriptorProto} message ServiceDescriptorProto message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + ServiceDescriptorProto.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.name != null && Object.hasOwnProperty.call(message, "name")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.name); + if (message.method != null && message.method.length) + for (var i = 0; i < message.method.length; ++i) + $root.google.protobuf.MethodDescriptorProto.encode(message.method[i], writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim(); + if (message.options != null && Object.hasOwnProperty.call(message, "options")) + $root.google.protobuf.ServiceOptions.encode(message.options, writer.uint32(/* id 3, wireType 2 =*/26).fork()).ldelim(); + return writer; + }; + + /** + * Encodes the specified ServiceDescriptorProto message, length delimited. Does not implicitly {@link google.protobuf.ServiceDescriptorProto.verify|verify} messages. + * @function encodeDelimited + * @memberof google.protobuf.ServiceDescriptorProto + * @static + * @param {google.protobuf.IServiceDescriptorProto} message ServiceDescriptorProto message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + ServiceDescriptorProto.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a ServiceDescriptorProto message from the specified reader or buffer. + * @function decode + * @memberof google.protobuf.ServiceDescriptorProto + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.protobuf.ServiceDescriptorProto} ServiceDescriptorProto + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + ServiceDescriptorProto.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.protobuf.ServiceDescriptorProto(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.name = reader.string(); + break; + case 2: + if (!(message.method && message.method.length)) + message.method = []; + message.method.push($root.google.protobuf.MethodDescriptorProto.decode(reader, reader.uint32())); + break; + case 3: + message.options = $root.google.protobuf.ServiceOptions.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a ServiceDescriptorProto message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.protobuf.ServiceDescriptorProto + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.protobuf.ServiceDescriptorProto} ServiceDescriptorProto + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + ServiceDescriptorProto.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a ServiceDescriptorProto message. + * @function verify + * @memberof google.protobuf.ServiceDescriptorProto + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + ServiceDescriptorProto.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.name != null && message.hasOwnProperty("name")) + if (!$util.isString(message.name)) + return "name: string expected"; + if (message.method != null && message.hasOwnProperty("method")) { + if (!Array.isArray(message.method)) + return "method: array expected"; + for (var i = 0; i < message.method.length; ++i) { + var error = $root.google.protobuf.MethodDescriptorProto.verify(message.method[i]); + if (error) + return "method." + error; + } + } + if (message.options != null && message.hasOwnProperty("options")) { + var error = $root.google.protobuf.ServiceOptions.verify(message.options); + if (error) + return "options." + error; + } + return null; + }; + + /** + * Creates a ServiceDescriptorProto message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.protobuf.ServiceDescriptorProto + * @static + * @param {Object.} object Plain object + * @returns {google.protobuf.ServiceDescriptorProto} ServiceDescriptorProto + */ + ServiceDescriptorProto.fromObject = function fromObject(object) { + if (object instanceof $root.google.protobuf.ServiceDescriptorProto) + return object; + var message = new $root.google.protobuf.ServiceDescriptorProto(); + if (object.name != null) + message.name = String(object.name); + if (object.method) { + if (!Array.isArray(object.method)) + throw TypeError(".google.protobuf.ServiceDescriptorProto.method: array expected"); + message.method = []; + for (var i = 0; i < object.method.length; ++i) { + if (typeof object.method[i] !== "object") + throw TypeError(".google.protobuf.ServiceDescriptorProto.method: object expected"); + message.method[i] = $root.google.protobuf.MethodDescriptorProto.fromObject(object.method[i]); + } + } + if (object.options != null) { + if (typeof object.options !== "object") + throw TypeError(".google.protobuf.ServiceDescriptorProto.options: object expected"); + message.options = $root.google.protobuf.ServiceOptions.fromObject(object.options); + } + return message; + }; + + /** + * Creates a plain object from a ServiceDescriptorProto message. Also converts values to other types if specified. + * @function toObject + * @memberof google.protobuf.ServiceDescriptorProto + * @static + * @param {google.protobuf.ServiceDescriptorProto} message ServiceDescriptorProto + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + ServiceDescriptorProto.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.arrays || options.defaults) + object.method = []; + if (options.defaults) { + object.name = ""; + object.options = null; + } + if (message.name != null && message.hasOwnProperty("name")) + object.name = message.name; + if (message.method && message.method.length) { + object.method = []; + for (var j = 0; j < message.method.length; ++j) + object.method[j] = $root.google.protobuf.MethodDescriptorProto.toObject(message.method[j], options); + } + if (message.options != null && message.hasOwnProperty("options")) + object.options = $root.google.protobuf.ServiceOptions.toObject(message.options, options); + return object; + }; + + /** + * Converts this ServiceDescriptorProto to JSON. + * @function toJSON + * @memberof google.protobuf.ServiceDescriptorProto + * @instance + * @returns {Object.} JSON object + */ + ServiceDescriptorProto.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return ServiceDescriptorProto; + })(); + + protobuf.MethodDescriptorProto = (function() { + + /** + * Properties of a MethodDescriptorProto. + * @memberof google.protobuf + * @interface IMethodDescriptorProto + * @property {string|null} [name] MethodDescriptorProto name + * @property {string|null} [inputType] MethodDescriptorProto inputType + * @property {string|null} [outputType] MethodDescriptorProto outputType + * @property {google.protobuf.IMethodOptions|null} [options] MethodDescriptorProto options + * @property {boolean|null} [clientStreaming] MethodDescriptorProto clientStreaming + * @property {boolean|null} [serverStreaming] MethodDescriptorProto serverStreaming + */ + + /** + * Constructs a new MethodDescriptorProto. + * @memberof google.protobuf + * @classdesc Represents a MethodDescriptorProto. + * @implements IMethodDescriptorProto + * @constructor + * @param {google.protobuf.IMethodDescriptorProto=} [properties] Properties to set + */ + function MethodDescriptorProto(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]]; + } + + /** + * MethodDescriptorProto name. + * @member {string} name + * @memberof google.protobuf.MethodDescriptorProto + * @instance + */ + MethodDescriptorProto.prototype.name = ""; + + /** + * MethodDescriptorProto inputType. + * @member {string} inputType + * @memberof google.protobuf.MethodDescriptorProto + * @instance + */ + MethodDescriptorProto.prototype.inputType = ""; + + /** + * MethodDescriptorProto outputType. + * @member {string} outputType + * @memberof google.protobuf.MethodDescriptorProto + * @instance + */ + MethodDescriptorProto.prototype.outputType = ""; + + /** + * MethodDescriptorProto options. + * @member {google.protobuf.IMethodOptions|null|undefined} options + * @memberof google.protobuf.MethodDescriptorProto + * @instance + */ + MethodDescriptorProto.prototype.options = null; + + /** + * MethodDescriptorProto clientStreaming. + * @member {boolean} clientStreaming + * @memberof google.protobuf.MethodDescriptorProto + * @instance + */ + MethodDescriptorProto.prototype.clientStreaming = false; + + /** + * MethodDescriptorProto serverStreaming. + * @member {boolean} serverStreaming + * @memberof google.protobuf.MethodDescriptorProto + * @instance + */ + MethodDescriptorProto.prototype.serverStreaming = false; + + /** + * Creates a new MethodDescriptorProto instance using the specified properties. + * @function create + * @memberof google.protobuf.MethodDescriptorProto + * @static + * @param {google.protobuf.IMethodDescriptorProto=} [properties] Properties to set + * @returns {google.protobuf.MethodDescriptorProto} MethodDescriptorProto instance + */ + MethodDescriptorProto.create = function create(properties) { + return new MethodDescriptorProto(properties); + }; + + /** + * Encodes the specified MethodDescriptorProto message. Does not implicitly {@link google.protobuf.MethodDescriptorProto.verify|verify} messages. + * @function encode + * @memberof google.protobuf.MethodDescriptorProto + * @static + * @param {google.protobuf.IMethodDescriptorProto} message MethodDescriptorProto message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + MethodDescriptorProto.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.name != null && Object.hasOwnProperty.call(message, "name")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.name); + if (message.inputType != null && Object.hasOwnProperty.call(message, "inputType")) + writer.uint32(/* id 2, wireType 2 =*/18).string(message.inputType); + if (message.outputType != null && Object.hasOwnProperty.call(message, "outputType")) + writer.uint32(/* id 3, wireType 2 =*/26).string(message.outputType); + if (message.options != null && Object.hasOwnProperty.call(message, "options")) + $root.google.protobuf.MethodOptions.encode(message.options, writer.uint32(/* id 4, wireType 2 =*/34).fork()).ldelim(); + if (message.clientStreaming != null && Object.hasOwnProperty.call(message, "clientStreaming")) + writer.uint32(/* id 5, wireType 0 =*/40).bool(message.clientStreaming); + if (message.serverStreaming != null && Object.hasOwnProperty.call(message, "serverStreaming")) + writer.uint32(/* id 6, wireType 0 =*/48).bool(message.serverStreaming); + return writer; + }; + + /** + * Encodes the specified MethodDescriptorProto message, length delimited. Does not implicitly {@link google.protobuf.MethodDescriptorProto.verify|verify} messages. + * @function encodeDelimited + * @memberof google.protobuf.MethodDescriptorProto + * @static + * @param {google.protobuf.IMethodDescriptorProto} message MethodDescriptorProto message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + MethodDescriptorProto.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a MethodDescriptorProto message from the specified reader or buffer. + * @function decode + * @memberof google.protobuf.MethodDescriptorProto + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.protobuf.MethodDescriptorProto} MethodDescriptorProto + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + MethodDescriptorProto.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.protobuf.MethodDescriptorProto(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.name = reader.string(); + break; + case 2: + message.inputType = reader.string(); + break; + case 3: + message.outputType = reader.string(); + break; + case 4: + message.options = $root.google.protobuf.MethodOptions.decode(reader, reader.uint32()); + break; + case 5: + message.clientStreaming = reader.bool(); + break; + case 6: + message.serverStreaming = reader.bool(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a MethodDescriptorProto message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.protobuf.MethodDescriptorProto + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.protobuf.MethodDescriptorProto} MethodDescriptorProto + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + MethodDescriptorProto.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a MethodDescriptorProto message. + * @function verify + * @memberof google.protobuf.MethodDescriptorProto + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + MethodDescriptorProto.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.name != null && message.hasOwnProperty("name")) + if (!$util.isString(message.name)) + return "name: string expected"; + if (message.inputType != null && message.hasOwnProperty("inputType")) + if (!$util.isString(message.inputType)) + return "inputType: string expected"; + if (message.outputType != null && message.hasOwnProperty("outputType")) + if (!$util.isString(message.outputType)) + return "outputType: string expected"; + if (message.options != null && message.hasOwnProperty("options")) { + var error = $root.google.protobuf.MethodOptions.verify(message.options); + if (error) + return "options." + error; + } + if (message.clientStreaming != null && message.hasOwnProperty("clientStreaming")) + if (typeof message.clientStreaming !== "boolean") + return "clientStreaming: boolean expected"; + if (message.serverStreaming != null && message.hasOwnProperty("serverStreaming")) + if (typeof message.serverStreaming !== "boolean") + return "serverStreaming: boolean expected"; + return null; + }; + + /** + * Creates a MethodDescriptorProto message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.protobuf.MethodDescriptorProto + * @static + * @param {Object.} object Plain object + * @returns {google.protobuf.MethodDescriptorProto} MethodDescriptorProto + */ + MethodDescriptorProto.fromObject = function fromObject(object) { + if (object instanceof $root.google.protobuf.MethodDescriptorProto) + return object; + var message = new $root.google.protobuf.MethodDescriptorProto(); + if (object.name != null) + message.name = String(object.name); + if (object.inputType != null) + message.inputType = String(object.inputType); + if (object.outputType != null) + message.outputType = String(object.outputType); + if (object.options != null) { + if (typeof object.options !== "object") + throw TypeError(".google.protobuf.MethodDescriptorProto.options: object expected"); + message.options = $root.google.protobuf.MethodOptions.fromObject(object.options); + } + if (object.clientStreaming != null) + message.clientStreaming = Boolean(object.clientStreaming); + if (object.serverStreaming != null) + message.serverStreaming = Boolean(object.serverStreaming); + return message; + }; + + /** + * Creates a plain object from a MethodDescriptorProto message. Also converts values to other types if specified. + * @function toObject + * @memberof google.protobuf.MethodDescriptorProto + * @static + * @param {google.protobuf.MethodDescriptorProto} message MethodDescriptorProto + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + MethodDescriptorProto.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.name = ""; + object.inputType = ""; + object.outputType = ""; + object.options = null; + object.clientStreaming = false; + object.serverStreaming = false; + } + if (message.name != null && message.hasOwnProperty("name")) + object.name = message.name; + if (message.inputType != null && message.hasOwnProperty("inputType")) + object.inputType = message.inputType; + if (message.outputType != null && message.hasOwnProperty("outputType")) + object.outputType = message.outputType; + if (message.options != null && message.hasOwnProperty("options")) + object.options = $root.google.protobuf.MethodOptions.toObject(message.options, options); + if (message.clientStreaming != null && message.hasOwnProperty("clientStreaming")) + object.clientStreaming = message.clientStreaming; + if (message.serverStreaming != null && message.hasOwnProperty("serverStreaming")) + object.serverStreaming = message.serverStreaming; + return object; + }; + + /** + * Converts this MethodDescriptorProto to JSON. + * @function toJSON + * @memberof google.protobuf.MethodDescriptorProto + * @instance + * @returns {Object.} JSON object + */ + MethodDescriptorProto.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return MethodDescriptorProto; + })(); + + protobuf.FileOptions = (function() { + + /** + * Properties of a FileOptions. + * @memberof google.protobuf + * @interface IFileOptions + * @property {string|null} [javaPackage] FileOptions javaPackage + * @property {string|null} [javaOuterClassname] FileOptions javaOuterClassname + * @property {boolean|null} [javaMultipleFiles] FileOptions javaMultipleFiles + * @property {boolean|null} [javaGenerateEqualsAndHash] FileOptions javaGenerateEqualsAndHash + * @property {boolean|null} [javaStringCheckUtf8] FileOptions javaStringCheckUtf8 + * @property {google.protobuf.FileOptions.OptimizeMode|null} [optimizeFor] FileOptions optimizeFor + * @property {string|null} [goPackage] FileOptions goPackage + * @property {boolean|null} [ccGenericServices] FileOptions ccGenericServices + * @property {boolean|null} [javaGenericServices] FileOptions javaGenericServices + * @property {boolean|null} [pyGenericServices] FileOptions pyGenericServices + * @property {boolean|null} [phpGenericServices] FileOptions phpGenericServices + * @property {boolean|null} [deprecated] FileOptions deprecated + * @property {boolean|null} [ccEnableArenas] FileOptions ccEnableArenas + * @property {string|null} [objcClassPrefix] FileOptions objcClassPrefix + * @property {string|null} [csharpNamespace] FileOptions csharpNamespace + * @property {string|null} [swiftPrefix] FileOptions swiftPrefix + * @property {string|null} [phpClassPrefix] FileOptions phpClassPrefix + * @property {string|null} [phpNamespace] FileOptions phpNamespace + * @property {string|null} [phpMetadataNamespace] FileOptions phpMetadataNamespace + * @property {string|null} [rubyPackage] FileOptions rubyPackage + * @property {Array.|null} [uninterpretedOption] FileOptions uninterpretedOption + * @property {Array.|null} [".google.api.resourceDefinition"] FileOptions .google.api.resourceDefinition + */ + + /** + * Constructs a new FileOptions. + * @memberof google.protobuf + * @classdesc Represents a FileOptions. + * @implements IFileOptions + * @constructor + * @param {google.protobuf.IFileOptions=} [properties] Properties to set + */ + function FileOptions(properties) { + this.uninterpretedOption = []; + this[".google.api.resourceDefinition"] = []; + 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]]; + } + + /** + * FileOptions javaPackage. + * @member {string} javaPackage + * @memberof google.protobuf.FileOptions + * @instance + */ + FileOptions.prototype.javaPackage = ""; + + /** + * FileOptions javaOuterClassname. + * @member {string} javaOuterClassname + * @memberof google.protobuf.FileOptions + * @instance + */ + FileOptions.prototype.javaOuterClassname = ""; + + /** + * FileOptions javaMultipleFiles. + * @member {boolean} javaMultipleFiles + * @memberof google.protobuf.FileOptions + * @instance + */ + FileOptions.prototype.javaMultipleFiles = false; + + /** + * FileOptions javaGenerateEqualsAndHash. + * @member {boolean} javaGenerateEqualsAndHash + * @memberof google.protobuf.FileOptions + * @instance + */ + FileOptions.prototype.javaGenerateEqualsAndHash = false; + + /** + * FileOptions javaStringCheckUtf8. + * @member {boolean} javaStringCheckUtf8 + * @memberof google.protobuf.FileOptions + * @instance + */ + FileOptions.prototype.javaStringCheckUtf8 = false; + + /** + * FileOptions optimizeFor. + * @member {google.protobuf.FileOptions.OptimizeMode} optimizeFor + * @memberof google.protobuf.FileOptions + * @instance + */ + FileOptions.prototype.optimizeFor = 1; + + /** + * FileOptions goPackage. + * @member {string} goPackage + * @memberof google.protobuf.FileOptions + * @instance + */ + FileOptions.prototype.goPackage = ""; + + /** + * FileOptions ccGenericServices. + * @member {boolean} ccGenericServices + * @memberof google.protobuf.FileOptions + * @instance + */ + FileOptions.prototype.ccGenericServices = false; + + /** + * FileOptions javaGenericServices. + * @member {boolean} javaGenericServices + * @memberof google.protobuf.FileOptions + * @instance + */ + FileOptions.prototype.javaGenericServices = false; + + /** + * FileOptions pyGenericServices. + * @member {boolean} pyGenericServices + * @memberof google.protobuf.FileOptions + * @instance + */ + FileOptions.prototype.pyGenericServices = false; + + /** + * FileOptions phpGenericServices. + * @member {boolean} phpGenericServices + * @memberof google.protobuf.FileOptions + * @instance + */ + FileOptions.prototype.phpGenericServices = false; + + /** + * FileOptions deprecated. + * @member {boolean} deprecated + * @memberof google.protobuf.FileOptions + * @instance + */ + FileOptions.prototype.deprecated = false; + + /** + * FileOptions ccEnableArenas. + * @member {boolean} ccEnableArenas + * @memberof google.protobuf.FileOptions + * @instance + */ + FileOptions.prototype.ccEnableArenas = true; + + /** + * FileOptions objcClassPrefix. + * @member {string} objcClassPrefix + * @memberof google.protobuf.FileOptions + * @instance + */ + FileOptions.prototype.objcClassPrefix = ""; + + /** + * FileOptions csharpNamespace. + * @member {string} csharpNamespace + * @memberof google.protobuf.FileOptions + * @instance + */ + FileOptions.prototype.csharpNamespace = ""; + + /** + * FileOptions swiftPrefix. + * @member {string} swiftPrefix + * @memberof google.protobuf.FileOptions + * @instance + */ + FileOptions.prototype.swiftPrefix = ""; + + /** + * FileOptions phpClassPrefix. + * @member {string} phpClassPrefix + * @memberof google.protobuf.FileOptions + * @instance + */ + FileOptions.prototype.phpClassPrefix = ""; + + /** + * FileOptions phpNamespace. + * @member {string} phpNamespace + * @memberof google.protobuf.FileOptions + * @instance + */ + FileOptions.prototype.phpNamespace = ""; + + /** + * FileOptions phpMetadataNamespace. + * @member {string} phpMetadataNamespace + * @memberof google.protobuf.FileOptions + * @instance + */ + FileOptions.prototype.phpMetadataNamespace = ""; + + /** + * FileOptions rubyPackage. + * @member {string} rubyPackage + * @memberof google.protobuf.FileOptions + * @instance + */ + FileOptions.prototype.rubyPackage = ""; + + /** + * FileOptions uninterpretedOption. + * @member {Array.} uninterpretedOption + * @memberof google.protobuf.FileOptions + * @instance + */ + FileOptions.prototype.uninterpretedOption = $util.emptyArray; + + /** + * FileOptions .google.api.resourceDefinition. + * @member {Array.} .google.api.resourceDefinition + * @memberof google.protobuf.FileOptions + * @instance + */ + FileOptions.prototype[".google.api.resourceDefinition"] = $util.emptyArray; + + /** + * Creates a new FileOptions instance using the specified properties. + * @function create + * @memberof google.protobuf.FileOptions + * @static + * @param {google.protobuf.IFileOptions=} [properties] Properties to set + * @returns {google.protobuf.FileOptions} FileOptions instance + */ + FileOptions.create = function create(properties) { + return new FileOptions(properties); + }; + + /** + * Encodes the specified FileOptions message. Does not implicitly {@link google.protobuf.FileOptions.verify|verify} messages. + * @function encode + * @memberof google.protobuf.FileOptions + * @static + * @param {google.protobuf.IFileOptions} message FileOptions message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + FileOptions.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.javaPackage != null && Object.hasOwnProperty.call(message, "javaPackage")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.javaPackage); + if (message.javaOuterClassname != null && Object.hasOwnProperty.call(message, "javaOuterClassname")) + writer.uint32(/* id 8, wireType 2 =*/66).string(message.javaOuterClassname); + if (message.optimizeFor != null && Object.hasOwnProperty.call(message, "optimizeFor")) + writer.uint32(/* id 9, wireType 0 =*/72).int32(message.optimizeFor); + if (message.javaMultipleFiles != null && Object.hasOwnProperty.call(message, "javaMultipleFiles")) + writer.uint32(/* id 10, wireType 0 =*/80).bool(message.javaMultipleFiles); + if (message.goPackage != null && Object.hasOwnProperty.call(message, "goPackage")) + writer.uint32(/* id 11, wireType 2 =*/90).string(message.goPackage); + if (message.ccGenericServices != null && Object.hasOwnProperty.call(message, "ccGenericServices")) + writer.uint32(/* id 16, wireType 0 =*/128).bool(message.ccGenericServices); + if (message.javaGenericServices != null && Object.hasOwnProperty.call(message, "javaGenericServices")) + writer.uint32(/* id 17, wireType 0 =*/136).bool(message.javaGenericServices); + if (message.pyGenericServices != null && Object.hasOwnProperty.call(message, "pyGenericServices")) + writer.uint32(/* id 18, wireType 0 =*/144).bool(message.pyGenericServices); + if (message.javaGenerateEqualsAndHash != null && Object.hasOwnProperty.call(message, "javaGenerateEqualsAndHash")) + writer.uint32(/* id 20, wireType 0 =*/160).bool(message.javaGenerateEqualsAndHash); + if (message.deprecated != null && Object.hasOwnProperty.call(message, "deprecated")) + writer.uint32(/* id 23, wireType 0 =*/184).bool(message.deprecated); + if (message.javaStringCheckUtf8 != null && Object.hasOwnProperty.call(message, "javaStringCheckUtf8")) + writer.uint32(/* id 27, wireType 0 =*/216).bool(message.javaStringCheckUtf8); + if (message.ccEnableArenas != null && Object.hasOwnProperty.call(message, "ccEnableArenas")) + writer.uint32(/* id 31, wireType 0 =*/248).bool(message.ccEnableArenas); + if (message.objcClassPrefix != null && Object.hasOwnProperty.call(message, "objcClassPrefix")) + writer.uint32(/* id 36, wireType 2 =*/290).string(message.objcClassPrefix); + if (message.csharpNamespace != null && Object.hasOwnProperty.call(message, "csharpNamespace")) + writer.uint32(/* id 37, wireType 2 =*/298).string(message.csharpNamespace); + if (message.swiftPrefix != null && Object.hasOwnProperty.call(message, "swiftPrefix")) + writer.uint32(/* id 39, wireType 2 =*/314).string(message.swiftPrefix); + if (message.phpClassPrefix != null && Object.hasOwnProperty.call(message, "phpClassPrefix")) + writer.uint32(/* id 40, wireType 2 =*/322).string(message.phpClassPrefix); + if (message.phpNamespace != null && Object.hasOwnProperty.call(message, "phpNamespace")) + writer.uint32(/* id 41, wireType 2 =*/330).string(message.phpNamespace); + if (message.phpGenericServices != null && Object.hasOwnProperty.call(message, "phpGenericServices")) + writer.uint32(/* id 42, wireType 0 =*/336).bool(message.phpGenericServices); + if (message.phpMetadataNamespace != null && Object.hasOwnProperty.call(message, "phpMetadataNamespace")) + writer.uint32(/* id 44, wireType 2 =*/354).string(message.phpMetadataNamespace); + if (message.rubyPackage != null && Object.hasOwnProperty.call(message, "rubyPackage")) + writer.uint32(/* id 45, wireType 2 =*/362).string(message.rubyPackage); + if (message.uninterpretedOption != null && message.uninterpretedOption.length) + for (var i = 0; i < message.uninterpretedOption.length; ++i) + $root.google.protobuf.UninterpretedOption.encode(message.uninterpretedOption[i], writer.uint32(/* id 999, wireType 2 =*/7994).fork()).ldelim(); + if (message[".google.api.resourceDefinition"] != null && message[".google.api.resourceDefinition"].length) + for (var i = 0; i < message[".google.api.resourceDefinition"].length; ++i) + $root.google.api.ResourceDescriptor.encode(message[".google.api.resourceDefinition"][i], writer.uint32(/* id 1053, wireType 2 =*/8426).fork()).ldelim(); + return writer; + }; + + /** + * Encodes the specified FileOptions message, length delimited. Does not implicitly {@link google.protobuf.FileOptions.verify|verify} messages. + * @function encodeDelimited + * @memberof google.protobuf.FileOptions + * @static + * @param {google.protobuf.IFileOptions} message FileOptions message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + FileOptions.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a FileOptions message from the specified reader or buffer. + * @function decode + * @memberof google.protobuf.FileOptions + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.protobuf.FileOptions} FileOptions + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + FileOptions.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.protobuf.FileOptions(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.javaPackage = reader.string(); + break; + case 8: + message.javaOuterClassname = reader.string(); + break; + case 10: + message.javaMultipleFiles = reader.bool(); + break; + case 20: + message.javaGenerateEqualsAndHash = reader.bool(); + break; + case 27: + message.javaStringCheckUtf8 = reader.bool(); + break; + case 9: + message.optimizeFor = reader.int32(); + break; + case 11: + message.goPackage = reader.string(); + break; + case 16: + message.ccGenericServices = reader.bool(); + break; + case 17: + message.javaGenericServices = reader.bool(); + break; + case 18: + message.pyGenericServices = reader.bool(); + break; + case 42: + message.phpGenericServices = reader.bool(); + break; + case 23: + message.deprecated = reader.bool(); + break; + case 31: + message.ccEnableArenas = reader.bool(); + break; + case 36: + message.objcClassPrefix = reader.string(); + break; + case 37: + message.csharpNamespace = reader.string(); + break; + case 39: + message.swiftPrefix = reader.string(); + break; + case 40: + message.phpClassPrefix = reader.string(); + break; + case 41: + message.phpNamespace = reader.string(); + break; + case 44: + message.phpMetadataNamespace = reader.string(); + break; + case 45: + message.rubyPackage = reader.string(); + break; + case 999: + if (!(message.uninterpretedOption && message.uninterpretedOption.length)) + message.uninterpretedOption = []; + message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32())); + break; + case 1053: + if (!(message[".google.api.resourceDefinition"] && message[".google.api.resourceDefinition"].length)) + message[".google.api.resourceDefinition"] = []; + message[".google.api.resourceDefinition"].push($root.google.api.ResourceDescriptor.decode(reader, reader.uint32())); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a FileOptions message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.protobuf.FileOptions + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.protobuf.FileOptions} FileOptions + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + FileOptions.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a FileOptions message. + * @function verify + * @memberof google.protobuf.FileOptions + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + FileOptions.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.javaPackage != null && message.hasOwnProperty("javaPackage")) + if (!$util.isString(message.javaPackage)) + return "javaPackage: string expected"; + if (message.javaOuterClassname != null && message.hasOwnProperty("javaOuterClassname")) + if (!$util.isString(message.javaOuterClassname)) + return "javaOuterClassname: string expected"; + if (message.javaMultipleFiles != null && message.hasOwnProperty("javaMultipleFiles")) + if (typeof message.javaMultipleFiles !== "boolean") + return "javaMultipleFiles: boolean expected"; + if (message.javaGenerateEqualsAndHash != null && message.hasOwnProperty("javaGenerateEqualsAndHash")) + if (typeof message.javaGenerateEqualsAndHash !== "boolean") + return "javaGenerateEqualsAndHash: boolean expected"; + if (message.javaStringCheckUtf8 != null && message.hasOwnProperty("javaStringCheckUtf8")) + if (typeof message.javaStringCheckUtf8 !== "boolean") + return "javaStringCheckUtf8: boolean expected"; + if (message.optimizeFor != null && message.hasOwnProperty("optimizeFor")) + switch (message.optimizeFor) { + default: + return "optimizeFor: enum value expected"; + case 1: + case 2: + case 3: + break; + } + if (message.goPackage != null && message.hasOwnProperty("goPackage")) + if (!$util.isString(message.goPackage)) + return "goPackage: string expected"; + if (message.ccGenericServices != null && message.hasOwnProperty("ccGenericServices")) + if (typeof message.ccGenericServices !== "boolean") + return "ccGenericServices: boolean expected"; + if (message.javaGenericServices != null && message.hasOwnProperty("javaGenericServices")) + if (typeof message.javaGenericServices !== "boolean") + return "javaGenericServices: boolean expected"; + if (message.pyGenericServices != null && message.hasOwnProperty("pyGenericServices")) + if (typeof message.pyGenericServices !== "boolean") + return "pyGenericServices: boolean expected"; + if (message.phpGenericServices != null && message.hasOwnProperty("phpGenericServices")) + if (typeof message.phpGenericServices !== "boolean") + return "phpGenericServices: boolean expected"; + if (message.deprecated != null && message.hasOwnProperty("deprecated")) + if (typeof message.deprecated !== "boolean") + return "deprecated: boolean expected"; + if (message.ccEnableArenas != null && message.hasOwnProperty("ccEnableArenas")) + if (typeof message.ccEnableArenas !== "boolean") + return "ccEnableArenas: boolean expected"; + if (message.objcClassPrefix != null && message.hasOwnProperty("objcClassPrefix")) + if (!$util.isString(message.objcClassPrefix)) + return "objcClassPrefix: string expected"; + if (message.csharpNamespace != null && message.hasOwnProperty("csharpNamespace")) + if (!$util.isString(message.csharpNamespace)) + return "csharpNamespace: string expected"; + if (message.swiftPrefix != null && message.hasOwnProperty("swiftPrefix")) + if (!$util.isString(message.swiftPrefix)) + return "swiftPrefix: string expected"; + if (message.phpClassPrefix != null && message.hasOwnProperty("phpClassPrefix")) + if (!$util.isString(message.phpClassPrefix)) + return "phpClassPrefix: string expected"; + if (message.phpNamespace != null && message.hasOwnProperty("phpNamespace")) + if (!$util.isString(message.phpNamespace)) + return "phpNamespace: string expected"; + if (message.phpMetadataNamespace != null && message.hasOwnProperty("phpMetadataNamespace")) + if (!$util.isString(message.phpMetadataNamespace)) + return "phpMetadataNamespace: string expected"; + if (message.rubyPackage != null && message.hasOwnProperty("rubyPackage")) + if (!$util.isString(message.rubyPackage)) + return "rubyPackage: string expected"; + if (message.uninterpretedOption != null && message.hasOwnProperty("uninterpretedOption")) { + if (!Array.isArray(message.uninterpretedOption)) + return "uninterpretedOption: array expected"; + for (var i = 0; i < message.uninterpretedOption.length; ++i) { + var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i]); + if (error) + return "uninterpretedOption." + error; + } + } + if (message[".google.api.resourceDefinition"] != null && message.hasOwnProperty(".google.api.resourceDefinition")) { + if (!Array.isArray(message[".google.api.resourceDefinition"])) + return ".google.api.resourceDefinition: array expected"; + for (var i = 0; i < message[".google.api.resourceDefinition"].length; ++i) { + var error = $root.google.api.ResourceDescriptor.verify(message[".google.api.resourceDefinition"][i]); + if (error) + return ".google.api.resourceDefinition." + error; + } + } + return null; + }; + + /** + * Creates a FileOptions message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.protobuf.FileOptions + * @static + * @param {Object.} object Plain object + * @returns {google.protobuf.FileOptions} FileOptions + */ + FileOptions.fromObject = function fromObject(object) { + if (object instanceof $root.google.protobuf.FileOptions) + return object; + var message = new $root.google.protobuf.FileOptions(); + if (object.javaPackage != null) + message.javaPackage = String(object.javaPackage); + if (object.javaOuterClassname != null) + message.javaOuterClassname = String(object.javaOuterClassname); + if (object.javaMultipleFiles != null) + message.javaMultipleFiles = Boolean(object.javaMultipleFiles); + if (object.javaGenerateEqualsAndHash != null) + message.javaGenerateEqualsAndHash = Boolean(object.javaGenerateEqualsAndHash); + if (object.javaStringCheckUtf8 != null) + message.javaStringCheckUtf8 = Boolean(object.javaStringCheckUtf8); + switch (object.optimizeFor) { + case "SPEED": + case 1: + message.optimizeFor = 1; + break; + case "CODE_SIZE": + case 2: + message.optimizeFor = 2; + break; + case "LITE_RUNTIME": + case 3: + message.optimizeFor = 3; + break; + } + if (object.goPackage != null) + message.goPackage = String(object.goPackage); + if (object.ccGenericServices != null) + message.ccGenericServices = Boolean(object.ccGenericServices); + if (object.javaGenericServices != null) + message.javaGenericServices = Boolean(object.javaGenericServices); + if (object.pyGenericServices != null) + message.pyGenericServices = Boolean(object.pyGenericServices); + if (object.phpGenericServices != null) + message.phpGenericServices = Boolean(object.phpGenericServices); + if (object.deprecated != null) + message.deprecated = Boolean(object.deprecated); + if (object.ccEnableArenas != null) + message.ccEnableArenas = Boolean(object.ccEnableArenas); + if (object.objcClassPrefix != null) + message.objcClassPrefix = String(object.objcClassPrefix); + if (object.csharpNamespace != null) + message.csharpNamespace = String(object.csharpNamespace); + if (object.swiftPrefix != null) + message.swiftPrefix = String(object.swiftPrefix); + if (object.phpClassPrefix != null) + message.phpClassPrefix = String(object.phpClassPrefix); + if (object.phpNamespace != null) + message.phpNamespace = String(object.phpNamespace); + if (object.phpMetadataNamespace != null) + message.phpMetadataNamespace = String(object.phpMetadataNamespace); + if (object.rubyPackage != null) + message.rubyPackage = String(object.rubyPackage); + if (object.uninterpretedOption) { + if (!Array.isArray(object.uninterpretedOption)) + throw TypeError(".google.protobuf.FileOptions.uninterpretedOption: array expected"); + message.uninterpretedOption = []; + for (var i = 0; i < object.uninterpretedOption.length; ++i) { + if (typeof object.uninterpretedOption[i] !== "object") + throw TypeError(".google.protobuf.FileOptions.uninterpretedOption: object expected"); + message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i]); + } + } + if (object[".google.api.resourceDefinition"]) { + if (!Array.isArray(object[".google.api.resourceDefinition"])) + throw TypeError(".google.protobuf.FileOptions..google.api.resourceDefinition: array expected"); + message[".google.api.resourceDefinition"] = []; + for (var i = 0; i < object[".google.api.resourceDefinition"].length; ++i) { + if (typeof object[".google.api.resourceDefinition"][i] !== "object") + throw TypeError(".google.protobuf.FileOptions..google.api.resourceDefinition: object expected"); + message[".google.api.resourceDefinition"][i] = $root.google.api.ResourceDescriptor.fromObject(object[".google.api.resourceDefinition"][i]); + } + } + return message; + }; + + /** + * Creates a plain object from a FileOptions message. Also converts values to other types if specified. + * @function toObject + * @memberof google.protobuf.FileOptions + * @static + * @param {google.protobuf.FileOptions} message FileOptions + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + FileOptions.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.arrays || options.defaults) { + object.uninterpretedOption = []; + object[".google.api.resourceDefinition"] = []; + } + if (options.defaults) { + object.javaPackage = ""; + object.javaOuterClassname = ""; + object.optimizeFor = options.enums === String ? "SPEED" : 1; + object.javaMultipleFiles = false; + object.goPackage = ""; + object.ccGenericServices = false; + object.javaGenericServices = false; + object.pyGenericServices = false; + object.javaGenerateEqualsAndHash = false; + object.deprecated = false; + object.javaStringCheckUtf8 = false; + object.ccEnableArenas = true; + object.objcClassPrefix = ""; + object.csharpNamespace = ""; + object.swiftPrefix = ""; + object.phpClassPrefix = ""; + object.phpNamespace = ""; + object.phpGenericServices = false; + object.phpMetadataNamespace = ""; + object.rubyPackage = ""; + } + if (message.javaPackage != null && message.hasOwnProperty("javaPackage")) + object.javaPackage = message.javaPackage; + if (message.javaOuterClassname != null && message.hasOwnProperty("javaOuterClassname")) + object.javaOuterClassname = message.javaOuterClassname; + if (message.optimizeFor != null && message.hasOwnProperty("optimizeFor")) + object.optimizeFor = options.enums === String ? $root.google.protobuf.FileOptions.OptimizeMode[message.optimizeFor] : message.optimizeFor; + if (message.javaMultipleFiles != null && message.hasOwnProperty("javaMultipleFiles")) + object.javaMultipleFiles = message.javaMultipleFiles; + if (message.goPackage != null && message.hasOwnProperty("goPackage")) + object.goPackage = message.goPackage; + if (message.ccGenericServices != null && message.hasOwnProperty("ccGenericServices")) + object.ccGenericServices = message.ccGenericServices; + if (message.javaGenericServices != null && message.hasOwnProperty("javaGenericServices")) + object.javaGenericServices = message.javaGenericServices; + if (message.pyGenericServices != null && message.hasOwnProperty("pyGenericServices")) + object.pyGenericServices = message.pyGenericServices; + if (message.javaGenerateEqualsAndHash != null && message.hasOwnProperty("javaGenerateEqualsAndHash")) + object.javaGenerateEqualsAndHash = message.javaGenerateEqualsAndHash; + if (message.deprecated != null && message.hasOwnProperty("deprecated")) + object.deprecated = message.deprecated; + if (message.javaStringCheckUtf8 != null && message.hasOwnProperty("javaStringCheckUtf8")) + object.javaStringCheckUtf8 = message.javaStringCheckUtf8; + if (message.ccEnableArenas != null && message.hasOwnProperty("ccEnableArenas")) + object.ccEnableArenas = message.ccEnableArenas; + if (message.objcClassPrefix != null && message.hasOwnProperty("objcClassPrefix")) + object.objcClassPrefix = message.objcClassPrefix; + if (message.csharpNamespace != null && message.hasOwnProperty("csharpNamespace")) + object.csharpNamespace = message.csharpNamespace; + if (message.swiftPrefix != null && message.hasOwnProperty("swiftPrefix")) + object.swiftPrefix = message.swiftPrefix; + if (message.phpClassPrefix != null && message.hasOwnProperty("phpClassPrefix")) + object.phpClassPrefix = message.phpClassPrefix; + if (message.phpNamespace != null && message.hasOwnProperty("phpNamespace")) + object.phpNamespace = message.phpNamespace; + if (message.phpGenericServices != null && message.hasOwnProperty("phpGenericServices")) + object.phpGenericServices = message.phpGenericServices; + if (message.phpMetadataNamespace != null && message.hasOwnProperty("phpMetadataNamespace")) + object.phpMetadataNamespace = message.phpMetadataNamespace; + if (message.rubyPackage != null && message.hasOwnProperty("rubyPackage")) + object.rubyPackage = message.rubyPackage; + if (message.uninterpretedOption && message.uninterpretedOption.length) { + object.uninterpretedOption = []; + for (var j = 0; j < message.uninterpretedOption.length; ++j) + object.uninterpretedOption[j] = $root.google.protobuf.UninterpretedOption.toObject(message.uninterpretedOption[j], options); + } + if (message[".google.api.resourceDefinition"] && message[".google.api.resourceDefinition"].length) { + object[".google.api.resourceDefinition"] = []; + for (var j = 0; j < message[".google.api.resourceDefinition"].length; ++j) + object[".google.api.resourceDefinition"][j] = $root.google.api.ResourceDescriptor.toObject(message[".google.api.resourceDefinition"][j], options); + } + return object; + }; + + /** + * Converts this FileOptions to JSON. + * @function toJSON + * @memberof google.protobuf.FileOptions + * @instance + * @returns {Object.} JSON object + */ + FileOptions.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + /** + * OptimizeMode enum. + * @name google.protobuf.FileOptions.OptimizeMode + * @enum {number} + * @property {number} SPEED=1 SPEED value + * @property {number} CODE_SIZE=2 CODE_SIZE value + * @property {number} LITE_RUNTIME=3 LITE_RUNTIME value + */ + FileOptions.OptimizeMode = (function() { + var valuesById = {}, values = Object.create(valuesById); + values[valuesById[1] = "SPEED"] = 1; + values[valuesById[2] = "CODE_SIZE"] = 2; + values[valuesById[3] = "LITE_RUNTIME"] = 3; + return values; + })(); + + return FileOptions; + })(); + + protobuf.MessageOptions = (function() { + + /** + * Properties of a MessageOptions. + * @memberof google.protobuf + * @interface IMessageOptions + * @property {boolean|null} [messageSetWireFormat] MessageOptions messageSetWireFormat + * @property {boolean|null} [noStandardDescriptorAccessor] MessageOptions noStandardDescriptorAccessor + * @property {boolean|null} [deprecated] MessageOptions deprecated + * @property {boolean|null} [mapEntry] MessageOptions mapEntry + * @property {Array.|null} [uninterpretedOption] MessageOptions uninterpretedOption + * @property {google.api.IResourceDescriptor|null} [".google.api.resource"] MessageOptions .google.api.resource + */ + + /** + * Constructs a new MessageOptions. + * @memberof google.protobuf + * @classdesc Represents a MessageOptions. + * @implements IMessageOptions + * @constructor + * @param {google.protobuf.IMessageOptions=} [properties] Properties to set + */ + function MessageOptions(properties) { + this.uninterpretedOption = []; + 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]]; + } + + /** + * MessageOptions messageSetWireFormat. + * @member {boolean} messageSetWireFormat + * @memberof google.protobuf.MessageOptions + * @instance + */ + MessageOptions.prototype.messageSetWireFormat = false; + + /** + * MessageOptions noStandardDescriptorAccessor. + * @member {boolean} noStandardDescriptorAccessor + * @memberof google.protobuf.MessageOptions + * @instance + */ + MessageOptions.prototype.noStandardDescriptorAccessor = false; + + /** + * MessageOptions deprecated. + * @member {boolean} deprecated + * @memberof google.protobuf.MessageOptions + * @instance + */ + MessageOptions.prototype.deprecated = false; + + /** + * MessageOptions mapEntry. + * @member {boolean} mapEntry + * @memberof google.protobuf.MessageOptions + * @instance + */ + MessageOptions.prototype.mapEntry = false; + + /** + * MessageOptions uninterpretedOption. + * @member {Array.} uninterpretedOption + * @memberof google.protobuf.MessageOptions + * @instance + */ + MessageOptions.prototype.uninterpretedOption = $util.emptyArray; + + /** + * MessageOptions .google.api.resource. + * @member {google.api.IResourceDescriptor|null|undefined} .google.api.resource + * @memberof google.protobuf.MessageOptions + * @instance + */ + MessageOptions.prototype[".google.api.resource"] = null; + + /** + * Creates a new MessageOptions instance using the specified properties. + * @function create + * @memberof google.protobuf.MessageOptions + * @static + * @param {google.protobuf.IMessageOptions=} [properties] Properties to set + * @returns {google.protobuf.MessageOptions} MessageOptions instance + */ + MessageOptions.create = function create(properties) { + return new MessageOptions(properties); + }; + + /** + * Encodes the specified MessageOptions message. Does not implicitly {@link google.protobuf.MessageOptions.verify|verify} messages. + * @function encode + * @memberof google.protobuf.MessageOptions + * @static + * @param {google.protobuf.IMessageOptions} message MessageOptions message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + MessageOptions.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.messageSetWireFormat != null && Object.hasOwnProperty.call(message, "messageSetWireFormat")) + writer.uint32(/* id 1, wireType 0 =*/8).bool(message.messageSetWireFormat); + if (message.noStandardDescriptorAccessor != null && Object.hasOwnProperty.call(message, "noStandardDescriptorAccessor")) + writer.uint32(/* id 2, wireType 0 =*/16).bool(message.noStandardDescriptorAccessor); + if (message.deprecated != null && Object.hasOwnProperty.call(message, "deprecated")) + writer.uint32(/* id 3, wireType 0 =*/24).bool(message.deprecated); + if (message.mapEntry != null && Object.hasOwnProperty.call(message, "mapEntry")) + writer.uint32(/* id 7, wireType 0 =*/56).bool(message.mapEntry); + if (message.uninterpretedOption != null && message.uninterpretedOption.length) + for (var i = 0; i < message.uninterpretedOption.length; ++i) + $root.google.protobuf.UninterpretedOption.encode(message.uninterpretedOption[i], writer.uint32(/* id 999, wireType 2 =*/7994).fork()).ldelim(); + if (message[".google.api.resource"] != null && Object.hasOwnProperty.call(message, ".google.api.resource")) + $root.google.api.ResourceDescriptor.encode(message[".google.api.resource"], writer.uint32(/* id 1053, wireType 2 =*/8426).fork()).ldelim(); + return writer; + }; + + /** + * Encodes the specified MessageOptions message, length delimited. Does not implicitly {@link google.protobuf.MessageOptions.verify|verify} messages. + * @function encodeDelimited + * @memberof google.protobuf.MessageOptions + * @static + * @param {google.protobuf.IMessageOptions} message MessageOptions message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + MessageOptions.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a MessageOptions message from the specified reader or buffer. + * @function decode + * @memberof google.protobuf.MessageOptions + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.protobuf.MessageOptions} MessageOptions + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + MessageOptions.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.protobuf.MessageOptions(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.messageSetWireFormat = reader.bool(); + break; + case 2: + message.noStandardDescriptorAccessor = reader.bool(); + break; + case 3: + message.deprecated = reader.bool(); + break; + case 7: + message.mapEntry = reader.bool(); + break; + case 999: + if (!(message.uninterpretedOption && message.uninterpretedOption.length)) + message.uninterpretedOption = []; + message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32())); + break; + case 1053: + message[".google.api.resource"] = $root.google.api.ResourceDescriptor.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a MessageOptions message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.protobuf.MessageOptions + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.protobuf.MessageOptions} MessageOptions + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + MessageOptions.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a MessageOptions message. + * @function verify + * @memberof google.protobuf.MessageOptions + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + MessageOptions.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.messageSetWireFormat != null && message.hasOwnProperty("messageSetWireFormat")) + if (typeof message.messageSetWireFormat !== "boolean") + return "messageSetWireFormat: boolean expected"; + if (message.noStandardDescriptorAccessor != null && message.hasOwnProperty("noStandardDescriptorAccessor")) + if (typeof message.noStandardDescriptorAccessor !== "boolean") + return "noStandardDescriptorAccessor: boolean expected"; + if (message.deprecated != null && message.hasOwnProperty("deprecated")) + if (typeof message.deprecated !== "boolean") + return "deprecated: boolean expected"; + if (message.mapEntry != null && message.hasOwnProperty("mapEntry")) + if (typeof message.mapEntry !== "boolean") + return "mapEntry: boolean expected"; + if (message.uninterpretedOption != null && message.hasOwnProperty("uninterpretedOption")) { + if (!Array.isArray(message.uninterpretedOption)) + return "uninterpretedOption: array expected"; + for (var i = 0; i < message.uninterpretedOption.length; ++i) { + var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i]); + if (error) + return "uninterpretedOption." + error; + } + } + if (message[".google.api.resource"] != null && message.hasOwnProperty(".google.api.resource")) { + var error = $root.google.api.ResourceDescriptor.verify(message[".google.api.resource"]); + if (error) + return ".google.api.resource." + error; + } + return null; + }; + + /** + * Creates a MessageOptions message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.protobuf.MessageOptions + * @static + * @param {Object.} object Plain object + * @returns {google.protobuf.MessageOptions} MessageOptions + */ + MessageOptions.fromObject = function fromObject(object) { + if (object instanceof $root.google.protobuf.MessageOptions) + return object; + var message = new $root.google.protobuf.MessageOptions(); + if (object.messageSetWireFormat != null) + message.messageSetWireFormat = Boolean(object.messageSetWireFormat); + if (object.noStandardDescriptorAccessor != null) + message.noStandardDescriptorAccessor = Boolean(object.noStandardDescriptorAccessor); + if (object.deprecated != null) + message.deprecated = Boolean(object.deprecated); + if (object.mapEntry != null) + message.mapEntry = Boolean(object.mapEntry); + if (object.uninterpretedOption) { + if (!Array.isArray(object.uninterpretedOption)) + throw TypeError(".google.protobuf.MessageOptions.uninterpretedOption: array expected"); + message.uninterpretedOption = []; + for (var i = 0; i < object.uninterpretedOption.length; ++i) { + if (typeof object.uninterpretedOption[i] !== "object") + throw TypeError(".google.protobuf.MessageOptions.uninterpretedOption: object expected"); + message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i]); + } + } + if (object[".google.api.resource"] != null) { + if (typeof object[".google.api.resource"] !== "object") + throw TypeError(".google.protobuf.MessageOptions..google.api.resource: object expected"); + message[".google.api.resource"] = $root.google.api.ResourceDescriptor.fromObject(object[".google.api.resource"]); + } + return message; + }; + + /** + * Creates a plain object from a MessageOptions message. Also converts values to other types if specified. + * @function toObject + * @memberof google.protobuf.MessageOptions + * @static + * @param {google.protobuf.MessageOptions} message MessageOptions + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + MessageOptions.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.arrays || options.defaults) + object.uninterpretedOption = []; + if (options.defaults) { + object.messageSetWireFormat = false; + object.noStandardDescriptorAccessor = false; + object.deprecated = false; + object.mapEntry = false; + object[".google.api.resource"] = null; + } + if (message.messageSetWireFormat != null && message.hasOwnProperty("messageSetWireFormat")) + object.messageSetWireFormat = message.messageSetWireFormat; + if (message.noStandardDescriptorAccessor != null && message.hasOwnProperty("noStandardDescriptorAccessor")) + object.noStandardDescriptorAccessor = message.noStandardDescriptorAccessor; + if (message.deprecated != null && message.hasOwnProperty("deprecated")) + object.deprecated = message.deprecated; + if (message.mapEntry != null && message.hasOwnProperty("mapEntry")) + object.mapEntry = message.mapEntry; + if (message.uninterpretedOption && message.uninterpretedOption.length) { + object.uninterpretedOption = []; + for (var j = 0; j < message.uninterpretedOption.length; ++j) + object.uninterpretedOption[j] = $root.google.protobuf.UninterpretedOption.toObject(message.uninterpretedOption[j], options); + } + if (message[".google.api.resource"] != null && message.hasOwnProperty(".google.api.resource")) + object[".google.api.resource"] = $root.google.api.ResourceDescriptor.toObject(message[".google.api.resource"], options); + return object; + }; + + /** + * Converts this MessageOptions to JSON. + * @function toJSON + * @memberof google.protobuf.MessageOptions + * @instance + * @returns {Object.} JSON object + */ + MessageOptions.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return MessageOptions; + })(); + + protobuf.FieldOptions = (function() { + + /** + * Properties of a FieldOptions. + * @memberof google.protobuf + * @interface IFieldOptions + * @property {google.protobuf.FieldOptions.CType|null} [ctype] FieldOptions ctype + * @property {boolean|null} [packed] FieldOptions packed + * @property {google.protobuf.FieldOptions.JSType|null} [jstype] FieldOptions jstype + * @property {boolean|null} [lazy] FieldOptions lazy + * @property {boolean|null} [deprecated] FieldOptions deprecated + * @property {boolean|null} [weak] FieldOptions weak + * @property {Array.|null} [uninterpretedOption] FieldOptions uninterpretedOption + * @property {Array.|null} [".google.api.fieldBehavior"] FieldOptions .google.api.fieldBehavior + * @property {google.api.IResourceReference|null} [".google.api.resourceReference"] FieldOptions .google.api.resourceReference + */ + + /** + * Constructs a new FieldOptions. + * @memberof google.protobuf + * @classdesc Represents a FieldOptions. + * @implements IFieldOptions + * @constructor + * @param {google.protobuf.IFieldOptions=} [properties] Properties to set + */ + function FieldOptions(properties) { + this.uninterpretedOption = []; + this[".google.api.fieldBehavior"] = []; + 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]]; + } + + /** + * FieldOptions ctype. + * @member {google.protobuf.FieldOptions.CType} ctype + * @memberof google.protobuf.FieldOptions + * @instance + */ + FieldOptions.prototype.ctype = 0; + + /** + * FieldOptions packed. + * @member {boolean} packed + * @memberof google.protobuf.FieldOptions + * @instance + */ + FieldOptions.prototype.packed = false; + + /** + * FieldOptions jstype. + * @member {google.protobuf.FieldOptions.JSType} jstype + * @memberof google.protobuf.FieldOptions + * @instance + */ + FieldOptions.prototype.jstype = 0; + + /** + * FieldOptions lazy. + * @member {boolean} lazy + * @memberof google.protobuf.FieldOptions + * @instance + */ + FieldOptions.prototype.lazy = false; + + /** + * FieldOptions deprecated. + * @member {boolean} deprecated + * @memberof google.protobuf.FieldOptions + * @instance + */ + FieldOptions.prototype.deprecated = false; + + /** + * FieldOptions weak. + * @member {boolean} weak + * @memberof google.protobuf.FieldOptions + * @instance + */ + FieldOptions.prototype.weak = false; + + /** + * FieldOptions uninterpretedOption. + * @member {Array.} uninterpretedOption + * @memberof google.protobuf.FieldOptions + * @instance + */ + FieldOptions.prototype.uninterpretedOption = $util.emptyArray; + + /** + * FieldOptions .google.api.fieldBehavior. + * @member {Array.} .google.api.fieldBehavior + * @memberof google.protobuf.FieldOptions + * @instance + */ + FieldOptions.prototype[".google.api.fieldBehavior"] = $util.emptyArray; + + /** + * FieldOptions .google.api.resourceReference. + * @member {google.api.IResourceReference|null|undefined} .google.api.resourceReference + * @memberof google.protobuf.FieldOptions + * @instance + */ + FieldOptions.prototype[".google.api.resourceReference"] = null; + + /** + * Creates a new FieldOptions instance using the specified properties. + * @function create + * @memberof google.protobuf.FieldOptions + * @static + * @param {google.protobuf.IFieldOptions=} [properties] Properties to set + * @returns {google.protobuf.FieldOptions} FieldOptions instance + */ + FieldOptions.create = function create(properties) { + return new FieldOptions(properties); + }; + + /** + * Encodes the specified FieldOptions message. Does not implicitly {@link google.protobuf.FieldOptions.verify|verify} messages. + * @function encode + * @memberof google.protobuf.FieldOptions + * @static + * @param {google.protobuf.IFieldOptions} message FieldOptions message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + FieldOptions.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.ctype != null && Object.hasOwnProperty.call(message, "ctype")) + writer.uint32(/* id 1, wireType 0 =*/8).int32(message.ctype); + if (message.packed != null && Object.hasOwnProperty.call(message, "packed")) + writer.uint32(/* id 2, wireType 0 =*/16).bool(message.packed); + if (message.deprecated != null && Object.hasOwnProperty.call(message, "deprecated")) + writer.uint32(/* id 3, wireType 0 =*/24).bool(message.deprecated); + if (message.lazy != null && Object.hasOwnProperty.call(message, "lazy")) + writer.uint32(/* id 5, wireType 0 =*/40).bool(message.lazy); + if (message.jstype != null && Object.hasOwnProperty.call(message, "jstype")) + writer.uint32(/* id 6, wireType 0 =*/48).int32(message.jstype); + if (message.weak != null && Object.hasOwnProperty.call(message, "weak")) + writer.uint32(/* id 10, wireType 0 =*/80).bool(message.weak); + if (message.uninterpretedOption != null && message.uninterpretedOption.length) + for (var i = 0; i < message.uninterpretedOption.length; ++i) + $root.google.protobuf.UninterpretedOption.encode(message.uninterpretedOption[i], writer.uint32(/* id 999, wireType 2 =*/7994).fork()).ldelim(); + if (message[".google.api.fieldBehavior"] != null && message[".google.api.fieldBehavior"].length) { + writer.uint32(/* id 1052, wireType 2 =*/8418).fork(); + for (var i = 0; i < message[".google.api.fieldBehavior"].length; ++i) + writer.int32(message[".google.api.fieldBehavior"][i]); + writer.ldelim(); + } + if (message[".google.api.resourceReference"] != null && Object.hasOwnProperty.call(message, ".google.api.resourceReference")) + $root.google.api.ResourceReference.encode(message[".google.api.resourceReference"], writer.uint32(/* id 1055, wireType 2 =*/8442).fork()).ldelim(); + return writer; + }; + + /** + * Encodes the specified FieldOptions message, length delimited. Does not implicitly {@link google.protobuf.FieldOptions.verify|verify} messages. + * @function encodeDelimited + * @memberof google.protobuf.FieldOptions + * @static + * @param {google.protobuf.IFieldOptions} message FieldOptions message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + FieldOptions.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a FieldOptions message from the specified reader or buffer. + * @function decode + * @memberof google.protobuf.FieldOptions + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.protobuf.FieldOptions} FieldOptions + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + FieldOptions.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.protobuf.FieldOptions(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.ctype = reader.int32(); + break; + case 2: + message.packed = reader.bool(); + break; + case 6: + message.jstype = reader.int32(); + break; + case 5: + message.lazy = reader.bool(); + break; + case 3: + message.deprecated = reader.bool(); + break; + case 10: + message.weak = reader.bool(); + break; + case 999: + if (!(message.uninterpretedOption && message.uninterpretedOption.length)) + message.uninterpretedOption = []; + message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32())); + break; + case 1052: + if (!(message[".google.api.fieldBehavior"] && message[".google.api.fieldBehavior"].length)) + message[".google.api.fieldBehavior"] = []; + if ((tag & 7) === 2) { + var end2 = reader.uint32() + reader.pos; + while (reader.pos < end2) + message[".google.api.fieldBehavior"].push(reader.int32()); + } else + message[".google.api.fieldBehavior"].push(reader.int32()); + break; + case 1055: + message[".google.api.resourceReference"] = $root.google.api.ResourceReference.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a FieldOptions message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.protobuf.FieldOptions + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.protobuf.FieldOptions} FieldOptions + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + FieldOptions.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a FieldOptions message. + * @function verify + * @memberof google.protobuf.FieldOptions + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + FieldOptions.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.ctype != null && message.hasOwnProperty("ctype")) + switch (message.ctype) { + default: + return "ctype: enum value expected"; + case 0: + case 1: + case 2: + break; + } + if (message.packed != null && message.hasOwnProperty("packed")) + if (typeof message.packed !== "boolean") + return "packed: boolean expected"; + if (message.jstype != null && message.hasOwnProperty("jstype")) + switch (message.jstype) { + default: + return "jstype: enum value expected"; + case 0: + case 1: + case 2: + break; + } + if (message.lazy != null && message.hasOwnProperty("lazy")) + if (typeof message.lazy !== "boolean") + return "lazy: boolean expected"; + if (message.deprecated != null && message.hasOwnProperty("deprecated")) + if (typeof message.deprecated !== "boolean") + return "deprecated: boolean expected"; + if (message.weak != null && message.hasOwnProperty("weak")) + if (typeof message.weak !== "boolean") + return "weak: boolean expected"; + if (message.uninterpretedOption != null && message.hasOwnProperty("uninterpretedOption")) { + if (!Array.isArray(message.uninterpretedOption)) + return "uninterpretedOption: array expected"; + for (var i = 0; i < message.uninterpretedOption.length; ++i) { + var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i]); + if (error) + return "uninterpretedOption." + error; + } + } + if (message[".google.api.fieldBehavior"] != null && message.hasOwnProperty(".google.api.fieldBehavior")) { + if (!Array.isArray(message[".google.api.fieldBehavior"])) + return ".google.api.fieldBehavior: array expected"; + for (var i = 0; i < message[".google.api.fieldBehavior"].length; ++i) + switch (message[".google.api.fieldBehavior"][i]) { + default: + return ".google.api.fieldBehavior: enum value[] expected"; + case 0: + case 1: + case 2: + case 3: + case 4: + case 5: + case 6: + break; + } + } + if (message[".google.api.resourceReference"] != null && message.hasOwnProperty(".google.api.resourceReference")) { + var error = $root.google.api.ResourceReference.verify(message[".google.api.resourceReference"]); + if (error) + return ".google.api.resourceReference." + error; + } + return null; + }; + + /** + * Creates a FieldOptions message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.protobuf.FieldOptions + * @static + * @param {Object.} object Plain object + * @returns {google.protobuf.FieldOptions} FieldOptions + */ + FieldOptions.fromObject = function fromObject(object) { + if (object instanceof $root.google.protobuf.FieldOptions) + return object; + var message = new $root.google.protobuf.FieldOptions(); + switch (object.ctype) { + case "STRING": + case 0: + message.ctype = 0; + break; + case "CORD": + case 1: + message.ctype = 1; + break; + case "STRING_PIECE": + case 2: + message.ctype = 2; + break; + } + if (object.packed != null) + message.packed = Boolean(object.packed); + switch (object.jstype) { + case "JS_NORMAL": + case 0: + message.jstype = 0; + break; + case "JS_STRING": + case 1: + message.jstype = 1; + break; + case "JS_NUMBER": + case 2: + message.jstype = 2; + break; + } + if (object.lazy != null) + message.lazy = Boolean(object.lazy); + if (object.deprecated != null) + message.deprecated = Boolean(object.deprecated); + if (object.weak != null) + message.weak = Boolean(object.weak); + if (object.uninterpretedOption) { + if (!Array.isArray(object.uninterpretedOption)) + throw TypeError(".google.protobuf.FieldOptions.uninterpretedOption: array expected"); + message.uninterpretedOption = []; + for (var i = 0; i < object.uninterpretedOption.length; ++i) { + if (typeof object.uninterpretedOption[i] !== "object") + throw TypeError(".google.protobuf.FieldOptions.uninterpretedOption: object expected"); + message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i]); + } + } + if (object[".google.api.fieldBehavior"]) { + if (!Array.isArray(object[".google.api.fieldBehavior"])) + throw TypeError(".google.protobuf.FieldOptions..google.api.fieldBehavior: array expected"); + message[".google.api.fieldBehavior"] = []; + for (var i = 0; i < object[".google.api.fieldBehavior"].length; ++i) + switch (object[".google.api.fieldBehavior"][i]) { + default: + case "FIELD_BEHAVIOR_UNSPECIFIED": + case 0: + message[".google.api.fieldBehavior"][i] = 0; + break; + case "OPTIONAL": + case 1: + message[".google.api.fieldBehavior"][i] = 1; + break; + case "REQUIRED": + case 2: + message[".google.api.fieldBehavior"][i] = 2; + break; + case "OUTPUT_ONLY": + case 3: + message[".google.api.fieldBehavior"][i] = 3; + break; + case "INPUT_ONLY": + case 4: + message[".google.api.fieldBehavior"][i] = 4; + break; + case "IMMUTABLE": + case 5: + message[".google.api.fieldBehavior"][i] = 5; + break; + case "UNORDERED_LIST": + case 6: + message[".google.api.fieldBehavior"][i] = 6; + break; + } + } + if (object[".google.api.resourceReference"] != null) { + if (typeof object[".google.api.resourceReference"] !== "object") + throw TypeError(".google.protobuf.FieldOptions..google.api.resourceReference: object expected"); + message[".google.api.resourceReference"] = $root.google.api.ResourceReference.fromObject(object[".google.api.resourceReference"]); + } + return message; + }; + + /** + * Creates a plain object from a FieldOptions message. Also converts values to other types if specified. + * @function toObject + * @memberof google.protobuf.FieldOptions + * @static + * @param {google.protobuf.FieldOptions} message FieldOptions + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + FieldOptions.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.arrays || options.defaults) { + object.uninterpretedOption = []; + object[".google.api.fieldBehavior"] = []; + } + if (options.defaults) { + object.ctype = options.enums === String ? "STRING" : 0; + object.packed = false; + object.deprecated = false; + object.lazy = false; + object.jstype = options.enums === String ? "JS_NORMAL" : 0; + object.weak = false; + object[".google.api.resourceReference"] = null; + } + if (message.ctype != null && message.hasOwnProperty("ctype")) + object.ctype = options.enums === String ? $root.google.protobuf.FieldOptions.CType[message.ctype] : message.ctype; + if (message.packed != null && message.hasOwnProperty("packed")) + object.packed = message.packed; + if (message.deprecated != null && message.hasOwnProperty("deprecated")) + object.deprecated = message.deprecated; + if (message.lazy != null && message.hasOwnProperty("lazy")) + object.lazy = message.lazy; + if (message.jstype != null && message.hasOwnProperty("jstype")) + object.jstype = options.enums === String ? $root.google.protobuf.FieldOptions.JSType[message.jstype] : message.jstype; + if (message.weak != null && message.hasOwnProperty("weak")) + object.weak = message.weak; + if (message.uninterpretedOption && message.uninterpretedOption.length) { + object.uninterpretedOption = []; + for (var j = 0; j < message.uninterpretedOption.length; ++j) + object.uninterpretedOption[j] = $root.google.protobuf.UninterpretedOption.toObject(message.uninterpretedOption[j], options); + } + if (message[".google.api.fieldBehavior"] && message[".google.api.fieldBehavior"].length) { + object[".google.api.fieldBehavior"] = []; + for (var j = 0; j < message[".google.api.fieldBehavior"].length; ++j) + object[".google.api.fieldBehavior"][j] = options.enums === String ? $root.google.api.FieldBehavior[message[".google.api.fieldBehavior"][j]] : message[".google.api.fieldBehavior"][j]; + } + if (message[".google.api.resourceReference"] != null && message.hasOwnProperty(".google.api.resourceReference")) + object[".google.api.resourceReference"] = $root.google.api.ResourceReference.toObject(message[".google.api.resourceReference"], options); + return object; + }; + + /** + * Converts this FieldOptions to JSON. + * @function toJSON + * @memberof google.protobuf.FieldOptions + * @instance + * @returns {Object.} JSON object + */ + FieldOptions.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + /** + * CType enum. + * @name google.protobuf.FieldOptions.CType + * @enum {number} + * @property {number} STRING=0 STRING value + * @property {number} CORD=1 CORD value + * @property {number} STRING_PIECE=2 STRING_PIECE value + */ + FieldOptions.CType = (function() { + var valuesById = {}, values = Object.create(valuesById); + values[valuesById[0] = "STRING"] = 0; + values[valuesById[1] = "CORD"] = 1; + values[valuesById[2] = "STRING_PIECE"] = 2; + return values; + })(); + + /** + * JSType enum. + * @name google.protobuf.FieldOptions.JSType + * @enum {number} + * @property {number} JS_NORMAL=0 JS_NORMAL value + * @property {number} JS_STRING=1 JS_STRING value + * @property {number} JS_NUMBER=2 JS_NUMBER value + */ + FieldOptions.JSType = (function() { + var valuesById = {}, values = Object.create(valuesById); + values[valuesById[0] = "JS_NORMAL"] = 0; + values[valuesById[1] = "JS_STRING"] = 1; + values[valuesById[2] = "JS_NUMBER"] = 2; + return values; + })(); + + return FieldOptions; + })(); + + protobuf.OneofOptions = (function() { + + /** + * Properties of an OneofOptions. + * @memberof google.protobuf + * @interface IOneofOptions + * @property {Array.|null} [uninterpretedOption] OneofOptions uninterpretedOption + */ + + /** + * Constructs a new OneofOptions. + * @memberof google.protobuf + * @classdesc Represents an OneofOptions. + * @implements IOneofOptions + * @constructor + * @param {google.protobuf.IOneofOptions=} [properties] Properties to set + */ + function OneofOptions(properties) { + this.uninterpretedOption = []; + 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]]; + } + + /** + * OneofOptions uninterpretedOption. + * @member {Array.} uninterpretedOption + * @memberof google.protobuf.OneofOptions + * @instance + */ + OneofOptions.prototype.uninterpretedOption = $util.emptyArray; + + /** + * Creates a new OneofOptions instance using the specified properties. + * @function create + * @memberof google.protobuf.OneofOptions + * @static + * @param {google.protobuf.IOneofOptions=} [properties] Properties to set + * @returns {google.protobuf.OneofOptions} OneofOptions instance + */ + OneofOptions.create = function create(properties) { + return new OneofOptions(properties); + }; + + /** + * Encodes the specified OneofOptions message. Does not implicitly {@link google.protobuf.OneofOptions.verify|verify} messages. + * @function encode + * @memberof google.protobuf.OneofOptions + * @static + * @param {google.protobuf.IOneofOptions} message OneofOptions message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + OneofOptions.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.uninterpretedOption != null && message.uninterpretedOption.length) + for (var i = 0; i < message.uninterpretedOption.length; ++i) + $root.google.protobuf.UninterpretedOption.encode(message.uninterpretedOption[i], writer.uint32(/* id 999, wireType 2 =*/7994).fork()).ldelim(); + return writer; + }; + + /** + * Encodes the specified OneofOptions message, length delimited. Does not implicitly {@link google.protobuf.OneofOptions.verify|verify} messages. + * @function encodeDelimited + * @memberof google.protobuf.OneofOptions + * @static + * @param {google.protobuf.IOneofOptions} message OneofOptions message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + OneofOptions.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes an OneofOptions message from the specified reader or buffer. + * @function decode + * @memberof google.protobuf.OneofOptions + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.protobuf.OneofOptions} OneofOptions + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + OneofOptions.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.protobuf.OneofOptions(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 999: + if (!(message.uninterpretedOption && message.uninterpretedOption.length)) + message.uninterpretedOption = []; + message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32())); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes an OneofOptions message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.protobuf.OneofOptions + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.protobuf.OneofOptions} OneofOptions + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + OneofOptions.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies an OneofOptions message. + * @function verify + * @memberof google.protobuf.OneofOptions + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + OneofOptions.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.uninterpretedOption != null && message.hasOwnProperty("uninterpretedOption")) { + if (!Array.isArray(message.uninterpretedOption)) + return "uninterpretedOption: array expected"; + for (var i = 0; i < message.uninterpretedOption.length; ++i) { + var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i]); + if (error) + return "uninterpretedOption." + error; + } + } + return null; + }; + + /** + * Creates an OneofOptions message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.protobuf.OneofOptions + * @static + * @param {Object.} object Plain object + * @returns {google.protobuf.OneofOptions} OneofOptions + */ + OneofOptions.fromObject = function fromObject(object) { + if (object instanceof $root.google.protobuf.OneofOptions) + return object; + var message = new $root.google.protobuf.OneofOptions(); + if (object.uninterpretedOption) { + if (!Array.isArray(object.uninterpretedOption)) + throw TypeError(".google.protobuf.OneofOptions.uninterpretedOption: array expected"); + message.uninterpretedOption = []; + for (var i = 0; i < object.uninterpretedOption.length; ++i) { + if (typeof object.uninterpretedOption[i] !== "object") + throw TypeError(".google.protobuf.OneofOptions.uninterpretedOption: object expected"); + message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i]); + } + } + return message; + }; + + /** + * Creates a plain object from an OneofOptions message. Also converts values to other types if specified. + * @function toObject + * @memberof google.protobuf.OneofOptions + * @static + * @param {google.protobuf.OneofOptions} message OneofOptions + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + OneofOptions.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.arrays || options.defaults) + object.uninterpretedOption = []; + if (message.uninterpretedOption && message.uninterpretedOption.length) { + object.uninterpretedOption = []; + for (var j = 0; j < message.uninterpretedOption.length; ++j) + object.uninterpretedOption[j] = $root.google.protobuf.UninterpretedOption.toObject(message.uninterpretedOption[j], options); + } + return object; + }; + + /** + * Converts this OneofOptions to JSON. + * @function toJSON + * @memberof google.protobuf.OneofOptions + * @instance + * @returns {Object.} JSON object + */ + OneofOptions.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return OneofOptions; + })(); + + protobuf.EnumOptions = (function() { + + /** + * Properties of an EnumOptions. + * @memberof google.protobuf + * @interface IEnumOptions + * @property {boolean|null} [allowAlias] EnumOptions allowAlias + * @property {boolean|null} [deprecated] EnumOptions deprecated + * @property {Array.|null} [uninterpretedOption] EnumOptions uninterpretedOption + */ + + /** + * Constructs a new EnumOptions. + * @memberof google.protobuf + * @classdesc Represents an EnumOptions. + * @implements IEnumOptions + * @constructor + * @param {google.protobuf.IEnumOptions=} [properties] Properties to set + */ + function EnumOptions(properties) { + this.uninterpretedOption = []; + 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]]; + } + + /** + * EnumOptions allowAlias. + * @member {boolean} allowAlias + * @memberof google.protobuf.EnumOptions + * @instance + */ + EnumOptions.prototype.allowAlias = false; + + /** + * EnumOptions deprecated. + * @member {boolean} deprecated + * @memberof google.protobuf.EnumOptions + * @instance + */ + EnumOptions.prototype.deprecated = false; + + /** + * EnumOptions uninterpretedOption. + * @member {Array.} uninterpretedOption + * @memberof google.protobuf.EnumOptions + * @instance + */ + EnumOptions.prototype.uninterpretedOption = $util.emptyArray; + + /** + * Creates a new EnumOptions instance using the specified properties. + * @function create + * @memberof google.protobuf.EnumOptions + * @static + * @param {google.protobuf.IEnumOptions=} [properties] Properties to set + * @returns {google.protobuf.EnumOptions} EnumOptions instance + */ + EnumOptions.create = function create(properties) { + return new EnumOptions(properties); + }; + + /** + * Encodes the specified EnumOptions message. Does not implicitly {@link google.protobuf.EnumOptions.verify|verify} messages. + * @function encode + * @memberof google.protobuf.EnumOptions + * @static + * @param {google.protobuf.IEnumOptions} message EnumOptions message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + EnumOptions.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.allowAlias != null && Object.hasOwnProperty.call(message, "allowAlias")) + writer.uint32(/* id 2, wireType 0 =*/16).bool(message.allowAlias); + if (message.deprecated != null && Object.hasOwnProperty.call(message, "deprecated")) + writer.uint32(/* id 3, wireType 0 =*/24).bool(message.deprecated); + if (message.uninterpretedOption != null && message.uninterpretedOption.length) + for (var i = 0; i < message.uninterpretedOption.length; ++i) + $root.google.protobuf.UninterpretedOption.encode(message.uninterpretedOption[i], writer.uint32(/* id 999, wireType 2 =*/7994).fork()).ldelim(); + return writer; + }; + + /** + * Encodes the specified EnumOptions message, length delimited. Does not implicitly {@link google.protobuf.EnumOptions.verify|verify} messages. + * @function encodeDelimited + * @memberof google.protobuf.EnumOptions + * @static + * @param {google.protobuf.IEnumOptions} message EnumOptions message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + EnumOptions.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes an EnumOptions message from the specified reader or buffer. + * @function decode + * @memberof google.protobuf.EnumOptions + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.protobuf.EnumOptions} EnumOptions + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + EnumOptions.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.protobuf.EnumOptions(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 2: + message.allowAlias = reader.bool(); + break; + case 3: + message.deprecated = reader.bool(); + break; + case 999: + if (!(message.uninterpretedOption && message.uninterpretedOption.length)) + message.uninterpretedOption = []; + message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32())); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes an EnumOptions message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.protobuf.EnumOptions + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.protobuf.EnumOptions} EnumOptions + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + EnumOptions.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies an EnumOptions message. + * @function verify + * @memberof google.protobuf.EnumOptions + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + EnumOptions.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.allowAlias != null && message.hasOwnProperty("allowAlias")) + if (typeof message.allowAlias !== "boolean") + return "allowAlias: boolean expected"; + if (message.deprecated != null && message.hasOwnProperty("deprecated")) + if (typeof message.deprecated !== "boolean") + return "deprecated: boolean expected"; + if (message.uninterpretedOption != null && message.hasOwnProperty("uninterpretedOption")) { + if (!Array.isArray(message.uninterpretedOption)) + return "uninterpretedOption: array expected"; + for (var i = 0; i < message.uninterpretedOption.length; ++i) { + var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i]); + if (error) + return "uninterpretedOption." + error; + } + } + return null; + }; + + /** + * Creates an EnumOptions message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.protobuf.EnumOptions + * @static + * @param {Object.} object Plain object + * @returns {google.protobuf.EnumOptions} EnumOptions + */ + EnumOptions.fromObject = function fromObject(object) { + if (object instanceof $root.google.protobuf.EnumOptions) + return object; + var message = new $root.google.protobuf.EnumOptions(); + if (object.allowAlias != null) + message.allowAlias = Boolean(object.allowAlias); + if (object.deprecated != null) + message.deprecated = Boolean(object.deprecated); + if (object.uninterpretedOption) { + if (!Array.isArray(object.uninterpretedOption)) + throw TypeError(".google.protobuf.EnumOptions.uninterpretedOption: array expected"); + message.uninterpretedOption = []; + for (var i = 0; i < object.uninterpretedOption.length; ++i) { + if (typeof object.uninterpretedOption[i] !== "object") + throw TypeError(".google.protobuf.EnumOptions.uninterpretedOption: object expected"); + message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i]); + } + } + return message; + }; + + /** + * Creates a plain object from an EnumOptions message. Also converts values to other types if specified. + * @function toObject + * @memberof google.protobuf.EnumOptions + * @static + * @param {google.protobuf.EnumOptions} message EnumOptions + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + EnumOptions.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.arrays || options.defaults) + object.uninterpretedOption = []; + if (options.defaults) { + object.allowAlias = false; + object.deprecated = false; + } + if (message.allowAlias != null && message.hasOwnProperty("allowAlias")) + object.allowAlias = message.allowAlias; + if (message.deprecated != null && message.hasOwnProperty("deprecated")) + object.deprecated = message.deprecated; + if (message.uninterpretedOption && message.uninterpretedOption.length) { + object.uninterpretedOption = []; + for (var j = 0; j < message.uninterpretedOption.length; ++j) + object.uninterpretedOption[j] = $root.google.protobuf.UninterpretedOption.toObject(message.uninterpretedOption[j], options); + } + return object; + }; + + /** + * Converts this EnumOptions to JSON. + * @function toJSON + * @memberof google.protobuf.EnumOptions + * @instance + * @returns {Object.} JSON object + */ + EnumOptions.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return EnumOptions; + })(); + + protobuf.EnumValueOptions = (function() { + + /** + * Properties of an EnumValueOptions. + * @memberof google.protobuf + * @interface IEnumValueOptions + * @property {boolean|null} [deprecated] EnumValueOptions deprecated + * @property {Array.|null} [uninterpretedOption] EnumValueOptions uninterpretedOption + */ + + /** + * Constructs a new EnumValueOptions. + * @memberof google.protobuf + * @classdesc Represents an EnumValueOptions. + * @implements IEnumValueOptions + * @constructor + * @param {google.protobuf.IEnumValueOptions=} [properties] Properties to set + */ + function EnumValueOptions(properties) { + this.uninterpretedOption = []; + 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]]; + } + + /** + * EnumValueOptions deprecated. + * @member {boolean} deprecated + * @memberof google.protobuf.EnumValueOptions + * @instance + */ + EnumValueOptions.prototype.deprecated = false; + + /** + * EnumValueOptions uninterpretedOption. + * @member {Array.} uninterpretedOption + * @memberof google.protobuf.EnumValueOptions + * @instance + */ + EnumValueOptions.prototype.uninterpretedOption = $util.emptyArray; + + /** + * Creates a new EnumValueOptions instance using the specified properties. + * @function create + * @memberof google.protobuf.EnumValueOptions + * @static + * @param {google.protobuf.IEnumValueOptions=} [properties] Properties to set + * @returns {google.protobuf.EnumValueOptions} EnumValueOptions instance + */ + EnumValueOptions.create = function create(properties) { + return new EnumValueOptions(properties); + }; + + /** + * Encodes the specified EnumValueOptions message. Does not implicitly {@link google.protobuf.EnumValueOptions.verify|verify} messages. + * @function encode + * @memberof google.protobuf.EnumValueOptions + * @static + * @param {google.protobuf.IEnumValueOptions} message EnumValueOptions message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + EnumValueOptions.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.deprecated != null && Object.hasOwnProperty.call(message, "deprecated")) + writer.uint32(/* id 1, wireType 0 =*/8).bool(message.deprecated); + if (message.uninterpretedOption != null && message.uninterpretedOption.length) + for (var i = 0; i < message.uninterpretedOption.length; ++i) + $root.google.protobuf.UninterpretedOption.encode(message.uninterpretedOption[i], writer.uint32(/* id 999, wireType 2 =*/7994).fork()).ldelim(); + return writer; + }; + + /** + * Encodes the specified EnumValueOptions message, length delimited. Does not implicitly {@link google.protobuf.EnumValueOptions.verify|verify} messages. + * @function encodeDelimited + * @memberof google.protobuf.EnumValueOptions + * @static + * @param {google.protobuf.IEnumValueOptions} message EnumValueOptions message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + EnumValueOptions.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes an EnumValueOptions message from the specified reader or buffer. + * @function decode + * @memberof google.protobuf.EnumValueOptions + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.protobuf.EnumValueOptions} EnumValueOptions + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + EnumValueOptions.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.protobuf.EnumValueOptions(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.deprecated = reader.bool(); + break; + case 999: + if (!(message.uninterpretedOption && message.uninterpretedOption.length)) + message.uninterpretedOption = []; + message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32())); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes an EnumValueOptions message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.protobuf.EnumValueOptions + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.protobuf.EnumValueOptions} EnumValueOptions + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + EnumValueOptions.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies an EnumValueOptions message. + * @function verify + * @memberof google.protobuf.EnumValueOptions + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + EnumValueOptions.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.deprecated != null && message.hasOwnProperty("deprecated")) + if (typeof message.deprecated !== "boolean") + return "deprecated: boolean expected"; + if (message.uninterpretedOption != null && message.hasOwnProperty("uninterpretedOption")) { + if (!Array.isArray(message.uninterpretedOption)) + return "uninterpretedOption: array expected"; + for (var i = 0; i < message.uninterpretedOption.length; ++i) { + var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i]); + if (error) + return "uninterpretedOption." + error; + } + } + return null; + }; + + /** + * Creates an EnumValueOptions message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.protobuf.EnumValueOptions + * @static + * @param {Object.} object Plain object + * @returns {google.protobuf.EnumValueOptions} EnumValueOptions + */ + EnumValueOptions.fromObject = function fromObject(object) { + if (object instanceof $root.google.protobuf.EnumValueOptions) + return object; + var message = new $root.google.protobuf.EnumValueOptions(); + if (object.deprecated != null) + message.deprecated = Boolean(object.deprecated); + if (object.uninterpretedOption) { + if (!Array.isArray(object.uninterpretedOption)) + throw TypeError(".google.protobuf.EnumValueOptions.uninterpretedOption: array expected"); + message.uninterpretedOption = []; + for (var i = 0; i < object.uninterpretedOption.length; ++i) { + if (typeof object.uninterpretedOption[i] !== "object") + throw TypeError(".google.protobuf.EnumValueOptions.uninterpretedOption: object expected"); + message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i]); + } + } + return message; + }; + + /** + * Creates a plain object from an EnumValueOptions message. Also converts values to other types if specified. + * @function toObject + * @memberof google.protobuf.EnumValueOptions + * @static + * @param {google.protobuf.EnumValueOptions} message EnumValueOptions + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + EnumValueOptions.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.arrays || options.defaults) + object.uninterpretedOption = []; + if (options.defaults) + object.deprecated = false; + if (message.deprecated != null && message.hasOwnProperty("deprecated")) + object.deprecated = message.deprecated; + if (message.uninterpretedOption && message.uninterpretedOption.length) { + object.uninterpretedOption = []; + for (var j = 0; j < message.uninterpretedOption.length; ++j) + object.uninterpretedOption[j] = $root.google.protobuf.UninterpretedOption.toObject(message.uninterpretedOption[j], options); + } + return object; + }; + + /** + * Converts this EnumValueOptions to JSON. + * @function toJSON + * @memberof google.protobuf.EnumValueOptions + * @instance + * @returns {Object.} JSON object + */ + EnumValueOptions.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return EnumValueOptions; + })(); + + protobuf.ServiceOptions = (function() { + + /** + * Properties of a ServiceOptions. + * @memberof google.protobuf + * @interface IServiceOptions + * @property {boolean|null} [deprecated] ServiceOptions deprecated + * @property {Array.|null} [uninterpretedOption] ServiceOptions uninterpretedOption + * @property {string|null} [".google.api.defaultHost"] ServiceOptions .google.api.defaultHost + * @property {string|null} [".google.api.oauthScopes"] ServiceOptions .google.api.oauthScopes + */ + + /** + * Constructs a new ServiceOptions. + * @memberof google.protobuf + * @classdesc Represents a ServiceOptions. + * @implements IServiceOptions + * @constructor + * @param {google.protobuf.IServiceOptions=} [properties] Properties to set + */ + function ServiceOptions(properties) { + this.uninterpretedOption = []; + 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]]; + } + + /** + * ServiceOptions deprecated. + * @member {boolean} deprecated + * @memberof google.protobuf.ServiceOptions + * @instance + */ + ServiceOptions.prototype.deprecated = false; + + /** + * ServiceOptions uninterpretedOption. + * @member {Array.} uninterpretedOption + * @memberof google.protobuf.ServiceOptions + * @instance + */ + ServiceOptions.prototype.uninterpretedOption = $util.emptyArray; + + /** + * ServiceOptions .google.api.defaultHost. + * @member {string} .google.api.defaultHost + * @memberof google.protobuf.ServiceOptions + * @instance + */ + ServiceOptions.prototype[".google.api.defaultHost"] = ""; + + /** + * ServiceOptions .google.api.oauthScopes. + * @member {string} .google.api.oauthScopes + * @memberof google.protobuf.ServiceOptions + * @instance + */ + ServiceOptions.prototype[".google.api.oauthScopes"] = ""; + + /** + * Creates a new ServiceOptions instance using the specified properties. + * @function create + * @memberof google.protobuf.ServiceOptions + * @static + * @param {google.protobuf.IServiceOptions=} [properties] Properties to set + * @returns {google.protobuf.ServiceOptions} ServiceOptions instance + */ + ServiceOptions.create = function create(properties) { + return new ServiceOptions(properties); + }; + + /** + * Encodes the specified ServiceOptions message. Does not implicitly {@link google.protobuf.ServiceOptions.verify|verify} messages. + * @function encode + * @memberof google.protobuf.ServiceOptions + * @static + * @param {google.protobuf.IServiceOptions} message ServiceOptions message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + ServiceOptions.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.deprecated != null && Object.hasOwnProperty.call(message, "deprecated")) + writer.uint32(/* id 33, wireType 0 =*/264).bool(message.deprecated); + if (message.uninterpretedOption != null && message.uninterpretedOption.length) + for (var i = 0; i < message.uninterpretedOption.length; ++i) + $root.google.protobuf.UninterpretedOption.encode(message.uninterpretedOption[i], writer.uint32(/* id 999, wireType 2 =*/7994).fork()).ldelim(); + if (message[".google.api.defaultHost"] != null && Object.hasOwnProperty.call(message, ".google.api.defaultHost")) + writer.uint32(/* id 1049, wireType 2 =*/8394).string(message[".google.api.defaultHost"]); + if (message[".google.api.oauthScopes"] != null && Object.hasOwnProperty.call(message, ".google.api.oauthScopes")) + writer.uint32(/* id 1050, wireType 2 =*/8402).string(message[".google.api.oauthScopes"]); + return writer; + }; + + /** + * Encodes the specified ServiceOptions message, length delimited. Does not implicitly {@link google.protobuf.ServiceOptions.verify|verify} messages. + * @function encodeDelimited + * @memberof google.protobuf.ServiceOptions + * @static + * @param {google.protobuf.IServiceOptions} message ServiceOptions message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + ServiceOptions.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a ServiceOptions message from the specified reader or buffer. + * @function decode + * @memberof google.protobuf.ServiceOptions + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.protobuf.ServiceOptions} ServiceOptions + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + ServiceOptions.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.protobuf.ServiceOptions(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 33: + message.deprecated = reader.bool(); + break; + case 999: + if (!(message.uninterpretedOption && message.uninterpretedOption.length)) + message.uninterpretedOption = []; + message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32())); + break; + case 1049: + message[".google.api.defaultHost"] = reader.string(); + break; + case 1050: + message[".google.api.oauthScopes"] = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a ServiceOptions message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.protobuf.ServiceOptions + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.protobuf.ServiceOptions} ServiceOptions + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + ServiceOptions.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a ServiceOptions message. + * @function verify + * @memberof google.protobuf.ServiceOptions + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + ServiceOptions.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.deprecated != null && message.hasOwnProperty("deprecated")) + if (typeof message.deprecated !== "boolean") + return "deprecated: boolean expected"; + if (message.uninterpretedOption != null && message.hasOwnProperty("uninterpretedOption")) { + if (!Array.isArray(message.uninterpretedOption)) + return "uninterpretedOption: array expected"; + for (var i = 0; i < message.uninterpretedOption.length; ++i) { + var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i]); + if (error) + return "uninterpretedOption." + error; + } + } + if (message[".google.api.defaultHost"] != null && message.hasOwnProperty(".google.api.defaultHost")) + if (!$util.isString(message[".google.api.defaultHost"])) + return ".google.api.defaultHost: string expected"; + if (message[".google.api.oauthScopes"] != null && message.hasOwnProperty(".google.api.oauthScopes")) + if (!$util.isString(message[".google.api.oauthScopes"])) + return ".google.api.oauthScopes: string expected"; + return null; + }; + + /** + * Creates a ServiceOptions message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.protobuf.ServiceOptions + * @static + * @param {Object.} object Plain object + * @returns {google.protobuf.ServiceOptions} ServiceOptions + */ + ServiceOptions.fromObject = function fromObject(object) { + if (object instanceof $root.google.protobuf.ServiceOptions) + return object; + var message = new $root.google.protobuf.ServiceOptions(); + if (object.deprecated != null) + message.deprecated = Boolean(object.deprecated); + if (object.uninterpretedOption) { + if (!Array.isArray(object.uninterpretedOption)) + throw TypeError(".google.protobuf.ServiceOptions.uninterpretedOption: array expected"); + message.uninterpretedOption = []; + for (var i = 0; i < object.uninterpretedOption.length; ++i) { + if (typeof object.uninterpretedOption[i] !== "object") + throw TypeError(".google.protobuf.ServiceOptions.uninterpretedOption: object expected"); + message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i]); + } + } + if (object[".google.api.defaultHost"] != null) + message[".google.api.defaultHost"] = String(object[".google.api.defaultHost"]); + if (object[".google.api.oauthScopes"] != null) + message[".google.api.oauthScopes"] = String(object[".google.api.oauthScopes"]); + return message; + }; + + /** + * Creates a plain object from a ServiceOptions message. Also converts values to other types if specified. + * @function toObject + * @memberof google.protobuf.ServiceOptions + * @static + * @param {google.protobuf.ServiceOptions} message ServiceOptions + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + ServiceOptions.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.arrays || options.defaults) + object.uninterpretedOption = []; + if (options.defaults) { + object.deprecated = false; + object[".google.api.defaultHost"] = ""; + object[".google.api.oauthScopes"] = ""; + } + if (message.deprecated != null && message.hasOwnProperty("deprecated")) + object.deprecated = message.deprecated; + if (message.uninterpretedOption && message.uninterpretedOption.length) { + object.uninterpretedOption = []; + for (var j = 0; j < message.uninterpretedOption.length; ++j) + object.uninterpretedOption[j] = $root.google.protobuf.UninterpretedOption.toObject(message.uninterpretedOption[j], options); + } + if (message[".google.api.defaultHost"] != null && message.hasOwnProperty(".google.api.defaultHost")) + object[".google.api.defaultHost"] = message[".google.api.defaultHost"]; + if (message[".google.api.oauthScopes"] != null && message.hasOwnProperty(".google.api.oauthScopes")) + object[".google.api.oauthScopes"] = message[".google.api.oauthScopes"]; + return object; + }; + + /** + * Converts this ServiceOptions to JSON. + * @function toJSON + * @memberof google.protobuf.ServiceOptions + * @instance + * @returns {Object.} JSON object + */ + ServiceOptions.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return ServiceOptions; + })(); + + protobuf.MethodOptions = (function() { + + /** + * Properties of a MethodOptions. + * @memberof google.protobuf + * @interface IMethodOptions + * @property {boolean|null} [deprecated] MethodOptions deprecated + * @property {google.protobuf.MethodOptions.IdempotencyLevel|null} [idempotencyLevel] MethodOptions idempotencyLevel + * @property {Array.|null} [uninterpretedOption] MethodOptions uninterpretedOption + * @property {google.api.IHttpRule|null} [".google.api.http"] MethodOptions .google.api.http + * @property {Array.|null} [".google.api.methodSignature"] MethodOptions .google.api.methodSignature + * @property {google.longrunning.IOperationInfo|null} [".google.longrunning.operationInfo"] MethodOptions .google.longrunning.operationInfo + */ + + /** + * Constructs a new MethodOptions. + * @memberof google.protobuf + * @classdesc Represents a MethodOptions. + * @implements IMethodOptions + * @constructor + * @param {google.protobuf.IMethodOptions=} [properties] Properties to set + */ + function MethodOptions(properties) { + this.uninterpretedOption = []; + this[".google.api.methodSignature"] = []; + 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]]; + } + + /** + * MethodOptions deprecated. + * @member {boolean} deprecated + * @memberof google.protobuf.MethodOptions + * @instance + */ + MethodOptions.prototype.deprecated = false; + + /** + * MethodOptions idempotencyLevel. + * @member {google.protobuf.MethodOptions.IdempotencyLevel} idempotencyLevel + * @memberof google.protobuf.MethodOptions + * @instance + */ + MethodOptions.prototype.idempotencyLevel = 0; + + /** + * MethodOptions uninterpretedOption. + * @member {Array.} uninterpretedOption + * @memberof google.protobuf.MethodOptions + * @instance + */ + MethodOptions.prototype.uninterpretedOption = $util.emptyArray; + + /** + * MethodOptions .google.api.http. + * @member {google.api.IHttpRule|null|undefined} .google.api.http + * @memberof google.protobuf.MethodOptions + * @instance + */ + MethodOptions.prototype[".google.api.http"] = null; + + /** + * MethodOptions .google.api.methodSignature. + * @member {Array.} .google.api.methodSignature + * @memberof google.protobuf.MethodOptions + * @instance + */ + MethodOptions.prototype[".google.api.methodSignature"] = $util.emptyArray; + + /** + * MethodOptions .google.longrunning.operationInfo. + * @member {google.longrunning.IOperationInfo|null|undefined} .google.longrunning.operationInfo + * @memberof google.protobuf.MethodOptions + * @instance + */ + MethodOptions.prototype[".google.longrunning.operationInfo"] = null; + + /** + * Creates a new MethodOptions instance using the specified properties. + * @function create + * @memberof google.protobuf.MethodOptions + * @static + * @param {google.protobuf.IMethodOptions=} [properties] Properties to set + * @returns {google.protobuf.MethodOptions} MethodOptions instance + */ + MethodOptions.create = function create(properties) { + return new MethodOptions(properties); + }; + + /** + * Encodes the specified MethodOptions message. Does not implicitly {@link google.protobuf.MethodOptions.verify|verify} messages. + * @function encode + * @memberof google.protobuf.MethodOptions + * @static + * @param {google.protobuf.IMethodOptions} message MethodOptions message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + MethodOptions.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.deprecated != null && Object.hasOwnProperty.call(message, "deprecated")) + writer.uint32(/* id 33, wireType 0 =*/264).bool(message.deprecated); + if (message.idempotencyLevel != null && Object.hasOwnProperty.call(message, "idempotencyLevel")) + writer.uint32(/* id 34, wireType 0 =*/272).int32(message.idempotencyLevel); + if (message.uninterpretedOption != null && message.uninterpretedOption.length) + for (var i = 0; i < message.uninterpretedOption.length; ++i) + $root.google.protobuf.UninterpretedOption.encode(message.uninterpretedOption[i], writer.uint32(/* id 999, wireType 2 =*/7994).fork()).ldelim(); + if (message[".google.longrunning.operationInfo"] != null && Object.hasOwnProperty.call(message, ".google.longrunning.operationInfo")) + $root.google.longrunning.OperationInfo.encode(message[".google.longrunning.operationInfo"], writer.uint32(/* id 1049, wireType 2 =*/8394).fork()).ldelim(); + if (message[".google.api.methodSignature"] != null && message[".google.api.methodSignature"].length) + for (var i = 0; i < message[".google.api.methodSignature"].length; ++i) + writer.uint32(/* id 1051, wireType 2 =*/8410).string(message[".google.api.methodSignature"][i]); + if (message[".google.api.http"] != null && Object.hasOwnProperty.call(message, ".google.api.http")) + $root.google.api.HttpRule.encode(message[".google.api.http"], writer.uint32(/* id 72295728, wireType 2 =*/578365826).fork()).ldelim(); + return writer; + }; + + /** + * Encodes the specified MethodOptions message, length delimited. Does not implicitly {@link google.protobuf.MethodOptions.verify|verify} messages. + * @function encodeDelimited + * @memberof google.protobuf.MethodOptions + * @static + * @param {google.protobuf.IMethodOptions} message MethodOptions message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + MethodOptions.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a MethodOptions message from the specified reader or buffer. + * @function decode + * @memberof google.protobuf.MethodOptions + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.protobuf.MethodOptions} MethodOptions + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + MethodOptions.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.protobuf.MethodOptions(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 33: + message.deprecated = reader.bool(); + break; + case 34: + message.idempotencyLevel = reader.int32(); + break; + case 999: + if (!(message.uninterpretedOption && message.uninterpretedOption.length)) + message.uninterpretedOption = []; + message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32())); + break; + case 72295728: + message[".google.api.http"] = $root.google.api.HttpRule.decode(reader, reader.uint32()); + break; + case 1051: + if (!(message[".google.api.methodSignature"] && message[".google.api.methodSignature"].length)) + message[".google.api.methodSignature"] = []; + message[".google.api.methodSignature"].push(reader.string()); + break; + case 1049: + message[".google.longrunning.operationInfo"] = $root.google.longrunning.OperationInfo.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a MethodOptions message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.protobuf.MethodOptions + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.protobuf.MethodOptions} MethodOptions + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + MethodOptions.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a MethodOptions message. + * @function verify + * @memberof google.protobuf.MethodOptions + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + MethodOptions.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.deprecated != null && message.hasOwnProperty("deprecated")) + if (typeof message.deprecated !== "boolean") + return "deprecated: boolean expected"; + if (message.idempotencyLevel != null && message.hasOwnProperty("idempotencyLevel")) + switch (message.idempotencyLevel) { + default: + return "idempotencyLevel: enum value expected"; + case 0: + case 1: + case 2: + break; + } + if (message.uninterpretedOption != null && message.hasOwnProperty("uninterpretedOption")) { + if (!Array.isArray(message.uninterpretedOption)) + return "uninterpretedOption: array expected"; + for (var i = 0; i < message.uninterpretedOption.length; ++i) { + var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i]); + if (error) + return "uninterpretedOption." + error; + } + } + if (message[".google.api.http"] != null && message.hasOwnProperty(".google.api.http")) { + var error = $root.google.api.HttpRule.verify(message[".google.api.http"]); + if (error) + return ".google.api.http." + error; + } + if (message[".google.api.methodSignature"] != null && message.hasOwnProperty(".google.api.methodSignature")) { + if (!Array.isArray(message[".google.api.methodSignature"])) + return ".google.api.methodSignature: array expected"; + for (var i = 0; i < message[".google.api.methodSignature"].length; ++i) + if (!$util.isString(message[".google.api.methodSignature"][i])) + return ".google.api.methodSignature: string[] expected"; + } + if (message[".google.longrunning.operationInfo"] != null && message.hasOwnProperty(".google.longrunning.operationInfo")) { + var error = $root.google.longrunning.OperationInfo.verify(message[".google.longrunning.operationInfo"]); + if (error) + return ".google.longrunning.operationInfo." + error; + } + return null; + }; + + /** + * Creates a MethodOptions message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.protobuf.MethodOptions + * @static + * @param {Object.} object Plain object + * @returns {google.protobuf.MethodOptions} MethodOptions + */ + MethodOptions.fromObject = function fromObject(object) { + if (object instanceof $root.google.protobuf.MethodOptions) + return object; + var message = new $root.google.protobuf.MethodOptions(); + if (object.deprecated != null) + message.deprecated = Boolean(object.deprecated); + switch (object.idempotencyLevel) { + case "IDEMPOTENCY_UNKNOWN": + case 0: + message.idempotencyLevel = 0; + break; + case "NO_SIDE_EFFECTS": + case 1: + message.idempotencyLevel = 1; + break; + case "IDEMPOTENT": + case 2: + message.idempotencyLevel = 2; + break; + } + if (object.uninterpretedOption) { + if (!Array.isArray(object.uninterpretedOption)) + throw TypeError(".google.protobuf.MethodOptions.uninterpretedOption: array expected"); + message.uninterpretedOption = []; + for (var i = 0; i < object.uninterpretedOption.length; ++i) { + if (typeof object.uninterpretedOption[i] !== "object") + throw TypeError(".google.protobuf.MethodOptions.uninterpretedOption: object expected"); + message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i]); + } + } + if (object[".google.api.http"] != null) { + if (typeof object[".google.api.http"] !== "object") + throw TypeError(".google.protobuf.MethodOptions..google.api.http: object expected"); + message[".google.api.http"] = $root.google.api.HttpRule.fromObject(object[".google.api.http"]); + } + if (object[".google.api.methodSignature"]) { + if (!Array.isArray(object[".google.api.methodSignature"])) + throw TypeError(".google.protobuf.MethodOptions..google.api.methodSignature: array expected"); + message[".google.api.methodSignature"] = []; + for (var i = 0; i < object[".google.api.methodSignature"].length; ++i) + message[".google.api.methodSignature"][i] = String(object[".google.api.methodSignature"][i]); + } + if (object[".google.longrunning.operationInfo"] != null) { + if (typeof object[".google.longrunning.operationInfo"] !== "object") + throw TypeError(".google.protobuf.MethodOptions..google.longrunning.operationInfo: object expected"); + message[".google.longrunning.operationInfo"] = $root.google.longrunning.OperationInfo.fromObject(object[".google.longrunning.operationInfo"]); + } + return message; + }; + + /** + * Creates a plain object from a MethodOptions message. Also converts values to other types if specified. + * @function toObject + * @memberof google.protobuf.MethodOptions + * @static + * @param {google.protobuf.MethodOptions} message MethodOptions + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + MethodOptions.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.arrays || options.defaults) { + object.uninterpretedOption = []; + object[".google.api.methodSignature"] = []; + } + if (options.defaults) { + object.deprecated = false; + object.idempotencyLevel = options.enums === String ? "IDEMPOTENCY_UNKNOWN" : 0; + object[".google.longrunning.operationInfo"] = null; + object[".google.api.http"] = null; + } + if (message.deprecated != null && message.hasOwnProperty("deprecated")) + object.deprecated = message.deprecated; + if (message.idempotencyLevel != null && message.hasOwnProperty("idempotencyLevel")) + object.idempotencyLevel = options.enums === String ? $root.google.protobuf.MethodOptions.IdempotencyLevel[message.idempotencyLevel] : message.idempotencyLevel; + if (message.uninterpretedOption && message.uninterpretedOption.length) { + object.uninterpretedOption = []; + for (var j = 0; j < message.uninterpretedOption.length; ++j) + object.uninterpretedOption[j] = $root.google.protobuf.UninterpretedOption.toObject(message.uninterpretedOption[j], options); + } + if (message[".google.longrunning.operationInfo"] != null && message.hasOwnProperty(".google.longrunning.operationInfo")) + object[".google.longrunning.operationInfo"] = $root.google.longrunning.OperationInfo.toObject(message[".google.longrunning.operationInfo"], options); + if (message[".google.api.methodSignature"] && message[".google.api.methodSignature"].length) { + object[".google.api.methodSignature"] = []; + for (var j = 0; j < message[".google.api.methodSignature"].length; ++j) + object[".google.api.methodSignature"][j] = message[".google.api.methodSignature"][j]; + } + if (message[".google.api.http"] != null && message.hasOwnProperty(".google.api.http")) + object[".google.api.http"] = $root.google.api.HttpRule.toObject(message[".google.api.http"], options); + return object; + }; + + /** + * Converts this MethodOptions to JSON. + * @function toJSON + * @memberof google.protobuf.MethodOptions + * @instance + * @returns {Object.} JSON object + */ + MethodOptions.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + /** + * IdempotencyLevel enum. + * @name google.protobuf.MethodOptions.IdempotencyLevel + * @enum {number} + * @property {number} IDEMPOTENCY_UNKNOWN=0 IDEMPOTENCY_UNKNOWN value + * @property {number} NO_SIDE_EFFECTS=1 NO_SIDE_EFFECTS value + * @property {number} IDEMPOTENT=2 IDEMPOTENT value + */ + MethodOptions.IdempotencyLevel = (function() { + var valuesById = {}, values = Object.create(valuesById); + values[valuesById[0] = "IDEMPOTENCY_UNKNOWN"] = 0; + values[valuesById[1] = "NO_SIDE_EFFECTS"] = 1; + values[valuesById[2] = "IDEMPOTENT"] = 2; + return values; + })(); + + return MethodOptions; + })(); + + protobuf.UninterpretedOption = (function() { + + /** + * Properties of an UninterpretedOption. + * @memberof google.protobuf + * @interface IUninterpretedOption + * @property {Array.|null} [name] UninterpretedOption name + * @property {string|null} [identifierValue] UninterpretedOption identifierValue + * @property {number|Long|null} [positiveIntValue] UninterpretedOption positiveIntValue + * @property {number|Long|null} [negativeIntValue] UninterpretedOption negativeIntValue + * @property {number|null} [doubleValue] UninterpretedOption doubleValue + * @property {Uint8Array|null} [stringValue] UninterpretedOption stringValue + * @property {string|null} [aggregateValue] UninterpretedOption aggregateValue + */ + + /** + * Constructs a new UninterpretedOption. + * @memberof google.protobuf + * @classdesc Represents an UninterpretedOption. + * @implements IUninterpretedOption + * @constructor + * @param {google.protobuf.IUninterpretedOption=} [properties] Properties to set + */ + function UninterpretedOption(properties) { + this.name = []; + 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]]; + } + + /** + * UninterpretedOption name. + * @member {Array.} name + * @memberof google.protobuf.UninterpretedOption + * @instance + */ + UninterpretedOption.prototype.name = $util.emptyArray; + + /** + * UninterpretedOption identifierValue. + * @member {string} identifierValue + * @memberof google.protobuf.UninterpretedOption + * @instance + */ + UninterpretedOption.prototype.identifierValue = ""; + + /** + * UninterpretedOption positiveIntValue. + * @member {number|Long} positiveIntValue + * @memberof google.protobuf.UninterpretedOption + * @instance + */ + UninterpretedOption.prototype.positiveIntValue = $util.Long ? $util.Long.fromBits(0,0,true) : 0; + + /** + * UninterpretedOption negativeIntValue. + * @member {number|Long} negativeIntValue + * @memberof google.protobuf.UninterpretedOption + * @instance + */ + UninterpretedOption.prototype.negativeIntValue = $util.Long ? $util.Long.fromBits(0,0,false) : 0; + + /** + * UninterpretedOption doubleValue. + * @member {number} doubleValue + * @memberof google.protobuf.UninterpretedOption + * @instance + */ + UninterpretedOption.prototype.doubleValue = 0; + + /** + * UninterpretedOption stringValue. + * @member {Uint8Array} stringValue + * @memberof google.protobuf.UninterpretedOption + * @instance + */ + UninterpretedOption.prototype.stringValue = $util.newBuffer([]); + + /** + * UninterpretedOption aggregateValue. + * @member {string} aggregateValue + * @memberof google.protobuf.UninterpretedOption + * @instance + */ + UninterpretedOption.prototype.aggregateValue = ""; + + /** + * Creates a new UninterpretedOption instance using the specified properties. + * @function create + * @memberof google.protobuf.UninterpretedOption + * @static + * @param {google.protobuf.IUninterpretedOption=} [properties] Properties to set + * @returns {google.protobuf.UninterpretedOption} UninterpretedOption instance + */ + UninterpretedOption.create = function create(properties) { + return new UninterpretedOption(properties); + }; + + /** + * Encodes the specified UninterpretedOption message. Does not implicitly {@link google.protobuf.UninterpretedOption.verify|verify} messages. + * @function encode + * @memberof google.protobuf.UninterpretedOption + * @static + * @param {google.protobuf.IUninterpretedOption} message UninterpretedOption message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + UninterpretedOption.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.name != null && message.name.length) + for (var i = 0; i < message.name.length; ++i) + $root.google.protobuf.UninterpretedOption.NamePart.encode(message.name[i], writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim(); + if (message.identifierValue != null && Object.hasOwnProperty.call(message, "identifierValue")) + writer.uint32(/* id 3, wireType 2 =*/26).string(message.identifierValue); + if (message.positiveIntValue != null && Object.hasOwnProperty.call(message, "positiveIntValue")) + writer.uint32(/* id 4, wireType 0 =*/32).uint64(message.positiveIntValue); + if (message.negativeIntValue != null && Object.hasOwnProperty.call(message, "negativeIntValue")) + writer.uint32(/* id 5, wireType 0 =*/40).int64(message.negativeIntValue); + if (message.doubleValue != null && Object.hasOwnProperty.call(message, "doubleValue")) + writer.uint32(/* id 6, wireType 1 =*/49).double(message.doubleValue); + if (message.stringValue != null && Object.hasOwnProperty.call(message, "stringValue")) + writer.uint32(/* id 7, wireType 2 =*/58).bytes(message.stringValue); + if (message.aggregateValue != null && Object.hasOwnProperty.call(message, "aggregateValue")) + writer.uint32(/* id 8, wireType 2 =*/66).string(message.aggregateValue); + return writer; + }; + + /** + * Encodes the specified UninterpretedOption message, length delimited. Does not implicitly {@link google.protobuf.UninterpretedOption.verify|verify} messages. + * @function encodeDelimited + * @memberof google.protobuf.UninterpretedOption + * @static + * @param {google.protobuf.IUninterpretedOption} message UninterpretedOption message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + UninterpretedOption.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes an UninterpretedOption message from the specified reader or buffer. + * @function decode + * @memberof google.protobuf.UninterpretedOption + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.protobuf.UninterpretedOption} UninterpretedOption + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + UninterpretedOption.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.protobuf.UninterpretedOption(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 2: + if (!(message.name && message.name.length)) + message.name = []; + message.name.push($root.google.protobuf.UninterpretedOption.NamePart.decode(reader, reader.uint32())); + break; + case 3: + message.identifierValue = reader.string(); + break; + case 4: + message.positiveIntValue = reader.uint64(); + break; + case 5: + message.negativeIntValue = reader.int64(); + break; + case 6: + message.doubleValue = reader.double(); + break; + case 7: + message.stringValue = reader.bytes(); + break; + case 8: + message.aggregateValue = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes an UninterpretedOption message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.protobuf.UninterpretedOption + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.protobuf.UninterpretedOption} UninterpretedOption + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + UninterpretedOption.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies an UninterpretedOption message. + * @function verify + * @memberof google.protobuf.UninterpretedOption + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + UninterpretedOption.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.name != null && message.hasOwnProperty("name")) { + if (!Array.isArray(message.name)) + return "name: array expected"; + for (var i = 0; i < message.name.length; ++i) { + var error = $root.google.protobuf.UninterpretedOption.NamePart.verify(message.name[i]); + if (error) + return "name." + error; + } + } + if (message.identifierValue != null && message.hasOwnProperty("identifierValue")) + if (!$util.isString(message.identifierValue)) + return "identifierValue: string expected"; + if (message.positiveIntValue != null && message.hasOwnProperty("positiveIntValue")) + if (!$util.isInteger(message.positiveIntValue) && !(message.positiveIntValue && $util.isInteger(message.positiveIntValue.low) && $util.isInteger(message.positiveIntValue.high))) + return "positiveIntValue: integer|Long expected"; + if (message.negativeIntValue != null && message.hasOwnProperty("negativeIntValue")) + if (!$util.isInteger(message.negativeIntValue) && !(message.negativeIntValue && $util.isInteger(message.negativeIntValue.low) && $util.isInteger(message.negativeIntValue.high))) + return "negativeIntValue: integer|Long expected"; + if (message.doubleValue != null && message.hasOwnProperty("doubleValue")) + if (typeof message.doubleValue !== "number") + return "doubleValue: number expected"; + if (message.stringValue != null && message.hasOwnProperty("stringValue")) + if (!(message.stringValue && typeof message.stringValue.length === "number" || $util.isString(message.stringValue))) + return "stringValue: buffer expected"; + if (message.aggregateValue != null && message.hasOwnProperty("aggregateValue")) + if (!$util.isString(message.aggregateValue)) + return "aggregateValue: string expected"; + return null; + }; + + /** + * Creates an UninterpretedOption message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.protobuf.UninterpretedOption + * @static + * @param {Object.} object Plain object + * @returns {google.protobuf.UninterpretedOption} UninterpretedOption + */ + UninterpretedOption.fromObject = function fromObject(object) { + if (object instanceof $root.google.protobuf.UninterpretedOption) + return object; + var message = new $root.google.protobuf.UninterpretedOption(); + if (object.name) { + if (!Array.isArray(object.name)) + throw TypeError(".google.protobuf.UninterpretedOption.name: array expected"); + message.name = []; + for (var i = 0; i < object.name.length; ++i) { + if (typeof object.name[i] !== "object") + throw TypeError(".google.protobuf.UninterpretedOption.name: object expected"); + message.name[i] = $root.google.protobuf.UninterpretedOption.NamePart.fromObject(object.name[i]); + } + } + if (object.identifierValue != null) + message.identifierValue = String(object.identifierValue); + if (object.positiveIntValue != null) + if ($util.Long) + (message.positiveIntValue = $util.Long.fromValue(object.positiveIntValue)).unsigned = true; + else if (typeof object.positiveIntValue === "string") + message.positiveIntValue = parseInt(object.positiveIntValue, 10); + else if (typeof object.positiveIntValue === "number") + message.positiveIntValue = object.positiveIntValue; + else if (typeof object.positiveIntValue === "object") + message.positiveIntValue = new $util.LongBits(object.positiveIntValue.low >>> 0, object.positiveIntValue.high >>> 0).toNumber(true); + if (object.negativeIntValue != null) + if ($util.Long) + (message.negativeIntValue = $util.Long.fromValue(object.negativeIntValue)).unsigned = false; + else if (typeof object.negativeIntValue === "string") + message.negativeIntValue = parseInt(object.negativeIntValue, 10); + else if (typeof object.negativeIntValue === "number") + message.negativeIntValue = object.negativeIntValue; + else if (typeof object.negativeIntValue === "object") + message.negativeIntValue = new $util.LongBits(object.negativeIntValue.low >>> 0, object.negativeIntValue.high >>> 0).toNumber(); + if (object.doubleValue != null) + message.doubleValue = Number(object.doubleValue); + if (object.stringValue != null) + if (typeof object.stringValue === "string") + $util.base64.decode(object.stringValue, message.stringValue = $util.newBuffer($util.base64.length(object.stringValue)), 0); + else if (object.stringValue.length) + message.stringValue = object.stringValue; + if (object.aggregateValue != null) + message.aggregateValue = String(object.aggregateValue); + return message; + }; + + /** + * Creates a plain object from an UninterpretedOption message. Also converts values to other types if specified. + * @function toObject + * @memberof google.protobuf.UninterpretedOption + * @static + * @param {google.protobuf.UninterpretedOption} message UninterpretedOption + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + UninterpretedOption.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.arrays || options.defaults) + object.name = []; + if (options.defaults) { + object.identifierValue = ""; + if ($util.Long) { + var long = new $util.Long(0, 0, true); + object.positiveIntValue = options.longs === String ? long.toString() : options.longs === Number ? long.toNumber() : long; + } else + object.positiveIntValue = options.longs === String ? "0" : 0; + if ($util.Long) { + var long = new $util.Long(0, 0, false); + object.negativeIntValue = options.longs === String ? long.toString() : options.longs === Number ? long.toNumber() : long; + } else + object.negativeIntValue = options.longs === String ? "0" : 0; + object.doubleValue = 0; + if (options.bytes === String) + object.stringValue = ""; + else { + object.stringValue = []; + if (options.bytes !== Array) + object.stringValue = $util.newBuffer(object.stringValue); + } + object.aggregateValue = ""; + } + if (message.name && message.name.length) { + object.name = []; + for (var j = 0; j < message.name.length; ++j) + object.name[j] = $root.google.protobuf.UninterpretedOption.NamePart.toObject(message.name[j], options); + } + if (message.identifierValue != null && message.hasOwnProperty("identifierValue")) + object.identifierValue = message.identifierValue; + if (message.positiveIntValue != null && message.hasOwnProperty("positiveIntValue")) + if (typeof message.positiveIntValue === "number") + object.positiveIntValue = options.longs === String ? String(message.positiveIntValue) : message.positiveIntValue; + else + object.positiveIntValue = options.longs === String ? $util.Long.prototype.toString.call(message.positiveIntValue) : options.longs === Number ? new $util.LongBits(message.positiveIntValue.low >>> 0, message.positiveIntValue.high >>> 0).toNumber(true) : message.positiveIntValue; + if (message.negativeIntValue != null && message.hasOwnProperty("negativeIntValue")) + if (typeof message.negativeIntValue === "number") + object.negativeIntValue = options.longs === String ? String(message.negativeIntValue) : message.negativeIntValue; + else + object.negativeIntValue = options.longs === String ? $util.Long.prototype.toString.call(message.negativeIntValue) : options.longs === Number ? new $util.LongBits(message.negativeIntValue.low >>> 0, message.negativeIntValue.high >>> 0).toNumber() : message.negativeIntValue; + if (message.doubleValue != null && message.hasOwnProperty("doubleValue")) + object.doubleValue = options.json && !isFinite(message.doubleValue) ? String(message.doubleValue) : message.doubleValue; + if (message.stringValue != null && message.hasOwnProperty("stringValue")) + object.stringValue = options.bytes === String ? $util.base64.encode(message.stringValue, 0, message.stringValue.length) : options.bytes === Array ? Array.prototype.slice.call(message.stringValue) : message.stringValue; + if (message.aggregateValue != null && message.hasOwnProperty("aggregateValue")) + object.aggregateValue = message.aggregateValue; + return object; + }; + + /** + * Converts this UninterpretedOption to JSON. + * @function toJSON + * @memberof google.protobuf.UninterpretedOption + * @instance + * @returns {Object.} JSON object + */ + UninterpretedOption.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + UninterpretedOption.NamePart = (function() { + + /** + * Properties of a NamePart. + * @memberof google.protobuf.UninterpretedOption + * @interface INamePart + * @property {string} namePart NamePart namePart + * @property {boolean} isExtension NamePart isExtension + */ + + /** + * Constructs a new NamePart. + * @memberof google.protobuf.UninterpretedOption + * @classdesc Represents a NamePart. + * @implements INamePart + * @constructor + * @param {google.protobuf.UninterpretedOption.INamePart=} [properties] Properties to set + */ + function NamePart(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]]; + } + + /** + * NamePart namePart. + * @member {string} namePart + * @memberof google.protobuf.UninterpretedOption.NamePart + * @instance + */ + NamePart.prototype.namePart = ""; + + /** + * NamePart isExtension. + * @member {boolean} isExtension + * @memberof google.protobuf.UninterpretedOption.NamePart + * @instance + */ + NamePart.prototype.isExtension = false; + + /** + * Creates a new NamePart instance using the specified properties. + * @function create + * @memberof google.protobuf.UninterpretedOption.NamePart + * @static + * @param {google.protobuf.UninterpretedOption.INamePart=} [properties] Properties to set + * @returns {google.protobuf.UninterpretedOption.NamePart} NamePart instance + */ + NamePart.create = function create(properties) { + return new NamePart(properties); + }; + + /** + * Encodes the specified NamePart message. Does not implicitly {@link google.protobuf.UninterpretedOption.NamePart.verify|verify} messages. + * @function encode + * @memberof google.protobuf.UninterpretedOption.NamePart + * @static + * @param {google.protobuf.UninterpretedOption.INamePart} message NamePart message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + NamePart.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + writer.uint32(/* id 1, wireType 2 =*/10).string(message.namePart); + writer.uint32(/* id 2, wireType 0 =*/16).bool(message.isExtension); + return writer; + }; + + /** + * Encodes the specified NamePart message, length delimited. Does not implicitly {@link google.protobuf.UninterpretedOption.NamePart.verify|verify} messages. + * @function encodeDelimited + * @memberof google.protobuf.UninterpretedOption.NamePart + * @static + * @param {google.protobuf.UninterpretedOption.INamePart} message NamePart message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + NamePart.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a NamePart message from the specified reader or buffer. + * @function decode + * @memberof google.protobuf.UninterpretedOption.NamePart + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.protobuf.UninterpretedOption.NamePart} NamePart + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + NamePart.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.protobuf.UninterpretedOption.NamePart(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.namePart = reader.string(); + break; + case 2: + message.isExtension = reader.bool(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + if (!message.hasOwnProperty("namePart")) + throw $util.ProtocolError("missing required 'namePart'", { instance: message }); + if (!message.hasOwnProperty("isExtension")) + throw $util.ProtocolError("missing required 'isExtension'", { instance: message }); + return message; + }; + + /** + * Decodes a NamePart message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.protobuf.UninterpretedOption.NamePart + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.protobuf.UninterpretedOption.NamePart} NamePart + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + NamePart.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a NamePart message. + * @function verify + * @memberof google.protobuf.UninterpretedOption.NamePart + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + NamePart.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (!$util.isString(message.namePart)) + return "namePart: string expected"; + if (typeof message.isExtension !== "boolean") + return "isExtension: boolean expected"; + return null; + }; + + /** + * Creates a NamePart message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.protobuf.UninterpretedOption.NamePart + * @static + * @param {Object.} object Plain object + * @returns {google.protobuf.UninterpretedOption.NamePart} NamePart + */ + NamePart.fromObject = function fromObject(object) { + if (object instanceof $root.google.protobuf.UninterpretedOption.NamePart) + return object; + var message = new $root.google.protobuf.UninterpretedOption.NamePart(); + if (object.namePart != null) + message.namePart = String(object.namePart); + if (object.isExtension != null) + message.isExtension = Boolean(object.isExtension); + return message; + }; + + /** + * Creates a plain object from a NamePart message. Also converts values to other types if specified. + * @function toObject + * @memberof google.protobuf.UninterpretedOption.NamePart + * @static + * @param {google.protobuf.UninterpretedOption.NamePart} message NamePart + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + NamePart.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.namePart = ""; + object.isExtension = false; + } + if (message.namePart != null && message.hasOwnProperty("namePart")) + object.namePart = message.namePart; + if (message.isExtension != null && message.hasOwnProperty("isExtension")) + object.isExtension = message.isExtension; + return object; + }; + + /** + * Converts this NamePart to JSON. + * @function toJSON + * @memberof google.protobuf.UninterpretedOption.NamePart + * @instance + * @returns {Object.} JSON object + */ + NamePart.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return NamePart; + })(); + + return UninterpretedOption; + })(); + + protobuf.SourceCodeInfo = (function() { + + /** + * Properties of a SourceCodeInfo. + * @memberof google.protobuf + * @interface ISourceCodeInfo + * @property {Array.|null} [location] SourceCodeInfo location + */ + + /** + * Constructs a new SourceCodeInfo. + * @memberof google.protobuf + * @classdesc Represents a SourceCodeInfo. + * @implements ISourceCodeInfo + * @constructor + * @param {google.protobuf.ISourceCodeInfo=} [properties] Properties to set + */ + function SourceCodeInfo(properties) { + this.location = []; + 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]]; + } + + /** + * SourceCodeInfo location. + * @member {Array.} location + * @memberof google.protobuf.SourceCodeInfo + * @instance + */ + SourceCodeInfo.prototype.location = $util.emptyArray; + + /** + * Creates a new SourceCodeInfo instance using the specified properties. + * @function create + * @memberof google.protobuf.SourceCodeInfo + * @static + * @param {google.protobuf.ISourceCodeInfo=} [properties] Properties to set + * @returns {google.protobuf.SourceCodeInfo} SourceCodeInfo instance + */ + SourceCodeInfo.create = function create(properties) { + return new SourceCodeInfo(properties); + }; + + /** + * Encodes the specified SourceCodeInfo message. Does not implicitly {@link google.protobuf.SourceCodeInfo.verify|verify} messages. + * @function encode + * @memberof google.protobuf.SourceCodeInfo + * @static + * @param {google.protobuf.ISourceCodeInfo} message SourceCodeInfo message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + SourceCodeInfo.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.location != null && message.location.length) + for (var i = 0; i < message.location.length; ++i) + $root.google.protobuf.SourceCodeInfo.Location.encode(message.location[i], writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim(); + return writer; + }; + + /** + * Encodes the specified SourceCodeInfo message, length delimited. Does not implicitly {@link google.protobuf.SourceCodeInfo.verify|verify} messages. + * @function encodeDelimited + * @memberof google.protobuf.SourceCodeInfo + * @static + * @param {google.protobuf.ISourceCodeInfo} message SourceCodeInfo message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + SourceCodeInfo.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a SourceCodeInfo message from the specified reader or buffer. + * @function decode + * @memberof google.protobuf.SourceCodeInfo + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.protobuf.SourceCodeInfo} SourceCodeInfo + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + SourceCodeInfo.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.protobuf.SourceCodeInfo(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + if (!(message.location && message.location.length)) + message.location = []; + message.location.push($root.google.protobuf.SourceCodeInfo.Location.decode(reader, reader.uint32())); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a SourceCodeInfo message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.protobuf.SourceCodeInfo + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.protobuf.SourceCodeInfo} SourceCodeInfo + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + SourceCodeInfo.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a SourceCodeInfo message. + * @function verify + * @memberof google.protobuf.SourceCodeInfo + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + SourceCodeInfo.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.location != null && message.hasOwnProperty("location")) { + if (!Array.isArray(message.location)) + return "location: array expected"; + for (var i = 0; i < message.location.length; ++i) { + var error = $root.google.protobuf.SourceCodeInfo.Location.verify(message.location[i]); + if (error) + return "location." + error; + } + } + return null; + }; + + /** + * Creates a SourceCodeInfo message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.protobuf.SourceCodeInfo + * @static + * @param {Object.} object Plain object + * @returns {google.protobuf.SourceCodeInfo} SourceCodeInfo + */ + SourceCodeInfo.fromObject = function fromObject(object) { + if (object instanceof $root.google.protobuf.SourceCodeInfo) + return object; + var message = new $root.google.protobuf.SourceCodeInfo(); + if (object.location) { + if (!Array.isArray(object.location)) + throw TypeError(".google.protobuf.SourceCodeInfo.location: array expected"); + message.location = []; + for (var i = 0; i < object.location.length; ++i) { + if (typeof object.location[i] !== "object") + throw TypeError(".google.protobuf.SourceCodeInfo.location: object expected"); + message.location[i] = $root.google.protobuf.SourceCodeInfo.Location.fromObject(object.location[i]); + } + } + return message; + }; + + /** + * Creates a plain object from a SourceCodeInfo message. Also converts values to other types if specified. + * @function toObject + * @memberof google.protobuf.SourceCodeInfo + * @static + * @param {google.protobuf.SourceCodeInfo} message SourceCodeInfo + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + SourceCodeInfo.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.arrays || options.defaults) + object.location = []; + if (message.location && message.location.length) { + object.location = []; + for (var j = 0; j < message.location.length; ++j) + object.location[j] = $root.google.protobuf.SourceCodeInfo.Location.toObject(message.location[j], options); + } + return object; + }; + + /** + * Converts this SourceCodeInfo to JSON. + * @function toJSON + * @memberof google.protobuf.SourceCodeInfo + * @instance + * @returns {Object.} JSON object + */ + SourceCodeInfo.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + SourceCodeInfo.Location = (function() { + + /** + * Properties of a Location. + * @memberof google.protobuf.SourceCodeInfo + * @interface ILocation + * @property {Array.|null} [path] Location path + * @property {Array.|null} [span] Location span + * @property {string|null} [leadingComments] Location leadingComments + * @property {string|null} [trailingComments] Location trailingComments + * @property {Array.|null} [leadingDetachedComments] Location leadingDetachedComments + */ + + /** + * Constructs a new Location. + * @memberof google.protobuf.SourceCodeInfo + * @classdesc Represents a Location. + * @implements ILocation + * @constructor + * @param {google.protobuf.SourceCodeInfo.ILocation=} [properties] Properties to set + */ + function Location(properties) { + this.path = []; + this.span = []; + this.leadingDetachedComments = []; + 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]]; + } + + /** + * Location path. + * @member {Array.} path + * @memberof google.protobuf.SourceCodeInfo.Location + * @instance + */ + Location.prototype.path = $util.emptyArray; + + /** + * Location span. + * @member {Array.} span + * @memberof google.protobuf.SourceCodeInfo.Location + * @instance + */ + Location.prototype.span = $util.emptyArray; + + /** + * Location leadingComments. + * @member {string} leadingComments + * @memberof google.protobuf.SourceCodeInfo.Location + * @instance + */ + Location.prototype.leadingComments = ""; + + /** + * Location trailingComments. + * @member {string} trailingComments + * @memberof google.protobuf.SourceCodeInfo.Location + * @instance + */ + Location.prototype.trailingComments = ""; + + /** + * Location leadingDetachedComments. + * @member {Array.} leadingDetachedComments + * @memberof google.protobuf.SourceCodeInfo.Location + * @instance + */ + Location.prototype.leadingDetachedComments = $util.emptyArray; + + /** + * Creates a new Location instance using the specified properties. + * @function create + * @memberof google.protobuf.SourceCodeInfo.Location + * @static + * @param {google.protobuf.SourceCodeInfo.ILocation=} [properties] Properties to set + * @returns {google.protobuf.SourceCodeInfo.Location} Location instance + */ + Location.create = function create(properties) { + return new Location(properties); + }; + + /** + * Encodes the specified Location message. Does not implicitly {@link google.protobuf.SourceCodeInfo.Location.verify|verify} messages. + * @function encode + * @memberof google.protobuf.SourceCodeInfo.Location + * @static + * @param {google.protobuf.SourceCodeInfo.ILocation} message Location message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + Location.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.path != null && message.path.length) { + writer.uint32(/* id 1, wireType 2 =*/10).fork(); + for (var i = 0; i < message.path.length; ++i) + writer.int32(message.path[i]); + writer.ldelim(); + } + if (message.span != null && message.span.length) { + writer.uint32(/* id 2, wireType 2 =*/18).fork(); + for (var i = 0; i < message.span.length; ++i) + writer.int32(message.span[i]); + writer.ldelim(); + } + if (message.leadingComments != null && Object.hasOwnProperty.call(message, "leadingComments")) + writer.uint32(/* id 3, wireType 2 =*/26).string(message.leadingComments); + if (message.trailingComments != null && Object.hasOwnProperty.call(message, "trailingComments")) + writer.uint32(/* id 4, wireType 2 =*/34).string(message.trailingComments); + if (message.leadingDetachedComments != null && message.leadingDetachedComments.length) + for (var i = 0; i < message.leadingDetachedComments.length; ++i) + writer.uint32(/* id 6, wireType 2 =*/50).string(message.leadingDetachedComments[i]); + return writer; + }; + + /** + * Encodes the specified Location message, length delimited. Does not implicitly {@link google.protobuf.SourceCodeInfo.Location.verify|verify} messages. + * @function encodeDelimited + * @memberof google.protobuf.SourceCodeInfo.Location + * @static + * @param {google.protobuf.SourceCodeInfo.ILocation} message Location message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + Location.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a Location message from the specified reader or buffer. + * @function decode + * @memberof google.protobuf.SourceCodeInfo.Location + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.protobuf.SourceCodeInfo.Location} Location + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + Location.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.protobuf.SourceCodeInfo.Location(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + if (!(message.path && message.path.length)) + message.path = []; + if ((tag & 7) === 2) { + var end2 = reader.uint32() + reader.pos; + while (reader.pos < end2) + message.path.push(reader.int32()); + } else + message.path.push(reader.int32()); + break; + case 2: + if (!(message.span && message.span.length)) + message.span = []; + if ((tag & 7) === 2) { + var end2 = reader.uint32() + reader.pos; + while (reader.pos < end2) + message.span.push(reader.int32()); + } else + message.span.push(reader.int32()); + break; + case 3: + message.leadingComments = reader.string(); + break; + case 4: + message.trailingComments = reader.string(); + break; + case 6: + if (!(message.leadingDetachedComments && message.leadingDetachedComments.length)) + message.leadingDetachedComments = []; + message.leadingDetachedComments.push(reader.string()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a Location message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.protobuf.SourceCodeInfo.Location + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.protobuf.SourceCodeInfo.Location} Location + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + Location.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a Location message. + * @function verify + * @memberof google.protobuf.SourceCodeInfo.Location + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + Location.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.path != null && message.hasOwnProperty("path")) { + if (!Array.isArray(message.path)) + return "path: array expected"; + for (var i = 0; i < message.path.length; ++i) + if (!$util.isInteger(message.path[i])) + return "path: integer[] expected"; + } + if (message.span != null && message.hasOwnProperty("span")) { + if (!Array.isArray(message.span)) + return "span: array expected"; + for (var i = 0; i < message.span.length; ++i) + if (!$util.isInteger(message.span[i])) + return "span: integer[] expected"; + } + if (message.leadingComments != null && message.hasOwnProperty("leadingComments")) + if (!$util.isString(message.leadingComments)) + return "leadingComments: string expected"; + if (message.trailingComments != null && message.hasOwnProperty("trailingComments")) + if (!$util.isString(message.trailingComments)) + return "trailingComments: string expected"; + if (message.leadingDetachedComments != null && message.hasOwnProperty("leadingDetachedComments")) { + if (!Array.isArray(message.leadingDetachedComments)) + return "leadingDetachedComments: array expected"; + for (var i = 0; i < message.leadingDetachedComments.length; ++i) + if (!$util.isString(message.leadingDetachedComments[i])) + return "leadingDetachedComments: string[] expected"; + } + return null; + }; + + /** + * Creates a Location message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.protobuf.SourceCodeInfo.Location + * @static + * @param {Object.} object Plain object + * @returns {google.protobuf.SourceCodeInfo.Location} Location + */ + Location.fromObject = function fromObject(object) { + if (object instanceof $root.google.protobuf.SourceCodeInfo.Location) + return object; + var message = new $root.google.protobuf.SourceCodeInfo.Location(); + if (object.path) { + if (!Array.isArray(object.path)) + throw TypeError(".google.protobuf.SourceCodeInfo.Location.path: array expected"); + message.path = []; + for (var i = 0; i < object.path.length; ++i) + message.path[i] = object.path[i] | 0; + } + if (object.span) { + if (!Array.isArray(object.span)) + throw TypeError(".google.protobuf.SourceCodeInfo.Location.span: array expected"); + message.span = []; + for (var i = 0; i < object.span.length; ++i) + message.span[i] = object.span[i] | 0; + } + if (object.leadingComments != null) + message.leadingComments = String(object.leadingComments); + if (object.trailingComments != null) + message.trailingComments = String(object.trailingComments); + if (object.leadingDetachedComments) { + if (!Array.isArray(object.leadingDetachedComments)) + throw TypeError(".google.protobuf.SourceCodeInfo.Location.leadingDetachedComments: array expected"); + message.leadingDetachedComments = []; + for (var i = 0; i < object.leadingDetachedComments.length; ++i) + message.leadingDetachedComments[i] = String(object.leadingDetachedComments[i]); + } + return message; + }; + + /** + * Creates a plain object from a Location message. Also converts values to other types if specified. + * @function toObject + * @memberof google.protobuf.SourceCodeInfo.Location + * @static + * @param {google.protobuf.SourceCodeInfo.Location} message Location + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + Location.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.arrays || options.defaults) { + object.path = []; + object.span = []; + object.leadingDetachedComments = []; + } + if (options.defaults) { + object.leadingComments = ""; + object.trailingComments = ""; + } + if (message.path && message.path.length) { + object.path = []; + for (var j = 0; j < message.path.length; ++j) + object.path[j] = message.path[j]; + } + if (message.span && message.span.length) { + object.span = []; + for (var j = 0; j < message.span.length; ++j) + object.span[j] = message.span[j]; + } + if (message.leadingComments != null && message.hasOwnProperty("leadingComments")) + object.leadingComments = message.leadingComments; + if (message.trailingComments != null && message.hasOwnProperty("trailingComments")) + object.trailingComments = message.trailingComments; + if (message.leadingDetachedComments && message.leadingDetachedComments.length) { + object.leadingDetachedComments = []; + for (var j = 0; j < message.leadingDetachedComments.length; ++j) + object.leadingDetachedComments[j] = message.leadingDetachedComments[j]; + } + return object; + }; + + /** + * Converts this Location to JSON. + * @function toJSON + * @memberof google.protobuf.SourceCodeInfo.Location + * @instance + * @returns {Object.} JSON object + */ + Location.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return Location; + })(); + + return SourceCodeInfo; + })(); + + protobuf.GeneratedCodeInfo = (function() { + + /** + * Properties of a GeneratedCodeInfo. + * @memberof google.protobuf + * @interface IGeneratedCodeInfo + * @property {Array.|null} [annotation] GeneratedCodeInfo annotation + */ + + /** + * Constructs a new GeneratedCodeInfo. + * @memberof google.protobuf + * @classdesc Represents a GeneratedCodeInfo. + * @implements IGeneratedCodeInfo + * @constructor + * @param {google.protobuf.IGeneratedCodeInfo=} [properties] Properties to set + */ + function GeneratedCodeInfo(properties) { + this.annotation = []; + 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]]; + } + + /** + * GeneratedCodeInfo annotation. + * @member {Array.} annotation + * @memberof google.protobuf.GeneratedCodeInfo + * @instance + */ + GeneratedCodeInfo.prototype.annotation = $util.emptyArray; + + /** + * Creates a new GeneratedCodeInfo instance using the specified properties. + * @function create + * @memberof google.protobuf.GeneratedCodeInfo + * @static + * @param {google.protobuf.IGeneratedCodeInfo=} [properties] Properties to set + * @returns {google.protobuf.GeneratedCodeInfo} GeneratedCodeInfo instance + */ + GeneratedCodeInfo.create = function create(properties) { + return new GeneratedCodeInfo(properties); + }; + + /** + * Encodes the specified GeneratedCodeInfo message. Does not implicitly {@link google.protobuf.GeneratedCodeInfo.verify|verify} messages. + * @function encode + * @memberof google.protobuf.GeneratedCodeInfo + * @static + * @param {google.protobuf.IGeneratedCodeInfo} message GeneratedCodeInfo message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + GeneratedCodeInfo.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.annotation != null && message.annotation.length) + for (var i = 0; i < message.annotation.length; ++i) + $root.google.protobuf.GeneratedCodeInfo.Annotation.encode(message.annotation[i], writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim(); + return writer; + }; + + /** + * Encodes the specified GeneratedCodeInfo message, length delimited. Does not implicitly {@link google.protobuf.GeneratedCodeInfo.verify|verify} messages. + * @function encodeDelimited + * @memberof google.protobuf.GeneratedCodeInfo + * @static + * @param {google.protobuf.IGeneratedCodeInfo} message GeneratedCodeInfo message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + GeneratedCodeInfo.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a GeneratedCodeInfo message from the specified reader or buffer. + * @function decode + * @memberof google.protobuf.GeneratedCodeInfo + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.protobuf.GeneratedCodeInfo} GeneratedCodeInfo + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + GeneratedCodeInfo.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.protobuf.GeneratedCodeInfo(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + if (!(message.annotation && message.annotation.length)) + message.annotation = []; + message.annotation.push($root.google.protobuf.GeneratedCodeInfo.Annotation.decode(reader, reader.uint32())); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a GeneratedCodeInfo message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.protobuf.GeneratedCodeInfo + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.protobuf.GeneratedCodeInfo} GeneratedCodeInfo + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + GeneratedCodeInfo.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a GeneratedCodeInfo message. + * @function verify + * @memberof google.protobuf.GeneratedCodeInfo + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + GeneratedCodeInfo.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.annotation != null && message.hasOwnProperty("annotation")) { + if (!Array.isArray(message.annotation)) + return "annotation: array expected"; + for (var i = 0; i < message.annotation.length; ++i) { + var error = $root.google.protobuf.GeneratedCodeInfo.Annotation.verify(message.annotation[i]); + if (error) + return "annotation." + error; + } + } + return null; + }; + + /** + * Creates a GeneratedCodeInfo message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.protobuf.GeneratedCodeInfo + * @static + * @param {Object.} object Plain object + * @returns {google.protobuf.GeneratedCodeInfo} GeneratedCodeInfo + */ + GeneratedCodeInfo.fromObject = function fromObject(object) { + if (object instanceof $root.google.protobuf.GeneratedCodeInfo) + return object; + var message = new $root.google.protobuf.GeneratedCodeInfo(); + if (object.annotation) { + if (!Array.isArray(object.annotation)) + throw TypeError(".google.protobuf.GeneratedCodeInfo.annotation: array expected"); + message.annotation = []; + for (var i = 0; i < object.annotation.length; ++i) { + if (typeof object.annotation[i] !== "object") + throw TypeError(".google.protobuf.GeneratedCodeInfo.annotation: object expected"); + message.annotation[i] = $root.google.protobuf.GeneratedCodeInfo.Annotation.fromObject(object.annotation[i]); + } + } + return message; + }; + + /** + * Creates a plain object from a GeneratedCodeInfo message. Also converts values to other types if specified. + * @function toObject + * @memberof google.protobuf.GeneratedCodeInfo + * @static + * @param {google.protobuf.GeneratedCodeInfo} message GeneratedCodeInfo + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + GeneratedCodeInfo.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.arrays || options.defaults) + object.annotation = []; + if (message.annotation && message.annotation.length) { + object.annotation = []; + for (var j = 0; j < message.annotation.length; ++j) + object.annotation[j] = $root.google.protobuf.GeneratedCodeInfo.Annotation.toObject(message.annotation[j], options); + } + return object; + }; + + /** + * Converts this GeneratedCodeInfo to JSON. + * @function toJSON + * @memberof google.protobuf.GeneratedCodeInfo + * @instance + * @returns {Object.} JSON object + */ + GeneratedCodeInfo.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + GeneratedCodeInfo.Annotation = (function() { + + /** + * Properties of an Annotation. + * @memberof google.protobuf.GeneratedCodeInfo + * @interface IAnnotation + * @property {Array.|null} [path] Annotation path + * @property {string|null} [sourceFile] Annotation sourceFile + * @property {number|null} [begin] Annotation begin + * @property {number|null} [end] Annotation end + */ + + /** + * Constructs a new Annotation. + * @memberof google.protobuf.GeneratedCodeInfo + * @classdesc Represents an Annotation. + * @implements IAnnotation + * @constructor + * @param {google.protobuf.GeneratedCodeInfo.IAnnotation=} [properties] Properties to set + */ + function Annotation(properties) { + this.path = []; + 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]]; + } + + /** + * Annotation path. + * @member {Array.} path + * @memberof google.protobuf.GeneratedCodeInfo.Annotation + * @instance + */ + Annotation.prototype.path = $util.emptyArray; + + /** + * Annotation sourceFile. + * @member {string} sourceFile + * @memberof google.protobuf.GeneratedCodeInfo.Annotation + * @instance + */ + Annotation.prototype.sourceFile = ""; + + /** + * Annotation begin. + * @member {number} begin + * @memberof google.protobuf.GeneratedCodeInfo.Annotation + * @instance + */ + Annotation.prototype.begin = 0; + + /** + * Annotation end. + * @member {number} end + * @memberof google.protobuf.GeneratedCodeInfo.Annotation + * @instance + */ + Annotation.prototype.end = 0; + + /** + * Creates a new Annotation instance using the specified properties. + * @function create + * @memberof google.protobuf.GeneratedCodeInfo.Annotation + * @static + * @param {google.protobuf.GeneratedCodeInfo.IAnnotation=} [properties] Properties to set + * @returns {google.protobuf.GeneratedCodeInfo.Annotation} Annotation instance + */ + Annotation.create = function create(properties) { + return new Annotation(properties); + }; + + /** + * Encodes the specified Annotation message. Does not implicitly {@link google.protobuf.GeneratedCodeInfo.Annotation.verify|verify} messages. + * @function encode + * @memberof google.protobuf.GeneratedCodeInfo.Annotation + * @static + * @param {google.protobuf.GeneratedCodeInfo.IAnnotation} message Annotation message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + Annotation.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.path != null && message.path.length) { + writer.uint32(/* id 1, wireType 2 =*/10).fork(); + for (var i = 0; i < message.path.length; ++i) + writer.int32(message.path[i]); + writer.ldelim(); + } + if (message.sourceFile != null && Object.hasOwnProperty.call(message, "sourceFile")) + writer.uint32(/* id 2, wireType 2 =*/18).string(message.sourceFile); + if (message.begin != null && Object.hasOwnProperty.call(message, "begin")) + writer.uint32(/* id 3, wireType 0 =*/24).int32(message.begin); + if (message.end != null && Object.hasOwnProperty.call(message, "end")) + writer.uint32(/* id 4, wireType 0 =*/32).int32(message.end); + return writer; + }; + + /** + * Encodes the specified Annotation message, length delimited. Does not implicitly {@link google.protobuf.GeneratedCodeInfo.Annotation.verify|verify} messages. + * @function encodeDelimited + * @memberof google.protobuf.GeneratedCodeInfo.Annotation + * @static + * @param {google.protobuf.GeneratedCodeInfo.IAnnotation} message Annotation message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + Annotation.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes an Annotation message from the specified reader or buffer. + * @function decode + * @memberof google.protobuf.GeneratedCodeInfo.Annotation + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.protobuf.GeneratedCodeInfo.Annotation} Annotation + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + Annotation.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.protobuf.GeneratedCodeInfo.Annotation(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + if (!(message.path && message.path.length)) + message.path = []; + if ((tag & 7) === 2) { + var end2 = reader.uint32() + reader.pos; + while (reader.pos < end2) + message.path.push(reader.int32()); + } else + message.path.push(reader.int32()); + break; + case 2: + message.sourceFile = reader.string(); + break; + case 3: + message.begin = reader.int32(); + break; + case 4: + message.end = reader.int32(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes an Annotation message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.protobuf.GeneratedCodeInfo.Annotation + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.protobuf.GeneratedCodeInfo.Annotation} Annotation + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + Annotation.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies an Annotation message. + * @function verify + * @memberof google.protobuf.GeneratedCodeInfo.Annotation + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + Annotation.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.path != null && message.hasOwnProperty("path")) { + if (!Array.isArray(message.path)) + return "path: array expected"; + for (var i = 0; i < message.path.length; ++i) + if (!$util.isInteger(message.path[i])) + return "path: integer[] expected"; + } + if (message.sourceFile != null && message.hasOwnProperty("sourceFile")) + if (!$util.isString(message.sourceFile)) + return "sourceFile: string expected"; + if (message.begin != null && message.hasOwnProperty("begin")) + if (!$util.isInteger(message.begin)) + return "begin: integer expected"; + if (message.end != null && message.hasOwnProperty("end")) + if (!$util.isInteger(message.end)) + return "end: integer expected"; + return null; + }; + + /** + * Creates an Annotation message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.protobuf.GeneratedCodeInfo.Annotation + * @static + * @param {Object.} object Plain object + * @returns {google.protobuf.GeneratedCodeInfo.Annotation} Annotation + */ + Annotation.fromObject = function fromObject(object) { + if (object instanceof $root.google.protobuf.GeneratedCodeInfo.Annotation) + return object; + var message = new $root.google.protobuf.GeneratedCodeInfo.Annotation(); + if (object.path) { + if (!Array.isArray(object.path)) + throw TypeError(".google.protobuf.GeneratedCodeInfo.Annotation.path: array expected"); + message.path = []; + for (var i = 0; i < object.path.length; ++i) + message.path[i] = object.path[i] | 0; + } + if (object.sourceFile != null) + message.sourceFile = String(object.sourceFile); + if (object.begin != null) + message.begin = object.begin | 0; + if (object.end != null) + message.end = object.end | 0; + return message; + }; + + /** + * Creates a plain object from an Annotation message. Also converts values to other types if specified. + * @function toObject + * @memberof google.protobuf.GeneratedCodeInfo.Annotation + * @static + * @param {google.protobuf.GeneratedCodeInfo.Annotation} message Annotation + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + Annotation.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.arrays || options.defaults) + object.path = []; + if (options.defaults) { + object.sourceFile = ""; + object.begin = 0; + object.end = 0; + } + if (message.path && message.path.length) { + object.path = []; + for (var j = 0; j < message.path.length; ++j) + object.path[j] = message.path[j]; + } + if (message.sourceFile != null && message.hasOwnProperty("sourceFile")) + object.sourceFile = message.sourceFile; + if (message.begin != null && message.hasOwnProperty("begin")) + object.begin = message.begin; + if (message.end != null && message.hasOwnProperty("end")) + object.end = message.end; + return object; + }; + + /** + * Converts this Annotation to JSON. + * @function toJSON + * @memberof google.protobuf.GeneratedCodeInfo.Annotation + * @instance + * @returns {Object.} JSON object + */ + Annotation.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return Annotation; + })(); + + return GeneratedCodeInfo; + })(); + + protobuf.Any = (function() { + + /** + * Properties of an Any. + * @memberof google.protobuf + * @interface IAny + * @property {string|null} [type_url] Any type_url + * @property {Uint8Array|null} [value] Any value + */ + + /** + * Constructs a new Any. + * @memberof google.protobuf + * @classdesc Represents an Any. + * @implements IAny + * @constructor + * @param {google.protobuf.IAny=} [properties] Properties to set + */ + function Any(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]]; + } + + /** + * Any type_url. + * @member {string} type_url + * @memberof google.protobuf.Any + * @instance + */ + Any.prototype.type_url = ""; + + /** + * Any value. + * @member {Uint8Array} value + * @memberof google.protobuf.Any + * @instance + */ + Any.prototype.value = $util.newBuffer([]); + + /** + * Creates a new Any instance using the specified properties. + * @function create + * @memberof google.protobuf.Any + * @static + * @param {google.protobuf.IAny=} [properties] Properties to set + * @returns {google.protobuf.Any} Any instance + */ + Any.create = function create(properties) { + return new Any(properties); + }; + + /** + * Encodes the specified Any message. Does not implicitly {@link google.protobuf.Any.verify|verify} messages. + * @function encode + * @memberof google.protobuf.Any + * @static + * @param {google.protobuf.IAny} message Any message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + Any.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.type_url != null && Object.hasOwnProperty.call(message, "type_url")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.type_url); + if (message.value != null && Object.hasOwnProperty.call(message, "value")) + writer.uint32(/* id 2, wireType 2 =*/18).bytes(message.value); + return writer; + }; + + /** + * Encodes the specified Any message, length delimited. Does not implicitly {@link google.protobuf.Any.verify|verify} messages. + * @function encodeDelimited + * @memberof google.protobuf.Any + * @static + * @param {google.protobuf.IAny} message Any message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + Any.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes an Any message from the specified reader or buffer. + * @function decode + * @memberof google.protobuf.Any + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.protobuf.Any} Any + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + Any.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.protobuf.Any(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.type_url = reader.string(); + break; + case 2: + message.value = reader.bytes(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes an Any message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.protobuf.Any + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.protobuf.Any} Any + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + Any.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies an Any message. + * @function verify + * @memberof google.protobuf.Any + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + Any.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.type_url != null && message.hasOwnProperty("type_url")) + if (!$util.isString(message.type_url)) + return "type_url: string expected"; + if (message.value != null && message.hasOwnProperty("value")) + if (!(message.value && typeof message.value.length === "number" || $util.isString(message.value))) + return "value: buffer expected"; + return null; + }; + + /** + * Creates an Any message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.protobuf.Any + * @static + * @param {Object.} object Plain object + * @returns {google.protobuf.Any} Any + */ + Any.fromObject = function fromObject(object) { + if (object instanceof $root.google.protobuf.Any) + return object; + var message = new $root.google.protobuf.Any(); + if (object.type_url != null) + message.type_url = String(object.type_url); + if (object.value != null) + if (typeof object.value === "string") + $util.base64.decode(object.value, message.value = $util.newBuffer($util.base64.length(object.value)), 0); + else if (object.value.length) + message.value = object.value; + return message; + }; + + /** + * Creates a plain object from an Any message. Also converts values to other types if specified. + * @function toObject + * @memberof google.protobuf.Any + * @static + * @param {google.protobuf.Any} message Any + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + Any.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.type_url = ""; + if (options.bytes === String) + object.value = ""; + else { + object.value = []; + if (options.bytes !== Array) + object.value = $util.newBuffer(object.value); + } + } + if (message.type_url != null && message.hasOwnProperty("type_url")) + object.type_url = message.type_url; + if (message.value != null && message.hasOwnProperty("value")) + object.value = options.bytes === String ? $util.base64.encode(message.value, 0, message.value.length) : options.bytes === Array ? Array.prototype.slice.call(message.value) : message.value; + return object; + }; + + /** + * Converts this Any to JSON. + * @function toJSON + * @memberof google.protobuf.Any + * @instance + * @returns {Object.} JSON object + */ + Any.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return Any; + })(); + + protobuf.Duration = (function() { + + /** + * Properties of a Duration. + * @memberof google.protobuf + * @interface IDuration + * @property {number|Long|null} [seconds] Duration seconds + * @property {number|null} [nanos] Duration nanos + */ + + /** + * Constructs a new Duration. + * @memberof google.protobuf + * @classdesc Represents a Duration. + * @implements IDuration + * @constructor + * @param {google.protobuf.IDuration=} [properties] Properties to set + */ + function Duration(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]]; + } + + /** + * Duration seconds. + * @member {number|Long} seconds + * @memberof google.protobuf.Duration + * @instance + */ + Duration.prototype.seconds = $util.Long ? $util.Long.fromBits(0,0,false) : 0; + + /** + * Duration nanos. + * @member {number} nanos + * @memberof google.protobuf.Duration + * @instance + */ + Duration.prototype.nanos = 0; + + /** + * Creates a new Duration instance using the specified properties. + * @function create + * @memberof google.protobuf.Duration + * @static + * @param {google.protobuf.IDuration=} [properties] Properties to set + * @returns {google.protobuf.Duration} Duration instance + */ + Duration.create = function create(properties) { + return new Duration(properties); + }; + + /** + * Encodes the specified Duration message. Does not implicitly {@link google.protobuf.Duration.verify|verify} messages. + * @function encode + * @memberof google.protobuf.Duration + * @static + * @param {google.protobuf.IDuration} message Duration message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + Duration.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.seconds != null && Object.hasOwnProperty.call(message, "seconds")) + writer.uint32(/* id 1, wireType 0 =*/8).int64(message.seconds); + if (message.nanos != null && Object.hasOwnProperty.call(message, "nanos")) + writer.uint32(/* id 2, wireType 0 =*/16).int32(message.nanos); + return writer; + }; + + /** + * Encodes the specified Duration message, length delimited. Does not implicitly {@link google.protobuf.Duration.verify|verify} messages. + * @function encodeDelimited + * @memberof google.protobuf.Duration + * @static + * @param {google.protobuf.IDuration} message Duration message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + Duration.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a Duration message from the specified reader or buffer. + * @function decode + * @memberof google.protobuf.Duration + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.protobuf.Duration} Duration + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + Duration.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.protobuf.Duration(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.seconds = reader.int64(); + break; + case 2: + message.nanos = reader.int32(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a Duration message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.protobuf.Duration + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.protobuf.Duration} Duration + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + Duration.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a Duration message. + * @function verify + * @memberof google.protobuf.Duration + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + Duration.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.seconds != null && message.hasOwnProperty("seconds")) + if (!$util.isInteger(message.seconds) && !(message.seconds && $util.isInteger(message.seconds.low) && $util.isInteger(message.seconds.high))) + return "seconds: integer|Long expected"; + if (message.nanos != null && message.hasOwnProperty("nanos")) + if (!$util.isInteger(message.nanos)) + return "nanos: integer expected"; + return null; + }; + + /** + * Creates a Duration message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.protobuf.Duration + * @static + * @param {Object.} object Plain object + * @returns {google.protobuf.Duration} Duration + */ + Duration.fromObject = function fromObject(object) { + if (object instanceof $root.google.protobuf.Duration) + return object; + var message = new $root.google.protobuf.Duration(); + if (object.seconds != null) + if ($util.Long) + (message.seconds = $util.Long.fromValue(object.seconds)).unsigned = false; + else if (typeof object.seconds === "string") + message.seconds = parseInt(object.seconds, 10); + else if (typeof object.seconds === "number") + message.seconds = object.seconds; + else if (typeof object.seconds === "object") + message.seconds = new $util.LongBits(object.seconds.low >>> 0, object.seconds.high >>> 0).toNumber(); + if (object.nanos != null) + message.nanos = object.nanos | 0; + return message; + }; + + /** + * Creates a plain object from a Duration message. Also converts values to other types if specified. + * @function toObject + * @memberof google.protobuf.Duration + * @static + * @param {google.protobuf.Duration} message Duration + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + Duration.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + if ($util.Long) { + var long = new $util.Long(0, 0, false); + object.seconds = options.longs === String ? long.toString() : options.longs === Number ? long.toNumber() : long; + } else + object.seconds = options.longs === String ? "0" : 0; + object.nanos = 0; + } + if (message.seconds != null && message.hasOwnProperty("seconds")) + if (typeof message.seconds === "number") + object.seconds = options.longs === String ? String(message.seconds) : message.seconds; + else + object.seconds = options.longs === String ? $util.Long.prototype.toString.call(message.seconds) : options.longs === Number ? new $util.LongBits(message.seconds.low >>> 0, message.seconds.high >>> 0).toNumber() : message.seconds; + if (message.nanos != null && message.hasOwnProperty("nanos")) + object.nanos = message.nanos; + return object; + }; + + /** + * Converts this Duration to JSON. + * @function toJSON + * @memberof google.protobuf.Duration + * @instance + * @returns {Object.} JSON object + */ + Duration.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return Duration; + })(); + + protobuf.Empty = (function() { + + /** + * Properties of an Empty. + * @memberof google.protobuf + * @interface IEmpty + */ + + /** + * Constructs a new Empty. + * @memberof google.protobuf + * @classdesc Represents an Empty. + * @implements IEmpty + * @constructor + * @param {google.protobuf.IEmpty=} [properties] Properties to set + */ + function Empty(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]]; + } + + /** + * Creates a new Empty instance using the specified properties. + * @function create + * @memberof google.protobuf.Empty + * @static + * @param {google.protobuf.IEmpty=} [properties] Properties to set + * @returns {google.protobuf.Empty} Empty instance + */ + Empty.create = function create(properties) { + return new Empty(properties); + }; + + /** + * Encodes the specified Empty message. Does not implicitly {@link google.protobuf.Empty.verify|verify} messages. + * @function encode + * @memberof google.protobuf.Empty + * @static + * @param {google.protobuf.IEmpty} message Empty message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + Empty.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + return writer; + }; + + /** + * Encodes the specified Empty message, length delimited. Does not implicitly {@link google.protobuf.Empty.verify|verify} messages. + * @function encodeDelimited + * @memberof google.protobuf.Empty + * @static + * @param {google.protobuf.IEmpty} message Empty message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + Empty.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes an Empty message from the specified reader or buffer. + * @function decode + * @memberof google.protobuf.Empty + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.protobuf.Empty} Empty + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + Empty.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.protobuf.Empty(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes an Empty message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.protobuf.Empty + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.protobuf.Empty} Empty + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + Empty.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies an Empty message. + * @function verify + * @memberof google.protobuf.Empty + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + Empty.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + return null; + }; + + /** + * Creates an Empty message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.protobuf.Empty + * @static + * @param {Object.} object Plain object + * @returns {google.protobuf.Empty} Empty + */ + Empty.fromObject = function fromObject(object) { + if (object instanceof $root.google.protobuf.Empty) + return object; + return new $root.google.protobuf.Empty(); + }; + + /** + * Creates a plain object from an Empty message. Also converts values to other types if specified. + * @function toObject + * @memberof google.protobuf.Empty + * @static + * @param {google.protobuf.Empty} message Empty + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + Empty.toObject = function toObject() { + return {}; + }; + + /** + * Converts this Empty to JSON. + * @function toJSON + * @memberof google.protobuf.Empty + * @instance + * @returns {Object.} JSON object + */ + Empty.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return Empty; + })(); + + protobuf.FieldMask = (function() { + + /** + * Properties of a FieldMask. + * @memberof google.protobuf + * @interface IFieldMask + * @property {Array.|null} [paths] FieldMask paths + */ + + /** + * Constructs a new FieldMask. + * @memberof google.protobuf + * @classdesc Represents a FieldMask. + * @implements IFieldMask + * @constructor + * @param {google.protobuf.IFieldMask=} [properties] Properties to set + */ + function FieldMask(properties) { + this.paths = []; + 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]]; + } + + /** + * FieldMask paths. + * @member {Array.} paths + * @memberof google.protobuf.FieldMask + * @instance + */ + FieldMask.prototype.paths = $util.emptyArray; + + /** + * Creates a new FieldMask instance using the specified properties. + * @function create + * @memberof google.protobuf.FieldMask + * @static + * @param {google.protobuf.IFieldMask=} [properties] Properties to set + * @returns {google.protobuf.FieldMask} FieldMask instance + */ + FieldMask.create = function create(properties) { + return new FieldMask(properties); + }; + + /** + * Encodes the specified FieldMask message. Does not implicitly {@link google.protobuf.FieldMask.verify|verify} messages. + * @function encode + * @memberof google.protobuf.FieldMask + * @static + * @param {google.protobuf.IFieldMask} message FieldMask message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + FieldMask.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.paths != null && message.paths.length) + for (var i = 0; i < message.paths.length; ++i) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.paths[i]); + return writer; + }; + + /** + * Encodes the specified FieldMask message, length delimited. Does not implicitly {@link google.protobuf.FieldMask.verify|verify} messages. + * @function encodeDelimited + * @memberof google.protobuf.FieldMask + * @static + * @param {google.protobuf.IFieldMask} message FieldMask message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + FieldMask.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a FieldMask message from the specified reader or buffer. + * @function decode + * @memberof google.protobuf.FieldMask + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.protobuf.FieldMask} FieldMask + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + FieldMask.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.protobuf.FieldMask(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + if (!(message.paths && message.paths.length)) + message.paths = []; + message.paths.push(reader.string()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a FieldMask message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.protobuf.FieldMask + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.protobuf.FieldMask} FieldMask + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + FieldMask.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a FieldMask message. + * @function verify + * @memberof google.protobuf.FieldMask + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + FieldMask.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.paths != null && message.hasOwnProperty("paths")) { + if (!Array.isArray(message.paths)) + return "paths: array expected"; + for (var i = 0; i < message.paths.length; ++i) + if (!$util.isString(message.paths[i])) + return "paths: string[] expected"; + } + return null; + }; + + /** + * Creates a FieldMask message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.protobuf.FieldMask + * @static + * @param {Object.} object Plain object + * @returns {google.protobuf.FieldMask} FieldMask + */ + FieldMask.fromObject = function fromObject(object) { + if (object instanceof $root.google.protobuf.FieldMask) + return object; + var message = new $root.google.protobuf.FieldMask(); + if (object.paths) { + if (!Array.isArray(object.paths)) + throw TypeError(".google.protobuf.FieldMask.paths: array expected"); + message.paths = []; + for (var i = 0; i < object.paths.length; ++i) + message.paths[i] = String(object.paths[i]); + } + return message; + }; + + /** + * Creates a plain object from a FieldMask message. Also converts values to other types if specified. + * @function toObject + * @memberof google.protobuf.FieldMask + * @static + * @param {google.protobuf.FieldMask} message FieldMask + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + FieldMask.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.arrays || options.defaults) + object.paths = []; + if (message.paths && message.paths.length) { + object.paths = []; + for (var j = 0; j < message.paths.length; ++j) + object.paths[j] = message.paths[j]; + } + return object; + }; + + /** + * Converts this FieldMask to JSON. + * @function toJSON + * @memberof google.protobuf.FieldMask + * @instance + * @returns {Object.} JSON object + */ + FieldMask.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return FieldMask; + })(); + + protobuf.Struct = (function() { + + /** + * Properties of a Struct. + * @memberof google.protobuf + * @interface IStruct + * @property {Object.|null} [fields] Struct fields + */ + + /** + * Constructs a new Struct. + * @memberof google.protobuf + * @classdesc Represents a Struct. + * @implements IStruct + * @constructor + * @param {google.protobuf.IStruct=} [properties] Properties to set + */ + function Struct(properties) { + this.fields = {}; + 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]]; + } + + /** + * Struct fields. + * @member {Object.} fields + * @memberof google.protobuf.Struct + * @instance + */ + Struct.prototype.fields = $util.emptyObject; + + /** + * Creates a new Struct instance using the specified properties. + * @function create + * @memberof google.protobuf.Struct + * @static + * @param {google.protobuf.IStruct=} [properties] Properties to set + * @returns {google.protobuf.Struct} Struct instance + */ + Struct.create = function create(properties) { + return new Struct(properties); + }; + + /** + * Encodes the specified Struct message. Does not implicitly {@link google.protobuf.Struct.verify|verify} messages. + * @function encode + * @memberof google.protobuf.Struct + * @static + * @param {google.protobuf.IStruct} message Struct message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + Struct.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.fields != null && Object.hasOwnProperty.call(message, "fields")) + for (var keys = Object.keys(message.fields), i = 0; i < keys.length; ++i) { + writer.uint32(/* id 1, wireType 2 =*/10).fork().uint32(/* id 1, wireType 2 =*/10).string(keys[i]); + $root.google.protobuf.Value.encode(message.fields[keys[i]], writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim().ldelim(); + } + return writer; + }; + + /** + * Encodes the specified Struct message, length delimited. Does not implicitly {@link google.protobuf.Struct.verify|verify} messages. + * @function encodeDelimited + * @memberof google.protobuf.Struct + * @static + * @param {google.protobuf.IStruct} message Struct message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + Struct.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a Struct message from the specified reader or buffer. + * @function decode + * @memberof google.protobuf.Struct + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.protobuf.Struct} Struct + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + Struct.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.protobuf.Struct(), key, value; + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + if (message.fields === $util.emptyObject) + message.fields = {}; + var end2 = reader.uint32() + reader.pos; + key = ""; + value = null; + while (reader.pos < end2) { + var tag2 = reader.uint32(); + switch (tag2 >>> 3) { + case 1: + key = reader.string(); + break; + case 2: + value = $root.google.protobuf.Value.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag2 & 7); + break; + } + } + message.fields[key] = value; + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a Struct message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.protobuf.Struct + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.protobuf.Struct} Struct + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + Struct.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a Struct message. + * @function verify + * @memberof google.protobuf.Struct + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + Struct.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.fields != null && message.hasOwnProperty("fields")) { + if (!$util.isObject(message.fields)) + return "fields: object expected"; + var key = Object.keys(message.fields); + for (var i = 0; i < key.length; ++i) { + var error = $root.google.protobuf.Value.verify(message.fields[key[i]]); + if (error) + return "fields." + error; + } + } + return null; + }; + + /** + * Creates a Struct message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.protobuf.Struct + * @static + * @param {Object.} object Plain object + * @returns {google.protobuf.Struct} Struct + */ + Struct.fromObject = function fromObject(object) { + if (object instanceof $root.google.protobuf.Struct) + return object; + var message = new $root.google.protobuf.Struct(); + if (object.fields) { + if (typeof object.fields !== "object") + throw TypeError(".google.protobuf.Struct.fields: object expected"); + message.fields = {}; + for (var keys = Object.keys(object.fields), i = 0; i < keys.length; ++i) { + if (typeof object.fields[keys[i]] !== "object") + throw TypeError(".google.protobuf.Struct.fields: object expected"); + message.fields[keys[i]] = $root.google.protobuf.Value.fromObject(object.fields[keys[i]]); + } + } + return message; + }; + + /** + * Creates a plain object from a Struct message. Also converts values to other types if specified. + * @function toObject + * @memberof google.protobuf.Struct + * @static + * @param {google.protobuf.Struct} message Struct + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + Struct.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.objects || options.defaults) + object.fields = {}; + var keys2; + if (message.fields && (keys2 = Object.keys(message.fields)).length) { + object.fields = {}; + for (var j = 0; j < keys2.length; ++j) + object.fields[keys2[j]] = $root.google.protobuf.Value.toObject(message.fields[keys2[j]], options); + } + return object; + }; + + /** + * Converts this Struct to JSON. + * @function toJSON + * @memberof google.protobuf.Struct + * @instance + * @returns {Object.} JSON object + */ + Struct.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return Struct; + })(); + + protobuf.Value = (function() { + + /** + * Properties of a Value. + * @memberof google.protobuf + * @interface IValue + * @property {google.protobuf.NullValue|null} [nullValue] Value nullValue + * @property {number|null} [numberValue] Value numberValue + * @property {string|null} [stringValue] Value stringValue + * @property {boolean|null} [boolValue] Value boolValue + * @property {google.protobuf.IStruct|null} [structValue] Value structValue + * @property {google.protobuf.IListValue|null} [listValue] Value listValue + */ + + /** + * Constructs a new Value. + * @memberof google.protobuf + * @classdesc Represents a Value. + * @implements IValue + * @constructor + * @param {google.protobuf.IValue=} [properties] Properties to set + */ + function Value(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]]; + } + + /** + * Value nullValue. + * @member {google.protobuf.NullValue|null|undefined} nullValue + * @memberof google.protobuf.Value + * @instance + */ + Value.prototype.nullValue = null; + + /** + * Value numberValue. + * @member {number|null|undefined} numberValue + * @memberof google.protobuf.Value + * @instance + */ + Value.prototype.numberValue = null; + + /** + * Value stringValue. + * @member {string|null|undefined} stringValue + * @memberof google.protobuf.Value + * @instance + */ + Value.prototype.stringValue = null; + + /** + * Value boolValue. + * @member {boolean|null|undefined} boolValue + * @memberof google.protobuf.Value + * @instance + */ + Value.prototype.boolValue = null; + + /** + * Value structValue. + * @member {google.protobuf.IStruct|null|undefined} structValue + * @memberof google.protobuf.Value + * @instance + */ + Value.prototype.structValue = null; + + /** + * Value listValue. + * @member {google.protobuf.IListValue|null|undefined} listValue + * @memberof google.protobuf.Value + * @instance + */ + Value.prototype.listValue = null; + + // OneOf field names bound to virtual getters and setters + var $oneOfFields; + + /** + * Value kind. + * @member {"nullValue"|"numberValue"|"stringValue"|"boolValue"|"structValue"|"listValue"|undefined} kind + * @memberof google.protobuf.Value + * @instance + */ + Object.defineProperty(Value.prototype, "kind", { + get: $util.oneOfGetter($oneOfFields = ["nullValue", "numberValue", "stringValue", "boolValue", "structValue", "listValue"]), + set: $util.oneOfSetter($oneOfFields) + }); + + /** + * Creates a new Value instance using the specified properties. + * @function create + * @memberof google.protobuf.Value + * @static + * @param {google.protobuf.IValue=} [properties] Properties to set + * @returns {google.protobuf.Value} Value instance + */ + Value.create = function create(properties) { + return new Value(properties); + }; + + /** + * Encodes the specified Value message. Does not implicitly {@link google.protobuf.Value.verify|verify} messages. + * @function encode + * @memberof google.protobuf.Value + * @static + * @param {google.protobuf.IValue} message Value message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + Value.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.nullValue != null && Object.hasOwnProperty.call(message, "nullValue")) + writer.uint32(/* id 1, wireType 0 =*/8).int32(message.nullValue); + if (message.numberValue != null && Object.hasOwnProperty.call(message, "numberValue")) + writer.uint32(/* id 2, wireType 1 =*/17).double(message.numberValue); + if (message.stringValue != null && Object.hasOwnProperty.call(message, "stringValue")) + writer.uint32(/* id 3, wireType 2 =*/26).string(message.stringValue); + if (message.boolValue != null && Object.hasOwnProperty.call(message, "boolValue")) + writer.uint32(/* id 4, wireType 0 =*/32).bool(message.boolValue); + if (message.structValue != null && Object.hasOwnProperty.call(message, "structValue")) + $root.google.protobuf.Struct.encode(message.structValue, writer.uint32(/* id 5, wireType 2 =*/42).fork()).ldelim(); + if (message.listValue != null && Object.hasOwnProperty.call(message, "listValue")) + $root.google.protobuf.ListValue.encode(message.listValue, writer.uint32(/* id 6, wireType 2 =*/50).fork()).ldelim(); + return writer; + }; + + /** + * Encodes the specified Value message, length delimited. Does not implicitly {@link google.protobuf.Value.verify|verify} messages. + * @function encodeDelimited + * @memberof google.protobuf.Value + * @static + * @param {google.protobuf.IValue} message Value message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + Value.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a Value message from the specified reader or buffer. + * @function decode + * @memberof google.protobuf.Value + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.protobuf.Value} Value + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + Value.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.protobuf.Value(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.nullValue = reader.int32(); + break; + case 2: + message.numberValue = reader.double(); + break; + case 3: + message.stringValue = reader.string(); + break; + case 4: + message.boolValue = reader.bool(); + break; + case 5: + message.structValue = $root.google.protobuf.Struct.decode(reader, reader.uint32()); + break; + case 6: + message.listValue = $root.google.protobuf.ListValue.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a Value message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.protobuf.Value + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.protobuf.Value} Value + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + Value.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a Value message. + * @function verify + * @memberof google.protobuf.Value + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + Value.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + var properties = {}; + if (message.nullValue != null && message.hasOwnProperty("nullValue")) { + properties.kind = 1; + switch (message.nullValue) { + default: + return "nullValue: enum value expected"; + case 0: + break; + } + } + if (message.numberValue != null && message.hasOwnProperty("numberValue")) { + if (properties.kind === 1) + return "kind: multiple values"; + properties.kind = 1; + if (typeof message.numberValue !== "number") + return "numberValue: number expected"; + } + if (message.stringValue != null && message.hasOwnProperty("stringValue")) { + if (properties.kind === 1) + return "kind: multiple values"; + properties.kind = 1; + if (!$util.isString(message.stringValue)) + return "stringValue: string expected"; + } + if (message.boolValue != null && message.hasOwnProperty("boolValue")) { + if (properties.kind === 1) + return "kind: multiple values"; + properties.kind = 1; + if (typeof message.boolValue !== "boolean") + return "boolValue: boolean expected"; + } + if (message.structValue != null && message.hasOwnProperty("structValue")) { + if (properties.kind === 1) + return "kind: multiple values"; + properties.kind = 1; + { + var error = $root.google.protobuf.Struct.verify(message.structValue); + if (error) + return "structValue." + error; + } + } + if (message.listValue != null && message.hasOwnProperty("listValue")) { + if (properties.kind === 1) + return "kind: multiple values"; + properties.kind = 1; + { + var error = $root.google.protobuf.ListValue.verify(message.listValue); + if (error) + return "listValue." + error; + } + } + return null; + }; + + /** + * Creates a Value message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.protobuf.Value + * @static + * @param {Object.} object Plain object + * @returns {google.protobuf.Value} Value + */ + Value.fromObject = function fromObject(object) { + if (object instanceof $root.google.protobuf.Value) + return object; + var message = new $root.google.protobuf.Value(); + switch (object.nullValue) { + case "NULL_VALUE": + case 0: + message.nullValue = 0; + break; + } + if (object.numberValue != null) + message.numberValue = Number(object.numberValue); + if (object.stringValue != null) + message.stringValue = String(object.stringValue); + if (object.boolValue != null) + message.boolValue = Boolean(object.boolValue); + if (object.structValue != null) { + if (typeof object.structValue !== "object") + throw TypeError(".google.protobuf.Value.structValue: object expected"); + message.structValue = $root.google.protobuf.Struct.fromObject(object.structValue); + } + if (object.listValue != null) { + if (typeof object.listValue !== "object") + throw TypeError(".google.protobuf.Value.listValue: object expected"); + message.listValue = $root.google.protobuf.ListValue.fromObject(object.listValue); + } + return message; + }; + + /** + * Creates a plain object from a Value message. Also converts values to other types if specified. + * @function toObject + * @memberof google.protobuf.Value + * @static + * @param {google.protobuf.Value} message Value + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + Value.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (message.nullValue != null && message.hasOwnProperty("nullValue")) { + object.nullValue = options.enums === String ? $root.google.protobuf.NullValue[message.nullValue] : message.nullValue; + if (options.oneofs) + object.kind = "nullValue"; + } + if (message.numberValue != null && message.hasOwnProperty("numberValue")) { + object.numberValue = options.json && !isFinite(message.numberValue) ? String(message.numberValue) : message.numberValue; + if (options.oneofs) + object.kind = "numberValue"; + } + if (message.stringValue != null && message.hasOwnProperty("stringValue")) { + object.stringValue = message.stringValue; + if (options.oneofs) + object.kind = "stringValue"; + } + if (message.boolValue != null && message.hasOwnProperty("boolValue")) { + object.boolValue = message.boolValue; + if (options.oneofs) + object.kind = "boolValue"; + } + if (message.structValue != null && message.hasOwnProperty("structValue")) { + object.structValue = $root.google.protobuf.Struct.toObject(message.structValue, options); + if (options.oneofs) + object.kind = "structValue"; + } + if (message.listValue != null && message.hasOwnProperty("listValue")) { + object.listValue = $root.google.protobuf.ListValue.toObject(message.listValue, options); + if (options.oneofs) + object.kind = "listValue"; + } + return object; + }; + + /** + * Converts this Value to JSON. + * @function toJSON + * @memberof google.protobuf.Value + * @instance + * @returns {Object.} JSON object + */ + Value.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return Value; + })(); + + /** + * NullValue enum. + * @name google.protobuf.NullValue + * @enum {number} + * @property {number} NULL_VALUE=0 NULL_VALUE value + */ + protobuf.NullValue = (function() { + var valuesById = {}, values = Object.create(valuesById); + values[valuesById[0] = "NULL_VALUE"] = 0; + return values; + })(); + + protobuf.ListValue = (function() { + + /** + * Properties of a ListValue. + * @memberof google.protobuf + * @interface IListValue + * @property {Array.|null} [values] ListValue values + */ + + /** + * Constructs a new ListValue. + * @memberof google.protobuf + * @classdesc Represents a ListValue. + * @implements IListValue + * @constructor + * @param {google.protobuf.IListValue=} [properties] Properties to set + */ + function ListValue(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]]; + } + + /** + * ListValue values. + * @member {Array.} values + * @memberof google.protobuf.ListValue + * @instance + */ + ListValue.prototype.values = $util.emptyArray; + + /** + * Creates a new ListValue instance using the specified properties. + * @function create + * @memberof google.protobuf.ListValue + * @static + * @param {google.protobuf.IListValue=} [properties] Properties to set + * @returns {google.protobuf.ListValue} ListValue instance + */ + ListValue.create = function create(properties) { + return new ListValue(properties); + }; + + /** + * Encodes the specified ListValue message. Does not implicitly {@link google.protobuf.ListValue.verify|verify} messages. + * @function encode + * @memberof google.protobuf.ListValue + * @static + * @param {google.protobuf.IListValue} message ListValue message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + ListValue.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.values != null && message.values.length) + for (var i = 0; i < message.values.length; ++i) + $root.google.protobuf.Value.encode(message.values[i], writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim(); + return writer; + }; + + /** + * Encodes the specified ListValue message, length delimited. Does not implicitly {@link google.protobuf.ListValue.verify|verify} messages. + * @function encodeDelimited + * @memberof google.protobuf.ListValue + * @static + * @param {google.protobuf.IListValue} message ListValue message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + ListValue.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a ListValue message from the specified reader or buffer. + * @function decode + * @memberof google.protobuf.ListValue + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.protobuf.ListValue} ListValue + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + ListValue.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.protobuf.ListValue(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + if (!(message.values && message.values.length)) + message.values = []; + message.values.push($root.google.protobuf.Value.decode(reader, reader.uint32())); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a ListValue message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.protobuf.ListValue + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.protobuf.ListValue} ListValue + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + ListValue.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a ListValue message. + * @function verify + * @memberof google.protobuf.ListValue + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + ListValue.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object 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) { + var error = $root.google.protobuf.Value.verify(message.values[i]); + if (error) + return "values." + error; + } + } + return null; + }; + + /** + * Creates a ListValue message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.protobuf.ListValue + * @static + * @param {Object.} object Plain object + * @returns {google.protobuf.ListValue} ListValue + */ + ListValue.fromObject = function fromObject(object) { + if (object instanceof $root.google.protobuf.ListValue) + return object; + var message = new $root.google.protobuf.ListValue(); + if (object.values) { + if (!Array.isArray(object.values)) + throw TypeError(".google.protobuf.ListValue.values: array expected"); + message.values = []; + for (var i = 0; i < object.values.length; ++i) { + if (typeof object.values[i] !== "object") + throw TypeError(".google.protobuf.ListValue.values: object expected"); + message.values[i] = $root.google.protobuf.Value.fromObject(object.values[i]); + } + } + return message; + }; + + /** + * Creates a plain object from a ListValue message. Also converts values to other types if specified. + * @function toObject + * @memberof google.protobuf.ListValue + * @static + * @param {google.protobuf.ListValue} message ListValue + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + ListValue.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.arrays || options.defaults) + object.values = []; + if (message.values && message.values.length) { + object.values = []; + for (var j = 0; j < message.values.length; ++j) + object.values[j] = $root.google.protobuf.Value.toObject(message.values[j], options); + } + return object; + }; + + /** + * Converts this ListValue to JSON. + * @function toJSON + * @memberof google.protobuf.ListValue + * @instance + * @returns {Object.} JSON object + */ + ListValue.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return ListValue; + })(); + + return protobuf; + })(); + + google.cloud = (function() { + + /** + * Namespace cloud. + * @memberof google + * @namespace + */ + var cloud = {}; + + cloud.gkehub = (function() { + + /** + * Namespace gkehub. + * @memberof google.cloud + * @namespace + */ + var gkehub = {}; + + gkehub.configmanagement = (function() { + + /** + * Namespace configmanagement. + * @memberof google.cloud.gkehub + * @namespace + */ + var configmanagement = {}; + + configmanagement.v1 = (function() { + + /** + * Namespace v1. + * @memberof google.cloud.gkehub.configmanagement + * @namespace + */ + var v1 = {}; + + /** + * DeploymentState enum. + * @name google.cloud.gkehub.configmanagement.v1.DeploymentState + * @enum {number} + * @property {number} DEPLOYMENT_STATE_UNSPECIFIED=0 DEPLOYMENT_STATE_UNSPECIFIED value + * @property {number} NOT_INSTALLED=1 NOT_INSTALLED value + * @property {number} INSTALLED=2 INSTALLED value + * @property {number} ERROR=3 ERROR value + */ + v1.DeploymentState = (function() { + var valuesById = {}, values = Object.create(valuesById); + values[valuesById[0] = "DEPLOYMENT_STATE_UNSPECIFIED"] = 0; + values[valuesById[1] = "NOT_INSTALLED"] = 1; + values[valuesById[2] = "INSTALLED"] = 2; + values[valuesById[3] = "ERROR"] = 3; + return values; + })(); + + v1.MembershipState = (function() { + + /** + * Properties of a MembershipState. + * @memberof google.cloud.gkehub.configmanagement.v1 + * @interface IMembershipState + * @property {string|null} [clusterName] MembershipState clusterName + * @property {google.cloud.gkehub.configmanagement.v1.IMembershipSpec|null} [membershipSpec] MembershipState membershipSpec + * @property {google.cloud.gkehub.configmanagement.v1.IOperatorState|null} [operatorState] MembershipState operatorState + * @property {google.cloud.gkehub.configmanagement.v1.IConfigSyncState|null} [configSyncState] MembershipState configSyncState + * @property {google.cloud.gkehub.configmanagement.v1.IPolicyControllerState|null} [policyControllerState] MembershipState policyControllerState + * @property {google.cloud.gkehub.configmanagement.v1.IHierarchyControllerState|null} [hierarchyControllerState] MembershipState hierarchyControllerState + */ + + /** + * Constructs a new MembershipState. + * @memberof google.cloud.gkehub.configmanagement.v1 + * @classdesc Represents a MembershipState. + * @implements IMembershipState + * @constructor + * @param {google.cloud.gkehub.configmanagement.v1.IMembershipState=} [properties] Properties to set + */ + function MembershipState(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]]; + } + + /** + * MembershipState clusterName. + * @member {string} clusterName + * @memberof google.cloud.gkehub.configmanagement.v1.MembershipState + * @instance + */ + MembershipState.prototype.clusterName = ""; + + /** + * MembershipState membershipSpec. + * @member {google.cloud.gkehub.configmanagement.v1.IMembershipSpec|null|undefined} membershipSpec + * @memberof google.cloud.gkehub.configmanagement.v1.MembershipState + * @instance + */ + MembershipState.prototype.membershipSpec = null; + + /** + * MembershipState operatorState. + * @member {google.cloud.gkehub.configmanagement.v1.IOperatorState|null|undefined} operatorState + * @memberof google.cloud.gkehub.configmanagement.v1.MembershipState + * @instance + */ + MembershipState.prototype.operatorState = null; + + /** + * MembershipState configSyncState. + * @member {google.cloud.gkehub.configmanagement.v1.IConfigSyncState|null|undefined} configSyncState + * @memberof google.cloud.gkehub.configmanagement.v1.MembershipState + * @instance + */ + MembershipState.prototype.configSyncState = null; + + /** + * MembershipState policyControllerState. + * @member {google.cloud.gkehub.configmanagement.v1.IPolicyControllerState|null|undefined} policyControllerState + * @memberof google.cloud.gkehub.configmanagement.v1.MembershipState + * @instance + */ + MembershipState.prototype.policyControllerState = null; + + /** + * MembershipState hierarchyControllerState. + * @member {google.cloud.gkehub.configmanagement.v1.IHierarchyControllerState|null|undefined} hierarchyControllerState + * @memberof google.cloud.gkehub.configmanagement.v1.MembershipState + * @instance + */ + MembershipState.prototype.hierarchyControllerState = null; + + /** + * Creates a new MembershipState instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.configmanagement.v1.MembershipState + * @static + * @param {google.cloud.gkehub.configmanagement.v1.IMembershipState=} [properties] Properties to set + * @returns {google.cloud.gkehub.configmanagement.v1.MembershipState} MembershipState instance + */ + MembershipState.create = function create(properties) { + return new MembershipState(properties); + }; + + /** + * Encodes the specified MembershipState message. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1.MembershipState.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.configmanagement.v1.MembershipState + * @static + * @param {google.cloud.gkehub.configmanagement.v1.IMembershipState} message MembershipState message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + MembershipState.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.clusterName != null && Object.hasOwnProperty.call(message, "clusterName")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.clusterName); + if (message.membershipSpec != null && Object.hasOwnProperty.call(message, "membershipSpec")) + $root.google.cloud.gkehub.configmanagement.v1.MembershipSpec.encode(message.membershipSpec, writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim(); + if (message.operatorState != null && Object.hasOwnProperty.call(message, "operatorState")) + $root.google.cloud.gkehub.configmanagement.v1.OperatorState.encode(message.operatorState, writer.uint32(/* id 3, wireType 2 =*/26).fork()).ldelim(); + if (message.configSyncState != null && Object.hasOwnProperty.call(message, "configSyncState")) + $root.google.cloud.gkehub.configmanagement.v1.ConfigSyncState.encode(message.configSyncState, writer.uint32(/* id 4, wireType 2 =*/34).fork()).ldelim(); + if (message.policyControllerState != null && Object.hasOwnProperty.call(message, "policyControllerState")) + $root.google.cloud.gkehub.configmanagement.v1.PolicyControllerState.encode(message.policyControllerState, writer.uint32(/* id 5, wireType 2 =*/42).fork()).ldelim(); + if (message.hierarchyControllerState != null && Object.hasOwnProperty.call(message, "hierarchyControllerState")) + $root.google.cloud.gkehub.configmanagement.v1.HierarchyControllerState.encode(message.hierarchyControllerState, writer.uint32(/* id 7, wireType 2 =*/58).fork()).ldelim(); + return writer; + }; + + /** + * Encodes the specified MembershipState message, length delimited. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1.MembershipState.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.configmanagement.v1.MembershipState + * @static + * @param {google.cloud.gkehub.configmanagement.v1.IMembershipState} message MembershipState message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + MembershipState.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a MembershipState message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.configmanagement.v1.MembershipState + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.configmanagement.v1.MembershipState} MembershipState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + MembershipState.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.configmanagement.v1.MembershipState(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.clusterName = reader.string(); + break; + case 2: + message.membershipSpec = $root.google.cloud.gkehub.configmanagement.v1.MembershipSpec.decode(reader, reader.uint32()); + break; + case 3: + message.operatorState = $root.google.cloud.gkehub.configmanagement.v1.OperatorState.decode(reader, reader.uint32()); + break; + case 4: + message.configSyncState = $root.google.cloud.gkehub.configmanagement.v1.ConfigSyncState.decode(reader, reader.uint32()); + break; + case 5: + message.policyControllerState = $root.google.cloud.gkehub.configmanagement.v1.PolicyControllerState.decode(reader, reader.uint32()); + break; + case 7: + message.hierarchyControllerState = $root.google.cloud.gkehub.configmanagement.v1.HierarchyControllerState.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a MembershipState message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.configmanagement.v1.MembershipState + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.configmanagement.v1.MembershipState} MembershipState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + MembershipState.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a MembershipState message. + * @function verify + * @memberof google.cloud.gkehub.configmanagement.v1.MembershipState + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + MembershipState.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.clusterName != null && message.hasOwnProperty("clusterName")) + if (!$util.isString(message.clusterName)) + return "clusterName: string expected"; + if (message.membershipSpec != null && message.hasOwnProperty("membershipSpec")) { + var error = $root.google.cloud.gkehub.configmanagement.v1.MembershipSpec.verify(message.membershipSpec); + if (error) + return "membershipSpec." + error; + } + if (message.operatorState != null && message.hasOwnProperty("operatorState")) { + var error = $root.google.cloud.gkehub.configmanagement.v1.OperatorState.verify(message.operatorState); + if (error) + return "operatorState." + error; + } + if (message.configSyncState != null && message.hasOwnProperty("configSyncState")) { + var error = $root.google.cloud.gkehub.configmanagement.v1.ConfigSyncState.verify(message.configSyncState); + if (error) + return "configSyncState." + error; + } + if (message.policyControllerState != null && message.hasOwnProperty("policyControllerState")) { + var error = $root.google.cloud.gkehub.configmanagement.v1.PolicyControllerState.verify(message.policyControllerState); + if (error) + return "policyControllerState." + error; + } + if (message.hierarchyControllerState != null && message.hasOwnProperty("hierarchyControllerState")) { + var error = $root.google.cloud.gkehub.configmanagement.v1.HierarchyControllerState.verify(message.hierarchyControllerState); + if (error) + return "hierarchyControllerState." + error; + } + return null; + }; + + /** + * Creates a MembershipState message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.configmanagement.v1.MembershipState + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.configmanagement.v1.MembershipState} MembershipState + */ + MembershipState.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.configmanagement.v1.MembershipState) + return object; + var message = new $root.google.cloud.gkehub.configmanagement.v1.MembershipState(); + if (object.clusterName != null) + message.clusterName = String(object.clusterName); + if (object.membershipSpec != null) { + if (typeof object.membershipSpec !== "object") + throw TypeError(".google.cloud.gkehub.configmanagement.v1.MembershipState.membershipSpec: object expected"); + message.membershipSpec = $root.google.cloud.gkehub.configmanagement.v1.MembershipSpec.fromObject(object.membershipSpec); + } + if (object.operatorState != null) { + if (typeof object.operatorState !== "object") + throw TypeError(".google.cloud.gkehub.configmanagement.v1.MembershipState.operatorState: object expected"); + message.operatorState = $root.google.cloud.gkehub.configmanagement.v1.OperatorState.fromObject(object.operatorState); + } + if (object.configSyncState != null) { + if (typeof object.configSyncState !== "object") + throw TypeError(".google.cloud.gkehub.configmanagement.v1.MembershipState.configSyncState: object expected"); + message.configSyncState = $root.google.cloud.gkehub.configmanagement.v1.ConfigSyncState.fromObject(object.configSyncState); + } + if (object.policyControllerState != null) { + if (typeof object.policyControllerState !== "object") + throw TypeError(".google.cloud.gkehub.configmanagement.v1.MembershipState.policyControllerState: object expected"); + message.policyControllerState = $root.google.cloud.gkehub.configmanagement.v1.PolicyControllerState.fromObject(object.policyControllerState); + } + if (object.hierarchyControllerState != null) { + if (typeof object.hierarchyControllerState !== "object") + throw TypeError(".google.cloud.gkehub.configmanagement.v1.MembershipState.hierarchyControllerState: object expected"); + message.hierarchyControllerState = $root.google.cloud.gkehub.configmanagement.v1.HierarchyControllerState.fromObject(object.hierarchyControllerState); + } + return message; + }; + + /** + * Creates a plain object from a MembershipState message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.configmanagement.v1.MembershipState + * @static + * @param {google.cloud.gkehub.configmanagement.v1.MembershipState} message MembershipState + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + MembershipState.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.clusterName = ""; + object.membershipSpec = null; + object.operatorState = null; + object.configSyncState = null; + object.policyControllerState = null; + object.hierarchyControllerState = null; + } + if (message.clusterName != null && message.hasOwnProperty("clusterName")) + object.clusterName = message.clusterName; + if (message.membershipSpec != null && message.hasOwnProperty("membershipSpec")) + object.membershipSpec = $root.google.cloud.gkehub.configmanagement.v1.MembershipSpec.toObject(message.membershipSpec, options); + if (message.operatorState != null && message.hasOwnProperty("operatorState")) + object.operatorState = $root.google.cloud.gkehub.configmanagement.v1.OperatorState.toObject(message.operatorState, options); + if (message.configSyncState != null && message.hasOwnProperty("configSyncState")) + object.configSyncState = $root.google.cloud.gkehub.configmanagement.v1.ConfigSyncState.toObject(message.configSyncState, options); + if (message.policyControllerState != null && message.hasOwnProperty("policyControllerState")) + object.policyControllerState = $root.google.cloud.gkehub.configmanagement.v1.PolicyControllerState.toObject(message.policyControllerState, options); + if (message.hierarchyControllerState != null && message.hasOwnProperty("hierarchyControllerState")) + object.hierarchyControllerState = $root.google.cloud.gkehub.configmanagement.v1.HierarchyControllerState.toObject(message.hierarchyControllerState, options); + return object; + }; + + /** + * Converts this MembershipState to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.configmanagement.v1.MembershipState + * @instance + * @returns {Object.} JSON object + */ + MembershipState.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return MembershipState; + })(); + + v1.MembershipSpec = (function() { + + /** + * Properties of a MembershipSpec. + * @memberof google.cloud.gkehub.configmanagement.v1 + * @interface IMembershipSpec + * @property {google.cloud.gkehub.configmanagement.v1.IConfigSync|null} [configSync] MembershipSpec configSync + * @property {google.cloud.gkehub.configmanagement.v1.IPolicyController|null} [policyController] MembershipSpec policyController + * @property {google.cloud.gkehub.configmanagement.v1.IHierarchyControllerConfig|null} [hierarchyController] MembershipSpec hierarchyController + * @property {string|null} [version] MembershipSpec version + */ + + /** + * Constructs a new MembershipSpec. + * @memberof google.cloud.gkehub.configmanagement.v1 + * @classdesc Represents a MembershipSpec. + * @implements IMembershipSpec + * @constructor + * @param {google.cloud.gkehub.configmanagement.v1.IMembershipSpec=} [properties] Properties to set + */ + function MembershipSpec(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]]; + } + + /** + * MembershipSpec configSync. + * @member {google.cloud.gkehub.configmanagement.v1.IConfigSync|null|undefined} configSync + * @memberof google.cloud.gkehub.configmanagement.v1.MembershipSpec + * @instance + */ + MembershipSpec.prototype.configSync = null; + + /** + * MembershipSpec policyController. + * @member {google.cloud.gkehub.configmanagement.v1.IPolicyController|null|undefined} policyController + * @memberof google.cloud.gkehub.configmanagement.v1.MembershipSpec + * @instance + */ + MembershipSpec.prototype.policyController = null; + + /** + * MembershipSpec hierarchyController. + * @member {google.cloud.gkehub.configmanagement.v1.IHierarchyControllerConfig|null|undefined} hierarchyController + * @memberof google.cloud.gkehub.configmanagement.v1.MembershipSpec + * @instance + */ + MembershipSpec.prototype.hierarchyController = null; + + /** + * MembershipSpec version. + * @member {string} version + * @memberof google.cloud.gkehub.configmanagement.v1.MembershipSpec + * @instance + */ + MembershipSpec.prototype.version = ""; + + /** + * Creates a new MembershipSpec instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.configmanagement.v1.MembershipSpec + * @static + * @param {google.cloud.gkehub.configmanagement.v1.IMembershipSpec=} [properties] Properties to set + * @returns {google.cloud.gkehub.configmanagement.v1.MembershipSpec} MembershipSpec instance + */ + MembershipSpec.create = function create(properties) { + return new MembershipSpec(properties); + }; + + /** + * Encodes the specified MembershipSpec message. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1.MembershipSpec.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.configmanagement.v1.MembershipSpec + * @static + * @param {google.cloud.gkehub.configmanagement.v1.IMembershipSpec} message MembershipSpec message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + MembershipSpec.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.configSync != null && Object.hasOwnProperty.call(message, "configSync")) + $root.google.cloud.gkehub.configmanagement.v1.ConfigSync.encode(message.configSync, writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim(); + if (message.policyController != null && Object.hasOwnProperty.call(message, "policyController")) + $root.google.cloud.gkehub.configmanagement.v1.PolicyController.encode(message.policyController, writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim(); + if (message.hierarchyController != null && Object.hasOwnProperty.call(message, "hierarchyController")) + $root.google.cloud.gkehub.configmanagement.v1.HierarchyControllerConfig.encode(message.hierarchyController, writer.uint32(/* id 4, wireType 2 =*/34).fork()).ldelim(); + if (message.version != null && Object.hasOwnProperty.call(message, "version")) + writer.uint32(/* id 10, wireType 2 =*/82).string(message.version); + return writer; + }; + + /** + * Encodes the specified MembershipSpec message, length delimited. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1.MembershipSpec.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.configmanagement.v1.MembershipSpec + * @static + * @param {google.cloud.gkehub.configmanagement.v1.IMembershipSpec} message MembershipSpec message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + MembershipSpec.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a MembershipSpec message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.configmanagement.v1.MembershipSpec + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.configmanagement.v1.MembershipSpec} MembershipSpec + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + MembershipSpec.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.configmanagement.v1.MembershipSpec(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.configSync = $root.google.cloud.gkehub.configmanagement.v1.ConfigSync.decode(reader, reader.uint32()); + break; + case 2: + message.policyController = $root.google.cloud.gkehub.configmanagement.v1.PolicyController.decode(reader, reader.uint32()); + break; + case 4: + message.hierarchyController = $root.google.cloud.gkehub.configmanagement.v1.HierarchyControllerConfig.decode(reader, reader.uint32()); + break; + case 10: + message.version = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a MembershipSpec message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.configmanagement.v1.MembershipSpec + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.configmanagement.v1.MembershipSpec} MembershipSpec + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + MembershipSpec.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a MembershipSpec message. + * @function verify + * @memberof google.cloud.gkehub.configmanagement.v1.MembershipSpec + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + MembershipSpec.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.configSync != null && message.hasOwnProperty("configSync")) { + var error = $root.google.cloud.gkehub.configmanagement.v1.ConfigSync.verify(message.configSync); + if (error) + return "configSync." + error; + } + if (message.policyController != null && message.hasOwnProperty("policyController")) { + var error = $root.google.cloud.gkehub.configmanagement.v1.PolicyController.verify(message.policyController); + if (error) + return "policyController." + error; + } + if (message.hierarchyController != null && message.hasOwnProperty("hierarchyController")) { + var error = $root.google.cloud.gkehub.configmanagement.v1.HierarchyControllerConfig.verify(message.hierarchyController); + if (error) + return "hierarchyController." + error; + } + if (message.version != null && message.hasOwnProperty("version")) + if (!$util.isString(message.version)) + return "version: string expected"; + return null; + }; + + /** + * Creates a MembershipSpec message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.configmanagement.v1.MembershipSpec + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.configmanagement.v1.MembershipSpec} MembershipSpec + */ + MembershipSpec.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.configmanagement.v1.MembershipSpec) + return object; + var message = new $root.google.cloud.gkehub.configmanagement.v1.MembershipSpec(); + if (object.configSync != null) { + if (typeof object.configSync !== "object") + throw TypeError(".google.cloud.gkehub.configmanagement.v1.MembershipSpec.configSync: object expected"); + message.configSync = $root.google.cloud.gkehub.configmanagement.v1.ConfigSync.fromObject(object.configSync); + } + if (object.policyController != null) { + if (typeof object.policyController !== "object") + throw TypeError(".google.cloud.gkehub.configmanagement.v1.MembershipSpec.policyController: object expected"); + message.policyController = $root.google.cloud.gkehub.configmanagement.v1.PolicyController.fromObject(object.policyController); + } + if (object.hierarchyController != null) { + if (typeof object.hierarchyController !== "object") + throw TypeError(".google.cloud.gkehub.configmanagement.v1.MembershipSpec.hierarchyController: object expected"); + message.hierarchyController = $root.google.cloud.gkehub.configmanagement.v1.HierarchyControllerConfig.fromObject(object.hierarchyController); + } + if (object.version != null) + message.version = String(object.version); + return message; + }; + + /** + * Creates a plain object from a MembershipSpec message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.configmanagement.v1.MembershipSpec + * @static + * @param {google.cloud.gkehub.configmanagement.v1.MembershipSpec} message MembershipSpec + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + MembershipSpec.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.configSync = null; + object.policyController = null; + object.hierarchyController = null; + object.version = ""; + } + if (message.configSync != null && message.hasOwnProperty("configSync")) + object.configSync = $root.google.cloud.gkehub.configmanagement.v1.ConfigSync.toObject(message.configSync, options); + if (message.policyController != null && message.hasOwnProperty("policyController")) + object.policyController = $root.google.cloud.gkehub.configmanagement.v1.PolicyController.toObject(message.policyController, options); + if (message.hierarchyController != null && message.hasOwnProperty("hierarchyController")) + object.hierarchyController = $root.google.cloud.gkehub.configmanagement.v1.HierarchyControllerConfig.toObject(message.hierarchyController, options); + if (message.version != null && message.hasOwnProperty("version")) + object.version = message.version; + return object; + }; + + /** + * Converts this MembershipSpec to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.configmanagement.v1.MembershipSpec + * @instance + * @returns {Object.} JSON object + */ + MembershipSpec.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return MembershipSpec; + })(); + + v1.ConfigSync = (function() { + + /** + * Properties of a ConfigSync. + * @memberof google.cloud.gkehub.configmanagement.v1 + * @interface IConfigSync + * @property {google.cloud.gkehub.configmanagement.v1.IGitConfig|null} [git] ConfigSync git + * @property {string|null} [sourceFormat] ConfigSync sourceFormat + */ + + /** + * Constructs a new ConfigSync. + * @memberof google.cloud.gkehub.configmanagement.v1 + * @classdesc Represents a ConfigSync. + * @implements IConfigSync + * @constructor + * @param {google.cloud.gkehub.configmanagement.v1.IConfigSync=} [properties] Properties to set + */ + function ConfigSync(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]]; + } + + /** + * ConfigSync git. + * @member {google.cloud.gkehub.configmanagement.v1.IGitConfig|null|undefined} git + * @memberof google.cloud.gkehub.configmanagement.v1.ConfigSync + * @instance + */ + ConfigSync.prototype.git = null; + + /** + * ConfigSync sourceFormat. + * @member {string} sourceFormat + * @memberof google.cloud.gkehub.configmanagement.v1.ConfigSync + * @instance + */ + ConfigSync.prototype.sourceFormat = ""; + + /** + * Creates a new ConfigSync instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.configmanagement.v1.ConfigSync + * @static + * @param {google.cloud.gkehub.configmanagement.v1.IConfigSync=} [properties] Properties to set + * @returns {google.cloud.gkehub.configmanagement.v1.ConfigSync} ConfigSync instance + */ + ConfigSync.create = function create(properties) { + return new ConfigSync(properties); + }; + + /** + * Encodes the specified ConfigSync message. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1.ConfigSync.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.configmanagement.v1.ConfigSync + * @static + * @param {google.cloud.gkehub.configmanagement.v1.IConfigSync} message ConfigSync message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + ConfigSync.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.git != null && Object.hasOwnProperty.call(message, "git")) + $root.google.cloud.gkehub.configmanagement.v1.GitConfig.encode(message.git, writer.uint32(/* id 7, wireType 2 =*/58).fork()).ldelim(); + if (message.sourceFormat != null && Object.hasOwnProperty.call(message, "sourceFormat")) + writer.uint32(/* id 8, wireType 2 =*/66).string(message.sourceFormat); + return writer; + }; + + /** + * Encodes the specified ConfigSync message, length delimited. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1.ConfigSync.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.configmanagement.v1.ConfigSync + * @static + * @param {google.cloud.gkehub.configmanagement.v1.IConfigSync} message ConfigSync message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + ConfigSync.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a ConfigSync message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.configmanagement.v1.ConfigSync + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.configmanagement.v1.ConfigSync} ConfigSync + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + ConfigSync.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.configmanagement.v1.ConfigSync(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 7: + message.git = $root.google.cloud.gkehub.configmanagement.v1.GitConfig.decode(reader, reader.uint32()); + break; + case 8: + message.sourceFormat = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a ConfigSync message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.configmanagement.v1.ConfigSync + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.configmanagement.v1.ConfigSync} ConfigSync + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + ConfigSync.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a ConfigSync message. + * @function verify + * @memberof google.cloud.gkehub.configmanagement.v1.ConfigSync + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + ConfigSync.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.git != null && message.hasOwnProperty("git")) { + var error = $root.google.cloud.gkehub.configmanagement.v1.GitConfig.verify(message.git); + if (error) + return "git." + error; + } + if (message.sourceFormat != null && message.hasOwnProperty("sourceFormat")) + if (!$util.isString(message.sourceFormat)) + return "sourceFormat: string expected"; + return null; + }; + + /** + * Creates a ConfigSync message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.configmanagement.v1.ConfigSync + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.configmanagement.v1.ConfigSync} ConfigSync + */ + ConfigSync.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.configmanagement.v1.ConfigSync) + return object; + var message = new $root.google.cloud.gkehub.configmanagement.v1.ConfigSync(); + if (object.git != null) { + if (typeof object.git !== "object") + throw TypeError(".google.cloud.gkehub.configmanagement.v1.ConfigSync.git: object expected"); + message.git = $root.google.cloud.gkehub.configmanagement.v1.GitConfig.fromObject(object.git); + } + if (object.sourceFormat != null) + message.sourceFormat = String(object.sourceFormat); + return message; + }; + + /** + * Creates a plain object from a ConfigSync message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.configmanagement.v1.ConfigSync + * @static + * @param {google.cloud.gkehub.configmanagement.v1.ConfigSync} message ConfigSync + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + ConfigSync.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.git = null; + object.sourceFormat = ""; + } + if (message.git != null && message.hasOwnProperty("git")) + object.git = $root.google.cloud.gkehub.configmanagement.v1.GitConfig.toObject(message.git, options); + if (message.sourceFormat != null && message.hasOwnProperty("sourceFormat")) + object.sourceFormat = message.sourceFormat; + return object; + }; + + /** + * Converts this ConfigSync to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.configmanagement.v1.ConfigSync + * @instance + * @returns {Object.} JSON object + */ + ConfigSync.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return ConfigSync; + })(); + + v1.GitConfig = (function() { + + /** + * Properties of a GitConfig. + * @memberof google.cloud.gkehub.configmanagement.v1 + * @interface IGitConfig + * @property {string|null} [syncRepo] GitConfig syncRepo + * @property {string|null} [syncBranch] GitConfig syncBranch + * @property {string|null} [policyDir] GitConfig policyDir + * @property {number|Long|null} [syncWaitSecs] GitConfig syncWaitSecs + * @property {string|null} [syncRev] GitConfig syncRev + * @property {string|null} [secretType] GitConfig secretType + * @property {string|null} [httpsProxy] GitConfig httpsProxy + * @property {string|null} [gcpServiceAccountEmail] GitConfig gcpServiceAccountEmail + */ + + /** + * Constructs a new GitConfig. + * @memberof google.cloud.gkehub.configmanagement.v1 + * @classdesc Represents a GitConfig. + * @implements IGitConfig + * @constructor + * @param {google.cloud.gkehub.configmanagement.v1.IGitConfig=} [properties] Properties to set + */ + function GitConfig(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]]; + } + + /** + * GitConfig syncRepo. + * @member {string} syncRepo + * @memberof google.cloud.gkehub.configmanagement.v1.GitConfig + * @instance + */ + GitConfig.prototype.syncRepo = ""; + + /** + * GitConfig syncBranch. + * @member {string} syncBranch + * @memberof google.cloud.gkehub.configmanagement.v1.GitConfig + * @instance + */ + GitConfig.prototype.syncBranch = ""; + + /** + * GitConfig policyDir. + * @member {string} policyDir + * @memberof google.cloud.gkehub.configmanagement.v1.GitConfig + * @instance + */ + GitConfig.prototype.policyDir = ""; + + /** + * GitConfig syncWaitSecs. + * @member {number|Long} syncWaitSecs + * @memberof google.cloud.gkehub.configmanagement.v1.GitConfig + * @instance + */ + GitConfig.prototype.syncWaitSecs = $util.Long ? $util.Long.fromBits(0,0,false) : 0; + + /** + * GitConfig syncRev. + * @member {string} syncRev + * @memberof google.cloud.gkehub.configmanagement.v1.GitConfig + * @instance + */ + GitConfig.prototype.syncRev = ""; + + /** + * GitConfig secretType. + * @member {string} secretType + * @memberof google.cloud.gkehub.configmanagement.v1.GitConfig + * @instance + */ + GitConfig.prototype.secretType = ""; + + /** + * GitConfig httpsProxy. + * @member {string} httpsProxy + * @memberof google.cloud.gkehub.configmanagement.v1.GitConfig + * @instance + */ + GitConfig.prototype.httpsProxy = ""; + + /** + * GitConfig gcpServiceAccountEmail. + * @member {string} gcpServiceAccountEmail + * @memberof google.cloud.gkehub.configmanagement.v1.GitConfig + * @instance + */ + GitConfig.prototype.gcpServiceAccountEmail = ""; + + /** + * Creates a new GitConfig instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.configmanagement.v1.GitConfig + * @static + * @param {google.cloud.gkehub.configmanagement.v1.IGitConfig=} [properties] Properties to set + * @returns {google.cloud.gkehub.configmanagement.v1.GitConfig} GitConfig instance + */ + GitConfig.create = function create(properties) { + return new GitConfig(properties); + }; + + /** + * Encodes the specified GitConfig message. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1.GitConfig.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.configmanagement.v1.GitConfig + * @static + * @param {google.cloud.gkehub.configmanagement.v1.IGitConfig} message GitConfig message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + GitConfig.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.syncRepo != null && Object.hasOwnProperty.call(message, "syncRepo")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.syncRepo); + if (message.syncBranch != null && Object.hasOwnProperty.call(message, "syncBranch")) + writer.uint32(/* id 2, wireType 2 =*/18).string(message.syncBranch); + if (message.policyDir != null && Object.hasOwnProperty.call(message, "policyDir")) + writer.uint32(/* id 3, wireType 2 =*/26).string(message.policyDir); + if (message.syncWaitSecs != null && Object.hasOwnProperty.call(message, "syncWaitSecs")) + writer.uint32(/* id 4, wireType 0 =*/32).int64(message.syncWaitSecs); + if (message.syncRev != null && Object.hasOwnProperty.call(message, "syncRev")) + writer.uint32(/* id 5, wireType 2 =*/42).string(message.syncRev); + if (message.secretType != null && Object.hasOwnProperty.call(message, "secretType")) + writer.uint32(/* id 6, wireType 2 =*/50).string(message.secretType); + if (message.httpsProxy != null && Object.hasOwnProperty.call(message, "httpsProxy")) + writer.uint32(/* id 7, wireType 2 =*/58).string(message.httpsProxy); + if (message.gcpServiceAccountEmail != null && Object.hasOwnProperty.call(message, "gcpServiceAccountEmail")) + writer.uint32(/* id 8, wireType 2 =*/66).string(message.gcpServiceAccountEmail); + return writer; + }; + + /** + * Encodes the specified GitConfig message, length delimited. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1.GitConfig.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.configmanagement.v1.GitConfig + * @static + * @param {google.cloud.gkehub.configmanagement.v1.IGitConfig} message GitConfig message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + GitConfig.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a GitConfig message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.configmanagement.v1.GitConfig + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.configmanagement.v1.GitConfig} GitConfig + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + GitConfig.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.configmanagement.v1.GitConfig(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.syncRepo = reader.string(); + break; + case 2: + message.syncBranch = reader.string(); + break; + case 3: + message.policyDir = reader.string(); + break; + case 4: + message.syncWaitSecs = reader.int64(); + break; + case 5: + message.syncRev = reader.string(); + break; + case 6: + message.secretType = reader.string(); + break; + case 7: + message.httpsProxy = reader.string(); + break; + case 8: + message.gcpServiceAccountEmail = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a GitConfig message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.configmanagement.v1.GitConfig + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.configmanagement.v1.GitConfig} GitConfig + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + GitConfig.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a GitConfig message. + * @function verify + * @memberof google.cloud.gkehub.configmanagement.v1.GitConfig + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + GitConfig.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.syncRepo != null && message.hasOwnProperty("syncRepo")) + if (!$util.isString(message.syncRepo)) + return "syncRepo: string expected"; + if (message.syncBranch != null && message.hasOwnProperty("syncBranch")) + if (!$util.isString(message.syncBranch)) + return "syncBranch: string expected"; + if (message.policyDir != null && message.hasOwnProperty("policyDir")) + if (!$util.isString(message.policyDir)) + return "policyDir: string expected"; + if (message.syncWaitSecs != null && message.hasOwnProperty("syncWaitSecs")) + if (!$util.isInteger(message.syncWaitSecs) && !(message.syncWaitSecs && $util.isInteger(message.syncWaitSecs.low) && $util.isInteger(message.syncWaitSecs.high))) + return "syncWaitSecs: integer|Long expected"; + if (message.syncRev != null && message.hasOwnProperty("syncRev")) + if (!$util.isString(message.syncRev)) + return "syncRev: string expected"; + if (message.secretType != null && message.hasOwnProperty("secretType")) + if (!$util.isString(message.secretType)) + return "secretType: string expected"; + if (message.httpsProxy != null && message.hasOwnProperty("httpsProxy")) + if (!$util.isString(message.httpsProxy)) + return "httpsProxy: string expected"; + if (message.gcpServiceAccountEmail != null && message.hasOwnProperty("gcpServiceAccountEmail")) + if (!$util.isString(message.gcpServiceAccountEmail)) + return "gcpServiceAccountEmail: string expected"; + return null; + }; + + /** + * Creates a GitConfig message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.configmanagement.v1.GitConfig + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.configmanagement.v1.GitConfig} GitConfig + */ + GitConfig.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.configmanagement.v1.GitConfig) + return object; + var message = new $root.google.cloud.gkehub.configmanagement.v1.GitConfig(); + if (object.syncRepo != null) + message.syncRepo = String(object.syncRepo); + if (object.syncBranch != null) + message.syncBranch = String(object.syncBranch); + if (object.policyDir != null) + message.policyDir = String(object.policyDir); + if (object.syncWaitSecs != null) + if ($util.Long) + (message.syncWaitSecs = $util.Long.fromValue(object.syncWaitSecs)).unsigned = false; + else if (typeof object.syncWaitSecs === "string") + message.syncWaitSecs = parseInt(object.syncWaitSecs, 10); + else if (typeof object.syncWaitSecs === "number") + message.syncWaitSecs = object.syncWaitSecs; + else if (typeof object.syncWaitSecs === "object") + message.syncWaitSecs = new $util.LongBits(object.syncWaitSecs.low >>> 0, object.syncWaitSecs.high >>> 0).toNumber(); + if (object.syncRev != null) + message.syncRev = String(object.syncRev); + if (object.secretType != null) + message.secretType = String(object.secretType); + if (object.httpsProxy != null) + message.httpsProxy = String(object.httpsProxy); + if (object.gcpServiceAccountEmail != null) + message.gcpServiceAccountEmail = String(object.gcpServiceAccountEmail); + return message; + }; + + /** + * Creates a plain object from a GitConfig message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.configmanagement.v1.GitConfig + * @static + * @param {google.cloud.gkehub.configmanagement.v1.GitConfig} message GitConfig + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + GitConfig.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.syncRepo = ""; + object.syncBranch = ""; + object.policyDir = ""; + if ($util.Long) { + var long = new $util.Long(0, 0, false); + object.syncWaitSecs = options.longs === String ? long.toString() : options.longs === Number ? long.toNumber() : long; + } else + object.syncWaitSecs = options.longs === String ? "0" : 0; + object.syncRev = ""; + object.secretType = ""; + object.httpsProxy = ""; + object.gcpServiceAccountEmail = ""; + } + if (message.syncRepo != null && message.hasOwnProperty("syncRepo")) + object.syncRepo = message.syncRepo; + if (message.syncBranch != null && message.hasOwnProperty("syncBranch")) + object.syncBranch = message.syncBranch; + if (message.policyDir != null && message.hasOwnProperty("policyDir")) + object.policyDir = message.policyDir; + if (message.syncWaitSecs != null && message.hasOwnProperty("syncWaitSecs")) + if (typeof message.syncWaitSecs === "number") + object.syncWaitSecs = options.longs === String ? String(message.syncWaitSecs) : message.syncWaitSecs; + else + object.syncWaitSecs = options.longs === String ? $util.Long.prototype.toString.call(message.syncWaitSecs) : options.longs === Number ? new $util.LongBits(message.syncWaitSecs.low >>> 0, message.syncWaitSecs.high >>> 0).toNumber() : message.syncWaitSecs; + if (message.syncRev != null && message.hasOwnProperty("syncRev")) + object.syncRev = message.syncRev; + if (message.secretType != null && message.hasOwnProperty("secretType")) + object.secretType = message.secretType; + if (message.httpsProxy != null && message.hasOwnProperty("httpsProxy")) + object.httpsProxy = message.httpsProxy; + if (message.gcpServiceAccountEmail != null && message.hasOwnProperty("gcpServiceAccountEmail")) + object.gcpServiceAccountEmail = message.gcpServiceAccountEmail; + return object; + }; + + /** + * Converts this GitConfig to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.configmanagement.v1.GitConfig + * @instance + * @returns {Object.} JSON object + */ + GitConfig.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return GitConfig; + })(); + + v1.PolicyController = (function() { + + /** + * Properties of a PolicyController. + * @memberof google.cloud.gkehub.configmanagement.v1 + * @interface IPolicyController + * @property {boolean|null} [enabled] PolicyController enabled + * @property {boolean|null} [templateLibraryInstalled] PolicyController templateLibraryInstalled + * @property {number|Long|null} [auditIntervalSeconds] PolicyController auditIntervalSeconds + * @property {Array.|null} [exemptableNamespaces] PolicyController exemptableNamespaces + * @property {boolean|null} [referentialRulesEnabled] PolicyController referentialRulesEnabled + * @property {boolean|null} [logDeniesEnabled] PolicyController logDeniesEnabled + */ + + /** + * Constructs a new PolicyController. + * @memberof google.cloud.gkehub.configmanagement.v1 + * @classdesc Represents a PolicyController. + * @implements IPolicyController + * @constructor + * @param {google.cloud.gkehub.configmanagement.v1.IPolicyController=} [properties] Properties to set + */ + function PolicyController(properties) { + this.exemptableNamespaces = []; + 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]]; + } + + /** + * PolicyController enabled. + * @member {boolean} enabled + * @memberof google.cloud.gkehub.configmanagement.v1.PolicyController + * @instance + */ + PolicyController.prototype.enabled = false; + + /** + * PolicyController templateLibraryInstalled. + * @member {boolean|null|undefined} templateLibraryInstalled + * @memberof google.cloud.gkehub.configmanagement.v1.PolicyController + * @instance + */ + PolicyController.prototype.templateLibraryInstalled = null; + + /** + * PolicyController auditIntervalSeconds. + * @member {number|Long|null|undefined} auditIntervalSeconds + * @memberof google.cloud.gkehub.configmanagement.v1.PolicyController + * @instance + */ + PolicyController.prototype.auditIntervalSeconds = null; + + /** + * PolicyController exemptableNamespaces. + * @member {Array.} exemptableNamespaces + * @memberof google.cloud.gkehub.configmanagement.v1.PolicyController + * @instance + */ + PolicyController.prototype.exemptableNamespaces = $util.emptyArray; + + /** + * PolicyController referentialRulesEnabled. + * @member {boolean} referentialRulesEnabled + * @memberof google.cloud.gkehub.configmanagement.v1.PolicyController + * @instance + */ + PolicyController.prototype.referentialRulesEnabled = false; + + /** + * PolicyController logDeniesEnabled. + * @member {boolean} logDeniesEnabled + * @memberof google.cloud.gkehub.configmanagement.v1.PolicyController + * @instance + */ + PolicyController.prototype.logDeniesEnabled = false; + + // OneOf field names bound to virtual getters and setters + var $oneOfFields; + + /** + * PolicyController _templateLibraryInstalled. + * @member {"templateLibraryInstalled"|undefined} _templateLibraryInstalled + * @memberof google.cloud.gkehub.configmanagement.v1.PolicyController + * @instance + */ + Object.defineProperty(PolicyController.prototype, "_templateLibraryInstalled", { + get: $util.oneOfGetter($oneOfFields = ["templateLibraryInstalled"]), + set: $util.oneOfSetter($oneOfFields) + }); + + /** + * PolicyController _auditIntervalSeconds. + * @member {"auditIntervalSeconds"|undefined} _auditIntervalSeconds + * @memberof google.cloud.gkehub.configmanagement.v1.PolicyController + * @instance + */ + Object.defineProperty(PolicyController.prototype, "_auditIntervalSeconds", { + get: $util.oneOfGetter($oneOfFields = ["auditIntervalSeconds"]), + set: $util.oneOfSetter($oneOfFields) + }); + + /** + * Creates a new PolicyController instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.configmanagement.v1.PolicyController + * @static + * @param {google.cloud.gkehub.configmanagement.v1.IPolicyController=} [properties] Properties to set + * @returns {google.cloud.gkehub.configmanagement.v1.PolicyController} PolicyController instance + */ + PolicyController.create = function create(properties) { + return new PolicyController(properties); + }; + + /** + * Encodes the specified PolicyController message. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1.PolicyController.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.configmanagement.v1.PolicyController + * @static + * @param {google.cloud.gkehub.configmanagement.v1.IPolicyController} message PolicyController message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + PolicyController.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.templateLibraryInstalled != null && Object.hasOwnProperty.call(message, "templateLibraryInstalled")) + writer.uint32(/* id 2, wireType 0 =*/16).bool(message.templateLibraryInstalled); + if (message.auditIntervalSeconds != null && Object.hasOwnProperty.call(message, "auditIntervalSeconds")) + writer.uint32(/* id 3, wireType 0 =*/24).int64(message.auditIntervalSeconds); + if (message.exemptableNamespaces != null && message.exemptableNamespaces.length) + for (var i = 0; i < message.exemptableNamespaces.length; ++i) + writer.uint32(/* id 4, wireType 2 =*/34).string(message.exemptableNamespaces[i]); + if (message.referentialRulesEnabled != null && Object.hasOwnProperty.call(message, "referentialRulesEnabled")) + writer.uint32(/* id 5, wireType 0 =*/40).bool(message.referentialRulesEnabled); + if (message.logDeniesEnabled != null && Object.hasOwnProperty.call(message, "logDeniesEnabled")) + writer.uint32(/* id 6, wireType 0 =*/48).bool(message.logDeniesEnabled); + return writer; + }; + + /** + * Encodes the specified PolicyController message, length delimited. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1.PolicyController.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.configmanagement.v1.PolicyController + * @static + * @param {google.cloud.gkehub.configmanagement.v1.IPolicyController} message PolicyController message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + PolicyController.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a PolicyController message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.configmanagement.v1.PolicyController + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.configmanagement.v1.PolicyController} PolicyController + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + PolicyController.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.configmanagement.v1.PolicyController(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.enabled = reader.bool(); + break; + case 2: + message.templateLibraryInstalled = reader.bool(); + break; + case 3: + message.auditIntervalSeconds = reader.int64(); + break; + case 4: + if (!(message.exemptableNamespaces && message.exemptableNamespaces.length)) + message.exemptableNamespaces = []; + message.exemptableNamespaces.push(reader.string()); + break; + case 5: + message.referentialRulesEnabled = reader.bool(); + break; + case 6: + message.logDeniesEnabled = reader.bool(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a PolicyController message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.configmanagement.v1.PolicyController + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.configmanagement.v1.PolicyController} PolicyController + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + PolicyController.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a PolicyController message. + * @function verify + * @memberof google.cloud.gkehub.configmanagement.v1.PolicyController + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + PolicyController.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.templateLibraryInstalled != null && message.hasOwnProperty("templateLibraryInstalled")) { + properties._templateLibraryInstalled = 1; + if (typeof message.templateLibraryInstalled !== "boolean") + return "templateLibraryInstalled: boolean expected"; + } + if (message.auditIntervalSeconds != null && message.hasOwnProperty("auditIntervalSeconds")) { + properties._auditIntervalSeconds = 1; + if (!$util.isInteger(message.auditIntervalSeconds) && !(message.auditIntervalSeconds && $util.isInteger(message.auditIntervalSeconds.low) && $util.isInteger(message.auditIntervalSeconds.high))) + return "auditIntervalSeconds: integer|Long expected"; + } + if (message.exemptableNamespaces != null && message.hasOwnProperty("exemptableNamespaces")) { + if (!Array.isArray(message.exemptableNamespaces)) + return "exemptableNamespaces: array expected"; + for (var i = 0; i < message.exemptableNamespaces.length; ++i) + if (!$util.isString(message.exemptableNamespaces[i])) + return "exemptableNamespaces: string[] expected"; + } + if (message.referentialRulesEnabled != null && message.hasOwnProperty("referentialRulesEnabled")) + if (typeof message.referentialRulesEnabled !== "boolean") + return "referentialRulesEnabled: boolean expected"; + if (message.logDeniesEnabled != null && message.hasOwnProperty("logDeniesEnabled")) + if (typeof message.logDeniesEnabled !== "boolean") + return "logDeniesEnabled: boolean expected"; + return null; + }; + + /** + * Creates a PolicyController message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.configmanagement.v1.PolicyController + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.configmanagement.v1.PolicyController} PolicyController + */ + PolicyController.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.configmanagement.v1.PolicyController) + return object; + var message = new $root.google.cloud.gkehub.configmanagement.v1.PolicyController(); + if (object.enabled != null) + message.enabled = Boolean(object.enabled); + if (object.templateLibraryInstalled != null) + message.templateLibraryInstalled = Boolean(object.templateLibraryInstalled); + if (object.auditIntervalSeconds != null) + if ($util.Long) + (message.auditIntervalSeconds = $util.Long.fromValue(object.auditIntervalSeconds)).unsigned = false; + else if (typeof object.auditIntervalSeconds === "string") + message.auditIntervalSeconds = parseInt(object.auditIntervalSeconds, 10); + else if (typeof object.auditIntervalSeconds === "number") + message.auditIntervalSeconds = object.auditIntervalSeconds; + else if (typeof object.auditIntervalSeconds === "object") + message.auditIntervalSeconds = new $util.LongBits(object.auditIntervalSeconds.low >>> 0, object.auditIntervalSeconds.high >>> 0).toNumber(); + if (object.exemptableNamespaces) { + if (!Array.isArray(object.exemptableNamespaces)) + throw TypeError(".google.cloud.gkehub.configmanagement.v1.PolicyController.exemptableNamespaces: array expected"); + message.exemptableNamespaces = []; + for (var i = 0; i < object.exemptableNamespaces.length; ++i) + message.exemptableNamespaces[i] = String(object.exemptableNamespaces[i]); + } + if (object.referentialRulesEnabled != null) + message.referentialRulesEnabled = Boolean(object.referentialRulesEnabled); + if (object.logDeniesEnabled != null) + message.logDeniesEnabled = Boolean(object.logDeniesEnabled); + return message; + }; + + /** + * Creates a plain object from a PolicyController message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.configmanagement.v1.PolicyController + * @static + * @param {google.cloud.gkehub.configmanagement.v1.PolicyController} message PolicyController + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + PolicyController.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.arrays || options.defaults) + object.exemptableNamespaces = []; + if (options.defaults) { + object.enabled = false; + object.referentialRulesEnabled = false; + object.logDeniesEnabled = false; + } + if (message.enabled != null && message.hasOwnProperty("enabled")) + object.enabled = message.enabled; + if (message.templateLibraryInstalled != null && message.hasOwnProperty("templateLibraryInstalled")) { + object.templateLibraryInstalled = message.templateLibraryInstalled; + if (options.oneofs) + object._templateLibraryInstalled = "templateLibraryInstalled"; + } + if (message.auditIntervalSeconds != null && message.hasOwnProperty("auditIntervalSeconds")) { + if (typeof message.auditIntervalSeconds === "number") + object.auditIntervalSeconds = options.longs === String ? String(message.auditIntervalSeconds) : message.auditIntervalSeconds; + else + object.auditIntervalSeconds = options.longs === String ? $util.Long.prototype.toString.call(message.auditIntervalSeconds) : options.longs === Number ? new $util.LongBits(message.auditIntervalSeconds.low >>> 0, message.auditIntervalSeconds.high >>> 0).toNumber() : message.auditIntervalSeconds; + if (options.oneofs) + object._auditIntervalSeconds = "auditIntervalSeconds"; + } + if (message.exemptableNamespaces && message.exemptableNamespaces.length) { + object.exemptableNamespaces = []; + for (var j = 0; j < message.exemptableNamespaces.length; ++j) + object.exemptableNamespaces[j] = message.exemptableNamespaces[j]; + } + if (message.referentialRulesEnabled != null && message.hasOwnProperty("referentialRulesEnabled")) + object.referentialRulesEnabled = message.referentialRulesEnabled; + if (message.logDeniesEnabled != null && message.hasOwnProperty("logDeniesEnabled")) + object.logDeniesEnabled = message.logDeniesEnabled; + return object; + }; + + /** + * Converts this PolicyController to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.configmanagement.v1.PolicyController + * @instance + * @returns {Object.} JSON object + */ + PolicyController.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return PolicyController; + })(); + + v1.HierarchyControllerConfig = (function() { + + /** + * Properties of a HierarchyControllerConfig. + * @memberof google.cloud.gkehub.configmanagement.v1 + * @interface IHierarchyControllerConfig + * @property {boolean|null} [enabled] HierarchyControllerConfig enabled + * @property {boolean|null} [enablePodTreeLabels] HierarchyControllerConfig enablePodTreeLabels + * @property {boolean|null} [enableHierarchicalResourceQuota] HierarchyControllerConfig enableHierarchicalResourceQuota + */ + + /** + * Constructs a new HierarchyControllerConfig. + * @memberof google.cloud.gkehub.configmanagement.v1 + * @classdesc Represents a HierarchyControllerConfig. + * @implements IHierarchyControllerConfig + * @constructor + * @param {google.cloud.gkehub.configmanagement.v1.IHierarchyControllerConfig=} [properties] Properties to set + */ + function HierarchyControllerConfig(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]]; + } + + /** + * HierarchyControllerConfig enabled. + * @member {boolean} enabled + * @memberof google.cloud.gkehub.configmanagement.v1.HierarchyControllerConfig + * @instance + */ + HierarchyControllerConfig.prototype.enabled = false; + + /** + * HierarchyControllerConfig enablePodTreeLabels. + * @member {boolean} enablePodTreeLabels + * @memberof google.cloud.gkehub.configmanagement.v1.HierarchyControllerConfig + * @instance + */ + HierarchyControllerConfig.prototype.enablePodTreeLabels = false; + + /** + * HierarchyControllerConfig enableHierarchicalResourceQuota. + * @member {boolean} enableHierarchicalResourceQuota + * @memberof google.cloud.gkehub.configmanagement.v1.HierarchyControllerConfig + * @instance + */ + HierarchyControllerConfig.prototype.enableHierarchicalResourceQuota = false; + + /** + * Creates a new HierarchyControllerConfig instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.configmanagement.v1.HierarchyControllerConfig + * @static + * @param {google.cloud.gkehub.configmanagement.v1.IHierarchyControllerConfig=} [properties] Properties to set + * @returns {google.cloud.gkehub.configmanagement.v1.HierarchyControllerConfig} HierarchyControllerConfig instance + */ + HierarchyControllerConfig.create = function create(properties) { + return new HierarchyControllerConfig(properties); + }; + + /** + * Encodes the specified HierarchyControllerConfig message. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1.HierarchyControllerConfig.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.configmanagement.v1.HierarchyControllerConfig + * @static + * @param {google.cloud.gkehub.configmanagement.v1.IHierarchyControllerConfig} message HierarchyControllerConfig message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + HierarchyControllerConfig.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.enablePodTreeLabels != null && Object.hasOwnProperty.call(message, "enablePodTreeLabels")) + writer.uint32(/* id 2, wireType 0 =*/16).bool(message.enablePodTreeLabels); + if (message.enableHierarchicalResourceQuota != null && Object.hasOwnProperty.call(message, "enableHierarchicalResourceQuota")) + writer.uint32(/* id 3, wireType 0 =*/24).bool(message.enableHierarchicalResourceQuota); + return writer; + }; + + /** + * Encodes the specified HierarchyControllerConfig message, length delimited. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1.HierarchyControllerConfig.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.configmanagement.v1.HierarchyControllerConfig + * @static + * @param {google.cloud.gkehub.configmanagement.v1.IHierarchyControllerConfig} message HierarchyControllerConfig message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + HierarchyControllerConfig.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a HierarchyControllerConfig message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.configmanagement.v1.HierarchyControllerConfig + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.configmanagement.v1.HierarchyControllerConfig} HierarchyControllerConfig + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + HierarchyControllerConfig.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.configmanagement.v1.HierarchyControllerConfig(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.enabled = reader.bool(); + break; + case 2: + message.enablePodTreeLabels = reader.bool(); + break; + case 3: + message.enableHierarchicalResourceQuota = reader.bool(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a HierarchyControllerConfig message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.configmanagement.v1.HierarchyControllerConfig + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.configmanagement.v1.HierarchyControllerConfig} HierarchyControllerConfig + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + HierarchyControllerConfig.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a HierarchyControllerConfig message. + * @function verify + * @memberof google.cloud.gkehub.configmanagement.v1.HierarchyControllerConfig + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + HierarchyControllerConfig.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.enablePodTreeLabels != null && message.hasOwnProperty("enablePodTreeLabels")) + if (typeof message.enablePodTreeLabels !== "boolean") + return "enablePodTreeLabels: boolean expected"; + if (message.enableHierarchicalResourceQuota != null && message.hasOwnProperty("enableHierarchicalResourceQuota")) + if (typeof message.enableHierarchicalResourceQuota !== "boolean") + return "enableHierarchicalResourceQuota: boolean expected"; + return null; + }; + + /** + * Creates a HierarchyControllerConfig message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.configmanagement.v1.HierarchyControllerConfig + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.configmanagement.v1.HierarchyControllerConfig} HierarchyControllerConfig + */ + HierarchyControllerConfig.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.configmanagement.v1.HierarchyControllerConfig) + return object; + var message = new $root.google.cloud.gkehub.configmanagement.v1.HierarchyControllerConfig(); + if (object.enabled != null) + message.enabled = Boolean(object.enabled); + if (object.enablePodTreeLabels != null) + message.enablePodTreeLabels = Boolean(object.enablePodTreeLabels); + if (object.enableHierarchicalResourceQuota != null) + message.enableHierarchicalResourceQuota = Boolean(object.enableHierarchicalResourceQuota); + return message; + }; + + /** + * Creates a plain object from a HierarchyControllerConfig message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.configmanagement.v1.HierarchyControllerConfig + * @static + * @param {google.cloud.gkehub.configmanagement.v1.HierarchyControllerConfig} message HierarchyControllerConfig + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + HierarchyControllerConfig.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.enabled = false; + object.enablePodTreeLabels = false; + object.enableHierarchicalResourceQuota = false; + } + if (message.enabled != null && message.hasOwnProperty("enabled")) + object.enabled = message.enabled; + if (message.enablePodTreeLabels != null && message.hasOwnProperty("enablePodTreeLabels")) + object.enablePodTreeLabels = message.enablePodTreeLabels; + if (message.enableHierarchicalResourceQuota != null && message.hasOwnProperty("enableHierarchicalResourceQuota")) + object.enableHierarchicalResourceQuota = message.enableHierarchicalResourceQuota; + return object; + }; + + /** + * Converts this HierarchyControllerConfig to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.configmanagement.v1.HierarchyControllerConfig + * @instance + * @returns {Object.} JSON object + */ + HierarchyControllerConfig.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return HierarchyControllerConfig; + })(); + + v1.HierarchyControllerDeploymentState = (function() { + + /** + * Properties of a HierarchyControllerDeploymentState. + * @memberof google.cloud.gkehub.configmanagement.v1 + * @interface IHierarchyControllerDeploymentState + * @property {google.cloud.gkehub.configmanagement.v1.DeploymentState|null} [hnc] HierarchyControllerDeploymentState hnc + * @property {google.cloud.gkehub.configmanagement.v1.DeploymentState|null} [extension] HierarchyControllerDeploymentState extension + */ + + /** + * Constructs a new HierarchyControllerDeploymentState. + * @memberof google.cloud.gkehub.configmanagement.v1 + * @classdesc Represents a HierarchyControllerDeploymentState. + * @implements IHierarchyControllerDeploymentState + * @constructor + * @param {google.cloud.gkehub.configmanagement.v1.IHierarchyControllerDeploymentState=} [properties] Properties to set + */ + function HierarchyControllerDeploymentState(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]]; + } + + /** + * HierarchyControllerDeploymentState hnc. + * @member {google.cloud.gkehub.configmanagement.v1.DeploymentState} hnc + * @memberof google.cloud.gkehub.configmanagement.v1.HierarchyControllerDeploymentState + * @instance + */ + HierarchyControllerDeploymentState.prototype.hnc = 0; + + /** + * HierarchyControllerDeploymentState extension. + * @member {google.cloud.gkehub.configmanagement.v1.DeploymentState} extension + * @memberof google.cloud.gkehub.configmanagement.v1.HierarchyControllerDeploymentState + * @instance + */ + HierarchyControllerDeploymentState.prototype.extension = 0; + + /** + * Creates a new HierarchyControllerDeploymentState instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.configmanagement.v1.HierarchyControllerDeploymentState + * @static + * @param {google.cloud.gkehub.configmanagement.v1.IHierarchyControllerDeploymentState=} [properties] Properties to set + * @returns {google.cloud.gkehub.configmanagement.v1.HierarchyControllerDeploymentState} HierarchyControllerDeploymentState instance + */ + HierarchyControllerDeploymentState.create = function create(properties) { + return new HierarchyControllerDeploymentState(properties); + }; + + /** + * Encodes the specified HierarchyControllerDeploymentState message. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1.HierarchyControllerDeploymentState.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.configmanagement.v1.HierarchyControllerDeploymentState + * @static + * @param {google.cloud.gkehub.configmanagement.v1.IHierarchyControllerDeploymentState} message HierarchyControllerDeploymentState message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + HierarchyControllerDeploymentState.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.hnc != null && Object.hasOwnProperty.call(message, "hnc")) + writer.uint32(/* id 1, wireType 0 =*/8).int32(message.hnc); + if (message.extension != null && Object.hasOwnProperty.call(message, "extension")) + writer.uint32(/* id 2, wireType 0 =*/16).int32(message.extension); + return writer; + }; + + /** + * Encodes the specified HierarchyControllerDeploymentState message, length delimited. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1.HierarchyControllerDeploymentState.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.configmanagement.v1.HierarchyControllerDeploymentState + * @static + * @param {google.cloud.gkehub.configmanagement.v1.IHierarchyControllerDeploymentState} message HierarchyControllerDeploymentState message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + HierarchyControllerDeploymentState.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a HierarchyControllerDeploymentState message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.configmanagement.v1.HierarchyControllerDeploymentState + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.configmanagement.v1.HierarchyControllerDeploymentState} HierarchyControllerDeploymentState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + HierarchyControllerDeploymentState.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.configmanagement.v1.HierarchyControllerDeploymentState(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.hnc = reader.int32(); + break; + case 2: + message.extension = reader.int32(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a HierarchyControllerDeploymentState message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.configmanagement.v1.HierarchyControllerDeploymentState + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.configmanagement.v1.HierarchyControllerDeploymentState} HierarchyControllerDeploymentState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + HierarchyControllerDeploymentState.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a HierarchyControllerDeploymentState message. + * @function verify + * @memberof google.cloud.gkehub.configmanagement.v1.HierarchyControllerDeploymentState + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + HierarchyControllerDeploymentState.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.hnc != null && message.hasOwnProperty("hnc")) + switch (message.hnc) { + default: + return "hnc: enum value expected"; + case 0: + case 1: + case 2: + case 3: + break; + } + if (message.extension != null && message.hasOwnProperty("extension")) + switch (message.extension) { + default: + return "extension: enum value expected"; + case 0: + case 1: + case 2: + case 3: + break; + } + return null; + }; + + /** + * Creates a HierarchyControllerDeploymentState message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.configmanagement.v1.HierarchyControllerDeploymentState + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.configmanagement.v1.HierarchyControllerDeploymentState} HierarchyControllerDeploymentState + */ + HierarchyControllerDeploymentState.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.configmanagement.v1.HierarchyControllerDeploymentState) + return object; + var message = new $root.google.cloud.gkehub.configmanagement.v1.HierarchyControllerDeploymentState(); + switch (object.hnc) { + case "DEPLOYMENT_STATE_UNSPECIFIED": + case 0: + message.hnc = 0; + break; + case "NOT_INSTALLED": + case 1: + message.hnc = 1; + break; + case "INSTALLED": + case 2: + message.hnc = 2; + break; + case "ERROR": + case 3: + message.hnc = 3; + break; + } + switch (object.extension) { + case "DEPLOYMENT_STATE_UNSPECIFIED": + case 0: + message.extension = 0; + break; + case "NOT_INSTALLED": + case 1: + message.extension = 1; + break; + case "INSTALLED": + case 2: + message.extension = 2; + break; + case "ERROR": + case 3: + message.extension = 3; + break; + } + return message; + }; + + /** + * Creates a plain object from a HierarchyControllerDeploymentState message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.configmanagement.v1.HierarchyControllerDeploymentState + * @static + * @param {google.cloud.gkehub.configmanagement.v1.HierarchyControllerDeploymentState} message HierarchyControllerDeploymentState + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + HierarchyControllerDeploymentState.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.hnc = options.enums === String ? "DEPLOYMENT_STATE_UNSPECIFIED" : 0; + object.extension = options.enums === String ? "DEPLOYMENT_STATE_UNSPECIFIED" : 0; + } + if (message.hnc != null && message.hasOwnProperty("hnc")) + object.hnc = options.enums === String ? $root.google.cloud.gkehub.configmanagement.v1.DeploymentState[message.hnc] : message.hnc; + if (message.extension != null && message.hasOwnProperty("extension")) + object.extension = options.enums === String ? $root.google.cloud.gkehub.configmanagement.v1.DeploymentState[message.extension] : message.extension; + return object; + }; + + /** + * Converts this HierarchyControllerDeploymentState to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.configmanagement.v1.HierarchyControllerDeploymentState + * @instance + * @returns {Object.} JSON object + */ + HierarchyControllerDeploymentState.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return HierarchyControllerDeploymentState; + })(); + + v1.HierarchyControllerVersion = (function() { + + /** + * Properties of a HierarchyControllerVersion. + * @memberof google.cloud.gkehub.configmanagement.v1 + * @interface IHierarchyControllerVersion + * @property {string|null} [hnc] HierarchyControllerVersion hnc + * @property {string|null} [extension] HierarchyControllerVersion extension + */ + + /** + * Constructs a new HierarchyControllerVersion. + * @memberof google.cloud.gkehub.configmanagement.v1 + * @classdesc Represents a HierarchyControllerVersion. + * @implements IHierarchyControllerVersion + * @constructor + * @param {google.cloud.gkehub.configmanagement.v1.IHierarchyControllerVersion=} [properties] Properties to set + */ + function HierarchyControllerVersion(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]]; + } + + /** + * HierarchyControllerVersion hnc. + * @member {string} hnc + * @memberof google.cloud.gkehub.configmanagement.v1.HierarchyControllerVersion + * @instance + */ + HierarchyControllerVersion.prototype.hnc = ""; + + /** + * HierarchyControllerVersion extension. + * @member {string} extension + * @memberof google.cloud.gkehub.configmanagement.v1.HierarchyControllerVersion + * @instance + */ + HierarchyControllerVersion.prototype.extension = ""; + + /** + * Creates a new HierarchyControllerVersion instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.configmanagement.v1.HierarchyControllerVersion + * @static + * @param {google.cloud.gkehub.configmanagement.v1.IHierarchyControllerVersion=} [properties] Properties to set + * @returns {google.cloud.gkehub.configmanagement.v1.HierarchyControllerVersion} HierarchyControllerVersion instance + */ + HierarchyControllerVersion.create = function create(properties) { + return new HierarchyControllerVersion(properties); + }; + + /** + * Encodes the specified HierarchyControllerVersion message. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1.HierarchyControllerVersion.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.configmanagement.v1.HierarchyControllerVersion + * @static + * @param {google.cloud.gkehub.configmanagement.v1.IHierarchyControllerVersion} message HierarchyControllerVersion message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + HierarchyControllerVersion.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.hnc != null && Object.hasOwnProperty.call(message, "hnc")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.hnc); + if (message.extension != null && Object.hasOwnProperty.call(message, "extension")) + writer.uint32(/* id 2, wireType 2 =*/18).string(message.extension); + return writer; + }; + + /** + * Encodes the specified HierarchyControllerVersion message, length delimited. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1.HierarchyControllerVersion.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.configmanagement.v1.HierarchyControllerVersion + * @static + * @param {google.cloud.gkehub.configmanagement.v1.IHierarchyControllerVersion} message HierarchyControllerVersion message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + HierarchyControllerVersion.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a HierarchyControllerVersion message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.configmanagement.v1.HierarchyControllerVersion + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.configmanagement.v1.HierarchyControllerVersion} HierarchyControllerVersion + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + HierarchyControllerVersion.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.configmanagement.v1.HierarchyControllerVersion(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.hnc = reader.string(); + break; + case 2: + message.extension = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a HierarchyControllerVersion message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.configmanagement.v1.HierarchyControllerVersion + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.configmanagement.v1.HierarchyControllerVersion} HierarchyControllerVersion + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + HierarchyControllerVersion.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a HierarchyControllerVersion message. + * @function verify + * @memberof google.cloud.gkehub.configmanagement.v1.HierarchyControllerVersion + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + HierarchyControllerVersion.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.hnc != null && message.hasOwnProperty("hnc")) + if (!$util.isString(message.hnc)) + return "hnc: string expected"; + if (message.extension != null && message.hasOwnProperty("extension")) + if (!$util.isString(message.extension)) + return "extension: string expected"; + return null; + }; + + /** + * Creates a HierarchyControllerVersion message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.configmanagement.v1.HierarchyControllerVersion + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.configmanagement.v1.HierarchyControllerVersion} HierarchyControllerVersion + */ + HierarchyControllerVersion.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.configmanagement.v1.HierarchyControllerVersion) + return object; + var message = new $root.google.cloud.gkehub.configmanagement.v1.HierarchyControllerVersion(); + if (object.hnc != null) + message.hnc = String(object.hnc); + if (object.extension != null) + message.extension = String(object.extension); + return message; + }; + + /** + * Creates a plain object from a HierarchyControllerVersion message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.configmanagement.v1.HierarchyControllerVersion + * @static + * @param {google.cloud.gkehub.configmanagement.v1.HierarchyControllerVersion} message HierarchyControllerVersion + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + HierarchyControllerVersion.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.hnc = ""; + object.extension = ""; + } + if (message.hnc != null && message.hasOwnProperty("hnc")) + object.hnc = message.hnc; + if (message.extension != null && message.hasOwnProperty("extension")) + object.extension = message.extension; + return object; + }; + + /** + * Converts this HierarchyControllerVersion to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.configmanagement.v1.HierarchyControllerVersion + * @instance + * @returns {Object.} JSON object + */ + HierarchyControllerVersion.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return HierarchyControllerVersion; + })(); + + v1.HierarchyControllerState = (function() { + + /** + * Properties of a HierarchyControllerState. + * @memberof google.cloud.gkehub.configmanagement.v1 + * @interface IHierarchyControllerState + * @property {google.cloud.gkehub.configmanagement.v1.IHierarchyControllerVersion|null} [version] HierarchyControllerState version + * @property {google.cloud.gkehub.configmanagement.v1.IHierarchyControllerDeploymentState|null} [state] HierarchyControllerState state + */ + + /** + * Constructs a new HierarchyControllerState. + * @memberof google.cloud.gkehub.configmanagement.v1 + * @classdesc Represents a HierarchyControllerState. + * @implements IHierarchyControllerState + * @constructor + * @param {google.cloud.gkehub.configmanagement.v1.IHierarchyControllerState=} [properties] Properties to set + */ + function HierarchyControllerState(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]]; + } + + /** + * HierarchyControllerState version. + * @member {google.cloud.gkehub.configmanagement.v1.IHierarchyControllerVersion|null|undefined} version + * @memberof google.cloud.gkehub.configmanagement.v1.HierarchyControllerState + * @instance + */ + HierarchyControllerState.prototype.version = null; + + /** + * HierarchyControllerState state. + * @member {google.cloud.gkehub.configmanagement.v1.IHierarchyControllerDeploymentState|null|undefined} state + * @memberof google.cloud.gkehub.configmanagement.v1.HierarchyControllerState + * @instance + */ + HierarchyControllerState.prototype.state = null; + + /** + * Creates a new HierarchyControllerState instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.configmanagement.v1.HierarchyControllerState + * @static + * @param {google.cloud.gkehub.configmanagement.v1.IHierarchyControllerState=} [properties] Properties to set + * @returns {google.cloud.gkehub.configmanagement.v1.HierarchyControllerState} HierarchyControllerState instance + */ + HierarchyControllerState.create = function create(properties) { + return new HierarchyControllerState(properties); + }; + + /** + * Encodes the specified HierarchyControllerState message. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1.HierarchyControllerState.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.configmanagement.v1.HierarchyControllerState + * @static + * @param {google.cloud.gkehub.configmanagement.v1.IHierarchyControllerState} message HierarchyControllerState message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + HierarchyControllerState.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.version != null && Object.hasOwnProperty.call(message, "version")) + $root.google.cloud.gkehub.configmanagement.v1.HierarchyControllerVersion.encode(message.version, writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim(); + if (message.state != null && Object.hasOwnProperty.call(message, "state")) + $root.google.cloud.gkehub.configmanagement.v1.HierarchyControllerDeploymentState.encode(message.state, writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim(); + return writer; + }; + + /** + * Encodes the specified HierarchyControllerState message, length delimited. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1.HierarchyControllerState.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.configmanagement.v1.HierarchyControllerState + * @static + * @param {google.cloud.gkehub.configmanagement.v1.IHierarchyControllerState} message HierarchyControllerState message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + HierarchyControllerState.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a HierarchyControllerState message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.configmanagement.v1.HierarchyControllerState + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.configmanagement.v1.HierarchyControllerState} HierarchyControllerState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + HierarchyControllerState.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.configmanagement.v1.HierarchyControllerState(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.version = $root.google.cloud.gkehub.configmanagement.v1.HierarchyControllerVersion.decode(reader, reader.uint32()); + break; + case 2: + message.state = $root.google.cloud.gkehub.configmanagement.v1.HierarchyControllerDeploymentState.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a HierarchyControllerState message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.configmanagement.v1.HierarchyControllerState + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.configmanagement.v1.HierarchyControllerState} HierarchyControllerState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + HierarchyControllerState.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a HierarchyControllerState message. + * @function verify + * @memberof google.cloud.gkehub.configmanagement.v1.HierarchyControllerState + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + HierarchyControllerState.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.version != null && message.hasOwnProperty("version")) { + var error = $root.google.cloud.gkehub.configmanagement.v1.HierarchyControllerVersion.verify(message.version); + if (error) + return "version." + error; + } + if (message.state != null && message.hasOwnProperty("state")) { + var error = $root.google.cloud.gkehub.configmanagement.v1.HierarchyControllerDeploymentState.verify(message.state); + if (error) + return "state." + error; + } + return null; + }; + + /** + * Creates a HierarchyControllerState message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.configmanagement.v1.HierarchyControllerState + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.configmanagement.v1.HierarchyControllerState} HierarchyControllerState + */ + HierarchyControllerState.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.configmanagement.v1.HierarchyControllerState) + return object; + var message = new $root.google.cloud.gkehub.configmanagement.v1.HierarchyControllerState(); + if (object.version != null) { + if (typeof object.version !== "object") + throw TypeError(".google.cloud.gkehub.configmanagement.v1.HierarchyControllerState.version: object expected"); + message.version = $root.google.cloud.gkehub.configmanagement.v1.HierarchyControllerVersion.fromObject(object.version); + } + if (object.state != null) { + if (typeof object.state !== "object") + throw TypeError(".google.cloud.gkehub.configmanagement.v1.HierarchyControllerState.state: object expected"); + message.state = $root.google.cloud.gkehub.configmanagement.v1.HierarchyControllerDeploymentState.fromObject(object.state); + } + return message; + }; + + /** + * Creates a plain object from a HierarchyControllerState message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.configmanagement.v1.HierarchyControllerState + * @static + * @param {google.cloud.gkehub.configmanagement.v1.HierarchyControllerState} message HierarchyControllerState + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + HierarchyControllerState.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.version = null; + object.state = null; + } + if (message.version != null && message.hasOwnProperty("version")) + object.version = $root.google.cloud.gkehub.configmanagement.v1.HierarchyControllerVersion.toObject(message.version, options); + if (message.state != null && message.hasOwnProperty("state")) + object.state = $root.google.cloud.gkehub.configmanagement.v1.HierarchyControllerDeploymentState.toObject(message.state, options); + return object; + }; + + /** + * Converts this HierarchyControllerState to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.configmanagement.v1.HierarchyControllerState + * @instance + * @returns {Object.} JSON object + */ + HierarchyControllerState.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return HierarchyControllerState; + })(); + + v1.OperatorState = (function() { + + /** + * Properties of an OperatorState. + * @memberof google.cloud.gkehub.configmanagement.v1 + * @interface IOperatorState + * @property {string|null} [version] OperatorState version + * @property {google.cloud.gkehub.configmanagement.v1.DeploymentState|null} [deploymentState] OperatorState deploymentState + * @property {Array.|null} [errors] OperatorState errors + */ + + /** + * Constructs a new OperatorState. + * @memberof google.cloud.gkehub.configmanagement.v1 + * @classdesc Represents an OperatorState. + * @implements IOperatorState + * @constructor + * @param {google.cloud.gkehub.configmanagement.v1.IOperatorState=} [properties] Properties to set + */ + function OperatorState(properties) { + this.errors = []; + 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]]; + } + + /** + * OperatorState version. + * @member {string} version + * @memberof google.cloud.gkehub.configmanagement.v1.OperatorState + * @instance + */ + OperatorState.prototype.version = ""; + + /** + * OperatorState deploymentState. + * @member {google.cloud.gkehub.configmanagement.v1.DeploymentState} deploymentState + * @memberof google.cloud.gkehub.configmanagement.v1.OperatorState + * @instance + */ + OperatorState.prototype.deploymentState = 0; + + /** + * OperatorState errors. + * @member {Array.} errors + * @memberof google.cloud.gkehub.configmanagement.v1.OperatorState + * @instance + */ + OperatorState.prototype.errors = $util.emptyArray; + + /** + * Creates a new OperatorState instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.configmanagement.v1.OperatorState + * @static + * @param {google.cloud.gkehub.configmanagement.v1.IOperatorState=} [properties] Properties to set + * @returns {google.cloud.gkehub.configmanagement.v1.OperatorState} OperatorState instance + */ + OperatorState.create = function create(properties) { + return new OperatorState(properties); + }; + + /** + * Encodes the specified OperatorState message. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1.OperatorState.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.configmanagement.v1.OperatorState + * @static + * @param {google.cloud.gkehub.configmanagement.v1.IOperatorState} message OperatorState message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + OperatorState.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.version != null && Object.hasOwnProperty.call(message, "version")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.version); + if (message.deploymentState != null && Object.hasOwnProperty.call(message, "deploymentState")) + writer.uint32(/* id 2, wireType 0 =*/16).int32(message.deploymentState); + if (message.errors != null && message.errors.length) + for (var i = 0; i < message.errors.length; ++i) + $root.google.cloud.gkehub.configmanagement.v1.InstallError.encode(message.errors[i], writer.uint32(/* id 3, wireType 2 =*/26).fork()).ldelim(); + return writer; + }; + + /** + * Encodes the specified OperatorState message, length delimited. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1.OperatorState.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.configmanagement.v1.OperatorState + * @static + * @param {google.cloud.gkehub.configmanagement.v1.IOperatorState} message OperatorState message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + OperatorState.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes an OperatorState message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.configmanagement.v1.OperatorState + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.configmanagement.v1.OperatorState} OperatorState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + OperatorState.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.configmanagement.v1.OperatorState(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.version = reader.string(); + break; + case 2: + message.deploymentState = reader.int32(); + break; + case 3: + if (!(message.errors && message.errors.length)) + message.errors = []; + message.errors.push($root.google.cloud.gkehub.configmanagement.v1.InstallError.decode(reader, reader.uint32())); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes an OperatorState message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.configmanagement.v1.OperatorState + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.configmanagement.v1.OperatorState} OperatorState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + OperatorState.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies an OperatorState message. + * @function verify + * @memberof google.cloud.gkehub.configmanagement.v1.OperatorState + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + OperatorState.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.version != null && message.hasOwnProperty("version")) + if (!$util.isString(message.version)) + return "version: string expected"; + if (message.deploymentState != null && message.hasOwnProperty("deploymentState")) + switch (message.deploymentState) { + default: + return "deploymentState: enum value expected"; + case 0: + case 1: + case 2: + case 3: + break; + } + if (message.errors != null && message.hasOwnProperty("errors")) { + if (!Array.isArray(message.errors)) + return "errors: array expected"; + for (var i = 0; i < message.errors.length; ++i) { + var error = $root.google.cloud.gkehub.configmanagement.v1.InstallError.verify(message.errors[i]); + if (error) + return "errors." + error; + } + } + return null; + }; + + /** + * Creates an OperatorState message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.configmanagement.v1.OperatorState + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.configmanagement.v1.OperatorState} OperatorState + */ + OperatorState.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.configmanagement.v1.OperatorState) + return object; + var message = new $root.google.cloud.gkehub.configmanagement.v1.OperatorState(); + if (object.version != null) + message.version = String(object.version); + switch (object.deploymentState) { + case "DEPLOYMENT_STATE_UNSPECIFIED": + case 0: + message.deploymentState = 0; + break; + case "NOT_INSTALLED": + case 1: + message.deploymentState = 1; + break; + case "INSTALLED": + case 2: + message.deploymentState = 2; + break; + case "ERROR": + case 3: + message.deploymentState = 3; + break; + } + if (object.errors) { + if (!Array.isArray(object.errors)) + throw TypeError(".google.cloud.gkehub.configmanagement.v1.OperatorState.errors: array expected"); + message.errors = []; + for (var i = 0; i < object.errors.length; ++i) { + if (typeof object.errors[i] !== "object") + throw TypeError(".google.cloud.gkehub.configmanagement.v1.OperatorState.errors: object expected"); + message.errors[i] = $root.google.cloud.gkehub.configmanagement.v1.InstallError.fromObject(object.errors[i]); + } + } + return message; + }; + + /** + * Creates a plain object from an OperatorState message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.configmanagement.v1.OperatorState + * @static + * @param {google.cloud.gkehub.configmanagement.v1.OperatorState} message OperatorState + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + OperatorState.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.arrays || options.defaults) + object.errors = []; + if (options.defaults) { + object.version = ""; + object.deploymentState = options.enums === String ? "DEPLOYMENT_STATE_UNSPECIFIED" : 0; + } + if (message.version != null && message.hasOwnProperty("version")) + object.version = message.version; + if (message.deploymentState != null && message.hasOwnProperty("deploymentState")) + object.deploymentState = options.enums === String ? $root.google.cloud.gkehub.configmanagement.v1.DeploymentState[message.deploymentState] : message.deploymentState; + if (message.errors && message.errors.length) { + object.errors = []; + for (var j = 0; j < message.errors.length; ++j) + object.errors[j] = $root.google.cloud.gkehub.configmanagement.v1.InstallError.toObject(message.errors[j], options); + } + return object; + }; + + /** + * Converts this OperatorState to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.configmanagement.v1.OperatorState + * @instance + * @returns {Object.} JSON object + */ + OperatorState.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return OperatorState; + })(); + + v1.InstallError = (function() { + + /** + * Properties of an InstallError. + * @memberof google.cloud.gkehub.configmanagement.v1 + * @interface IInstallError + * @property {string|null} [errorMessage] InstallError errorMessage + */ + + /** + * Constructs a new InstallError. + * @memberof google.cloud.gkehub.configmanagement.v1 + * @classdesc Represents an InstallError. + * @implements IInstallError + * @constructor + * @param {google.cloud.gkehub.configmanagement.v1.IInstallError=} [properties] Properties to set + */ + function InstallError(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]]; + } + + /** + * InstallError errorMessage. + * @member {string} errorMessage + * @memberof google.cloud.gkehub.configmanagement.v1.InstallError + * @instance + */ + InstallError.prototype.errorMessage = ""; + + /** + * Creates a new InstallError instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.configmanagement.v1.InstallError + * @static + * @param {google.cloud.gkehub.configmanagement.v1.IInstallError=} [properties] Properties to set + * @returns {google.cloud.gkehub.configmanagement.v1.InstallError} InstallError instance + */ + InstallError.create = function create(properties) { + return new InstallError(properties); + }; + + /** + * Encodes the specified InstallError message. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1.InstallError.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.configmanagement.v1.InstallError + * @static + * @param {google.cloud.gkehub.configmanagement.v1.IInstallError} message InstallError message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + InstallError.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.errorMessage != null && Object.hasOwnProperty.call(message, "errorMessage")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.errorMessage); + return writer; + }; + + /** + * Encodes the specified InstallError message, length delimited. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1.InstallError.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.configmanagement.v1.InstallError + * @static + * @param {google.cloud.gkehub.configmanagement.v1.IInstallError} message InstallError message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + InstallError.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes an InstallError message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.configmanagement.v1.InstallError + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.configmanagement.v1.InstallError} InstallError + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + InstallError.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.configmanagement.v1.InstallError(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.errorMessage = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes an InstallError message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.configmanagement.v1.InstallError + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.configmanagement.v1.InstallError} InstallError + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + InstallError.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies an InstallError message. + * @function verify + * @memberof google.cloud.gkehub.configmanagement.v1.InstallError + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + InstallError.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.errorMessage != null && message.hasOwnProperty("errorMessage")) + if (!$util.isString(message.errorMessage)) + return "errorMessage: string expected"; + return null; + }; + + /** + * Creates an InstallError message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.configmanagement.v1.InstallError + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.configmanagement.v1.InstallError} InstallError + */ + InstallError.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.configmanagement.v1.InstallError) + return object; + var message = new $root.google.cloud.gkehub.configmanagement.v1.InstallError(); + if (object.errorMessage != null) + message.errorMessage = String(object.errorMessage); + return message; + }; + + /** + * Creates a plain object from an InstallError message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.configmanagement.v1.InstallError + * @static + * @param {google.cloud.gkehub.configmanagement.v1.InstallError} message InstallError + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + InstallError.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) + object.errorMessage = ""; + if (message.errorMessage != null && message.hasOwnProperty("errorMessage")) + object.errorMessage = message.errorMessage; + return object; + }; + + /** + * Converts this InstallError to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.configmanagement.v1.InstallError + * @instance + * @returns {Object.} JSON object + */ + InstallError.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return InstallError; + })(); + + v1.ConfigSyncState = (function() { + + /** + * Properties of a ConfigSyncState. + * @memberof google.cloud.gkehub.configmanagement.v1 + * @interface IConfigSyncState + * @property {google.cloud.gkehub.configmanagement.v1.IConfigSyncVersion|null} [version] ConfigSyncState version + * @property {google.cloud.gkehub.configmanagement.v1.IConfigSyncDeploymentState|null} [deploymentState] ConfigSyncState deploymentState + * @property {google.cloud.gkehub.configmanagement.v1.ISyncState|null} [syncState] ConfigSyncState syncState + */ + + /** + * Constructs a new ConfigSyncState. + * @memberof google.cloud.gkehub.configmanagement.v1 + * @classdesc Represents a ConfigSyncState. + * @implements IConfigSyncState + * @constructor + * @param {google.cloud.gkehub.configmanagement.v1.IConfigSyncState=} [properties] Properties to set + */ + function ConfigSyncState(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]]; + } + + /** + * ConfigSyncState version. + * @member {google.cloud.gkehub.configmanagement.v1.IConfigSyncVersion|null|undefined} version + * @memberof google.cloud.gkehub.configmanagement.v1.ConfigSyncState + * @instance + */ + ConfigSyncState.prototype.version = null; + + /** + * ConfigSyncState deploymentState. + * @member {google.cloud.gkehub.configmanagement.v1.IConfigSyncDeploymentState|null|undefined} deploymentState + * @memberof google.cloud.gkehub.configmanagement.v1.ConfigSyncState + * @instance + */ + ConfigSyncState.prototype.deploymentState = null; + + /** + * ConfigSyncState syncState. + * @member {google.cloud.gkehub.configmanagement.v1.ISyncState|null|undefined} syncState + * @memberof google.cloud.gkehub.configmanagement.v1.ConfigSyncState + * @instance + */ + ConfigSyncState.prototype.syncState = null; + + /** + * Creates a new ConfigSyncState instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.configmanagement.v1.ConfigSyncState + * @static + * @param {google.cloud.gkehub.configmanagement.v1.IConfigSyncState=} [properties] Properties to set + * @returns {google.cloud.gkehub.configmanagement.v1.ConfigSyncState} ConfigSyncState instance + */ + ConfigSyncState.create = function create(properties) { + return new ConfigSyncState(properties); + }; + + /** + * Encodes the specified ConfigSyncState message. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1.ConfigSyncState.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.configmanagement.v1.ConfigSyncState + * @static + * @param {google.cloud.gkehub.configmanagement.v1.IConfigSyncState} message ConfigSyncState message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + ConfigSyncState.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.version != null && Object.hasOwnProperty.call(message, "version")) + $root.google.cloud.gkehub.configmanagement.v1.ConfigSyncVersion.encode(message.version, writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim(); + if (message.deploymentState != null && Object.hasOwnProperty.call(message, "deploymentState")) + $root.google.cloud.gkehub.configmanagement.v1.ConfigSyncDeploymentState.encode(message.deploymentState, writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim(); + if (message.syncState != null && Object.hasOwnProperty.call(message, "syncState")) + $root.google.cloud.gkehub.configmanagement.v1.SyncState.encode(message.syncState, writer.uint32(/* id 3, wireType 2 =*/26).fork()).ldelim(); + return writer; + }; + + /** + * Encodes the specified ConfigSyncState message, length delimited. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1.ConfigSyncState.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.configmanagement.v1.ConfigSyncState + * @static + * @param {google.cloud.gkehub.configmanagement.v1.IConfigSyncState} message ConfigSyncState message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + ConfigSyncState.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a ConfigSyncState message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.configmanagement.v1.ConfigSyncState + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.configmanagement.v1.ConfigSyncState} ConfigSyncState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + ConfigSyncState.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.configmanagement.v1.ConfigSyncState(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.version = $root.google.cloud.gkehub.configmanagement.v1.ConfigSyncVersion.decode(reader, reader.uint32()); + break; + case 2: + message.deploymentState = $root.google.cloud.gkehub.configmanagement.v1.ConfigSyncDeploymentState.decode(reader, reader.uint32()); + break; + case 3: + message.syncState = $root.google.cloud.gkehub.configmanagement.v1.SyncState.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a ConfigSyncState message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.configmanagement.v1.ConfigSyncState + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.configmanagement.v1.ConfigSyncState} ConfigSyncState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + ConfigSyncState.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a ConfigSyncState message. + * @function verify + * @memberof google.cloud.gkehub.configmanagement.v1.ConfigSyncState + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + ConfigSyncState.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.version != null && message.hasOwnProperty("version")) { + var error = $root.google.cloud.gkehub.configmanagement.v1.ConfigSyncVersion.verify(message.version); + if (error) + return "version." + error; + } + if (message.deploymentState != null && message.hasOwnProperty("deploymentState")) { + var error = $root.google.cloud.gkehub.configmanagement.v1.ConfigSyncDeploymentState.verify(message.deploymentState); + if (error) + return "deploymentState." + error; + } + if (message.syncState != null && message.hasOwnProperty("syncState")) { + var error = $root.google.cloud.gkehub.configmanagement.v1.SyncState.verify(message.syncState); + if (error) + return "syncState." + error; + } + return null; + }; + + /** + * Creates a ConfigSyncState message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.configmanagement.v1.ConfigSyncState + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.configmanagement.v1.ConfigSyncState} ConfigSyncState + */ + ConfigSyncState.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.configmanagement.v1.ConfigSyncState) + return object; + var message = new $root.google.cloud.gkehub.configmanagement.v1.ConfigSyncState(); + if (object.version != null) { + if (typeof object.version !== "object") + throw TypeError(".google.cloud.gkehub.configmanagement.v1.ConfigSyncState.version: object expected"); + message.version = $root.google.cloud.gkehub.configmanagement.v1.ConfigSyncVersion.fromObject(object.version); + } + if (object.deploymentState != null) { + if (typeof object.deploymentState !== "object") + throw TypeError(".google.cloud.gkehub.configmanagement.v1.ConfigSyncState.deploymentState: object expected"); + message.deploymentState = $root.google.cloud.gkehub.configmanagement.v1.ConfigSyncDeploymentState.fromObject(object.deploymentState); + } + if (object.syncState != null) { + if (typeof object.syncState !== "object") + throw TypeError(".google.cloud.gkehub.configmanagement.v1.ConfigSyncState.syncState: object expected"); + message.syncState = $root.google.cloud.gkehub.configmanagement.v1.SyncState.fromObject(object.syncState); + } + return message; + }; + + /** + * Creates a plain object from a ConfigSyncState message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.configmanagement.v1.ConfigSyncState + * @static + * @param {google.cloud.gkehub.configmanagement.v1.ConfigSyncState} message ConfigSyncState + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + ConfigSyncState.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.version = null; + object.deploymentState = null; + object.syncState = null; + } + if (message.version != null && message.hasOwnProperty("version")) + object.version = $root.google.cloud.gkehub.configmanagement.v1.ConfigSyncVersion.toObject(message.version, options); + if (message.deploymentState != null && message.hasOwnProperty("deploymentState")) + object.deploymentState = $root.google.cloud.gkehub.configmanagement.v1.ConfigSyncDeploymentState.toObject(message.deploymentState, options); + if (message.syncState != null && message.hasOwnProperty("syncState")) + object.syncState = $root.google.cloud.gkehub.configmanagement.v1.SyncState.toObject(message.syncState, options); + return object; + }; + + /** + * Converts this ConfigSyncState to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.configmanagement.v1.ConfigSyncState + * @instance + * @returns {Object.} JSON object + */ + ConfigSyncState.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return ConfigSyncState; + })(); + + v1.ConfigSyncVersion = (function() { + + /** + * Properties of a ConfigSyncVersion. + * @memberof google.cloud.gkehub.configmanagement.v1 + * @interface IConfigSyncVersion + * @property {string|null} [importer] ConfigSyncVersion importer + * @property {string|null} [syncer] ConfigSyncVersion syncer + * @property {string|null} [gitSync] ConfigSyncVersion gitSync + * @property {string|null} [monitor] ConfigSyncVersion monitor + * @property {string|null} [reconcilerManager] ConfigSyncVersion reconcilerManager + * @property {string|null} [rootReconciler] ConfigSyncVersion rootReconciler + */ + + /** + * Constructs a new ConfigSyncVersion. + * @memberof google.cloud.gkehub.configmanagement.v1 + * @classdesc Represents a ConfigSyncVersion. + * @implements IConfigSyncVersion + * @constructor + * @param {google.cloud.gkehub.configmanagement.v1.IConfigSyncVersion=} [properties] Properties to set + */ + function ConfigSyncVersion(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]]; + } + + /** + * ConfigSyncVersion importer. + * @member {string} importer + * @memberof google.cloud.gkehub.configmanagement.v1.ConfigSyncVersion + * @instance + */ + ConfigSyncVersion.prototype.importer = ""; + + /** + * ConfigSyncVersion syncer. + * @member {string} syncer + * @memberof google.cloud.gkehub.configmanagement.v1.ConfigSyncVersion + * @instance + */ + ConfigSyncVersion.prototype.syncer = ""; + + /** + * ConfigSyncVersion gitSync. + * @member {string} gitSync + * @memberof google.cloud.gkehub.configmanagement.v1.ConfigSyncVersion + * @instance + */ + ConfigSyncVersion.prototype.gitSync = ""; + + /** + * ConfigSyncVersion monitor. + * @member {string} monitor + * @memberof google.cloud.gkehub.configmanagement.v1.ConfigSyncVersion + * @instance + */ + ConfigSyncVersion.prototype.monitor = ""; + + /** + * ConfigSyncVersion reconcilerManager. + * @member {string} reconcilerManager + * @memberof google.cloud.gkehub.configmanagement.v1.ConfigSyncVersion + * @instance + */ + ConfigSyncVersion.prototype.reconcilerManager = ""; + + /** + * ConfigSyncVersion rootReconciler. + * @member {string} rootReconciler + * @memberof google.cloud.gkehub.configmanagement.v1.ConfigSyncVersion + * @instance + */ + ConfigSyncVersion.prototype.rootReconciler = ""; + + /** + * Creates a new ConfigSyncVersion instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.configmanagement.v1.ConfigSyncVersion + * @static + * @param {google.cloud.gkehub.configmanagement.v1.IConfigSyncVersion=} [properties] Properties to set + * @returns {google.cloud.gkehub.configmanagement.v1.ConfigSyncVersion} ConfigSyncVersion instance + */ + ConfigSyncVersion.create = function create(properties) { + return new ConfigSyncVersion(properties); + }; + + /** + * Encodes the specified ConfigSyncVersion message. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1.ConfigSyncVersion.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.configmanagement.v1.ConfigSyncVersion + * @static + * @param {google.cloud.gkehub.configmanagement.v1.IConfigSyncVersion} message ConfigSyncVersion message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + ConfigSyncVersion.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.importer != null && Object.hasOwnProperty.call(message, "importer")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.importer); + if (message.syncer != null && Object.hasOwnProperty.call(message, "syncer")) + writer.uint32(/* id 2, wireType 2 =*/18).string(message.syncer); + if (message.gitSync != null && Object.hasOwnProperty.call(message, "gitSync")) + writer.uint32(/* id 3, wireType 2 =*/26).string(message.gitSync); + if (message.monitor != null && Object.hasOwnProperty.call(message, "monitor")) + writer.uint32(/* id 4, wireType 2 =*/34).string(message.monitor); + if (message.reconcilerManager != null && Object.hasOwnProperty.call(message, "reconcilerManager")) + writer.uint32(/* id 5, wireType 2 =*/42).string(message.reconcilerManager); + if (message.rootReconciler != null && Object.hasOwnProperty.call(message, "rootReconciler")) + writer.uint32(/* id 6, wireType 2 =*/50).string(message.rootReconciler); + return writer; + }; + + /** + * Encodes the specified ConfigSyncVersion message, length delimited. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1.ConfigSyncVersion.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.configmanagement.v1.ConfigSyncVersion + * @static + * @param {google.cloud.gkehub.configmanagement.v1.IConfigSyncVersion} message ConfigSyncVersion message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + ConfigSyncVersion.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a ConfigSyncVersion message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.configmanagement.v1.ConfigSyncVersion + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.configmanagement.v1.ConfigSyncVersion} ConfigSyncVersion + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + ConfigSyncVersion.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.configmanagement.v1.ConfigSyncVersion(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.importer = reader.string(); + break; + case 2: + message.syncer = reader.string(); + break; + case 3: + message.gitSync = reader.string(); + break; + case 4: + message.monitor = reader.string(); + break; + case 5: + message.reconcilerManager = reader.string(); + break; + case 6: + message.rootReconciler = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a ConfigSyncVersion message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.configmanagement.v1.ConfigSyncVersion + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.configmanagement.v1.ConfigSyncVersion} ConfigSyncVersion + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + ConfigSyncVersion.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a ConfigSyncVersion message. + * @function verify + * @memberof google.cloud.gkehub.configmanagement.v1.ConfigSyncVersion + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + ConfigSyncVersion.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.importer != null && message.hasOwnProperty("importer")) + if (!$util.isString(message.importer)) + return "importer: string expected"; + if (message.syncer != null && message.hasOwnProperty("syncer")) + if (!$util.isString(message.syncer)) + return "syncer: string expected"; + if (message.gitSync != null && message.hasOwnProperty("gitSync")) + if (!$util.isString(message.gitSync)) + return "gitSync: string expected"; + if (message.monitor != null && message.hasOwnProperty("monitor")) + if (!$util.isString(message.monitor)) + return "monitor: string expected"; + if (message.reconcilerManager != null && message.hasOwnProperty("reconcilerManager")) + if (!$util.isString(message.reconcilerManager)) + return "reconcilerManager: string expected"; + if (message.rootReconciler != null && message.hasOwnProperty("rootReconciler")) + if (!$util.isString(message.rootReconciler)) + return "rootReconciler: string expected"; + return null; + }; + + /** + * Creates a ConfigSyncVersion message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.configmanagement.v1.ConfigSyncVersion + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.configmanagement.v1.ConfigSyncVersion} ConfigSyncVersion + */ + ConfigSyncVersion.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.configmanagement.v1.ConfigSyncVersion) + return object; + var message = new $root.google.cloud.gkehub.configmanagement.v1.ConfigSyncVersion(); + if (object.importer != null) + message.importer = String(object.importer); + if (object.syncer != null) + message.syncer = String(object.syncer); + if (object.gitSync != null) + message.gitSync = String(object.gitSync); + if (object.monitor != null) + message.monitor = String(object.monitor); + if (object.reconcilerManager != null) + message.reconcilerManager = String(object.reconcilerManager); + if (object.rootReconciler != null) + message.rootReconciler = String(object.rootReconciler); + return message; + }; + + /** + * Creates a plain object from a ConfigSyncVersion message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.configmanagement.v1.ConfigSyncVersion + * @static + * @param {google.cloud.gkehub.configmanagement.v1.ConfigSyncVersion} message ConfigSyncVersion + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + ConfigSyncVersion.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.importer = ""; + object.syncer = ""; + object.gitSync = ""; + object.monitor = ""; + object.reconcilerManager = ""; + object.rootReconciler = ""; + } + if (message.importer != null && message.hasOwnProperty("importer")) + object.importer = message.importer; + if (message.syncer != null && message.hasOwnProperty("syncer")) + object.syncer = message.syncer; + if (message.gitSync != null && message.hasOwnProperty("gitSync")) + object.gitSync = message.gitSync; + if (message.monitor != null && message.hasOwnProperty("monitor")) + object.monitor = message.monitor; + if (message.reconcilerManager != null && message.hasOwnProperty("reconcilerManager")) + object.reconcilerManager = message.reconcilerManager; + if (message.rootReconciler != null && message.hasOwnProperty("rootReconciler")) + object.rootReconciler = message.rootReconciler; + return object; + }; + + /** + * Converts this ConfigSyncVersion to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.configmanagement.v1.ConfigSyncVersion + * @instance + * @returns {Object.} JSON object + */ + ConfigSyncVersion.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return ConfigSyncVersion; + })(); + + v1.ConfigSyncDeploymentState = (function() { + + /** + * Properties of a ConfigSyncDeploymentState. + * @memberof google.cloud.gkehub.configmanagement.v1 + * @interface IConfigSyncDeploymentState + * @property {google.cloud.gkehub.configmanagement.v1.DeploymentState|null} [importer] ConfigSyncDeploymentState importer + * @property {google.cloud.gkehub.configmanagement.v1.DeploymentState|null} [syncer] ConfigSyncDeploymentState syncer + * @property {google.cloud.gkehub.configmanagement.v1.DeploymentState|null} [gitSync] ConfigSyncDeploymentState gitSync + * @property {google.cloud.gkehub.configmanagement.v1.DeploymentState|null} [monitor] ConfigSyncDeploymentState monitor + * @property {google.cloud.gkehub.configmanagement.v1.DeploymentState|null} [reconcilerManager] ConfigSyncDeploymentState reconcilerManager + * @property {google.cloud.gkehub.configmanagement.v1.DeploymentState|null} [rootReconciler] ConfigSyncDeploymentState rootReconciler + */ + + /** + * Constructs a new ConfigSyncDeploymentState. + * @memberof google.cloud.gkehub.configmanagement.v1 + * @classdesc Represents a ConfigSyncDeploymentState. + * @implements IConfigSyncDeploymentState + * @constructor + * @param {google.cloud.gkehub.configmanagement.v1.IConfigSyncDeploymentState=} [properties] Properties to set + */ + function ConfigSyncDeploymentState(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]]; + } + + /** + * ConfigSyncDeploymentState importer. + * @member {google.cloud.gkehub.configmanagement.v1.DeploymentState} importer + * @memberof google.cloud.gkehub.configmanagement.v1.ConfigSyncDeploymentState + * @instance + */ + ConfigSyncDeploymentState.prototype.importer = 0; + + /** + * ConfigSyncDeploymentState syncer. + * @member {google.cloud.gkehub.configmanagement.v1.DeploymentState} syncer + * @memberof google.cloud.gkehub.configmanagement.v1.ConfigSyncDeploymentState + * @instance + */ + ConfigSyncDeploymentState.prototype.syncer = 0; + + /** + * ConfigSyncDeploymentState gitSync. + * @member {google.cloud.gkehub.configmanagement.v1.DeploymentState} gitSync + * @memberof google.cloud.gkehub.configmanagement.v1.ConfigSyncDeploymentState + * @instance + */ + ConfigSyncDeploymentState.prototype.gitSync = 0; + + /** + * ConfigSyncDeploymentState monitor. + * @member {google.cloud.gkehub.configmanagement.v1.DeploymentState} monitor + * @memberof google.cloud.gkehub.configmanagement.v1.ConfigSyncDeploymentState + * @instance + */ + ConfigSyncDeploymentState.prototype.monitor = 0; + + /** + * ConfigSyncDeploymentState reconcilerManager. + * @member {google.cloud.gkehub.configmanagement.v1.DeploymentState} reconcilerManager + * @memberof google.cloud.gkehub.configmanagement.v1.ConfigSyncDeploymentState + * @instance + */ + ConfigSyncDeploymentState.prototype.reconcilerManager = 0; + + /** + * ConfigSyncDeploymentState rootReconciler. + * @member {google.cloud.gkehub.configmanagement.v1.DeploymentState} rootReconciler + * @memberof google.cloud.gkehub.configmanagement.v1.ConfigSyncDeploymentState + * @instance + */ + ConfigSyncDeploymentState.prototype.rootReconciler = 0; + + /** + * Creates a new ConfigSyncDeploymentState instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.configmanagement.v1.ConfigSyncDeploymentState + * @static + * @param {google.cloud.gkehub.configmanagement.v1.IConfigSyncDeploymentState=} [properties] Properties to set + * @returns {google.cloud.gkehub.configmanagement.v1.ConfigSyncDeploymentState} ConfigSyncDeploymentState instance + */ + ConfigSyncDeploymentState.create = function create(properties) { + return new ConfigSyncDeploymentState(properties); + }; + + /** + * Encodes the specified ConfigSyncDeploymentState message. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1.ConfigSyncDeploymentState.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.configmanagement.v1.ConfigSyncDeploymentState + * @static + * @param {google.cloud.gkehub.configmanagement.v1.IConfigSyncDeploymentState} message ConfigSyncDeploymentState message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + ConfigSyncDeploymentState.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.importer != null && Object.hasOwnProperty.call(message, "importer")) + writer.uint32(/* id 1, wireType 0 =*/8).int32(message.importer); + if (message.syncer != null && Object.hasOwnProperty.call(message, "syncer")) + writer.uint32(/* id 2, wireType 0 =*/16).int32(message.syncer); + if (message.gitSync != null && Object.hasOwnProperty.call(message, "gitSync")) + writer.uint32(/* id 3, wireType 0 =*/24).int32(message.gitSync); + if (message.monitor != null && Object.hasOwnProperty.call(message, "monitor")) + writer.uint32(/* id 4, wireType 0 =*/32).int32(message.monitor); + if (message.reconcilerManager != null && Object.hasOwnProperty.call(message, "reconcilerManager")) + writer.uint32(/* id 5, wireType 0 =*/40).int32(message.reconcilerManager); + if (message.rootReconciler != null && Object.hasOwnProperty.call(message, "rootReconciler")) + writer.uint32(/* id 6, wireType 0 =*/48).int32(message.rootReconciler); + return writer; + }; + + /** + * Encodes the specified ConfigSyncDeploymentState message, length delimited. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1.ConfigSyncDeploymentState.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.configmanagement.v1.ConfigSyncDeploymentState + * @static + * @param {google.cloud.gkehub.configmanagement.v1.IConfigSyncDeploymentState} message ConfigSyncDeploymentState message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + ConfigSyncDeploymentState.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a ConfigSyncDeploymentState message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.configmanagement.v1.ConfigSyncDeploymentState + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.configmanagement.v1.ConfigSyncDeploymentState} ConfigSyncDeploymentState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + ConfigSyncDeploymentState.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.configmanagement.v1.ConfigSyncDeploymentState(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.importer = reader.int32(); + break; + case 2: + message.syncer = reader.int32(); + break; + case 3: + message.gitSync = reader.int32(); + break; + case 4: + message.monitor = reader.int32(); + break; + case 5: + message.reconcilerManager = reader.int32(); + break; + case 6: + message.rootReconciler = reader.int32(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a ConfigSyncDeploymentState message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.configmanagement.v1.ConfigSyncDeploymentState + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.configmanagement.v1.ConfigSyncDeploymentState} ConfigSyncDeploymentState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + ConfigSyncDeploymentState.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a ConfigSyncDeploymentState message. + * @function verify + * @memberof google.cloud.gkehub.configmanagement.v1.ConfigSyncDeploymentState + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + ConfigSyncDeploymentState.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.importer != null && message.hasOwnProperty("importer")) + switch (message.importer) { + default: + return "importer: enum value expected"; + case 0: + case 1: + case 2: + case 3: + break; + } + if (message.syncer != null && message.hasOwnProperty("syncer")) + switch (message.syncer) { + default: + return "syncer: enum value expected"; + case 0: + case 1: + case 2: + case 3: + break; + } + if (message.gitSync != null && message.hasOwnProperty("gitSync")) + switch (message.gitSync) { + default: + return "gitSync: enum value expected"; + case 0: + case 1: + case 2: + case 3: + break; + } + if (message.monitor != null && message.hasOwnProperty("monitor")) + switch (message.monitor) { + default: + return "monitor: enum value expected"; + case 0: + case 1: + case 2: + case 3: + break; + } + if (message.reconcilerManager != null && message.hasOwnProperty("reconcilerManager")) + switch (message.reconcilerManager) { + default: + return "reconcilerManager: enum value expected"; + case 0: + case 1: + case 2: + case 3: + break; + } + if (message.rootReconciler != null && message.hasOwnProperty("rootReconciler")) + switch (message.rootReconciler) { + default: + return "rootReconciler: enum value expected"; + case 0: + case 1: + case 2: + case 3: + break; + } + return null; + }; + + /** + * Creates a ConfigSyncDeploymentState message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.configmanagement.v1.ConfigSyncDeploymentState + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.configmanagement.v1.ConfigSyncDeploymentState} ConfigSyncDeploymentState + */ + ConfigSyncDeploymentState.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.configmanagement.v1.ConfigSyncDeploymentState) + return object; + var message = new $root.google.cloud.gkehub.configmanagement.v1.ConfigSyncDeploymentState(); + switch (object.importer) { + case "DEPLOYMENT_STATE_UNSPECIFIED": + case 0: + message.importer = 0; + break; + case "NOT_INSTALLED": + case 1: + message.importer = 1; + break; + case "INSTALLED": + case 2: + message.importer = 2; + break; + case "ERROR": + case 3: + message.importer = 3; + break; + } + switch (object.syncer) { + case "DEPLOYMENT_STATE_UNSPECIFIED": + case 0: + message.syncer = 0; + break; + case "NOT_INSTALLED": + case 1: + message.syncer = 1; + break; + case "INSTALLED": + case 2: + message.syncer = 2; + break; + case "ERROR": + case 3: + message.syncer = 3; + break; + } + switch (object.gitSync) { + case "DEPLOYMENT_STATE_UNSPECIFIED": + case 0: + message.gitSync = 0; + break; + case "NOT_INSTALLED": + case 1: + message.gitSync = 1; + break; + case "INSTALLED": + case 2: + message.gitSync = 2; + break; + case "ERROR": + case 3: + message.gitSync = 3; + break; + } + switch (object.monitor) { + case "DEPLOYMENT_STATE_UNSPECIFIED": + case 0: + message.monitor = 0; + break; + case "NOT_INSTALLED": + case 1: + message.monitor = 1; + break; + case "INSTALLED": + case 2: + message.monitor = 2; + break; + case "ERROR": + case 3: + message.monitor = 3; + break; + } + switch (object.reconcilerManager) { + case "DEPLOYMENT_STATE_UNSPECIFIED": + case 0: + message.reconcilerManager = 0; + break; + case "NOT_INSTALLED": + case 1: + message.reconcilerManager = 1; + break; + case "INSTALLED": + case 2: + message.reconcilerManager = 2; + break; + case "ERROR": + case 3: + message.reconcilerManager = 3; + break; + } + switch (object.rootReconciler) { + case "DEPLOYMENT_STATE_UNSPECIFIED": + case 0: + message.rootReconciler = 0; + break; + case "NOT_INSTALLED": + case 1: + message.rootReconciler = 1; + break; + case "INSTALLED": + case 2: + message.rootReconciler = 2; + break; + case "ERROR": + case 3: + message.rootReconciler = 3; + break; + } + return message; + }; + + /** + * Creates a plain object from a ConfigSyncDeploymentState message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.configmanagement.v1.ConfigSyncDeploymentState + * @static + * @param {google.cloud.gkehub.configmanagement.v1.ConfigSyncDeploymentState} message ConfigSyncDeploymentState + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + ConfigSyncDeploymentState.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.importer = options.enums === String ? "DEPLOYMENT_STATE_UNSPECIFIED" : 0; + object.syncer = options.enums === String ? "DEPLOYMENT_STATE_UNSPECIFIED" : 0; + object.gitSync = options.enums === String ? "DEPLOYMENT_STATE_UNSPECIFIED" : 0; + object.monitor = options.enums === String ? "DEPLOYMENT_STATE_UNSPECIFIED" : 0; + object.reconcilerManager = options.enums === String ? "DEPLOYMENT_STATE_UNSPECIFIED" : 0; + object.rootReconciler = options.enums === String ? "DEPLOYMENT_STATE_UNSPECIFIED" : 0; + } + if (message.importer != null && message.hasOwnProperty("importer")) + object.importer = options.enums === String ? $root.google.cloud.gkehub.configmanagement.v1.DeploymentState[message.importer] : message.importer; + if (message.syncer != null && message.hasOwnProperty("syncer")) + object.syncer = options.enums === String ? $root.google.cloud.gkehub.configmanagement.v1.DeploymentState[message.syncer] : message.syncer; + if (message.gitSync != null && message.hasOwnProperty("gitSync")) + object.gitSync = options.enums === String ? $root.google.cloud.gkehub.configmanagement.v1.DeploymentState[message.gitSync] : message.gitSync; + if (message.monitor != null && message.hasOwnProperty("monitor")) + object.monitor = options.enums === String ? $root.google.cloud.gkehub.configmanagement.v1.DeploymentState[message.monitor] : message.monitor; + if (message.reconcilerManager != null && message.hasOwnProperty("reconcilerManager")) + object.reconcilerManager = options.enums === String ? $root.google.cloud.gkehub.configmanagement.v1.DeploymentState[message.reconcilerManager] : message.reconcilerManager; + if (message.rootReconciler != null && message.hasOwnProperty("rootReconciler")) + object.rootReconciler = options.enums === String ? $root.google.cloud.gkehub.configmanagement.v1.DeploymentState[message.rootReconciler] : message.rootReconciler; + return object; + }; + + /** + * Converts this ConfigSyncDeploymentState to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.configmanagement.v1.ConfigSyncDeploymentState + * @instance + * @returns {Object.} JSON object + */ + ConfigSyncDeploymentState.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return ConfigSyncDeploymentState; + })(); + + v1.SyncState = (function() { + + /** + * Properties of a SyncState. + * @memberof google.cloud.gkehub.configmanagement.v1 + * @interface ISyncState + * @property {string|null} [sourceToken] SyncState sourceToken + * @property {string|null} [importToken] SyncState importToken + * @property {string|null} [syncToken] SyncState syncToken + * @property {string|null} [lastSync] SyncState lastSync + * @property {google.protobuf.ITimestamp|null} [lastSyncTime] SyncState lastSyncTime + * @property {google.cloud.gkehub.configmanagement.v1.SyncState.SyncCode|null} [code] SyncState code + * @property {Array.|null} [errors] SyncState errors + */ + + /** + * Constructs a new SyncState. + * @memberof google.cloud.gkehub.configmanagement.v1 + * @classdesc Represents a SyncState. + * @implements ISyncState + * @constructor + * @param {google.cloud.gkehub.configmanagement.v1.ISyncState=} [properties] Properties to set + */ + function SyncState(properties) { + this.errors = []; + 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]]; + } + + /** + * SyncState sourceToken. + * @member {string} sourceToken + * @memberof google.cloud.gkehub.configmanagement.v1.SyncState + * @instance + */ + SyncState.prototype.sourceToken = ""; + + /** + * SyncState importToken. + * @member {string} importToken + * @memberof google.cloud.gkehub.configmanagement.v1.SyncState + * @instance + */ + SyncState.prototype.importToken = ""; + + /** + * SyncState syncToken. + * @member {string} syncToken + * @memberof google.cloud.gkehub.configmanagement.v1.SyncState + * @instance + */ + SyncState.prototype.syncToken = ""; + + /** + * SyncState lastSync. + * @member {string} lastSync + * @memberof google.cloud.gkehub.configmanagement.v1.SyncState + * @instance + */ + SyncState.prototype.lastSync = ""; + + /** + * SyncState lastSyncTime. + * @member {google.protobuf.ITimestamp|null|undefined} lastSyncTime + * @memberof google.cloud.gkehub.configmanagement.v1.SyncState + * @instance + */ + SyncState.prototype.lastSyncTime = null; + + /** + * SyncState code. + * @member {google.cloud.gkehub.configmanagement.v1.SyncState.SyncCode} code + * @memberof google.cloud.gkehub.configmanagement.v1.SyncState + * @instance + */ + SyncState.prototype.code = 0; + + /** + * SyncState errors. + * @member {Array.} errors + * @memberof google.cloud.gkehub.configmanagement.v1.SyncState + * @instance + */ + SyncState.prototype.errors = $util.emptyArray; + + /** + * Creates a new SyncState instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.configmanagement.v1.SyncState + * @static + * @param {google.cloud.gkehub.configmanagement.v1.ISyncState=} [properties] Properties to set + * @returns {google.cloud.gkehub.configmanagement.v1.SyncState} SyncState instance + */ + SyncState.create = function create(properties) { + return new SyncState(properties); + }; + + /** + * Encodes the specified SyncState message. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1.SyncState.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.configmanagement.v1.SyncState + * @static + * @param {google.cloud.gkehub.configmanagement.v1.ISyncState} message SyncState message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + SyncState.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.sourceToken != null && Object.hasOwnProperty.call(message, "sourceToken")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.sourceToken); + if (message.importToken != null && Object.hasOwnProperty.call(message, "importToken")) + writer.uint32(/* id 2, wireType 2 =*/18).string(message.importToken); + if (message.syncToken != null && Object.hasOwnProperty.call(message, "syncToken")) + writer.uint32(/* id 3, wireType 2 =*/26).string(message.syncToken); + if (message.lastSync != null && Object.hasOwnProperty.call(message, "lastSync")) + writer.uint32(/* id 4, wireType 2 =*/34).string(message.lastSync); + if (message.code != null && Object.hasOwnProperty.call(message, "code")) + writer.uint32(/* id 5, wireType 0 =*/40).int32(message.code); + if (message.errors != null && message.errors.length) + for (var i = 0; i < message.errors.length; ++i) + $root.google.cloud.gkehub.configmanagement.v1.SyncError.encode(message.errors[i], writer.uint32(/* id 6, wireType 2 =*/50).fork()).ldelim(); + if (message.lastSyncTime != null && Object.hasOwnProperty.call(message, "lastSyncTime")) + $root.google.protobuf.Timestamp.encode(message.lastSyncTime, writer.uint32(/* id 7, wireType 2 =*/58).fork()).ldelim(); + return writer; + }; + + /** + * Encodes the specified SyncState message, length delimited. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1.SyncState.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.configmanagement.v1.SyncState + * @static + * @param {google.cloud.gkehub.configmanagement.v1.ISyncState} message SyncState message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + SyncState.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a SyncState message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.configmanagement.v1.SyncState + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.configmanagement.v1.SyncState} SyncState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + SyncState.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.configmanagement.v1.SyncState(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.sourceToken = reader.string(); + break; + case 2: + message.importToken = reader.string(); + break; + case 3: + message.syncToken = reader.string(); + break; + case 4: + message.lastSync = reader.string(); + break; + case 7: + message.lastSyncTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + break; + case 5: + message.code = reader.int32(); + break; + case 6: + if (!(message.errors && message.errors.length)) + message.errors = []; + message.errors.push($root.google.cloud.gkehub.configmanagement.v1.SyncError.decode(reader, reader.uint32())); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a SyncState message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.configmanagement.v1.SyncState + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.configmanagement.v1.SyncState} SyncState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + SyncState.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a SyncState message. + * @function verify + * @memberof google.cloud.gkehub.configmanagement.v1.SyncState + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + SyncState.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.sourceToken != null && message.hasOwnProperty("sourceToken")) + if (!$util.isString(message.sourceToken)) + return "sourceToken: string expected"; + if (message.importToken != null && message.hasOwnProperty("importToken")) + if (!$util.isString(message.importToken)) + return "importToken: string expected"; + if (message.syncToken != null && message.hasOwnProperty("syncToken")) + if (!$util.isString(message.syncToken)) + return "syncToken: string expected"; + if (message.lastSync != null && message.hasOwnProperty("lastSync")) + if (!$util.isString(message.lastSync)) + return "lastSync: string expected"; + if (message.lastSyncTime != null && message.hasOwnProperty("lastSyncTime")) { + var error = $root.google.protobuf.Timestamp.verify(message.lastSyncTime); + if (error) + return "lastSyncTime." + error; + } + if (message.code != null && message.hasOwnProperty("code")) + switch (message.code) { + default: + return "code: enum value expected"; + case 0: + case 1: + case 2: + case 3: + case 4: + case 5: + case 6: + case 7: + break; + } + if (message.errors != null && message.hasOwnProperty("errors")) { + if (!Array.isArray(message.errors)) + return "errors: array expected"; + for (var i = 0; i < message.errors.length; ++i) { + var error = $root.google.cloud.gkehub.configmanagement.v1.SyncError.verify(message.errors[i]); + if (error) + return "errors." + error; + } + } + return null; + }; + + /** + * Creates a SyncState message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.configmanagement.v1.SyncState + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.configmanagement.v1.SyncState} SyncState + */ + SyncState.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.configmanagement.v1.SyncState) + return object; + var message = new $root.google.cloud.gkehub.configmanagement.v1.SyncState(); + if (object.sourceToken != null) + message.sourceToken = String(object.sourceToken); + if (object.importToken != null) + message.importToken = String(object.importToken); + if (object.syncToken != null) + message.syncToken = String(object.syncToken); + if (object.lastSync != null) + message.lastSync = String(object.lastSync); + if (object.lastSyncTime != null) { + if (typeof object.lastSyncTime !== "object") + throw TypeError(".google.cloud.gkehub.configmanagement.v1.SyncState.lastSyncTime: object expected"); + message.lastSyncTime = $root.google.protobuf.Timestamp.fromObject(object.lastSyncTime); + } + switch (object.code) { + case "SYNC_CODE_UNSPECIFIED": + case 0: + message.code = 0; + break; + case "SYNCED": + case 1: + message.code = 1; + break; + case "PENDING": + case 2: + message.code = 2; + break; + case "ERROR": + case 3: + message.code = 3; + break; + case "NOT_CONFIGURED": + case 4: + message.code = 4; + break; + case "NOT_INSTALLED": + case 5: + message.code = 5; + break; + case "UNAUTHORIZED": + case 6: + message.code = 6; + break; + case "UNREACHABLE": + case 7: + message.code = 7; + break; + } + if (object.errors) { + if (!Array.isArray(object.errors)) + throw TypeError(".google.cloud.gkehub.configmanagement.v1.SyncState.errors: array expected"); + message.errors = []; + for (var i = 0; i < object.errors.length; ++i) { + if (typeof object.errors[i] !== "object") + throw TypeError(".google.cloud.gkehub.configmanagement.v1.SyncState.errors: object expected"); + message.errors[i] = $root.google.cloud.gkehub.configmanagement.v1.SyncError.fromObject(object.errors[i]); + } + } + return message; + }; + + /** + * Creates a plain object from a SyncState message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.configmanagement.v1.SyncState + * @static + * @param {google.cloud.gkehub.configmanagement.v1.SyncState} message SyncState + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + SyncState.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.arrays || options.defaults) + object.errors = []; + if (options.defaults) { + object.sourceToken = ""; + object.importToken = ""; + object.syncToken = ""; + object.lastSync = ""; + object.code = options.enums === String ? "SYNC_CODE_UNSPECIFIED" : 0; + object.lastSyncTime = null; + } + if (message.sourceToken != null && message.hasOwnProperty("sourceToken")) + object.sourceToken = message.sourceToken; + if (message.importToken != null && message.hasOwnProperty("importToken")) + object.importToken = message.importToken; + if (message.syncToken != null && message.hasOwnProperty("syncToken")) + object.syncToken = message.syncToken; + if (message.lastSync != null && message.hasOwnProperty("lastSync")) + object.lastSync = message.lastSync; + if (message.code != null && message.hasOwnProperty("code")) + object.code = options.enums === String ? $root.google.cloud.gkehub.configmanagement.v1.SyncState.SyncCode[message.code] : message.code; + if (message.errors && message.errors.length) { + object.errors = []; + for (var j = 0; j < message.errors.length; ++j) + object.errors[j] = $root.google.cloud.gkehub.configmanagement.v1.SyncError.toObject(message.errors[j], options); + } + if (message.lastSyncTime != null && message.hasOwnProperty("lastSyncTime")) + object.lastSyncTime = $root.google.protobuf.Timestamp.toObject(message.lastSyncTime, options); + return object; + }; + + /** + * Converts this SyncState to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.configmanagement.v1.SyncState + * @instance + * @returns {Object.} JSON object + */ + SyncState.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + /** + * SyncCode enum. + * @name google.cloud.gkehub.configmanagement.v1.SyncState.SyncCode + * @enum {number} + * @property {number} SYNC_CODE_UNSPECIFIED=0 SYNC_CODE_UNSPECIFIED value + * @property {number} SYNCED=1 SYNCED value + * @property {number} PENDING=2 PENDING value + * @property {number} ERROR=3 ERROR value + * @property {number} NOT_CONFIGURED=4 NOT_CONFIGURED value + * @property {number} NOT_INSTALLED=5 NOT_INSTALLED value + * @property {number} UNAUTHORIZED=6 UNAUTHORIZED value + * @property {number} UNREACHABLE=7 UNREACHABLE value + */ + SyncState.SyncCode = (function() { + var valuesById = {}, values = Object.create(valuesById); + values[valuesById[0] = "SYNC_CODE_UNSPECIFIED"] = 0; + values[valuesById[1] = "SYNCED"] = 1; + values[valuesById[2] = "PENDING"] = 2; + values[valuesById[3] = "ERROR"] = 3; + values[valuesById[4] = "NOT_CONFIGURED"] = 4; + values[valuesById[5] = "NOT_INSTALLED"] = 5; + values[valuesById[6] = "UNAUTHORIZED"] = 6; + values[valuesById[7] = "UNREACHABLE"] = 7; + return values; + })(); + + return SyncState; + })(); + + v1.SyncError = (function() { + + /** + * Properties of a SyncError. + * @memberof google.cloud.gkehub.configmanagement.v1 + * @interface ISyncError + * @property {string|null} [code] SyncError code + * @property {string|null} [errorMessage] SyncError errorMessage + * @property {Array.|null} [errorResources] SyncError errorResources + */ + + /** + * Constructs a new SyncError. + * @memberof google.cloud.gkehub.configmanagement.v1 + * @classdesc Represents a SyncError. + * @implements ISyncError + * @constructor + * @param {google.cloud.gkehub.configmanagement.v1.ISyncError=} [properties] Properties to set + */ + function SyncError(properties) { + this.errorResources = []; + 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]]; + } + + /** + * SyncError code. + * @member {string} code + * @memberof google.cloud.gkehub.configmanagement.v1.SyncError + * @instance + */ + SyncError.prototype.code = ""; + + /** + * SyncError errorMessage. + * @member {string} errorMessage + * @memberof google.cloud.gkehub.configmanagement.v1.SyncError + * @instance + */ + SyncError.prototype.errorMessage = ""; + + /** + * SyncError errorResources. + * @member {Array.} errorResources + * @memberof google.cloud.gkehub.configmanagement.v1.SyncError + * @instance + */ + SyncError.prototype.errorResources = $util.emptyArray; + + /** + * Creates a new SyncError instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.configmanagement.v1.SyncError + * @static + * @param {google.cloud.gkehub.configmanagement.v1.ISyncError=} [properties] Properties to set + * @returns {google.cloud.gkehub.configmanagement.v1.SyncError} SyncError instance + */ + SyncError.create = function create(properties) { + return new SyncError(properties); + }; + + /** + * Encodes the specified SyncError message. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1.SyncError.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.configmanagement.v1.SyncError + * @static + * @param {google.cloud.gkehub.configmanagement.v1.ISyncError} message SyncError message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + SyncError.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.code != null && Object.hasOwnProperty.call(message, "code")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.code); + if (message.errorMessage != null && Object.hasOwnProperty.call(message, "errorMessage")) + writer.uint32(/* id 2, wireType 2 =*/18).string(message.errorMessage); + if (message.errorResources != null && message.errorResources.length) + for (var i = 0; i < message.errorResources.length; ++i) + $root.google.cloud.gkehub.configmanagement.v1.ErrorResource.encode(message.errorResources[i], writer.uint32(/* id 3, wireType 2 =*/26).fork()).ldelim(); + return writer; + }; + + /** + * Encodes the specified SyncError message, length delimited. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1.SyncError.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.configmanagement.v1.SyncError + * @static + * @param {google.cloud.gkehub.configmanagement.v1.ISyncError} message SyncError message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + SyncError.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a SyncError message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.configmanagement.v1.SyncError + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.configmanagement.v1.SyncError} SyncError + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + SyncError.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.configmanagement.v1.SyncError(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.code = reader.string(); + break; + case 2: + message.errorMessage = reader.string(); + break; + case 3: + if (!(message.errorResources && message.errorResources.length)) + message.errorResources = []; + message.errorResources.push($root.google.cloud.gkehub.configmanagement.v1.ErrorResource.decode(reader, reader.uint32())); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a SyncError message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.configmanagement.v1.SyncError + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.configmanagement.v1.SyncError} SyncError + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + SyncError.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a SyncError message. + * @function verify + * @memberof google.cloud.gkehub.configmanagement.v1.SyncError + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + SyncError.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.code != null && message.hasOwnProperty("code")) + if (!$util.isString(message.code)) + return "code: string expected"; + if (message.errorMessage != null && message.hasOwnProperty("errorMessage")) + if (!$util.isString(message.errorMessage)) + return "errorMessage: string expected"; + if (message.errorResources != null && message.hasOwnProperty("errorResources")) { + if (!Array.isArray(message.errorResources)) + return "errorResources: array expected"; + for (var i = 0; i < message.errorResources.length; ++i) { + var error = $root.google.cloud.gkehub.configmanagement.v1.ErrorResource.verify(message.errorResources[i]); + if (error) + return "errorResources." + error; + } + } + return null; + }; + + /** + * Creates a SyncError message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.configmanagement.v1.SyncError + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.configmanagement.v1.SyncError} SyncError + */ + SyncError.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.configmanagement.v1.SyncError) + return object; + var message = new $root.google.cloud.gkehub.configmanagement.v1.SyncError(); + if (object.code != null) + message.code = String(object.code); + if (object.errorMessage != null) + message.errorMessage = String(object.errorMessage); + if (object.errorResources) { + if (!Array.isArray(object.errorResources)) + throw TypeError(".google.cloud.gkehub.configmanagement.v1.SyncError.errorResources: array expected"); + message.errorResources = []; + for (var i = 0; i < object.errorResources.length; ++i) { + if (typeof object.errorResources[i] !== "object") + throw TypeError(".google.cloud.gkehub.configmanagement.v1.SyncError.errorResources: object expected"); + message.errorResources[i] = $root.google.cloud.gkehub.configmanagement.v1.ErrorResource.fromObject(object.errorResources[i]); + } + } + return message; + }; + + /** + * Creates a plain object from a SyncError message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.configmanagement.v1.SyncError + * @static + * @param {google.cloud.gkehub.configmanagement.v1.SyncError} message SyncError + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + SyncError.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.arrays || options.defaults) + object.errorResources = []; + if (options.defaults) { + object.code = ""; + object.errorMessage = ""; + } + if (message.code != null && message.hasOwnProperty("code")) + object.code = message.code; + if (message.errorMessage != null && message.hasOwnProperty("errorMessage")) + object.errorMessage = message.errorMessage; + if (message.errorResources && message.errorResources.length) { + object.errorResources = []; + for (var j = 0; j < message.errorResources.length; ++j) + object.errorResources[j] = $root.google.cloud.gkehub.configmanagement.v1.ErrorResource.toObject(message.errorResources[j], options); + } + return object; + }; + + /** + * Converts this SyncError to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.configmanagement.v1.SyncError + * @instance + * @returns {Object.} JSON object + */ + SyncError.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return SyncError; + })(); + + v1.ErrorResource = (function() { + + /** + * Properties of an ErrorResource. + * @memberof google.cloud.gkehub.configmanagement.v1 + * @interface IErrorResource + * @property {string|null} [sourcePath] ErrorResource sourcePath + * @property {string|null} [resourceName] ErrorResource resourceName + * @property {string|null} [resourceNamespace] ErrorResource resourceNamespace + * @property {google.cloud.gkehub.configmanagement.v1.IGroupVersionKind|null} [resourceGvk] ErrorResource resourceGvk + */ + + /** + * Constructs a new ErrorResource. + * @memberof google.cloud.gkehub.configmanagement.v1 + * @classdesc Represents an ErrorResource. + * @implements IErrorResource + * @constructor + * @param {google.cloud.gkehub.configmanagement.v1.IErrorResource=} [properties] Properties to set + */ + function ErrorResource(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]]; + } + + /** + * ErrorResource sourcePath. + * @member {string} sourcePath + * @memberof google.cloud.gkehub.configmanagement.v1.ErrorResource + * @instance + */ + ErrorResource.prototype.sourcePath = ""; + + /** + * ErrorResource resourceName. + * @member {string} resourceName + * @memberof google.cloud.gkehub.configmanagement.v1.ErrorResource + * @instance + */ + ErrorResource.prototype.resourceName = ""; + + /** + * ErrorResource resourceNamespace. + * @member {string} resourceNamespace + * @memberof google.cloud.gkehub.configmanagement.v1.ErrorResource + * @instance + */ + ErrorResource.prototype.resourceNamespace = ""; + + /** + * ErrorResource resourceGvk. + * @member {google.cloud.gkehub.configmanagement.v1.IGroupVersionKind|null|undefined} resourceGvk + * @memberof google.cloud.gkehub.configmanagement.v1.ErrorResource + * @instance + */ + ErrorResource.prototype.resourceGvk = null; + + /** + * Creates a new ErrorResource instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.configmanagement.v1.ErrorResource + * @static + * @param {google.cloud.gkehub.configmanagement.v1.IErrorResource=} [properties] Properties to set + * @returns {google.cloud.gkehub.configmanagement.v1.ErrorResource} ErrorResource instance + */ + ErrorResource.create = function create(properties) { + return new ErrorResource(properties); + }; + + /** + * Encodes the specified ErrorResource message. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1.ErrorResource.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.configmanagement.v1.ErrorResource + * @static + * @param {google.cloud.gkehub.configmanagement.v1.IErrorResource} message ErrorResource message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + ErrorResource.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.sourcePath != null && Object.hasOwnProperty.call(message, "sourcePath")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.sourcePath); + if (message.resourceName != null && Object.hasOwnProperty.call(message, "resourceName")) + writer.uint32(/* id 2, wireType 2 =*/18).string(message.resourceName); + if (message.resourceNamespace != null && Object.hasOwnProperty.call(message, "resourceNamespace")) + writer.uint32(/* id 3, wireType 2 =*/26).string(message.resourceNamespace); + if (message.resourceGvk != null && Object.hasOwnProperty.call(message, "resourceGvk")) + $root.google.cloud.gkehub.configmanagement.v1.GroupVersionKind.encode(message.resourceGvk, writer.uint32(/* id 4, wireType 2 =*/34).fork()).ldelim(); + return writer; + }; + + /** + * Encodes the specified ErrorResource message, length delimited. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1.ErrorResource.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.configmanagement.v1.ErrorResource + * @static + * @param {google.cloud.gkehub.configmanagement.v1.IErrorResource} message ErrorResource message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + ErrorResource.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes an ErrorResource message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.configmanagement.v1.ErrorResource + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.configmanagement.v1.ErrorResource} ErrorResource + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + ErrorResource.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.configmanagement.v1.ErrorResource(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.sourcePath = reader.string(); + break; + case 2: + message.resourceName = reader.string(); + break; + case 3: + message.resourceNamespace = reader.string(); + break; + case 4: + message.resourceGvk = $root.google.cloud.gkehub.configmanagement.v1.GroupVersionKind.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes an ErrorResource message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.configmanagement.v1.ErrorResource + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.configmanagement.v1.ErrorResource} ErrorResource + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + ErrorResource.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies an ErrorResource message. + * @function verify + * @memberof google.cloud.gkehub.configmanagement.v1.ErrorResource + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + ErrorResource.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.sourcePath != null && message.hasOwnProperty("sourcePath")) + if (!$util.isString(message.sourcePath)) + return "sourcePath: string expected"; + if (message.resourceName != null && message.hasOwnProperty("resourceName")) + if (!$util.isString(message.resourceName)) + return "resourceName: string expected"; + if (message.resourceNamespace != null && message.hasOwnProperty("resourceNamespace")) + if (!$util.isString(message.resourceNamespace)) + return "resourceNamespace: string expected"; + if (message.resourceGvk != null && message.hasOwnProperty("resourceGvk")) { + var error = $root.google.cloud.gkehub.configmanagement.v1.GroupVersionKind.verify(message.resourceGvk); + if (error) + return "resourceGvk." + error; + } + return null; + }; + + /** + * Creates an ErrorResource message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.configmanagement.v1.ErrorResource + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.configmanagement.v1.ErrorResource} ErrorResource + */ + ErrorResource.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.configmanagement.v1.ErrorResource) + return object; + var message = new $root.google.cloud.gkehub.configmanagement.v1.ErrorResource(); + if (object.sourcePath != null) + message.sourcePath = String(object.sourcePath); + if (object.resourceName != null) + message.resourceName = String(object.resourceName); + if (object.resourceNamespace != null) + message.resourceNamespace = String(object.resourceNamespace); + if (object.resourceGvk != null) { + if (typeof object.resourceGvk !== "object") + throw TypeError(".google.cloud.gkehub.configmanagement.v1.ErrorResource.resourceGvk: object expected"); + message.resourceGvk = $root.google.cloud.gkehub.configmanagement.v1.GroupVersionKind.fromObject(object.resourceGvk); + } + return message; + }; + + /** + * Creates a plain object from an ErrorResource message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.configmanagement.v1.ErrorResource + * @static + * @param {google.cloud.gkehub.configmanagement.v1.ErrorResource} message ErrorResource + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + ErrorResource.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.sourcePath = ""; + object.resourceName = ""; + object.resourceNamespace = ""; + object.resourceGvk = null; + } + if (message.sourcePath != null && message.hasOwnProperty("sourcePath")) + object.sourcePath = message.sourcePath; + if (message.resourceName != null && message.hasOwnProperty("resourceName")) + object.resourceName = message.resourceName; + if (message.resourceNamespace != null && message.hasOwnProperty("resourceNamespace")) + object.resourceNamespace = message.resourceNamespace; + if (message.resourceGvk != null && message.hasOwnProperty("resourceGvk")) + object.resourceGvk = $root.google.cloud.gkehub.configmanagement.v1.GroupVersionKind.toObject(message.resourceGvk, options); + return object; + }; + + /** + * Converts this ErrorResource to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.configmanagement.v1.ErrorResource + * @instance + * @returns {Object.} JSON object + */ + ErrorResource.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return ErrorResource; + })(); + + v1.GroupVersionKind = (function() { + + /** + * Properties of a GroupVersionKind. + * @memberof google.cloud.gkehub.configmanagement.v1 + * @interface IGroupVersionKind + * @property {string|null} [group] GroupVersionKind group + * @property {string|null} [version] GroupVersionKind version + * @property {string|null} [kind] GroupVersionKind kind + */ + + /** + * Constructs a new GroupVersionKind. + * @memberof google.cloud.gkehub.configmanagement.v1 + * @classdesc Represents a GroupVersionKind. + * @implements IGroupVersionKind + * @constructor + * @param {google.cloud.gkehub.configmanagement.v1.IGroupVersionKind=} [properties] Properties to set + */ + function GroupVersionKind(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]]; + } + + /** + * GroupVersionKind group. + * @member {string} group + * @memberof google.cloud.gkehub.configmanagement.v1.GroupVersionKind + * @instance + */ + GroupVersionKind.prototype.group = ""; + + /** + * GroupVersionKind version. + * @member {string} version + * @memberof google.cloud.gkehub.configmanagement.v1.GroupVersionKind + * @instance + */ + GroupVersionKind.prototype.version = ""; + + /** + * GroupVersionKind kind. + * @member {string} kind + * @memberof google.cloud.gkehub.configmanagement.v1.GroupVersionKind + * @instance + */ + GroupVersionKind.prototype.kind = ""; + + /** + * Creates a new GroupVersionKind instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.configmanagement.v1.GroupVersionKind + * @static + * @param {google.cloud.gkehub.configmanagement.v1.IGroupVersionKind=} [properties] Properties to set + * @returns {google.cloud.gkehub.configmanagement.v1.GroupVersionKind} GroupVersionKind instance + */ + GroupVersionKind.create = function create(properties) { + return new GroupVersionKind(properties); + }; + + /** + * Encodes the specified GroupVersionKind message. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1.GroupVersionKind.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.configmanagement.v1.GroupVersionKind + * @static + * @param {google.cloud.gkehub.configmanagement.v1.IGroupVersionKind} message GroupVersionKind message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + GroupVersionKind.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.group != null && Object.hasOwnProperty.call(message, "group")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.group); + if (message.version != null && Object.hasOwnProperty.call(message, "version")) + writer.uint32(/* id 2, wireType 2 =*/18).string(message.version); + if (message.kind != null && Object.hasOwnProperty.call(message, "kind")) + writer.uint32(/* id 3, wireType 2 =*/26).string(message.kind); + return writer; + }; + + /** + * Encodes the specified GroupVersionKind message, length delimited. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1.GroupVersionKind.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.configmanagement.v1.GroupVersionKind + * @static + * @param {google.cloud.gkehub.configmanagement.v1.IGroupVersionKind} message GroupVersionKind message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + GroupVersionKind.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a GroupVersionKind message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.configmanagement.v1.GroupVersionKind + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.configmanagement.v1.GroupVersionKind} GroupVersionKind + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + GroupVersionKind.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.configmanagement.v1.GroupVersionKind(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.group = reader.string(); + break; + case 2: + message.version = reader.string(); + break; + case 3: + message.kind = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a GroupVersionKind message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.configmanagement.v1.GroupVersionKind + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.configmanagement.v1.GroupVersionKind} GroupVersionKind + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + GroupVersionKind.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a GroupVersionKind message. + * @function verify + * @memberof google.cloud.gkehub.configmanagement.v1.GroupVersionKind + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + GroupVersionKind.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.group != null && message.hasOwnProperty("group")) + if (!$util.isString(message.group)) + return "group: string expected"; + if (message.version != null && message.hasOwnProperty("version")) + if (!$util.isString(message.version)) + return "version: string expected"; + if (message.kind != null && message.hasOwnProperty("kind")) + if (!$util.isString(message.kind)) + return "kind: string expected"; + return null; + }; + + /** + * Creates a GroupVersionKind message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.configmanagement.v1.GroupVersionKind + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.configmanagement.v1.GroupVersionKind} GroupVersionKind + */ + GroupVersionKind.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.configmanagement.v1.GroupVersionKind) + return object; + var message = new $root.google.cloud.gkehub.configmanagement.v1.GroupVersionKind(); + if (object.group != null) + message.group = String(object.group); + if (object.version != null) + message.version = String(object.version); + if (object.kind != null) + message.kind = String(object.kind); + return message; + }; + + /** + * Creates a plain object from a GroupVersionKind message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.configmanagement.v1.GroupVersionKind + * @static + * @param {google.cloud.gkehub.configmanagement.v1.GroupVersionKind} message GroupVersionKind + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + GroupVersionKind.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.group = ""; + object.version = ""; + object.kind = ""; + } + if (message.group != null && message.hasOwnProperty("group")) + object.group = message.group; + if (message.version != null && message.hasOwnProperty("version")) + object.version = message.version; + if (message.kind != null && message.hasOwnProperty("kind")) + object.kind = message.kind; + return object; + }; + + /** + * Converts this GroupVersionKind to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.configmanagement.v1.GroupVersionKind + * @instance + * @returns {Object.} JSON object + */ + GroupVersionKind.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return GroupVersionKind; + })(); + + v1.PolicyControllerState = (function() { + + /** + * Properties of a PolicyControllerState. + * @memberof google.cloud.gkehub.configmanagement.v1 + * @interface IPolicyControllerState + * @property {google.cloud.gkehub.configmanagement.v1.IPolicyControllerVersion|null} [version] PolicyControllerState version + * @property {google.cloud.gkehub.configmanagement.v1.IGatekeeperDeploymentState|null} [deploymentState] PolicyControllerState deploymentState + */ + + /** + * Constructs a new PolicyControllerState. + * @memberof google.cloud.gkehub.configmanagement.v1 + * @classdesc Represents a PolicyControllerState. + * @implements IPolicyControllerState + * @constructor + * @param {google.cloud.gkehub.configmanagement.v1.IPolicyControllerState=} [properties] Properties to set + */ + function PolicyControllerState(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]]; + } + + /** + * PolicyControllerState version. + * @member {google.cloud.gkehub.configmanagement.v1.IPolicyControllerVersion|null|undefined} version + * @memberof google.cloud.gkehub.configmanagement.v1.PolicyControllerState + * @instance + */ + PolicyControllerState.prototype.version = null; + + /** + * PolicyControllerState deploymentState. + * @member {google.cloud.gkehub.configmanagement.v1.IGatekeeperDeploymentState|null|undefined} deploymentState + * @memberof google.cloud.gkehub.configmanagement.v1.PolicyControllerState + * @instance + */ + PolicyControllerState.prototype.deploymentState = null; + + /** + * Creates a new PolicyControllerState instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.configmanagement.v1.PolicyControllerState + * @static + * @param {google.cloud.gkehub.configmanagement.v1.IPolicyControllerState=} [properties] Properties to set + * @returns {google.cloud.gkehub.configmanagement.v1.PolicyControllerState} PolicyControllerState instance + */ + PolicyControllerState.create = function create(properties) { + return new PolicyControllerState(properties); + }; + + /** + * Encodes the specified PolicyControllerState message. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1.PolicyControllerState.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.configmanagement.v1.PolicyControllerState + * @static + * @param {google.cloud.gkehub.configmanagement.v1.IPolicyControllerState} message PolicyControllerState message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + PolicyControllerState.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.version != null && Object.hasOwnProperty.call(message, "version")) + $root.google.cloud.gkehub.configmanagement.v1.PolicyControllerVersion.encode(message.version, writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim(); + if (message.deploymentState != null && Object.hasOwnProperty.call(message, "deploymentState")) + $root.google.cloud.gkehub.configmanagement.v1.GatekeeperDeploymentState.encode(message.deploymentState, writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim(); + return writer; + }; + + /** + * Encodes the specified PolicyControllerState message, length delimited. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1.PolicyControllerState.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.configmanagement.v1.PolicyControllerState + * @static + * @param {google.cloud.gkehub.configmanagement.v1.IPolicyControllerState} message PolicyControllerState message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + PolicyControllerState.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a PolicyControllerState message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.configmanagement.v1.PolicyControllerState + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.configmanagement.v1.PolicyControllerState} PolicyControllerState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + PolicyControllerState.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.configmanagement.v1.PolicyControllerState(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.version = $root.google.cloud.gkehub.configmanagement.v1.PolicyControllerVersion.decode(reader, reader.uint32()); + break; + case 2: + message.deploymentState = $root.google.cloud.gkehub.configmanagement.v1.GatekeeperDeploymentState.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a PolicyControllerState message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.configmanagement.v1.PolicyControllerState + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.configmanagement.v1.PolicyControllerState} PolicyControllerState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + PolicyControllerState.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a PolicyControllerState message. + * @function verify + * @memberof google.cloud.gkehub.configmanagement.v1.PolicyControllerState + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + PolicyControllerState.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.version != null && message.hasOwnProperty("version")) { + var error = $root.google.cloud.gkehub.configmanagement.v1.PolicyControllerVersion.verify(message.version); + if (error) + return "version." + error; + } + if (message.deploymentState != null && message.hasOwnProperty("deploymentState")) { + var error = $root.google.cloud.gkehub.configmanagement.v1.GatekeeperDeploymentState.verify(message.deploymentState); + if (error) + return "deploymentState." + error; + } + return null; + }; + + /** + * Creates a PolicyControllerState message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.configmanagement.v1.PolicyControllerState + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.configmanagement.v1.PolicyControllerState} PolicyControllerState + */ + PolicyControllerState.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.configmanagement.v1.PolicyControllerState) + return object; + var message = new $root.google.cloud.gkehub.configmanagement.v1.PolicyControllerState(); + if (object.version != null) { + if (typeof object.version !== "object") + throw TypeError(".google.cloud.gkehub.configmanagement.v1.PolicyControllerState.version: object expected"); + message.version = $root.google.cloud.gkehub.configmanagement.v1.PolicyControllerVersion.fromObject(object.version); + } + if (object.deploymentState != null) { + if (typeof object.deploymentState !== "object") + throw TypeError(".google.cloud.gkehub.configmanagement.v1.PolicyControllerState.deploymentState: object expected"); + message.deploymentState = $root.google.cloud.gkehub.configmanagement.v1.GatekeeperDeploymentState.fromObject(object.deploymentState); + } + return message; + }; + + /** + * Creates a plain object from a PolicyControllerState message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.configmanagement.v1.PolicyControllerState + * @static + * @param {google.cloud.gkehub.configmanagement.v1.PolicyControllerState} message PolicyControllerState + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + PolicyControllerState.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.version = null; + object.deploymentState = null; + } + if (message.version != null && message.hasOwnProperty("version")) + object.version = $root.google.cloud.gkehub.configmanagement.v1.PolicyControllerVersion.toObject(message.version, options); + if (message.deploymentState != null && message.hasOwnProperty("deploymentState")) + object.deploymentState = $root.google.cloud.gkehub.configmanagement.v1.GatekeeperDeploymentState.toObject(message.deploymentState, options); + return object; + }; + + /** + * Converts this PolicyControllerState to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.configmanagement.v1.PolicyControllerState + * @instance + * @returns {Object.} JSON object + */ + PolicyControllerState.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return PolicyControllerState; + })(); + + v1.PolicyControllerVersion = (function() { + + /** + * Properties of a PolicyControllerVersion. + * @memberof google.cloud.gkehub.configmanagement.v1 + * @interface IPolicyControllerVersion + * @property {string|null} [version] PolicyControllerVersion version + */ + + /** + * Constructs a new PolicyControllerVersion. + * @memberof google.cloud.gkehub.configmanagement.v1 + * @classdesc Represents a PolicyControllerVersion. + * @implements IPolicyControllerVersion + * @constructor + * @param {google.cloud.gkehub.configmanagement.v1.IPolicyControllerVersion=} [properties] Properties to set + */ + function PolicyControllerVersion(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]]; + } + + /** + * PolicyControllerVersion version. + * @member {string} version + * @memberof google.cloud.gkehub.configmanagement.v1.PolicyControllerVersion + * @instance + */ + PolicyControllerVersion.prototype.version = ""; + + /** + * Creates a new PolicyControllerVersion instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.configmanagement.v1.PolicyControllerVersion + * @static + * @param {google.cloud.gkehub.configmanagement.v1.IPolicyControllerVersion=} [properties] Properties to set + * @returns {google.cloud.gkehub.configmanagement.v1.PolicyControllerVersion} PolicyControllerVersion instance + */ + PolicyControllerVersion.create = function create(properties) { + return new PolicyControllerVersion(properties); + }; + + /** + * Encodes the specified PolicyControllerVersion message. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1.PolicyControllerVersion.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.configmanagement.v1.PolicyControllerVersion + * @static + * @param {google.cloud.gkehub.configmanagement.v1.IPolicyControllerVersion} message PolicyControllerVersion message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + PolicyControllerVersion.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.version != null && Object.hasOwnProperty.call(message, "version")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.version); + return writer; + }; + + /** + * Encodes the specified PolicyControllerVersion message, length delimited. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1.PolicyControllerVersion.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.configmanagement.v1.PolicyControllerVersion + * @static + * @param {google.cloud.gkehub.configmanagement.v1.IPolicyControllerVersion} message PolicyControllerVersion message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + PolicyControllerVersion.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a PolicyControllerVersion message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.configmanagement.v1.PolicyControllerVersion + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.configmanagement.v1.PolicyControllerVersion} PolicyControllerVersion + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + PolicyControllerVersion.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.configmanagement.v1.PolicyControllerVersion(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.version = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a PolicyControllerVersion message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.configmanagement.v1.PolicyControllerVersion + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.configmanagement.v1.PolicyControllerVersion} PolicyControllerVersion + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + PolicyControllerVersion.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a PolicyControllerVersion message. + * @function verify + * @memberof google.cloud.gkehub.configmanagement.v1.PolicyControllerVersion + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + PolicyControllerVersion.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.version != null && message.hasOwnProperty("version")) + if (!$util.isString(message.version)) + return "version: string expected"; + return null; + }; + + /** + * Creates a PolicyControllerVersion message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.configmanagement.v1.PolicyControllerVersion + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.configmanagement.v1.PolicyControllerVersion} PolicyControllerVersion + */ + PolicyControllerVersion.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.configmanagement.v1.PolicyControllerVersion) + return object; + var message = new $root.google.cloud.gkehub.configmanagement.v1.PolicyControllerVersion(); + if (object.version != null) + message.version = String(object.version); + return message; + }; + + /** + * Creates a plain object from a PolicyControllerVersion message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.configmanagement.v1.PolicyControllerVersion + * @static + * @param {google.cloud.gkehub.configmanagement.v1.PolicyControllerVersion} message PolicyControllerVersion + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + PolicyControllerVersion.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) + object.version = ""; + if (message.version != null && message.hasOwnProperty("version")) + object.version = message.version; + return object; + }; + + /** + * Converts this PolicyControllerVersion to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.configmanagement.v1.PolicyControllerVersion + * @instance + * @returns {Object.} JSON object + */ + PolicyControllerVersion.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return PolicyControllerVersion; + })(); + + v1.GatekeeperDeploymentState = (function() { + + /** + * Properties of a GatekeeperDeploymentState. + * @memberof google.cloud.gkehub.configmanagement.v1 + * @interface IGatekeeperDeploymentState + * @property {google.cloud.gkehub.configmanagement.v1.DeploymentState|null} [gatekeeperControllerManagerState] GatekeeperDeploymentState gatekeeperControllerManagerState + * @property {google.cloud.gkehub.configmanagement.v1.DeploymentState|null} [gatekeeperAudit] GatekeeperDeploymentState gatekeeperAudit + */ + + /** + * Constructs a new GatekeeperDeploymentState. + * @memberof google.cloud.gkehub.configmanagement.v1 + * @classdesc Represents a GatekeeperDeploymentState. + * @implements IGatekeeperDeploymentState + * @constructor + * @param {google.cloud.gkehub.configmanagement.v1.IGatekeeperDeploymentState=} [properties] Properties to set + */ + function GatekeeperDeploymentState(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]]; + } + + /** + * GatekeeperDeploymentState gatekeeperControllerManagerState. + * @member {google.cloud.gkehub.configmanagement.v1.DeploymentState} gatekeeperControllerManagerState + * @memberof google.cloud.gkehub.configmanagement.v1.GatekeeperDeploymentState + * @instance + */ + GatekeeperDeploymentState.prototype.gatekeeperControllerManagerState = 0; + + /** + * GatekeeperDeploymentState gatekeeperAudit. + * @member {google.cloud.gkehub.configmanagement.v1.DeploymentState} gatekeeperAudit + * @memberof google.cloud.gkehub.configmanagement.v1.GatekeeperDeploymentState + * @instance + */ + GatekeeperDeploymentState.prototype.gatekeeperAudit = 0; + + /** + * Creates a new GatekeeperDeploymentState instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.configmanagement.v1.GatekeeperDeploymentState + * @static + * @param {google.cloud.gkehub.configmanagement.v1.IGatekeeperDeploymentState=} [properties] Properties to set + * @returns {google.cloud.gkehub.configmanagement.v1.GatekeeperDeploymentState} GatekeeperDeploymentState instance + */ + GatekeeperDeploymentState.create = function create(properties) { + return new GatekeeperDeploymentState(properties); + }; + + /** + * Encodes the specified GatekeeperDeploymentState message. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1.GatekeeperDeploymentState.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.configmanagement.v1.GatekeeperDeploymentState + * @static + * @param {google.cloud.gkehub.configmanagement.v1.IGatekeeperDeploymentState} message GatekeeperDeploymentState message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + GatekeeperDeploymentState.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.gatekeeperControllerManagerState != null && Object.hasOwnProperty.call(message, "gatekeeperControllerManagerState")) + writer.uint32(/* id 1, wireType 0 =*/8).int32(message.gatekeeperControllerManagerState); + if (message.gatekeeperAudit != null && Object.hasOwnProperty.call(message, "gatekeeperAudit")) + writer.uint32(/* id 2, wireType 0 =*/16).int32(message.gatekeeperAudit); + return writer; + }; + + /** + * Encodes the specified GatekeeperDeploymentState message, length delimited. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1.GatekeeperDeploymentState.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.configmanagement.v1.GatekeeperDeploymentState + * @static + * @param {google.cloud.gkehub.configmanagement.v1.IGatekeeperDeploymentState} message GatekeeperDeploymentState message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + GatekeeperDeploymentState.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a GatekeeperDeploymentState message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.configmanagement.v1.GatekeeperDeploymentState + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.configmanagement.v1.GatekeeperDeploymentState} GatekeeperDeploymentState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + GatekeeperDeploymentState.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.configmanagement.v1.GatekeeperDeploymentState(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.gatekeeperControllerManagerState = reader.int32(); + break; + case 2: + message.gatekeeperAudit = reader.int32(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a GatekeeperDeploymentState message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.configmanagement.v1.GatekeeperDeploymentState + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.configmanagement.v1.GatekeeperDeploymentState} GatekeeperDeploymentState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + GatekeeperDeploymentState.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a GatekeeperDeploymentState message. + * @function verify + * @memberof google.cloud.gkehub.configmanagement.v1.GatekeeperDeploymentState + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + GatekeeperDeploymentState.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.gatekeeperControllerManagerState != null && message.hasOwnProperty("gatekeeperControllerManagerState")) + switch (message.gatekeeperControllerManagerState) { + default: + return "gatekeeperControllerManagerState: enum value expected"; + case 0: + case 1: + case 2: + case 3: + break; + } + if (message.gatekeeperAudit != null && message.hasOwnProperty("gatekeeperAudit")) + switch (message.gatekeeperAudit) { + default: + return "gatekeeperAudit: enum value expected"; + case 0: + case 1: + case 2: + case 3: + break; + } + return null; + }; + + /** + * Creates a GatekeeperDeploymentState message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.configmanagement.v1.GatekeeperDeploymentState + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.configmanagement.v1.GatekeeperDeploymentState} GatekeeperDeploymentState + */ + GatekeeperDeploymentState.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.configmanagement.v1.GatekeeperDeploymentState) + return object; + var message = new $root.google.cloud.gkehub.configmanagement.v1.GatekeeperDeploymentState(); + switch (object.gatekeeperControllerManagerState) { + case "DEPLOYMENT_STATE_UNSPECIFIED": + case 0: + message.gatekeeperControllerManagerState = 0; + break; + case "NOT_INSTALLED": + case 1: + message.gatekeeperControllerManagerState = 1; + break; + case "INSTALLED": + case 2: + message.gatekeeperControllerManagerState = 2; + break; + case "ERROR": + case 3: + message.gatekeeperControllerManagerState = 3; + break; + } + switch (object.gatekeeperAudit) { + case "DEPLOYMENT_STATE_UNSPECIFIED": + case 0: + message.gatekeeperAudit = 0; + break; + case "NOT_INSTALLED": + case 1: + message.gatekeeperAudit = 1; + break; + case "INSTALLED": + case 2: + message.gatekeeperAudit = 2; + break; + case "ERROR": + case 3: + message.gatekeeperAudit = 3; + break; + } + return message; + }; + + /** + * Creates a plain object from a GatekeeperDeploymentState message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.configmanagement.v1.GatekeeperDeploymentState + * @static + * @param {google.cloud.gkehub.configmanagement.v1.GatekeeperDeploymentState} message GatekeeperDeploymentState + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + GatekeeperDeploymentState.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.gatekeeperControllerManagerState = options.enums === String ? "DEPLOYMENT_STATE_UNSPECIFIED" : 0; + object.gatekeeperAudit = options.enums === String ? "DEPLOYMENT_STATE_UNSPECIFIED" : 0; + } + if (message.gatekeeperControllerManagerState != null && message.hasOwnProperty("gatekeeperControllerManagerState")) + object.gatekeeperControllerManagerState = options.enums === String ? $root.google.cloud.gkehub.configmanagement.v1.DeploymentState[message.gatekeeperControllerManagerState] : message.gatekeeperControllerManagerState; + if (message.gatekeeperAudit != null && message.hasOwnProperty("gatekeeperAudit")) + object.gatekeeperAudit = options.enums === String ? $root.google.cloud.gkehub.configmanagement.v1.DeploymentState[message.gatekeeperAudit] : message.gatekeeperAudit; + return object; + }; + + /** + * Converts this GatekeeperDeploymentState to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.configmanagement.v1.GatekeeperDeploymentState + * @instance + * @returns {Object.} JSON object + */ + GatekeeperDeploymentState.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return GatekeeperDeploymentState; + })(); + + return v1; + })(); + + configmanagement.v1alpha = (function() { + + /** + * Namespace v1alpha. + * @memberof google.cloud.gkehub.configmanagement + * @namespace + */ + var v1alpha = {}; + + /** + * DeploymentState enum. + * @name google.cloud.gkehub.configmanagement.v1alpha.DeploymentState + * @enum {number} + * @property {number} DEPLOYMENT_STATE_UNSPECIFIED=0 DEPLOYMENT_STATE_UNSPECIFIED value + * @property {number} NOT_INSTALLED=1 NOT_INSTALLED value + * @property {number} INSTALLED=2 INSTALLED value + * @property {number} ERROR=3 ERROR value + */ + v1alpha.DeploymentState = (function() { + var valuesById = {}, values = Object.create(valuesById); + values[valuesById[0] = "DEPLOYMENT_STATE_UNSPECIFIED"] = 0; + values[valuesById[1] = "NOT_INSTALLED"] = 1; + values[valuesById[2] = "INSTALLED"] = 2; + values[valuesById[3] = "ERROR"] = 3; + return values; + })(); + + v1alpha.MembershipState = (function() { + + /** + * Properties of a MembershipState. + * @memberof google.cloud.gkehub.configmanagement.v1alpha + * @interface IMembershipState + * @property {string|null} [clusterName] MembershipState clusterName + * @property {google.cloud.gkehub.configmanagement.v1alpha.IMembershipSpec|null} [membershipSpec] MembershipState membershipSpec + * @property {google.cloud.gkehub.configmanagement.v1alpha.IOperatorState|null} [operatorState] MembershipState operatorState + * @property {google.cloud.gkehub.configmanagement.v1alpha.IConfigSyncState|null} [configSyncState] MembershipState configSyncState + * @property {google.cloud.gkehub.configmanagement.v1alpha.IPolicyControllerState|null} [policyControllerState] MembershipState policyControllerState + * @property {google.cloud.gkehub.configmanagement.v1alpha.IBinauthzState|null} [binauthzState] MembershipState binauthzState + * @property {google.cloud.gkehub.configmanagement.v1alpha.IHierarchyControllerState|null} [hierarchyControllerState] MembershipState hierarchyControllerState + */ + + /** + * Constructs a new MembershipState. + * @memberof google.cloud.gkehub.configmanagement.v1alpha + * @classdesc Represents a MembershipState. + * @implements IMembershipState + * @constructor + * @param {google.cloud.gkehub.configmanagement.v1alpha.IMembershipState=} [properties] Properties to set + */ + function MembershipState(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]]; + } + + /** + * MembershipState clusterName. + * @member {string} clusterName + * @memberof google.cloud.gkehub.configmanagement.v1alpha.MembershipState + * @instance + */ + MembershipState.prototype.clusterName = ""; + + /** + * MembershipState membershipSpec. + * @member {google.cloud.gkehub.configmanagement.v1alpha.IMembershipSpec|null|undefined} membershipSpec + * @memberof google.cloud.gkehub.configmanagement.v1alpha.MembershipState + * @instance + */ + MembershipState.prototype.membershipSpec = null; + + /** + * MembershipState operatorState. + * @member {google.cloud.gkehub.configmanagement.v1alpha.IOperatorState|null|undefined} operatorState + * @memberof google.cloud.gkehub.configmanagement.v1alpha.MembershipState + * @instance + */ + MembershipState.prototype.operatorState = null; + + /** + * MembershipState configSyncState. + * @member {google.cloud.gkehub.configmanagement.v1alpha.IConfigSyncState|null|undefined} configSyncState + * @memberof google.cloud.gkehub.configmanagement.v1alpha.MembershipState + * @instance + */ + MembershipState.prototype.configSyncState = null; + + /** + * MembershipState policyControllerState. + * @member {google.cloud.gkehub.configmanagement.v1alpha.IPolicyControllerState|null|undefined} policyControllerState + * @memberof google.cloud.gkehub.configmanagement.v1alpha.MembershipState + * @instance + */ + MembershipState.prototype.policyControllerState = null; + + /** + * MembershipState binauthzState. + * @member {google.cloud.gkehub.configmanagement.v1alpha.IBinauthzState|null|undefined} binauthzState + * @memberof google.cloud.gkehub.configmanagement.v1alpha.MembershipState + * @instance + */ + MembershipState.prototype.binauthzState = null; + + /** + * MembershipState hierarchyControllerState. + * @member {google.cloud.gkehub.configmanagement.v1alpha.IHierarchyControllerState|null|undefined} hierarchyControllerState + * @memberof google.cloud.gkehub.configmanagement.v1alpha.MembershipState + * @instance + */ + MembershipState.prototype.hierarchyControllerState = null; + + /** + * Creates a new MembershipState instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.configmanagement.v1alpha.MembershipState + * @static + * @param {google.cloud.gkehub.configmanagement.v1alpha.IMembershipState=} [properties] Properties to set + * @returns {google.cloud.gkehub.configmanagement.v1alpha.MembershipState} MembershipState instance + */ + MembershipState.create = function create(properties) { + return new MembershipState(properties); + }; + + /** + * Encodes the specified MembershipState message. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1alpha.MembershipState.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.configmanagement.v1alpha.MembershipState + * @static + * @param {google.cloud.gkehub.configmanagement.v1alpha.IMembershipState} message MembershipState message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + MembershipState.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.clusterName != null && Object.hasOwnProperty.call(message, "clusterName")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.clusterName); + if (message.membershipSpec != null && Object.hasOwnProperty.call(message, "membershipSpec")) + $root.google.cloud.gkehub.configmanagement.v1alpha.MembershipSpec.encode(message.membershipSpec, writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim(); + if (message.operatorState != null && Object.hasOwnProperty.call(message, "operatorState")) + $root.google.cloud.gkehub.configmanagement.v1alpha.OperatorState.encode(message.operatorState, writer.uint32(/* id 3, wireType 2 =*/26).fork()).ldelim(); + if (message.configSyncState != null && Object.hasOwnProperty.call(message, "configSyncState")) + $root.google.cloud.gkehub.configmanagement.v1alpha.ConfigSyncState.encode(message.configSyncState, writer.uint32(/* id 4, wireType 2 =*/34).fork()).ldelim(); + if (message.policyControllerState != null && Object.hasOwnProperty.call(message, "policyControllerState")) + $root.google.cloud.gkehub.configmanagement.v1alpha.PolicyControllerState.encode(message.policyControllerState, writer.uint32(/* id 5, wireType 2 =*/42).fork()).ldelim(); + if (message.binauthzState != null && Object.hasOwnProperty.call(message, "binauthzState")) + $root.google.cloud.gkehub.configmanagement.v1alpha.BinauthzState.encode(message.binauthzState, writer.uint32(/* id 6, wireType 2 =*/50).fork()).ldelim(); + if (message.hierarchyControllerState != null && Object.hasOwnProperty.call(message, "hierarchyControllerState")) + $root.google.cloud.gkehub.configmanagement.v1alpha.HierarchyControllerState.encode(message.hierarchyControllerState, writer.uint32(/* id 7, wireType 2 =*/58).fork()).ldelim(); + return writer; + }; + + /** + * Encodes the specified MembershipState message, length delimited. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1alpha.MembershipState.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.configmanagement.v1alpha.MembershipState + * @static + * @param {google.cloud.gkehub.configmanagement.v1alpha.IMembershipState} message MembershipState message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + MembershipState.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a MembershipState message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.configmanagement.v1alpha.MembershipState + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.configmanagement.v1alpha.MembershipState} MembershipState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + MembershipState.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.configmanagement.v1alpha.MembershipState(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.clusterName = reader.string(); + break; + case 2: + message.membershipSpec = $root.google.cloud.gkehub.configmanagement.v1alpha.MembershipSpec.decode(reader, reader.uint32()); + break; + case 3: + message.operatorState = $root.google.cloud.gkehub.configmanagement.v1alpha.OperatorState.decode(reader, reader.uint32()); + break; + case 4: + message.configSyncState = $root.google.cloud.gkehub.configmanagement.v1alpha.ConfigSyncState.decode(reader, reader.uint32()); + break; + case 5: + message.policyControllerState = $root.google.cloud.gkehub.configmanagement.v1alpha.PolicyControllerState.decode(reader, reader.uint32()); + break; + case 6: + message.binauthzState = $root.google.cloud.gkehub.configmanagement.v1alpha.BinauthzState.decode(reader, reader.uint32()); + break; + case 7: + message.hierarchyControllerState = $root.google.cloud.gkehub.configmanagement.v1alpha.HierarchyControllerState.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a MembershipState message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.configmanagement.v1alpha.MembershipState + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.configmanagement.v1alpha.MembershipState} MembershipState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + MembershipState.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a MembershipState message. + * @function verify + * @memberof google.cloud.gkehub.configmanagement.v1alpha.MembershipState + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + MembershipState.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.clusterName != null && message.hasOwnProperty("clusterName")) + if (!$util.isString(message.clusterName)) + return "clusterName: string expected"; + if (message.membershipSpec != null && message.hasOwnProperty("membershipSpec")) { + var error = $root.google.cloud.gkehub.configmanagement.v1alpha.MembershipSpec.verify(message.membershipSpec); + if (error) + return "membershipSpec." + error; + } + if (message.operatorState != null && message.hasOwnProperty("operatorState")) { + var error = $root.google.cloud.gkehub.configmanagement.v1alpha.OperatorState.verify(message.operatorState); + if (error) + return "operatorState." + error; + } + if (message.configSyncState != null && message.hasOwnProperty("configSyncState")) { + var error = $root.google.cloud.gkehub.configmanagement.v1alpha.ConfigSyncState.verify(message.configSyncState); + if (error) + return "configSyncState." + error; + } + if (message.policyControllerState != null && message.hasOwnProperty("policyControllerState")) { + var error = $root.google.cloud.gkehub.configmanagement.v1alpha.PolicyControllerState.verify(message.policyControllerState); + if (error) + return "policyControllerState." + error; + } + if (message.binauthzState != null && message.hasOwnProperty("binauthzState")) { + var error = $root.google.cloud.gkehub.configmanagement.v1alpha.BinauthzState.verify(message.binauthzState); + if (error) + return "binauthzState." + error; + } + if (message.hierarchyControllerState != null && message.hasOwnProperty("hierarchyControllerState")) { + var error = $root.google.cloud.gkehub.configmanagement.v1alpha.HierarchyControllerState.verify(message.hierarchyControllerState); + if (error) + return "hierarchyControllerState." + error; + } + return null; + }; + + /** + * Creates a MembershipState message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.configmanagement.v1alpha.MembershipState + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.configmanagement.v1alpha.MembershipState} MembershipState + */ + MembershipState.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.configmanagement.v1alpha.MembershipState) + return object; + var message = new $root.google.cloud.gkehub.configmanagement.v1alpha.MembershipState(); + if (object.clusterName != null) + message.clusterName = String(object.clusterName); + if (object.membershipSpec != null) { + if (typeof object.membershipSpec !== "object") + throw TypeError(".google.cloud.gkehub.configmanagement.v1alpha.MembershipState.membershipSpec: object expected"); + message.membershipSpec = $root.google.cloud.gkehub.configmanagement.v1alpha.MembershipSpec.fromObject(object.membershipSpec); + } + if (object.operatorState != null) { + if (typeof object.operatorState !== "object") + throw TypeError(".google.cloud.gkehub.configmanagement.v1alpha.MembershipState.operatorState: object expected"); + message.operatorState = $root.google.cloud.gkehub.configmanagement.v1alpha.OperatorState.fromObject(object.operatorState); + } + if (object.configSyncState != null) { + if (typeof object.configSyncState !== "object") + throw TypeError(".google.cloud.gkehub.configmanagement.v1alpha.MembershipState.configSyncState: object expected"); + message.configSyncState = $root.google.cloud.gkehub.configmanagement.v1alpha.ConfigSyncState.fromObject(object.configSyncState); + } + if (object.policyControllerState != null) { + if (typeof object.policyControllerState !== "object") + throw TypeError(".google.cloud.gkehub.configmanagement.v1alpha.MembershipState.policyControllerState: object expected"); + message.policyControllerState = $root.google.cloud.gkehub.configmanagement.v1alpha.PolicyControllerState.fromObject(object.policyControllerState); + } + if (object.binauthzState != null) { + if (typeof object.binauthzState !== "object") + throw TypeError(".google.cloud.gkehub.configmanagement.v1alpha.MembershipState.binauthzState: object expected"); + message.binauthzState = $root.google.cloud.gkehub.configmanagement.v1alpha.BinauthzState.fromObject(object.binauthzState); + } + if (object.hierarchyControllerState != null) { + if (typeof object.hierarchyControllerState !== "object") + throw TypeError(".google.cloud.gkehub.configmanagement.v1alpha.MembershipState.hierarchyControllerState: object expected"); + message.hierarchyControllerState = $root.google.cloud.gkehub.configmanagement.v1alpha.HierarchyControllerState.fromObject(object.hierarchyControllerState); + } + return message; + }; + + /** + * Creates a plain object from a MembershipState message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.configmanagement.v1alpha.MembershipState + * @static + * @param {google.cloud.gkehub.configmanagement.v1alpha.MembershipState} message MembershipState + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + MembershipState.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.clusterName = ""; + object.membershipSpec = null; + object.operatorState = null; + object.configSyncState = null; + object.policyControllerState = null; + object.binauthzState = null; + object.hierarchyControllerState = null; + } + if (message.clusterName != null && message.hasOwnProperty("clusterName")) + object.clusterName = message.clusterName; + if (message.membershipSpec != null && message.hasOwnProperty("membershipSpec")) + object.membershipSpec = $root.google.cloud.gkehub.configmanagement.v1alpha.MembershipSpec.toObject(message.membershipSpec, options); + if (message.operatorState != null && message.hasOwnProperty("operatorState")) + object.operatorState = $root.google.cloud.gkehub.configmanagement.v1alpha.OperatorState.toObject(message.operatorState, options); + if (message.configSyncState != null && message.hasOwnProperty("configSyncState")) + object.configSyncState = $root.google.cloud.gkehub.configmanagement.v1alpha.ConfigSyncState.toObject(message.configSyncState, options); + if (message.policyControllerState != null && message.hasOwnProperty("policyControllerState")) + object.policyControllerState = $root.google.cloud.gkehub.configmanagement.v1alpha.PolicyControllerState.toObject(message.policyControllerState, options); + if (message.binauthzState != null && message.hasOwnProperty("binauthzState")) + object.binauthzState = $root.google.cloud.gkehub.configmanagement.v1alpha.BinauthzState.toObject(message.binauthzState, options); + if (message.hierarchyControllerState != null && message.hasOwnProperty("hierarchyControllerState")) + object.hierarchyControllerState = $root.google.cloud.gkehub.configmanagement.v1alpha.HierarchyControllerState.toObject(message.hierarchyControllerState, options); + return object; + }; + + /** + * Converts this MembershipState to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.configmanagement.v1alpha.MembershipState + * @instance + * @returns {Object.} JSON object + */ + MembershipState.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return MembershipState; + })(); + + v1alpha.MembershipSpec = (function() { + + /** + * Properties of a MembershipSpec. + * @memberof google.cloud.gkehub.configmanagement.v1alpha + * @interface IMembershipSpec + * @property {google.cloud.gkehub.configmanagement.v1alpha.IConfigSync|null} [configSync] MembershipSpec configSync + * @property {google.cloud.gkehub.configmanagement.v1alpha.IPolicyController|null} [policyController] MembershipSpec policyController + * @property {google.cloud.gkehub.configmanagement.v1alpha.IBinauthzConfig|null} [binauthz] MembershipSpec binauthz + * @property {google.cloud.gkehub.configmanagement.v1alpha.IHierarchyControllerConfig|null} [hierarchyController] MembershipSpec hierarchyController + * @property {string|null} [version] MembershipSpec version + */ + + /** + * Constructs a new MembershipSpec. + * @memberof google.cloud.gkehub.configmanagement.v1alpha + * @classdesc Represents a MembershipSpec. + * @implements IMembershipSpec + * @constructor + * @param {google.cloud.gkehub.configmanagement.v1alpha.IMembershipSpec=} [properties] Properties to set + */ + function MembershipSpec(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]]; + } + + /** + * MembershipSpec configSync. + * @member {google.cloud.gkehub.configmanagement.v1alpha.IConfigSync|null|undefined} configSync + * @memberof google.cloud.gkehub.configmanagement.v1alpha.MembershipSpec + * @instance + */ + MembershipSpec.prototype.configSync = null; + + /** + * MembershipSpec policyController. + * @member {google.cloud.gkehub.configmanagement.v1alpha.IPolicyController|null|undefined} policyController + * @memberof google.cloud.gkehub.configmanagement.v1alpha.MembershipSpec + * @instance + */ + MembershipSpec.prototype.policyController = null; + + /** + * MembershipSpec binauthz. + * @member {google.cloud.gkehub.configmanagement.v1alpha.IBinauthzConfig|null|undefined} binauthz + * @memberof google.cloud.gkehub.configmanagement.v1alpha.MembershipSpec + * @instance + */ + MembershipSpec.prototype.binauthz = null; + + /** + * MembershipSpec hierarchyController. + * @member {google.cloud.gkehub.configmanagement.v1alpha.IHierarchyControllerConfig|null|undefined} hierarchyController + * @memberof google.cloud.gkehub.configmanagement.v1alpha.MembershipSpec + * @instance + */ + MembershipSpec.prototype.hierarchyController = null; + + /** + * MembershipSpec version. + * @member {string} version + * @memberof google.cloud.gkehub.configmanagement.v1alpha.MembershipSpec + * @instance + */ + MembershipSpec.prototype.version = ""; + + /** + * Creates a new MembershipSpec instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.configmanagement.v1alpha.MembershipSpec + * @static + * @param {google.cloud.gkehub.configmanagement.v1alpha.IMembershipSpec=} [properties] Properties to set + * @returns {google.cloud.gkehub.configmanagement.v1alpha.MembershipSpec} MembershipSpec instance + */ + MembershipSpec.create = function create(properties) { + return new MembershipSpec(properties); + }; + + /** + * Encodes the specified MembershipSpec message. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1alpha.MembershipSpec.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.configmanagement.v1alpha.MembershipSpec + * @static + * @param {google.cloud.gkehub.configmanagement.v1alpha.IMembershipSpec} message MembershipSpec message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + MembershipSpec.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.configSync != null && Object.hasOwnProperty.call(message, "configSync")) + $root.google.cloud.gkehub.configmanagement.v1alpha.ConfigSync.encode(message.configSync, writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim(); + if (message.policyController != null && Object.hasOwnProperty.call(message, "policyController")) + $root.google.cloud.gkehub.configmanagement.v1alpha.PolicyController.encode(message.policyController, writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim(); + if (message.binauthz != null && Object.hasOwnProperty.call(message, "binauthz")) + $root.google.cloud.gkehub.configmanagement.v1alpha.BinauthzConfig.encode(message.binauthz, writer.uint32(/* id 3, wireType 2 =*/26).fork()).ldelim(); + if (message.hierarchyController != null && Object.hasOwnProperty.call(message, "hierarchyController")) + $root.google.cloud.gkehub.configmanagement.v1alpha.HierarchyControllerConfig.encode(message.hierarchyController, writer.uint32(/* id 4, wireType 2 =*/34).fork()).ldelim(); + if (message.version != null && Object.hasOwnProperty.call(message, "version")) + writer.uint32(/* id 10, wireType 2 =*/82).string(message.version); + return writer; + }; + + /** + * Encodes the specified MembershipSpec message, length delimited. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1alpha.MembershipSpec.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.configmanagement.v1alpha.MembershipSpec + * @static + * @param {google.cloud.gkehub.configmanagement.v1alpha.IMembershipSpec} message MembershipSpec message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + MembershipSpec.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a MembershipSpec message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.configmanagement.v1alpha.MembershipSpec + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.configmanagement.v1alpha.MembershipSpec} MembershipSpec + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + MembershipSpec.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.configmanagement.v1alpha.MembershipSpec(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.configSync = $root.google.cloud.gkehub.configmanagement.v1alpha.ConfigSync.decode(reader, reader.uint32()); + break; + case 2: + message.policyController = $root.google.cloud.gkehub.configmanagement.v1alpha.PolicyController.decode(reader, reader.uint32()); + break; + case 3: + message.binauthz = $root.google.cloud.gkehub.configmanagement.v1alpha.BinauthzConfig.decode(reader, reader.uint32()); + break; + case 4: + message.hierarchyController = $root.google.cloud.gkehub.configmanagement.v1alpha.HierarchyControllerConfig.decode(reader, reader.uint32()); + break; + case 10: + message.version = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a MembershipSpec message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.configmanagement.v1alpha.MembershipSpec + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.configmanagement.v1alpha.MembershipSpec} MembershipSpec + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + MembershipSpec.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a MembershipSpec message. + * @function verify + * @memberof google.cloud.gkehub.configmanagement.v1alpha.MembershipSpec + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + MembershipSpec.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.configSync != null && message.hasOwnProperty("configSync")) { + var error = $root.google.cloud.gkehub.configmanagement.v1alpha.ConfigSync.verify(message.configSync); + if (error) + return "configSync." + error; + } + if (message.policyController != null && message.hasOwnProperty("policyController")) { + var error = $root.google.cloud.gkehub.configmanagement.v1alpha.PolicyController.verify(message.policyController); + if (error) + return "policyController." + error; + } + if (message.binauthz != null && message.hasOwnProperty("binauthz")) { + var error = $root.google.cloud.gkehub.configmanagement.v1alpha.BinauthzConfig.verify(message.binauthz); + if (error) + return "binauthz." + error; + } + if (message.hierarchyController != null && message.hasOwnProperty("hierarchyController")) { + var error = $root.google.cloud.gkehub.configmanagement.v1alpha.HierarchyControllerConfig.verify(message.hierarchyController); + if (error) + return "hierarchyController." + error; + } + if (message.version != null && message.hasOwnProperty("version")) + if (!$util.isString(message.version)) + return "version: string expected"; + return null; + }; + + /** + * Creates a MembershipSpec message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.configmanagement.v1alpha.MembershipSpec + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.configmanagement.v1alpha.MembershipSpec} MembershipSpec + */ + MembershipSpec.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.configmanagement.v1alpha.MembershipSpec) + return object; + var message = new $root.google.cloud.gkehub.configmanagement.v1alpha.MembershipSpec(); + if (object.configSync != null) { + if (typeof object.configSync !== "object") + throw TypeError(".google.cloud.gkehub.configmanagement.v1alpha.MembershipSpec.configSync: object expected"); + message.configSync = $root.google.cloud.gkehub.configmanagement.v1alpha.ConfigSync.fromObject(object.configSync); + } + if (object.policyController != null) { + if (typeof object.policyController !== "object") + throw TypeError(".google.cloud.gkehub.configmanagement.v1alpha.MembershipSpec.policyController: object expected"); + message.policyController = $root.google.cloud.gkehub.configmanagement.v1alpha.PolicyController.fromObject(object.policyController); + } + if (object.binauthz != null) { + if (typeof object.binauthz !== "object") + throw TypeError(".google.cloud.gkehub.configmanagement.v1alpha.MembershipSpec.binauthz: object expected"); + message.binauthz = $root.google.cloud.gkehub.configmanagement.v1alpha.BinauthzConfig.fromObject(object.binauthz); + } + if (object.hierarchyController != null) { + if (typeof object.hierarchyController !== "object") + throw TypeError(".google.cloud.gkehub.configmanagement.v1alpha.MembershipSpec.hierarchyController: object expected"); + message.hierarchyController = $root.google.cloud.gkehub.configmanagement.v1alpha.HierarchyControllerConfig.fromObject(object.hierarchyController); + } + if (object.version != null) + message.version = String(object.version); + return message; + }; + + /** + * Creates a plain object from a MembershipSpec message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.configmanagement.v1alpha.MembershipSpec + * @static + * @param {google.cloud.gkehub.configmanagement.v1alpha.MembershipSpec} message MembershipSpec + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + MembershipSpec.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.configSync = null; + object.policyController = null; + object.binauthz = null; + object.hierarchyController = null; + object.version = ""; + } + if (message.configSync != null && message.hasOwnProperty("configSync")) + object.configSync = $root.google.cloud.gkehub.configmanagement.v1alpha.ConfigSync.toObject(message.configSync, options); + if (message.policyController != null && message.hasOwnProperty("policyController")) + object.policyController = $root.google.cloud.gkehub.configmanagement.v1alpha.PolicyController.toObject(message.policyController, options); + if (message.binauthz != null && message.hasOwnProperty("binauthz")) + object.binauthz = $root.google.cloud.gkehub.configmanagement.v1alpha.BinauthzConfig.toObject(message.binauthz, options); + if (message.hierarchyController != null && message.hasOwnProperty("hierarchyController")) + object.hierarchyController = $root.google.cloud.gkehub.configmanagement.v1alpha.HierarchyControllerConfig.toObject(message.hierarchyController, options); + if (message.version != null && message.hasOwnProperty("version")) + object.version = message.version; + return object; + }; + + /** + * Converts this MembershipSpec to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.configmanagement.v1alpha.MembershipSpec + * @instance + * @returns {Object.} JSON object + */ + MembershipSpec.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return MembershipSpec; + })(); + + v1alpha.ConfigSync = (function() { + + /** + * Properties of a ConfigSync. + * @memberof google.cloud.gkehub.configmanagement.v1alpha + * @interface IConfigSync + * @property {google.cloud.gkehub.configmanagement.v1alpha.IGitConfig|null} [git] ConfigSync git + * @property {string|null} [sourceFormat] ConfigSync sourceFormat + */ + + /** + * Constructs a new ConfigSync. + * @memberof google.cloud.gkehub.configmanagement.v1alpha + * @classdesc Represents a ConfigSync. + * @implements IConfigSync + * @constructor + * @param {google.cloud.gkehub.configmanagement.v1alpha.IConfigSync=} [properties] Properties to set + */ + function ConfigSync(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]]; + } + + /** + * ConfigSync git. + * @member {google.cloud.gkehub.configmanagement.v1alpha.IGitConfig|null|undefined} git + * @memberof google.cloud.gkehub.configmanagement.v1alpha.ConfigSync + * @instance + */ + ConfigSync.prototype.git = null; + + /** + * ConfigSync sourceFormat. + * @member {string} sourceFormat + * @memberof google.cloud.gkehub.configmanagement.v1alpha.ConfigSync + * @instance + */ + ConfigSync.prototype.sourceFormat = ""; + + /** + * Creates a new ConfigSync instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.configmanagement.v1alpha.ConfigSync + * @static + * @param {google.cloud.gkehub.configmanagement.v1alpha.IConfigSync=} [properties] Properties to set + * @returns {google.cloud.gkehub.configmanagement.v1alpha.ConfigSync} ConfigSync instance + */ + ConfigSync.create = function create(properties) { + return new ConfigSync(properties); + }; + + /** + * Encodes the specified ConfigSync message. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1alpha.ConfigSync.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.configmanagement.v1alpha.ConfigSync + * @static + * @param {google.cloud.gkehub.configmanagement.v1alpha.IConfigSync} message ConfigSync message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + ConfigSync.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.git != null && Object.hasOwnProperty.call(message, "git")) + $root.google.cloud.gkehub.configmanagement.v1alpha.GitConfig.encode(message.git, writer.uint32(/* id 7, wireType 2 =*/58).fork()).ldelim(); + if (message.sourceFormat != null && Object.hasOwnProperty.call(message, "sourceFormat")) + writer.uint32(/* id 8, wireType 2 =*/66).string(message.sourceFormat); + return writer; + }; + + /** + * Encodes the specified ConfigSync message, length delimited. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1alpha.ConfigSync.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.configmanagement.v1alpha.ConfigSync + * @static + * @param {google.cloud.gkehub.configmanagement.v1alpha.IConfigSync} message ConfigSync message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + ConfigSync.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a ConfigSync message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.configmanagement.v1alpha.ConfigSync + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.configmanagement.v1alpha.ConfigSync} ConfigSync + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + ConfigSync.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.configmanagement.v1alpha.ConfigSync(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 7: + message.git = $root.google.cloud.gkehub.configmanagement.v1alpha.GitConfig.decode(reader, reader.uint32()); + break; + case 8: + message.sourceFormat = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a ConfigSync message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.configmanagement.v1alpha.ConfigSync + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.configmanagement.v1alpha.ConfigSync} ConfigSync + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + ConfigSync.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a ConfigSync message. + * @function verify + * @memberof google.cloud.gkehub.configmanagement.v1alpha.ConfigSync + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + ConfigSync.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.git != null && message.hasOwnProperty("git")) { + var error = $root.google.cloud.gkehub.configmanagement.v1alpha.GitConfig.verify(message.git); + if (error) + return "git." + error; + } + if (message.sourceFormat != null && message.hasOwnProperty("sourceFormat")) + if (!$util.isString(message.sourceFormat)) + return "sourceFormat: string expected"; + return null; + }; + + /** + * Creates a ConfigSync message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.configmanagement.v1alpha.ConfigSync + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.configmanagement.v1alpha.ConfigSync} ConfigSync + */ + ConfigSync.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.configmanagement.v1alpha.ConfigSync) + return object; + var message = new $root.google.cloud.gkehub.configmanagement.v1alpha.ConfigSync(); + if (object.git != null) { + if (typeof object.git !== "object") + throw TypeError(".google.cloud.gkehub.configmanagement.v1alpha.ConfigSync.git: object expected"); + message.git = $root.google.cloud.gkehub.configmanagement.v1alpha.GitConfig.fromObject(object.git); + } + if (object.sourceFormat != null) + message.sourceFormat = String(object.sourceFormat); + return message; + }; + + /** + * Creates a plain object from a ConfigSync message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.configmanagement.v1alpha.ConfigSync + * @static + * @param {google.cloud.gkehub.configmanagement.v1alpha.ConfigSync} message ConfigSync + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + ConfigSync.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.git = null; + object.sourceFormat = ""; + } + if (message.git != null && message.hasOwnProperty("git")) + object.git = $root.google.cloud.gkehub.configmanagement.v1alpha.GitConfig.toObject(message.git, options); + if (message.sourceFormat != null && message.hasOwnProperty("sourceFormat")) + object.sourceFormat = message.sourceFormat; + return object; + }; + + /** + * Converts this ConfigSync to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.configmanagement.v1alpha.ConfigSync + * @instance + * @returns {Object.} JSON object + */ + ConfigSync.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return ConfigSync; + })(); + + v1alpha.GitConfig = (function() { + + /** + * Properties of a GitConfig. + * @memberof google.cloud.gkehub.configmanagement.v1alpha + * @interface IGitConfig + * @property {string|null} [syncRepo] GitConfig syncRepo + * @property {string|null} [syncBranch] GitConfig syncBranch + * @property {string|null} [policyDir] GitConfig policyDir + * @property {number|Long|null} [syncWaitSecs] GitConfig syncWaitSecs + * @property {string|null} [syncRev] GitConfig syncRev + * @property {string|null} [secretType] GitConfig secretType + * @property {string|null} [httpsProxy] GitConfig httpsProxy + * @property {string|null} [gcpServiceAccountEmail] GitConfig gcpServiceAccountEmail + */ + + /** + * Constructs a new GitConfig. + * @memberof google.cloud.gkehub.configmanagement.v1alpha + * @classdesc Represents a GitConfig. + * @implements IGitConfig + * @constructor + * @param {google.cloud.gkehub.configmanagement.v1alpha.IGitConfig=} [properties] Properties to set + */ + function GitConfig(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]]; + } + + /** + * GitConfig syncRepo. + * @member {string} syncRepo + * @memberof google.cloud.gkehub.configmanagement.v1alpha.GitConfig + * @instance + */ + GitConfig.prototype.syncRepo = ""; + + /** + * GitConfig syncBranch. + * @member {string} syncBranch + * @memberof google.cloud.gkehub.configmanagement.v1alpha.GitConfig + * @instance + */ + GitConfig.prototype.syncBranch = ""; + + /** + * GitConfig policyDir. + * @member {string} policyDir + * @memberof google.cloud.gkehub.configmanagement.v1alpha.GitConfig + * @instance + */ + GitConfig.prototype.policyDir = ""; + + /** + * GitConfig syncWaitSecs. + * @member {number|Long} syncWaitSecs + * @memberof google.cloud.gkehub.configmanagement.v1alpha.GitConfig + * @instance + */ + GitConfig.prototype.syncWaitSecs = $util.Long ? $util.Long.fromBits(0,0,false) : 0; + + /** + * GitConfig syncRev. + * @member {string} syncRev + * @memberof google.cloud.gkehub.configmanagement.v1alpha.GitConfig + * @instance + */ + GitConfig.prototype.syncRev = ""; + + /** + * GitConfig secretType. + * @member {string} secretType + * @memberof google.cloud.gkehub.configmanagement.v1alpha.GitConfig + * @instance + */ + GitConfig.prototype.secretType = ""; + + /** + * GitConfig httpsProxy. + * @member {string} httpsProxy + * @memberof google.cloud.gkehub.configmanagement.v1alpha.GitConfig + * @instance + */ + GitConfig.prototype.httpsProxy = ""; + + /** + * GitConfig gcpServiceAccountEmail. + * @member {string} gcpServiceAccountEmail + * @memberof google.cloud.gkehub.configmanagement.v1alpha.GitConfig + * @instance + */ + GitConfig.prototype.gcpServiceAccountEmail = ""; + + /** + * Creates a new GitConfig instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.configmanagement.v1alpha.GitConfig + * @static + * @param {google.cloud.gkehub.configmanagement.v1alpha.IGitConfig=} [properties] Properties to set + * @returns {google.cloud.gkehub.configmanagement.v1alpha.GitConfig} GitConfig instance + */ + GitConfig.create = function create(properties) { + return new GitConfig(properties); + }; + + /** + * Encodes the specified GitConfig message. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1alpha.GitConfig.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.configmanagement.v1alpha.GitConfig + * @static + * @param {google.cloud.gkehub.configmanagement.v1alpha.IGitConfig} message GitConfig message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + GitConfig.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.syncRepo != null && Object.hasOwnProperty.call(message, "syncRepo")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.syncRepo); + if (message.syncBranch != null && Object.hasOwnProperty.call(message, "syncBranch")) + writer.uint32(/* id 2, wireType 2 =*/18).string(message.syncBranch); + if (message.policyDir != null && Object.hasOwnProperty.call(message, "policyDir")) + writer.uint32(/* id 3, wireType 2 =*/26).string(message.policyDir); + if (message.syncWaitSecs != null && Object.hasOwnProperty.call(message, "syncWaitSecs")) + writer.uint32(/* id 4, wireType 0 =*/32).int64(message.syncWaitSecs); + if (message.syncRev != null && Object.hasOwnProperty.call(message, "syncRev")) + writer.uint32(/* id 5, wireType 2 =*/42).string(message.syncRev); + if (message.secretType != null && Object.hasOwnProperty.call(message, "secretType")) + writer.uint32(/* id 6, wireType 2 =*/50).string(message.secretType); + if (message.httpsProxy != null && Object.hasOwnProperty.call(message, "httpsProxy")) + writer.uint32(/* id 7, wireType 2 =*/58).string(message.httpsProxy); + if (message.gcpServiceAccountEmail != null && Object.hasOwnProperty.call(message, "gcpServiceAccountEmail")) + writer.uint32(/* id 8, wireType 2 =*/66).string(message.gcpServiceAccountEmail); + return writer; + }; + + /** + * Encodes the specified GitConfig message, length delimited. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1alpha.GitConfig.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.configmanagement.v1alpha.GitConfig + * @static + * @param {google.cloud.gkehub.configmanagement.v1alpha.IGitConfig} message GitConfig message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + GitConfig.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a GitConfig message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.configmanagement.v1alpha.GitConfig + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.configmanagement.v1alpha.GitConfig} GitConfig + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + GitConfig.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.configmanagement.v1alpha.GitConfig(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.syncRepo = reader.string(); + break; + case 2: + message.syncBranch = reader.string(); + break; + case 3: + message.policyDir = reader.string(); + break; + case 4: + message.syncWaitSecs = reader.int64(); + break; + case 5: + message.syncRev = reader.string(); + break; + case 6: + message.secretType = reader.string(); + break; + case 7: + message.httpsProxy = reader.string(); + break; + case 8: + message.gcpServiceAccountEmail = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a GitConfig message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.configmanagement.v1alpha.GitConfig + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.configmanagement.v1alpha.GitConfig} GitConfig + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + GitConfig.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a GitConfig message. + * @function verify + * @memberof google.cloud.gkehub.configmanagement.v1alpha.GitConfig + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + GitConfig.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.syncRepo != null && message.hasOwnProperty("syncRepo")) + if (!$util.isString(message.syncRepo)) + return "syncRepo: string expected"; + if (message.syncBranch != null && message.hasOwnProperty("syncBranch")) + if (!$util.isString(message.syncBranch)) + return "syncBranch: string expected"; + if (message.policyDir != null && message.hasOwnProperty("policyDir")) + if (!$util.isString(message.policyDir)) + return "policyDir: string expected"; + if (message.syncWaitSecs != null && message.hasOwnProperty("syncWaitSecs")) + if (!$util.isInteger(message.syncWaitSecs) && !(message.syncWaitSecs && $util.isInteger(message.syncWaitSecs.low) && $util.isInteger(message.syncWaitSecs.high))) + return "syncWaitSecs: integer|Long expected"; + if (message.syncRev != null && message.hasOwnProperty("syncRev")) + if (!$util.isString(message.syncRev)) + return "syncRev: string expected"; + if (message.secretType != null && message.hasOwnProperty("secretType")) + if (!$util.isString(message.secretType)) + return "secretType: string expected"; + if (message.httpsProxy != null && message.hasOwnProperty("httpsProxy")) + if (!$util.isString(message.httpsProxy)) + return "httpsProxy: string expected"; + if (message.gcpServiceAccountEmail != null && message.hasOwnProperty("gcpServiceAccountEmail")) + if (!$util.isString(message.gcpServiceAccountEmail)) + return "gcpServiceAccountEmail: string expected"; + return null; + }; + + /** + * Creates a GitConfig message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.configmanagement.v1alpha.GitConfig + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.configmanagement.v1alpha.GitConfig} GitConfig + */ + GitConfig.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.configmanagement.v1alpha.GitConfig) + return object; + var message = new $root.google.cloud.gkehub.configmanagement.v1alpha.GitConfig(); + if (object.syncRepo != null) + message.syncRepo = String(object.syncRepo); + if (object.syncBranch != null) + message.syncBranch = String(object.syncBranch); + if (object.policyDir != null) + message.policyDir = String(object.policyDir); + if (object.syncWaitSecs != null) + if ($util.Long) + (message.syncWaitSecs = $util.Long.fromValue(object.syncWaitSecs)).unsigned = false; + else if (typeof object.syncWaitSecs === "string") + message.syncWaitSecs = parseInt(object.syncWaitSecs, 10); + else if (typeof object.syncWaitSecs === "number") + message.syncWaitSecs = object.syncWaitSecs; + else if (typeof object.syncWaitSecs === "object") + message.syncWaitSecs = new $util.LongBits(object.syncWaitSecs.low >>> 0, object.syncWaitSecs.high >>> 0).toNumber(); + if (object.syncRev != null) + message.syncRev = String(object.syncRev); + if (object.secretType != null) + message.secretType = String(object.secretType); + if (object.httpsProxy != null) + message.httpsProxy = String(object.httpsProxy); + if (object.gcpServiceAccountEmail != null) + message.gcpServiceAccountEmail = String(object.gcpServiceAccountEmail); + return message; + }; + + /** + * Creates a plain object from a GitConfig message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.configmanagement.v1alpha.GitConfig + * @static + * @param {google.cloud.gkehub.configmanagement.v1alpha.GitConfig} message GitConfig + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + GitConfig.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.syncRepo = ""; + object.syncBranch = ""; + object.policyDir = ""; + if ($util.Long) { + var long = new $util.Long(0, 0, false); + object.syncWaitSecs = options.longs === String ? long.toString() : options.longs === Number ? long.toNumber() : long; + } else + object.syncWaitSecs = options.longs === String ? "0" : 0; + object.syncRev = ""; + object.secretType = ""; + object.httpsProxy = ""; + object.gcpServiceAccountEmail = ""; + } + if (message.syncRepo != null && message.hasOwnProperty("syncRepo")) + object.syncRepo = message.syncRepo; + if (message.syncBranch != null && message.hasOwnProperty("syncBranch")) + object.syncBranch = message.syncBranch; + if (message.policyDir != null && message.hasOwnProperty("policyDir")) + object.policyDir = message.policyDir; + if (message.syncWaitSecs != null && message.hasOwnProperty("syncWaitSecs")) + if (typeof message.syncWaitSecs === "number") + object.syncWaitSecs = options.longs === String ? String(message.syncWaitSecs) : message.syncWaitSecs; + else + object.syncWaitSecs = options.longs === String ? $util.Long.prototype.toString.call(message.syncWaitSecs) : options.longs === Number ? new $util.LongBits(message.syncWaitSecs.low >>> 0, message.syncWaitSecs.high >>> 0).toNumber() : message.syncWaitSecs; + if (message.syncRev != null && message.hasOwnProperty("syncRev")) + object.syncRev = message.syncRev; + if (message.secretType != null && message.hasOwnProperty("secretType")) + object.secretType = message.secretType; + if (message.httpsProxy != null && message.hasOwnProperty("httpsProxy")) + object.httpsProxy = message.httpsProxy; + if (message.gcpServiceAccountEmail != null && message.hasOwnProperty("gcpServiceAccountEmail")) + object.gcpServiceAccountEmail = message.gcpServiceAccountEmail; + return object; + }; + + /** + * Converts this GitConfig to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.configmanagement.v1alpha.GitConfig + * @instance + * @returns {Object.} JSON object + */ + GitConfig.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return GitConfig; + })(); + + v1alpha.PolicyController = (function() { + + /** + * Properties of a PolicyController. + * @memberof google.cloud.gkehub.configmanagement.v1alpha + * @interface IPolicyController + * @property {boolean|null} [enabled] PolicyController enabled + * @property {boolean|null} [templateLibraryInstalled] PolicyController templateLibraryInstalled + * @property {number|Long|null} [auditIntervalSeconds] PolicyController auditIntervalSeconds + * @property {Array.|null} [exemptableNamespaces] PolicyController exemptableNamespaces + * @property {boolean|null} [referentialRulesEnabled] PolicyController referentialRulesEnabled + * @property {boolean|null} [logDeniesEnabled] PolicyController logDeniesEnabled + * @property {boolean|null} [mutationEnabled] PolicyController mutationEnabled + */ + + /** + * Constructs a new PolicyController. + * @memberof google.cloud.gkehub.configmanagement.v1alpha + * @classdesc Represents a PolicyController. + * @implements IPolicyController + * @constructor + * @param {google.cloud.gkehub.configmanagement.v1alpha.IPolicyController=} [properties] Properties to set + */ + function PolicyController(properties) { + this.exemptableNamespaces = []; + 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]]; + } + + /** + * PolicyController enabled. + * @member {boolean} enabled + * @memberof google.cloud.gkehub.configmanagement.v1alpha.PolicyController + * @instance + */ + PolicyController.prototype.enabled = false; + + /** + * PolicyController templateLibraryInstalled. + * @member {boolean|null|undefined} templateLibraryInstalled + * @memberof google.cloud.gkehub.configmanagement.v1alpha.PolicyController + * @instance + */ + PolicyController.prototype.templateLibraryInstalled = null; + + /** + * PolicyController auditIntervalSeconds. + * @member {number|Long|null|undefined} auditIntervalSeconds + * @memberof google.cloud.gkehub.configmanagement.v1alpha.PolicyController + * @instance + */ + PolicyController.prototype.auditIntervalSeconds = null; + + /** + * PolicyController exemptableNamespaces. + * @member {Array.} exemptableNamespaces + * @memberof google.cloud.gkehub.configmanagement.v1alpha.PolicyController + * @instance + */ + PolicyController.prototype.exemptableNamespaces = $util.emptyArray; + + /** + * PolicyController referentialRulesEnabled. + * @member {boolean} referentialRulesEnabled + * @memberof google.cloud.gkehub.configmanagement.v1alpha.PolicyController + * @instance + */ + PolicyController.prototype.referentialRulesEnabled = false; + + /** + * PolicyController logDeniesEnabled. + * @member {boolean} logDeniesEnabled + * @memberof google.cloud.gkehub.configmanagement.v1alpha.PolicyController + * @instance + */ + PolicyController.prototype.logDeniesEnabled = false; + + /** + * PolicyController mutationEnabled. + * @member {boolean} mutationEnabled + * @memberof google.cloud.gkehub.configmanagement.v1alpha.PolicyController + * @instance + */ + PolicyController.prototype.mutationEnabled = false; + + // OneOf field names bound to virtual getters and setters + var $oneOfFields; + + /** + * PolicyController _templateLibraryInstalled. + * @member {"templateLibraryInstalled"|undefined} _templateLibraryInstalled + * @memberof google.cloud.gkehub.configmanagement.v1alpha.PolicyController + * @instance + */ + Object.defineProperty(PolicyController.prototype, "_templateLibraryInstalled", { + get: $util.oneOfGetter($oneOfFields = ["templateLibraryInstalled"]), + set: $util.oneOfSetter($oneOfFields) + }); + + /** + * PolicyController _auditIntervalSeconds. + * @member {"auditIntervalSeconds"|undefined} _auditIntervalSeconds + * @memberof google.cloud.gkehub.configmanagement.v1alpha.PolicyController + * @instance + */ + Object.defineProperty(PolicyController.prototype, "_auditIntervalSeconds", { + get: $util.oneOfGetter($oneOfFields = ["auditIntervalSeconds"]), + set: $util.oneOfSetter($oneOfFields) + }); + + /** + * Creates a new PolicyController instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.configmanagement.v1alpha.PolicyController + * @static + * @param {google.cloud.gkehub.configmanagement.v1alpha.IPolicyController=} [properties] Properties to set + * @returns {google.cloud.gkehub.configmanagement.v1alpha.PolicyController} PolicyController instance + */ + PolicyController.create = function create(properties) { + return new PolicyController(properties); + }; + + /** + * Encodes the specified PolicyController message. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1alpha.PolicyController.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.configmanagement.v1alpha.PolicyController + * @static + * @param {google.cloud.gkehub.configmanagement.v1alpha.IPolicyController} message PolicyController message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + PolicyController.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.templateLibraryInstalled != null && Object.hasOwnProperty.call(message, "templateLibraryInstalled")) + writer.uint32(/* id 2, wireType 0 =*/16).bool(message.templateLibraryInstalled); + if (message.auditIntervalSeconds != null && Object.hasOwnProperty.call(message, "auditIntervalSeconds")) + writer.uint32(/* id 3, wireType 0 =*/24).int64(message.auditIntervalSeconds); + if (message.exemptableNamespaces != null && message.exemptableNamespaces.length) + for (var i = 0; i < message.exemptableNamespaces.length; ++i) + writer.uint32(/* id 4, wireType 2 =*/34).string(message.exemptableNamespaces[i]); + if (message.referentialRulesEnabled != null && Object.hasOwnProperty.call(message, "referentialRulesEnabled")) + writer.uint32(/* id 5, wireType 0 =*/40).bool(message.referentialRulesEnabled); + if (message.logDeniesEnabled != null && Object.hasOwnProperty.call(message, "logDeniesEnabled")) + writer.uint32(/* id 6, wireType 0 =*/48).bool(message.logDeniesEnabled); + if (message.mutationEnabled != null && Object.hasOwnProperty.call(message, "mutationEnabled")) + writer.uint32(/* id 7, wireType 0 =*/56).bool(message.mutationEnabled); + return writer; + }; + + /** + * Encodes the specified PolicyController message, length delimited. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1alpha.PolicyController.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.configmanagement.v1alpha.PolicyController + * @static + * @param {google.cloud.gkehub.configmanagement.v1alpha.IPolicyController} message PolicyController message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + PolicyController.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a PolicyController message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.configmanagement.v1alpha.PolicyController + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.configmanagement.v1alpha.PolicyController} PolicyController + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + PolicyController.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.configmanagement.v1alpha.PolicyController(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.enabled = reader.bool(); + break; + case 2: + message.templateLibraryInstalled = reader.bool(); + break; + case 3: + message.auditIntervalSeconds = reader.int64(); + break; + case 4: + if (!(message.exemptableNamespaces && message.exemptableNamespaces.length)) + message.exemptableNamespaces = []; + message.exemptableNamespaces.push(reader.string()); + break; + case 5: + message.referentialRulesEnabled = reader.bool(); + break; + case 6: + message.logDeniesEnabled = reader.bool(); + break; + case 7: + message.mutationEnabled = reader.bool(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a PolicyController message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.configmanagement.v1alpha.PolicyController + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.configmanagement.v1alpha.PolicyController} PolicyController + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + PolicyController.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a PolicyController message. + * @function verify + * @memberof google.cloud.gkehub.configmanagement.v1alpha.PolicyController + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + PolicyController.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.templateLibraryInstalled != null && message.hasOwnProperty("templateLibraryInstalled")) { + properties._templateLibraryInstalled = 1; + if (typeof message.templateLibraryInstalled !== "boolean") + return "templateLibraryInstalled: boolean expected"; + } + if (message.auditIntervalSeconds != null && message.hasOwnProperty("auditIntervalSeconds")) { + properties._auditIntervalSeconds = 1; + if (!$util.isInteger(message.auditIntervalSeconds) && !(message.auditIntervalSeconds && $util.isInteger(message.auditIntervalSeconds.low) && $util.isInteger(message.auditIntervalSeconds.high))) + return "auditIntervalSeconds: integer|Long expected"; + } + if (message.exemptableNamespaces != null && message.hasOwnProperty("exemptableNamespaces")) { + if (!Array.isArray(message.exemptableNamespaces)) + return "exemptableNamespaces: array expected"; + for (var i = 0; i < message.exemptableNamespaces.length; ++i) + if (!$util.isString(message.exemptableNamespaces[i])) + return "exemptableNamespaces: string[] expected"; + } + if (message.referentialRulesEnabled != null && message.hasOwnProperty("referentialRulesEnabled")) + if (typeof message.referentialRulesEnabled !== "boolean") + return "referentialRulesEnabled: boolean expected"; + if (message.logDeniesEnabled != null && message.hasOwnProperty("logDeniesEnabled")) + if (typeof message.logDeniesEnabled !== "boolean") + return "logDeniesEnabled: boolean expected"; + if (message.mutationEnabled != null && message.hasOwnProperty("mutationEnabled")) + if (typeof message.mutationEnabled !== "boolean") + return "mutationEnabled: boolean expected"; + return null; + }; + + /** + * Creates a PolicyController message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.configmanagement.v1alpha.PolicyController + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.configmanagement.v1alpha.PolicyController} PolicyController + */ + PolicyController.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.configmanagement.v1alpha.PolicyController) + return object; + var message = new $root.google.cloud.gkehub.configmanagement.v1alpha.PolicyController(); + if (object.enabled != null) + message.enabled = Boolean(object.enabled); + if (object.templateLibraryInstalled != null) + message.templateLibraryInstalled = Boolean(object.templateLibraryInstalled); + if (object.auditIntervalSeconds != null) + if ($util.Long) + (message.auditIntervalSeconds = $util.Long.fromValue(object.auditIntervalSeconds)).unsigned = false; + else if (typeof object.auditIntervalSeconds === "string") + message.auditIntervalSeconds = parseInt(object.auditIntervalSeconds, 10); + else if (typeof object.auditIntervalSeconds === "number") + message.auditIntervalSeconds = object.auditIntervalSeconds; + else if (typeof object.auditIntervalSeconds === "object") + message.auditIntervalSeconds = new $util.LongBits(object.auditIntervalSeconds.low >>> 0, object.auditIntervalSeconds.high >>> 0).toNumber(); + if (object.exemptableNamespaces) { + if (!Array.isArray(object.exemptableNamespaces)) + throw TypeError(".google.cloud.gkehub.configmanagement.v1alpha.PolicyController.exemptableNamespaces: array expected"); + message.exemptableNamespaces = []; + for (var i = 0; i < object.exemptableNamespaces.length; ++i) + message.exemptableNamespaces[i] = String(object.exemptableNamespaces[i]); + } + if (object.referentialRulesEnabled != null) + message.referentialRulesEnabled = Boolean(object.referentialRulesEnabled); + if (object.logDeniesEnabled != null) + message.logDeniesEnabled = Boolean(object.logDeniesEnabled); + if (object.mutationEnabled != null) + message.mutationEnabled = Boolean(object.mutationEnabled); + return message; + }; + + /** + * Creates a plain object from a PolicyController message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.configmanagement.v1alpha.PolicyController + * @static + * @param {google.cloud.gkehub.configmanagement.v1alpha.PolicyController} message PolicyController + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + PolicyController.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.arrays || options.defaults) + object.exemptableNamespaces = []; + if (options.defaults) { + object.enabled = false; + object.referentialRulesEnabled = false; + object.logDeniesEnabled = false; + object.mutationEnabled = false; + } + if (message.enabled != null && message.hasOwnProperty("enabled")) + object.enabled = message.enabled; + if (message.templateLibraryInstalled != null && message.hasOwnProperty("templateLibraryInstalled")) { + object.templateLibraryInstalled = message.templateLibraryInstalled; + if (options.oneofs) + object._templateLibraryInstalled = "templateLibraryInstalled"; + } + if (message.auditIntervalSeconds != null && message.hasOwnProperty("auditIntervalSeconds")) { + if (typeof message.auditIntervalSeconds === "number") + object.auditIntervalSeconds = options.longs === String ? String(message.auditIntervalSeconds) : message.auditIntervalSeconds; + else + object.auditIntervalSeconds = options.longs === String ? $util.Long.prototype.toString.call(message.auditIntervalSeconds) : options.longs === Number ? new $util.LongBits(message.auditIntervalSeconds.low >>> 0, message.auditIntervalSeconds.high >>> 0).toNumber() : message.auditIntervalSeconds; + if (options.oneofs) + object._auditIntervalSeconds = "auditIntervalSeconds"; + } + if (message.exemptableNamespaces && message.exemptableNamespaces.length) { + object.exemptableNamespaces = []; + for (var j = 0; j < message.exemptableNamespaces.length; ++j) + object.exemptableNamespaces[j] = message.exemptableNamespaces[j]; + } + if (message.referentialRulesEnabled != null && message.hasOwnProperty("referentialRulesEnabled")) + object.referentialRulesEnabled = message.referentialRulesEnabled; + if (message.logDeniesEnabled != null && message.hasOwnProperty("logDeniesEnabled")) + object.logDeniesEnabled = message.logDeniesEnabled; + if (message.mutationEnabled != null && message.hasOwnProperty("mutationEnabled")) + object.mutationEnabled = message.mutationEnabled; + return object; + }; + + /** + * Converts this PolicyController to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.configmanagement.v1alpha.PolicyController + * @instance + * @returns {Object.} JSON object + */ + PolicyController.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return PolicyController; + })(); + + v1alpha.BinauthzConfig = (function() { + + /** + * Properties of a BinauthzConfig. + * @memberof google.cloud.gkehub.configmanagement.v1alpha + * @interface IBinauthzConfig + * @property {boolean|null} [enabled] BinauthzConfig enabled + */ + + /** + * Constructs a new BinauthzConfig. + * @memberof google.cloud.gkehub.configmanagement.v1alpha + * @classdesc Represents a BinauthzConfig. + * @implements IBinauthzConfig + * @constructor + * @param {google.cloud.gkehub.configmanagement.v1alpha.IBinauthzConfig=} [properties] Properties to set + */ + function BinauthzConfig(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]]; + } + + /** + * BinauthzConfig enabled. + * @member {boolean} enabled + * @memberof google.cloud.gkehub.configmanagement.v1alpha.BinauthzConfig + * @instance + */ + BinauthzConfig.prototype.enabled = false; + + /** + * Creates a new BinauthzConfig instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.configmanagement.v1alpha.BinauthzConfig + * @static + * @param {google.cloud.gkehub.configmanagement.v1alpha.IBinauthzConfig=} [properties] Properties to set + * @returns {google.cloud.gkehub.configmanagement.v1alpha.BinauthzConfig} BinauthzConfig instance + */ + BinauthzConfig.create = function create(properties) { + return new BinauthzConfig(properties); + }; + + /** + * Encodes the specified BinauthzConfig message. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1alpha.BinauthzConfig.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.configmanagement.v1alpha.BinauthzConfig + * @static + * @param {google.cloud.gkehub.configmanagement.v1alpha.IBinauthzConfig} message BinauthzConfig message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + BinauthzConfig.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 BinauthzConfig message, length delimited. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1alpha.BinauthzConfig.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.configmanagement.v1alpha.BinauthzConfig + * @static + * @param {google.cloud.gkehub.configmanagement.v1alpha.IBinauthzConfig} message BinauthzConfig message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + BinauthzConfig.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a BinauthzConfig message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.configmanagement.v1alpha.BinauthzConfig + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.configmanagement.v1alpha.BinauthzConfig} BinauthzConfig + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + BinauthzConfig.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.configmanagement.v1alpha.BinauthzConfig(); + 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 BinauthzConfig message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.configmanagement.v1alpha.BinauthzConfig + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.configmanagement.v1alpha.BinauthzConfig} BinauthzConfig + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + BinauthzConfig.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a BinauthzConfig message. + * @function verify + * @memberof google.cloud.gkehub.configmanagement.v1alpha.BinauthzConfig + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + BinauthzConfig.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 BinauthzConfig message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.configmanagement.v1alpha.BinauthzConfig + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.configmanagement.v1alpha.BinauthzConfig} BinauthzConfig + */ + BinauthzConfig.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.configmanagement.v1alpha.BinauthzConfig) + return object; + var message = new $root.google.cloud.gkehub.configmanagement.v1alpha.BinauthzConfig(); + if (object.enabled != null) + message.enabled = Boolean(object.enabled); + return message; + }; + + /** + * Creates a plain object from a BinauthzConfig message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.configmanagement.v1alpha.BinauthzConfig + * @static + * @param {google.cloud.gkehub.configmanagement.v1alpha.BinauthzConfig} message BinauthzConfig + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + BinauthzConfig.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 BinauthzConfig to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.configmanagement.v1alpha.BinauthzConfig + * @instance + * @returns {Object.} JSON object + */ + BinauthzConfig.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return BinauthzConfig; + })(); + + v1alpha.HierarchyControllerConfig = (function() { + + /** + * Properties of a HierarchyControllerConfig. + * @memberof google.cloud.gkehub.configmanagement.v1alpha + * @interface IHierarchyControllerConfig + * @property {boolean|null} [enabled] HierarchyControllerConfig enabled + * @property {boolean|null} [enablePodTreeLabels] HierarchyControllerConfig enablePodTreeLabels + * @property {boolean|null} [enableHierarchicalResourceQuota] HierarchyControllerConfig enableHierarchicalResourceQuota + */ + + /** + * Constructs a new HierarchyControllerConfig. + * @memberof google.cloud.gkehub.configmanagement.v1alpha + * @classdesc Represents a HierarchyControllerConfig. + * @implements IHierarchyControllerConfig + * @constructor + * @param {google.cloud.gkehub.configmanagement.v1alpha.IHierarchyControllerConfig=} [properties] Properties to set + */ + function HierarchyControllerConfig(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]]; + } + + /** + * HierarchyControllerConfig enabled. + * @member {boolean} enabled + * @memberof google.cloud.gkehub.configmanagement.v1alpha.HierarchyControllerConfig + * @instance + */ + HierarchyControllerConfig.prototype.enabled = false; + + /** + * HierarchyControllerConfig enablePodTreeLabels. + * @member {boolean} enablePodTreeLabels + * @memberof google.cloud.gkehub.configmanagement.v1alpha.HierarchyControllerConfig + * @instance + */ + HierarchyControllerConfig.prototype.enablePodTreeLabels = false; + + /** + * HierarchyControllerConfig enableHierarchicalResourceQuota. + * @member {boolean} enableHierarchicalResourceQuota + * @memberof google.cloud.gkehub.configmanagement.v1alpha.HierarchyControllerConfig + * @instance + */ + HierarchyControllerConfig.prototype.enableHierarchicalResourceQuota = false; + + /** + * Creates a new HierarchyControllerConfig instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.configmanagement.v1alpha.HierarchyControllerConfig + * @static + * @param {google.cloud.gkehub.configmanagement.v1alpha.IHierarchyControllerConfig=} [properties] Properties to set + * @returns {google.cloud.gkehub.configmanagement.v1alpha.HierarchyControllerConfig} HierarchyControllerConfig instance + */ + HierarchyControllerConfig.create = function create(properties) { + return new HierarchyControllerConfig(properties); + }; + + /** + * Encodes the specified HierarchyControllerConfig message. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1alpha.HierarchyControllerConfig.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.configmanagement.v1alpha.HierarchyControllerConfig + * @static + * @param {google.cloud.gkehub.configmanagement.v1alpha.IHierarchyControllerConfig} message HierarchyControllerConfig message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + HierarchyControllerConfig.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.enablePodTreeLabels != null && Object.hasOwnProperty.call(message, "enablePodTreeLabels")) + writer.uint32(/* id 2, wireType 0 =*/16).bool(message.enablePodTreeLabels); + if (message.enableHierarchicalResourceQuota != null && Object.hasOwnProperty.call(message, "enableHierarchicalResourceQuota")) + writer.uint32(/* id 3, wireType 0 =*/24).bool(message.enableHierarchicalResourceQuota); + return writer; + }; + + /** + * Encodes the specified HierarchyControllerConfig message, length delimited. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1alpha.HierarchyControllerConfig.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.configmanagement.v1alpha.HierarchyControllerConfig + * @static + * @param {google.cloud.gkehub.configmanagement.v1alpha.IHierarchyControllerConfig} message HierarchyControllerConfig message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + HierarchyControllerConfig.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a HierarchyControllerConfig message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.configmanagement.v1alpha.HierarchyControllerConfig + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.configmanagement.v1alpha.HierarchyControllerConfig} HierarchyControllerConfig + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + HierarchyControllerConfig.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.configmanagement.v1alpha.HierarchyControllerConfig(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.enabled = reader.bool(); + break; + case 2: + message.enablePodTreeLabels = reader.bool(); + break; + case 3: + message.enableHierarchicalResourceQuota = reader.bool(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a HierarchyControllerConfig message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.configmanagement.v1alpha.HierarchyControllerConfig + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.configmanagement.v1alpha.HierarchyControllerConfig} HierarchyControllerConfig + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + HierarchyControllerConfig.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a HierarchyControllerConfig message. + * @function verify + * @memberof google.cloud.gkehub.configmanagement.v1alpha.HierarchyControllerConfig + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + HierarchyControllerConfig.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.enablePodTreeLabels != null && message.hasOwnProperty("enablePodTreeLabels")) + if (typeof message.enablePodTreeLabels !== "boolean") + return "enablePodTreeLabels: boolean expected"; + if (message.enableHierarchicalResourceQuota != null && message.hasOwnProperty("enableHierarchicalResourceQuota")) + if (typeof message.enableHierarchicalResourceQuota !== "boolean") + return "enableHierarchicalResourceQuota: boolean expected"; + return null; + }; + + /** + * Creates a HierarchyControllerConfig message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.configmanagement.v1alpha.HierarchyControllerConfig + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.configmanagement.v1alpha.HierarchyControllerConfig} HierarchyControllerConfig + */ + HierarchyControllerConfig.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.configmanagement.v1alpha.HierarchyControllerConfig) + return object; + var message = new $root.google.cloud.gkehub.configmanagement.v1alpha.HierarchyControllerConfig(); + if (object.enabled != null) + message.enabled = Boolean(object.enabled); + if (object.enablePodTreeLabels != null) + message.enablePodTreeLabels = Boolean(object.enablePodTreeLabels); + if (object.enableHierarchicalResourceQuota != null) + message.enableHierarchicalResourceQuota = Boolean(object.enableHierarchicalResourceQuota); + return message; + }; + + /** + * Creates a plain object from a HierarchyControllerConfig message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.configmanagement.v1alpha.HierarchyControllerConfig + * @static + * @param {google.cloud.gkehub.configmanagement.v1alpha.HierarchyControllerConfig} message HierarchyControllerConfig + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + HierarchyControllerConfig.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.enabled = false; + object.enablePodTreeLabels = false; + object.enableHierarchicalResourceQuota = false; + } + if (message.enabled != null && message.hasOwnProperty("enabled")) + object.enabled = message.enabled; + if (message.enablePodTreeLabels != null && message.hasOwnProperty("enablePodTreeLabels")) + object.enablePodTreeLabels = message.enablePodTreeLabels; + if (message.enableHierarchicalResourceQuota != null && message.hasOwnProperty("enableHierarchicalResourceQuota")) + object.enableHierarchicalResourceQuota = message.enableHierarchicalResourceQuota; + return object; + }; + + /** + * Converts this HierarchyControllerConfig to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.configmanagement.v1alpha.HierarchyControllerConfig + * @instance + * @returns {Object.} JSON object + */ + HierarchyControllerConfig.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return HierarchyControllerConfig; + })(); + + v1alpha.HierarchyControllerDeploymentState = (function() { + + /** + * Properties of a HierarchyControllerDeploymentState. + * @memberof google.cloud.gkehub.configmanagement.v1alpha + * @interface IHierarchyControllerDeploymentState + * @property {google.cloud.gkehub.configmanagement.v1alpha.DeploymentState|null} [hnc] HierarchyControllerDeploymentState hnc + * @property {google.cloud.gkehub.configmanagement.v1alpha.DeploymentState|null} [extension] HierarchyControllerDeploymentState extension + */ + + /** + * Constructs a new HierarchyControllerDeploymentState. + * @memberof google.cloud.gkehub.configmanagement.v1alpha + * @classdesc Represents a HierarchyControllerDeploymentState. + * @implements IHierarchyControllerDeploymentState + * @constructor + * @param {google.cloud.gkehub.configmanagement.v1alpha.IHierarchyControllerDeploymentState=} [properties] Properties to set + */ + function HierarchyControllerDeploymentState(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]]; + } + + /** + * HierarchyControllerDeploymentState hnc. + * @member {google.cloud.gkehub.configmanagement.v1alpha.DeploymentState} hnc + * @memberof google.cloud.gkehub.configmanagement.v1alpha.HierarchyControllerDeploymentState + * @instance + */ + HierarchyControllerDeploymentState.prototype.hnc = 0; + + /** + * HierarchyControllerDeploymentState extension. + * @member {google.cloud.gkehub.configmanagement.v1alpha.DeploymentState} extension + * @memberof google.cloud.gkehub.configmanagement.v1alpha.HierarchyControllerDeploymentState + * @instance + */ + HierarchyControllerDeploymentState.prototype.extension = 0; + + /** + * Creates a new HierarchyControllerDeploymentState instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.configmanagement.v1alpha.HierarchyControllerDeploymentState + * @static + * @param {google.cloud.gkehub.configmanagement.v1alpha.IHierarchyControllerDeploymentState=} [properties] Properties to set + * @returns {google.cloud.gkehub.configmanagement.v1alpha.HierarchyControllerDeploymentState} HierarchyControllerDeploymentState instance + */ + HierarchyControllerDeploymentState.create = function create(properties) { + return new HierarchyControllerDeploymentState(properties); + }; + + /** + * Encodes the specified HierarchyControllerDeploymentState message. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1alpha.HierarchyControllerDeploymentState.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.configmanagement.v1alpha.HierarchyControllerDeploymentState + * @static + * @param {google.cloud.gkehub.configmanagement.v1alpha.IHierarchyControllerDeploymentState} message HierarchyControllerDeploymentState message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + HierarchyControllerDeploymentState.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.hnc != null && Object.hasOwnProperty.call(message, "hnc")) + writer.uint32(/* id 1, wireType 0 =*/8).int32(message.hnc); + if (message.extension != null && Object.hasOwnProperty.call(message, "extension")) + writer.uint32(/* id 2, wireType 0 =*/16).int32(message.extension); + return writer; + }; + + /** + * Encodes the specified HierarchyControllerDeploymentState message, length delimited. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1alpha.HierarchyControllerDeploymentState.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.configmanagement.v1alpha.HierarchyControllerDeploymentState + * @static + * @param {google.cloud.gkehub.configmanagement.v1alpha.IHierarchyControllerDeploymentState} message HierarchyControllerDeploymentState message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + HierarchyControllerDeploymentState.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a HierarchyControllerDeploymentState message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.configmanagement.v1alpha.HierarchyControllerDeploymentState + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.configmanagement.v1alpha.HierarchyControllerDeploymentState} HierarchyControllerDeploymentState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + HierarchyControllerDeploymentState.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.configmanagement.v1alpha.HierarchyControllerDeploymentState(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.hnc = reader.int32(); + break; + case 2: + message.extension = reader.int32(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a HierarchyControllerDeploymentState message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.configmanagement.v1alpha.HierarchyControllerDeploymentState + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.configmanagement.v1alpha.HierarchyControllerDeploymentState} HierarchyControllerDeploymentState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + HierarchyControllerDeploymentState.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a HierarchyControllerDeploymentState message. + * @function verify + * @memberof google.cloud.gkehub.configmanagement.v1alpha.HierarchyControllerDeploymentState + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + HierarchyControllerDeploymentState.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.hnc != null && message.hasOwnProperty("hnc")) + switch (message.hnc) { + default: + return "hnc: enum value expected"; + case 0: + case 1: + case 2: + case 3: + break; + } + if (message.extension != null && message.hasOwnProperty("extension")) + switch (message.extension) { + default: + return "extension: enum value expected"; + case 0: + case 1: + case 2: + case 3: + break; + } + return null; + }; + + /** + * Creates a HierarchyControllerDeploymentState message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.configmanagement.v1alpha.HierarchyControllerDeploymentState + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.configmanagement.v1alpha.HierarchyControllerDeploymentState} HierarchyControllerDeploymentState + */ + HierarchyControllerDeploymentState.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.configmanagement.v1alpha.HierarchyControllerDeploymentState) + return object; + var message = new $root.google.cloud.gkehub.configmanagement.v1alpha.HierarchyControllerDeploymentState(); + switch (object.hnc) { + case "DEPLOYMENT_STATE_UNSPECIFIED": + case 0: + message.hnc = 0; + break; + case "NOT_INSTALLED": + case 1: + message.hnc = 1; + break; + case "INSTALLED": + case 2: + message.hnc = 2; + break; + case "ERROR": + case 3: + message.hnc = 3; + break; + } + switch (object.extension) { + case "DEPLOYMENT_STATE_UNSPECIFIED": + case 0: + message.extension = 0; + break; + case "NOT_INSTALLED": + case 1: + message.extension = 1; + break; + case "INSTALLED": + case 2: + message.extension = 2; + break; + case "ERROR": + case 3: + message.extension = 3; + break; + } + return message; + }; + + /** + * Creates a plain object from a HierarchyControllerDeploymentState message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.configmanagement.v1alpha.HierarchyControllerDeploymentState + * @static + * @param {google.cloud.gkehub.configmanagement.v1alpha.HierarchyControllerDeploymentState} message HierarchyControllerDeploymentState + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + HierarchyControllerDeploymentState.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.hnc = options.enums === String ? "DEPLOYMENT_STATE_UNSPECIFIED" : 0; + object.extension = options.enums === String ? "DEPLOYMENT_STATE_UNSPECIFIED" : 0; + } + if (message.hnc != null && message.hasOwnProperty("hnc")) + object.hnc = options.enums === String ? $root.google.cloud.gkehub.configmanagement.v1alpha.DeploymentState[message.hnc] : message.hnc; + if (message.extension != null && message.hasOwnProperty("extension")) + object.extension = options.enums === String ? $root.google.cloud.gkehub.configmanagement.v1alpha.DeploymentState[message.extension] : message.extension; + return object; + }; + + /** + * Converts this HierarchyControllerDeploymentState to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.configmanagement.v1alpha.HierarchyControllerDeploymentState + * @instance + * @returns {Object.} JSON object + */ + HierarchyControllerDeploymentState.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return HierarchyControllerDeploymentState; + })(); + + v1alpha.HierarchyControllerVersion = (function() { + + /** + * Properties of a HierarchyControllerVersion. + * @memberof google.cloud.gkehub.configmanagement.v1alpha + * @interface IHierarchyControllerVersion + * @property {string|null} [hnc] HierarchyControllerVersion hnc + * @property {string|null} [extension] HierarchyControllerVersion extension + */ + + /** + * Constructs a new HierarchyControllerVersion. + * @memberof google.cloud.gkehub.configmanagement.v1alpha + * @classdesc Represents a HierarchyControllerVersion. + * @implements IHierarchyControllerVersion + * @constructor + * @param {google.cloud.gkehub.configmanagement.v1alpha.IHierarchyControllerVersion=} [properties] Properties to set + */ + function HierarchyControllerVersion(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]]; + } + + /** + * HierarchyControllerVersion hnc. + * @member {string} hnc + * @memberof google.cloud.gkehub.configmanagement.v1alpha.HierarchyControllerVersion + * @instance + */ + HierarchyControllerVersion.prototype.hnc = ""; + + /** + * HierarchyControllerVersion extension. + * @member {string} extension + * @memberof google.cloud.gkehub.configmanagement.v1alpha.HierarchyControllerVersion + * @instance + */ + HierarchyControllerVersion.prototype.extension = ""; + + /** + * Creates a new HierarchyControllerVersion instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.configmanagement.v1alpha.HierarchyControllerVersion + * @static + * @param {google.cloud.gkehub.configmanagement.v1alpha.IHierarchyControllerVersion=} [properties] Properties to set + * @returns {google.cloud.gkehub.configmanagement.v1alpha.HierarchyControllerVersion} HierarchyControllerVersion instance + */ + HierarchyControllerVersion.create = function create(properties) { + return new HierarchyControllerVersion(properties); + }; + + /** + * Encodes the specified HierarchyControllerVersion message. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1alpha.HierarchyControllerVersion.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.configmanagement.v1alpha.HierarchyControllerVersion + * @static + * @param {google.cloud.gkehub.configmanagement.v1alpha.IHierarchyControllerVersion} message HierarchyControllerVersion message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + HierarchyControllerVersion.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.hnc != null && Object.hasOwnProperty.call(message, "hnc")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.hnc); + if (message.extension != null && Object.hasOwnProperty.call(message, "extension")) + writer.uint32(/* id 2, wireType 2 =*/18).string(message.extension); + return writer; + }; + + /** + * Encodes the specified HierarchyControllerVersion message, length delimited. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1alpha.HierarchyControllerVersion.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.configmanagement.v1alpha.HierarchyControllerVersion + * @static + * @param {google.cloud.gkehub.configmanagement.v1alpha.IHierarchyControllerVersion} message HierarchyControllerVersion message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + HierarchyControllerVersion.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a HierarchyControllerVersion message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.configmanagement.v1alpha.HierarchyControllerVersion + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.configmanagement.v1alpha.HierarchyControllerVersion} HierarchyControllerVersion + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + HierarchyControllerVersion.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.configmanagement.v1alpha.HierarchyControllerVersion(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.hnc = reader.string(); + break; + case 2: + message.extension = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a HierarchyControllerVersion message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.configmanagement.v1alpha.HierarchyControllerVersion + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.configmanagement.v1alpha.HierarchyControllerVersion} HierarchyControllerVersion + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + HierarchyControllerVersion.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a HierarchyControllerVersion message. + * @function verify + * @memberof google.cloud.gkehub.configmanagement.v1alpha.HierarchyControllerVersion + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + HierarchyControllerVersion.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.hnc != null && message.hasOwnProperty("hnc")) + if (!$util.isString(message.hnc)) + return "hnc: string expected"; + if (message.extension != null && message.hasOwnProperty("extension")) + if (!$util.isString(message.extension)) + return "extension: string expected"; + return null; + }; + + /** + * Creates a HierarchyControllerVersion message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.configmanagement.v1alpha.HierarchyControllerVersion + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.configmanagement.v1alpha.HierarchyControllerVersion} HierarchyControllerVersion + */ + HierarchyControllerVersion.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.configmanagement.v1alpha.HierarchyControllerVersion) + return object; + var message = new $root.google.cloud.gkehub.configmanagement.v1alpha.HierarchyControllerVersion(); + if (object.hnc != null) + message.hnc = String(object.hnc); + if (object.extension != null) + message.extension = String(object.extension); + return message; + }; + + /** + * Creates a plain object from a HierarchyControllerVersion message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.configmanagement.v1alpha.HierarchyControllerVersion + * @static + * @param {google.cloud.gkehub.configmanagement.v1alpha.HierarchyControllerVersion} message HierarchyControllerVersion + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + HierarchyControllerVersion.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.hnc = ""; + object.extension = ""; + } + if (message.hnc != null && message.hasOwnProperty("hnc")) + object.hnc = message.hnc; + if (message.extension != null && message.hasOwnProperty("extension")) + object.extension = message.extension; + return object; + }; + + /** + * Converts this HierarchyControllerVersion to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.configmanagement.v1alpha.HierarchyControllerVersion + * @instance + * @returns {Object.} JSON object + */ + HierarchyControllerVersion.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return HierarchyControllerVersion; + })(); + + v1alpha.HierarchyControllerState = (function() { + + /** + * Properties of a HierarchyControllerState. + * @memberof google.cloud.gkehub.configmanagement.v1alpha + * @interface IHierarchyControllerState + * @property {google.cloud.gkehub.configmanagement.v1alpha.IHierarchyControllerVersion|null} [version] HierarchyControllerState version + * @property {google.cloud.gkehub.configmanagement.v1alpha.IHierarchyControllerDeploymentState|null} [state] HierarchyControllerState state + */ + + /** + * Constructs a new HierarchyControllerState. + * @memberof google.cloud.gkehub.configmanagement.v1alpha + * @classdesc Represents a HierarchyControllerState. + * @implements IHierarchyControllerState + * @constructor + * @param {google.cloud.gkehub.configmanagement.v1alpha.IHierarchyControllerState=} [properties] Properties to set + */ + function HierarchyControllerState(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]]; + } + + /** + * HierarchyControllerState version. + * @member {google.cloud.gkehub.configmanagement.v1alpha.IHierarchyControllerVersion|null|undefined} version + * @memberof google.cloud.gkehub.configmanagement.v1alpha.HierarchyControllerState + * @instance + */ + HierarchyControllerState.prototype.version = null; + + /** + * HierarchyControllerState state. + * @member {google.cloud.gkehub.configmanagement.v1alpha.IHierarchyControllerDeploymentState|null|undefined} state + * @memberof google.cloud.gkehub.configmanagement.v1alpha.HierarchyControllerState + * @instance + */ + HierarchyControllerState.prototype.state = null; + + /** + * Creates a new HierarchyControllerState instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.configmanagement.v1alpha.HierarchyControllerState + * @static + * @param {google.cloud.gkehub.configmanagement.v1alpha.IHierarchyControllerState=} [properties] Properties to set + * @returns {google.cloud.gkehub.configmanagement.v1alpha.HierarchyControllerState} HierarchyControllerState instance + */ + HierarchyControllerState.create = function create(properties) { + return new HierarchyControllerState(properties); + }; + + /** + * Encodes the specified HierarchyControllerState message. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1alpha.HierarchyControllerState.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.configmanagement.v1alpha.HierarchyControllerState + * @static + * @param {google.cloud.gkehub.configmanagement.v1alpha.IHierarchyControllerState} message HierarchyControllerState message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + HierarchyControllerState.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.version != null && Object.hasOwnProperty.call(message, "version")) + $root.google.cloud.gkehub.configmanagement.v1alpha.HierarchyControllerVersion.encode(message.version, writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim(); + if (message.state != null && Object.hasOwnProperty.call(message, "state")) + $root.google.cloud.gkehub.configmanagement.v1alpha.HierarchyControllerDeploymentState.encode(message.state, writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim(); + return writer; + }; + + /** + * Encodes the specified HierarchyControllerState message, length delimited. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1alpha.HierarchyControllerState.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.configmanagement.v1alpha.HierarchyControllerState + * @static + * @param {google.cloud.gkehub.configmanagement.v1alpha.IHierarchyControllerState} message HierarchyControllerState message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + HierarchyControllerState.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a HierarchyControllerState message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.configmanagement.v1alpha.HierarchyControllerState + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.configmanagement.v1alpha.HierarchyControllerState} HierarchyControllerState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + HierarchyControllerState.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.configmanagement.v1alpha.HierarchyControllerState(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.version = $root.google.cloud.gkehub.configmanagement.v1alpha.HierarchyControllerVersion.decode(reader, reader.uint32()); + break; + case 2: + message.state = $root.google.cloud.gkehub.configmanagement.v1alpha.HierarchyControllerDeploymentState.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a HierarchyControllerState message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.configmanagement.v1alpha.HierarchyControllerState + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.configmanagement.v1alpha.HierarchyControllerState} HierarchyControllerState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + HierarchyControllerState.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a HierarchyControllerState message. + * @function verify + * @memberof google.cloud.gkehub.configmanagement.v1alpha.HierarchyControllerState + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + HierarchyControllerState.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.version != null && message.hasOwnProperty("version")) { + var error = $root.google.cloud.gkehub.configmanagement.v1alpha.HierarchyControllerVersion.verify(message.version); + if (error) + return "version." + error; + } + if (message.state != null && message.hasOwnProperty("state")) { + var error = $root.google.cloud.gkehub.configmanagement.v1alpha.HierarchyControllerDeploymentState.verify(message.state); + if (error) + return "state." + error; + } + return null; + }; + + /** + * Creates a HierarchyControllerState message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.configmanagement.v1alpha.HierarchyControllerState + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.configmanagement.v1alpha.HierarchyControllerState} HierarchyControllerState + */ + HierarchyControllerState.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.configmanagement.v1alpha.HierarchyControllerState) + return object; + var message = new $root.google.cloud.gkehub.configmanagement.v1alpha.HierarchyControllerState(); + if (object.version != null) { + if (typeof object.version !== "object") + throw TypeError(".google.cloud.gkehub.configmanagement.v1alpha.HierarchyControllerState.version: object expected"); + message.version = $root.google.cloud.gkehub.configmanagement.v1alpha.HierarchyControllerVersion.fromObject(object.version); + } + if (object.state != null) { + if (typeof object.state !== "object") + throw TypeError(".google.cloud.gkehub.configmanagement.v1alpha.HierarchyControllerState.state: object expected"); + message.state = $root.google.cloud.gkehub.configmanagement.v1alpha.HierarchyControllerDeploymentState.fromObject(object.state); + } + return message; + }; + + /** + * Creates a plain object from a HierarchyControllerState message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.configmanagement.v1alpha.HierarchyControllerState + * @static + * @param {google.cloud.gkehub.configmanagement.v1alpha.HierarchyControllerState} message HierarchyControllerState + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + HierarchyControllerState.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.version = null; + object.state = null; + } + if (message.version != null && message.hasOwnProperty("version")) + object.version = $root.google.cloud.gkehub.configmanagement.v1alpha.HierarchyControllerVersion.toObject(message.version, options); + if (message.state != null && message.hasOwnProperty("state")) + object.state = $root.google.cloud.gkehub.configmanagement.v1alpha.HierarchyControllerDeploymentState.toObject(message.state, options); + return object; + }; + + /** + * Converts this HierarchyControllerState to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.configmanagement.v1alpha.HierarchyControllerState + * @instance + * @returns {Object.} JSON object + */ + HierarchyControllerState.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return HierarchyControllerState; + })(); + + v1alpha.OperatorState = (function() { + + /** + * Properties of an OperatorState. + * @memberof google.cloud.gkehub.configmanagement.v1alpha + * @interface IOperatorState + * @property {string|null} [version] OperatorState version + * @property {google.cloud.gkehub.configmanagement.v1alpha.DeploymentState|null} [deploymentState] OperatorState deploymentState + * @property {Array.|null} [errors] OperatorState errors + */ + + /** + * Constructs a new OperatorState. + * @memberof google.cloud.gkehub.configmanagement.v1alpha + * @classdesc Represents an OperatorState. + * @implements IOperatorState + * @constructor + * @param {google.cloud.gkehub.configmanagement.v1alpha.IOperatorState=} [properties] Properties to set + */ + function OperatorState(properties) { + this.errors = []; + 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]]; + } + + /** + * OperatorState version. + * @member {string} version + * @memberof google.cloud.gkehub.configmanagement.v1alpha.OperatorState + * @instance + */ + OperatorState.prototype.version = ""; + + /** + * OperatorState deploymentState. + * @member {google.cloud.gkehub.configmanagement.v1alpha.DeploymentState} deploymentState + * @memberof google.cloud.gkehub.configmanagement.v1alpha.OperatorState + * @instance + */ + OperatorState.prototype.deploymentState = 0; + + /** + * OperatorState errors. + * @member {Array.} errors + * @memberof google.cloud.gkehub.configmanagement.v1alpha.OperatorState + * @instance + */ + OperatorState.prototype.errors = $util.emptyArray; + + /** + * Creates a new OperatorState instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.configmanagement.v1alpha.OperatorState + * @static + * @param {google.cloud.gkehub.configmanagement.v1alpha.IOperatorState=} [properties] Properties to set + * @returns {google.cloud.gkehub.configmanagement.v1alpha.OperatorState} OperatorState instance + */ + OperatorState.create = function create(properties) { + return new OperatorState(properties); + }; + + /** + * Encodes the specified OperatorState message. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1alpha.OperatorState.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.configmanagement.v1alpha.OperatorState + * @static + * @param {google.cloud.gkehub.configmanagement.v1alpha.IOperatorState} message OperatorState message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + OperatorState.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.version != null && Object.hasOwnProperty.call(message, "version")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.version); + if (message.deploymentState != null && Object.hasOwnProperty.call(message, "deploymentState")) + writer.uint32(/* id 2, wireType 0 =*/16).int32(message.deploymentState); + if (message.errors != null && message.errors.length) + for (var i = 0; i < message.errors.length; ++i) + $root.google.cloud.gkehub.configmanagement.v1alpha.InstallError.encode(message.errors[i], writer.uint32(/* id 3, wireType 2 =*/26).fork()).ldelim(); + return writer; + }; + + /** + * Encodes the specified OperatorState message, length delimited. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1alpha.OperatorState.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.configmanagement.v1alpha.OperatorState + * @static + * @param {google.cloud.gkehub.configmanagement.v1alpha.IOperatorState} message OperatorState message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + OperatorState.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes an OperatorState message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.configmanagement.v1alpha.OperatorState + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.configmanagement.v1alpha.OperatorState} OperatorState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + OperatorState.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.configmanagement.v1alpha.OperatorState(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.version = reader.string(); + break; + case 2: + message.deploymentState = reader.int32(); + break; + case 3: + if (!(message.errors && message.errors.length)) + message.errors = []; + message.errors.push($root.google.cloud.gkehub.configmanagement.v1alpha.InstallError.decode(reader, reader.uint32())); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes an OperatorState message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.configmanagement.v1alpha.OperatorState + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.configmanagement.v1alpha.OperatorState} OperatorState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + OperatorState.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies an OperatorState message. + * @function verify + * @memberof google.cloud.gkehub.configmanagement.v1alpha.OperatorState + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + OperatorState.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.version != null && message.hasOwnProperty("version")) + if (!$util.isString(message.version)) + return "version: string expected"; + if (message.deploymentState != null && message.hasOwnProperty("deploymentState")) + switch (message.deploymentState) { + default: + return "deploymentState: enum value expected"; + case 0: + case 1: + case 2: + case 3: + break; + } + if (message.errors != null && message.hasOwnProperty("errors")) { + if (!Array.isArray(message.errors)) + return "errors: array expected"; + for (var i = 0; i < message.errors.length; ++i) { + var error = $root.google.cloud.gkehub.configmanagement.v1alpha.InstallError.verify(message.errors[i]); + if (error) + return "errors." + error; + } + } + return null; + }; + + /** + * Creates an OperatorState message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.configmanagement.v1alpha.OperatorState + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.configmanagement.v1alpha.OperatorState} OperatorState + */ + OperatorState.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.configmanagement.v1alpha.OperatorState) + return object; + var message = new $root.google.cloud.gkehub.configmanagement.v1alpha.OperatorState(); + if (object.version != null) + message.version = String(object.version); + switch (object.deploymentState) { + case "DEPLOYMENT_STATE_UNSPECIFIED": + case 0: + message.deploymentState = 0; + break; + case "NOT_INSTALLED": + case 1: + message.deploymentState = 1; + break; + case "INSTALLED": + case 2: + message.deploymentState = 2; + break; + case "ERROR": + case 3: + message.deploymentState = 3; + break; + } + if (object.errors) { + if (!Array.isArray(object.errors)) + throw TypeError(".google.cloud.gkehub.configmanagement.v1alpha.OperatorState.errors: array expected"); + message.errors = []; + for (var i = 0; i < object.errors.length; ++i) { + if (typeof object.errors[i] !== "object") + throw TypeError(".google.cloud.gkehub.configmanagement.v1alpha.OperatorState.errors: object expected"); + message.errors[i] = $root.google.cloud.gkehub.configmanagement.v1alpha.InstallError.fromObject(object.errors[i]); + } + } + return message; + }; + + /** + * Creates a plain object from an OperatorState message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.configmanagement.v1alpha.OperatorState + * @static + * @param {google.cloud.gkehub.configmanagement.v1alpha.OperatorState} message OperatorState + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + OperatorState.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.arrays || options.defaults) + object.errors = []; + if (options.defaults) { + object.version = ""; + object.deploymentState = options.enums === String ? "DEPLOYMENT_STATE_UNSPECIFIED" : 0; + } + if (message.version != null && message.hasOwnProperty("version")) + object.version = message.version; + if (message.deploymentState != null && message.hasOwnProperty("deploymentState")) + object.deploymentState = options.enums === String ? $root.google.cloud.gkehub.configmanagement.v1alpha.DeploymentState[message.deploymentState] : message.deploymentState; + if (message.errors && message.errors.length) { + object.errors = []; + for (var j = 0; j < message.errors.length; ++j) + object.errors[j] = $root.google.cloud.gkehub.configmanagement.v1alpha.InstallError.toObject(message.errors[j], options); + } + return object; + }; + + /** + * Converts this OperatorState to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.configmanagement.v1alpha.OperatorState + * @instance + * @returns {Object.} JSON object + */ + OperatorState.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return OperatorState; + })(); + + v1alpha.InstallError = (function() { + + /** + * Properties of an InstallError. + * @memberof google.cloud.gkehub.configmanagement.v1alpha + * @interface IInstallError + * @property {string|null} [errorMessage] InstallError errorMessage + */ + + /** + * Constructs a new InstallError. + * @memberof google.cloud.gkehub.configmanagement.v1alpha + * @classdesc Represents an InstallError. + * @implements IInstallError + * @constructor + * @param {google.cloud.gkehub.configmanagement.v1alpha.IInstallError=} [properties] Properties to set + */ + function InstallError(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]]; + } + + /** + * InstallError errorMessage. + * @member {string} errorMessage + * @memberof google.cloud.gkehub.configmanagement.v1alpha.InstallError + * @instance + */ + InstallError.prototype.errorMessage = ""; + + /** + * Creates a new InstallError instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.configmanagement.v1alpha.InstallError + * @static + * @param {google.cloud.gkehub.configmanagement.v1alpha.IInstallError=} [properties] Properties to set + * @returns {google.cloud.gkehub.configmanagement.v1alpha.InstallError} InstallError instance + */ + InstallError.create = function create(properties) { + return new InstallError(properties); + }; + + /** + * Encodes the specified InstallError message. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1alpha.InstallError.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.configmanagement.v1alpha.InstallError + * @static + * @param {google.cloud.gkehub.configmanagement.v1alpha.IInstallError} message InstallError message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + InstallError.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.errorMessage != null && Object.hasOwnProperty.call(message, "errorMessage")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.errorMessage); + return writer; + }; + + /** + * Encodes the specified InstallError message, length delimited. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1alpha.InstallError.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.configmanagement.v1alpha.InstallError + * @static + * @param {google.cloud.gkehub.configmanagement.v1alpha.IInstallError} message InstallError message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + InstallError.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes an InstallError message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.configmanagement.v1alpha.InstallError + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.configmanagement.v1alpha.InstallError} InstallError + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + InstallError.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.configmanagement.v1alpha.InstallError(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.errorMessage = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes an InstallError message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.configmanagement.v1alpha.InstallError + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.configmanagement.v1alpha.InstallError} InstallError + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + InstallError.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies an InstallError message. + * @function verify + * @memberof google.cloud.gkehub.configmanagement.v1alpha.InstallError + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + InstallError.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.errorMessage != null && message.hasOwnProperty("errorMessage")) + if (!$util.isString(message.errorMessage)) + return "errorMessage: string expected"; + return null; + }; + + /** + * Creates an InstallError message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.configmanagement.v1alpha.InstallError + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.configmanagement.v1alpha.InstallError} InstallError + */ + InstallError.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.configmanagement.v1alpha.InstallError) + return object; + var message = new $root.google.cloud.gkehub.configmanagement.v1alpha.InstallError(); + if (object.errorMessage != null) + message.errorMessage = String(object.errorMessage); + return message; + }; + + /** + * Creates a plain object from an InstallError message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.configmanagement.v1alpha.InstallError + * @static + * @param {google.cloud.gkehub.configmanagement.v1alpha.InstallError} message InstallError + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + InstallError.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) + object.errorMessage = ""; + if (message.errorMessage != null && message.hasOwnProperty("errorMessage")) + object.errorMessage = message.errorMessage; + return object; + }; + + /** + * Converts this InstallError to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.configmanagement.v1alpha.InstallError + * @instance + * @returns {Object.} JSON object + */ + InstallError.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return InstallError; + })(); + + v1alpha.ConfigSyncState = (function() { + + /** + * Properties of a ConfigSyncState. + * @memberof google.cloud.gkehub.configmanagement.v1alpha + * @interface IConfigSyncState + * @property {google.cloud.gkehub.configmanagement.v1alpha.IConfigSyncVersion|null} [version] ConfigSyncState version + * @property {google.cloud.gkehub.configmanagement.v1alpha.IConfigSyncDeploymentState|null} [deploymentState] ConfigSyncState deploymentState + * @property {google.cloud.gkehub.configmanagement.v1alpha.ISyncState|null} [syncState] ConfigSyncState syncState + */ + + /** + * Constructs a new ConfigSyncState. + * @memberof google.cloud.gkehub.configmanagement.v1alpha + * @classdesc Represents a ConfigSyncState. + * @implements IConfigSyncState + * @constructor + * @param {google.cloud.gkehub.configmanagement.v1alpha.IConfigSyncState=} [properties] Properties to set + */ + function ConfigSyncState(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]]; + } + + /** + * ConfigSyncState version. + * @member {google.cloud.gkehub.configmanagement.v1alpha.IConfigSyncVersion|null|undefined} version + * @memberof google.cloud.gkehub.configmanagement.v1alpha.ConfigSyncState + * @instance + */ + ConfigSyncState.prototype.version = null; + + /** + * ConfigSyncState deploymentState. + * @member {google.cloud.gkehub.configmanagement.v1alpha.IConfigSyncDeploymentState|null|undefined} deploymentState + * @memberof google.cloud.gkehub.configmanagement.v1alpha.ConfigSyncState + * @instance + */ + ConfigSyncState.prototype.deploymentState = null; + + /** + * ConfigSyncState syncState. + * @member {google.cloud.gkehub.configmanagement.v1alpha.ISyncState|null|undefined} syncState + * @memberof google.cloud.gkehub.configmanagement.v1alpha.ConfigSyncState + * @instance + */ + ConfigSyncState.prototype.syncState = null; + + /** + * Creates a new ConfigSyncState instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.configmanagement.v1alpha.ConfigSyncState + * @static + * @param {google.cloud.gkehub.configmanagement.v1alpha.IConfigSyncState=} [properties] Properties to set + * @returns {google.cloud.gkehub.configmanagement.v1alpha.ConfigSyncState} ConfigSyncState instance + */ + ConfigSyncState.create = function create(properties) { + return new ConfigSyncState(properties); + }; + + /** + * Encodes the specified ConfigSyncState message. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1alpha.ConfigSyncState.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.configmanagement.v1alpha.ConfigSyncState + * @static + * @param {google.cloud.gkehub.configmanagement.v1alpha.IConfigSyncState} message ConfigSyncState message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + ConfigSyncState.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.version != null && Object.hasOwnProperty.call(message, "version")) + $root.google.cloud.gkehub.configmanagement.v1alpha.ConfigSyncVersion.encode(message.version, writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim(); + if (message.deploymentState != null && Object.hasOwnProperty.call(message, "deploymentState")) + $root.google.cloud.gkehub.configmanagement.v1alpha.ConfigSyncDeploymentState.encode(message.deploymentState, writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim(); + if (message.syncState != null && Object.hasOwnProperty.call(message, "syncState")) + $root.google.cloud.gkehub.configmanagement.v1alpha.SyncState.encode(message.syncState, writer.uint32(/* id 3, wireType 2 =*/26).fork()).ldelim(); + return writer; + }; + + /** + * Encodes the specified ConfigSyncState message, length delimited. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1alpha.ConfigSyncState.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.configmanagement.v1alpha.ConfigSyncState + * @static + * @param {google.cloud.gkehub.configmanagement.v1alpha.IConfigSyncState} message ConfigSyncState message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + ConfigSyncState.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a ConfigSyncState message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.configmanagement.v1alpha.ConfigSyncState + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.configmanagement.v1alpha.ConfigSyncState} ConfigSyncState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + ConfigSyncState.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.configmanagement.v1alpha.ConfigSyncState(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.version = $root.google.cloud.gkehub.configmanagement.v1alpha.ConfigSyncVersion.decode(reader, reader.uint32()); + break; + case 2: + message.deploymentState = $root.google.cloud.gkehub.configmanagement.v1alpha.ConfigSyncDeploymentState.decode(reader, reader.uint32()); + break; + case 3: + message.syncState = $root.google.cloud.gkehub.configmanagement.v1alpha.SyncState.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a ConfigSyncState message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.configmanagement.v1alpha.ConfigSyncState + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.configmanagement.v1alpha.ConfigSyncState} ConfigSyncState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + ConfigSyncState.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a ConfigSyncState message. + * @function verify + * @memberof google.cloud.gkehub.configmanagement.v1alpha.ConfigSyncState + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + ConfigSyncState.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.version != null && message.hasOwnProperty("version")) { + var error = $root.google.cloud.gkehub.configmanagement.v1alpha.ConfigSyncVersion.verify(message.version); + if (error) + return "version." + error; + } + if (message.deploymentState != null && message.hasOwnProperty("deploymentState")) { + var error = $root.google.cloud.gkehub.configmanagement.v1alpha.ConfigSyncDeploymentState.verify(message.deploymentState); + if (error) + return "deploymentState." + error; + } + if (message.syncState != null && message.hasOwnProperty("syncState")) { + var error = $root.google.cloud.gkehub.configmanagement.v1alpha.SyncState.verify(message.syncState); + if (error) + return "syncState." + error; + } + return null; + }; + + /** + * Creates a ConfigSyncState message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.configmanagement.v1alpha.ConfigSyncState + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.configmanagement.v1alpha.ConfigSyncState} ConfigSyncState + */ + ConfigSyncState.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.configmanagement.v1alpha.ConfigSyncState) + return object; + var message = new $root.google.cloud.gkehub.configmanagement.v1alpha.ConfigSyncState(); + if (object.version != null) { + if (typeof object.version !== "object") + throw TypeError(".google.cloud.gkehub.configmanagement.v1alpha.ConfigSyncState.version: object expected"); + message.version = $root.google.cloud.gkehub.configmanagement.v1alpha.ConfigSyncVersion.fromObject(object.version); + } + if (object.deploymentState != null) { + if (typeof object.deploymentState !== "object") + throw TypeError(".google.cloud.gkehub.configmanagement.v1alpha.ConfigSyncState.deploymentState: object expected"); + message.deploymentState = $root.google.cloud.gkehub.configmanagement.v1alpha.ConfigSyncDeploymentState.fromObject(object.deploymentState); + } + if (object.syncState != null) { + if (typeof object.syncState !== "object") + throw TypeError(".google.cloud.gkehub.configmanagement.v1alpha.ConfigSyncState.syncState: object expected"); + message.syncState = $root.google.cloud.gkehub.configmanagement.v1alpha.SyncState.fromObject(object.syncState); + } + return message; + }; + + /** + * Creates a plain object from a ConfigSyncState message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.configmanagement.v1alpha.ConfigSyncState + * @static + * @param {google.cloud.gkehub.configmanagement.v1alpha.ConfigSyncState} message ConfigSyncState + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + ConfigSyncState.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.version = null; + object.deploymentState = null; + object.syncState = null; + } + if (message.version != null && message.hasOwnProperty("version")) + object.version = $root.google.cloud.gkehub.configmanagement.v1alpha.ConfigSyncVersion.toObject(message.version, options); + if (message.deploymentState != null && message.hasOwnProperty("deploymentState")) + object.deploymentState = $root.google.cloud.gkehub.configmanagement.v1alpha.ConfigSyncDeploymentState.toObject(message.deploymentState, options); + if (message.syncState != null && message.hasOwnProperty("syncState")) + object.syncState = $root.google.cloud.gkehub.configmanagement.v1alpha.SyncState.toObject(message.syncState, options); + return object; + }; + + /** + * Converts this ConfigSyncState to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.configmanagement.v1alpha.ConfigSyncState + * @instance + * @returns {Object.} JSON object + */ + ConfigSyncState.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return ConfigSyncState; + })(); + + v1alpha.ConfigSyncVersion = (function() { + + /** + * Properties of a ConfigSyncVersion. + * @memberof google.cloud.gkehub.configmanagement.v1alpha + * @interface IConfigSyncVersion + * @property {string|null} [importer] ConfigSyncVersion importer + * @property {string|null} [syncer] ConfigSyncVersion syncer + * @property {string|null} [gitSync] ConfigSyncVersion gitSync + * @property {string|null} [monitor] ConfigSyncVersion monitor + * @property {string|null} [reconcilerManager] ConfigSyncVersion reconcilerManager + * @property {string|null} [rootReconciler] ConfigSyncVersion rootReconciler + */ + + /** + * Constructs a new ConfigSyncVersion. + * @memberof google.cloud.gkehub.configmanagement.v1alpha + * @classdesc Represents a ConfigSyncVersion. + * @implements IConfigSyncVersion + * @constructor + * @param {google.cloud.gkehub.configmanagement.v1alpha.IConfigSyncVersion=} [properties] Properties to set + */ + function ConfigSyncVersion(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]]; + } + + /** + * ConfigSyncVersion importer. + * @member {string} importer + * @memberof google.cloud.gkehub.configmanagement.v1alpha.ConfigSyncVersion + * @instance + */ + ConfigSyncVersion.prototype.importer = ""; + + /** + * ConfigSyncVersion syncer. + * @member {string} syncer + * @memberof google.cloud.gkehub.configmanagement.v1alpha.ConfigSyncVersion + * @instance + */ + ConfigSyncVersion.prototype.syncer = ""; + + /** + * ConfigSyncVersion gitSync. + * @member {string} gitSync + * @memberof google.cloud.gkehub.configmanagement.v1alpha.ConfigSyncVersion + * @instance + */ + ConfigSyncVersion.prototype.gitSync = ""; + + /** + * ConfigSyncVersion monitor. + * @member {string} monitor + * @memberof google.cloud.gkehub.configmanagement.v1alpha.ConfigSyncVersion + * @instance + */ + ConfigSyncVersion.prototype.monitor = ""; + + /** + * ConfigSyncVersion reconcilerManager. + * @member {string} reconcilerManager + * @memberof google.cloud.gkehub.configmanagement.v1alpha.ConfigSyncVersion + * @instance + */ + ConfigSyncVersion.prototype.reconcilerManager = ""; + + /** + * ConfigSyncVersion rootReconciler. + * @member {string} rootReconciler + * @memberof google.cloud.gkehub.configmanagement.v1alpha.ConfigSyncVersion + * @instance + */ + ConfigSyncVersion.prototype.rootReconciler = ""; + + /** + * Creates a new ConfigSyncVersion instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.configmanagement.v1alpha.ConfigSyncVersion + * @static + * @param {google.cloud.gkehub.configmanagement.v1alpha.IConfigSyncVersion=} [properties] Properties to set + * @returns {google.cloud.gkehub.configmanagement.v1alpha.ConfigSyncVersion} ConfigSyncVersion instance + */ + ConfigSyncVersion.create = function create(properties) { + return new ConfigSyncVersion(properties); + }; + + /** + * Encodes the specified ConfigSyncVersion message. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1alpha.ConfigSyncVersion.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.configmanagement.v1alpha.ConfigSyncVersion + * @static + * @param {google.cloud.gkehub.configmanagement.v1alpha.IConfigSyncVersion} message ConfigSyncVersion message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + ConfigSyncVersion.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.importer != null && Object.hasOwnProperty.call(message, "importer")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.importer); + if (message.syncer != null && Object.hasOwnProperty.call(message, "syncer")) + writer.uint32(/* id 2, wireType 2 =*/18).string(message.syncer); + if (message.gitSync != null && Object.hasOwnProperty.call(message, "gitSync")) + writer.uint32(/* id 3, wireType 2 =*/26).string(message.gitSync); + if (message.monitor != null && Object.hasOwnProperty.call(message, "monitor")) + writer.uint32(/* id 4, wireType 2 =*/34).string(message.monitor); + if (message.reconcilerManager != null && Object.hasOwnProperty.call(message, "reconcilerManager")) + writer.uint32(/* id 5, wireType 2 =*/42).string(message.reconcilerManager); + if (message.rootReconciler != null && Object.hasOwnProperty.call(message, "rootReconciler")) + writer.uint32(/* id 6, wireType 2 =*/50).string(message.rootReconciler); + return writer; + }; + + /** + * Encodes the specified ConfigSyncVersion message, length delimited. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1alpha.ConfigSyncVersion.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.configmanagement.v1alpha.ConfigSyncVersion + * @static + * @param {google.cloud.gkehub.configmanagement.v1alpha.IConfigSyncVersion} message ConfigSyncVersion message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + ConfigSyncVersion.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a ConfigSyncVersion message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.configmanagement.v1alpha.ConfigSyncVersion + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.configmanagement.v1alpha.ConfigSyncVersion} ConfigSyncVersion + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + ConfigSyncVersion.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.configmanagement.v1alpha.ConfigSyncVersion(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.importer = reader.string(); + break; + case 2: + message.syncer = reader.string(); + break; + case 3: + message.gitSync = reader.string(); + break; + case 4: + message.monitor = reader.string(); + break; + case 5: + message.reconcilerManager = reader.string(); + break; + case 6: + message.rootReconciler = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a ConfigSyncVersion message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.configmanagement.v1alpha.ConfigSyncVersion + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.configmanagement.v1alpha.ConfigSyncVersion} ConfigSyncVersion + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + ConfigSyncVersion.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a ConfigSyncVersion message. + * @function verify + * @memberof google.cloud.gkehub.configmanagement.v1alpha.ConfigSyncVersion + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + ConfigSyncVersion.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.importer != null && message.hasOwnProperty("importer")) + if (!$util.isString(message.importer)) + return "importer: string expected"; + if (message.syncer != null && message.hasOwnProperty("syncer")) + if (!$util.isString(message.syncer)) + return "syncer: string expected"; + if (message.gitSync != null && message.hasOwnProperty("gitSync")) + if (!$util.isString(message.gitSync)) + return "gitSync: string expected"; + if (message.monitor != null && message.hasOwnProperty("monitor")) + if (!$util.isString(message.monitor)) + return "monitor: string expected"; + if (message.reconcilerManager != null && message.hasOwnProperty("reconcilerManager")) + if (!$util.isString(message.reconcilerManager)) + return "reconcilerManager: string expected"; + if (message.rootReconciler != null && message.hasOwnProperty("rootReconciler")) + if (!$util.isString(message.rootReconciler)) + return "rootReconciler: string expected"; + return null; + }; + + /** + * Creates a ConfigSyncVersion message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.configmanagement.v1alpha.ConfigSyncVersion + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.configmanagement.v1alpha.ConfigSyncVersion} ConfigSyncVersion + */ + ConfigSyncVersion.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.configmanagement.v1alpha.ConfigSyncVersion) + return object; + var message = new $root.google.cloud.gkehub.configmanagement.v1alpha.ConfigSyncVersion(); + if (object.importer != null) + message.importer = String(object.importer); + if (object.syncer != null) + message.syncer = String(object.syncer); + if (object.gitSync != null) + message.gitSync = String(object.gitSync); + if (object.monitor != null) + message.monitor = String(object.monitor); + if (object.reconcilerManager != null) + message.reconcilerManager = String(object.reconcilerManager); + if (object.rootReconciler != null) + message.rootReconciler = String(object.rootReconciler); + return message; + }; + + /** + * Creates a plain object from a ConfigSyncVersion message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.configmanagement.v1alpha.ConfigSyncVersion + * @static + * @param {google.cloud.gkehub.configmanagement.v1alpha.ConfigSyncVersion} message ConfigSyncVersion + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + ConfigSyncVersion.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.importer = ""; + object.syncer = ""; + object.gitSync = ""; + object.monitor = ""; + object.reconcilerManager = ""; + object.rootReconciler = ""; + } + if (message.importer != null && message.hasOwnProperty("importer")) + object.importer = message.importer; + if (message.syncer != null && message.hasOwnProperty("syncer")) + object.syncer = message.syncer; + if (message.gitSync != null && message.hasOwnProperty("gitSync")) + object.gitSync = message.gitSync; + if (message.monitor != null && message.hasOwnProperty("monitor")) + object.monitor = message.monitor; + if (message.reconcilerManager != null && message.hasOwnProperty("reconcilerManager")) + object.reconcilerManager = message.reconcilerManager; + if (message.rootReconciler != null && message.hasOwnProperty("rootReconciler")) + object.rootReconciler = message.rootReconciler; + return object; + }; + + /** + * Converts this ConfigSyncVersion to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.configmanagement.v1alpha.ConfigSyncVersion + * @instance + * @returns {Object.} JSON object + */ + ConfigSyncVersion.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return ConfigSyncVersion; + })(); + + v1alpha.ConfigSyncDeploymentState = (function() { + + /** + * Properties of a ConfigSyncDeploymentState. + * @memberof google.cloud.gkehub.configmanagement.v1alpha + * @interface IConfigSyncDeploymentState + * @property {google.cloud.gkehub.configmanagement.v1alpha.DeploymentState|null} [importer] ConfigSyncDeploymentState importer + * @property {google.cloud.gkehub.configmanagement.v1alpha.DeploymentState|null} [syncer] ConfigSyncDeploymentState syncer + * @property {google.cloud.gkehub.configmanagement.v1alpha.DeploymentState|null} [gitSync] ConfigSyncDeploymentState gitSync + * @property {google.cloud.gkehub.configmanagement.v1alpha.DeploymentState|null} [monitor] ConfigSyncDeploymentState monitor + * @property {google.cloud.gkehub.configmanagement.v1alpha.DeploymentState|null} [reconcilerManager] ConfigSyncDeploymentState reconcilerManager + * @property {google.cloud.gkehub.configmanagement.v1alpha.DeploymentState|null} [rootReconciler] ConfigSyncDeploymentState rootReconciler + */ + + /** + * Constructs a new ConfigSyncDeploymentState. + * @memberof google.cloud.gkehub.configmanagement.v1alpha + * @classdesc Represents a ConfigSyncDeploymentState. + * @implements IConfigSyncDeploymentState + * @constructor + * @param {google.cloud.gkehub.configmanagement.v1alpha.IConfigSyncDeploymentState=} [properties] Properties to set + */ + function ConfigSyncDeploymentState(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]]; + } + + /** + * ConfigSyncDeploymentState importer. + * @member {google.cloud.gkehub.configmanagement.v1alpha.DeploymentState} importer + * @memberof google.cloud.gkehub.configmanagement.v1alpha.ConfigSyncDeploymentState + * @instance + */ + ConfigSyncDeploymentState.prototype.importer = 0; + + /** + * ConfigSyncDeploymentState syncer. + * @member {google.cloud.gkehub.configmanagement.v1alpha.DeploymentState} syncer + * @memberof google.cloud.gkehub.configmanagement.v1alpha.ConfigSyncDeploymentState + * @instance + */ + ConfigSyncDeploymentState.prototype.syncer = 0; + + /** + * ConfigSyncDeploymentState gitSync. + * @member {google.cloud.gkehub.configmanagement.v1alpha.DeploymentState} gitSync + * @memberof google.cloud.gkehub.configmanagement.v1alpha.ConfigSyncDeploymentState + * @instance + */ + ConfigSyncDeploymentState.prototype.gitSync = 0; + + /** + * ConfigSyncDeploymentState monitor. + * @member {google.cloud.gkehub.configmanagement.v1alpha.DeploymentState} monitor + * @memberof google.cloud.gkehub.configmanagement.v1alpha.ConfigSyncDeploymentState + * @instance + */ + ConfigSyncDeploymentState.prototype.monitor = 0; + + /** + * ConfigSyncDeploymentState reconcilerManager. + * @member {google.cloud.gkehub.configmanagement.v1alpha.DeploymentState} reconcilerManager + * @memberof google.cloud.gkehub.configmanagement.v1alpha.ConfigSyncDeploymentState + * @instance + */ + ConfigSyncDeploymentState.prototype.reconcilerManager = 0; + + /** + * ConfigSyncDeploymentState rootReconciler. + * @member {google.cloud.gkehub.configmanagement.v1alpha.DeploymentState} rootReconciler + * @memberof google.cloud.gkehub.configmanagement.v1alpha.ConfigSyncDeploymentState + * @instance + */ + ConfigSyncDeploymentState.prototype.rootReconciler = 0; + + /** + * Creates a new ConfigSyncDeploymentState instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.configmanagement.v1alpha.ConfigSyncDeploymentState + * @static + * @param {google.cloud.gkehub.configmanagement.v1alpha.IConfigSyncDeploymentState=} [properties] Properties to set + * @returns {google.cloud.gkehub.configmanagement.v1alpha.ConfigSyncDeploymentState} ConfigSyncDeploymentState instance + */ + ConfigSyncDeploymentState.create = function create(properties) { + return new ConfigSyncDeploymentState(properties); + }; + + /** + * Encodes the specified ConfigSyncDeploymentState message. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1alpha.ConfigSyncDeploymentState.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.configmanagement.v1alpha.ConfigSyncDeploymentState + * @static + * @param {google.cloud.gkehub.configmanagement.v1alpha.IConfigSyncDeploymentState} message ConfigSyncDeploymentState message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + ConfigSyncDeploymentState.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.importer != null && Object.hasOwnProperty.call(message, "importer")) + writer.uint32(/* id 1, wireType 0 =*/8).int32(message.importer); + if (message.syncer != null && Object.hasOwnProperty.call(message, "syncer")) + writer.uint32(/* id 2, wireType 0 =*/16).int32(message.syncer); + if (message.gitSync != null && Object.hasOwnProperty.call(message, "gitSync")) + writer.uint32(/* id 3, wireType 0 =*/24).int32(message.gitSync); + if (message.monitor != null && Object.hasOwnProperty.call(message, "monitor")) + writer.uint32(/* id 4, wireType 0 =*/32).int32(message.monitor); + if (message.reconcilerManager != null && Object.hasOwnProperty.call(message, "reconcilerManager")) + writer.uint32(/* id 5, wireType 0 =*/40).int32(message.reconcilerManager); + if (message.rootReconciler != null && Object.hasOwnProperty.call(message, "rootReconciler")) + writer.uint32(/* id 6, wireType 0 =*/48).int32(message.rootReconciler); + return writer; + }; + + /** + * Encodes the specified ConfigSyncDeploymentState message, length delimited. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1alpha.ConfigSyncDeploymentState.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.configmanagement.v1alpha.ConfigSyncDeploymentState + * @static + * @param {google.cloud.gkehub.configmanagement.v1alpha.IConfigSyncDeploymentState} message ConfigSyncDeploymentState message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + ConfigSyncDeploymentState.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a ConfigSyncDeploymentState message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.configmanagement.v1alpha.ConfigSyncDeploymentState + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.configmanagement.v1alpha.ConfigSyncDeploymentState} ConfigSyncDeploymentState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + ConfigSyncDeploymentState.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.configmanagement.v1alpha.ConfigSyncDeploymentState(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.importer = reader.int32(); + break; + case 2: + message.syncer = reader.int32(); + break; + case 3: + message.gitSync = reader.int32(); + break; + case 4: + message.monitor = reader.int32(); + break; + case 5: + message.reconcilerManager = reader.int32(); + break; + case 6: + message.rootReconciler = reader.int32(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a ConfigSyncDeploymentState message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.configmanagement.v1alpha.ConfigSyncDeploymentState + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.configmanagement.v1alpha.ConfigSyncDeploymentState} ConfigSyncDeploymentState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + ConfigSyncDeploymentState.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a ConfigSyncDeploymentState message. + * @function verify + * @memberof google.cloud.gkehub.configmanagement.v1alpha.ConfigSyncDeploymentState + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + ConfigSyncDeploymentState.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.importer != null && message.hasOwnProperty("importer")) + switch (message.importer) { + default: + return "importer: enum value expected"; + case 0: + case 1: + case 2: + case 3: + break; + } + if (message.syncer != null && message.hasOwnProperty("syncer")) + switch (message.syncer) { + default: + return "syncer: enum value expected"; + case 0: + case 1: + case 2: + case 3: + break; + } + if (message.gitSync != null && message.hasOwnProperty("gitSync")) + switch (message.gitSync) { + default: + return "gitSync: enum value expected"; + case 0: + case 1: + case 2: + case 3: + break; + } + if (message.monitor != null && message.hasOwnProperty("monitor")) + switch (message.monitor) { + default: + return "monitor: enum value expected"; + case 0: + case 1: + case 2: + case 3: + break; + } + if (message.reconcilerManager != null && message.hasOwnProperty("reconcilerManager")) + switch (message.reconcilerManager) { + default: + return "reconcilerManager: enum value expected"; + case 0: + case 1: + case 2: + case 3: + break; + } + if (message.rootReconciler != null && message.hasOwnProperty("rootReconciler")) + switch (message.rootReconciler) { + default: + return "rootReconciler: enum value expected"; + case 0: + case 1: + case 2: + case 3: + break; + } + return null; + }; + + /** + * Creates a ConfigSyncDeploymentState message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.configmanagement.v1alpha.ConfigSyncDeploymentState + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.configmanagement.v1alpha.ConfigSyncDeploymentState} ConfigSyncDeploymentState + */ + ConfigSyncDeploymentState.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.configmanagement.v1alpha.ConfigSyncDeploymentState) + return object; + var message = new $root.google.cloud.gkehub.configmanagement.v1alpha.ConfigSyncDeploymentState(); + switch (object.importer) { + case "DEPLOYMENT_STATE_UNSPECIFIED": + case 0: + message.importer = 0; + break; + case "NOT_INSTALLED": + case 1: + message.importer = 1; + break; + case "INSTALLED": + case 2: + message.importer = 2; + break; + case "ERROR": + case 3: + message.importer = 3; + break; + } + switch (object.syncer) { + case "DEPLOYMENT_STATE_UNSPECIFIED": + case 0: + message.syncer = 0; + break; + case "NOT_INSTALLED": + case 1: + message.syncer = 1; + break; + case "INSTALLED": + case 2: + message.syncer = 2; + break; + case "ERROR": + case 3: + message.syncer = 3; + break; + } + switch (object.gitSync) { + case "DEPLOYMENT_STATE_UNSPECIFIED": + case 0: + message.gitSync = 0; + break; + case "NOT_INSTALLED": + case 1: + message.gitSync = 1; + break; + case "INSTALLED": + case 2: + message.gitSync = 2; + break; + case "ERROR": + case 3: + message.gitSync = 3; + break; + } + switch (object.monitor) { + case "DEPLOYMENT_STATE_UNSPECIFIED": + case 0: + message.monitor = 0; + break; + case "NOT_INSTALLED": + case 1: + message.monitor = 1; + break; + case "INSTALLED": + case 2: + message.monitor = 2; + break; + case "ERROR": + case 3: + message.monitor = 3; + break; + } + switch (object.reconcilerManager) { + case "DEPLOYMENT_STATE_UNSPECIFIED": + case 0: + message.reconcilerManager = 0; + break; + case "NOT_INSTALLED": + case 1: + message.reconcilerManager = 1; + break; + case "INSTALLED": + case 2: + message.reconcilerManager = 2; + break; + case "ERROR": + case 3: + message.reconcilerManager = 3; + break; + } + switch (object.rootReconciler) { + case "DEPLOYMENT_STATE_UNSPECIFIED": + case 0: + message.rootReconciler = 0; + break; + case "NOT_INSTALLED": + case 1: + message.rootReconciler = 1; + break; + case "INSTALLED": + case 2: + message.rootReconciler = 2; + break; + case "ERROR": + case 3: + message.rootReconciler = 3; + break; + } + return message; + }; + + /** + * Creates a plain object from a ConfigSyncDeploymentState message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.configmanagement.v1alpha.ConfigSyncDeploymentState + * @static + * @param {google.cloud.gkehub.configmanagement.v1alpha.ConfigSyncDeploymentState} message ConfigSyncDeploymentState + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + ConfigSyncDeploymentState.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.importer = options.enums === String ? "DEPLOYMENT_STATE_UNSPECIFIED" : 0; + object.syncer = options.enums === String ? "DEPLOYMENT_STATE_UNSPECIFIED" : 0; + object.gitSync = options.enums === String ? "DEPLOYMENT_STATE_UNSPECIFIED" : 0; + object.monitor = options.enums === String ? "DEPLOYMENT_STATE_UNSPECIFIED" : 0; + object.reconcilerManager = options.enums === String ? "DEPLOYMENT_STATE_UNSPECIFIED" : 0; + object.rootReconciler = options.enums === String ? "DEPLOYMENT_STATE_UNSPECIFIED" : 0; + } + if (message.importer != null && message.hasOwnProperty("importer")) + object.importer = options.enums === String ? $root.google.cloud.gkehub.configmanagement.v1alpha.DeploymentState[message.importer] : message.importer; + if (message.syncer != null && message.hasOwnProperty("syncer")) + object.syncer = options.enums === String ? $root.google.cloud.gkehub.configmanagement.v1alpha.DeploymentState[message.syncer] : message.syncer; + if (message.gitSync != null && message.hasOwnProperty("gitSync")) + object.gitSync = options.enums === String ? $root.google.cloud.gkehub.configmanagement.v1alpha.DeploymentState[message.gitSync] : message.gitSync; + if (message.monitor != null && message.hasOwnProperty("monitor")) + object.monitor = options.enums === String ? $root.google.cloud.gkehub.configmanagement.v1alpha.DeploymentState[message.monitor] : message.monitor; + if (message.reconcilerManager != null && message.hasOwnProperty("reconcilerManager")) + object.reconcilerManager = options.enums === String ? $root.google.cloud.gkehub.configmanagement.v1alpha.DeploymentState[message.reconcilerManager] : message.reconcilerManager; + if (message.rootReconciler != null && message.hasOwnProperty("rootReconciler")) + object.rootReconciler = options.enums === String ? $root.google.cloud.gkehub.configmanagement.v1alpha.DeploymentState[message.rootReconciler] : message.rootReconciler; + return object; + }; + + /** + * Converts this ConfigSyncDeploymentState to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.configmanagement.v1alpha.ConfigSyncDeploymentState + * @instance + * @returns {Object.} JSON object + */ + ConfigSyncDeploymentState.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return ConfigSyncDeploymentState; + })(); + + v1alpha.SyncState = (function() { + + /** + * Properties of a SyncState. + * @memberof google.cloud.gkehub.configmanagement.v1alpha + * @interface ISyncState + * @property {string|null} [sourceToken] SyncState sourceToken + * @property {string|null} [importToken] SyncState importToken + * @property {string|null} [syncToken] SyncState syncToken + * @property {string|null} [lastSync] SyncState lastSync + * @property {google.protobuf.ITimestamp|null} [lastSyncTime] SyncState lastSyncTime + * @property {google.cloud.gkehub.configmanagement.v1alpha.SyncState.SyncCode|null} [code] SyncState code + * @property {Array.|null} [errors] SyncState errors + */ + + /** + * Constructs a new SyncState. + * @memberof google.cloud.gkehub.configmanagement.v1alpha + * @classdesc Represents a SyncState. + * @implements ISyncState + * @constructor + * @param {google.cloud.gkehub.configmanagement.v1alpha.ISyncState=} [properties] Properties to set + */ + function SyncState(properties) { + this.errors = []; + 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]]; + } + + /** + * SyncState sourceToken. + * @member {string} sourceToken + * @memberof google.cloud.gkehub.configmanagement.v1alpha.SyncState + * @instance + */ + SyncState.prototype.sourceToken = ""; + + /** + * SyncState importToken. + * @member {string} importToken + * @memberof google.cloud.gkehub.configmanagement.v1alpha.SyncState + * @instance + */ + SyncState.prototype.importToken = ""; + + /** + * SyncState syncToken. + * @member {string} syncToken + * @memberof google.cloud.gkehub.configmanagement.v1alpha.SyncState + * @instance + */ + SyncState.prototype.syncToken = ""; + + /** + * SyncState lastSync. + * @member {string} lastSync + * @memberof google.cloud.gkehub.configmanagement.v1alpha.SyncState + * @instance + */ + SyncState.prototype.lastSync = ""; + + /** + * SyncState lastSyncTime. + * @member {google.protobuf.ITimestamp|null|undefined} lastSyncTime + * @memberof google.cloud.gkehub.configmanagement.v1alpha.SyncState + * @instance + */ + SyncState.prototype.lastSyncTime = null; + + /** + * SyncState code. + * @member {google.cloud.gkehub.configmanagement.v1alpha.SyncState.SyncCode} code + * @memberof google.cloud.gkehub.configmanagement.v1alpha.SyncState + * @instance + */ + SyncState.prototype.code = 0; + + /** + * SyncState errors. + * @member {Array.} errors + * @memberof google.cloud.gkehub.configmanagement.v1alpha.SyncState + * @instance + */ + SyncState.prototype.errors = $util.emptyArray; + + /** + * Creates a new SyncState instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.configmanagement.v1alpha.SyncState + * @static + * @param {google.cloud.gkehub.configmanagement.v1alpha.ISyncState=} [properties] Properties to set + * @returns {google.cloud.gkehub.configmanagement.v1alpha.SyncState} SyncState instance + */ + SyncState.create = function create(properties) { + return new SyncState(properties); + }; + + /** + * Encodes the specified SyncState message. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1alpha.SyncState.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.configmanagement.v1alpha.SyncState + * @static + * @param {google.cloud.gkehub.configmanagement.v1alpha.ISyncState} message SyncState message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + SyncState.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.sourceToken != null && Object.hasOwnProperty.call(message, "sourceToken")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.sourceToken); + if (message.importToken != null && Object.hasOwnProperty.call(message, "importToken")) + writer.uint32(/* id 2, wireType 2 =*/18).string(message.importToken); + if (message.syncToken != null && Object.hasOwnProperty.call(message, "syncToken")) + writer.uint32(/* id 3, wireType 2 =*/26).string(message.syncToken); + if (message.lastSync != null && Object.hasOwnProperty.call(message, "lastSync")) + writer.uint32(/* id 4, wireType 2 =*/34).string(message.lastSync); + if (message.code != null && Object.hasOwnProperty.call(message, "code")) + writer.uint32(/* id 5, wireType 0 =*/40).int32(message.code); + if (message.errors != null && message.errors.length) + for (var i = 0; i < message.errors.length; ++i) + $root.google.cloud.gkehub.configmanagement.v1alpha.SyncError.encode(message.errors[i], writer.uint32(/* id 6, wireType 2 =*/50).fork()).ldelim(); + if (message.lastSyncTime != null && Object.hasOwnProperty.call(message, "lastSyncTime")) + $root.google.protobuf.Timestamp.encode(message.lastSyncTime, writer.uint32(/* id 7, wireType 2 =*/58).fork()).ldelim(); + return writer; + }; + + /** + * Encodes the specified SyncState message, length delimited. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1alpha.SyncState.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.configmanagement.v1alpha.SyncState + * @static + * @param {google.cloud.gkehub.configmanagement.v1alpha.ISyncState} message SyncState message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + SyncState.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a SyncState message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.configmanagement.v1alpha.SyncState + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.configmanagement.v1alpha.SyncState} SyncState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + SyncState.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.configmanagement.v1alpha.SyncState(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.sourceToken = reader.string(); + break; + case 2: + message.importToken = reader.string(); + break; + case 3: + message.syncToken = reader.string(); + break; + case 4: + message.lastSync = reader.string(); + break; + case 7: + message.lastSyncTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + break; + case 5: + message.code = reader.int32(); + break; + case 6: + if (!(message.errors && message.errors.length)) + message.errors = []; + message.errors.push($root.google.cloud.gkehub.configmanagement.v1alpha.SyncError.decode(reader, reader.uint32())); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a SyncState message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.configmanagement.v1alpha.SyncState + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.configmanagement.v1alpha.SyncState} SyncState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + SyncState.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a SyncState message. + * @function verify + * @memberof google.cloud.gkehub.configmanagement.v1alpha.SyncState + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + SyncState.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.sourceToken != null && message.hasOwnProperty("sourceToken")) + if (!$util.isString(message.sourceToken)) + return "sourceToken: string expected"; + if (message.importToken != null && message.hasOwnProperty("importToken")) + if (!$util.isString(message.importToken)) + return "importToken: string expected"; + if (message.syncToken != null && message.hasOwnProperty("syncToken")) + if (!$util.isString(message.syncToken)) + return "syncToken: string expected"; + if (message.lastSync != null && message.hasOwnProperty("lastSync")) + if (!$util.isString(message.lastSync)) + return "lastSync: string expected"; + if (message.lastSyncTime != null && message.hasOwnProperty("lastSyncTime")) { + var error = $root.google.protobuf.Timestamp.verify(message.lastSyncTime); + if (error) + return "lastSyncTime." + error; + } + if (message.code != null && message.hasOwnProperty("code")) + switch (message.code) { + default: + return "code: enum value expected"; + case 0: + case 1: + case 2: + case 3: + case 4: + case 5: + case 6: + case 7: + break; + } + if (message.errors != null && message.hasOwnProperty("errors")) { + if (!Array.isArray(message.errors)) + return "errors: array expected"; + for (var i = 0; i < message.errors.length; ++i) { + var error = $root.google.cloud.gkehub.configmanagement.v1alpha.SyncError.verify(message.errors[i]); + if (error) + return "errors." + error; + } + } + return null; + }; + + /** + * Creates a SyncState message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.configmanagement.v1alpha.SyncState + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.configmanagement.v1alpha.SyncState} SyncState + */ + SyncState.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.configmanagement.v1alpha.SyncState) + return object; + var message = new $root.google.cloud.gkehub.configmanagement.v1alpha.SyncState(); + if (object.sourceToken != null) + message.sourceToken = String(object.sourceToken); + if (object.importToken != null) + message.importToken = String(object.importToken); + if (object.syncToken != null) + message.syncToken = String(object.syncToken); + if (object.lastSync != null) + message.lastSync = String(object.lastSync); + if (object.lastSyncTime != null) { + if (typeof object.lastSyncTime !== "object") + throw TypeError(".google.cloud.gkehub.configmanagement.v1alpha.SyncState.lastSyncTime: object expected"); + message.lastSyncTime = $root.google.protobuf.Timestamp.fromObject(object.lastSyncTime); + } + switch (object.code) { + case "SYNC_CODE_UNSPECIFIED": + case 0: + message.code = 0; + break; + case "SYNCED": + case 1: + message.code = 1; + break; + case "PENDING": + case 2: + message.code = 2; + break; + case "ERROR": + case 3: + message.code = 3; + break; + case "NOT_CONFIGURED": + case 4: + message.code = 4; + break; + case "NOT_INSTALLED": + case 5: + message.code = 5; + break; + case "UNAUTHORIZED": + case 6: + message.code = 6; + break; + case "UNREACHABLE": + case 7: + message.code = 7; + break; + } + if (object.errors) { + if (!Array.isArray(object.errors)) + throw TypeError(".google.cloud.gkehub.configmanagement.v1alpha.SyncState.errors: array expected"); + message.errors = []; + for (var i = 0; i < object.errors.length; ++i) { + if (typeof object.errors[i] !== "object") + throw TypeError(".google.cloud.gkehub.configmanagement.v1alpha.SyncState.errors: object expected"); + message.errors[i] = $root.google.cloud.gkehub.configmanagement.v1alpha.SyncError.fromObject(object.errors[i]); + } + } + return message; + }; + + /** + * Creates a plain object from a SyncState message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.configmanagement.v1alpha.SyncState + * @static + * @param {google.cloud.gkehub.configmanagement.v1alpha.SyncState} message SyncState + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + SyncState.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.arrays || options.defaults) + object.errors = []; + if (options.defaults) { + object.sourceToken = ""; + object.importToken = ""; + object.syncToken = ""; + object.lastSync = ""; + object.code = options.enums === String ? "SYNC_CODE_UNSPECIFIED" : 0; + object.lastSyncTime = null; + } + if (message.sourceToken != null && message.hasOwnProperty("sourceToken")) + object.sourceToken = message.sourceToken; + if (message.importToken != null && message.hasOwnProperty("importToken")) + object.importToken = message.importToken; + if (message.syncToken != null && message.hasOwnProperty("syncToken")) + object.syncToken = message.syncToken; + if (message.lastSync != null && message.hasOwnProperty("lastSync")) + object.lastSync = message.lastSync; + if (message.code != null && message.hasOwnProperty("code")) + object.code = options.enums === String ? $root.google.cloud.gkehub.configmanagement.v1alpha.SyncState.SyncCode[message.code] : message.code; + if (message.errors && message.errors.length) { + object.errors = []; + for (var j = 0; j < message.errors.length; ++j) + object.errors[j] = $root.google.cloud.gkehub.configmanagement.v1alpha.SyncError.toObject(message.errors[j], options); + } + if (message.lastSyncTime != null && message.hasOwnProperty("lastSyncTime")) + object.lastSyncTime = $root.google.protobuf.Timestamp.toObject(message.lastSyncTime, options); + return object; + }; + + /** + * Converts this SyncState to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.configmanagement.v1alpha.SyncState + * @instance + * @returns {Object.} JSON object + */ + SyncState.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + /** + * SyncCode enum. + * @name google.cloud.gkehub.configmanagement.v1alpha.SyncState.SyncCode + * @enum {number} + * @property {number} SYNC_CODE_UNSPECIFIED=0 SYNC_CODE_UNSPECIFIED value + * @property {number} SYNCED=1 SYNCED value + * @property {number} PENDING=2 PENDING value + * @property {number} ERROR=3 ERROR value + * @property {number} NOT_CONFIGURED=4 NOT_CONFIGURED value + * @property {number} NOT_INSTALLED=5 NOT_INSTALLED value + * @property {number} UNAUTHORIZED=6 UNAUTHORIZED value + * @property {number} UNREACHABLE=7 UNREACHABLE value + */ + SyncState.SyncCode = (function() { + var valuesById = {}, values = Object.create(valuesById); + values[valuesById[0] = "SYNC_CODE_UNSPECIFIED"] = 0; + values[valuesById[1] = "SYNCED"] = 1; + values[valuesById[2] = "PENDING"] = 2; + values[valuesById[3] = "ERROR"] = 3; + values[valuesById[4] = "NOT_CONFIGURED"] = 4; + values[valuesById[5] = "NOT_INSTALLED"] = 5; + values[valuesById[6] = "UNAUTHORIZED"] = 6; + values[valuesById[7] = "UNREACHABLE"] = 7; + return values; + })(); + + return SyncState; + })(); + + v1alpha.SyncError = (function() { + + /** + * Properties of a SyncError. + * @memberof google.cloud.gkehub.configmanagement.v1alpha + * @interface ISyncError + * @property {string|null} [code] SyncError code + * @property {string|null} [errorMessage] SyncError errorMessage + * @property {Array.|null} [errorResources] SyncError errorResources + */ + + /** + * Constructs a new SyncError. + * @memberof google.cloud.gkehub.configmanagement.v1alpha + * @classdesc Represents a SyncError. + * @implements ISyncError + * @constructor + * @param {google.cloud.gkehub.configmanagement.v1alpha.ISyncError=} [properties] Properties to set + */ + function SyncError(properties) { + this.errorResources = []; + 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]]; + } + + /** + * SyncError code. + * @member {string} code + * @memberof google.cloud.gkehub.configmanagement.v1alpha.SyncError + * @instance + */ + SyncError.prototype.code = ""; + + /** + * SyncError errorMessage. + * @member {string} errorMessage + * @memberof google.cloud.gkehub.configmanagement.v1alpha.SyncError + * @instance + */ + SyncError.prototype.errorMessage = ""; + + /** + * SyncError errorResources. + * @member {Array.} errorResources + * @memberof google.cloud.gkehub.configmanagement.v1alpha.SyncError + * @instance + */ + SyncError.prototype.errorResources = $util.emptyArray; + + /** + * Creates a new SyncError instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.configmanagement.v1alpha.SyncError + * @static + * @param {google.cloud.gkehub.configmanagement.v1alpha.ISyncError=} [properties] Properties to set + * @returns {google.cloud.gkehub.configmanagement.v1alpha.SyncError} SyncError instance + */ + SyncError.create = function create(properties) { + return new SyncError(properties); + }; + + /** + * Encodes the specified SyncError message. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1alpha.SyncError.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.configmanagement.v1alpha.SyncError + * @static + * @param {google.cloud.gkehub.configmanagement.v1alpha.ISyncError} message SyncError message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + SyncError.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.code != null && Object.hasOwnProperty.call(message, "code")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.code); + if (message.errorMessage != null && Object.hasOwnProperty.call(message, "errorMessage")) + writer.uint32(/* id 2, wireType 2 =*/18).string(message.errorMessage); + if (message.errorResources != null && message.errorResources.length) + for (var i = 0; i < message.errorResources.length; ++i) + $root.google.cloud.gkehub.configmanagement.v1alpha.ErrorResource.encode(message.errorResources[i], writer.uint32(/* id 3, wireType 2 =*/26).fork()).ldelim(); + return writer; + }; + + /** + * Encodes the specified SyncError message, length delimited. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1alpha.SyncError.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.configmanagement.v1alpha.SyncError + * @static + * @param {google.cloud.gkehub.configmanagement.v1alpha.ISyncError} message SyncError message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + SyncError.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a SyncError message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.configmanagement.v1alpha.SyncError + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.configmanagement.v1alpha.SyncError} SyncError + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + SyncError.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.configmanagement.v1alpha.SyncError(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.code = reader.string(); + break; + case 2: + message.errorMessage = reader.string(); + break; + case 3: + if (!(message.errorResources && message.errorResources.length)) + message.errorResources = []; + message.errorResources.push($root.google.cloud.gkehub.configmanagement.v1alpha.ErrorResource.decode(reader, reader.uint32())); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a SyncError message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.configmanagement.v1alpha.SyncError + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.configmanagement.v1alpha.SyncError} SyncError + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + SyncError.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a SyncError message. + * @function verify + * @memberof google.cloud.gkehub.configmanagement.v1alpha.SyncError + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + SyncError.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.code != null && message.hasOwnProperty("code")) + if (!$util.isString(message.code)) + return "code: string expected"; + if (message.errorMessage != null && message.hasOwnProperty("errorMessage")) + if (!$util.isString(message.errorMessage)) + return "errorMessage: string expected"; + if (message.errorResources != null && message.hasOwnProperty("errorResources")) { + if (!Array.isArray(message.errorResources)) + return "errorResources: array expected"; + for (var i = 0; i < message.errorResources.length; ++i) { + var error = $root.google.cloud.gkehub.configmanagement.v1alpha.ErrorResource.verify(message.errorResources[i]); + if (error) + return "errorResources." + error; + } + } + return null; + }; + + /** + * Creates a SyncError message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.configmanagement.v1alpha.SyncError + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.configmanagement.v1alpha.SyncError} SyncError + */ + SyncError.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.configmanagement.v1alpha.SyncError) + return object; + var message = new $root.google.cloud.gkehub.configmanagement.v1alpha.SyncError(); + if (object.code != null) + message.code = String(object.code); + if (object.errorMessage != null) + message.errorMessage = String(object.errorMessage); + if (object.errorResources) { + if (!Array.isArray(object.errorResources)) + throw TypeError(".google.cloud.gkehub.configmanagement.v1alpha.SyncError.errorResources: array expected"); + message.errorResources = []; + for (var i = 0; i < object.errorResources.length; ++i) { + if (typeof object.errorResources[i] !== "object") + throw TypeError(".google.cloud.gkehub.configmanagement.v1alpha.SyncError.errorResources: object expected"); + message.errorResources[i] = $root.google.cloud.gkehub.configmanagement.v1alpha.ErrorResource.fromObject(object.errorResources[i]); + } + } + return message; + }; + + /** + * Creates a plain object from a SyncError message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.configmanagement.v1alpha.SyncError + * @static + * @param {google.cloud.gkehub.configmanagement.v1alpha.SyncError} message SyncError + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + SyncError.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.arrays || options.defaults) + object.errorResources = []; + if (options.defaults) { + object.code = ""; + object.errorMessage = ""; + } + if (message.code != null && message.hasOwnProperty("code")) + object.code = message.code; + if (message.errorMessage != null && message.hasOwnProperty("errorMessage")) + object.errorMessage = message.errorMessage; + if (message.errorResources && message.errorResources.length) { + object.errorResources = []; + for (var j = 0; j < message.errorResources.length; ++j) + object.errorResources[j] = $root.google.cloud.gkehub.configmanagement.v1alpha.ErrorResource.toObject(message.errorResources[j], options); + } + return object; + }; + + /** + * Converts this SyncError to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.configmanagement.v1alpha.SyncError + * @instance + * @returns {Object.} JSON object + */ + SyncError.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return SyncError; + })(); + + v1alpha.ErrorResource = (function() { + + /** + * Properties of an ErrorResource. + * @memberof google.cloud.gkehub.configmanagement.v1alpha + * @interface IErrorResource + * @property {string|null} [sourcePath] ErrorResource sourcePath + * @property {string|null} [resourceName] ErrorResource resourceName + * @property {string|null} [resourceNamespace] ErrorResource resourceNamespace + * @property {google.cloud.gkehub.configmanagement.v1alpha.IGroupVersionKind|null} [resourceGvk] ErrorResource resourceGvk + */ + + /** + * Constructs a new ErrorResource. + * @memberof google.cloud.gkehub.configmanagement.v1alpha + * @classdesc Represents an ErrorResource. + * @implements IErrorResource + * @constructor + * @param {google.cloud.gkehub.configmanagement.v1alpha.IErrorResource=} [properties] Properties to set + */ + function ErrorResource(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]]; + } + + /** + * ErrorResource sourcePath. + * @member {string} sourcePath + * @memberof google.cloud.gkehub.configmanagement.v1alpha.ErrorResource + * @instance + */ + ErrorResource.prototype.sourcePath = ""; + + /** + * ErrorResource resourceName. + * @member {string} resourceName + * @memberof google.cloud.gkehub.configmanagement.v1alpha.ErrorResource + * @instance + */ + ErrorResource.prototype.resourceName = ""; + + /** + * ErrorResource resourceNamespace. + * @member {string} resourceNamespace + * @memberof google.cloud.gkehub.configmanagement.v1alpha.ErrorResource + * @instance + */ + ErrorResource.prototype.resourceNamespace = ""; + + /** + * ErrorResource resourceGvk. + * @member {google.cloud.gkehub.configmanagement.v1alpha.IGroupVersionKind|null|undefined} resourceGvk + * @memberof google.cloud.gkehub.configmanagement.v1alpha.ErrorResource + * @instance + */ + ErrorResource.prototype.resourceGvk = null; + + /** + * Creates a new ErrorResource instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.configmanagement.v1alpha.ErrorResource + * @static + * @param {google.cloud.gkehub.configmanagement.v1alpha.IErrorResource=} [properties] Properties to set + * @returns {google.cloud.gkehub.configmanagement.v1alpha.ErrorResource} ErrorResource instance + */ + ErrorResource.create = function create(properties) { + return new ErrorResource(properties); + }; + + /** + * Encodes the specified ErrorResource message. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1alpha.ErrorResource.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.configmanagement.v1alpha.ErrorResource + * @static + * @param {google.cloud.gkehub.configmanagement.v1alpha.IErrorResource} message ErrorResource message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + ErrorResource.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.sourcePath != null && Object.hasOwnProperty.call(message, "sourcePath")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.sourcePath); + if (message.resourceName != null && Object.hasOwnProperty.call(message, "resourceName")) + writer.uint32(/* id 2, wireType 2 =*/18).string(message.resourceName); + if (message.resourceNamespace != null && Object.hasOwnProperty.call(message, "resourceNamespace")) + writer.uint32(/* id 3, wireType 2 =*/26).string(message.resourceNamespace); + if (message.resourceGvk != null && Object.hasOwnProperty.call(message, "resourceGvk")) + $root.google.cloud.gkehub.configmanagement.v1alpha.GroupVersionKind.encode(message.resourceGvk, writer.uint32(/* id 4, wireType 2 =*/34).fork()).ldelim(); + return writer; + }; + + /** + * Encodes the specified ErrorResource message, length delimited. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1alpha.ErrorResource.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.configmanagement.v1alpha.ErrorResource + * @static + * @param {google.cloud.gkehub.configmanagement.v1alpha.IErrorResource} message ErrorResource message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + ErrorResource.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes an ErrorResource message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.configmanagement.v1alpha.ErrorResource + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.configmanagement.v1alpha.ErrorResource} ErrorResource + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + ErrorResource.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.configmanagement.v1alpha.ErrorResource(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.sourcePath = reader.string(); + break; + case 2: + message.resourceName = reader.string(); + break; + case 3: + message.resourceNamespace = reader.string(); + break; + case 4: + message.resourceGvk = $root.google.cloud.gkehub.configmanagement.v1alpha.GroupVersionKind.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes an ErrorResource message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.configmanagement.v1alpha.ErrorResource + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.configmanagement.v1alpha.ErrorResource} ErrorResource + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + ErrorResource.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies an ErrorResource message. + * @function verify + * @memberof google.cloud.gkehub.configmanagement.v1alpha.ErrorResource + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + ErrorResource.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.sourcePath != null && message.hasOwnProperty("sourcePath")) + if (!$util.isString(message.sourcePath)) + return "sourcePath: string expected"; + if (message.resourceName != null && message.hasOwnProperty("resourceName")) + if (!$util.isString(message.resourceName)) + return "resourceName: string expected"; + if (message.resourceNamespace != null && message.hasOwnProperty("resourceNamespace")) + if (!$util.isString(message.resourceNamespace)) + return "resourceNamespace: string expected"; + if (message.resourceGvk != null && message.hasOwnProperty("resourceGvk")) { + var error = $root.google.cloud.gkehub.configmanagement.v1alpha.GroupVersionKind.verify(message.resourceGvk); + if (error) + return "resourceGvk." + error; + } + return null; + }; + + /** + * Creates an ErrorResource message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.configmanagement.v1alpha.ErrorResource + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.configmanagement.v1alpha.ErrorResource} ErrorResource + */ + ErrorResource.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.configmanagement.v1alpha.ErrorResource) + return object; + var message = new $root.google.cloud.gkehub.configmanagement.v1alpha.ErrorResource(); + if (object.sourcePath != null) + message.sourcePath = String(object.sourcePath); + if (object.resourceName != null) + message.resourceName = String(object.resourceName); + if (object.resourceNamespace != null) + message.resourceNamespace = String(object.resourceNamespace); + if (object.resourceGvk != null) { + if (typeof object.resourceGvk !== "object") + throw TypeError(".google.cloud.gkehub.configmanagement.v1alpha.ErrorResource.resourceGvk: object expected"); + message.resourceGvk = $root.google.cloud.gkehub.configmanagement.v1alpha.GroupVersionKind.fromObject(object.resourceGvk); + } + return message; + }; + + /** + * Creates a plain object from an ErrorResource message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.configmanagement.v1alpha.ErrorResource + * @static + * @param {google.cloud.gkehub.configmanagement.v1alpha.ErrorResource} message ErrorResource + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + ErrorResource.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.sourcePath = ""; + object.resourceName = ""; + object.resourceNamespace = ""; + object.resourceGvk = null; + } + if (message.sourcePath != null && message.hasOwnProperty("sourcePath")) + object.sourcePath = message.sourcePath; + if (message.resourceName != null && message.hasOwnProperty("resourceName")) + object.resourceName = message.resourceName; + if (message.resourceNamespace != null && message.hasOwnProperty("resourceNamespace")) + object.resourceNamespace = message.resourceNamespace; + if (message.resourceGvk != null && message.hasOwnProperty("resourceGvk")) + object.resourceGvk = $root.google.cloud.gkehub.configmanagement.v1alpha.GroupVersionKind.toObject(message.resourceGvk, options); + return object; + }; + + /** + * Converts this ErrorResource to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.configmanagement.v1alpha.ErrorResource + * @instance + * @returns {Object.} JSON object + */ + ErrorResource.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return ErrorResource; + })(); + + v1alpha.GroupVersionKind = (function() { + + /** + * Properties of a GroupVersionKind. + * @memberof google.cloud.gkehub.configmanagement.v1alpha + * @interface IGroupVersionKind + * @property {string|null} [group] GroupVersionKind group + * @property {string|null} [version] GroupVersionKind version + * @property {string|null} [kind] GroupVersionKind kind + */ + + /** + * Constructs a new GroupVersionKind. + * @memberof google.cloud.gkehub.configmanagement.v1alpha + * @classdesc Represents a GroupVersionKind. + * @implements IGroupVersionKind + * @constructor + * @param {google.cloud.gkehub.configmanagement.v1alpha.IGroupVersionKind=} [properties] Properties to set + */ + function GroupVersionKind(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]]; + } + + /** + * GroupVersionKind group. + * @member {string} group + * @memberof google.cloud.gkehub.configmanagement.v1alpha.GroupVersionKind + * @instance + */ + GroupVersionKind.prototype.group = ""; + + /** + * GroupVersionKind version. + * @member {string} version + * @memberof google.cloud.gkehub.configmanagement.v1alpha.GroupVersionKind + * @instance + */ + GroupVersionKind.prototype.version = ""; + + /** + * GroupVersionKind kind. + * @member {string} kind + * @memberof google.cloud.gkehub.configmanagement.v1alpha.GroupVersionKind + * @instance + */ + GroupVersionKind.prototype.kind = ""; + + /** + * Creates a new GroupVersionKind instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.configmanagement.v1alpha.GroupVersionKind + * @static + * @param {google.cloud.gkehub.configmanagement.v1alpha.IGroupVersionKind=} [properties] Properties to set + * @returns {google.cloud.gkehub.configmanagement.v1alpha.GroupVersionKind} GroupVersionKind instance + */ + GroupVersionKind.create = function create(properties) { + return new GroupVersionKind(properties); + }; + + /** + * Encodes the specified GroupVersionKind message. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1alpha.GroupVersionKind.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.configmanagement.v1alpha.GroupVersionKind + * @static + * @param {google.cloud.gkehub.configmanagement.v1alpha.IGroupVersionKind} message GroupVersionKind message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + GroupVersionKind.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.group != null && Object.hasOwnProperty.call(message, "group")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.group); + if (message.version != null && Object.hasOwnProperty.call(message, "version")) + writer.uint32(/* id 2, wireType 2 =*/18).string(message.version); + if (message.kind != null && Object.hasOwnProperty.call(message, "kind")) + writer.uint32(/* id 3, wireType 2 =*/26).string(message.kind); + return writer; + }; + + /** + * Encodes the specified GroupVersionKind message, length delimited. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1alpha.GroupVersionKind.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.configmanagement.v1alpha.GroupVersionKind + * @static + * @param {google.cloud.gkehub.configmanagement.v1alpha.IGroupVersionKind} message GroupVersionKind message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + GroupVersionKind.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a GroupVersionKind message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.configmanagement.v1alpha.GroupVersionKind + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.configmanagement.v1alpha.GroupVersionKind} GroupVersionKind + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + GroupVersionKind.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.configmanagement.v1alpha.GroupVersionKind(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.group = reader.string(); + break; + case 2: + message.version = reader.string(); + break; + case 3: + message.kind = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a GroupVersionKind message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.configmanagement.v1alpha.GroupVersionKind + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.configmanagement.v1alpha.GroupVersionKind} GroupVersionKind + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + GroupVersionKind.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a GroupVersionKind message. + * @function verify + * @memberof google.cloud.gkehub.configmanagement.v1alpha.GroupVersionKind + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + GroupVersionKind.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.group != null && message.hasOwnProperty("group")) + if (!$util.isString(message.group)) + return "group: string expected"; + if (message.version != null && message.hasOwnProperty("version")) + if (!$util.isString(message.version)) + return "version: string expected"; + if (message.kind != null && message.hasOwnProperty("kind")) + if (!$util.isString(message.kind)) + return "kind: string expected"; + return null; + }; + + /** + * Creates a GroupVersionKind message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.configmanagement.v1alpha.GroupVersionKind + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.configmanagement.v1alpha.GroupVersionKind} GroupVersionKind + */ + GroupVersionKind.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.configmanagement.v1alpha.GroupVersionKind) + return object; + var message = new $root.google.cloud.gkehub.configmanagement.v1alpha.GroupVersionKind(); + if (object.group != null) + message.group = String(object.group); + if (object.version != null) + message.version = String(object.version); + if (object.kind != null) + message.kind = String(object.kind); + return message; + }; + + /** + * Creates a plain object from a GroupVersionKind message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.configmanagement.v1alpha.GroupVersionKind + * @static + * @param {google.cloud.gkehub.configmanagement.v1alpha.GroupVersionKind} message GroupVersionKind + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + GroupVersionKind.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.group = ""; + object.version = ""; + object.kind = ""; + } + if (message.group != null && message.hasOwnProperty("group")) + object.group = message.group; + if (message.version != null && message.hasOwnProperty("version")) + object.version = message.version; + if (message.kind != null && message.hasOwnProperty("kind")) + object.kind = message.kind; + return object; + }; + + /** + * Converts this GroupVersionKind to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.configmanagement.v1alpha.GroupVersionKind + * @instance + * @returns {Object.} JSON object + */ + GroupVersionKind.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return GroupVersionKind; + })(); + + v1alpha.PolicyControllerState = (function() { + + /** + * Properties of a PolicyControllerState. + * @memberof google.cloud.gkehub.configmanagement.v1alpha + * @interface IPolicyControllerState + * @property {google.cloud.gkehub.configmanagement.v1alpha.IPolicyControllerVersion|null} [version] PolicyControllerState version + * @property {google.cloud.gkehub.configmanagement.v1alpha.IGatekeeperDeploymentState|null} [deploymentState] PolicyControllerState deploymentState + */ + + /** + * Constructs a new PolicyControllerState. + * @memberof google.cloud.gkehub.configmanagement.v1alpha + * @classdesc Represents a PolicyControllerState. + * @implements IPolicyControllerState + * @constructor + * @param {google.cloud.gkehub.configmanagement.v1alpha.IPolicyControllerState=} [properties] Properties to set + */ + function PolicyControllerState(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]]; + } + + /** + * PolicyControllerState version. + * @member {google.cloud.gkehub.configmanagement.v1alpha.IPolicyControllerVersion|null|undefined} version + * @memberof google.cloud.gkehub.configmanagement.v1alpha.PolicyControllerState + * @instance + */ + PolicyControllerState.prototype.version = null; + + /** + * PolicyControllerState deploymentState. + * @member {google.cloud.gkehub.configmanagement.v1alpha.IGatekeeperDeploymentState|null|undefined} deploymentState + * @memberof google.cloud.gkehub.configmanagement.v1alpha.PolicyControllerState + * @instance + */ + PolicyControllerState.prototype.deploymentState = null; + + /** + * Creates a new PolicyControllerState instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.configmanagement.v1alpha.PolicyControllerState + * @static + * @param {google.cloud.gkehub.configmanagement.v1alpha.IPolicyControllerState=} [properties] Properties to set + * @returns {google.cloud.gkehub.configmanagement.v1alpha.PolicyControllerState} PolicyControllerState instance + */ + PolicyControllerState.create = function create(properties) { + return new PolicyControllerState(properties); + }; + + /** + * Encodes the specified PolicyControllerState message. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1alpha.PolicyControllerState.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.configmanagement.v1alpha.PolicyControllerState + * @static + * @param {google.cloud.gkehub.configmanagement.v1alpha.IPolicyControllerState} message PolicyControllerState message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + PolicyControllerState.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.version != null && Object.hasOwnProperty.call(message, "version")) + $root.google.cloud.gkehub.configmanagement.v1alpha.PolicyControllerVersion.encode(message.version, writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim(); + if (message.deploymentState != null && Object.hasOwnProperty.call(message, "deploymentState")) + $root.google.cloud.gkehub.configmanagement.v1alpha.GatekeeperDeploymentState.encode(message.deploymentState, writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim(); + return writer; + }; + + /** + * Encodes the specified PolicyControllerState message, length delimited. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1alpha.PolicyControllerState.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.configmanagement.v1alpha.PolicyControllerState + * @static + * @param {google.cloud.gkehub.configmanagement.v1alpha.IPolicyControllerState} message PolicyControllerState message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + PolicyControllerState.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a PolicyControllerState message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.configmanagement.v1alpha.PolicyControllerState + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.configmanagement.v1alpha.PolicyControllerState} PolicyControllerState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + PolicyControllerState.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.configmanagement.v1alpha.PolicyControllerState(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.version = $root.google.cloud.gkehub.configmanagement.v1alpha.PolicyControllerVersion.decode(reader, reader.uint32()); + break; + case 2: + message.deploymentState = $root.google.cloud.gkehub.configmanagement.v1alpha.GatekeeperDeploymentState.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a PolicyControllerState message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.configmanagement.v1alpha.PolicyControllerState + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.configmanagement.v1alpha.PolicyControllerState} PolicyControllerState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + PolicyControllerState.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a PolicyControllerState message. + * @function verify + * @memberof google.cloud.gkehub.configmanagement.v1alpha.PolicyControllerState + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + PolicyControllerState.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.version != null && message.hasOwnProperty("version")) { + var error = $root.google.cloud.gkehub.configmanagement.v1alpha.PolicyControllerVersion.verify(message.version); + if (error) + return "version." + error; + } + if (message.deploymentState != null && message.hasOwnProperty("deploymentState")) { + var error = $root.google.cloud.gkehub.configmanagement.v1alpha.GatekeeperDeploymentState.verify(message.deploymentState); + if (error) + return "deploymentState." + error; + } + return null; + }; + + /** + * Creates a PolicyControllerState message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.configmanagement.v1alpha.PolicyControllerState + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.configmanagement.v1alpha.PolicyControllerState} PolicyControllerState + */ + PolicyControllerState.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.configmanagement.v1alpha.PolicyControllerState) + return object; + var message = new $root.google.cloud.gkehub.configmanagement.v1alpha.PolicyControllerState(); + if (object.version != null) { + if (typeof object.version !== "object") + throw TypeError(".google.cloud.gkehub.configmanagement.v1alpha.PolicyControllerState.version: object expected"); + message.version = $root.google.cloud.gkehub.configmanagement.v1alpha.PolicyControllerVersion.fromObject(object.version); + } + if (object.deploymentState != null) { + if (typeof object.deploymentState !== "object") + throw TypeError(".google.cloud.gkehub.configmanagement.v1alpha.PolicyControllerState.deploymentState: object expected"); + message.deploymentState = $root.google.cloud.gkehub.configmanagement.v1alpha.GatekeeperDeploymentState.fromObject(object.deploymentState); + } + return message; + }; + + /** + * Creates a plain object from a PolicyControllerState message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.configmanagement.v1alpha.PolicyControllerState + * @static + * @param {google.cloud.gkehub.configmanagement.v1alpha.PolicyControllerState} message PolicyControllerState + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + PolicyControllerState.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.version = null; + object.deploymentState = null; + } + if (message.version != null && message.hasOwnProperty("version")) + object.version = $root.google.cloud.gkehub.configmanagement.v1alpha.PolicyControllerVersion.toObject(message.version, options); + if (message.deploymentState != null && message.hasOwnProperty("deploymentState")) + object.deploymentState = $root.google.cloud.gkehub.configmanagement.v1alpha.GatekeeperDeploymentState.toObject(message.deploymentState, options); + return object; + }; + + /** + * Converts this PolicyControllerState to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.configmanagement.v1alpha.PolicyControllerState + * @instance + * @returns {Object.} JSON object + */ + PolicyControllerState.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return PolicyControllerState; + })(); + + v1alpha.PolicyControllerVersion = (function() { + + /** + * Properties of a PolicyControllerVersion. + * @memberof google.cloud.gkehub.configmanagement.v1alpha + * @interface IPolicyControllerVersion + * @property {string|null} [version] PolicyControllerVersion version + */ + + /** + * Constructs a new PolicyControllerVersion. + * @memberof google.cloud.gkehub.configmanagement.v1alpha + * @classdesc Represents a PolicyControllerVersion. + * @implements IPolicyControllerVersion + * @constructor + * @param {google.cloud.gkehub.configmanagement.v1alpha.IPolicyControllerVersion=} [properties] Properties to set + */ + function PolicyControllerVersion(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]]; + } + + /** + * PolicyControllerVersion version. + * @member {string} version + * @memberof google.cloud.gkehub.configmanagement.v1alpha.PolicyControllerVersion + * @instance + */ + PolicyControllerVersion.prototype.version = ""; + + /** + * Creates a new PolicyControllerVersion instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.configmanagement.v1alpha.PolicyControllerVersion + * @static + * @param {google.cloud.gkehub.configmanagement.v1alpha.IPolicyControllerVersion=} [properties] Properties to set + * @returns {google.cloud.gkehub.configmanagement.v1alpha.PolicyControllerVersion} PolicyControllerVersion instance + */ + PolicyControllerVersion.create = function create(properties) { + return new PolicyControllerVersion(properties); + }; + + /** + * Encodes the specified PolicyControllerVersion message. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1alpha.PolicyControllerVersion.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.configmanagement.v1alpha.PolicyControllerVersion + * @static + * @param {google.cloud.gkehub.configmanagement.v1alpha.IPolicyControllerVersion} message PolicyControllerVersion message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + PolicyControllerVersion.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.version != null && Object.hasOwnProperty.call(message, "version")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.version); + return writer; + }; + + /** + * Encodes the specified PolicyControllerVersion message, length delimited. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1alpha.PolicyControllerVersion.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.configmanagement.v1alpha.PolicyControllerVersion + * @static + * @param {google.cloud.gkehub.configmanagement.v1alpha.IPolicyControllerVersion} message PolicyControllerVersion message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + PolicyControllerVersion.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a PolicyControllerVersion message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.configmanagement.v1alpha.PolicyControllerVersion + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.configmanagement.v1alpha.PolicyControllerVersion} PolicyControllerVersion + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + PolicyControllerVersion.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.configmanagement.v1alpha.PolicyControllerVersion(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.version = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a PolicyControllerVersion message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.configmanagement.v1alpha.PolicyControllerVersion + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.configmanagement.v1alpha.PolicyControllerVersion} PolicyControllerVersion + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + PolicyControllerVersion.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a PolicyControllerVersion message. + * @function verify + * @memberof google.cloud.gkehub.configmanagement.v1alpha.PolicyControllerVersion + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + PolicyControllerVersion.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.version != null && message.hasOwnProperty("version")) + if (!$util.isString(message.version)) + return "version: string expected"; + return null; + }; + + /** + * Creates a PolicyControllerVersion message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.configmanagement.v1alpha.PolicyControllerVersion + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.configmanagement.v1alpha.PolicyControllerVersion} PolicyControllerVersion + */ + PolicyControllerVersion.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.configmanagement.v1alpha.PolicyControllerVersion) + return object; + var message = new $root.google.cloud.gkehub.configmanagement.v1alpha.PolicyControllerVersion(); + if (object.version != null) + message.version = String(object.version); + return message; + }; + + /** + * Creates a plain object from a PolicyControllerVersion message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.configmanagement.v1alpha.PolicyControllerVersion + * @static + * @param {google.cloud.gkehub.configmanagement.v1alpha.PolicyControllerVersion} message PolicyControllerVersion + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + PolicyControllerVersion.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) + object.version = ""; + if (message.version != null && message.hasOwnProperty("version")) + object.version = message.version; + return object; + }; + + /** + * Converts this PolicyControllerVersion to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.configmanagement.v1alpha.PolicyControllerVersion + * @instance + * @returns {Object.} JSON object + */ + PolicyControllerVersion.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return PolicyControllerVersion; + })(); + + v1alpha.BinauthzState = (function() { + + /** + * Properties of a BinauthzState. + * @memberof google.cloud.gkehub.configmanagement.v1alpha + * @interface IBinauthzState + * @property {google.cloud.gkehub.configmanagement.v1alpha.DeploymentState|null} [webhook] BinauthzState webhook + * @property {google.cloud.gkehub.configmanagement.v1alpha.IBinauthzVersion|null} [version] BinauthzState version + */ + + /** + * Constructs a new BinauthzState. + * @memberof google.cloud.gkehub.configmanagement.v1alpha + * @classdesc Represents a BinauthzState. + * @implements IBinauthzState + * @constructor + * @param {google.cloud.gkehub.configmanagement.v1alpha.IBinauthzState=} [properties] Properties to set + */ + function BinauthzState(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]]; + } + + /** + * BinauthzState webhook. + * @member {google.cloud.gkehub.configmanagement.v1alpha.DeploymentState} webhook + * @memberof google.cloud.gkehub.configmanagement.v1alpha.BinauthzState + * @instance + */ + BinauthzState.prototype.webhook = 0; + + /** + * BinauthzState version. + * @member {google.cloud.gkehub.configmanagement.v1alpha.IBinauthzVersion|null|undefined} version + * @memberof google.cloud.gkehub.configmanagement.v1alpha.BinauthzState + * @instance + */ + BinauthzState.prototype.version = null; + + /** + * Creates a new BinauthzState instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.configmanagement.v1alpha.BinauthzState + * @static + * @param {google.cloud.gkehub.configmanagement.v1alpha.IBinauthzState=} [properties] Properties to set + * @returns {google.cloud.gkehub.configmanagement.v1alpha.BinauthzState} BinauthzState instance + */ + BinauthzState.create = function create(properties) { + return new BinauthzState(properties); + }; + + /** + * Encodes the specified BinauthzState message. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1alpha.BinauthzState.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.configmanagement.v1alpha.BinauthzState + * @static + * @param {google.cloud.gkehub.configmanagement.v1alpha.IBinauthzState} message BinauthzState message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + BinauthzState.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.webhook != null && Object.hasOwnProperty.call(message, "webhook")) + writer.uint32(/* id 1, wireType 0 =*/8).int32(message.webhook); + if (message.version != null && Object.hasOwnProperty.call(message, "version")) + $root.google.cloud.gkehub.configmanagement.v1alpha.BinauthzVersion.encode(message.version, writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim(); + return writer; + }; + + /** + * Encodes the specified BinauthzState message, length delimited. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1alpha.BinauthzState.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.configmanagement.v1alpha.BinauthzState + * @static + * @param {google.cloud.gkehub.configmanagement.v1alpha.IBinauthzState} message BinauthzState message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + BinauthzState.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a BinauthzState message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.configmanagement.v1alpha.BinauthzState + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.configmanagement.v1alpha.BinauthzState} BinauthzState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + BinauthzState.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.configmanagement.v1alpha.BinauthzState(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.webhook = reader.int32(); + break; + case 2: + message.version = $root.google.cloud.gkehub.configmanagement.v1alpha.BinauthzVersion.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a BinauthzState message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.configmanagement.v1alpha.BinauthzState + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.configmanagement.v1alpha.BinauthzState} BinauthzState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + BinauthzState.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a BinauthzState message. + * @function verify + * @memberof google.cloud.gkehub.configmanagement.v1alpha.BinauthzState + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + BinauthzState.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.webhook != null && message.hasOwnProperty("webhook")) + switch (message.webhook) { + default: + return "webhook: enum value expected"; + case 0: + case 1: + case 2: + case 3: + break; + } + if (message.version != null && message.hasOwnProperty("version")) { + var error = $root.google.cloud.gkehub.configmanagement.v1alpha.BinauthzVersion.verify(message.version); + if (error) + return "version." + error; + } + return null; + }; + + /** + * Creates a BinauthzState message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.configmanagement.v1alpha.BinauthzState + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.configmanagement.v1alpha.BinauthzState} BinauthzState + */ + BinauthzState.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.configmanagement.v1alpha.BinauthzState) + return object; + var message = new $root.google.cloud.gkehub.configmanagement.v1alpha.BinauthzState(); + switch (object.webhook) { + case "DEPLOYMENT_STATE_UNSPECIFIED": + case 0: + message.webhook = 0; + break; + case "NOT_INSTALLED": + case 1: + message.webhook = 1; + break; + case "INSTALLED": + case 2: + message.webhook = 2; + break; + case "ERROR": + case 3: + message.webhook = 3; + break; + } + if (object.version != null) { + if (typeof object.version !== "object") + throw TypeError(".google.cloud.gkehub.configmanagement.v1alpha.BinauthzState.version: object expected"); + message.version = $root.google.cloud.gkehub.configmanagement.v1alpha.BinauthzVersion.fromObject(object.version); + } + return message; + }; + + /** + * Creates a plain object from a BinauthzState message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.configmanagement.v1alpha.BinauthzState + * @static + * @param {google.cloud.gkehub.configmanagement.v1alpha.BinauthzState} message BinauthzState + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + BinauthzState.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.webhook = options.enums === String ? "DEPLOYMENT_STATE_UNSPECIFIED" : 0; + object.version = null; + } + if (message.webhook != null && message.hasOwnProperty("webhook")) + object.webhook = options.enums === String ? $root.google.cloud.gkehub.configmanagement.v1alpha.DeploymentState[message.webhook] : message.webhook; + if (message.version != null && message.hasOwnProperty("version")) + object.version = $root.google.cloud.gkehub.configmanagement.v1alpha.BinauthzVersion.toObject(message.version, options); + return object; + }; + + /** + * Converts this BinauthzState to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.configmanagement.v1alpha.BinauthzState + * @instance + * @returns {Object.} JSON object + */ + BinauthzState.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return BinauthzState; + })(); + + v1alpha.BinauthzVersion = (function() { + + /** + * Properties of a BinauthzVersion. + * @memberof google.cloud.gkehub.configmanagement.v1alpha + * @interface IBinauthzVersion + * @property {string|null} [webhookVersion] BinauthzVersion webhookVersion + */ + + /** + * Constructs a new BinauthzVersion. + * @memberof google.cloud.gkehub.configmanagement.v1alpha + * @classdesc Represents a BinauthzVersion. + * @implements IBinauthzVersion + * @constructor + * @param {google.cloud.gkehub.configmanagement.v1alpha.IBinauthzVersion=} [properties] Properties to set + */ + function BinauthzVersion(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]]; + } + + /** + * BinauthzVersion webhookVersion. + * @member {string} webhookVersion + * @memberof google.cloud.gkehub.configmanagement.v1alpha.BinauthzVersion + * @instance + */ + BinauthzVersion.prototype.webhookVersion = ""; + + /** + * Creates a new BinauthzVersion instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.configmanagement.v1alpha.BinauthzVersion + * @static + * @param {google.cloud.gkehub.configmanagement.v1alpha.IBinauthzVersion=} [properties] Properties to set + * @returns {google.cloud.gkehub.configmanagement.v1alpha.BinauthzVersion} BinauthzVersion instance + */ + BinauthzVersion.create = function create(properties) { + return new BinauthzVersion(properties); + }; + + /** + * Encodes the specified BinauthzVersion message. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1alpha.BinauthzVersion.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.configmanagement.v1alpha.BinauthzVersion + * @static + * @param {google.cloud.gkehub.configmanagement.v1alpha.IBinauthzVersion} message BinauthzVersion message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + BinauthzVersion.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.webhookVersion != null && Object.hasOwnProperty.call(message, "webhookVersion")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.webhookVersion); + return writer; + }; + + /** + * Encodes the specified BinauthzVersion message, length delimited. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1alpha.BinauthzVersion.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.configmanagement.v1alpha.BinauthzVersion + * @static + * @param {google.cloud.gkehub.configmanagement.v1alpha.IBinauthzVersion} message BinauthzVersion message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + BinauthzVersion.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a BinauthzVersion message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.configmanagement.v1alpha.BinauthzVersion + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.configmanagement.v1alpha.BinauthzVersion} BinauthzVersion + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + BinauthzVersion.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.configmanagement.v1alpha.BinauthzVersion(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.webhookVersion = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a BinauthzVersion message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.configmanagement.v1alpha.BinauthzVersion + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.configmanagement.v1alpha.BinauthzVersion} BinauthzVersion + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + BinauthzVersion.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a BinauthzVersion message. + * @function verify + * @memberof google.cloud.gkehub.configmanagement.v1alpha.BinauthzVersion + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + BinauthzVersion.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.webhookVersion != null && message.hasOwnProperty("webhookVersion")) + if (!$util.isString(message.webhookVersion)) + return "webhookVersion: string expected"; + return null; + }; + + /** + * Creates a BinauthzVersion message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.configmanagement.v1alpha.BinauthzVersion + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.configmanagement.v1alpha.BinauthzVersion} BinauthzVersion + */ + BinauthzVersion.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.configmanagement.v1alpha.BinauthzVersion) + return object; + var message = new $root.google.cloud.gkehub.configmanagement.v1alpha.BinauthzVersion(); + if (object.webhookVersion != null) + message.webhookVersion = String(object.webhookVersion); + return message; + }; + + /** + * Creates a plain object from a BinauthzVersion message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.configmanagement.v1alpha.BinauthzVersion + * @static + * @param {google.cloud.gkehub.configmanagement.v1alpha.BinauthzVersion} message BinauthzVersion + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + BinauthzVersion.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) + object.webhookVersion = ""; + if (message.webhookVersion != null && message.hasOwnProperty("webhookVersion")) + object.webhookVersion = message.webhookVersion; + return object; + }; + + /** + * Converts this BinauthzVersion to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.configmanagement.v1alpha.BinauthzVersion + * @instance + * @returns {Object.} JSON object + */ + BinauthzVersion.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return BinauthzVersion; + })(); + + v1alpha.GatekeeperDeploymentState = (function() { + + /** + * Properties of a GatekeeperDeploymentState. + * @memberof google.cloud.gkehub.configmanagement.v1alpha + * @interface IGatekeeperDeploymentState + * @property {google.cloud.gkehub.configmanagement.v1alpha.DeploymentState|null} [gatekeeperControllerManagerState] GatekeeperDeploymentState gatekeeperControllerManagerState + * @property {google.cloud.gkehub.configmanagement.v1alpha.DeploymentState|null} [gatekeeperAudit] GatekeeperDeploymentState gatekeeperAudit + * @property {google.cloud.gkehub.configmanagement.v1alpha.DeploymentState|null} [gatekeeperMutation] GatekeeperDeploymentState gatekeeperMutation + */ + + /** + * Constructs a new GatekeeperDeploymentState. + * @memberof google.cloud.gkehub.configmanagement.v1alpha + * @classdesc Represents a GatekeeperDeploymentState. + * @implements IGatekeeperDeploymentState + * @constructor + * @param {google.cloud.gkehub.configmanagement.v1alpha.IGatekeeperDeploymentState=} [properties] Properties to set + */ + function GatekeeperDeploymentState(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]]; + } + + /** + * GatekeeperDeploymentState gatekeeperControllerManagerState. + * @member {google.cloud.gkehub.configmanagement.v1alpha.DeploymentState} gatekeeperControllerManagerState + * @memberof google.cloud.gkehub.configmanagement.v1alpha.GatekeeperDeploymentState + * @instance + */ + GatekeeperDeploymentState.prototype.gatekeeperControllerManagerState = 0; + + /** + * GatekeeperDeploymentState gatekeeperAudit. + * @member {google.cloud.gkehub.configmanagement.v1alpha.DeploymentState} gatekeeperAudit + * @memberof google.cloud.gkehub.configmanagement.v1alpha.GatekeeperDeploymentState + * @instance + */ + GatekeeperDeploymentState.prototype.gatekeeperAudit = 0; + + /** + * GatekeeperDeploymentState gatekeeperMutation. + * @member {google.cloud.gkehub.configmanagement.v1alpha.DeploymentState} gatekeeperMutation + * @memberof google.cloud.gkehub.configmanagement.v1alpha.GatekeeperDeploymentState + * @instance + */ + GatekeeperDeploymentState.prototype.gatekeeperMutation = 0; + + /** + * Creates a new GatekeeperDeploymentState instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.configmanagement.v1alpha.GatekeeperDeploymentState + * @static + * @param {google.cloud.gkehub.configmanagement.v1alpha.IGatekeeperDeploymentState=} [properties] Properties to set + * @returns {google.cloud.gkehub.configmanagement.v1alpha.GatekeeperDeploymentState} GatekeeperDeploymentState instance + */ + GatekeeperDeploymentState.create = function create(properties) { + return new GatekeeperDeploymentState(properties); + }; + + /** + * Encodes the specified GatekeeperDeploymentState message. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1alpha.GatekeeperDeploymentState.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.configmanagement.v1alpha.GatekeeperDeploymentState + * @static + * @param {google.cloud.gkehub.configmanagement.v1alpha.IGatekeeperDeploymentState} message GatekeeperDeploymentState message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + GatekeeperDeploymentState.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.gatekeeperControllerManagerState != null && Object.hasOwnProperty.call(message, "gatekeeperControllerManagerState")) + writer.uint32(/* id 1, wireType 0 =*/8).int32(message.gatekeeperControllerManagerState); + if (message.gatekeeperAudit != null && Object.hasOwnProperty.call(message, "gatekeeperAudit")) + writer.uint32(/* id 2, wireType 0 =*/16).int32(message.gatekeeperAudit); + if (message.gatekeeperMutation != null && Object.hasOwnProperty.call(message, "gatekeeperMutation")) + writer.uint32(/* id 3, wireType 0 =*/24).int32(message.gatekeeperMutation); + return writer; + }; + + /** + * Encodes the specified GatekeeperDeploymentState message, length delimited. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1alpha.GatekeeperDeploymentState.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.configmanagement.v1alpha.GatekeeperDeploymentState + * @static + * @param {google.cloud.gkehub.configmanagement.v1alpha.IGatekeeperDeploymentState} message GatekeeperDeploymentState message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + GatekeeperDeploymentState.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a GatekeeperDeploymentState message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.configmanagement.v1alpha.GatekeeperDeploymentState + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.configmanagement.v1alpha.GatekeeperDeploymentState} GatekeeperDeploymentState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + GatekeeperDeploymentState.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.configmanagement.v1alpha.GatekeeperDeploymentState(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.gatekeeperControllerManagerState = reader.int32(); + break; + case 2: + message.gatekeeperAudit = reader.int32(); + break; + case 3: + message.gatekeeperMutation = reader.int32(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a GatekeeperDeploymentState message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.configmanagement.v1alpha.GatekeeperDeploymentState + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.configmanagement.v1alpha.GatekeeperDeploymentState} GatekeeperDeploymentState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + GatekeeperDeploymentState.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a GatekeeperDeploymentState message. + * @function verify + * @memberof google.cloud.gkehub.configmanagement.v1alpha.GatekeeperDeploymentState + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + GatekeeperDeploymentState.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.gatekeeperControllerManagerState != null && message.hasOwnProperty("gatekeeperControllerManagerState")) + switch (message.gatekeeperControllerManagerState) { + default: + return "gatekeeperControllerManagerState: enum value expected"; + case 0: + case 1: + case 2: + case 3: + break; + } + if (message.gatekeeperAudit != null && message.hasOwnProperty("gatekeeperAudit")) + switch (message.gatekeeperAudit) { + default: + return "gatekeeperAudit: enum value expected"; + case 0: + case 1: + case 2: + case 3: + break; + } + if (message.gatekeeperMutation != null && message.hasOwnProperty("gatekeeperMutation")) + switch (message.gatekeeperMutation) { + default: + return "gatekeeperMutation: enum value expected"; + case 0: + case 1: + case 2: + case 3: + break; + } + return null; + }; + + /** + * Creates a GatekeeperDeploymentState message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.configmanagement.v1alpha.GatekeeperDeploymentState + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.configmanagement.v1alpha.GatekeeperDeploymentState} GatekeeperDeploymentState + */ + GatekeeperDeploymentState.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.configmanagement.v1alpha.GatekeeperDeploymentState) + return object; + var message = new $root.google.cloud.gkehub.configmanagement.v1alpha.GatekeeperDeploymentState(); + switch (object.gatekeeperControllerManagerState) { + case "DEPLOYMENT_STATE_UNSPECIFIED": + case 0: + message.gatekeeperControllerManagerState = 0; + break; + case "NOT_INSTALLED": + case 1: + message.gatekeeperControllerManagerState = 1; + break; + case "INSTALLED": + case 2: + message.gatekeeperControllerManagerState = 2; + break; + case "ERROR": + case 3: + message.gatekeeperControllerManagerState = 3; + break; + } + switch (object.gatekeeperAudit) { + case "DEPLOYMENT_STATE_UNSPECIFIED": + case 0: + message.gatekeeperAudit = 0; + break; + case "NOT_INSTALLED": + case 1: + message.gatekeeperAudit = 1; + break; + case "INSTALLED": + case 2: + message.gatekeeperAudit = 2; + break; + case "ERROR": + case 3: + message.gatekeeperAudit = 3; + break; + } + switch (object.gatekeeperMutation) { + case "DEPLOYMENT_STATE_UNSPECIFIED": + case 0: + message.gatekeeperMutation = 0; + break; + case "NOT_INSTALLED": + case 1: + message.gatekeeperMutation = 1; + break; + case "INSTALLED": + case 2: + message.gatekeeperMutation = 2; + break; + case "ERROR": + case 3: + message.gatekeeperMutation = 3; + break; + } + return message; + }; + + /** + * Creates a plain object from a GatekeeperDeploymentState message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.configmanagement.v1alpha.GatekeeperDeploymentState + * @static + * @param {google.cloud.gkehub.configmanagement.v1alpha.GatekeeperDeploymentState} message GatekeeperDeploymentState + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + GatekeeperDeploymentState.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.gatekeeperControllerManagerState = options.enums === String ? "DEPLOYMENT_STATE_UNSPECIFIED" : 0; + object.gatekeeperAudit = options.enums === String ? "DEPLOYMENT_STATE_UNSPECIFIED" : 0; + object.gatekeeperMutation = options.enums === String ? "DEPLOYMENT_STATE_UNSPECIFIED" : 0; + } + if (message.gatekeeperControllerManagerState != null && message.hasOwnProperty("gatekeeperControllerManagerState")) + object.gatekeeperControllerManagerState = options.enums === String ? $root.google.cloud.gkehub.configmanagement.v1alpha.DeploymentState[message.gatekeeperControllerManagerState] : message.gatekeeperControllerManagerState; + if (message.gatekeeperAudit != null && message.hasOwnProperty("gatekeeperAudit")) + object.gatekeeperAudit = options.enums === String ? $root.google.cloud.gkehub.configmanagement.v1alpha.DeploymentState[message.gatekeeperAudit] : message.gatekeeperAudit; + if (message.gatekeeperMutation != null && message.hasOwnProperty("gatekeeperMutation")) + object.gatekeeperMutation = options.enums === String ? $root.google.cloud.gkehub.configmanagement.v1alpha.DeploymentState[message.gatekeeperMutation] : message.gatekeeperMutation; + return object; + }; + + /** + * Converts this GatekeeperDeploymentState to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.configmanagement.v1alpha.GatekeeperDeploymentState + * @instance + * @returns {Object.} JSON object + */ + GatekeeperDeploymentState.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return GatekeeperDeploymentState; + })(); + + return v1alpha; + })(); + + configmanagement.v1beta = (function() { + + /** + * Namespace v1beta. + * @memberof google.cloud.gkehub.configmanagement + * @namespace + */ + var v1beta = {}; + + /** + * DeploymentState enum. + * @name google.cloud.gkehub.configmanagement.v1beta.DeploymentState + * @enum {number} + * @property {number} DEPLOYMENT_STATE_UNSPECIFIED=0 DEPLOYMENT_STATE_UNSPECIFIED value + * @property {number} NOT_INSTALLED=1 NOT_INSTALLED value + * @property {number} INSTALLED=2 INSTALLED value + * @property {number} ERROR=3 ERROR value + */ + v1beta.DeploymentState = (function() { + var valuesById = {}, values = Object.create(valuesById); + values[valuesById[0] = "DEPLOYMENT_STATE_UNSPECIFIED"] = 0; + values[valuesById[1] = "NOT_INSTALLED"] = 1; + values[valuesById[2] = "INSTALLED"] = 2; + values[valuesById[3] = "ERROR"] = 3; + return values; + })(); + + v1beta.MembershipState = (function() { + + /** + * Properties of a MembershipState. + * @memberof google.cloud.gkehub.configmanagement.v1beta + * @interface IMembershipState + * @property {string|null} [clusterName] MembershipState clusterName + * @property {google.cloud.gkehub.configmanagement.v1beta.IMembershipSpec|null} [membershipSpec] MembershipState membershipSpec + * @property {google.cloud.gkehub.configmanagement.v1beta.IOperatorState|null} [operatorState] MembershipState operatorState + * @property {google.cloud.gkehub.configmanagement.v1beta.IConfigSyncState|null} [configSyncState] MembershipState configSyncState + * @property {google.cloud.gkehub.configmanagement.v1beta.IPolicyControllerState|null} [policyControllerState] MembershipState policyControllerState + * @property {google.cloud.gkehub.configmanagement.v1beta.IBinauthzState|null} [binauthzState] MembershipState binauthzState + * @property {google.cloud.gkehub.configmanagement.v1beta.IHierarchyControllerState|null} [hierarchyControllerState] MembershipState hierarchyControllerState + */ + + /** + * Constructs a new MembershipState. + * @memberof google.cloud.gkehub.configmanagement.v1beta + * @classdesc Represents a MembershipState. + * @implements IMembershipState + * @constructor + * @param {google.cloud.gkehub.configmanagement.v1beta.IMembershipState=} [properties] Properties to set + */ + function MembershipState(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]]; + } + + /** + * MembershipState clusterName. + * @member {string} clusterName + * @memberof google.cloud.gkehub.configmanagement.v1beta.MembershipState + * @instance + */ + MembershipState.prototype.clusterName = ""; + + /** + * MembershipState membershipSpec. + * @member {google.cloud.gkehub.configmanagement.v1beta.IMembershipSpec|null|undefined} membershipSpec + * @memberof google.cloud.gkehub.configmanagement.v1beta.MembershipState + * @instance + */ + MembershipState.prototype.membershipSpec = null; + + /** + * MembershipState operatorState. + * @member {google.cloud.gkehub.configmanagement.v1beta.IOperatorState|null|undefined} operatorState + * @memberof google.cloud.gkehub.configmanagement.v1beta.MembershipState + * @instance + */ + MembershipState.prototype.operatorState = null; + + /** + * MembershipState configSyncState. + * @member {google.cloud.gkehub.configmanagement.v1beta.IConfigSyncState|null|undefined} configSyncState + * @memberof google.cloud.gkehub.configmanagement.v1beta.MembershipState + * @instance + */ + MembershipState.prototype.configSyncState = null; + + /** + * MembershipState policyControllerState. + * @member {google.cloud.gkehub.configmanagement.v1beta.IPolicyControllerState|null|undefined} policyControllerState + * @memberof google.cloud.gkehub.configmanagement.v1beta.MembershipState + * @instance + */ + MembershipState.prototype.policyControllerState = null; + + /** + * MembershipState binauthzState. + * @member {google.cloud.gkehub.configmanagement.v1beta.IBinauthzState|null|undefined} binauthzState + * @memberof google.cloud.gkehub.configmanagement.v1beta.MembershipState + * @instance + */ + MembershipState.prototype.binauthzState = null; + + /** + * MembershipState hierarchyControllerState. + * @member {google.cloud.gkehub.configmanagement.v1beta.IHierarchyControllerState|null|undefined} hierarchyControllerState + * @memberof google.cloud.gkehub.configmanagement.v1beta.MembershipState + * @instance + */ + MembershipState.prototype.hierarchyControllerState = null; + + /** + * Creates a new MembershipState instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.configmanagement.v1beta.MembershipState + * @static + * @param {google.cloud.gkehub.configmanagement.v1beta.IMembershipState=} [properties] Properties to set + * @returns {google.cloud.gkehub.configmanagement.v1beta.MembershipState} MembershipState instance + */ + MembershipState.create = function create(properties) { + return new MembershipState(properties); + }; + + /** + * Encodes the specified MembershipState message. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1beta.MembershipState.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.configmanagement.v1beta.MembershipState + * @static + * @param {google.cloud.gkehub.configmanagement.v1beta.IMembershipState} message MembershipState message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + MembershipState.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.clusterName != null && Object.hasOwnProperty.call(message, "clusterName")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.clusterName); + if (message.membershipSpec != null && Object.hasOwnProperty.call(message, "membershipSpec")) + $root.google.cloud.gkehub.configmanagement.v1beta.MembershipSpec.encode(message.membershipSpec, writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim(); + if (message.operatorState != null && Object.hasOwnProperty.call(message, "operatorState")) + $root.google.cloud.gkehub.configmanagement.v1beta.OperatorState.encode(message.operatorState, writer.uint32(/* id 3, wireType 2 =*/26).fork()).ldelim(); + if (message.configSyncState != null && Object.hasOwnProperty.call(message, "configSyncState")) + $root.google.cloud.gkehub.configmanagement.v1beta.ConfigSyncState.encode(message.configSyncState, writer.uint32(/* id 4, wireType 2 =*/34).fork()).ldelim(); + if (message.policyControllerState != null && Object.hasOwnProperty.call(message, "policyControllerState")) + $root.google.cloud.gkehub.configmanagement.v1beta.PolicyControllerState.encode(message.policyControllerState, writer.uint32(/* id 5, wireType 2 =*/42).fork()).ldelim(); + if (message.binauthzState != null && Object.hasOwnProperty.call(message, "binauthzState")) + $root.google.cloud.gkehub.configmanagement.v1beta.BinauthzState.encode(message.binauthzState, writer.uint32(/* id 6, wireType 2 =*/50).fork()).ldelim(); + if (message.hierarchyControllerState != null && Object.hasOwnProperty.call(message, "hierarchyControllerState")) + $root.google.cloud.gkehub.configmanagement.v1beta.HierarchyControllerState.encode(message.hierarchyControllerState, writer.uint32(/* id 7, wireType 2 =*/58).fork()).ldelim(); + return writer; + }; + + /** + * Encodes the specified MembershipState message, length delimited. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1beta.MembershipState.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.configmanagement.v1beta.MembershipState + * @static + * @param {google.cloud.gkehub.configmanagement.v1beta.IMembershipState} message MembershipState message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + MembershipState.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a MembershipState message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.configmanagement.v1beta.MembershipState + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.configmanagement.v1beta.MembershipState} MembershipState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + MembershipState.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.configmanagement.v1beta.MembershipState(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.clusterName = reader.string(); + break; + case 2: + message.membershipSpec = $root.google.cloud.gkehub.configmanagement.v1beta.MembershipSpec.decode(reader, reader.uint32()); + break; + case 3: + message.operatorState = $root.google.cloud.gkehub.configmanagement.v1beta.OperatorState.decode(reader, reader.uint32()); + break; + case 4: + message.configSyncState = $root.google.cloud.gkehub.configmanagement.v1beta.ConfigSyncState.decode(reader, reader.uint32()); + break; + case 5: + message.policyControllerState = $root.google.cloud.gkehub.configmanagement.v1beta.PolicyControllerState.decode(reader, reader.uint32()); + break; + case 6: + message.binauthzState = $root.google.cloud.gkehub.configmanagement.v1beta.BinauthzState.decode(reader, reader.uint32()); + break; + case 7: + message.hierarchyControllerState = $root.google.cloud.gkehub.configmanagement.v1beta.HierarchyControllerState.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a MembershipState message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.configmanagement.v1beta.MembershipState + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.configmanagement.v1beta.MembershipState} MembershipState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + MembershipState.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a MembershipState message. + * @function verify + * @memberof google.cloud.gkehub.configmanagement.v1beta.MembershipState + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + MembershipState.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.clusterName != null && message.hasOwnProperty("clusterName")) + if (!$util.isString(message.clusterName)) + return "clusterName: string expected"; + if (message.membershipSpec != null && message.hasOwnProperty("membershipSpec")) { + var error = $root.google.cloud.gkehub.configmanagement.v1beta.MembershipSpec.verify(message.membershipSpec); + if (error) + return "membershipSpec." + error; + } + if (message.operatorState != null && message.hasOwnProperty("operatorState")) { + var error = $root.google.cloud.gkehub.configmanagement.v1beta.OperatorState.verify(message.operatorState); + if (error) + return "operatorState." + error; + } + if (message.configSyncState != null && message.hasOwnProperty("configSyncState")) { + var error = $root.google.cloud.gkehub.configmanagement.v1beta.ConfigSyncState.verify(message.configSyncState); + if (error) + return "configSyncState." + error; + } + if (message.policyControllerState != null && message.hasOwnProperty("policyControllerState")) { + var error = $root.google.cloud.gkehub.configmanagement.v1beta.PolicyControllerState.verify(message.policyControllerState); + if (error) + return "policyControllerState." + error; + } + if (message.binauthzState != null && message.hasOwnProperty("binauthzState")) { + var error = $root.google.cloud.gkehub.configmanagement.v1beta.BinauthzState.verify(message.binauthzState); + if (error) + return "binauthzState." + error; + } + if (message.hierarchyControllerState != null && message.hasOwnProperty("hierarchyControllerState")) { + var error = $root.google.cloud.gkehub.configmanagement.v1beta.HierarchyControllerState.verify(message.hierarchyControllerState); + if (error) + return "hierarchyControllerState." + error; + } + return null; + }; + + /** + * Creates a MembershipState message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.configmanagement.v1beta.MembershipState + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.configmanagement.v1beta.MembershipState} MembershipState + */ + MembershipState.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.configmanagement.v1beta.MembershipState) + return object; + var message = new $root.google.cloud.gkehub.configmanagement.v1beta.MembershipState(); + if (object.clusterName != null) + message.clusterName = String(object.clusterName); + if (object.membershipSpec != null) { + if (typeof object.membershipSpec !== "object") + throw TypeError(".google.cloud.gkehub.configmanagement.v1beta.MembershipState.membershipSpec: object expected"); + message.membershipSpec = $root.google.cloud.gkehub.configmanagement.v1beta.MembershipSpec.fromObject(object.membershipSpec); + } + if (object.operatorState != null) { + if (typeof object.operatorState !== "object") + throw TypeError(".google.cloud.gkehub.configmanagement.v1beta.MembershipState.operatorState: object expected"); + message.operatorState = $root.google.cloud.gkehub.configmanagement.v1beta.OperatorState.fromObject(object.operatorState); + } + if (object.configSyncState != null) { + if (typeof object.configSyncState !== "object") + throw TypeError(".google.cloud.gkehub.configmanagement.v1beta.MembershipState.configSyncState: object expected"); + message.configSyncState = $root.google.cloud.gkehub.configmanagement.v1beta.ConfigSyncState.fromObject(object.configSyncState); + } + if (object.policyControllerState != null) { + if (typeof object.policyControllerState !== "object") + throw TypeError(".google.cloud.gkehub.configmanagement.v1beta.MembershipState.policyControllerState: object expected"); + message.policyControllerState = $root.google.cloud.gkehub.configmanagement.v1beta.PolicyControllerState.fromObject(object.policyControllerState); + } + if (object.binauthzState != null) { + if (typeof object.binauthzState !== "object") + throw TypeError(".google.cloud.gkehub.configmanagement.v1beta.MembershipState.binauthzState: object expected"); + message.binauthzState = $root.google.cloud.gkehub.configmanagement.v1beta.BinauthzState.fromObject(object.binauthzState); + } + if (object.hierarchyControllerState != null) { + if (typeof object.hierarchyControllerState !== "object") + throw TypeError(".google.cloud.gkehub.configmanagement.v1beta.MembershipState.hierarchyControllerState: object expected"); + message.hierarchyControllerState = $root.google.cloud.gkehub.configmanagement.v1beta.HierarchyControllerState.fromObject(object.hierarchyControllerState); + } + return message; + }; + + /** + * Creates a plain object from a MembershipState message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.configmanagement.v1beta.MembershipState + * @static + * @param {google.cloud.gkehub.configmanagement.v1beta.MembershipState} message MembershipState + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + MembershipState.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.clusterName = ""; + object.membershipSpec = null; + object.operatorState = null; + object.configSyncState = null; + object.policyControllerState = null; + object.binauthzState = null; + object.hierarchyControllerState = null; + } + if (message.clusterName != null && message.hasOwnProperty("clusterName")) + object.clusterName = message.clusterName; + if (message.membershipSpec != null && message.hasOwnProperty("membershipSpec")) + object.membershipSpec = $root.google.cloud.gkehub.configmanagement.v1beta.MembershipSpec.toObject(message.membershipSpec, options); + if (message.operatorState != null && message.hasOwnProperty("operatorState")) + object.operatorState = $root.google.cloud.gkehub.configmanagement.v1beta.OperatorState.toObject(message.operatorState, options); + if (message.configSyncState != null && message.hasOwnProperty("configSyncState")) + object.configSyncState = $root.google.cloud.gkehub.configmanagement.v1beta.ConfigSyncState.toObject(message.configSyncState, options); + if (message.policyControllerState != null && message.hasOwnProperty("policyControllerState")) + object.policyControllerState = $root.google.cloud.gkehub.configmanagement.v1beta.PolicyControllerState.toObject(message.policyControllerState, options); + if (message.binauthzState != null && message.hasOwnProperty("binauthzState")) + object.binauthzState = $root.google.cloud.gkehub.configmanagement.v1beta.BinauthzState.toObject(message.binauthzState, options); + if (message.hierarchyControllerState != null && message.hasOwnProperty("hierarchyControllerState")) + object.hierarchyControllerState = $root.google.cloud.gkehub.configmanagement.v1beta.HierarchyControllerState.toObject(message.hierarchyControllerState, options); + return object; + }; + + /** + * Converts this MembershipState to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.configmanagement.v1beta.MembershipState + * @instance + * @returns {Object.} JSON object + */ + MembershipState.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return MembershipState; + })(); + + v1beta.MembershipSpec = (function() { + + /** + * Properties of a MembershipSpec. + * @memberof google.cloud.gkehub.configmanagement.v1beta + * @interface IMembershipSpec + * @property {google.cloud.gkehub.configmanagement.v1beta.IConfigSync|null} [configSync] MembershipSpec configSync + * @property {google.cloud.gkehub.configmanagement.v1beta.IPolicyController|null} [policyController] MembershipSpec policyController + * @property {google.cloud.gkehub.configmanagement.v1beta.IBinauthzConfig|null} [binauthz] MembershipSpec binauthz + * @property {google.cloud.gkehub.configmanagement.v1beta.IHierarchyControllerConfig|null} [hierarchyController] MembershipSpec hierarchyController + * @property {string|null} [version] MembershipSpec version + */ + + /** + * Constructs a new MembershipSpec. + * @memberof google.cloud.gkehub.configmanagement.v1beta + * @classdesc Represents a MembershipSpec. + * @implements IMembershipSpec + * @constructor + * @param {google.cloud.gkehub.configmanagement.v1beta.IMembershipSpec=} [properties] Properties to set + */ + function MembershipSpec(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]]; + } + + /** + * MembershipSpec configSync. + * @member {google.cloud.gkehub.configmanagement.v1beta.IConfigSync|null|undefined} configSync + * @memberof google.cloud.gkehub.configmanagement.v1beta.MembershipSpec + * @instance + */ + MembershipSpec.prototype.configSync = null; + + /** + * MembershipSpec policyController. + * @member {google.cloud.gkehub.configmanagement.v1beta.IPolicyController|null|undefined} policyController + * @memberof google.cloud.gkehub.configmanagement.v1beta.MembershipSpec + * @instance + */ + MembershipSpec.prototype.policyController = null; + + /** + * MembershipSpec binauthz. + * @member {google.cloud.gkehub.configmanagement.v1beta.IBinauthzConfig|null|undefined} binauthz + * @memberof google.cloud.gkehub.configmanagement.v1beta.MembershipSpec + * @instance + */ + MembershipSpec.prototype.binauthz = null; + + /** + * MembershipSpec hierarchyController. + * @member {google.cloud.gkehub.configmanagement.v1beta.IHierarchyControllerConfig|null|undefined} hierarchyController + * @memberof google.cloud.gkehub.configmanagement.v1beta.MembershipSpec + * @instance + */ + MembershipSpec.prototype.hierarchyController = null; + + /** + * MembershipSpec version. + * @member {string} version + * @memberof google.cloud.gkehub.configmanagement.v1beta.MembershipSpec + * @instance + */ + MembershipSpec.prototype.version = ""; + + /** + * Creates a new MembershipSpec instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.configmanagement.v1beta.MembershipSpec + * @static + * @param {google.cloud.gkehub.configmanagement.v1beta.IMembershipSpec=} [properties] Properties to set + * @returns {google.cloud.gkehub.configmanagement.v1beta.MembershipSpec} MembershipSpec instance + */ + MembershipSpec.create = function create(properties) { + return new MembershipSpec(properties); + }; + + /** + * Encodes the specified MembershipSpec message. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1beta.MembershipSpec.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.configmanagement.v1beta.MembershipSpec + * @static + * @param {google.cloud.gkehub.configmanagement.v1beta.IMembershipSpec} message MembershipSpec message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + MembershipSpec.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.configSync != null && Object.hasOwnProperty.call(message, "configSync")) + $root.google.cloud.gkehub.configmanagement.v1beta.ConfigSync.encode(message.configSync, writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim(); + if (message.policyController != null && Object.hasOwnProperty.call(message, "policyController")) + $root.google.cloud.gkehub.configmanagement.v1beta.PolicyController.encode(message.policyController, writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim(); + if (message.binauthz != null && Object.hasOwnProperty.call(message, "binauthz")) + $root.google.cloud.gkehub.configmanagement.v1beta.BinauthzConfig.encode(message.binauthz, writer.uint32(/* id 3, wireType 2 =*/26).fork()).ldelim(); + if (message.hierarchyController != null && Object.hasOwnProperty.call(message, "hierarchyController")) + $root.google.cloud.gkehub.configmanagement.v1beta.HierarchyControllerConfig.encode(message.hierarchyController, writer.uint32(/* id 4, wireType 2 =*/34).fork()).ldelim(); + if (message.version != null && Object.hasOwnProperty.call(message, "version")) + writer.uint32(/* id 10, wireType 2 =*/82).string(message.version); + return writer; + }; + + /** + * Encodes the specified MembershipSpec message, length delimited. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1beta.MembershipSpec.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.configmanagement.v1beta.MembershipSpec + * @static + * @param {google.cloud.gkehub.configmanagement.v1beta.IMembershipSpec} message MembershipSpec message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + MembershipSpec.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a MembershipSpec message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.configmanagement.v1beta.MembershipSpec + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.configmanagement.v1beta.MembershipSpec} MembershipSpec + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + MembershipSpec.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.configmanagement.v1beta.MembershipSpec(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.configSync = $root.google.cloud.gkehub.configmanagement.v1beta.ConfigSync.decode(reader, reader.uint32()); + break; + case 2: + message.policyController = $root.google.cloud.gkehub.configmanagement.v1beta.PolicyController.decode(reader, reader.uint32()); + break; + case 3: + message.binauthz = $root.google.cloud.gkehub.configmanagement.v1beta.BinauthzConfig.decode(reader, reader.uint32()); + break; + case 4: + message.hierarchyController = $root.google.cloud.gkehub.configmanagement.v1beta.HierarchyControllerConfig.decode(reader, reader.uint32()); + break; + case 10: + message.version = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a MembershipSpec message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.configmanagement.v1beta.MembershipSpec + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.configmanagement.v1beta.MembershipSpec} MembershipSpec + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + MembershipSpec.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a MembershipSpec message. + * @function verify + * @memberof google.cloud.gkehub.configmanagement.v1beta.MembershipSpec + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + MembershipSpec.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.configSync != null && message.hasOwnProperty("configSync")) { + var error = $root.google.cloud.gkehub.configmanagement.v1beta.ConfigSync.verify(message.configSync); + if (error) + return "configSync." + error; + } + if (message.policyController != null && message.hasOwnProperty("policyController")) { + var error = $root.google.cloud.gkehub.configmanagement.v1beta.PolicyController.verify(message.policyController); + if (error) + return "policyController." + error; + } + if (message.binauthz != null && message.hasOwnProperty("binauthz")) { + var error = $root.google.cloud.gkehub.configmanagement.v1beta.BinauthzConfig.verify(message.binauthz); + if (error) + return "binauthz." + error; + } + if (message.hierarchyController != null && message.hasOwnProperty("hierarchyController")) { + var error = $root.google.cloud.gkehub.configmanagement.v1beta.HierarchyControllerConfig.verify(message.hierarchyController); + if (error) + return "hierarchyController." + error; + } + if (message.version != null && message.hasOwnProperty("version")) + if (!$util.isString(message.version)) + return "version: string expected"; + return null; + }; + + /** + * Creates a MembershipSpec message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.configmanagement.v1beta.MembershipSpec + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.configmanagement.v1beta.MembershipSpec} MembershipSpec + */ + MembershipSpec.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.configmanagement.v1beta.MembershipSpec) + return object; + var message = new $root.google.cloud.gkehub.configmanagement.v1beta.MembershipSpec(); + if (object.configSync != null) { + if (typeof object.configSync !== "object") + throw TypeError(".google.cloud.gkehub.configmanagement.v1beta.MembershipSpec.configSync: object expected"); + message.configSync = $root.google.cloud.gkehub.configmanagement.v1beta.ConfigSync.fromObject(object.configSync); + } + if (object.policyController != null) { + if (typeof object.policyController !== "object") + throw TypeError(".google.cloud.gkehub.configmanagement.v1beta.MembershipSpec.policyController: object expected"); + message.policyController = $root.google.cloud.gkehub.configmanagement.v1beta.PolicyController.fromObject(object.policyController); + } + if (object.binauthz != null) { + if (typeof object.binauthz !== "object") + throw TypeError(".google.cloud.gkehub.configmanagement.v1beta.MembershipSpec.binauthz: object expected"); + message.binauthz = $root.google.cloud.gkehub.configmanagement.v1beta.BinauthzConfig.fromObject(object.binauthz); + } + if (object.hierarchyController != null) { + if (typeof object.hierarchyController !== "object") + throw TypeError(".google.cloud.gkehub.configmanagement.v1beta.MembershipSpec.hierarchyController: object expected"); + message.hierarchyController = $root.google.cloud.gkehub.configmanagement.v1beta.HierarchyControllerConfig.fromObject(object.hierarchyController); + } + if (object.version != null) + message.version = String(object.version); + return message; + }; + + /** + * Creates a plain object from a MembershipSpec message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.configmanagement.v1beta.MembershipSpec + * @static + * @param {google.cloud.gkehub.configmanagement.v1beta.MembershipSpec} message MembershipSpec + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + MembershipSpec.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.configSync = null; + object.policyController = null; + object.binauthz = null; + object.hierarchyController = null; + object.version = ""; + } + if (message.configSync != null && message.hasOwnProperty("configSync")) + object.configSync = $root.google.cloud.gkehub.configmanagement.v1beta.ConfigSync.toObject(message.configSync, options); + if (message.policyController != null && message.hasOwnProperty("policyController")) + object.policyController = $root.google.cloud.gkehub.configmanagement.v1beta.PolicyController.toObject(message.policyController, options); + if (message.binauthz != null && message.hasOwnProperty("binauthz")) + object.binauthz = $root.google.cloud.gkehub.configmanagement.v1beta.BinauthzConfig.toObject(message.binauthz, options); + if (message.hierarchyController != null && message.hasOwnProperty("hierarchyController")) + object.hierarchyController = $root.google.cloud.gkehub.configmanagement.v1beta.HierarchyControllerConfig.toObject(message.hierarchyController, options); + if (message.version != null && message.hasOwnProperty("version")) + object.version = message.version; + return object; + }; + + /** + * Converts this MembershipSpec to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.configmanagement.v1beta.MembershipSpec + * @instance + * @returns {Object.} JSON object + */ + MembershipSpec.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return MembershipSpec; + })(); + + v1beta.ConfigSync = (function() { + + /** + * Properties of a ConfigSync. + * @memberof google.cloud.gkehub.configmanagement.v1beta + * @interface IConfigSync + * @property {google.cloud.gkehub.configmanagement.v1beta.IGitConfig|null} [git] ConfigSync git + * @property {string|null} [sourceFormat] ConfigSync sourceFormat + */ + + /** + * Constructs a new ConfigSync. + * @memberof google.cloud.gkehub.configmanagement.v1beta + * @classdesc Represents a ConfigSync. + * @implements IConfigSync + * @constructor + * @param {google.cloud.gkehub.configmanagement.v1beta.IConfigSync=} [properties] Properties to set + */ + function ConfigSync(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]]; + } + + /** + * ConfigSync git. + * @member {google.cloud.gkehub.configmanagement.v1beta.IGitConfig|null|undefined} git + * @memberof google.cloud.gkehub.configmanagement.v1beta.ConfigSync + * @instance + */ + ConfigSync.prototype.git = null; + + /** + * ConfigSync sourceFormat. + * @member {string} sourceFormat + * @memberof google.cloud.gkehub.configmanagement.v1beta.ConfigSync + * @instance + */ + ConfigSync.prototype.sourceFormat = ""; + + /** + * Creates a new ConfigSync instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.configmanagement.v1beta.ConfigSync + * @static + * @param {google.cloud.gkehub.configmanagement.v1beta.IConfigSync=} [properties] Properties to set + * @returns {google.cloud.gkehub.configmanagement.v1beta.ConfigSync} ConfigSync instance + */ + ConfigSync.create = function create(properties) { + return new ConfigSync(properties); + }; + + /** + * Encodes the specified ConfigSync message. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1beta.ConfigSync.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.configmanagement.v1beta.ConfigSync + * @static + * @param {google.cloud.gkehub.configmanagement.v1beta.IConfigSync} message ConfigSync message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + ConfigSync.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.git != null && Object.hasOwnProperty.call(message, "git")) + $root.google.cloud.gkehub.configmanagement.v1beta.GitConfig.encode(message.git, writer.uint32(/* id 7, wireType 2 =*/58).fork()).ldelim(); + if (message.sourceFormat != null && Object.hasOwnProperty.call(message, "sourceFormat")) + writer.uint32(/* id 8, wireType 2 =*/66).string(message.sourceFormat); + return writer; + }; + + /** + * Encodes the specified ConfigSync message, length delimited. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1beta.ConfigSync.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.configmanagement.v1beta.ConfigSync + * @static + * @param {google.cloud.gkehub.configmanagement.v1beta.IConfigSync} message ConfigSync message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + ConfigSync.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a ConfigSync message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.configmanagement.v1beta.ConfigSync + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.configmanagement.v1beta.ConfigSync} ConfigSync + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + ConfigSync.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.configmanagement.v1beta.ConfigSync(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 7: + message.git = $root.google.cloud.gkehub.configmanagement.v1beta.GitConfig.decode(reader, reader.uint32()); + break; + case 8: + message.sourceFormat = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a ConfigSync message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.configmanagement.v1beta.ConfigSync + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.configmanagement.v1beta.ConfigSync} ConfigSync + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + ConfigSync.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a ConfigSync message. + * @function verify + * @memberof google.cloud.gkehub.configmanagement.v1beta.ConfigSync + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + ConfigSync.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.git != null && message.hasOwnProperty("git")) { + var error = $root.google.cloud.gkehub.configmanagement.v1beta.GitConfig.verify(message.git); + if (error) + return "git." + error; + } + if (message.sourceFormat != null && message.hasOwnProperty("sourceFormat")) + if (!$util.isString(message.sourceFormat)) + return "sourceFormat: string expected"; + return null; + }; + + /** + * Creates a ConfigSync message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.configmanagement.v1beta.ConfigSync + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.configmanagement.v1beta.ConfigSync} ConfigSync + */ + ConfigSync.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.configmanagement.v1beta.ConfigSync) + return object; + var message = new $root.google.cloud.gkehub.configmanagement.v1beta.ConfigSync(); + if (object.git != null) { + if (typeof object.git !== "object") + throw TypeError(".google.cloud.gkehub.configmanagement.v1beta.ConfigSync.git: object expected"); + message.git = $root.google.cloud.gkehub.configmanagement.v1beta.GitConfig.fromObject(object.git); + } + if (object.sourceFormat != null) + message.sourceFormat = String(object.sourceFormat); + return message; + }; + + /** + * Creates a plain object from a ConfigSync message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.configmanagement.v1beta.ConfigSync + * @static + * @param {google.cloud.gkehub.configmanagement.v1beta.ConfigSync} message ConfigSync + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + ConfigSync.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.git = null; + object.sourceFormat = ""; + } + if (message.git != null && message.hasOwnProperty("git")) + object.git = $root.google.cloud.gkehub.configmanagement.v1beta.GitConfig.toObject(message.git, options); + if (message.sourceFormat != null && message.hasOwnProperty("sourceFormat")) + object.sourceFormat = message.sourceFormat; + return object; + }; + + /** + * Converts this ConfigSync to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.configmanagement.v1beta.ConfigSync + * @instance + * @returns {Object.} JSON object + */ + ConfigSync.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return ConfigSync; + })(); + + v1beta.GitConfig = (function() { + + /** + * Properties of a GitConfig. + * @memberof google.cloud.gkehub.configmanagement.v1beta + * @interface IGitConfig + * @property {string|null} [syncRepo] GitConfig syncRepo + * @property {string|null} [syncBranch] GitConfig syncBranch + * @property {string|null} [policyDir] GitConfig policyDir + * @property {number|Long|null} [syncWaitSecs] GitConfig syncWaitSecs + * @property {string|null} [syncRev] GitConfig syncRev + * @property {string|null} [secretType] GitConfig secretType + * @property {string|null} [httpsProxy] GitConfig httpsProxy + * @property {string|null} [gcpServiceAccountEmail] GitConfig gcpServiceAccountEmail + */ + + /** + * Constructs a new GitConfig. + * @memberof google.cloud.gkehub.configmanagement.v1beta + * @classdesc Represents a GitConfig. + * @implements IGitConfig + * @constructor + * @param {google.cloud.gkehub.configmanagement.v1beta.IGitConfig=} [properties] Properties to set + */ + function GitConfig(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]]; + } + + /** + * GitConfig syncRepo. + * @member {string} syncRepo + * @memberof google.cloud.gkehub.configmanagement.v1beta.GitConfig + * @instance + */ + GitConfig.prototype.syncRepo = ""; + + /** + * GitConfig syncBranch. + * @member {string} syncBranch + * @memberof google.cloud.gkehub.configmanagement.v1beta.GitConfig + * @instance + */ + GitConfig.prototype.syncBranch = ""; + + /** + * GitConfig policyDir. + * @member {string} policyDir + * @memberof google.cloud.gkehub.configmanagement.v1beta.GitConfig + * @instance + */ + GitConfig.prototype.policyDir = ""; + + /** + * GitConfig syncWaitSecs. + * @member {number|Long} syncWaitSecs + * @memberof google.cloud.gkehub.configmanagement.v1beta.GitConfig + * @instance + */ + GitConfig.prototype.syncWaitSecs = $util.Long ? $util.Long.fromBits(0,0,false) : 0; + + /** + * GitConfig syncRev. + * @member {string} syncRev + * @memberof google.cloud.gkehub.configmanagement.v1beta.GitConfig + * @instance + */ + GitConfig.prototype.syncRev = ""; + + /** + * GitConfig secretType. + * @member {string} secretType + * @memberof google.cloud.gkehub.configmanagement.v1beta.GitConfig + * @instance + */ + GitConfig.prototype.secretType = ""; + + /** + * GitConfig httpsProxy. + * @member {string} httpsProxy + * @memberof google.cloud.gkehub.configmanagement.v1beta.GitConfig + * @instance + */ + GitConfig.prototype.httpsProxy = ""; + + /** + * GitConfig gcpServiceAccountEmail. + * @member {string} gcpServiceAccountEmail + * @memberof google.cloud.gkehub.configmanagement.v1beta.GitConfig + * @instance + */ + GitConfig.prototype.gcpServiceAccountEmail = ""; + + /** + * Creates a new GitConfig instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.configmanagement.v1beta.GitConfig + * @static + * @param {google.cloud.gkehub.configmanagement.v1beta.IGitConfig=} [properties] Properties to set + * @returns {google.cloud.gkehub.configmanagement.v1beta.GitConfig} GitConfig instance + */ + GitConfig.create = function create(properties) { + return new GitConfig(properties); + }; + + /** + * Encodes the specified GitConfig message. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1beta.GitConfig.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.configmanagement.v1beta.GitConfig + * @static + * @param {google.cloud.gkehub.configmanagement.v1beta.IGitConfig} message GitConfig message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + GitConfig.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.syncRepo != null && Object.hasOwnProperty.call(message, "syncRepo")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.syncRepo); + if (message.syncBranch != null && Object.hasOwnProperty.call(message, "syncBranch")) + writer.uint32(/* id 2, wireType 2 =*/18).string(message.syncBranch); + if (message.policyDir != null && Object.hasOwnProperty.call(message, "policyDir")) + writer.uint32(/* id 3, wireType 2 =*/26).string(message.policyDir); + if (message.syncWaitSecs != null && Object.hasOwnProperty.call(message, "syncWaitSecs")) + writer.uint32(/* id 4, wireType 0 =*/32).int64(message.syncWaitSecs); + if (message.syncRev != null && Object.hasOwnProperty.call(message, "syncRev")) + writer.uint32(/* id 5, wireType 2 =*/42).string(message.syncRev); + if (message.secretType != null && Object.hasOwnProperty.call(message, "secretType")) + writer.uint32(/* id 6, wireType 2 =*/50).string(message.secretType); + if (message.httpsProxy != null && Object.hasOwnProperty.call(message, "httpsProxy")) + writer.uint32(/* id 7, wireType 2 =*/58).string(message.httpsProxy); + if (message.gcpServiceAccountEmail != null && Object.hasOwnProperty.call(message, "gcpServiceAccountEmail")) + writer.uint32(/* id 8, wireType 2 =*/66).string(message.gcpServiceAccountEmail); + return writer; + }; + + /** + * Encodes the specified GitConfig message, length delimited. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1beta.GitConfig.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.configmanagement.v1beta.GitConfig + * @static + * @param {google.cloud.gkehub.configmanagement.v1beta.IGitConfig} message GitConfig message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + GitConfig.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a GitConfig message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.configmanagement.v1beta.GitConfig + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.configmanagement.v1beta.GitConfig} GitConfig + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + GitConfig.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.configmanagement.v1beta.GitConfig(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.syncRepo = reader.string(); + break; + case 2: + message.syncBranch = reader.string(); + break; + case 3: + message.policyDir = reader.string(); + break; + case 4: + message.syncWaitSecs = reader.int64(); + break; + case 5: + message.syncRev = reader.string(); + break; + case 6: + message.secretType = reader.string(); + break; + case 7: + message.httpsProxy = reader.string(); + break; + case 8: + message.gcpServiceAccountEmail = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a GitConfig message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.configmanagement.v1beta.GitConfig + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.configmanagement.v1beta.GitConfig} GitConfig + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + GitConfig.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a GitConfig message. + * @function verify + * @memberof google.cloud.gkehub.configmanagement.v1beta.GitConfig + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + GitConfig.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.syncRepo != null && message.hasOwnProperty("syncRepo")) + if (!$util.isString(message.syncRepo)) + return "syncRepo: string expected"; + if (message.syncBranch != null && message.hasOwnProperty("syncBranch")) + if (!$util.isString(message.syncBranch)) + return "syncBranch: string expected"; + if (message.policyDir != null && message.hasOwnProperty("policyDir")) + if (!$util.isString(message.policyDir)) + return "policyDir: string expected"; + if (message.syncWaitSecs != null && message.hasOwnProperty("syncWaitSecs")) + if (!$util.isInteger(message.syncWaitSecs) && !(message.syncWaitSecs && $util.isInteger(message.syncWaitSecs.low) && $util.isInteger(message.syncWaitSecs.high))) + return "syncWaitSecs: integer|Long expected"; + if (message.syncRev != null && message.hasOwnProperty("syncRev")) + if (!$util.isString(message.syncRev)) + return "syncRev: string expected"; + if (message.secretType != null && message.hasOwnProperty("secretType")) + if (!$util.isString(message.secretType)) + return "secretType: string expected"; + if (message.httpsProxy != null && message.hasOwnProperty("httpsProxy")) + if (!$util.isString(message.httpsProxy)) + return "httpsProxy: string expected"; + if (message.gcpServiceAccountEmail != null && message.hasOwnProperty("gcpServiceAccountEmail")) + if (!$util.isString(message.gcpServiceAccountEmail)) + return "gcpServiceAccountEmail: string expected"; + return null; + }; + + /** + * Creates a GitConfig message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.configmanagement.v1beta.GitConfig + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.configmanagement.v1beta.GitConfig} GitConfig + */ + GitConfig.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.configmanagement.v1beta.GitConfig) + return object; + var message = new $root.google.cloud.gkehub.configmanagement.v1beta.GitConfig(); + if (object.syncRepo != null) + message.syncRepo = String(object.syncRepo); + if (object.syncBranch != null) + message.syncBranch = String(object.syncBranch); + if (object.policyDir != null) + message.policyDir = String(object.policyDir); + if (object.syncWaitSecs != null) + if ($util.Long) + (message.syncWaitSecs = $util.Long.fromValue(object.syncWaitSecs)).unsigned = false; + else if (typeof object.syncWaitSecs === "string") + message.syncWaitSecs = parseInt(object.syncWaitSecs, 10); + else if (typeof object.syncWaitSecs === "number") + message.syncWaitSecs = object.syncWaitSecs; + else if (typeof object.syncWaitSecs === "object") + message.syncWaitSecs = new $util.LongBits(object.syncWaitSecs.low >>> 0, object.syncWaitSecs.high >>> 0).toNumber(); + if (object.syncRev != null) + message.syncRev = String(object.syncRev); + if (object.secretType != null) + message.secretType = String(object.secretType); + if (object.httpsProxy != null) + message.httpsProxy = String(object.httpsProxy); + if (object.gcpServiceAccountEmail != null) + message.gcpServiceAccountEmail = String(object.gcpServiceAccountEmail); + return message; + }; + + /** + * Creates a plain object from a GitConfig message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.configmanagement.v1beta.GitConfig + * @static + * @param {google.cloud.gkehub.configmanagement.v1beta.GitConfig} message GitConfig + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + GitConfig.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.syncRepo = ""; + object.syncBranch = ""; + object.policyDir = ""; + if ($util.Long) { + var long = new $util.Long(0, 0, false); + object.syncWaitSecs = options.longs === String ? long.toString() : options.longs === Number ? long.toNumber() : long; + } else + object.syncWaitSecs = options.longs === String ? "0" : 0; + object.syncRev = ""; + object.secretType = ""; + object.httpsProxy = ""; + object.gcpServiceAccountEmail = ""; + } + if (message.syncRepo != null && message.hasOwnProperty("syncRepo")) + object.syncRepo = message.syncRepo; + if (message.syncBranch != null && message.hasOwnProperty("syncBranch")) + object.syncBranch = message.syncBranch; + if (message.policyDir != null && message.hasOwnProperty("policyDir")) + object.policyDir = message.policyDir; + if (message.syncWaitSecs != null && message.hasOwnProperty("syncWaitSecs")) + if (typeof message.syncWaitSecs === "number") + object.syncWaitSecs = options.longs === String ? String(message.syncWaitSecs) : message.syncWaitSecs; + else + object.syncWaitSecs = options.longs === String ? $util.Long.prototype.toString.call(message.syncWaitSecs) : options.longs === Number ? new $util.LongBits(message.syncWaitSecs.low >>> 0, message.syncWaitSecs.high >>> 0).toNumber() : message.syncWaitSecs; + if (message.syncRev != null && message.hasOwnProperty("syncRev")) + object.syncRev = message.syncRev; + if (message.secretType != null && message.hasOwnProperty("secretType")) + object.secretType = message.secretType; + if (message.httpsProxy != null && message.hasOwnProperty("httpsProxy")) + object.httpsProxy = message.httpsProxy; + if (message.gcpServiceAccountEmail != null && message.hasOwnProperty("gcpServiceAccountEmail")) + object.gcpServiceAccountEmail = message.gcpServiceAccountEmail; + return object; + }; + + /** + * Converts this GitConfig to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.configmanagement.v1beta.GitConfig + * @instance + * @returns {Object.} JSON object + */ + GitConfig.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return GitConfig; + })(); + + v1beta.PolicyController = (function() { + + /** + * Properties of a PolicyController. + * @memberof google.cloud.gkehub.configmanagement.v1beta + * @interface IPolicyController + * @property {boolean|null} [enabled] PolicyController enabled + * @property {boolean|null} [templateLibraryInstalled] PolicyController templateLibraryInstalled + * @property {number|Long|null} [auditIntervalSeconds] PolicyController auditIntervalSeconds + * @property {Array.|null} [exemptableNamespaces] PolicyController exemptableNamespaces + * @property {boolean|null} [referentialRulesEnabled] PolicyController referentialRulesEnabled + * @property {boolean|null} [logDeniesEnabled] PolicyController logDeniesEnabled + */ + + /** + * Constructs a new PolicyController. + * @memberof google.cloud.gkehub.configmanagement.v1beta + * @classdesc Represents a PolicyController. + * @implements IPolicyController + * @constructor + * @param {google.cloud.gkehub.configmanagement.v1beta.IPolicyController=} [properties] Properties to set + */ + function PolicyController(properties) { + this.exemptableNamespaces = []; + 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]]; + } + + /** + * PolicyController enabled. + * @member {boolean} enabled + * @memberof google.cloud.gkehub.configmanagement.v1beta.PolicyController + * @instance + */ + PolicyController.prototype.enabled = false; + + /** + * PolicyController templateLibraryInstalled. + * @member {boolean|null|undefined} templateLibraryInstalled + * @memberof google.cloud.gkehub.configmanagement.v1beta.PolicyController + * @instance + */ + PolicyController.prototype.templateLibraryInstalled = null; + + /** + * PolicyController auditIntervalSeconds. + * @member {number|Long|null|undefined} auditIntervalSeconds + * @memberof google.cloud.gkehub.configmanagement.v1beta.PolicyController + * @instance + */ + PolicyController.prototype.auditIntervalSeconds = null; + + /** + * PolicyController exemptableNamespaces. + * @member {Array.} exemptableNamespaces + * @memberof google.cloud.gkehub.configmanagement.v1beta.PolicyController + * @instance + */ + PolicyController.prototype.exemptableNamespaces = $util.emptyArray; + + /** + * PolicyController referentialRulesEnabled. + * @member {boolean} referentialRulesEnabled + * @memberof google.cloud.gkehub.configmanagement.v1beta.PolicyController + * @instance + */ + PolicyController.prototype.referentialRulesEnabled = false; + + /** + * PolicyController logDeniesEnabled. + * @member {boolean} logDeniesEnabled + * @memberof google.cloud.gkehub.configmanagement.v1beta.PolicyController + * @instance + */ + PolicyController.prototype.logDeniesEnabled = false; + + // OneOf field names bound to virtual getters and setters + var $oneOfFields; + + /** + * PolicyController _templateLibraryInstalled. + * @member {"templateLibraryInstalled"|undefined} _templateLibraryInstalled + * @memberof google.cloud.gkehub.configmanagement.v1beta.PolicyController + * @instance + */ + Object.defineProperty(PolicyController.prototype, "_templateLibraryInstalled", { + get: $util.oneOfGetter($oneOfFields = ["templateLibraryInstalled"]), + set: $util.oneOfSetter($oneOfFields) + }); + + /** + * PolicyController _auditIntervalSeconds. + * @member {"auditIntervalSeconds"|undefined} _auditIntervalSeconds + * @memberof google.cloud.gkehub.configmanagement.v1beta.PolicyController + * @instance + */ + Object.defineProperty(PolicyController.prototype, "_auditIntervalSeconds", { + get: $util.oneOfGetter($oneOfFields = ["auditIntervalSeconds"]), + set: $util.oneOfSetter($oneOfFields) + }); + + /** + * Creates a new PolicyController instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.configmanagement.v1beta.PolicyController + * @static + * @param {google.cloud.gkehub.configmanagement.v1beta.IPolicyController=} [properties] Properties to set + * @returns {google.cloud.gkehub.configmanagement.v1beta.PolicyController} PolicyController instance + */ + PolicyController.create = function create(properties) { + return new PolicyController(properties); + }; + + /** + * Encodes the specified PolicyController message. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1beta.PolicyController.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.configmanagement.v1beta.PolicyController + * @static + * @param {google.cloud.gkehub.configmanagement.v1beta.IPolicyController} message PolicyController message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + PolicyController.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.templateLibraryInstalled != null && Object.hasOwnProperty.call(message, "templateLibraryInstalled")) + writer.uint32(/* id 2, wireType 0 =*/16).bool(message.templateLibraryInstalled); + if (message.auditIntervalSeconds != null && Object.hasOwnProperty.call(message, "auditIntervalSeconds")) + writer.uint32(/* id 3, wireType 0 =*/24).int64(message.auditIntervalSeconds); + if (message.exemptableNamespaces != null && message.exemptableNamespaces.length) + for (var i = 0; i < message.exemptableNamespaces.length; ++i) + writer.uint32(/* id 4, wireType 2 =*/34).string(message.exemptableNamespaces[i]); + if (message.referentialRulesEnabled != null && Object.hasOwnProperty.call(message, "referentialRulesEnabled")) + writer.uint32(/* id 5, wireType 0 =*/40).bool(message.referentialRulesEnabled); + if (message.logDeniesEnabled != null && Object.hasOwnProperty.call(message, "logDeniesEnabled")) + writer.uint32(/* id 6, wireType 0 =*/48).bool(message.logDeniesEnabled); + return writer; + }; + + /** + * Encodes the specified PolicyController message, length delimited. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1beta.PolicyController.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.configmanagement.v1beta.PolicyController + * @static + * @param {google.cloud.gkehub.configmanagement.v1beta.IPolicyController} message PolicyController message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + PolicyController.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a PolicyController message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.configmanagement.v1beta.PolicyController + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.configmanagement.v1beta.PolicyController} PolicyController + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + PolicyController.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.configmanagement.v1beta.PolicyController(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.enabled = reader.bool(); + break; + case 2: + message.templateLibraryInstalled = reader.bool(); + break; + case 3: + message.auditIntervalSeconds = reader.int64(); + break; + case 4: + if (!(message.exemptableNamespaces && message.exemptableNamespaces.length)) + message.exemptableNamespaces = []; + message.exemptableNamespaces.push(reader.string()); + break; + case 5: + message.referentialRulesEnabled = reader.bool(); + break; + case 6: + message.logDeniesEnabled = reader.bool(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a PolicyController message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.configmanagement.v1beta.PolicyController + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.configmanagement.v1beta.PolicyController} PolicyController + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + PolicyController.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a PolicyController message. + * @function verify + * @memberof google.cloud.gkehub.configmanagement.v1beta.PolicyController + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + PolicyController.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.templateLibraryInstalled != null && message.hasOwnProperty("templateLibraryInstalled")) { + properties._templateLibraryInstalled = 1; + if (typeof message.templateLibraryInstalled !== "boolean") + return "templateLibraryInstalled: boolean expected"; + } + if (message.auditIntervalSeconds != null && message.hasOwnProperty("auditIntervalSeconds")) { + properties._auditIntervalSeconds = 1; + if (!$util.isInteger(message.auditIntervalSeconds) && !(message.auditIntervalSeconds && $util.isInteger(message.auditIntervalSeconds.low) && $util.isInteger(message.auditIntervalSeconds.high))) + return "auditIntervalSeconds: integer|Long expected"; + } + if (message.exemptableNamespaces != null && message.hasOwnProperty("exemptableNamespaces")) { + if (!Array.isArray(message.exemptableNamespaces)) + return "exemptableNamespaces: array expected"; + for (var i = 0; i < message.exemptableNamespaces.length; ++i) + if (!$util.isString(message.exemptableNamespaces[i])) + return "exemptableNamespaces: string[] expected"; + } + if (message.referentialRulesEnabled != null && message.hasOwnProperty("referentialRulesEnabled")) + if (typeof message.referentialRulesEnabled !== "boolean") + return "referentialRulesEnabled: boolean expected"; + if (message.logDeniesEnabled != null && message.hasOwnProperty("logDeniesEnabled")) + if (typeof message.logDeniesEnabled !== "boolean") + return "logDeniesEnabled: boolean expected"; + return null; + }; + + /** + * Creates a PolicyController message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.configmanagement.v1beta.PolicyController + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.configmanagement.v1beta.PolicyController} PolicyController + */ + PolicyController.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.configmanagement.v1beta.PolicyController) + return object; + var message = new $root.google.cloud.gkehub.configmanagement.v1beta.PolicyController(); + if (object.enabled != null) + message.enabled = Boolean(object.enabled); + if (object.templateLibraryInstalled != null) + message.templateLibraryInstalled = Boolean(object.templateLibraryInstalled); + if (object.auditIntervalSeconds != null) + if ($util.Long) + (message.auditIntervalSeconds = $util.Long.fromValue(object.auditIntervalSeconds)).unsigned = false; + else if (typeof object.auditIntervalSeconds === "string") + message.auditIntervalSeconds = parseInt(object.auditIntervalSeconds, 10); + else if (typeof object.auditIntervalSeconds === "number") + message.auditIntervalSeconds = object.auditIntervalSeconds; + else if (typeof object.auditIntervalSeconds === "object") + message.auditIntervalSeconds = new $util.LongBits(object.auditIntervalSeconds.low >>> 0, object.auditIntervalSeconds.high >>> 0).toNumber(); + if (object.exemptableNamespaces) { + if (!Array.isArray(object.exemptableNamespaces)) + throw TypeError(".google.cloud.gkehub.configmanagement.v1beta.PolicyController.exemptableNamespaces: array expected"); + message.exemptableNamespaces = []; + for (var i = 0; i < object.exemptableNamespaces.length; ++i) + message.exemptableNamespaces[i] = String(object.exemptableNamespaces[i]); + } + if (object.referentialRulesEnabled != null) + message.referentialRulesEnabled = Boolean(object.referentialRulesEnabled); + if (object.logDeniesEnabled != null) + message.logDeniesEnabled = Boolean(object.logDeniesEnabled); + return message; + }; + + /** + * Creates a plain object from a PolicyController message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.configmanagement.v1beta.PolicyController + * @static + * @param {google.cloud.gkehub.configmanagement.v1beta.PolicyController} message PolicyController + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + PolicyController.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.arrays || options.defaults) + object.exemptableNamespaces = []; + if (options.defaults) { + object.enabled = false; + object.referentialRulesEnabled = false; + object.logDeniesEnabled = false; + } + if (message.enabled != null && message.hasOwnProperty("enabled")) + object.enabled = message.enabled; + if (message.templateLibraryInstalled != null && message.hasOwnProperty("templateLibraryInstalled")) { + object.templateLibraryInstalled = message.templateLibraryInstalled; + if (options.oneofs) + object._templateLibraryInstalled = "templateLibraryInstalled"; + } + if (message.auditIntervalSeconds != null && message.hasOwnProperty("auditIntervalSeconds")) { + if (typeof message.auditIntervalSeconds === "number") + object.auditIntervalSeconds = options.longs === String ? String(message.auditIntervalSeconds) : message.auditIntervalSeconds; + else + object.auditIntervalSeconds = options.longs === String ? $util.Long.prototype.toString.call(message.auditIntervalSeconds) : options.longs === Number ? new $util.LongBits(message.auditIntervalSeconds.low >>> 0, message.auditIntervalSeconds.high >>> 0).toNumber() : message.auditIntervalSeconds; + if (options.oneofs) + object._auditIntervalSeconds = "auditIntervalSeconds"; + } + if (message.exemptableNamespaces && message.exemptableNamespaces.length) { + object.exemptableNamespaces = []; + for (var j = 0; j < message.exemptableNamespaces.length; ++j) + object.exemptableNamespaces[j] = message.exemptableNamespaces[j]; + } + if (message.referentialRulesEnabled != null && message.hasOwnProperty("referentialRulesEnabled")) + object.referentialRulesEnabled = message.referentialRulesEnabled; + if (message.logDeniesEnabled != null && message.hasOwnProperty("logDeniesEnabled")) + object.logDeniesEnabled = message.logDeniesEnabled; + return object; + }; + + /** + * Converts this PolicyController to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.configmanagement.v1beta.PolicyController + * @instance + * @returns {Object.} JSON object + */ + PolicyController.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return PolicyController; + })(); + + v1beta.BinauthzConfig = (function() { + + /** + * Properties of a BinauthzConfig. + * @memberof google.cloud.gkehub.configmanagement.v1beta + * @interface IBinauthzConfig + * @property {boolean|null} [enabled] BinauthzConfig enabled + */ + + /** + * Constructs a new BinauthzConfig. + * @memberof google.cloud.gkehub.configmanagement.v1beta + * @classdesc Represents a BinauthzConfig. + * @implements IBinauthzConfig + * @constructor + * @param {google.cloud.gkehub.configmanagement.v1beta.IBinauthzConfig=} [properties] Properties to set + */ + function BinauthzConfig(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]]; + } + + /** + * BinauthzConfig enabled. + * @member {boolean} enabled + * @memberof google.cloud.gkehub.configmanagement.v1beta.BinauthzConfig + * @instance + */ + BinauthzConfig.prototype.enabled = false; + + /** + * Creates a new BinauthzConfig instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.configmanagement.v1beta.BinauthzConfig + * @static + * @param {google.cloud.gkehub.configmanagement.v1beta.IBinauthzConfig=} [properties] Properties to set + * @returns {google.cloud.gkehub.configmanagement.v1beta.BinauthzConfig} BinauthzConfig instance + */ + BinauthzConfig.create = function create(properties) { + return new BinauthzConfig(properties); + }; + + /** + * Encodes the specified BinauthzConfig message. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1beta.BinauthzConfig.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.configmanagement.v1beta.BinauthzConfig + * @static + * @param {google.cloud.gkehub.configmanagement.v1beta.IBinauthzConfig} message BinauthzConfig message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + BinauthzConfig.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 BinauthzConfig message, length delimited. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1beta.BinauthzConfig.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.configmanagement.v1beta.BinauthzConfig + * @static + * @param {google.cloud.gkehub.configmanagement.v1beta.IBinauthzConfig} message BinauthzConfig message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + BinauthzConfig.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a BinauthzConfig message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.configmanagement.v1beta.BinauthzConfig + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.configmanagement.v1beta.BinauthzConfig} BinauthzConfig + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + BinauthzConfig.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.configmanagement.v1beta.BinauthzConfig(); + 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 BinauthzConfig message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.configmanagement.v1beta.BinauthzConfig + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.configmanagement.v1beta.BinauthzConfig} BinauthzConfig + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + BinauthzConfig.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a BinauthzConfig message. + * @function verify + * @memberof google.cloud.gkehub.configmanagement.v1beta.BinauthzConfig + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + BinauthzConfig.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 BinauthzConfig message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.configmanagement.v1beta.BinauthzConfig + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.configmanagement.v1beta.BinauthzConfig} BinauthzConfig + */ + BinauthzConfig.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.configmanagement.v1beta.BinauthzConfig) + return object; + var message = new $root.google.cloud.gkehub.configmanagement.v1beta.BinauthzConfig(); + if (object.enabled != null) + message.enabled = Boolean(object.enabled); + return message; + }; + + /** + * Creates a plain object from a BinauthzConfig message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.configmanagement.v1beta.BinauthzConfig + * @static + * @param {google.cloud.gkehub.configmanagement.v1beta.BinauthzConfig} message BinauthzConfig + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + BinauthzConfig.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 BinauthzConfig to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.configmanagement.v1beta.BinauthzConfig + * @instance + * @returns {Object.} JSON object + */ + BinauthzConfig.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return BinauthzConfig; + })(); + + v1beta.HierarchyControllerConfig = (function() { + + /** + * Properties of a HierarchyControllerConfig. + * @memberof google.cloud.gkehub.configmanagement.v1beta + * @interface IHierarchyControllerConfig + * @property {boolean|null} [enabled] HierarchyControllerConfig enabled + * @property {boolean|null} [enablePodTreeLabels] HierarchyControllerConfig enablePodTreeLabels + * @property {boolean|null} [enableHierarchicalResourceQuota] HierarchyControllerConfig enableHierarchicalResourceQuota + */ + + /** + * Constructs a new HierarchyControllerConfig. + * @memberof google.cloud.gkehub.configmanagement.v1beta + * @classdesc Represents a HierarchyControllerConfig. + * @implements IHierarchyControllerConfig + * @constructor + * @param {google.cloud.gkehub.configmanagement.v1beta.IHierarchyControllerConfig=} [properties] Properties to set + */ + function HierarchyControllerConfig(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]]; + } + + /** + * HierarchyControllerConfig enabled. + * @member {boolean} enabled + * @memberof google.cloud.gkehub.configmanagement.v1beta.HierarchyControllerConfig + * @instance + */ + HierarchyControllerConfig.prototype.enabled = false; + + /** + * HierarchyControllerConfig enablePodTreeLabels. + * @member {boolean} enablePodTreeLabels + * @memberof google.cloud.gkehub.configmanagement.v1beta.HierarchyControllerConfig + * @instance + */ + HierarchyControllerConfig.prototype.enablePodTreeLabels = false; + + /** + * HierarchyControllerConfig enableHierarchicalResourceQuota. + * @member {boolean} enableHierarchicalResourceQuota + * @memberof google.cloud.gkehub.configmanagement.v1beta.HierarchyControllerConfig + * @instance + */ + HierarchyControllerConfig.prototype.enableHierarchicalResourceQuota = false; + + /** + * Creates a new HierarchyControllerConfig instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.configmanagement.v1beta.HierarchyControllerConfig + * @static + * @param {google.cloud.gkehub.configmanagement.v1beta.IHierarchyControllerConfig=} [properties] Properties to set + * @returns {google.cloud.gkehub.configmanagement.v1beta.HierarchyControllerConfig} HierarchyControllerConfig instance + */ + HierarchyControllerConfig.create = function create(properties) { + return new HierarchyControllerConfig(properties); + }; + + /** + * Encodes the specified HierarchyControllerConfig message. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1beta.HierarchyControllerConfig.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.configmanagement.v1beta.HierarchyControllerConfig + * @static + * @param {google.cloud.gkehub.configmanagement.v1beta.IHierarchyControllerConfig} message HierarchyControllerConfig message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + HierarchyControllerConfig.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.enablePodTreeLabels != null && Object.hasOwnProperty.call(message, "enablePodTreeLabels")) + writer.uint32(/* id 2, wireType 0 =*/16).bool(message.enablePodTreeLabels); + if (message.enableHierarchicalResourceQuota != null && Object.hasOwnProperty.call(message, "enableHierarchicalResourceQuota")) + writer.uint32(/* id 3, wireType 0 =*/24).bool(message.enableHierarchicalResourceQuota); + return writer; + }; + + /** + * Encodes the specified HierarchyControllerConfig message, length delimited. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1beta.HierarchyControllerConfig.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.configmanagement.v1beta.HierarchyControllerConfig + * @static + * @param {google.cloud.gkehub.configmanagement.v1beta.IHierarchyControllerConfig} message HierarchyControllerConfig message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + HierarchyControllerConfig.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a HierarchyControllerConfig message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.configmanagement.v1beta.HierarchyControllerConfig + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.configmanagement.v1beta.HierarchyControllerConfig} HierarchyControllerConfig + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + HierarchyControllerConfig.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.configmanagement.v1beta.HierarchyControllerConfig(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.enabled = reader.bool(); + break; + case 2: + message.enablePodTreeLabels = reader.bool(); + break; + case 3: + message.enableHierarchicalResourceQuota = reader.bool(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a HierarchyControllerConfig message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.configmanagement.v1beta.HierarchyControllerConfig + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.configmanagement.v1beta.HierarchyControllerConfig} HierarchyControllerConfig + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + HierarchyControllerConfig.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a HierarchyControllerConfig message. + * @function verify + * @memberof google.cloud.gkehub.configmanagement.v1beta.HierarchyControllerConfig + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + HierarchyControllerConfig.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.enablePodTreeLabels != null && message.hasOwnProperty("enablePodTreeLabels")) + if (typeof message.enablePodTreeLabels !== "boolean") + return "enablePodTreeLabels: boolean expected"; + if (message.enableHierarchicalResourceQuota != null && message.hasOwnProperty("enableHierarchicalResourceQuota")) + if (typeof message.enableHierarchicalResourceQuota !== "boolean") + return "enableHierarchicalResourceQuota: boolean expected"; + return null; + }; + + /** + * Creates a HierarchyControllerConfig message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.configmanagement.v1beta.HierarchyControllerConfig + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.configmanagement.v1beta.HierarchyControllerConfig} HierarchyControllerConfig + */ + HierarchyControllerConfig.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.configmanagement.v1beta.HierarchyControllerConfig) + return object; + var message = new $root.google.cloud.gkehub.configmanagement.v1beta.HierarchyControllerConfig(); + if (object.enabled != null) + message.enabled = Boolean(object.enabled); + if (object.enablePodTreeLabels != null) + message.enablePodTreeLabels = Boolean(object.enablePodTreeLabels); + if (object.enableHierarchicalResourceQuota != null) + message.enableHierarchicalResourceQuota = Boolean(object.enableHierarchicalResourceQuota); + return message; + }; + + /** + * Creates a plain object from a HierarchyControllerConfig message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.configmanagement.v1beta.HierarchyControllerConfig + * @static + * @param {google.cloud.gkehub.configmanagement.v1beta.HierarchyControllerConfig} message HierarchyControllerConfig + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + HierarchyControllerConfig.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.enabled = false; + object.enablePodTreeLabels = false; + object.enableHierarchicalResourceQuota = false; + } + if (message.enabled != null && message.hasOwnProperty("enabled")) + object.enabled = message.enabled; + if (message.enablePodTreeLabels != null && message.hasOwnProperty("enablePodTreeLabels")) + object.enablePodTreeLabels = message.enablePodTreeLabels; + if (message.enableHierarchicalResourceQuota != null && message.hasOwnProperty("enableHierarchicalResourceQuota")) + object.enableHierarchicalResourceQuota = message.enableHierarchicalResourceQuota; + return object; + }; + + /** + * Converts this HierarchyControllerConfig to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.configmanagement.v1beta.HierarchyControllerConfig + * @instance + * @returns {Object.} JSON object + */ + HierarchyControllerConfig.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return HierarchyControllerConfig; + })(); + + v1beta.HierarchyControllerDeploymentState = (function() { + + /** + * Properties of a HierarchyControllerDeploymentState. + * @memberof google.cloud.gkehub.configmanagement.v1beta + * @interface IHierarchyControllerDeploymentState + * @property {google.cloud.gkehub.configmanagement.v1beta.DeploymentState|null} [hnc] HierarchyControllerDeploymentState hnc + * @property {google.cloud.gkehub.configmanagement.v1beta.DeploymentState|null} [extension] HierarchyControllerDeploymentState extension + */ + + /** + * Constructs a new HierarchyControllerDeploymentState. + * @memberof google.cloud.gkehub.configmanagement.v1beta + * @classdesc Represents a HierarchyControllerDeploymentState. + * @implements IHierarchyControllerDeploymentState + * @constructor + * @param {google.cloud.gkehub.configmanagement.v1beta.IHierarchyControllerDeploymentState=} [properties] Properties to set + */ + function HierarchyControllerDeploymentState(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]]; + } + + /** + * HierarchyControllerDeploymentState hnc. + * @member {google.cloud.gkehub.configmanagement.v1beta.DeploymentState} hnc + * @memberof google.cloud.gkehub.configmanagement.v1beta.HierarchyControllerDeploymentState + * @instance + */ + HierarchyControllerDeploymentState.prototype.hnc = 0; + + /** + * HierarchyControllerDeploymentState extension. + * @member {google.cloud.gkehub.configmanagement.v1beta.DeploymentState} extension + * @memberof google.cloud.gkehub.configmanagement.v1beta.HierarchyControllerDeploymentState + * @instance + */ + HierarchyControllerDeploymentState.prototype.extension = 0; + + /** + * Creates a new HierarchyControllerDeploymentState instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.configmanagement.v1beta.HierarchyControllerDeploymentState + * @static + * @param {google.cloud.gkehub.configmanagement.v1beta.IHierarchyControllerDeploymentState=} [properties] Properties to set + * @returns {google.cloud.gkehub.configmanagement.v1beta.HierarchyControllerDeploymentState} HierarchyControllerDeploymentState instance + */ + HierarchyControllerDeploymentState.create = function create(properties) { + return new HierarchyControllerDeploymentState(properties); + }; + + /** + * Encodes the specified HierarchyControllerDeploymentState message. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1beta.HierarchyControllerDeploymentState.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.configmanagement.v1beta.HierarchyControllerDeploymentState + * @static + * @param {google.cloud.gkehub.configmanagement.v1beta.IHierarchyControllerDeploymentState} message HierarchyControllerDeploymentState message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + HierarchyControllerDeploymentState.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.hnc != null && Object.hasOwnProperty.call(message, "hnc")) + writer.uint32(/* id 1, wireType 0 =*/8).int32(message.hnc); + if (message.extension != null && Object.hasOwnProperty.call(message, "extension")) + writer.uint32(/* id 2, wireType 0 =*/16).int32(message.extension); + return writer; + }; + + /** + * Encodes the specified HierarchyControllerDeploymentState message, length delimited. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1beta.HierarchyControllerDeploymentState.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.configmanagement.v1beta.HierarchyControllerDeploymentState + * @static + * @param {google.cloud.gkehub.configmanagement.v1beta.IHierarchyControllerDeploymentState} message HierarchyControllerDeploymentState message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + HierarchyControllerDeploymentState.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a HierarchyControllerDeploymentState message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.configmanagement.v1beta.HierarchyControllerDeploymentState + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.configmanagement.v1beta.HierarchyControllerDeploymentState} HierarchyControllerDeploymentState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + HierarchyControllerDeploymentState.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.configmanagement.v1beta.HierarchyControllerDeploymentState(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.hnc = reader.int32(); + break; + case 2: + message.extension = reader.int32(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a HierarchyControllerDeploymentState message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.configmanagement.v1beta.HierarchyControllerDeploymentState + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.configmanagement.v1beta.HierarchyControllerDeploymentState} HierarchyControllerDeploymentState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + HierarchyControllerDeploymentState.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a HierarchyControllerDeploymentState message. + * @function verify + * @memberof google.cloud.gkehub.configmanagement.v1beta.HierarchyControllerDeploymentState + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + HierarchyControllerDeploymentState.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.hnc != null && message.hasOwnProperty("hnc")) + switch (message.hnc) { + default: + return "hnc: enum value expected"; + case 0: + case 1: + case 2: + case 3: + break; + } + if (message.extension != null && message.hasOwnProperty("extension")) + switch (message.extension) { + default: + return "extension: enum value expected"; + case 0: + case 1: + case 2: + case 3: + break; + } + return null; + }; + + /** + * Creates a HierarchyControllerDeploymentState message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.configmanagement.v1beta.HierarchyControllerDeploymentState + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.configmanagement.v1beta.HierarchyControllerDeploymentState} HierarchyControllerDeploymentState + */ + HierarchyControllerDeploymentState.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.configmanagement.v1beta.HierarchyControllerDeploymentState) + return object; + var message = new $root.google.cloud.gkehub.configmanagement.v1beta.HierarchyControllerDeploymentState(); + switch (object.hnc) { + case "DEPLOYMENT_STATE_UNSPECIFIED": + case 0: + message.hnc = 0; + break; + case "NOT_INSTALLED": + case 1: + message.hnc = 1; + break; + case "INSTALLED": + case 2: + message.hnc = 2; + break; + case "ERROR": + case 3: + message.hnc = 3; + break; + } + switch (object.extension) { + case "DEPLOYMENT_STATE_UNSPECIFIED": + case 0: + message.extension = 0; + break; + case "NOT_INSTALLED": + case 1: + message.extension = 1; + break; + case "INSTALLED": + case 2: + message.extension = 2; + break; + case "ERROR": + case 3: + message.extension = 3; + break; + } + return message; + }; + + /** + * Creates a plain object from a HierarchyControllerDeploymentState message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.configmanagement.v1beta.HierarchyControllerDeploymentState + * @static + * @param {google.cloud.gkehub.configmanagement.v1beta.HierarchyControllerDeploymentState} message HierarchyControllerDeploymentState + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + HierarchyControllerDeploymentState.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.hnc = options.enums === String ? "DEPLOYMENT_STATE_UNSPECIFIED" : 0; + object.extension = options.enums === String ? "DEPLOYMENT_STATE_UNSPECIFIED" : 0; + } + if (message.hnc != null && message.hasOwnProperty("hnc")) + object.hnc = options.enums === String ? $root.google.cloud.gkehub.configmanagement.v1beta.DeploymentState[message.hnc] : message.hnc; + if (message.extension != null && message.hasOwnProperty("extension")) + object.extension = options.enums === String ? $root.google.cloud.gkehub.configmanagement.v1beta.DeploymentState[message.extension] : message.extension; + return object; + }; + + /** + * Converts this HierarchyControllerDeploymentState to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.configmanagement.v1beta.HierarchyControllerDeploymentState + * @instance + * @returns {Object.} JSON object + */ + HierarchyControllerDeploymentState.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return HierarchyControllerDeploymentState; + })(); + + v1beta.HierarchyControllerVersion = (function() { + + /** + * Properties of a HierarchyControllerVersion. + * @memberof google.cloud.gkehub.configmanagement.v1beta + * @interface IHierarchyControllerVersion + * @property {string|null} [hnc] HierarchyControllerVersion hnc + * @property {string|null} [extension] HierarchyControllerVersion extension + */ + + /** + * Constructs a new HierarchyControllerVersion. + * @memberof google.cloud.gkehub.configmanagement.v1beta + * @classdesc Represents a HierarchyControllerVersion. + * @implements IHierarchyControllerVersion + * @constructor + * @param {google.cloud.gkehub.configmanagement.v1beta.IHierarchyControllerVersion=} [properties] Properties to set + */ + function HierarchyControllerVersion(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]]; + } + + /** + * HierarchyControllerVersion hnc. + * @member {string} hnc + * @memberof google.cloud.gkehub.configmanagement.v1beta.HierarchyControllerVersion + * @instance + */ + HierarchyControllerVersion.prototype.hnc = ""; + + /** + * HierarchyControllerVersion extension. + * @member {string} extension + * @memberof google.cloud.gkehub.configmanagement.v1beta.HierarchyControllerVersion + * @instance + */ + HierarchyControllerVersion.prototype.extension = ""; + + /** + * Creates a new HierarchyControllerVersion instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.configmanagement.v1beta.HierarchyControllerVersion + * @static + * @param {google.cloud.gkehub.configmanagement.v1beta.IHierarchyControllerVersion=} [properties] Properties to set + * @returns {google.cloud.gkehub.configmanagement.v1beta.HierarchyControllerVersion} HierarchyControllerVersion instance + */ + HierarchyControllerVersion.create = function create(properties) { + return new HierarchyControllerVersion(properties); + }; + + /** + * Encodes the specified HierarchyControllerVersion message. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1beta.HierarchyControllerVersion.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.configmanagement.v1beta.HierarchyControllerVersion + * @static + * @param {google.cloud.gkehub.configmanagement.v1beta.IHierarchyControllerVersion} message HierarchyControllerVersion message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + HierarchyControllerVersion.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.hnc != null && Object.hasOwnProperty.call(message, "hnc")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.hnc); + if (message.extension != null && Object.hasOwnProperty.call(message, "extension")) + writer.uint32(/* id 2, wireType 2 =*/18).string(message.extension); + return writer; + }; + + /** + * Encodes the specified HierarchyControllerVersion message, length delimited. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1beta.HierarchyControllerVersion.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.configmanagement.v1beta.HierarchyControllerVersion + * @static + * @param {google.cloud.gkehub.configmanagement.v1beta.IHierarchyControllerVersion} message HierarchyControllerVersion message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + HierarchyControllerVersion.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a HierarchyControllerVersion message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.configmanagement.v1beta.HierarchyControllerVersion + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.configmanagement.v1beta.HierarchyControllerVersion} HierarchyControllerVersion + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + HierarchyControllerVersion.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.configmanagement.v1beta.HierarchyControllerVersion(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.hnc = reader.string(); + break; + case 2: + message.extension = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a HierarchyControllerVersion message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.configmanagement.v1beta.HierarchyControllerVersion + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.configmanagement.v1beta.HierarchyControllerVersion} HierarchyControllerVersion + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + HierarchyControllerVersion.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a HierarchyControllerVersion message. + * @function verify + * @memberof google.cloud.gkehub.configmanagement.v1beta.HierarchyControllerVersion + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + HierarchyControllerVersion.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.hnc != null && message.hasOwnProperty("hnc")) + if (!$util.isString(message.hnc)) + return "hnc: string expected"; + if (message.extension != null && message.hasOwnProperty("extension")) + if (!$util.isString(message.extension)) + return "extension: string expected"; + return null; + }; + + /** + * Creates a HierarchyControllerVersion message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.configmanagement.v1beta.HierarchyControllerVersion + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.configmanagement.v1beta.HierarchyControllerVersion} HierarchyControllerVersion + */ + HierarchyControllerVersion.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.configmanagement.v1beta.HierarchyControllerVersion) + return object; + var message = new $root.google.cloud.gkehub.configmanagement.v1beta.HierarchyControllerVersion(); + if (object.hnc != null) + message.hnc = String(object.hnc); + if (object.extension != null) + message.extension = String(object.extension); + return message; + }; + + /** + * Creates a plain object from a HierarchyControllerVersion message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.configmanagement.v1beta.HierarchyControllerVersion + * @static + * @param {google.cloud.gkehub.configmanagement.v1beta.HierarchyControllerVersion} message HierarchyControllerVersion + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + HierarchyControllerVersion.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.hnc = ""; + object.extension = ""; + } + if (message.hnc != null && message.hasOwnProperty("hnc")) + object.hnc = message.hnc; + if (message.extension != null && message.hasOwnProperty("extension")) + object.extension = message.extension; + return object; + }; + + /** + * Converts this HierarchyControllerVersion to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.configmanagement.v1beta.HierarchyControllerVersion + * @instance + * @returns {Object.} JSON object + */ + HierarchyControllerVersion.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return HierarchyControllerVersion; + })(); + + v1beta.HierarchyControllerState = (function() { + + /** + * Properties of a HierarchyControllerState. + * @memberof google.cloud.gkehub.configmanagement.v1beta + * @interface IHierarchyControllerState + * @property {google.cloud.gkehub.configmanagement.v1beta.IHierarchyControllerVersion|null} [version] HierarchyControllerState version + * @property {google.cloud.gkehub.configmanagement.v1beta.IHierarchyControllerDeploymentState|null} [state] HierarchyControllerState state + */ + + /** + * Constructs a new HierarchyControllerState. + * @memberof google.cloud.gkehub.configmanagement.v1beta + * @classdesc Represents a HierarchyControllerState. + * @implements IHierarchyControllerState + * @constructor + * @param {google.cloud.gkehub.configmanagement.v1beta.IHierarchyControllerState=} [properties] Properties to set + */ + function HierarchyControllerState(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]]; + } + + /** + * HierarchyControllerState version. + * @member {google.cloud.gkehub.configmanagement.v1beta.IHierarchyControllerVersion|null|undefined} version + * @memberof google.cloud.gkehub.configmanagement.v1beta.HierarchyControllerState + * @instance + */ + HierarchyControllerState.prototype.version = null; + + /** + * HierarchyControllerState state. + * @member {google.cloud.gkehub.configmanagement.v1beta.IHierarchyControllerDeploymentState|null|undefined} state + * @memberof google.cloud.gkehub.configmanagement.v1beta.HierarchyControllerState + * @instance + */ + HierarchyControllerState.prototype.state = null; + + /** + * Creates a new HierarchyControllerState instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.configmanagement.v1beta.HierarchyControllerState + * @static + * @param {google.cloud.gkehub.configmanagement.v1beta.IHierarchyControllerState=} [properties] Properties to set + * @returns {google.cloud.gkehub.configmanagement.v1beta.HierarchyControllerState} HierarchyControllerState instance + */ + HierarchyControllerState.create = function create(properties) { + return new HierarchyControllerState(properties); + }; + + /** + * Encodes the specified HierarchyControllerState message. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1beta.HierarchyControllerState.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.configmanagement.v1beta.HierarchyControllerState + * @static + * @param {google.cloud.gkehub.configmanagement.v1beta.IHierarchyControllerState} message HierarchyControllerState message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + HierarchyControllerState.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.version != null && Object.hasOwnProperty.call(message, "version")) + $root.google.cloud.gkehub.configmanagement.v1beta.HierarchyControllerVersion.encode(message.version, writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim(); + if (message.state != null && Object.hasOwnProperty.call(message, "state")) + $root.google.cloud.gkehub.configmanagement.v1beta.HierarchyControllerDeploymentState.encode(message.state, writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim(); + return writer; + }; + + /** + * Encodes the specified HierarchyControllerState message, length delimited. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1beta.HierarchyControllerState.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.configmanagement.v1beta.HierarchyControllerState + * @static + * @param {google.cloud.gkehub.configmanagement.v1beta.IHierarchyControllerState} message HierarchyControllerState message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + HierarchyControllerState.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a HierarchyControllerState message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.configmanagement.v1beta.HierarchyControllerState + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.configmanagement.v1beta.HierarchyControllerState} HierarchyControllerState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + HierarchyControllerState.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.configmanagement.v1beta.HierarchyControllerState(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.version = $root.google.cloud.gkehub.configmanagement.v1beta.HierarchyControllerVersion.decode(reader, reader.uint32()); + break; + case 2: + message.state = $root.google.cloud.gkehub.configmanagement.v1beta.HierarchyControllerDeploymentState.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a HierarchyControllerState message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.configmanagement.v1beta.HierarchyControllerState + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.configmanagement.v1beta.HierarchyControllerState} HierarchyControllerState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + HierarchyControllerState.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a HierarchyControllerState message. + * @function verify + * @memberof google.cloud.gkehub.configmanagement.v1beta.HierarchyControllerState + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + HierarchyControllerState.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.version != null && message.hasOwnProperty("version")) { + var error = $root.google.cloud.gkehub.configmanagement.v1beta.HierarchyControllerVersion.verify(message.version); + if (error) + return "version." + error; + } + if (message.state != null && message.hasOwnProperty("state")) { + var error = $root.google.cloud.gkehub.configmanagement.v1beta.HierarchyControllerDeploymentState.verify(message.state); + if (error) + return "state." + error; + } + return null; + }; + + /** + * Creates a HierarchyControllerState message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.configmanagement.v1beta.HierarchyControllerState + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.configmanagement.v1beta.HierarchyControllerState} HierarchyControllerState + */ + HierarchyControllerState.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.configmanagement.v1beta.HierarchyControllerState) + return object; + var message = new $root.google.cloud.gkehub.configmanagement.v1beta.HierarchyControllerState(); + if (object.version != null) { + if (typeof object.version !== "object") + throw TypeError(".google.cloud.gkehub.configmanagement.v1beta.HierarchyControllerState.version: object expected"); + message.version = $root.google.cloud.gkehub.configmanagement.v1beta.HierarchyControllerVersion.fromObject(object.version); + } + if (object.state != null) { + if (typeof object.state !== "object") + throw TypeError(".google.cloud.gkehub.configmanagement.v1beta.HierarchyControllerState.state: object expected"); + message.state = $root.google.cloud.gkehub.configmanagement.v1beta.HierarchyControllerDeploymentState.fromObject(object.state); + } + return message; + }; + + /** + * Creates a plain object from a HierarchyControllerState message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.configmanagement.v1beta.HierarchyControllerState + * @static + * @param {google.cloud.gkehub.configmanagement.v1beta.HierarchyControllerState} message HierarchyControllerState + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + HierarchyControllerState.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.version = null; + object.state = null; + } + if (message.version != null && message.hasOwnProperty("version")) + object.version = $root.google.cloud.gkehub.configmanagement.v1beta.HierarchyControllerVersion.toObject(message.version, options); + if (message.state != null && message.hasOwnProperty("state")) + object.state = $root.google.cloud.gkehub.configmanagement.v1beta.HierarchyControllerDeploymentState.toObject(message.state, options); + return object; + }; + + /** + * Converts this HierarchyControllerState to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.configmanagement.v1beta.HierarchyControllerState + * @instance + * @returns {Object.} JSON object + */ + HierarchyControllerState.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return HierarchyControllerState; + })(); + + v1beta.OperatorState = (function() { + + /** + * Properties of an OperatorState. + * @memberof google.cloud.gkehub.configmanagement.v1beta + * @interface IOperatorState + * @property {string|null} [version] OperatorState version + * @property {google.cloud.gkehub.configmanagement.v1beta.DeploymentState|null} [deploymentState] OperatorState deploymentState + * @property {Array.|null} [errors] OperatorState errors + */ + + /** + * Constructs a new OperatorState. + * @memberof google.cloud.gkehub.configmanagement.v1beta + * @classdesc Represents an OperatorState. + * @implements IOperatorState + * @constructor + * @param {google.cloud.gkehub.configmanagement.v1beta.IOperatorState=} [properties] Properties to set + */ + function OperatorState(properties) { + this.errors = []; + 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]]; + } + + /** + * OperatorState version. + * @member {string} version + * @memberof google.cloud.gkehub.configmanagement.v1beta.OperatorState + * @instance + */ + OperatorState.prototype.version = ""; + + /** + * OperatorState deploymentState. + * @member {google.cloud.gkehub.configmanagement.v1beta.DeploymentState} deploymentState + * @memberof google.cloud.gkehub.configmanagement.v1beta.OperatorState + * @instance + */ + OperatorState.prototype.deploymentState = 0; + + /** + * OperatorState errors. + * @member {Array.} errors + * @memberof google.cloud.gkehub.configmanagement.v1beta.OperatorState + * @instance + */ + OperatorState.prototype.errors = $util.emptyArray; + + /** + * Creates a new OperatorState instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.configmanagement.v1beta.OperatorState + * @static + * @param {google.cloud.gkehub.configmanagement.v1beta.IOperatorState=} [properties] Properties to set + * @returns {google.cloud.gkehub.configmanagement.v1beta.OperatorState} OperatorState instance + */ + OperatorState.create = function create(properties) { + return new OperatorState(properties); + }; + + /** + * Encodes the specified OperatorState message. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1beta.OperatorState.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.configmanagement.v1beta.OperatorState + * @static + * @param {google.cloud.gkehub.configmanagement.v1beta.IOperatorState} message OperatorState message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + OperatorState.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.version != null && Object.hasOwnProperty.call(message, "version")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.version); + if (message.deploymentState != null && Object.hasOwnProperty.call(message, "deploymentState")) + writer.uint32(/* id 2, wireType 0 =*/16).int32(message.deploymentState); + if (message.errors != null && message.errors.length) + for (var i = 0; i < message.errors.length; ++i) + $root.google.cloud.gkehub.configmanagement.v1beta.InstallError.encode(message.errors[i], writer.uint32(/* id 3, wireType 2 =*/26).fork()).ldelim(); + return writer; + }; + + /** + * Encodes the specified OperatorState message, length delimited. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1beta.OperatorState.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.configmanagement.v1beta.OperatorState + * @static + * @param {google.cloud.gkehub.configmanagement.v1beta.IOperatorState} message OperatorState message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + OperatorState.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes an OperatorState message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.configmanagement.v1beta.OperatorState + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.configmanagement.v1beta.OperatorState} OperatorState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + OperatorState.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.configmanagement.v1beta.OperatorState(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.version = reader.string(); + break; + case 2: + message.deploymentState = reader.int32(); + break; + case 3: + if (!(message.errors && message.errors.length)) + message.errors = []; + message.errors.push($root.google.cloud.gkehub.configmanagement.v1beta.InstallError.decode(reader, reader.uint32())); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes an OperatorState message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.configmanagement.v1beta.OperatorState + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.configmanagement.v1beta.OperatorState} OperatorState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + OperatorState.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies an OperatorState message. + * @function verify + * @memberof google.cloud.gkehub.configmanagement.v1beta.OperatorState + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + OperatorState.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.version != null && message.hasOwnProperty("version")) + if (!$util.isString(message.version)) + return "version: string expected"; + if (message.deploymentState != null && message.hasOwnProperty("deploymentState")) + switch (message.deploymentState) { + default: + return "deploymentState: enum value expected"; + case 0: + case 1: + case 2: + case 3: + break; + } + if (message.errors != null && message.hasOwnProperty("errors")) { + if (!Array.isArray(message.errors)) + return "errors: array expected"; + for (var i = 0; i < message.errors.length; ++i) { + var error = $root.google.cloud.gkehub.configmanagement.v1beta.InstallError.verify(message.errors[i]); + if (error) + return "errors." + error; + } + } + return null; + }; + + /** + * Creates an OperatorState message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.configmanagement.v1beta.OperatorState + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.configmanagement.v1beta.OperatorState} OperatorState + */ + OperatorState.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.configmanagement.v1beta.OperatorState) + return object; + var message = new $root.google.cloud.gkehub.configmanagement.v1beta.OperatorState(); + if (object.version != null) + message.version = String(object.version); + switch (object.deploymentState) { + case "DEPLOYMENT_STATE_UNSPECIFIED": + case 0: + message.deploymentState = 0; + break; + case "NOT_INSTALLED": + case 1: + message.deploymentState = 1; + break; + case "INSTALLED": + case 2: + message.deploymentState = 2; + break; + case "ERROR": + case 3: + message.deploymentState = 3; + break; + } + if (object.errors) { + if (!Array.isArray(object.errors)) + throw TypeError(".google.cloud.gkehub.configmanagement.v1beta.OperatorState.errors: array expected"); + message.errors = []; + for (var i = 0; i < object.errors.length; ++i) { + if (typeof object.errors[i] !== "object") + throw TypeError(".google.cloud.gkehub.configmanagement.v1beta.OperatorState.errors: object expected"); + message.errors[i] = $root.google.cloud.gkehub.configmanagement.v1beta.InstallError.fromObject(object.errors[i]); + } + } + return message; + }; + + /** + * Creates a plain object from an OperatorState message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.configmanagement.v1beta.OperatorState + * @static + * @param {google.cloud.gkehub.configmanagement.v1beta.OperatorState} message OperatorState + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + OperatorState.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.arrays || options.defaults) + object.errors = []; + if (options.defaults) { + object.version = ""; + object.deploymentState = options.enums === String ? "DEPLOYMENT_STATE_UNSPECIFIED" : 0; + } + if (message.version != null && message.hasOwnProperty("version")) + object.version = message.version; + if (message.deploymentState != null && message.hasOwnProperty("deploymentState")) + object.deploymentState = options.enums === String ? $root.google.cloud.gkehub.configmanagement.v1beta.DeploymentState[message.deploymentState] : message.deploymentState; + if (message.errors && message.errors.length) { + object.errors = []; + for (var j = 0; j < message.errors.length; ++j) + object.errors[j] = $root.google.cloud.gkehub.configmanagement.v1beta.InstallError.toObject(message.errors[j], options); + } + return object; + }; + + /** + * Converts this OperatorState to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.configmanagement.v1beta.OperatorState + * @instance + * @returns {Object.} JSON object + */ + OperatorState.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return OperatorState; + })(); + + v1beta.InstallError = (function() { + + /** + * Properties of an InstallError. + * @memberof google.cloud.gkehub.configmanagement.v1beta + * @interface IInstallError + * @property {string|null} [errorMessage] InstallError errorMessage + */ + + /** + * Constructs a new InstallError. + * @memberof google.cloud.gkehub.configmanagement.v1beta + * @classdesc Represents an InstallError. + * @implements IInstallError + * @constructor + * @param {google.cloud.gkehub.configmanagement.v1beta.IInstallError=} [properties] Properties to set + */ + function InstallError(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]]; + } + + /** + * InstallError errorMessage. + * @member {string} errorMessage + * @memberof google.cloud.gkehub.configmanagement.v1beta.InstallError + * @instance + */ + InstallError.prototype.errorMessage = ""; + + /** + * Creates a new InstallError instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.configmanagement.v1beta.InstallError + * @static + * @param {google.cloud.gkehub.configmanagement.v1beta.IInstallError=} [properties] Properties to set + * @returns {google.cloud.gkehub.configmanagement.v1beta.InstallError} InstallError instance + */ + InstallError.create = function create(properties) { + return new InstallError(properties); + }; + + /** + * Encodes the specified InstallError message. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1beta.InstallError.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.configmanagement.v1beta.InstallError + * @static + * @param {google.cloud.gkehub.configmanagement.v1beta.IInstallError} message InstallError message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + InstallError.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.errorMessage != null && Object.hasOwnProperty.call(message, "errorMessage")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.errorMessage); + return writer; + }; + + /** + * Encodes the specified InstallError message, length delimited. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1beta.InstallError.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.configmanagement.v1beta.InstallError + * @static + * @param {google.cloud.gkehub.configmanagement.v1beta.IInstallError} message InstallError message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + InstallError.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes an InstallError message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.configmanagement.v1beta.InstallError + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.configmanagement.v1beta.InstallError} InstallError + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + InstallError.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.configmanagement.v1beta.InstallError(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.errorMessage = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes an InstallError message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.configmanagement.v1beta.InstallError + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.configmanagement.v1beta.InstallError} InstallError + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + InstallError.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies an InstallError message. + * @function verify + * @memberof google.cloud.gkehub.configmanagement.v1beta.InstallError + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + InstallError.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.errorMessage != null && message.hasOwnProperty("errorMessage")) + if (!$util.isString(message.errorMessage)) + return "errorMessage: string expected"; + return null; + }; + + /** + * Creates an InstallError message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.configmanagement.v1beta.InstallError + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.configmanagement.v1beta.InstallError} InstallError + */ + InstallError.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.configmanagement.v1beta.InstallError) + return object; + var message = new $root.google.cloud.gkehub.configmanagement.v1beta.InstallError(); + if (object.errorMessage != null) + message.errorMessage = String(object.errorMessage); + return message; + }; + + /** + * Creates a plain object from an InstallError message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.configmanagement.v1beta.InstallError + * @static + * @param {google.cloud.gkehub.configmanagement.v1beta.InstallError} message InstallError + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + InstallError.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) + object.errorMessage = ""; + if (message.errorMessage != null && message.hasOwnProperty("errorMessage")) + object.errorMessage = message.errorMessage; + return object; + }; + + /** + * Converts this InstallError to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.configmanagement.v1beta.InstallError + * @instance + * @returns {Object.} JSON object + */ + InstallError.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return InstallError; + })(); + + v1beta.ConfigSyncState = (function() { + + /** + * Properties of a ConfigSyncState. + * @memberof google.cloud.gkehub.configmanagement.v1beta + * @interface IConfigSyncState + * @property {google.cloud.gkehub.configmanagement.v1beta.IConfigSyncVersion|null} [version] ConfigSyncState version + * @property {google.cloud.gkehub.configmanagement.v1beta.IConfigSyncDeploymentState|null} [deploymentState] ConfigSyncState deploymentState + * @property {google.cloud.gkehub.configmanagement.v1beta.ISyncState|null} [syncState] ConfigSyncState syncState + */ + + /** + * Constructs a new ConfigSyncState. + * @memberof google.cloud.gkehub.configmanagement.v1beta + * @classdesc Represents a ConfigSyncState. + * @implements IConfigSyncState + * @constructor + * @param {google.cloud.gkehub.configmanagement.v1beta.IConfigSyncState=} [properties] Properties to set + */ + function ConfigSyncState(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]]; + } + + /** + * ConfigSyncState version. + * @member {google.cloud.gkehub.configmanagement.v1beta.IConfigSyncVersion|null|undefined} version + * @memberof google.cloud.gkehub.configmanagement.v1beta.ConfigSyncState + * @instance + */ + ConfigSyncState.prototype.version = null; + + /** + * ConfigSyncState deploymentState. + * @member {google.cloud.gkehub.configmanagement.v1beta.IConfigSyncDeploymentState|null|undefined} deploymentState + * @memberof google.cloud.gkehub.configmanagement.v1beta.ConfigSyncState + * @instance + */ + ConfigSyncState.prototype.deploymentState = null; + + /** + * ConfigSyncState syncState. + * @member {google.cloud.gkehub.configmanagement.v1beta.ISyncState|null|undefined} syncState + * @memberof google.cloud.gkehub.configmanagement.v1beta.ConfigSyncState + * @instance + */ + ConfigSyncState.prototype.syncState = null; + + /** + * Creates a new ConfigSyncState instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.configmanagement.v1beta.ConfigSyncState + * @static + * @param {google.cloud.gkehub.configmanagement.v1beta.IConfigSyncState=} [properties] Properties to set + * @returns {google.cloud.gkehub.configmanagement.v1beta.ConfigSyncState} ConfigSyncState instance + */ + ConfigSyncState.create = function create(properties) { + return new ConfigSyncState(properties); + }; + + /** + * Encodes the specified ConfigSyncState message. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1beta.ConfigSyncState.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.configmanagement.v1beta.ConfigSyncState + * @static + * @param {google.cloud.gkehub.configmanagement.v1beta.IConfigSyncState} message ConfigSyncState message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + ConfigSyncState.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.version != null && Object.hasOwnProperty.call(message, "version")) + $root.google.cloud.gkehub.configmanagement.v1beta.ConfigSyncVersion.encode(message.version, writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim(); + if (message.deploymentState != null && Object.hasOwnProperty.call(message, "deploymentState")) + $root.google.cloud.gkehub.configmanagement.v1beta.ConfigSyncDeploymentState.encode(message.deploymentState, writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim(); + if (message.syncState != null && Object.hasOwnProperty.call(message, "syncState")) + $root.google.cloud.gkehub.configmanagement.v1beta.SyncState.encode(message.syncState, writer.uint32(/* id 3, wireType 2 =*/26).fork()).ldelim(); + return writer; + }; + + /** + * Encodes the specified ConfigSyncState message, length delimited. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1beta.ConfigSyncState.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.configmanagement.v1beta.ConfigSyncState + * @static + * @param {google.cloud.gkehub.configmanagement.v1beta.IConfigSyncState} message ConfigSyncState message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + ConfigSyncState.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a ConfigSyncState message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.configmanagement.v1beta.ConfigSyncState + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.configmanagement.v1beta.ConfigSyncState} ConfigSyncState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + ConfigSyncState.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.configmanagement.v1beta.ConfigSyncState(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.version = $root.google.cloud.gkehub.configmanagement.v1beta.ConfigSyncVersion.decode(reader, reader.uint32()); + break; + case 2: + message.deploymentState = $root.google.cloud.gkehub.configmanagement.v1beta.ConfigSyncDeploymentState.decode(reader, reader.uint32()); + break; + case 3: + message.syncState = $root.google.cloud.gkehub.configmanagement.v1beta.SyncState.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a ConfigSyncState message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.configmanagement.v1beta.ConfigSyncState + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.configmanagement.v1beta.ConfigSyncState} ConfigSyncState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + ConfigSyncState.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a ConfigSyncState message. + * @function verify + * @memberof google.cloud.gkehub.configmanagement.v1beta.ConfigSyncState + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + ConfigSyncState.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.version != null && message.hasOwnProperty("version")) { + var error = $root.google.cloud.gkehub.configmanagement.v1beta.ConfigSyncVersion.verify(message.version); + if (error) + return "version." + error; + } + if (message.deploymentState != null && message.hasOwnProperty("deploymentState")) { + var error = $root.google.cloud.gkehub.configmanagement.v1beta.ConfigSyncDeploymentState.verify(message.deploymentState); + if (error) + return "deploymentState." + error; + } + if (message.syncState != null && message.hasOwnProperty("syncState")) { + var error = $root.google.cloud.gkehub.configmanagement.v1beta.SyncState.verify(message.syncState); + if (error) + return "syncState." + error; + } + return null; + }; + + /** + * Creates a ConfigSyncState message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.configmanagement.v1beta.ConfigSyncState + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.configmanagement.v1beta.ConfigSyncState} ConfigSyncState + */ + ConfigSyncState.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.configmanagement.v1beta.ConfigSyncState) + return object; + var message = new $root.google.cloud.gkehub.configmanagement.v1beta.ConfigSyncState(); + if (object.version != null) { + if (typeof object.version !== "object") + throw TypeError(".google.cloud.gkehub.configmanagement.v1beta.ConfigSyncState.version: object expected"); + message.version = $root.google.cloud.gkehub.configmanagement.v1beta.ConfigSyncVersion.fromObject(object.version); + } + if (object.deploymentState != null) { + if (typeof object.deploymentState !== "object") + throw TypeError(".google.cloud.gkehub.configmanagement.v1beta.ConfigSyncState.deploymentState: object expected"); + message.deploymentState = $root.google.cloud.gkehub.configmanagement.v1beta.ConfigSyncDeploymentState.fromObject(object.deploymentState); + } + if (object.syncState != null) { + if (typeof object.syncState !== "object") + throw TypeError(".google.cloud.gkehub.configmanagement.v1beta.ConfigSyncState.syncState: object expected"); + message.syncState = $root.google.cloud.gkehub.configmanagement.v1beta.SyncState.fromObject(object.syncState); + } + return message; + }; + + /** + * Creates a plain object from a ConfigSyncState message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.configmanagement.v1beta.ConfigSyncState + * @static + * @param {google.cloud.gkehub.configmanagement.v1beta.ConfigSyncState} message ConfigSyncState + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + ConfigSyncState.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.version = null; + object.deploymentState = null; + object.syncState = null; + } + if (message.version != null && message.hasOwnProperty("version")) + object.version = $root.google.cloud.gkehub.configmanagement.v1beta.ConfigSyncVersion.toObject(message.version, options); + if (message.deploymentState != null && message.hasOwnProperty("deploymentState")) + object.deploymentState = $root.google.cloud.gkehub.configmanagement.v1beta.ConfigSyncDeploymentState.toObject(message.deploymentState, options); + if (message.syncState != null && message.hasOwnProperty("syncState")) + object.syncState = $root.google.cloud.gkehub.configmanagement.v1beta.SyncState.toObject(message.syncState, options); + return object; + }; + + /** + * Converts this ConfigSyncState to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.configmanagement.v1beta.ConfigSyncState + * @instance + * @returns {Object.} JSON object + */ + ConfigSyncState.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return ConfigSyncState; + })(); + + v1beta.ConfigSyncVersion = (function() { + + /** + * Properties of a ConfigSyncVersion. + * @memberof google.cloud.gkehub.configmanagement.v1beta + * @interface IConfigSyncVersion + * @property {string|null} [importer] ConfigSyncVersion importer + * @property {string|null} [syncer] ConfigSyncVersion syncer + * @property {string|null} [gitSync] ConfigSyncVersion gitSync + * @property {string|null} [monitor] ConfigSyncVersion monitor + * @property {string|null} [reconcilerManager] ConfigSyncVersion reconcilerManager + * @property {string|null} [rootReconciler] ConfigSyncVersion rootReconciler + */ + + /** + * Constructs a new ConfigSyncVersion. + * @memberof google.cloud.gkehub.configmanagement.v1beta + * @classdesc Represents a ConfigSyncVersion. + * @implements IConfigSyncVersion + * @constructor + * @param {google.cloud.gkehub.configmanagement.v1beta.IConfigSyncVersion=} [properties] Properties to set + */ + function ConfigSyncVersion(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]]; + } + + /** + * ConfigSyncVersion importer. + * @member {string} importer + * @memberof google.cloud.gkehub.configmanagement.v1beta.ConfigSyncVersion + * @instance + */ + ConfigSyncVersion.prototype.importer = ""; + + /** + * ConfigSyncVersion syncer. + * @member {string} syncer + * @memberof google.cloud.gkehub.configmanagement.v1beta.ConfigSyncVersion + * @instance + */ + ConfigSyncVersion.prototype.syncer = ""; + + /** + * ConfigSyncVersion gitSync. + * @member {string} gitSync + * @memberof google.cloud.gkehub.configmanagement.v1beta.ConfigSyncVersion + * @instance + */ + ConfigSyncVersion.prototype.gitSync = ""; + + /** + * ConfigSyncVersion monitor. + * @member {string} monitor + * @memberof google.cloud.gkehub.configmanagement.v1beta.ConfigSyncVersion + * @instance + */ + ConfigSyncVersion.prototype.monitor = ""; + + /** + * ConfigSyncVersion reconcilerManager. + * @member {string} reconcilerManager + * @memberof google.cloud.gkehub.configmanagement.v1beta.ConfigSyncVersion + * @instance + */ + ConfigSyncVersion.prototype.reconcilerManager = ""; + + /** + * ConfigSyncVersion rootReconciler. + * @member {string} rootReconciler + * @memberof google.cloud.gkehub.configmanagement.v1beta.ConfigSyncVersion + * @instance + */ + ConfigSyncVersion.prototype.rootReconciler = ""; + + /** + * Creates a new ConfigSyncVersion instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.configmanagement.v1beta.ConfigSyncVersion + * @static + * @param {google.cloud.gkehub.configmanagement.v1beta.IConfigSyncVersion=} [properties] Properties to set + * @returns {google.cloud.gkehub.configmanagement.v1beta.ConfigSyncVersion} ConfigSyncVersion instance + */ + ConfigSyncVersion.create = function create(properties) { + return new ConfigSyncVersion(properties); + }; + + /** + * Encodes the specified ConfigSyncVersion message. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1beta.ConfigSyncVersion.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.configmanagement.v1beta.ConfigSyncVersion + * @static + * @param {google.cloud.gkehub.configmanagement.v1beta.IConfigSyncVersion} message ConfigSyncVersion message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + ConfigSyncVersion.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.importer != null && Object.hasOwnProperty.call(message, "importer")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.importer); + if (message.syncer != null && Object.hasOwnProperty.call(message, "syncer")) + writer.uint32(/* id 2, wireType 2 =*/18).string(message.syncer); + if (message.gitSync != null && Object.hasOwnProperty.call(message, "gitSync")) + writer.uint32(/* id 3, wireType 2 =*/26).string(message.gitSync); + if (message.monitor != null && Object.hasOwnProperty.call(message, "monitor")) + writer.uint32(/* id 4, wireType 2 =*/34).string(message.monitor); + if (message.reconcilerManager != null && Object.hasOwnProperty.call(message, "reconcilerManager")) + writer.uint32(/* id 5, wireType 2 =*/42).string(message.reconcilerManager); + if (message.rootReconciler != null && Object.hasOwnProperty.call(message, "rootReconciler")) + writer.uint32(/* id 6, wireType 2 =*/50).string(message.rootReconciler); + return writer; + }; + + /** + * Encodes the specified ConfigSyncVersion message, length delimited. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1beta.ConfigSyncVersion.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.configmanagement.v1beta.ConfigSyncVersion + * @static + * @param {google.cloud.gkehub.configmanagement.v1beta.IConfigSyncVersion} message ConfigSyncVersion message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + ConfigSyncVersion.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a ConfigSyncVersion message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.configmanagement.v1beta.ConfigSyncVersion + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.configmanagement.v1beta.ConfigSyncVersion} ConfigSyncVersion + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + ConfigSyncVersion.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.configmanagement.v1beta.ConfigSyncVersion(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.importer = reader.string(); + break; + case 2: + message.syncer = reader.string(); + break; + case 3: + message.gitSync = reader.string(); + break; + case 4: + message.monitor = reader.string(); + break; + case 5: + message.reconcilerManager = reader.string(); + break; + case 6: + message.rootReconciler = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a ConfigSyncVersion message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.configmanagement.v1beta.ConfigSyncVersion + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.configmanagement.v1beta.ConfigSyncVersion} ConfigSyncVersion + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + ConfigSyncVersion.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a ConfigSyncVersion message. + * @function verify + * @memberof google.cloud.gkehub.configmanagement.v1beta.ConfigSyncVersion + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + ConfigSyncVersion.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.importer != null && message.hasOwnProperty("importer")) + if (!$util.isString(message.importer)) + return "importer: string expected"; + if (message.syncer != null && message.hasOwnProperty("syncer")) + if (!$util.isString(message.syncer)) + return "syncer: string expected"; + if (message.gitSync != null && message.hasOwnProperty("gitSync")) + if (!$util.isString(message.gitSync)) + return "gitSync: string expected"; + if (message.monitor != null && message.hasOwnProperty("monitor")) + if (!$util.isString(message.monitor)) + return "monitor: string expected"; + if (message.reconcilerManager != null && message.hasOwnProperty("reconcilerManager")) + if (!$util.isString(message.reconcilerManager)) + return "reconcilerManager: string expected"; + if (message.rootReconciler != null && message.hasOwnProperty("rootReconciler")) + if (!$util.isString(message.rootReconciler)) + return "rootReconciler: string expected"; + return null; + }; + + /** + * Creates a ConfigSyncVersion message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.configmanagement.v1beta.ConfigSyncVersion + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.configmanagement.v1beta.ConfigSyncVersion} ConfigSyncVersion + */ + ConfigSyncVersion.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.configmanagement.v1beta.ConfigSyncVersion) + return object; + var message = new $root.google.cloud.gkehub.configmanagement.v1beta.ConfigSyncVersion(); + if (object.importer != null) + message.importer = String(object.importer); + if (object.syncer != null) + message.syncer = String(object.syncer); + if (object.gitSync != null) + message.gitSync = String(object.gitSync); + if (object.monitor != null) + message.monitor = String(object.monitor); + if (object.reconcilerManager != null) + message.reconcilerManager = String(object.reconcilerManager); + if (object.rootReconciler != null) + message.rootReconciler = String(object.rootReconciler); + return message; + }; + + /** + * Creates a plain object from a ConfigSyncVersion message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.configmanagement.v1beta.ConfigSyncVersion + * @static + * @param {google.cloud.gkehub.configmanagement.v1beta.ConfigSyncVersion} message ConfigSyncVersion + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + ConfigSyncVersion.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.importer = ""; + object.syncer = ""; + object.gitSync = ""; + object.monitor = ""; + object.reconcilerManager = ""; + object.rootReconciler = ""; + } + if (message.importer != null && message.hasOwnProperty("importer")) + object.importer = message.importer; + if (message.syncer != null && message.hasOwnProperty("syncer")) + object.syncer = message.syncer; + if (message.gitSync != null && message.hasOwnProperty("gitSync")) + object.gitSync = message.gitSync; + if (message.monitor != null && message.hasOwnProperty("monitor")) + object.monitor = message.monitor; + if (message.reconcilerManager != null && message.hasOwnProperty("reconcilerManager")) + object.reconcilerManager = message.reconcilerManager; + if (message.rootReconciler != null && message.hasOwnProperty("rootReconciler")) + object.rootReconciler = message.rootReconciler; + return object; + }; + + /** + * Converts this ConfigSyncVersion to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.configmanagement.v1beta.ConfigSyncVersion + * @instance + * @returns {Object.} JSON object + */ + ConfigSyncVersion.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return ConfigSyncVersion; + })(); + + v1beta.ConfigSyncDeploymentState = (function() { + + /** + * Properties of a ConfigSyncDeploymentState. + * @memberof google.cloud.gkehub.configmanagement.v1beta + * @interface IConfigSyncDeploymentState + * @property {google.cloud.gkehub.configmanagement.v1beta.DeploymentState|null} [importer] ConfigSyncDeploymentState importer + * @property {google.cloud.gkehub.configmanagement.v1beta.DeploymentState|null} [syncer] ConfigSyncDeploymentState syncer + * @property {google.cloud.gkehub.configmanagement.v1beta.DeploymentState|null} [gitSync] ConfigSyncDeploymentState gitSync + * @property {google.cloud.gkehub.configmanagement.v1beta.DeploymentState|null} [monitor] ConfigSyncDeploymentState monitor + * @property {google.cloud.gkehub.configmanagement.v1beta.DeploymentState|null} [reconcilerManager] ConfigSyncDeploymentState reconcilerManager + * @property {google.cloud.gkehub.configmanagement.v1beta.DeploymentState|null} [rootReconciler] ConfigSyncDeploymentState rootReconciler + */ + + /** + * Constructs a new ConfigSyncDeploymentState. + * @memberof google.cloud.gkehub.configmanagement.v1beta + * @classdesc Represents a ConfigSyncDeploymentState. + * @implements IConfigSyncDeploymentState + * @constructor + * @param {google.cloud.gkehub.configmanagement.v1beta.IConfigSyncDeploymentState=} [properties] Properties to set + */ + function ConfigSyncDeploymentState(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]]; + } + + /** + * ConfigSyncDeploymentState importer. + * @member {google.cloud.gkehub.configmanagement.v1beta.DeploymentState} importer + * @memberof google.cloud.gkehub.configmanagement.v1beta.ConfigSyncDeploymentState + * @instance + */ + ConfigSyncDeploymentState.prototype.importer = 0; + + /** + * ConfigSyncDeploymentState syncer. + * @member {google.cloud.gkehub.configmanagement.v1beta.DeploymentState} syncer + * @memberof google.cloud.gkehub.configmanagement.v1beta.ConfigSyncDeploymentState + * @instance + */ + ConfigSyncDeploymentState.prototype.syncer = 0; + + /** + * ConfigSyncDeploymentState gitSync. + * @member {google.cloud.gkehub.configmanagement.v1beta.DeploymentState} gitSync + * @memberof google.cloud.gkehub.configmanagement.v1beta.ConfigSyncDeploymentState + * @instance + */ + ConfigSyncDeploymentState.prototype.gitSync = 0; + + /** + * ConfigSyncDeploymentState monitor. + * @member {google.cloud.gkehub.configmanagement.v1beta.DeploymentState} monitor + * @memberof google.cloud.gkehub.configmanagement.v1beta.ConfigSyncDeploymentState + * @instance + */ + ConfigSyncDeploymentState.prototype.monitor = 0; + + /** + * ConfigSyncDeploymentState reconcilerManager. + * @member {google.cloud.gkehub.configmanagement.v1beta.DeploymentState} reconcilerManager + * @memberof google.cloud.gkehub.configmanagement.v1beta.ConfigSyncDeploymentState + * @instance + */ + ConfigSyncDeploymentState.prototype.reconcilerManager = 0; + + /** + * ConfigSyncDeploymentState rootReconciler. + * @member {google.cloud.gkehub.configmanagement.v1beta.DeploymentState} rootReconciler + * @memberof google.cloud.gkehub.configmanagement.v1beta.ConfigSyncDeploymentState + * @instance + */ + ConfigSyncDeploymentState.prototype.rootReconciler = 0; + + /** + * Creates a new ConfigSyncDeploymentState instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.configmanagement.v1beta.ConfigSyncDeploymentState + * @static + * @param {google.cloud.gkehub.configmanagement.v1beta.IConfigSyncDeploymentState=} [properties] Properties to set + * @returns {google.cloud.gkehub.configmanagement.v1beta.ConfigSyncDeploymentState} ConfigSyncDeploymentState instance + */ + ConfigSyncDeploymentState.create = function create(properties) { + return new ConfigSyncDeploymentState(properties); + }; + + /** + * Encodes the specified ConfigSyncDeploymentState message. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1beta.ConfigSyncDeploymentState.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.configmanagement.v1beta.ConfigSyncDeploymentState + * @static + * @param {google.cloud.gkehub.configmanagement.v1beta.IConfigSyncDeploymentState} message ConfigSyncDeploymentState message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + ConfigSyncDeploymentState.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.importer != null && Object.hasOwnProperty.call(message, "importer")) + writer.uint32(/* id 1, wireType 0 =*/8).int32(message.importer); + if (message.syncer != null && Object.hasOwnProperty.call(message, "syncer")) + writer.uint32(/* id 2, wireType 0 =*/16).int32(message.syncer); + if (message.gitSync != null && Object.hasOwnProperty.call(message, "gitSync")) + writer.uint32(/* id 3, wireType 0 =*/24).int32(message.gitSync); + if (message.monitor != null && Object.hasOwnProperty.call(message, "monitor")) + writer.uint32(/* id 4, wireType 0 =*/32).int32(message.monitor); + if (message.reconcilerManager != null && Object.hasOwnProperty.call(message, "reconcilerManager")) + writer.uint32(/* id 5, wireType 0 =*/40).int32(message.reconcilerManager); + if (message.rootReconciler != null && Object.hasOwnProperty.call(message, "rootReconciler")) + writer.uint32(/* id 6, wireType 0 =*/48).int32(message.rootReconciler); + return writer; + }; + + /** + * Encodes the specified ConfigSyncDeploymentState message, length delimited. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1beta.ConfigSyncDeploymentState.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.configmanagement.v1beta.ConfigSyncDeploymentState + * @static + * @param {google.cloud.gkehub.configmanagement.v1beta.IConfigSyncDeploymentState} message ConfigSyncDeploymentState message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + ConfigSyncDeploymentState.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a ConfigSyncDeploymentState message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.configmanagement.v1beta.ConfigSyncDeploymentState + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.configmanagement.v1beta.ConfigSyncDeploymentState} ConfigSyncDeploymentState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + ConfigSyncDeploymentState.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.configmanagement.v1beta.ConfigSyncDeploymentState(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.importer = reader.int32(); + break; + case 2: + message.syncer = reader.int32(); + break; + case 3: + message.gitSync = reader.int32(); + break; + case 4: + message.monitor = reader.int32(); + break; + case 5: + message.reconcilerManager = reader.int32(); + break; + case 6: + message.rootReconciler = reader.int32(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a ConfigSyncDeploymentState message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.configmanagement.v1beta.ConfigSyncDeploymentState + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.configmanagement.v1beta.ConfigSyncDeploymentState} ConfigSyncDeploymentState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + ConfigSyncDeploymentState.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a ConfigSyncDeploymentState message. + * @function verify + * @memberof google.cloud.gkehub.configmanagement.v1beta.ConfigSyncDeploymentState + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + ConfigSyncDeploymentState.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.importer != null && message.hasOwnProperty("importer")) + switch (message.importer) { + default: + return "importer: enum value expected"; + case 0: + case 1: + case 2: + case 3: + break; + } + if (message.syncer != null && message.hasOwnProperty("syncer")) + switch (message.syncer) { + default: + return "syncer: enum value expected"; + case 0: + case 1: + case 2: + case 3: + break; + } + if (message.gitSync != null && message.hasOwnProperty("gitSync")) + switch (message.gitSync) { + default: + return "gitSync: enum value expected"; + case 0: + case 1: + case 2: + case 3: + break; + } + if (message.monitor != null && message.hasOwnProperty("monitor")) + switch (message.monitor) { + default: + return "monitor: enum value expected"; + case 0: + case 1: + case 2: + case 3: + break; + } + if (message.reconcilerManager != null && message.hasOwnProperty("reconcilerManager")) + switch (message.reconcilerManager) { + default: + return "reconcilerManager: enum value expected"; + case 0: + case 1: + case 2: + case 3: + break; + } + if (message.rootReconciler != null && message.hasOwnProperty("rootReconciler")) + switch (message.rootReconciler) { + default: + return "rootReconciler: enum value expected"; + case 0: + case 1: + case 2: + case 3: + break; + } + return null; + }; + + /** + * Creates a ConfigSyncDeploymentState message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.configmanagement.v1beta.ConfigSyncDeploymentState + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.configmanagement.v1beta.ConfigSyncDeploymentState} ConfigSyncDeploymentState + */ + ConfigSyncDeploymentState.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.configmanagement.v1beta.ConfigSyncDeploymentState) + return object; + var message = new $root.google.cloud.gkehub.configmanagement.v1beta.ConfigSyncDeploymentState(); + switch (object.importer) { + case "DEPLOYMENT_STATE_UNSPECIFIED": + case 0: + message.importer = 0; + break; + case "NOT_INSTALLED": + case 1: + message.importer = 1; + break; + case "INSTALLED": + case 2: + message.importer = 2; + break; + case "ERROR": + case 3: + message.importer = 3; + break; + } + switch (object.syncer) { + case "DEPLOYMENT_STATE_UNSPECIFIED": + case 0: + message.syncer = 0; + break; + case "NOT_INSTALLED": + case 1: + message.syncer = 1; + break; + case "INSTALLED": + case 2: + message.syncer = 2; + break; + case "ERROR": + case 3: + message.syncer = 3; + break; + } + switch (object.gitSync) { + case "DEPLOYMENT_STATE_UNSPECIFIED": + case 0: + message.gitSync = 0; + break; + case "NOT_INSTALLED": + case 1: + message.gitSync = 1; + break; + case "INSTALLED": + case 2: + message.gitSync = 2; + break; + case "ERROR": + case 3: + message.gitSync = 3; + break; + } + switch (object.monitor) { + case "DEPLOYMENT_STATE_UNSPECIFIED": + case 0: + message.monitor = 0; + break; + case "NOT_INSTALLED": + case 1: + message.monitor = 1; + break; + case "INSTALLED": + case 2: + message.monitor = 2; + break; + case "ERROR": + case 3: + message.monitor = 3; + break; + } + switch (object.reconcilerManager) { + case "DEPLOYMENT_STATE_UNSPECIFIED": + case 0: + message.reconcilerManager = 0; + break; + case "NOT_INSTALLED": + case 1: + message.reconcilerManager = 1; + break; + case "INSTALLED": + case 2: + message.reconcilerManager = 2; + break; + case "ERROR": + case 3: + message.reconcilerManager = 3; + break; + } + switch (object.rootReconciler) { + case "DEPLOYMENT_STATE_UNSPECIFIED": + case 0: + message.rootReconciler = 0; + break; + case "NOT_INSTALLED": + case 1: + message.rootReconciler = 1; + break; + case "INSTALLED": + case 2: + message.rootReconciler = 2; + break; + case "ERROR": + case 3: + message.rootReconciler = 3; + break; + } + return message; + }; + + /** + * Creates a plain object from a ConfigSyncDeploymentState message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.configmanagement.v1beta.ConfigSyncDeploymentState + * @static + * @param {google.cloud.gkehub.configmanagement.v1beta.ConfigSyncDeploymentState} message ConfigSyncDeploymentState + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + ConfigSyncDeploymentState.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.importer = options.enums === String ? "DEPLOYMENT_STATE_UNSPECIFIED" : 0; + object.syncer = options.enums === String ? "DEPLOYMENT_STATE_UNSPECIFIED" : 0; + object.gitSync = options.enums === String ? "DEPLOYMENT_STATE_UNSPECIFIED" : 0; + object.monitor = options.enums === String ? "DEPLOYMENT_STATE_UNSPECIFIED" : 0; + object.reconcilerManager = options.enums === String ? "DEPLOYMENT_STATE_UNSPECIFIED" : 0; + object.rootReconciler = options.enums === String ? "DEPLOYMENT_STATE_UNSPECIFIED" : 0; + } + if (message.importer != null && message.hasOwnProperty("importer")) + object.importer = options.enums === String ? $root.google.cloud.gkehub.configmanagement.v1beta.DeploymentState[message.importer] : message.importer; + if (message.syncer != null && message.hasOwnProperty("syncer")) + object.syncer = options.enums === String ? $root.google.cloud.gkehub.configmanagement.v1beta.DeploymentState[message.syncer] : message.syncer; + if (message.gitSync != null && message.hasOwnProperty("gitSync")) + object.gitSync = options.enums === String ? $root.google.cloud.gkehub.configmanagement.v1beta.DeploymentState[message.gitSync] : message.gitSync; + if (message.monitor != null && message.hasOwnProperty("monitor")) + object.monitor = options.enums === String ? $root.google.cloud.gkehub.configmanagement.v1beta.DeploymentState[message.monitor] : message.monitor; + if (message.reconcilerManager != null && message.hasOwnProperty("reconcilerManager")) + object.reconcilerManager = options.enums === String ? $root.google.cloud.gkehub.configmanagement.v1beta.DeploymentState[message.reconcilerManager] : message.reconcilerManager; + if (message.rootReconciler != null && message.hasOwnProperty("rootReconciler")) + object.rootReconciler = options.enums === String ? $root.google.cloud.gkehub.configmanagement.v1beta.DeploymentState[message.rootReconciler] : message.rootReconciler; + return object; + }; + + /** + * Converts this ConfigSyncDeploymentState to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.configmanagement.v1beta.ConfigSyncDeploymentState + * @instance + * @returns {Object.} JSON object + */ + ConfigSyncDeploymentState.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return ConfigSyncDeploymentState; + })(); + + v1beta.SyncState = (function() { + + /** + * Properties of a SyncState. + * @memberof google.cloud.gkehub.configmanagement.v1beta + * @interface ISyncState + * @property {string|null} [sourceToken] SyncState sourceToken + * @property {string|null} [importToken] SyncState importToken + * @property {string|null} [syncToken] SyncState syncToken + * @property {string|null} [lastSync] SyncState lastSync + * @property {google.protobuf.ITimestamp|null} [lastSyncTime] SyncState lastSyncTime + * @property {google.cloud.gkehub.configmanagement.v1beta.SyncState.SyncCode|null} [code] SyncState code + * @property {Array.|null} [errors] SyncState errors + */ + + /** + * Constructs a new SyncState. + * @memberof google.cloud.gkehub.configmanagement.v1beta + * @classdesc Represents a SyncState. + * @implements ISyncState + * @constructor + * @param {google.cloud.gkehub.configmanagement.v1beta.ISyncState=} [properties] Properties to set + */ + function SyncState(properties) { + this.errors = []; + 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]]; + } + + /** + * SyncState sourceToken. + * @member {string} sourceToken + * @memberof google.cloud.gkehub.configmanagement.v1beta.SyncState + * @instance + */ + SyncState.prototype.sourceToken = ""; + + /** + * SyncState importToken. + * @member {string} importToken + * @memberof google.cloud.gkehub.configmanagement.v1beta.SyncState + * @instance + */ + SyncState.prototype.importToken = ""; + + /** + * SyncState syncToken. + * @member {string} syncToken + * @memberof google.cloud.gkehub.configmanagement.v1beta.SyncState + * @instance + */ + SyncState.prototype.syncToken = ""; + + /** + * SyncState lastSync. + * @member {string} lastSync + * @memberof google.cloud.gkehub.configmanagement.v1beta.SyncState + * @instance + */ + SyncState.prototype.lastSync = ""; + + /** + * SyncState lastSyncTime. + * @member {google.protobuf.ITimestamp|null|undefined} lastSyncTime + * @memberof google.cloud.gkehub.configmanagement.v1beta.SyncState + * @instance + */ + SyncState.prototype.lastSyncTime = null; + + /** + * SyncState code. + * @member {google.cloud.gkehub.configmanagement.v1beta.SyncState.SyncCode} code + * @memberof google.cloud.gkehub.configmanagement.v1beta.SyncState + * @instance + */ + SyncState.prototype.code = 0; + + /** + * SyncState errors. + * @member {Array.} errors + * @memberof google.cloud.gkehub.configmanagement.v1beta.SyncState + * @instance + */ + SyncState.prototype.errors = $util.emptyArray; + + /** + * Creates a new SyncState instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.configmanagement.v1beta.SyncState + * @static + * @param {google.cloud.gkehub.configmanagement.v1beta.ISyncState=} [properties] Properties to set + * @returns {google.cloud.gkehub.configmanagement.v1beta.SyncState} SyncState instance + */ + SyncState.create = function create(properties) { + return new SyncState(properties); + }; + + /** + * Encodes the specified SyncState message. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1beta.SyncState.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.configmanagement.v1beta.SyncState + * @static + * @param {google.cloud.gkehub.configmanagement.v1beta.ISyncState} message SyncState message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + SyncState.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.sourceToken != null && Object.hasOwnProperty.call(message, "sourceToken")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.sourceToken); + if (message.importToken != null && Object.hasOwnProperty.call(message, "importToken")) + writer.uint32(/* id 2, wireType 2 =*/18).string(message.importToken); + if (message.syncToken != null && Object.hasOwnProperty.call(message, "syncToken")) + writer.uint32(/* id 3, wireType 2 =*/26).string(message.syncToken); + if (message.lastSync != null && Object.hasOwnProperty.call(message, "lastSync")) + writer.uint32(/* id 4, wireType 2 =*/34).string(message.lastSync); + if (message.code != null && Object.hasOwnProperty.call(message, "code")) + writer.uint32(/* id 5, wireType 0 =*/40).int32(message.code); + if (message.errors != null && message.errors.length) + for (var i = 0; i < message.errors.length; ++i) + $root.google.cloud.gkehub.configmanagement.v1beta.SyncError.encode(message.errors[i], writer.uint32(/* id 6, wireType 2 =*/50).fork()).ldelim(); + if (message.lastSyncTime != null && Object.hasOwnProperty.call(message, "lastSyncTime")) + $root.google.protobuf.Timestamp.encode(message.lastSyncTime, writer.uint32(/* id 7, wireType 2 =*/58).fork()).ldelim(); + return writer; + }; + + /** + * Encodes the specified SyncState message, length delimited. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1beta.SyncState.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.configmanagement.v1beta.SyncState + * @static + * @param {google.cloud.gkehub.configmanagement.v1beta.ISyncState} message SyncState message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + SyncState.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a SyncState message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.configmanagement.v1beta.SyncState + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.configmanagement.v1beta.SyncState} SyncState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + SyncState.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.configmanagement.v1beta.SyncState(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.sourceToken = reader.string(); + break; + case 2: + message.importToken = reader.string(); + break; + case 3: + message.syncToken = reader.string(); + break; + case 4: + message.lastSync = reader.string(); + break; + case 7: + message.lastSyncTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + break; + case 5: + message.code = reader.int32(); + break; + case 6: + if (!(message.errors && message.errors.length)) + message.errors = []; + message.errors.push($root.google.cloud.gkehub.configmanagement.v1beta.SyncError.decode(reader, reader.uint32())); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a SyncState message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.configmanagement.v1beta.SyncState + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.configmanagement.v1beta.SyncState} SyncState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + SyncState.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a SyncState message. + * @function verify + * @memberof google.cloud.gkehub.configmanagement.v1beta.SyncState + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + SyncState.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.sourceToken != null && message.hasOwnProperty("sourceToken")) + if (!$util.isString(message.sourceToken)) + return "sourceToken: string expected"; + if (message.importToken != null && message.hasOwnProperty("importToken")) + if (!$util.isString(message.importToken)) + return "importToken: string expected"; + if (message.syncToken != null && message.hasOwnProperty("syncToken")) + if (!$util.isString(message.syncToken)) + return "syncToken: string expected"; + if (message.lastSync != null && message.hasOwnProperty("lastSync")) + if (!$util.isString(message.lastSync)) + return "lastSync: string expected"; + if (message.lastSyncTime != null && message.hasOwnProperty("lastSyncTime")) { + var error = $root.google.protobuf.Timestamp.verify(message.lastSyncTime); + if (error) + return "lastSyncTime." + error; + } + if (message.code != null && message.hasOwnProperty("code")) + switch (message.code) { + default: + return "code: enum value expected"; + case 0: + case 1: + case 2: + case 3: + case 4: + case 5: + case 6: + case 7: + break; + } + if (message.errors != null && message.hasOwnProperty("errors")) { + if (!Array.isArray(message.errors)) + return "errors: array expected"; + for (var i = 0; i < message.errors.length; ++i) { + var error = $root.google.cloud.gkehub.configmanagement.v1beta.SyncError.verify(message.errors[i]); + if (error) + return "errors." + error; + } + } + return null; + }; + + /** + * Creates a SyncState message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.configmanagement.v1beta.SyncState + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.configmanagement.v1beta.SyncState} SyncState + */ + SyncState.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.configmanagement.v1beta.SyncState) + return object; + var message = new $root.google.cloud.gkehub.configmanagement.v1beta.SyncState(); + if (object.sourceToken != null) + message.sourceToken = String(object.sourceToken); + if (object.importToken != null) + message.importToken = String(object.importToken); + if (object.syncToken != null) + message.syncToken = String(object.syncToken); + if (object.lastSync != null) + message.lastSync = String(object.lastSync); + if (object.lastSyncTime != null) { + if (typeof object.lastSyncTime !== "object") + throw TypeError(".google.cloud.gkehub.configmanagement.v1beta.SyncState.lastSyncTime: object expected"); + message.lastSyncTime = $root.google.protobuf.Timestamp.fromObject(object.lastSyncTime); + } + switch (object.code) { + case "SYNC_CODE_UNSPECIFIED": + case 0: + message.code = 0; + break; + case "SYNCED": + case 1: + message.code = 1; + break; + case "PENDING": + case 2: + message.code = 2; + break; + case "ERROR": + case 3: + message.code = 3; + break; + case "NOT_CONFIGURED": + case 4: + message.code = 4; + break; + case "NOT_INSTALLED": + case 5: + message.code = 5; + break; + case "UNAUTHORIZED": + case 6: + message.code = 6; + break; + case "UNREACHABLE": + case 7: + message.code = 7; + break; + } + if (object.errors) { + if (!Array.isArray(object.errors)) + throw TypeError(".google.cloud.gkehub.configmanagement.v1beta.SyncState.errors: array expected"); + message.errors = []; + for (var i = 0; i < object.errors.length; ++i) { + if (typeof object.errors[i] !== "object") + throw TypeError(".google.cloud.gkehub.configmanagement.v1beta.SyncState.errors: object expected"); + message.errors[i] = $root.google.cloud.gkehub.configmanagement.v1beta.SyncError.fromObject(object.errors[i]); + } + } + return message; + }; + + /** + * Creates a plain object from a SyncState message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.configmanagement.v1beta.SyncState + * @static + * @param {google.cloud.gkehub.configmanagement.v1beta.SyncState} message SyncState + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + SyncState.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.arrays || options.defaults) + object.errors = []; + if (options.defaults) { + object.sourceToken = ""; + object.importToken = ""; + object.syncToken = ""; + object.lastSync = ""; + object.code = options.enums === String ? "SYNC_CODE_UNSPECIFIED" : 0; + object.lastSyncTime = null; + } + if (message.sourceToken != null && message.hasOwnProperty("sourceToken")) + object.sourceToken = message.sourceToken; + if (message.importToken != null && message.hasOwnProperty("importToken")) + object.importToken = message.importToken; + if (message.syncToken != null && message.hasOwnProperty("syncToken")) + object.syncToken = message.syncToken; + if (message.lastSync != null && message.hasOwnProperty("lastSync")) + object.lastSync = message.lastSync; + if (message.code != null && message.hasOwnProperty("code")) + object.code = options.enums === String ? $root.google.cloud.gkehub.configmanagement.v1beta.SyncState.SyncCode[message.code] : message.code; + if (message.errors && message.errors.length) { + object.errors = []; + for (var j = 0; j < message.errors.length; ++j) + object.errors[j] = $root.google.cloud.gkehub.configmanagement.v1beta.SyncError.toObject(message.errors[j], options); + } + if (message.lastSyncTime != null && message.hasOwnProperty("lastSyncTime")) + object.lastSyncTime = $root.google.protobuf.Timestamp.toObject(message.lastSyncTime, options); + return object; + }; + + /** + * Converts this SyncState to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.configmanagement.v1beta.SyncState + * @instance + * @returns {Object.} JSON object + */ + SyncState.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + /** + * SyncCode enum. + * @name google.cloud.gkehub.configmanagement.v1beta.SyncState.SyncCode + * @enum {number} + * @property {number} SYNC_CODE_UNSPECIFIED=0 SYNC_CODE_UNSPECIFIED value + * @property {number} SYNCED=1 SYNCED value + * @property {number} PENDING=2 PENDING value + * @property {number} ERROR=3 ERROR value + * @property {number} NOT_CONFIGURED=4 NOT_CONFIGURED value + * @property {number} NOT_INSTALLED=5 NOT_INSTALLED value + * @property {number} UNAUTHORIZED=6 UNAUTHORIZED value + * @property {number} UNREACHABLE=7 UNREACHABLE value + */ + SyncState.SyncCode = (function() { + var valuesById = {}, values = Object.create(valuesById); + values[valuesById[0] = "SYNC_CODE_UNSPECIFIED"] = 0; + values[valuesById[1] = "SYNCED"] = 1; + values[valuesById[2] = "PENDING"] = 2; + values[valuesById[3] = "ERROR"] = 3; + values[valuesById[4] = "NOT_CONFIGURED"] = 4; + values[valuesById[5] = "NOT_INSTALLED"] = 5; + values[valuesById[6] = "UNAUTHORIZED"] = 6; + values[valuesById[7] = "UNREACHABLE"] = 7; + return values; + })(); + + return SyncState; + })(); + + v1beta.SyncError = (function() { + + /** + * Properties of a SyncError. + * @memberof google.cloud.gkehub.configmanagement.v1beta + * @interface ISyncError + * @property {string|null} [code] SyncError code + * @property {string|null} [errorMessage] SyncError errorMessage + * @property {Array.|null} [errorResources] SyncError errorResources + */ + + /** + * Constructs a new SyncError. + * @memberof google.cloud.gkehub.configmanagement.v1beta + * @classdesc Represents a SyncError. + * @implements ISyncError + * @constructor + * @param {google.cloud.gkehub.configmanagement.v1beta.ISyncError=} [properties] Properties to set + */ + function SyncError(properties) { + this.errorResources = []; + 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]]; + } + + /** + * SyncError code. + * @member {string} code + * @memberof google.cloud.gkehub.configmanagement.v1beta.SyncError + * @instance + */ + SyncError.prototype.code = ""; + + /** + * SyncError errorMessage. + * @member {string} errorMessage + * @memberof google.cloud.gkehub.configmanagement.v1beta.SyncError + * @instance + */ + SyncError.prototype.errorMessage = ""; + + /** + * SyncError errorResources. + * @member {Array.} errorResources + * @memberof google.cloud.gkehub.configmanagement.v1beta.SyncError + * @instance + */ + SyncError.prototype.errorResources = $util.emptyArray; + + /** + * Creates a new SyncError instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.configmanagement.v1beta.SyncError + * @static + * @param {google.cloud.gkehub.configmanagement.v1beta.ISyncError=} [properties] Properties to set + * @returns {google.cloud.gkehub.configmanagement.v1beta.SyncError} SyncError instance + */ + SyncError.create = function create(properties) { + return new SyncError(properties); + }; + + /** + * Encodes the specified SyncError message. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1beta.SyncError.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.configmanagement.v1beta.SyncError + * @static + * @param {google.cloud.gkehub.configmanagement.v1beta.ISyncError} message SyncError message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + SyncError.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.code != null && Object.hasOwnProperty.call(message, "code")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.code); + if (message.errorMessage != null && Object.hasOwnProperty.call(message, "errorMessage")) + writer.uint32(/* id 2, wireType 2 =*/18).string(message.errorMessage); + if (message.errorResources != null && message.errorResources.length) + for (var i = 0; i < message.errorResources.length; ++i) + $root.google.cloud.gkehub.configmanagement.v1beta.ErrorResource.encode(message.errorResources[i], writer.uint32(/* id 3, wireType 2 =*/26).fork()).ldelim(); + return writer; + }; + + /** + * Encodes the specified SyncError message, length delimited. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1beta.SyncError.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.configmanagement.v1beta.SyncError + * @static + * @param {google.cloud.gkehub.configmanagement.v1beta.ISyncError} message SyncError message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + SyncError.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a SyncError message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.configmanagement.v1beta.SyncError + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.configmanagement.v1beta.SyncError} SyncError + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + SyncError.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.configmanagement.v1beta.SyncError(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.code = reader.string(); + break; + case 2: + message.errorMessage = reader.string(); + break; + case 3: + if (!(message.errorResources && message.errorResources.length)) + message.errorResources = []; + message.errorResources.push($root.google.cloud.gkehub.configmanagement.v1beta.ErrorResource.decode(reader, reader.uint32())); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a SyncError message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.configmanagement.v1beta.SyncError + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.configmanagement.v1beta.SyncError} SyncError + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + SyncError.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a SyncError message. + * @function verify + * @memberof google.cloud.gkehub.configmanagement.v1beta.SyncError + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + SyncError.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.code != null && message.hasOwnProperty("code")) + if (!$util.isString(message.code)) + return "code: string expected"; + if (message.errorMessage != null && message.hasOwnProperty("errorMessage")) + if (!$util.isString(message.errorMessage)) + return "errorMessage: string expected"; + if (message.errorResources != null && message.hasOwnProperty("errorResources")) { + if (!Array.isArray(message.errorResources)) + return "errorResources: array expected"; + for (var i = 0; i < message.errorResources.length; ++i) { + var error = $root.google.cloud.gkehub.configmanagement.v1beta.ErrorResource.verify(message.errorResources[i]); + if (error) + return "errorResources." + error; + } + } + return null; + }; + + /** + * Creates a SyncError message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.configmanagement.v1beta.SyncError + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.configmanagement.v1beta.SyncError} SyncError + */ + SyncError.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.configmanagement.v1beta.SyncError) + return object; + var message = new $root.google.cloud.gkehub.configmanagement.v1beta.SyncError(); + if (object.code != null) + message.code = String(object.code); + if (object.errorMessage != null) + message.errorMessage = String(object.errorMessage); + if (object.errorResources) { + if (!Array.isArray(object.errorResources)) + throw TypeError(".google.cloud.gkehub.configmanagement.v1beta.SyncError.errorResources: array expected"); + message.errorResources = []; + for (var i = 0; i < object.errorResources.length; ++i) { + if (typeof object.errorResources[i] !== "object") + throw TypeError(".google.cloud.gkehub.configmanagement.v1beta.SyncError.errorResources: object expected"); + message.errorResources[i] = $root.google.cloud.gkehub.configmanagement.v1beta.ErrorResource.fromObject(object.errorResources[i]); + } + } + return message; + }; + + /** + * Creates a plain object from a SyncError message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.configmanagement.v1beta.SyncError + * @static + * @param {google.cloud.gkehub.configmanagement.v1beta.SyncError} message SyncError + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + SyncError.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.arrays || options.defaults) + object.errorResources = []; + if (options.defaults) { + object.code = ""; + object.errorMessage = ""; + } + if (message.code != null && message.hasOwnProperty("code")) + object.code = message.code; + if (message.errorMessage != null && message.hasOwnProperty("errorMessage")) + object.errorMessage = message.errorMessage; + if (message.errorResources && message.errorResources.length) { + object.errorResources = []; + for (var j = 0; j < message.errorResources.length; ++j) + object.errorResources[j] = $root.google.cloud.gkehub.configmanagement.v1beta.ErrorResource.toObject(message.errorResources[j], options); + } + return object; + }; + + /** + * Converts this SyncError to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.configmanagement.v1beta.SyncError + * @instance + * @returns {Object.} JSON object + */ + SyncError.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return SyncError; + })(); + + v1beta.ErrorResource = (function() { + + /** + * Properties of an ErrorResource. + * @memberof google.cloud.gkehub.configmanagement.v1beta + * @interface IErrorResource + * @property {string|null} [sourcePath] ErrorResource sourcePath + * @property {string|null} [resourceName] ErrorResource resourceName + * @property {string|null} [resourceNamespace] ErrorResource resourceNamespace + * @property {google.cloud.gkehub.configmanagement.v1beta.IGroupVersionKind|null} [resourceGvk] ErrorResource resourceGvk + */ + + /** + * Constructs a new ErrorResource. + * @memberof google.cloud.gkehub.configmanagement.v1beta + * @classdesc Represents an ErrorResource. + * @implements IErrorResource + * @constructor + * @param {google.cloud.gkehub.configmanagement.v1beta.IErrorResource=} [properties] Properties to set + */ + function ErrorResource(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]]; + } + + /** + * ErrorResource sourcePath. + * @member {string} sourcePath + * @memberof google.cloud.gkehub.configmanagement.v1beta.ErrorResource + * @instance + */ + ErrorResource.prototype.sourcePath = ""; + + /** + * ErrorResource resourceName. + * @member {string} resourceName + * @memberof google.cloud.gkehub.configmanagement.v1beta.ErrorResource + * @instance + */ + ErrorResource.prototype.resourceName = ""; + + /** + * ErrorResource resourceNamespace. + * @member {string} resourceNamespace + * @memberof google.cloud.gkehub.configmanagement.v1beta.ErrorResource + * @instance + */ + ErrorResource.prototype.resourceNamespace = ""; + + /** + * ErrorResource resourceGvk. + * @member {google.cloud.gkehub.configmanagement.v1beta.IGroupVersionKind|null|undefined} resourceGvk + * @memberof google.cloud.gkehub.configmanagement.v1beta.ErrorResource + * @instance + */ + ErrorResource.prototype.resourceGvk = null; + + /** + * Creates a new ErrorResource instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.configmanagement.v1beta.ErrorResource + * @static + * @param {google.cloud.gkehub.configmanagement.v1beta.IErrorResource=} [properties] Properties to set + * @returns {google.cloud.gkehub.configmanagement.v1beta.ErrorResource} ErrorResource instance + */ + ErrorResource.create = function create(properties) { + return new ErrorResource(properties); + }; + + /** + * Encodes the specified ErrorResource message. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1beta.ErrorResource.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.configmanagement.v1beta.ErrorResource + * @static + * @param {google.cloud.gkehub.configmanagement.v1beta.IErrorResource} message ErrorResource message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + ErrorResource.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.sourcePath != null && Object.hasOwnProperty.call(message, "sourcePath")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.sourcePath); + if (message.resourceName != null && Object.hasOwnProperty.call(message, "resourceName")) + writer.uint32(/* id 2, wireType 2 =*/18).string(message.resourceName); + if (message.resourceNamespace != null && Object.hasOwnProperty.call(message, "resourceNamespace")) + writer.uint32(/* id 3, wireType 2 =*/26).string(message.resourceNamespace); + if (message.resourceGvk != null && Object.hasOwnProperty.call(message, "resourceGvk")) + $root.google.cloud.gkehub.configmanagement.v1beta.GroupVersionKind.encode(message.resourceGvk, writer.uint32(/* id 4, wireType 2 =*/34).fork()).ldelim(); + return writer; + }; + + /** + * Encodes the specified ErrorResource message, length delimited. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1beta.ErrorResource.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.configmanagement.v1beta.ErrorResource + * @static + * @param {google.cloud.gkehub.configmanagement.v1beta.IErrorResource} message ErrorResource message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + ErrorResource.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes an ErrorResource message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.configmanagement.v1beta.ErrorResource + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.configmanagement.v1beta.ErrorResource} ErrorResource + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + ErrorResource.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.configmanagement.v1beta.ErrorResource(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.sourcePath = reader.string(); + break; + case 2: + message.resourceName = reader.string(); + break; + case 3: + message.resourceNamespace = reader.string(); + break; + case 4: + message.resourceGvk = $root.google.cloud.gkehub.configmanagement.v1beta.GroupVersionKind.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes an ErrorResource message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.configmanagement.v1beta.ErrorResource + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.configmanagement.v1beta.ErrorResource} ErrorResource + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + ErrorResource.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies an ErrorResource message. + * @function verify + * @memberof google.cloud.gkehub.configmanagement.v1beta.ErrorResource + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + ErrorResource.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.sourcePath != null && message.hasOwnProperty("sourcePath")) + if (!$util.isString(message.sourcePath)) + return "sourcePath: string expected"; + if (message.resourceName != null && message.hasOwnProperty("resourceName")) + if (!$util.isString(message.resourceName)) + return "resourceName: string expected"; + if (message.resourceNamespace != null && message.hasOwnProperty("resourceNamespace")) + if (!$util.isString(message.resourceNamespace)) + return "resourceNamespace: string expected"; + if (message.resourceGvk != null && message.hasOwnProperty("resourceGvk")) { + var error = $root.google.cloud.gkehub.configmanagement.v1beta.GroupVersionKind.verify(message.resourceGvk); + if (error) + return "resourceGvk." + error; + } + return null; + }; + + /** + * Creates an ErrorResource message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.configmanagement.v1beta.ErrorResource + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.configmanagement.v1beta.ErrorResource} ErrorResource + */ + ErrorResource.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.configmanagement.v1beta.ErrorResource) + return object; + var message = new $root.google.cloud.gkehub.configmanagement.v1beta.ErrorResource(); + if (object.sourcePath != null) + message.sourcePath = String(object.sourcePath); + if (object.resourceName != null) + message.resourceName = String(object.resourceName); + if (object.resourceNamespace != null) + message.resourceNamespace = String(object.resourceNamespace); + if (object.resourceGvk != null) { + if (typeof object.resourceGvk !== "object") + throw TypeError(".google.cloud.gkehub.configmanagement.v1beta.ErrorResource.resourceGvk: object expected"); + message.resourceGvk = $root.google.cloud.gkehub.configmanagement.v1beta.GroupVersionKind.fromObject(object.resourceGvk); + } + return message; + }; + + /** + * Creates a plain object from an ErrorResource message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.configmanagement.v1beta.ErrorResource + * @static + * @param {google.cloud.gkehub.configmanagement.v1beta.ErrorResource} message ErrorResource + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + ErrorResource.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.sourcePath = ""; + object.resourceName = ""; + object.resourceNamespace = ""; + object.resourceGvk = null; + } + if (message.sourcePath != null && message.hasOwnProperty("sourcePath")) + object.sourcePath = message.sourcePath; + if (message.resourceName != null && message.hasOwnProperty("resourceName")) + object.resourceName = message.resourceName; + if (message.resourceNamespace != null && message.hasOwnProperty("resourceNamespace")) + object.resourceNamespace = message.resourceNamespace; + if (message.resourceGvk != null && message.hasOwnProperty("resourceGvk")) + object.resourceGvk = $root.google.cloud.gkehub.configmanagement.v1beta.GroupVersionKind.toObject(message.resourceGvk, options); + return object; + }; + + /** + * Converts this ErrorResource to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.configmanagement.v1beta.ErrorResource + * @instance + * @returns {Object.} JSON object + */ + ErrorResource.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return ErrorResource; + })(); + + v1beta.GroupVersionKind = (function() { + + /** + * Properties of a GroupVersionKind. + * @memberof google.cloud.gkehub.configmanagement.v1beta + * @interface IGroupVersionKind + * @property {string|null} [group] GroupVersionKind group + * @property {string|null} [version] GroupVersionKind version + * @property {string|null} [kind] GroupVersionKind kind + */ + + /** + * Constructs a new GroupVersionKind. + * @memberof google.cloud.gkehub.configmanagement.v1beta + * @classdesc Represents a GroupVersionKind. + * @implements IGroupVersionKind + * @constructor + * @param {google.cloud.gkehub.configmanagement.v1beta.IGroupVersionKind=} [properties] Properties to set + */ + function GroupVersionKind(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]]; + } + + /** + * GroupVersionKind group. + * @member {string} group + * @memberof google.cloud.gkehub.configmanagement.v1beta.GroupVersionKind + * @instance + */ + GroupVersionKind.prototype.group = ""; + + /** + * GroupVersionKind version. + * @member {string} version + * @memberof google.cloud.gkehub.configmanagement.v1beta.GroupVersionKind + * @instance + */ + GroupVersionKind.prototype.version = ""; + + /** + * GroupVersionKind kind. + * @member {string} kind + * @memberof google.cloud.gkehub.configmanagement.v1beta.GroupVersionKind + * @instance + */ + GroupVersionKind.prototype.kind = ""; + + /** + * Creates a new GroupVersionKind instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.configmanagement.v1beta.GroupVersionKind + * @static + * @param {google.cloud.gkehub.configmanagement.v1beta.IGroupVersionKind=} [properties] Properties to set + * @returns {google.cloud.gkehub.configmanagement.v1beta.GroupVersionKind} GroupVersionKind instance + */ + GroupVersionKind.create = function create(properties) { + return new GroupVersionKind(properties); + }; + + /** + * Encodes the specified GroupVersionKind message. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1beta.GroupVersionKind.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.configmanagement.v1beta.GroupVersionKind + * @static + * @param {google.cloud.gkehub.configmanagement.v1beta.IGroupVersionKind} message GroupVersionKind message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + GroupVersionKind.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.group != null && Object.hasOwnProperty.call(message, "group")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.group); + if (message.version != null && Object.hasOwnProperty.call(message, "version")) + writer.uint32(/* id 2, wireType 2 =*/18).string(message.version); + if (message.kind != null && Object.hasOwnProperty.call(message, "kind")) + writer.uint32(/* id 3, wireType 2 =*/26).string(message.kind); + return writer; + }; + + /** + * Encodes the specified GroupVersionKind message, length delimited. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1beta.GroupVersionKind.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.configmanagement.v1beta.GroupVersionKind + * @static + * @param {google.cloud.gkehub.configmanagement.v1beta.IGroupVersionKind} message GroupVersionKind message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + GroupVersionKind.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a GroupVersionKind message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.configmanagement.v1beta.GroupVersionKind + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.configmanagement.v1beta.GroupVersionKind} GroupVersionKind + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + GroupVersionKind.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.configmanagement.v1beta.GroupVersionKind(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.group = reader.string(); + break; + case 2: + message.version = reader.string(); + break; + case 3: + message.kind = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a GroupVersionKind message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.configmanagement.v1beta.GroupVersionKind + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.configmanagement.v1beta.GroupVersionKind} GroupVersionKind + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + GroupVersionKind.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a GroupVersionKind message. + * @function verify + * @memberof google.cloud.gkehub.configmanagement.v1beta.GroupVersionKind + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + GroupVersionKind.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.group != null && message.hasOwnProperty("group")) + if (!$util.isString(message.group)) + return "group: string expected"; + if (message.version != null && message.hasOwnProperty("version")) + if (!$util.isString(message.version)) + return "version: string expected"; + if (message.kind != null && message.hasOwnProperty("kind")) + if (!$util.isString(message.kind)) + return "kind: string expected"; + return null; + }; + + /** + * Creates a GroupVersionKind message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.configmanagement.v1beta.GroupVersionKind + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.configmanagement.v1beta.GroupVersionKind} GroupVersionKind + */ + GroupVersionKind.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.configmanagement.v1beta.GroupVersionKind) + return object; + var message = new $root.google.cloud.gkehub.configmanagement.v1beta.GroupVersionKind(); + if (object.group != null) + message.group = String(object.group); + if (object.version != null) + message.version = String(object.version); + if (object.kind != null) + message.kind = String(object.kind); + return message; + }; + + /** + * Creates a plain object from a GroupVersionKind message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.configmanagement.v1beta.GroupVersionKind + * @static + * @param {google.cloud.gkehub.configmanagement.v1beta.GroupVersionKind} message GroupVersionKind + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + GroupVersionKind.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.group = ""; + object.version = ""; + object.kind = ""; + } + if (message.group != null && message.hasOwnProperty("group")) + object.group = message.group; + if (message.version != null && message.hasOwnProperty("version")) + object.version = message.version; + if (message.kind != null && message.hasOwnProperty("kind")) + object.kind = message.kind; + return object; + }; + + /** + * Converts this GroupVersionKind to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.configmanagement.v1beta.GroupVersionKind + * @instance + * @returns {Object.} JSON object + */ + GroupVersionKind.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return GroupVersionKind; + })(); + + v1beta.PolicyControllerState = (function() { + + /** + * Properties of a PolicyControllerState. + * @memberof google.cloud.gkehub.configmanagement.v1beta + * @interface IPolicyControllerState + * @property {google.cloud.gkehub.configmanagement.v1beta.IPolicyControllerVersion|null} [version] PolicyControllerState version + * @property {google.cloud.gkehub.configmanagement.v1beta.IGatekeeperDeploymentState|null} [deploymentState] PolicyControllerState deploymentState + */ + + /** + * Constructs a new PolicyControllerState. + * @memberof google.cloud.gkehub.configmanagement.v1beta + * @classdesc Represents a PolicyControllerState. + * @implements IPolicyControllerState + * @constructor + * @param {google.cloud.gkehub.configmanagement.v1beta.IPolicyControllerState=} [properties] Properties to set + */ + function PolicyControllerState(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]]; + } + + /** + * PolicyControllerState version. + * @member {google.cloud.gkehub.configmanagement.v1beta.IPolicyControllerVersion|null|undefined} version + * @memberof google.cloud.gkehub.configmanagement.v1beta.PolicyControllerState + * @instance + */ + PolicyControllerState.prototype.version = null; + + /** + * PolicyControllerState deploymentState. + * @member {google.cloud.gkehub.configmanagement.v1beta.IGatekeeperDeploymentState|null|undefined} deploymentState + * @memberof google.cloud.gkehub.configmanagement.v1beta.PolicyControllerState + * @instance + */ + PolicyControllerState.prototype.deploymentState = null; + + /** + * Creates a new PolicyControllerState instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.configmanagement.v1beta.PolicyControllerState + * @static + * @param {google.cloud.gkehub.configmanagement.v1beta.IPolicyControllerState=} [properties] Properties to set + * @returns {google.cloud.gkehub.configmanagement.v1beta.PolicyControllerState} PolicyControllerState instance + */ + PolicyControllerState.create = function create(properties) { + return new PolicyControllerState(properties); + }; + + /** + * Encodes the specified PolicyControllerState message. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1beta.PolicyControllerState.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.configmanagement.v1beta.PolicyControllerState + * @static + * @param {google.cloud.gkehub.configmanagement.v1beta.IPolicyControllerState} message PolicyControllerState message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + PolicyControllerState.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.version != null && Object.hasOwnProperty.call(message, "version")) + $root.google.cloud.gkehub.configmanagement.v1beta.PolicyControllerVersion.encode(message.version, writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim(); + if (message.deploymentState != null && Object.hasOwnProperty.call(message, "deploymentState")) + $root.google.cloud.gkehub.configmanagement.v1beta.GatekeeperDeploymentState.encode(message.deploymentState, writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim(); + return writer; + }; + + /** + * Encodes the specified PolicyControllerState message, length delimited. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1beta.PolicyControllerState.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.configmanagement.v1beta.PolicyControllerState + * @static + * @param {google.cloud.gkehub.configmanagement.v1beta.IPolicyControllerState} message PolicyControllerState message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + PolicyControllerState.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a PolicyControllerState message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.configmanagement.v1beta.PolicyControllerState + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.configmanagement.v1beta.PolicyControllerState} PolicyControllerState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + PolicyControllerState.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.configmanagement.v1beta.PolicyControllerState(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.version = $root.google.cloud.gkehub.configmanagement.v1beta.PolicyControllerVersion.decode(reader, reader.uint32()); + break; + case 2: + message.deploymentState = $root.google.cloud.gkehub.configmanagement.v1beta.GatekeeperDeploymentState.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a PolicyControllerState message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.configmanagement.v1beta.PolicyControllerState + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.configmanagement.v1beta.PolicyControllerState} PolicyControllerState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + PolicyControllerState.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a PolicyControllerState message. + * @function verify + * @memberof google.cloud.gkehub.configmanagement.v1beta.PolicyControllerState + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + PolicyControllerState.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.version != null && message.hasOwnProperty("version")) { + var error = $root.google.cloud.gkehub.configmanagement.v1beta.PolicyControllerVersion.verify(message.version); + if (error) + return "version." + error; + } + if (message.deploymentState != null && message.hasOwnProperty("deploymentState")) { + var error = $root.google.cloud.gkehub.configmanagement.v1beta.GatekeeperDeploymentState.verify(message.deploymentState); + if (error) + return "deploymentState." + error; + } + return null; + }; + + /** + * Creates a PolicyControllerState message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.configmanagement.v1beta.PolicyControllerState + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.configmanagement.v1beta.PolicyControllerState} PolicyControllerState + */ + PolicyControllerState.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.configmanagement.v1beta.PolicyControllerState) + return object; + var message = new $root.google.cloud.gkehub.configmanagement.v1beta.PolicyControllerState(); + if (object.version != null) { + if (typeof object.version !== "object") + throw TypeError(".google.cloud.gkehub.configmanagement.v1beta.PolicyControllerState.version: object expected"); + message.version = $root.google.cloud.gkehub.configmanagement.v1beta.PolicyControllerVersion.fromObject(object.version); + } + if (object.deploymentState != null) { + if (typeof object.deploymentState !== "object") + throw TypeError(".google.cloud.gkehub.configmanagement.v1beta.PolicyControllerState.deploymentState: object expected"); + message.deploymentState = $root.google.cloud.gkehub.configmanagement.v1beta.GatekeeperDeploymentState.fromObject(object.deploymentState); + } + return message; + }; + + /** + * Creates a plain object from a PolicyControllerState message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.configmanagement.v1beta.PolicyControllerState + * @static + * @param {google.cloud.gkehub.configmanagement.v1beta.PolicyControllerState} message PolicyControllerState + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + PolicyControllerState.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.version = null; + object.deploymentState = null; + } + if (message.version != null && message.hasOwnProperty("version")) + object.version = $root.google.cloud.gkehub.configmanagement.v1beta.PolicyControllerVersion.toObject(message.version, options); + if (message.deploymentState != null && message.hasOwnProperty("deploymentState")) + object.deploymentState = $root.google.cloud.gkehub.configmanagement.v1beta.GatekeeperDeploymentState.toObject(message.deploymentState, options); + return object; + }; + + /** + * Converts this PolicyControllerState to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.configmanagement.v1beta.PolicyControllerState + * @instance + * @returns {Object.} JSON object + */ + PolicyControllerState.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return PolicyControllerState; + })(); + + v1beta.PolicyControllerVersion = (function() { + + /** + * Properties of a PolicyControllerVersion. + * @memberof google.cloud.gkehub.configmanagement.v1beta + * @interface IPolicyControllerVersion + * @property {string|null} [version] PolicyControllerVersion version + */ + + /** + * Constructs a new PolicyControllerVersion. + * @memberof google.cloud.gkehub.configmanagement.v1beta + * @classdesc Represents a PolicyControllerVersion. + * @implements IPolicyControllerVersion + * @constructor + * @param {google.cloud.gkehub.configmanagement.v1beta.IPolicyControllerVersion=} [properties] Properties to set + */ + function PolicyControllerVersion(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]]; + } + + /** + * PolicyControllerVersion version. + * @member {string} version + * @memberof google.cloud.gkehub.configmanagement.v1beta.PolicyControllerVersion + * @instance + */ + PolicyControllerVersion.prototype.version = ""; + + /** + * Creates a new PolicyControllerVersion instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.configmanagement.v1beta.PolicyControllerVersion + * @static + * @param {google.cloud.gkehub.configmanagement.v1beta.IPolicyControllerVersion=} [properties] Properties to set + * @returns {google.cloud.gkehub.configmanagement.v1beta.PolicyControllerVersion} PolicyControllerVersion instance + */ + PolicyControllerVersion.create = function create(properties) { + return new PolicyControllerVersion(properties); + }; + + /** + * Encodes the specified PolicyControllerVersion message. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1beta.PolicyControllerVersion.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.configmanagement.v1beta.PolicyControllerVersion + * @static + * @param {google.cloud.gkehub.configmanagement.v1beta.IPolicyControllerVersion} message PolicyControllerVersion message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + PolicyControllerVersion.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.version != null && Object.hasOwnProperty.call(message, "version")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.version); + return writer; + }; + + /** + * Encodes the specified PolicyControllerVersion message, length delimited. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1beta.PolicyControllerVersion.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.configmanagement.v1beta.PolicyControllerVersion + * @static + * @param {google.cloud.gkehub.configmanagement.v1beta.IPolicyControllerVersion} message PolicyControllerVersion message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + PolicyControllerVersion.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a PolicyControllerVersion message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.configmanagement.v1beta.PolicyControllerVersion + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.configmanagement.v1beta.PolicyControllerVersion} PolicyControllerVersion + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + PolicyControllerVersion.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.configmanagement.v1beta.PolicyControllerVersion(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.version = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a PolicyControllerVersion message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.configmanagement.v1beta.PolicyControllerVersion + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.configmanagement.v1beta.PolicyControllerVersion} PolicyControllerVersion + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + PolicyControllerVersion.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a PolicyControllerVersion message. + * @function verify + * @memberof google.cloud.gkehub.configmanagement.v1beta.PolicyControllerVersion + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + PolicyControllerVersion.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.version != null && message.hasOwnProperty("version")) + if (!$util.isString(message.version)) + return "version: string expected"; + return null; + }; + + /** + * Creates a PolicyControllerVersion message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.configmanagement.v1beta.PolicyControllerVersion + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.configmanagement.v1beta.PolicyControllerVersion} PolicyControllerVersion + */ + PolicyControllerVersion.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.configmanagement.v1beta.PolicyControllerVersion) + return object; + var message = new $root.google.cloud.gkehub.configmanagement.v1beta.PolicyControllerVersion(); + if (object.version != null) + message.version = String(object.version); + return message; + }; + + /** + * Creates a plain object from a PolicyControllerVersion message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.configmanagement.v1beta.PolicyControllerVersion + * @static + * @param {google.cloud.gkehub.configmanagement.v1beta.PolicyControllerVersion} message PolicyControllerVersion + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + PolicyControllerVersion.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) + object.version = ""; + if (message.version != null && message.hasOwnProperty("version")) + object.version = message.version; + return object; + }; + + /** + * Converts this PolicyControllerVersion to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.configmanagement.v1beta.PolicyControllerVersion + * @instance + * @returns {Object.} JSON object + */ + PolicyControllerVersion.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return PolicyControllerVersion; + })(); + + v1beta.BinauthzState = (function() { + + /** + * Properties of a BinauthzState. + * @memberof google.cloud.gkehub.configmanagement.v1beta + * @interface IBinauthzState + * @property {google.cloud.gkehub.configmanagement.v1beta.DeploymentState|null} [webhook] BinauthzState webhook + * @property {google.cloud.gkehub.configmanagement.v1beta.IBinauthzVersion|null} [version] BinauthzState version + */ + + /** + * Constructs a new BinauthzState. + * @memberof google.cloud.gkehub.configmanagement.v1beta + * @classdesc Represents a BinauthzState. + * @implements IBinauthzState + * @constructor + * @param {google.cloud.gkehub.configmanagement.v1beta.IBinauthzState=} [properties] Properties to set + */ + function BinauthzState(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]]; + } + + /** + * BinauthzState webhook. + * @member {google.cloud.gkehub.configmanagement.v1beta.DeploymentState} webhook + * @memberof google.cloud.gkehub.configmanagement.v1beta.BinauthzState + * @instance + */ + BinauthzState.prototype.webhook = 0; + + /** + * BinauthzState version. + * @member {google.cloud.gkehub.configmanagement.v1beta.IBinauthzVersion|null|undefined} version + * @memberof google.cloud.gkehub.configmanagement.v1beta.BinauthzState + * @instance + */ + BinauthzState.prototype.version = null; + + /** + * Creates a new BinauthzState instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.configmanagement.v1beta.BinauthzState + * @static + * @param {google.cloud.gkehub.configmanagement.v1beta.IBinauthzState=} [properties] Properties to set + * @returns {google.cloud.gkehub.configmanagement.v1beta.BinauthzState} BinauthzState instance + */ + BinauthzState.create = function create(properties) { + return new BinauthzState(properties); + }; + + /** + * Encodes the specified BinauthzState message. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1beta.BinauthzState.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.configmanagement.v1beta.BinauthzState + * @static + * @param {google.cloud.gkehub.configmanagement.v1beta.IBinauthzState} message BinauthzState message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + BinauthzState.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.webhook != null && Object.hasOwnProperty.call(message, "webhook")) + writer.uint32(/* id 1, wireType 0 =*/8).int32(message.webhook); + if (message.version != null && Object.hasOwnProperty.call(message, "version")) + $root.google.cloud.gkehub.configmanagement.v1beta.BinauthzVersion.encode(message.version, writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim(); + return writer; + }; + + /** + * Encodes the specified BinauthzState message, length delimited. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1beta.BinauthzState.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.configmanagement.v1beta.BinauthzState + * @static + * @param {google.cloud.gkehub.configmanagement.v1beta.IBinauthzState} message BinauthzState message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + BinauthzState.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a BinauthzState message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.configmanagement.v1beta.BinauthzState + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.configmanagement.v1beta.BinauthzState} BinauthzState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + BinauthzState.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.configmanagement.v1beta.BinauthzState(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.webhook = reader.int32(); + break; + case 2: + message.version = $root.google.cloud.gkehub.configmanagement.v1beta.BinauthzVersion.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a BinauthzState message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.configmanagement.v1beta.BinauthzState + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.configmanagement.v1beta.BinauthzState} BinauthzState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + BinauthzState.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a BinauthzState message. + * @function verify + * @memberof google.cloud.gkehub.configmanagement.v1beta.BinauthzState + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + BinauthzState.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.webhook != null && message.hasOwnProperty("webhook")) + switch (message.webhook) { + default: + return "webhook: enum value expected"; + case 0: + case 1: + case 2: + case 3: + break; + } + if (message.version != null && message.hasOwnProperty("version")) { + var error = $root.google.cloud.gkehub.configmanagement.v1beta.BinauthzVersion.verify(message.version); + if (error) + return "version." + error; + } + return null; + }; + + /** + * Creates a BinauthzState message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.configmanagement.v1beta.BinauthzState + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.configmanagement.v1beta.BinauthzState} BinauthzState + */ + BinauthzState.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.configmanagement.v1beta.BinauthzState) + return object; + var message = new $root.google.cloud.gkehub.configmanagement.v1beta.BinauthzState(); + switch (object.webhook) { + case "DEPLOYMENT_STATE_UNSPECIFIED": + case 0: + message.webhook = 0; + break; + case "NOT_INSTALLED": + case 1: + message.webhook = 1; + break; + case "INSTALLED": + case 2: + message.webhook = 2; + break; + case "ERROR": + case 3: + message.webhook = 3; + break; + } + if (object.version != null) { + if (typeof object.version !== "object") + throw TypeError(".google.cloud.gkehub.configmanagement.v1beta.BinauthzState.version: object expected"); + message.version = $root.google.cloud.gkehub.configmanagement.v1beta.BinauthzVersion.fromObject(object.version); + } + return message; + }; + + /** + * Creates a plain object from a BinauthzState message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.configmanagement.v1beta.BinauthzState + * @static + * @param {google.cloud.gkehub.configmanagement.v1beta.BinauthzState} message BinauthzState + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + BinauthzState.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.webhook = options.enums === String ? "DEPLOYMENT_STATE_UNSPECIFIED" : 0; + object.version = null; + } + if (message.webhook != null && message.hasOwnProperty("webhook")) + object.webhook = options.enums === String ? $root.google.cloud.gkehub.configmanagement.v1beta.DeploymentState[message.webhook] : message.webhook; + if (message.version != null && message.hasOwnProperty("version")) + object.version = $root.google.cloud.gkehub.configmanagement.v1beta.BinauthzVersion.toObject(message.version, options); + return object; + }; + + /** + * Converts this BinauthzState to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.configmanagement.v1beta.BinauthzState + * @instance + * @returns {Object.} JSON object + */ + BinauthzState.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return BinauthzState; + })(); + + v1beta.BinauthzVersion = (function() { + + /** + * Properties of a BinauthzVersion. + * @memberof google.cloud.gkehub.configmanagement.v1beta + * @interface IBinauthzVersion + * @property {string|null} [webhookVersion] BinauthzVersion webhookVersion + */ + + /** + * Constructs a new BinauthzVersion. + * @memberof google.cloud.gkehub.configmanagement.v1beta + * @classdesc Represents a BinauthzVersion. + * @implements IBinauthzVersion + * @constructor + * @param {google.cloud.gkehub.configmanagement.v1beta.IBinauthzVersion=} [properties] Properties to set + */ + function BinauthzVersion(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]]; + } + + /** + * BinauthzVersion webhookVersion. + * @member {string} webhookVersion + * @memberof google.cloud.gkehub.configmanagement.v1beta.BinauthzVersion + * @instance + */ + BinauthzVersion.prototype.webhookVersion = ""; + + /** + * Creates a new BinauthzVersion instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.configmanagement.v1beta.BinauthzVersion + * @static + * @param {google.cloud.gkehub.configmanagement.v1beta.IBinauthzVersion=} [properties] Properties to set + * @returns {google.cloud.gkehub.configmanagement.v1beta.BinauthzVersion} BinauthzVersion instance + */ + BinauthzVersion.create = function create(properties) { + return new BinauthzVersion(properties); + }; + + /** + * Encodes the specified BinauthzVersion message. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1beta.BinauthzVersion.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.configmanagement.v1beta.BinauthzVersion + * @static + * @param {google.cloud.gkehub.configmanagement.v1beta.IBinauthzVersion} message BinauthzVersion message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + BinauthzVersion.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.webhookVersion != null && Object.hasOwnProperty.call(message, "webhookVersion")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.webhookVersion); + return writer; + }; + + /** + * Encodes the specified BinauthzVersion message, length delimited. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1beta.BinauthzVersion.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.configmanagement.v1beta.BinauthzVersion + * @static + * @param {google.cloud.gkehub.configmanagement.v1beta.IBinauthzVersion} message BinauthzVersion message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + BinauthzVersion.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a BinauthzVersion message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.configmanagement.v1beta.BinauthzVersion + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.configmanagement.v1beta.BinauthzVersion} BinauthzVersion + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + BinauthzVersion.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.configmanagement.v1beta.BinauthzVersion(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.webhookVersion = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a BinauthzVersion message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.configmanagement.v1beta.BinauthzVersion + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.configmanagement.v1beta.BinauthzVersion} BinauthzVersion + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + BinauthzVersion.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a BinauthzVersion message. + * @function verify + * @memberof google.cloud.gkehub.configmanagement.v1beta.BinauthzVersion + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + BinauthzVersion.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.webhookVersion != null && message.hasOwnProperty("webhookVersion")) + if (!$util.isString(message.webhookVersion)) + return "webhookVersion: string expected"; + return null; + }; + + /** + * Creates a BinauthzVersion message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.configmanagement.v1beta.BinauthzVersion + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.configmanagement.v1beta.BinauthzVersion} BinauthzVersion + */ + BinauthzVersion.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.configmanagement.v1beta.BinauthzVersion) + return object; + var message = new $root.google.cloud.gkehub.configmanagement.v1beta.BinauthzVersion(); + if (object.webhookVersion != null) + message.webhookVersion = String(object.webhookVersion); + return message; + }; + + /** + * Creates a plain object from a BinauthzVersion message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.configmanagement.v1beta.BinauthzVersion + * @static + * @param {google.cloud.gkehub.configmanagement.v1beta.BinauthzVersion} message BinauthzVersion + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + BinauthzVersion.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) + object.webhookVersion = ""; + if (message.webhookVersion != null && message.hasOwnProperty("webhookVersion")) + object.webhookVersion = message.webhookVersion; + return object; + }; + + /** + * Converts this BinauthzVersion to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.configmanagement.v1beta.BinauthzVersion + * @instance + * @returns {Object.} JSON object + */ + BinauthzVersion.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return BinauthzVersion; + })(); + + v1beta.GatekeeperDeploymentState = (function() { + + /** + * Properties of a GatekeeperDeploymentState. + * @memberof google.cloud.gkehub.configmanagement.v1beta + * @interface IGatekeeperDeploymentState + * @property {google.cloud.gkehub.configmanagement.v1beta.DeploymentState|null} [gatekeeperControllerManagerState] GatekeeperDeploymentState gatekeeperControllerManagerState + * @property {google.cloud.gkehub.configmanagement.v1beta.DeploymentState|null} [gatekeeperAudit] GatekeeperDeploymentState gatekeeperAudit + */ + + /** + * Constructs a new GatekeeperDeploymentState. + * @memberof google.cloud.gkehub.configmanagement.v1beta + * @classdesc Represents a GatekeeperDeploymentState. + * @implements IGatekeeperDeploymentState + * @constructor + * @param {google.cloud.gkehub.configmanagement.v1beta.IGatekeeperDeploymentState=} [properties] Properties to set + */ + function GatekeeperDeploymentState(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]]; + } + + /** + * GatekeeperDeploymentState gatekeeperControllerManagerState. + * @member {google.cloud.gkehub.configmanagement.v1beta.DeploymentState} gatekeeperControllerManagerState + * @memberof google.cloud.gkehub.configmanagement.v1beta.GatekeeperDeploymentState + * @instance + */ + GatekeeperDeploymentState.prototype.gatekeeperControllerManagerState = 0; + + /** + * GatekeeperDeploymentState gatekeeperAudit. + * @member {google.cloud.gkehub.configmanagement.v1beta.DeploymentState} gatekeeperAudit + * @memberof google.cloud.gkehub.configmanagement.v1beta.GatekeeperDeploymentState + * @instance + */ + GatekeeperDeploymentState.prototype.gatekeeperAudit = 0; + + /** + * Creates a new GatekeeperDeploymentState instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.configmanagement.v1beta.GatekeeperDeploymentState + * @static + * @param {google.cloud.gkehub.configmanagement.v1beta.IGatekeeperDeploymentState=} [properties] Properties to set + * @returns {google.cloud.gkehub.configmanagement.v1beta.GatekeeperDeploymentState} GatekeeperDeploymentState instance + */ + GatekeeperDeploymentState.create = function create(properties) { + return new GatekeeperDeploymentState(properties); + }; + + /** + * Encodes the specified GatekeeperDeploymentState message. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1beta.GatekeeperDeploymentState.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.configmanagement.v1beta.GatekeeperDeploymentState + * @static + * @param {google.cloud.gkehub.configmanagement.v1beta.IGatekeeperDeploymentState} message GatekeeperDeploymentState message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + GatekeeperDeploymentState.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.gatekeeperControllerManagerState != null && Object.hasOwnProperty.call(message, "gatekeeperControllerManagerState")) + writer.uint32(/* id 1, wireType 0 =*/8).int32(message.gatekeeperControllerManagerState); + if (message.gatekeeperAudit != null && Object.hasOwnProperty.call(message, "gatekeeperAudit")) + writer.uint32(/* id 2, wireType 0 =*/16).int32(message.gatekeeperAudit); + return writer; + }; + + /** + * Encodes the specified GatekeeperDeploymentState message, length delimited. Does not implicitly {@link google.cloud.gkehub.configmanagement.v1beta.GatekeeperDeploymentState.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.configmanagement.v1beta.GatekeeperDeploymentState + * @static + * @param {google.cloud.gkehub.configmanagement.v1beta.IGatekeeperDeploymentState} message GatekeeperDeploymentState message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + GatekeeperDeploymentState.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a GatekeeperDeploymentState message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.configmanagement.v1beta.GatekeeperDeploymentState + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.configmanagement.v1beta.GatekeeperDeploymentState} GatekeeperDeploymentState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + GatekeeperDeploymentState.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.configmanagement.v1beta.GatekeeperDeploymentState(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.gatekeeperControllerManagerState = reader.int32(); + break; + case 2: + message.gatekeeperAudit = reader.int32(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a GatekeeperDeploymentState message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.configmanagement.v1beta.GatekeeperDeploymentState + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.configmanagement.v1beta.GatekeeperDeploymentState} GatekeeperDeploymentState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + GatekeeperDeploymentState.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a GatekeeperDeploymentState message. + * @function verify + * @memberof google.cloud.gkehub.configmanagement.v1beta.GatekeeperDeploymentState + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + GatekeeperDeploymentState.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.gatekeeperControllerManagerState != null && message.hasOwnProperty("gatekeeperControllerManagerState")) + switch (message.gatekeeperControllerManagerState) { + default: + return "gatekeeperControllerManagerState: enum value expected"; + case 0: + case 1: + case 2: + case 3: + break; + } + if (message.gatekeeperAudit != null && message.hasOwnProperty("gatekeeperAudit")) + switch (message.gatekeeperAudit) { + default: + return "gatekeeperAudit: enum value expected"; + case 0: + case 1: + case 2: + case 3: + break; + } + return null; + }; + + /** + * Creates a GatekeeperDeploymentState message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.configmanagement.v1beta.GatekeeperDeploymentState + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.configmanagement.v1beta.GatekeeperDeploymentState} GatekeeperDeploymentState + */ + GatekeeperDeploymentState.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.configmanagement.v1beta.GatekeeperDeploymentState) + return object; + var message = new $root.google.cloud.gkehub.configmanagement.v1beta.GatekeeperDeploymentState(); + switch (object.gatekeeperControllerManagerState) { + case "DEPLOYMENT_STATE_UNSPECIFIED": + case 0: + message.gatekeeperControllerManagerState = 0; + break; + case "NOT_INSTALLED": + case 1: + message.gatekeeperControllerManagerState = 1; + break; + case "INSTALLED": + case 2: + message.gatekeeperControllerManagerState = 2; + break; + case "ERROR": + case 3: + message.gatekeeperControllerManagerState = 3; + break; + } + switch (object.gatekeeperAudit) { + case "DEPLOYMENT_STATE_UNSPECIFIED": + case 0: + message.gatekeeperAudit = 0; + break; + case "NOT_INSTALLED": + case 1: + message.gatekeeperAudit = 1; + break; + case "INSTALLED": + case 2: + message.gatekeeperAudit = 2; + break; + case "ERROR": + case 3: + message.gatekeeperAudit = 3; + break; + } + return message; + }; + + /** + * Creates a plain object from a GatekeeperDeploymentState message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.configmanagement.v1beta.GatekeeperDeploymentState + * @static + * @param {google.cloud.gkehub.configmanagement.v1beta.GatekeeperDeploymentState} message GatekeeperDeploymentState + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + GatekeeperDeploymentState.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.gatekeeperControllerManagerState = options.enums === String ? "DEPLOYMENT_STATE_UNSPECIFIED" : 0; + object.gatekeeperAudit = options.enums === String ? "DEPLOYMENT_STATE_UNSPECIFIED" : 0; + } + if (message.gatekeeperControllerManagerState != null && message.hasOwnProperty("gatekeeperControllerManagerState")) + object.gatekeeperControllerManagerState = options.enums === String ? $root.google.cloud.gkehub.configmanagement.v1beta.DeploymentState[message.gatekeeperControllerManagerState] : message.gatekeeperControllerManagerState; + if (message.gatekeeperAudit != null && message.hasOwnProperty("gatekeeperAudit")) + object.gatekeeperAudit = options.enums === String ? $root.google.cloud.gkehub.configmanagement.v1beta.DeploymentState[message.gatekeeperAudit] : message.gatekeeperAudit; + return object; + }; + + /** + * Converts this GatekeeperDeploymentState to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.configmanagement.v1beta.GatekeeperDeploymentState + * @instance + * @returns {Object.} JSON object + */ + GatekeeperDeploymentState.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return GatekeeperDeploymentState; + })(); + + return v1beta; + })(); + + return configmanagement; + })(); + + gkehub.v1 = (function() { + + /** + * Namespace v1. + * @memberof google.cloud.gkehub + * @namespace + */ + var v1 = {}; + + v1.Feature = (function() { + + /** + * Properties of a Feature. + * @memberof google.cloud.gkehub.v1 + * @interface IFeature + * @property {string|null} [name] Feature name + * @property {Object.|null} [labels] Feature labels + * @property {google.cloud.gkehub.v1.IFeatureResourceState|null} [resourceState] Feature resourceState + * @property {google.cloud.gkehub.v1.ICommonFeatureSpec|null} [spec] Feature spec + * @property {Object.|null} [membershipSpecs] Feature membershipSpecs + * @property {google.cloud.gkehub.v1.ICommonFeatureState|null} [state] Feature state + * @property {Object.|null} [membershipStates] Feature membershipStates + * @property {google.protobuf.ITimestamp|null} [createTime] Feature createTime + * @property {google.protobuf.ITimestamp|null} [updateTime] Feature updateTime + * @property {google.protobuf.ITimestamp|null} [deleteTime] Feature deleteTime + */ + + /** + * Constructs a new Feature. + * @memberof google.cloud.gkehub.v1 + * @classdesc Represents a Feature. + * @implements IFeature + * @constructor + * @param {google.cloud.gkehub.v1.IFeature=} [properties] Properties to set + */ + function Feature(properties) { + this.labels = {}; + this.membershipSpecs = {}; + this.membershipStates = {}; + 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]]; + } + + /** + * Feature name. + * @member {string} name + * @memberof google.cloud.gkehub.v1.Feature + * @instance + */ + Feature.prototype.name = ""; + + /** + * Feature labels. + * @member {Object.} labels + * @memberof google.cloud.gkehub.v1.Feature + * @instance + */ + Feature.prototype.labels = $util.emptyObject; + + /** + * Feature resourceState. + * @member {google.cloud.gkehub.v1.IFeatureResourceState|null|undefined} resourceState + * @memberof google.cloud.gkehub.v1.Feature + * @instance + */ + Feature.prototype.resourceState = null; + + /** + * Feature spec. + * @member {google.cloud.gkehub.v1.ICommonFeatureSpec|null|undefined} spec + * @memberof google.cloud.gkehub.v1.Feature + * @instance + */ + Feature.prototype.spec = null; + + /** + * Feature membershipSpecs. + * @member {Object.} membershipSpecs + * @memberof google.cloud.gkehub.v1.Feature + * @instance + */ + Feature.prototype.membershipSpecs = $util.emptyObject; + + /** + * Feature state. + * @member {google.cloud.gkehub.v1.ICommonFeatureState|null|undefined} state + * @memberof google.cloud.gkehub.v1.Feature + * @instance + */ + Feature.prototype.state = null; + + /** + * Feature membershipStates. + * @member {Object.} membershipStates + * @memberof google.cloud.gkehub.v1.Feature + * @instance + */ + Feature.prototype.membershipStates = $util.emptyObject; + + /** + * Feature createTime. + * @member {google.protobuf.ITimestamp|null|undefined} createTime + * @memberof google.cloud.gkehub.v1.Feature + * @instance + */ + Feature.prototype.createTime = null; + + /** + * Feature updateTime. + * @member {google.protobuf.ITimestamp|null|undefined} updateTime + * @memberof google.cloud.gkehub.v1.Feature + * @instance + */ + Feature.prototype.updateTime = null; + + /** + * Feature deleteTime. + * @member {google.protobuf.ITimestamp|null|undefined} deleteTime + * @memberof google.cloud.gkehub.v1.Feature + * @instance + */ + Feature.prototype.deleteTime = null; + + /** + * Creates a new Feature instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.v1.Feature + * @static + * @param {google.cloud.gkehub.v1.IFeature=} [properties] Properties to set + * @returns {google.cloud.gkehub.v1.Feature} Feature instance + */ + Feature.create = function create(properties) { + return new Feature(properties); + }; + + /** + * Encodes the specified Feature message. Does not implicitly {@link google.cloud.gkehub.v1.Feature.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.v1.Feature + * @static + * @param {google.cloud.gkehub.v1.IFeature} message Feature message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + Feature.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.name != null && Object.hasOwnProperty.call(message, "name")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.name); + if (message.labels != null && Object.hasOwnProperty.call(message, "labels")) + for (var keys = Object.keys(message.labels), i = 0; i < keys.length; ++i) + writer.uint32(/* id 2, wireType 2 =*/18).fork().uint32(/* id 1, wireType 2 =*/10).string(keys[i]).uint32(/* id 2, wireType 2 =*/18).string(message.labels[keys[i]]).ldelim(); + if (message.resourceState != null && Object.hasOwnProperty.call(message, "resourceState")) + $root.google.cloud.gkehub.v1.FeatureResourceState.encode(message.resourceState, writer.uint32(/* id 3, wireType 2 =*/26).fork()).ldelim(); + if (message.spec != null && Object.hasOwnProperty.call(message, "spec")) + $root.google.cloud.gkehub.v1.CommonFeatureSpec.encode(message.spec, writer.uint32(/* id 4, wireType 2 =*/34).fork()).ldelim(); + if (message.membershipSpecs != null && Object.hasOwnProperty.call(message, "membershipSpecs")) + for (var keys = Object.keys(message.membershipSpecs), i = 0; i < keys.length; ++i) { + writer.uint32(/* id 5, wireType 2 =*/42).fork().uint32(/* id 1, wireType 2 =*/10).string(keys[i]); + $root.google.cloud.gkehub.v1.MembershipFeatureSpec.encode(message.membershipSpecs[keys[i]], writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim().ldelim(); + } + if (message.state != null && Object.hasOwnProperty.call(message, "state")) + $root.google.cloud.gkehub.v1.CommonFeatureState.encode(message.state, writer.uint32(/* id 6, wireType 2 =*/50).fork()).ldelim(); + if (message.membershipStates != null && Object.hasOwnProperty.call(message, "membershipStates")) + for (var keys = Object.keys(message.membershipStates), i = 0; i < keys.length; ++i) { + writer.uint32(/* id 7, wireType 2 =*/58).fork().uint32(/* id 1, wireType 2 =*/10).string(keys[i]); + $root.google.cloud.gkehub.v1.MembershipFeatureState.encode(message.membershipStates[keys[i]], writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim().ldelim(); + } + if (message.createTime != null && Object.hasOwnProperty.call(message, "createTime")) + $root.google.protobuf.Timestamp.encode(message.createTime, writer.uint32(/* id 8, wireType 2 =*/66).fork()).ldelim(); + if (message.updateTime != null && Object.hasOwnProperty.call(message, "updateTime")) + $root.google.protobuf.Timestamp.encode(message.updateTime, writer.uint32(/* id 9, wireType 2 =*/74).fork()).ldelim(); + if (message.deleteTime != null && Object.hasOwnProperty.call(message, "deleteTime")) + $root.google.protobuf.Timestamp.encode(message.deleteTime, writer.uint32(/* id 10, wireType 2 =*/82).fork()).ldelim(); + return writer; + }; + + /** + * Encodes the specified Feature message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1.Feature.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.v1.Feature + * @static + * @param {google.cloud.gkehub.v1.IFeature} message Feature message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + Feature.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a Feature message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.v1.Feature + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.v1.Feature} Feature + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + Feature.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.v1.Feature(), key, value; + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.name = reader.string(); + break; + case 2: + 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 3: + message.resourceState = $root.google.cloud.gkehub.v1.FeatureResourceState.decode(reader, reader.uint32()); + break; + case 4: + message.spec = $root.google.cloud.gkehub.v1.CommonFeatureSpec.decode(reader, reader.uint32()); + break; + case 5: + if (message.membershipSpecs === $util.emptyObject) + message.membershipSpecs = {}; + var end2 = reader.uint32() + reader.pos; + key = ""; + value = null; + while (reader.pos < end2) { + var tag2 = reader.uint32(); + switch (tag2 >>> 3) { + case 1: + key = reader.string(); + break; + case 2: + value = $root.google.cloud.gkehub.v1.MembershipFeatureSpec.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag2 & 7); + break; + } + } + message.membershipSpecs[key] = value; + break; + case 6: + message.state = $root.google.cloud.gkehub.v1.CommonFeatureState.decode(reader, reader.uint32()); + break; + case 7: + if (message.membershipStates === $util.emptyObject) + message.membershipStates = {}; + var end2 = reader.uint32() + reader.pos; + key = ""; + value = null; + while (reader.pos < end2) { + var tag2 = reader.uint32(); + switch (tag2 >>> 3) { + case 1: + key = reader.string(); + break; + case 2: + value = $root.google.cloud.gkehub.v1.MembershipFeatureState.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag2 & 7); + break; + } + } + message.membershipStates[key] = value; + break; + case 8: + message.createTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + break; + case 9: + message.updateTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + break; + case 10: + message.deleteTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a Feature message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.v1.Feature + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.v1.Feature} Feature + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + Feature.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a Feature message. + * @function verify + * @memberof google.cloud.gkehub.v1.Feature + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + Feature.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.name != null && message.hasOwnProperty("name")) + if (!$util.isString(message.name)) + return "name: string expected"; + if (message.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.resourceState != null && message.hasOwnProperty("resourceState")) { + var error = $root.google.cloud.gkehub.v1.FeatureResourceState.verify(message.resourceState); + if (error) + return "resourceState." + error; + } + if (message.spec != null && message.hasOwnProperty("spec")) { + var error = $root.google.cloud.gkehub.v1.CommonFeatureSpec.verify(message.spec); + if (error) + return "spec." + error; + } + if (message.membershipSpecs != null && message.hasOwnProperty("membershipSpecs")) { + if (!$util.isObject(message.membershipSpecs)) + return "membershipSpecs: object expected"; + var key = Object.keys(message.membershipSpecs); + for (var i = 0; i < key.length; ++i) { + var error = $root.google.cloud.gkehub.v1.MembershipFeatureSpec.verify(message.membershipSpecs[key[i]]); + if (error) + return "membershipSpecs." + error; + } + } + if (message.state != null && message.hasOwnProperty("state")) { + var error = $root.google.cloud.gkehub.v1.CommonFeatureState.verify(message.state); + if (error) + return "state." + error; + } + if (message.membershipStates != null && message.hasOwnProperty("membershipStates")) { + if (!$util.isObject(message.membershipStates)) + return "membershipStates: object expected"; + var key = Object.keys(message.membershipStates); + for (var i = 0; i < key.length; ++i) { + var error = $root.google.cloud.gkehub.v1.MembershipFeatureState.verify(message.membershipStates[key[i]]); + if (error) + return "membershipStates." + error; + } + } + if (message.createTime != null && message.hasOwnProperty("createTime")) { + var error = $root.google.protobuf.Timestamp.verify(message.createTime); + if (error) + return "createTime." + error; + } + if (message.updateTime != null && message.hasOwnProperty("updateTime")) { + var error = $root.google.protobuf.Timestamp.verify(message.updateTime); + if (error) + return "updateTime." + error; + } + if (message.deleteTime != null && message.hasOwnProperty("deleteTime")) { + var error = $root.google.protobuf.Timestamp.verify(message.deleteTime); + if (error) + return "deleteTime." + error; + } + return null; + }; + + /** + * Creates a Feature message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.v1.Feature + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.v1.Feature} Feature + */ + Feature.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.v1.Feature) + return object; + var message = new $root.google.cloud.gkehub.v1.Feature(); + if (object.name != null) + message.name = String(object.name); + if (object.labels) { + if (typeof object.labels !== "object") + throw TypeError(".google.cloud.gkehub.v1.Feature.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.resourceState != null) { + if (typeof object.resourceState !== "object") + throw TypeError(".google.cloud.gkehub.v1.Feature.resourceState: object expected"); + message.resourceState = $root.google.cloud.gkehub.v1.FeatureResourceState.fromObject(object.resourceState); + } + if (object.spec != null) { + if (typeof object.spec !== "object") + throw TypeError(".google.cloud.gkehub.v1.Feature.spec: object expected"); + message.spec = $root.google.cloud.gkehub.v1.CommonFeatureSpec.fromObject(object.spec); + } + if (object.membershipSpecs) { + if (typeof object.membershipSpecs !== "object") + throw TypeError(".google.cloud.gkehub.v1.Feature.membershipSpecs: object expected"); + message.membershipSpecs = {}; + for (var keys = Object.keys(object.membershipSpecs), i = 0; i < keys.length; ++i) { + if (typeof object.membershipSpecs[keys[i]] !== "object") + throw TypeError(".google.cloud.gkehub.v1.Feature.membershipSpecs: object expected"); + message.membershipSpecs[keys[i]] = $root.google.cloud.gkehub.v1.MembershipFeatureSpec.fromObject(object.membershipSpecs[keys[i]]); + } + } + if (object.state != null) { + if (typeof object.state !== "object") + throw TypeError(".google.cloud.gkehub.v1.Feature.state: object expected"); + message.state = $root.google.cloud.gkehub.v1.CommonFeatureState.fromObject(object.state); + } + if (object.membershipStates) { + if (typeof object.membershipStates !== "object") + throw TypeError(".google.cloud.gkehub.v1.Feature.membershipStates: object expected"); + message.membershipStates = {}; + for (var keys = Object.keys(object.membershipStates), i = 0; i < keys.length; ++i) { + if (typeof object.membershipStates[keys[i]] !== "object") + throw TypeError(".google.cloud.gkehub.v1.Feature.membershipStates: object expected"); + message.membershipStates[keys[i]] = $root.google.cloud.gkehub.v1.MembershipFeatureState.fromObject(object.membershipStates[keys[i]]); + } + } + if (object.createTime != null) { + if (typeof object.createTime !== "object") + throw TypeError(".google.cloud.gkehub.v1.Feature.createTime: object expected"); + message.createTime = $root.google.protobuf.Timestamp.fromObject(object.createTime); + } + if (object.updateTime != null) { + if (typeof object.updateTime !== "object") + throw TypeError(".google.cloud.gkehub.v1.Feature.updateTime: object expected"); + message.updateTime = $root.google.protobuf.Timestamp.fromObject(object.updateTime); + } + if (object.deleteTime != null) { + if (typeof object.deleteTime !== "object") + throw TypeError(".google.cloud.gkehub.v1.Feature.deleteTime: object expected"); + message.deleteTime = $root.google.protobuf.Timestamp.fromObject(object.deleteTime); + } + return message; + }; + + /** + * Creates a plain object from a Feature message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.v1.Feature + * @static + * @param {google.cloud.gkehub.v1.Feature} message Feature + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + Feature.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.objects || options.defaults) { + object.labels = {}; + object.membershipSpecs = {}; + object.membershipStates = {}; + } + if (options.defaults) { + object.name = ""; + object.resourceState = null; + object.spec = null; + object.state = null; + object.createTime = null; + object.updateTime = null; + object.deleteTime = null; + } + if (message.name != null && message.hasOwnProperty("name")) + object.name = message.name; + 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]]; + } + if (message.resourceState != null && message.hasOwnProperty("resourceState")) + object.resourceState = $root.google.cloud.gkehub.v1.FeatureResourceState.toObject(message.resourceState, options); + if (message.spec != null && message.hasOwnProperty("spec")) + object.spec = $root.google.cloud.gkehub.v1.CommonFeatureSpec.toObject(message.spec, options); + if (message.membershipSpecs && (keys2 = Object.keys(message.membershipSpecs)).length) { + object.membershipSpecs = {}; + for (var j = 0; j < keys2.length; ++j) + object.membershipSpecs[keys2[j]] = $root.google.cloud.gkehub.v1.MembershipFeatureSpec.toObject(message.membershipSpecs[keys2[j]], options); + } + if (message.state != null && message.hasOwnProperty("state")) + object.state = $root.google.cloud.gkehub.v1.CommonFeatureState.toObject(message.state, options); + if (message.membershipStates && (keys2 = Object.keys(message.membershipStates)).length) { + object.membershipStates = {}; + for (var j = 0; j < keys2.length; ++j) + object.membershipStates[keys2[j]] = $root.google.cloud.gkehub.v1.MembershipFeatureState.toObject(message.membershipStates[keys2[j]], options); + } + if (message.createTime != null && message.hasOwnProperty("createTime")) + object.createTime = $root.google.protobuf.Timestamp.toObject(message.createTime, options); + if (message.updateTime != null && message.hasOwnProperty("updateTime")) + object.updateTime = $root.google.protobuf.Timestamp.toObject(message.updateTime, options); + if (message.deleteTime != null && message.hasOwnProperty("deleteTime")) + object.deleteTime = $root.google.protobuf.Timestamp.toObject(message.deleteTime, options); + return object; + }; + + /** + * Converts this Feature to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.v1.Feature + * @instance + * @returns {Object.} JSON object + */ + Feature.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return Feature; + })(); + + v1.FeatureResourceState = (function() { + + /** + * Properties of a FeatureResourceState. + * @memberof google.cloud.gkehub.v1 + * @interface IFeatureResourceState + * @property {google.cloud.gkehub.v1.FeatureResourceState.State|null} [state] FeatureResourceState state + */ + + /** + * Constructs a new FeatureResourceState. + * @memberof google.cloud.gkehub.v1 + * @classdesc Represents a FeatureResourceState. + * @implements IFeatureResourceState + * @constructor + * @param {google.cloud.gkehub.v1.IFeatureResourceState=} [properties] Properties to set + */ + function FeatureResourceState(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]]; + } + + /** + * FeatureResourceState state. + * @member {google.cloud.gkehub.v1.FeatureResourceState.State} state + * @memberof google.cloud.gkehub.v1.FeatureResourceState + * @instance + */ + FeatureResourceState.prototype.state = 0; + + /** + * Creates a new FeatureResourceState instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.v1.FeatureResourceState + * @static + * @param {google.cloud.gkehub.v1.IFeatureResourceState=} [properties] Properties to set + * @returns {google.cloud.gkehub.v1.FeatureResourceState} FeatureResourceState instance + */ + FeatureResourceState.create = function create(properties) { + return new FeatureResourceState(properties); + }; + + /** + * Encodes the specified FeatureResourceState message. Does not implicitly {@link google.cloud.gkehub.v1.FeatureResourceState.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.v1.FeatureResourceState + * @static + * @param {google.cloud.gkehub.v1.IFeatureResourceState} message FeatureResourceState message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + FeatureResourceState.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.state != null && Object.hasOwnProperty.call(message, "state")) + writer.uint32(/* id 1, wireType 0 =*/8).int32(message.state); + return writer; + }; + + /** + * Encodes the specified FeatureResourceState message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1.FeatureResourceState.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.v1.FeatureResourceState + * @static + * @param {google.cloud.gkehub.v1.IFeatureResourceState} message FeatureResourceState message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + FeatureResourceState.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a FeatureResourceState message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.v1.FeatureResourceState + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.v1.FeatureResourceState} FeatureResourceState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + FeatureResourceState.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.v1.FeatureResourceState(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.state = reader.int32(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a FeatureResourceState message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.v1.FeatureResourceState + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.v1.FeatureResourceState} FeatureResourceState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + FeatureResourceState.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a FeatureResourceState message. + * @function verify + * @memberof google.cloud.gkehub.v1.FeatureResourceState + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + FeatureResourceState.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.state != null && message.hasOwnProperty("state")) + switch (message.state) { + default: + return "state: enum value expected"; + case 0: + case 1: + case 2: + case 3: + case 4: + case 5: + break; + } + return null; + }; + + /** + * Creates a FeatureResourceState message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.v1.FeatureResourceState + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.v1.FeatureResourceState} FeatureResourceState + */ + FeatureResourceState.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.v1.FeatureResourceState) + return object; + var message = new $root.google.cloud.gkehub.v1.FeatureResourceState(); + switch (object.state) { + case "STATE_UNSPECIFIED": + case 0: + message.state = 0; + break; + case "ENABLING": + case 1: + message.state = 1; + break; + case "ACTIVE": + case 2: + message.state = 2; + break; + case "DISABLING": + case 3: + message.state = 3; + break; + case "UPDATING": + case 4: + message.state = 4; + break; + case "SERVICE_UPDATING": + case 5: + message.state = 5; + break; + } + return message; + }; + + /** + * Creates a plain object from a FeatureResourceState message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.v1.FeatureResourceState + * @static + * @param {google.cloud.gkehub.v1.FeatureResourceState} message FeatureResourceState + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + FeatureResourceState.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) + object.state = options.enums === String ? "STATE_UNSPECIFIED" : 0; + if (message.state != null && message.hasOwnProperty("state")) + object.state = options.enums === String ? $root.google.cloud.gkehub.v1.FeatureResourceState.State[message.state] : message.state; + return object; + }; + + /** + * Converts this FeatureResourceState to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.v1.FeatureResourceState + * @instance + * @returns {Object.} JSON object + */ + FeatureResourceState.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + /** + * State enum. + * @name google.cloud.gkehub.v1.FeatureResourceState.State + * @enum {number} + * @property {number} STATE_UNSPECIFIED=0 STATE_UNSPECIFIED value + * @property {number} ENABLING=1 ENABLING value + * @property {number} ACTIVE=2 ACTIVE value + * @property {number} DISABLING=3 DISABLING value + * @property {number} UPDATING=4 UPDATING value + * @property {number} SERVICE_UPDATING=5 SERVICE_UPDATING value + */ + FeatureResourceState.State = (function() { + var valuesById = {}, values = Object.create(valuesById); + values[valuesById[0] = "STATE_UNSPECIFIED"] = 0; + values[valuesById[1] = "ENABLING"] = 1; + values[valuesById[2] = "ACTIVE"] = 2; + values[valuesById[3] = "DISABLING"] = 3; + values[valuesById[4] = "UPDATING"] = 4; + values[valuesById[5] = "SERVICE_UPDATING"] = 5; + return values; + })(); + + return FeatureResourceState; + })(); + + v1.FeatureState = (function() { + + /** + * Properties of a FeatureState. + * @memberof google.cloud.gkehub.v1 + * @interface IFeatureState + * @property {google.cloud.gkehub.v1.FeatureState.Code|null} [code] FeatureState code + * @property {string|null} [description] FeatureState description + * @property {google.protobuf.ITimestamp|null} [updateTime] FeatureState updateTime + */ + + /** + * Constructs a new FeatureState. + * @memberof google.cloud.gkehub.v1 + * @classdesc Represents a FeatureState. + * @implements IFeatureState + * @constructor + * @param {google.cloud.gkehub.v1.IFeatureState=} [properties] Properties to set + */ + function FeatureState(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]]; + } + + /** + * FeatureState code. + * @member {google.cloud.gkehub.v1.FeatureState.Code} code + * @memberof google.cloud.gkehub.v1.FeatureState + * @instance + */ + FeatureState.prototype.code = 0; + + /** + * FeatureState description. + * @member {string} description + * @memberof google.cloud.gkehub.v1.FeatureState + * @instance + */ + FeatureState.prototype.description = ""; + + /** + * FeatureState updateTime. + * @member {google.protobuf.ITimestamp|null|undefined} updateTime + * @memberof google.cloud.gkehub.v1.FeatureState + * @instance + */ + FeatureState.prototype.updateTime = null; + + /** + * Creates a new FeatureState instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.v1.FeatureState + * @static + * @param {google.cloud.gkehub.v1.IFeatureState=} [properties] Properties to set + * @returns {google.cloud.gkehub.v1.FeatureState} FeatureState instance + */ + FeatureState.create = function create(properties) { + return new FeatureState(properties); + }; + + /** + * Encodes the specified FeatureState message. Does not implicitly {@link google.cloud.gkehub.v1.FeatureState.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.v1.FeatureState + * @static + * @param {google.cloud.gkehub.v1.IFeatureState} message FeatureState message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + FeatureState.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.code != null && Object.hasOwnProperty.call(message, "code")) + writer.uint32(/* id 1, wireType 0 =*/8).int32(message.code); + if (message.description != null && Object.hasOwnProperty.call(message, "description")) + writer.uint32(/* id 2, wireType 2 =*/18).string(message.description); + if (message.updateTime != null && Object.hasOwnProperty.call(message, "updateTime")) + $root.google.protobuf.Timestamp.encode(message.updateTime, writer.uint32(/* id 3, wireType 2 =*/26).fork()).ldelim(); + return writer; + }; + + /** + * Encodes the specified FeatureState message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1.FeatureState.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.v1.FeatureState + * @static + * @param {google.cloud.gkehub.v1.IFeatureState} message FeatureState message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + FeatureState.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a FeatureState message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.v1.FeatureState + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.v1.FeatureState} FeatureState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + FeatureState.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.v1.FeatureState(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.code = reader.int32(); + break; + case 2: + message.description = reader.string(); + break; + case 3: + message.updateTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a FeatureState message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.v1.FeatureState + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.v1.FeatureState} FeatureState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + FeatureState.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a FeatureState message. + * @function verify + * @memberof google.cloud.gkehub.v1.FeatureState + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + FeatureState.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.code != null && message.hasOwnProperty("code")) + switch (message.code) { + default: + return "code: enum value expected"; + case 0: + case 1: + case 2: + case 3: + break; + } + if (message.description != null && message.hasOwnProperty("description")) + if (!$util.isString(message.description)) + return "description: string expected"; + if (message.updateTime != null && message.hasOwnProperty("updateTime")) { + var error = $root.google.protobuf.Timestamp.verify(message.updateTime); + if (error) + return "updateTime." + error; + } + return null; + }; + + /** + * Creates a FeatureState message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.v1.FeatureState + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.v1.FeatureState} FeatureState + */ + FeatureState.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.v1.FeatureState) + return object; + var message = new $root.google.cloud.gkehub.v1.FeatureState(); + switch (object.code) { + case "CODE_UNSPECIFIED": + case 0: + message.code = 0; + break; + case "OK": + case 1: + message.code = 1; + break; + case "WARNING": + case 2: + message.code = 2; + break; + case "ERROR": + case 3: + message.code = 3; + break; + } + if (object.description != null) + message.description = String(object.description); + if (object.updateTime != null) { + if (typeof object.updateTime !== "object") + throw TypeError(".google.cloud.gkehub.v1.FeatureState.updateTime: object expected"); + message.updateTime = $root.google.protobuf.Timestamp.fromObject(object.updateTime); + } + return message; + }; + + /** + * Creates a plain object from a FeatureState message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.v1.FeatureState + * @static + * @param {google.cloud.gkehub.v1.FeatureState} message FeatureState + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + FeatureState.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.code = options.enums === String ? "CODE_UNSPECIFIED" : 0; + object.description = ""; + object.updateTime = null; + } + if (message.code != null && message.hasOwnProperty("code")) + object.code = options.enums === String ? $root.google.cloud.gkehub.v1.FeatureState.Code[message.code] : message.code; + if (message.description != null && message.hasOwnProperty("description")) + object.description = message.description; + if (message.updateTime != null && message.hasOwnProperty("updateTime")) + object.updateTime = $root.google.protobuf.Timestamp.toObject(message.updateTime, options); + return object; + }; + + /** + * Converts this FeatureState to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.v1.FeatureState + * @instance + * @returns {Object.} JSON object + */ + FeatureState.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + /** + * Code enum. + * @name google.cloud.gkehub.v1.FeatureState.Code + * @enum {number} + * @property {number} CODE_UNSPECIFIED=0 CODE_UNSPECIFIED value + * @property {number} OK=1 OK value + * @property {number} WARNING=2 WARNING value + * @property {number} ERROR=3 ERROR value + */ + FeatureState.Code = (function() { + var valuesById = {}, values = Object.create(valuesById); + values[valuesById[0] = "CODE_UNSPECIFIED"] = 0; + values[valuesById[1] = "OK"] = 1; + values[valuesById[2] = "WARNING"] = 2; + values[valuesById[3] = "ERROR"] = 3; + return values; + })(); + + return FeatureState; + })(); + + v1.CommonFeatureSpec = (function() { + + /** + * Properties of a CommonFeatureSpec. + * @memberof google.cloud.gkehub.v1 + * @interface ICommonFeatureSpec + * @property {google.cloud.gkehub.multiclusteringress.v1.IFeatureSpec|null} [multiclusteringress] CommonFeatureSpec multiclusteringress + */ + + /** + * Constructs a new CommonFeatureSpec. + * @memberof google.cloud.gkehub.v1 + * @classdesc Represents a CommonFeatureSpec. + * @implements ICommonFeatureSpec + * @constructor + * @param {google.cloud.gkehub.v1.ICommonFeatureSpec=} [properties] Properties to set + */ + function CommonFeatureSpec(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]]; + } + + /** + * CommonFeatureSpec multiclusteringress. + * @member {google.cloud.gkehub.multiclusteringress.v1.IFeatureSpec|null|undefined} multiclusteringress + * @memberof google.cloud.gkehub.v1.CommonFeatureSpec + * @instance + */ + CommonFeatureSpec.prototype.multiclusteringress = null; + + // OneOf field names bound to virtual getters and setters + var $oneOfFields; + + /** + * CommonFeatureSpec featureSpec. + * @member {"multiclusteringress"|undefined} featureSpec + * @memberof google.cloud.gkehub.v1.CommonFeatureSpec + * @instance + */ + Object.defineProperty(CommonFeatureSpec.prototype, "featureSpec", { + get: $util.oneOfGetter($oneOfFields = ["multiclusteringress"]), + set: $util.oneOfSetter($oneOfFields) + }); + + /** + * Creates a new CommonFeatureSpec instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.v1.CommonFeatureSpec + * @static + * @param {google.cloud.gkehub.v1.ICommonFeatureSpec=} [properties] Properties to set + * @returns {google.cloud.gkehub.v1.CommonFeatureSpec} CommonFeatureSpec instance + */ + CommonFeatureSpec.create = function create(properties) { + return new CommonFeatureSpec(properties); + }; + + /** + * Encodes the specified CommonFeatureSpec message. Does not implicitly {@link google.cloud.gkehub.v1.CommonFeatureSpec.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.v1.CommonFeatureSpec + * @static + * @param {google.cloud.gkehub.v1.ICommonFeatureSpec} message CommonFeatureSpec message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + CommonFeatureSpec.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.multiclusteringress != null && Object.hasOwnProperty.call(message, "multiclusteringress")) + $root.google.cloud.gkehub.multiclusteringress.v1.FeatureSpec.encode(message.multiclusteringress, writer.uint32(/* id 102, wireType 2 =*/818).fork()).ldelim(); + return writer; + }; + + /** + * Encodes the specified CommonFeatureSpec message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1.CommonFeatureSpec.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.v1.CommonFeatureSpec + * @static + * @param {google.cloud.gkehub.v1.ICommonFeatureSpec} message CommonFeatureSpec message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + CommonFeatureSpec.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a CommonFeatureSpec message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.v1.CommonFeatureSpec + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.v1.CommonFeatureSpec} CommonFeatureSpec + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + CommonFeatureSpec.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.v1.CommonFeatureSpec(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 102: + message.multiclusteringress = $root.google.cloud.gkehub.multiclusteringress.v1.FeatureSpec.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a CommonFeatureSpec message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.v1.CommonFeatureSpec + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.v1.CommonFeatureSpec} CommonFeatureSpec + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + CommonFeatureSpec.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a CommonFeatureSpec message. + * @function verify + * @memberof google.cloud.gkehub.v1.CommonFeatureSpec + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + CommonFeatureSpec.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + var properties = {}; + if (message.multiclusteringress != null && message.hasOwnProperty("multiclusteringress")) { + properties.featureSpec = 1; + { + var error = $root.google.cloud.gkehub.multiclusteringress.v1.FeatureSpec.verify(message.multiclusteringress); + if (error) + return "multiclusteringress." + error; + } + } + return null; + }; + + /** + * Creates a CommonFeatureSpec message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.v1.CommonFeatureSpec + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.v1.CommonFeatureSpec} CommonFeatureSpec + */ + CommonFeatureSpec.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.v1.CommonFeatureSpec) + return object; + var message = new $root.google.cloud.gkehub.v1.CommonFeatureSpec(); + if (object.multiclusteringress != null) { + if (typeof object.multiclusteringress !== "object") + throw TypeError(".google.cloud.gkehub.v1.CommonFeatureSpec.multiclusteringress: object expected"); + message.multiclusteringress = $root.google.cloud.gkehub.multiclusteringress.v1.FeatureSpec.fromObject(object.multiclusteringress); + } + return message; + }; + + /** + * Creates a plain object from a CommonFeatureSpec message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.v1.CommonFeatureSpec + * @static + * @param {google.cloud.gkehub.v1.CommonFeatureSpec} message CommonFeatureSpec + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + CommonFeatureSpec.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (message.multiclusteringress != null && message.hasOwnProperty("multiclusteringress")) { + object.multiclusteringress = $root.google.cloud.gkehub.multiclusteringress.v1.FeatureSpec.toObject(message.multiclusteringress, options); + if (options.oneofs) + object.featureSpec = "multiclusteringress"; + } + return object; + }; + + /** + * Converts this CommonFeatureSpec to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.v1.CommonFeatureSpec + * @instance + * @returns {Object.} JSON object + */ + CommonFeatureSpec.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return CommonFeatureSpec; + })(); + + v1.CommonFeatureState = (function() { + + /** + * Properties of a CommonFeatureState. + * @memberof google.cloud.gkehub.v1 + * @interface ICommonFeatureState + * @property {google.cloud.gkehub.v1.IFeatureState|null} [state] CommonFeatureState state + */ + + /** + * Constructs a new CommonFeatureState. + * @memberof google.cloud.gkehub.v1 + * @classdesc Represents a CommonFeatureState. + * @implements ICommonFeatureState + * @constructor + * @param {google.cloud.gkehub.v1.ICommonFeatureState=} [properties] Properties to set + */ + function CommonFeatureState(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]]; + } + + /** + * CommonFeatureState state. + * @member {google.cloud.gkehub.v1.IFeatureState|null|undefined} state + * @memberof google.cloud.gkehub.v1.CommonFeatureState + * @instance + */ + CommonFeatureState.prototype.state = null; + + /** + * Creates a new CommonFeatureState instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.v1.CommonFeatureState + * @static + * @param {google.cloud.gkehub.v1.ICommonFeatureState=} [properties] Properties to set + * @returns {google.cloud.gkehub.v1.CommonFeatureState} CommonFeatureState instance + */ + CommonFeatureState.create = function create(properties) { + return new CommonFeatureState(properties); + }; + + /** + * Encodes the specified CommonFeatureState message. Does not implicitly {@link google.cloud.gkehub.v1.CommonFeatureState.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.v1.CommonFeatureState + * @static + * @param {google.cloud.gkehub.v1.ICommonFeatureState} message CommonFeatureState message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + CommonFeatureState.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.state != null && Object.hasOwnProperty.call(message, "state")) + $root.google.cloud.gkehub.v1.FeatureState.encode(message.state, writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim(); + return writer; + }; + + /** + * Encodes the specified CommonFeatureState message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1.CommonFeatureState.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.v1.CommonFeatureState + * @static + * @param {google.cloud.gkehub.v1.ICommonFeatureState} message CommonFeatureState message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + CommonFeatureState.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a CommonFeatureState message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.v1.CommonFeatureState + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.v1.CommonFeatureState} CommonFeatureState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + CommonFeatureState.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.v1.CommonFeatureState(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.state = $root.google.cloud.gkehub.v1.FeatureState.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a CommonFeatureState message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.v1.CommonFeatureState + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.v1.CommonFeatureState} CommonFeatureState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + CommonFeatureState.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a CommonFeatureState message. + * @function verify + * @memberof google.cloud.gkehub.v1.CommonFeatureState + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + CommonFeatureState.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.state != null && message.hasOwnProperty("state")) { + var error = $root.google.cloud.gkehub.v1.FeatureState.verify(message.state); + if (error) + return "state." + error; + } + return null; + }; + + /** + * Creates a CommonFeatureState message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.v1.CommonFeatureState + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.v1.CommonFeatureState} CommonFeatureState + */ + CommonFeatureState.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.v1.CommonFeatureState) + return object; + var message = new $root.google.cloud.gkehub.v1.CommonFeatureState(); + if (object.state != null) { + if (typeof object.state !== "object") + throw TypeError(".google.cloud.gkehub.v1.CommonFeatureState.state: object expected"); + message.state = $root.google.cloud.gkehub.v1.FeatureState.fromObject(object.state); + } + return message; + }; + + /** + * Creates a plain object from a CommonFeatureState message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.v1.CommonFeatureState + * @static + * @param {google.cloud.gkehub.v1.CommonFeatureState} message CommonFeatureState + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + CommonFeatureState.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) + object.state = null; + if (message.state != null && message.hasOwnProperty("state")) + object.state = $root.google.cloud.gkehub.v1.FeatureState.toObject(message.state, options); + return object; + }; + + /** + * Converts this CommonFeatureState to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.v1.CommonFeatureState + * @instance + * @returns {Object.} JSON object + */ + CommonFeatureState.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return CommonFeatureState; + })(); + + v1.MembershipFeatureSpec = (function() { + + /** + * Properties of a MembershipFeatureSpec. + * @memberof google.cloud.gkehub.v1 + * @interface IMembershipFeatureSpec + * @property {google.cloud.gkehub.configmanagement.v1.IMembershipSpec|null} [configmanagement] MembershipFeatureSpec configmanagement + */ + + /** + * Constructs a new MembershipFeatureSpec. + * @memberof google.cloud.gkehub.v1 + * @classdesc Represents a MembershipFeatureSpec. + * @implements IMembershipFeatureSpec + * @constructor + * @param {google.cloud.gkehub.v1.IMembershipFeatureSpec=} [properties] Properties to set + */ + function MembershipFeatureSpec(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]]; + } + + /** + * MembershipFeatureSpec configmanagement. + * @member {google.cloud.gkehub.configmanagement.v1.IMembershipSpec|null|undefined} configmanagement + * @memberof google.cloud.gkehub.v1.MembershipFeatureSpec + * @instance + */ + MembershipFeatureSpec.prototype.configmanagement = null; + + // OneOf field names bound to virtual getters and setters + var $oneOfFields; + + /** + * MembershipFeatureSpec featureSpec. + * @member {"configmanagement"|undefined} featureSpec + * @memberof google.cloud.gkehub.v1.MembershipFeatureSpec + * @instance + */ + Object.defineProperty(MembershipFeatureSpec.prototype, "featureSpec", { + get: $util.oneOfGetter($oneOfFields = ["configmanagement"]), + set: $util.oneOfSetter($oneOfFields) + }); + + /** + * Creates a new MembershipFeatureSpec instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.v1.MembershipFeatureSpec + * @static + * @param {google.cloud.gkehub.v1.IMembershipFeatureSpec=} [properties] Properties to set + * @returns {google.cloud.gkehub.v1.MembershipFeatureSpec} MembershipFeatureSpec instance + */ + MembershipFeatureSpec.create = function create(properties) { + return new MembershipFeatureSpec(properties); + }; + + /** + * Encodes the specified MembershipFeatureSpec message. Does not implicitly {@link google.cloud.gkehub.v1.MembershipFeatureSpec.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.v1.MembershipFeatureSpec + * @static + * @param {google.cloud.gkehub.v1.IMembershipFeatureSpec} message MembershipFeatureSpec message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + MembershipFeatureSpec.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.configmanagement != null && Object.hasOwnProperty.call(message, "configmanagement")) + $root.google.cloud.gkehub.configmanagement.v1.MembershipSpec.encode(message.configmanagement, writer.uint32(/* id 106, wireType 2 =*/850).fork()).ldelim(); + return writer; + }; + + /** + * Encodes the specified MembershipFeatureSpec message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1.MembershipFeatureSpec.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.v1.MembershipFeatureSpec + * @static + * @param {google.cloud.gkehub.v1.IMembershipFeatureSpec} message MembershipFeatureSpec message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + MembershipFeatureSpec.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a MembershipFeatureSpec message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.v1.MembershipFeatureSpec + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.v1.MembershipFeatureSpec} MembershipFeatureSpec + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + MembershipFeatureSpec.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.v1.MembershipFeatureSpec(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 106: + message.configmanagement = $root.google.cloud.gkehub.configmanagement.v1.MembershipSpec.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a MembershipFeatureSpec message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.v1.MembershipFeatureSpec + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.v1.MembershipFeatureSpec} MembershipFeatureSpec + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + MembershipFeatureSpec.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a MembershipFeatureSpec message. + * @function verify + * @memberof google.cloud.gkehub.v1.MembershipFeatureSpec + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + MembershipFeatureSpec.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + var properties = {}; + if (message.configmanagement != null && message.hasOwnProperty("configmanagement")) { + properties.featureSpec = 1; + { + var error = $root.google.cloud.gkehub.configmanagement.v1.MembershipSpec.verify(message.configmanagement); + if (error) + return "configmanagement." + error; + } + } + return null; + }; + + /** + * Creates a MembershipFeatureSpec message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.v1.MembershipFeatureSpec + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.v1.MembershipFeatureSpec} MembershipFeatureSpec + */ + MembershipFeatureSpec.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.v1.MembershipFeatureSpec) + return object; + var message = new $root.google.cloud.gkehub.v1.MembershipFeatureSpec(); + if (object.configmanagement != null) { + if (typeof object.configmanagement !== "object") + throw TypeError(".google.cloud.gkehub.v1.MembershipFeatureSpec.configmanagement: object expected"); + message.configmanagement = $root.google.cloud.gkehub.configmanagement.v1.MembershipSpec.fromObject(object.configmanagement); + } + return message; + }; + + /** + * Creates a plain object from a MembershipFeatureSpec message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.v1.MembershipFeatureSpec + * @static + * @param {google.cloud.gkehub.v1.MembershipFeatureSpec} message MembershipFeatureSpec + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + MembershipFeatureSpec.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (message.configmanagement != null && message.hasOwnProperty("configmanagement")) { + object.configmanagement = $root.google.cloud.gkehub.configmanagement.v1.MembershipSpec.toObject(message.configmanagement, options); + if (options.oneofs) + object.featureSpec = "configmanagement"; + } + return object; + }; + + /** + * Converts this MembershipFeatureSpec to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.v1.MembershipFeatureSpec + * @instance + * @returns {Object.} JSON object + */ + MembershipFeatureSpec.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return MembershipFeatureSpec; + })(); + + v1.MembershipFeatureState = (function() { + + /** + * Properties of a MembershipFeatureState. + * @memberof google.cloud.gkehub.v1 + * @interface IMembershipFeatureState + * @property {google.cloud.gkehub.configmanagement.v1.IMembershipState|null} [configmanagement] MembershipFeatureState configmanagement + * @property {google.cloud.gkehub.v1.IFeatureState|null} [state] MembershipFeatureState state + */ + + /** + * Constructs a new MembershipFeatureState. + * @memberof google.cloud.gkehub.v1 + * @classdesc Represents a MembershipFeatureState. + * @implements IMembershipFeatureState + * @constructor + * @param {google.cloud.gkehub.v1.IMembershipFeatureState=} [properties] Properties to set + */ + function MembershipFeatureState(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]]; + } + + /** + * MembershipFeatureState configmanagement. + * @member {google.cloud.gkehub.configmanagement.v1.IMembershipState|null|undefined} configmanagement + * @memberof google.cloud.gkehub.v1.MembershipFeatureState + * @instance + */ + MembershipFeatureState.prototype.configmanagement = null; + + /** + * MembershipFeatureState state. + * @member {google.cloud.gkehub.v1.IFeatureState|null|undefined} state + * @memberof google.cloud.gkehub.v1.MembershipFeatureState + * @instance + */ + MembershipFeatureState.prototype.state = null; + + // OneOf field names bound to virtual getters and setters + var $oneOfFields; + + /** + * MembershipFeatureState featureState. + * @member {"configmanagement"|undefined} featureState + * @memberof google.cloud.gkehub.v1.MembershipFeatureState + * @instance + */ + Object.defineProperty(MembershipFeatureState.prototype, "featureState", { + get: $util.oneOfGetter($oneOfFields = ["configmanagement"]), + set: $util.oneOfSetter($oneOfFields) + }); + + /** + * Creates a new MembershipFeatureState instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.v1.MembershipFeatureState + * @static + * @param {google.cloud.gkehub.v1.IMembershipFeatureState=} [properties] Properties to set + * @returns {google.cloud.gkehub.v1.MembershipFeatureState} MembershipFeatureState instance + */ + MembershipFeatureState.create = function create(properties) { + return new MembershipFeatureState(properties); + }; + + /** + * Encodes the specified MembershipFeatureState message. Does not implicitly {@link google.cloud.gkehub.v1.MembershipFeatureState.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.v1.MembershipFeatureState + * @static + * @param {google.cloud.gkehub.v1.IMembershipFeatureState} message MembershipFeatureState message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + MembershipFeatureState.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.state != null && Object.hasOwnProperty.call(message, "state")) + $root.google.cloud.gkehub.v1.FeatureState.encode(message.state, writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim(); + if (message.configmanagement != null && Object.hasOwnProperty.call(message, "configmanagement")) + $root.google.cloud.gkehub.configmanagement.v1.MembershipState.encode(message.configmanagement, writer.uint32(/* id 106, wireType 2 =*/850).fork()).ldelim(); + return writer; + }; + + /** + * Encodes the specified MembershipFeatureState message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1.MembershipFeatureState.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.v1.MembershipFeatureState + * @static + * @param {google.cloud.gkehub.v1.IMembershipFeatureState} message MembershipFeatureState message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + MembershipFeatureState.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a MembershipFeatureState message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.v1.MembershipFeatureState + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.v1.MembershipFeatureState} MembershipFeatureState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + MembershipFeatureState.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.v1.MembershipFeatureState(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 106: + message.configmanagement = $root.google.cloud.gkehub.configmanagement.v1.MembershipState.decode(reader, reader.uint32()); + break; + case 1: + message.state = $root.google.cloud.gkehub.v1.FeatureState.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a MembershipFeatureState message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.v1.MembershipFeatureState + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.v1.MembershipFeatureState} MembershipFeatureState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + MembershipFeatureState.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a MembershipFeatureState message. + * @function verify + * @memberof google.cloud.gkehub.v1.MembershipFeatureState + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + MembershipFeatureState.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + var properties = {}; + if (message.configmanagement != null && message.hasOwnProperty("configmanagement")) { + properties.featureState = 1; + { + var error = $root.google.cloud.gkehub.configmanagement.v1.MembershipState.verify(message.configmanagement); + if (error) + return "configmanagement." + error; + } + } + if (message.state != null && message.hasOwnProperty("state")) { + var error = $root.google.cloud.gkehub.v1.FeatureState.verify(message.state); + if (error) + return "state." + error; + } + return null; + }; + + /** + * Creates a MembershipFeatureState message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.v1.MembershipFeatureState + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.v1.MembershipFeatureState} MembershipFeatureState + */ + MembershipFeatureState.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.v1.MembershipFeatureState) + return object; + var message = new $root.google.cloud.gkehub.v1.MembershipFeatureState(); + if (object.configmanagement != null) { + if (typeof object.configmanagement !== "object") + throw TypeError(".google.cloud.gkehub.v1.MembershipFeatureState.configmanagement: object expected"); + message.configmanagement = $root.google.cloud.gkehub.configmanagement.v1.MembershipState.fromObject(object.configmanagement); + } + if (object.state != null) { + if (typeof object.state !== "object") + throw TypeError(".google.cloud.gkehub.v1.MembershipFeatureState.state: object expected"); + message.state = $root.google.cloud.gkehub.v1.FeatureState.fromObject(object.state); + } + return message; + }; + + /** + * Creates a plain object from a MembershipFeatureState message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.v1.MembershipFeatureState + * @static + * @param {google.cloud.gkehub.v1.MembershipFeatureState} message MembershipFeatureState + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + MembershipFeatureState.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) + object.state = null; + if (message.state != null && message.hasOwnProperty("state")) + object.state = $root.google.cloud.gkehub.v1.FeatureState.toObject(message.state, options); + if (message.configmanagement != null && message.hasOwnProperty("configmanagement")) { + object.configmanagement = $root.google.cloud.gkehub.configmanagement.v1.MembershipState.toObject(message.configmanagement, options); + if (options.oneofs) + object.featureState = "configmanagement"; + } + return object; + }; + + /** + * Converts this MembershipFeatureState to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.v1.MembershipFeatureState + * @instance + * @returns {Object.} JSON object + */ + MembershipFeatureState.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return MembershipFeatureState; + })(); + + v1.Membership = (function() { + + /** + * Properties of a Membership. + * @memberof google.cloud.gkehub.v1 + * @interface IMembership + * @property {google.cloud.gkehub.v1.IMembershipEndpoint|null} [endpoint] Membership endpoint + * @property {string|null} [name] Membership name + * @property {Object.|null} [labels] Membership labels + * @property {string|null} [description] Membership description + * @property {google.cloud.gkehub.v1.IMembershipState|null} [state] Membership state + * @property {google.protobuf.ITimestamp|null} [createTime] Membership createTime + * @property {google.protobuf.ITimestamp|null} [updateTime] Membership updateTime + * @property {google.protobuf.ITimestamp|null} [deleteTime] Membership deleteTime + * @property {string|null} [externalId] Membership externalId + * @property {google.protobuf.ITimestamp|null} [lastConnectionTime] Membership lastConnectionTime + * @property {string|null} [uniqueId] Membership uniqueId + * @property {google.cloud.gkehub.v1.IAuthority|null} [authority] Membership authority + */ + + /** + * Constructs a new Membership. + * @memberof google.cloud.gkehub.v1 + * @classdesc Represents a Membership. + * @implements IMembership + * @constructor + * @param {google.cloud.gkehub.v1.IMembership=} [properties] Properties to set + */ + function Membership(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]]; + } + + /** + * Membership endpoint. + * @member {google.cloud.gkehub.v1.IMembershipEndpoint|null|undefined} endpoint + * @memberof google.cloud.gkehub.v1.Membership + * @instance + */ + Membership.prototype.endpoint = null; + + /** + * Membership name. + * @member {string} name + * @memberof google.cloud.gkehub.v1.Membership + * @instance + */ + Membership.prototype.name = ""; + + /** + * Membership labels. + * @member {Object.} labels + * @memberof google.cloud.gkehub.v1.Membership + * @instance + */ + Membership.prototype.labels = $util.emptyObject; + + /** + * Membership description. + * @member {string} description + * @memberof google.cloud.gkehub.v1.Membership + * @instance + */ + Membership.prototype.description = ""; + + /** + * Membership state. + * @member {google.cloud.gkehub.v1.IMembershipState|null|undefined} state + * @memberof google.cloud.gkehub.v1.Membership + * @instance + */ + Membership.prototype.state = null; + + /** + * Membership createTime. + * @member {google.protobuf.ITimestamp|null|undefined} createTime + * @memberof google.cloud.gkehub.v1.Membership + * @instance + */ + Membership.prototype.createTime = null; + + /** + * Membership updateTime. + * @member {google.protobuf.ITimestamp|null|undefined} updateTime + * @memberof google.cloud.gkehub.v1.Membership + * @instance + */ + Membership.prototype.updateTime = null; + + /** + * Membership deleteTime. + * @member {google.protobuf.ITimestamp|null|undefined} deleteTime + * @memberof google.cloud.gkehub.v1.Membership + * @instance + */ + Membership.prototype.deleteTime = null; + + /** + * Membership externalId. + * @member {string} externalId + * @memberof google.cloud.gkehub.v1.Membership + * @instance + */ + Membership.prototype.externalId = ""; + + /** + * Membership lastConnectionTime. + * @member {google.protobuf.ITimestamp|null|undefined} lastConnectionTime + * @memberof google.cloud.gkehub.v1.Membership + * @instance + */ + Membership.prototype.lastConnectionTime = null; + + /** + * Membership uniqueId. + * @member {string} uniqueId + * @memberof google.cloud.gkehub.v1.Membership + * @instance + */ + Membership.prototype.uniqueId = ""; + + /** + * Membership authority. + * @member {google.cloud.gkehub.v1.IAuthority|null|undefined} authority + * @memberof google.cloud.gkehub.v1.Membership + * @instance + */ + Membership.prototype.authority = null; + + // OneOf field names bound to virtual getters and setters + var $oneOfFields; + + /** + * Membership type. + * @member {"endpoint"|undefined} type + * @memberof google.cloud.gkehub.v1.Membership + * @instance + */ + Object.defineProperty(Membership.prototype, "type", { + get: $util.oneOfGetter($oneOfFields = ["endpoint"]), + set: $util.oneOfSetter($oneOfFields) + }); + + /** + * Creates a new Membership instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.v1.Membership + * @static + * @param {google.cloud.gkehub.v1.IMembership=} [properties] Properties to set + * @returns {google.cloud.gkehub.v1.Membership} Membership instance + */ + Membership.create = function create(properties) { + return new Membership(properties); + }; + + /** + * Encodes the specified Membership message. Does not implicitly {@link google.cloud.gkehub.v1.Membership.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.v1.Membership + * @static + * @param {google.cloud.gkehub.v1.IMembership} message Membership message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + Membership.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.name != null && Object.hasOwnProperty.call(message, "name")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.name); + if (message.labels != null && Object.hasOwnProperty.call(message, "labels")) + for (var keys = Object.keys(message.labels), i = 0; i < keys.length; ++i) + writer.uint32(/* id 2, wireType 2 =*/18).fork().uint32(/* id 1, wireType 2 =*/10).string(keys[i]).uint32(/* id 2, wireType 2 =*/18).string(message.labels[keys[i]]).ldelim(); + if (message.description != null && Object.hasOwnProperty.call(message, "description")) + writer.uint32(/* id 3, wireType 2 =*/26).string(message.description); + if (message.endpoint != null && Object.hasOwnProperty.call(message, "endpoint")) + $root.google.cloud.gkehub.v1.MembershipEndpoint.encode(message.endpoint, writer.uint32(/* id 4, wireType 2 =*/34).fork()).ldelim(); + if (message.state != null && Object.hasOwnProperty.call(message, "state")) + $root.google.cloud.gkehub.v1.MembershipState.encode(message.state, writer.uint32(/* id 5, wireType 2 =*/42).fork()).ldelim(); + if (message.createTime != null && Object.hasOwnProperty.call(message, "createTime")) + $root.google.protobuf.Timestamp.encode(message.createTime, writer.uint32(/* id 6, wireType 2 =*/50).fork()).ldelim(); + if (message.updateTime != null && Object.hasOwnProperty.call(message, "updateTime")) + $root.google.protobuf.Timestamp.encode(message.updateTime, writer.uint32(/* id 7, wireType 2 =*/58).fork()).ldelim(); + if (message.deleteTime != null && Object.hasOwnProperty.call(message, "deleteTime")) + $root.google.protobuf.Timestamp.encode(message.deleteTime, writer.uint32(/* id 8, wireType 2 =*/66).fork()).ldelim(); + if (message.externalId != null && Object.hasOwnProperty.call(message, "externalId")) + writer.uint32(/* id 9, wireType 2 =*/74).string(message.externalId); + if (message.lastConnectionTime != null && Object.hasOwnProperty.call(message, "lastConnectionTime")) + $root.google.protobuf.Timestamp.encode(message.lastConnectionTime, writer.uint32(/* id 10, wireType 2 =*/82).fork()).ldelim(); + if (message.uniqueId != null && Object.hasOwnProperty.call(message, "uniqueId")) + writer.uint32(/* id 11, wireType 2 =*/90).string(message.uniqueId); + if (message.authority != null && Object.hasOwnProperty.call(message, "authority")) + $root.google.cloud.gkehub.v1.Authority.encode(message.authority, writer.uint32(/* id 12, wireType 2 =*/98).fork()).ldelim(); + return writer; + }; + + /** + * Encodes the specified Membership message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1.Membership.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.v1.Membership + * @static + * @param {google.cloud.gkehub.v1.IMembership} message Membership message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + Membership.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a Membership message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.v1.Membership + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.v1.Membership} Membership + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + Membership.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.v1.Membership(), key, value; + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 4: + message.endpoint = $root.google.cloud.gkehub.v1.MembershipEndpoint.decode(reader, reader.uint32()); + break; + case 1: + message.name = reader.string(); + break; + case 2: + 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 3: + message.description = reader.string(); + break; + case 5: + message.state = $root.google.cloud.gkehub.v1.MembershipState.decode(reader, reader.uint32()); + break; + case 6: + message.createTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + break; + case 7: + message.updateTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + break; + case 8: + message.deleteTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + break; + case 9: + message.externalId = reader.string(); + break; + case 10: + message.lastConnectionTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + break; + case 11: + message.uniqueId = reader.string(); + break; + case 12: + message.authority = $root.google.cloud.gkehub.v1.Authority.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a Membership message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.v1.Membership + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.v1.Membership} Membership + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + Membership.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a Membership message. + * @function verify + * @memberof google.cloud.gkehub.v1.Membership + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + Membership.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + var properties = {}; + if (message.endpoint != null && message.hasOwnProperty("endpoint")) { + properties.type = 1; + { + var error = $root.google.cloud.gkehub.v1.MembershipEndpoint.verify(message.endpoint); + if (error) + return "endpoint." + error; + } + } + if (message.name != null && message.hasOwnProperty("name")) + if (!$util.isString(message.name)) + return "name: 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.description != null && message.hasOwnProperty("description")) + if (!$util.isString(message.description)) + return "description: string expected"; + if (message.state != null && message.hasOwnProperty("state")) { + var error = $root.google.cloud.gkehub.v1.MembershipState.verify(message.state); + if (error) + return "state." + error; + } + if (message.createTime != null && message.hasOwnProperty("createTime")) { + var error = $root.google.protobuf.Timestamp.verify(message.createTime); + if (error) + return "createTime." + error; + } + if (message.updateTime != null && message.hasOwnProperty("updateTime")) { + var error = $root.google.protobuf.Timestamp.verify(message.updateTime); + if (error) + return "updateTime." + error; + } + if (message.deleteTime != null && message.hasOwnProperty("deleteTime")) { + var error = $root.google.protobuf.Timestamp.verify(message.deleteTime); + if (error) + return "deleteTime." + error; + } + if (message.externalId != null && message.hasOwnProperty("externalId")) + if (!$util.isString(message.externalId)) + return "externalId: string expected"; + if (message.lastConnectionTime != null && message.hasOwnProperty("lastConnectionTime")) { + var error = $root.google.protobuf.Timestamp.verify(message.lastConnectionTime); + if (error) + return "lastConnectionTime." + error; + } + if (message.uniqueId != null && message.hasOwnProperty("uniqueId")) + if (!$util.isString(message.uniqueId)) + return "uniqueId: string expected"; + if (message.authority != null && message.hasOwnProperty("authority")) { + var error = $root.google.cloud.gkehub.v1.Authority.verify(message.authority); + if (error) + return "authority." + error; + } + return null; + }; + + /** + * Creates a Membership message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.v1.Membership + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.v1.Membership} Membership + */ + Membership.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.v1.Membership) + return object; + var message = new $root.google.cloud.gkehub.v1.Membership(); + if (object.endpoint != null) { + if (typeof object.endpoint !== "object") + throw TypeError(".google.cloud.gkehub.v1.Membership.endpoint: object expected"); + message.endpoint = $root.google.cloud.gkehub.v1.MembershipEndpoint.fromObject(object.endpoint); + } + if (object.name != null) + message.name = String(object.name); + if (object.labels) { + if (typeof object.labels !== "object") + throw TypeError(".google.cloud.gkehub.v1.Membership.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.description != null) + message.description = String(object.description); + if (object.state != null) { + if (typeof object.state !== "object") + throw TypeError(".google.cloud.gkehub.v1.Membership.state: object expected"); + message.state = $root.google.cloud.gkehub.v1.MembershipState.fromObject(object.state); + } + if (object.createTime != null) { + if (typeof object.createTime !== "object") + throw TypeError(".google.cloud.gkehub.v1.Membership.createTime: object expected"); + message.createTime = $root.google.protobuf.Timestamp.fromObject(object.createTime); + } + if (object.updateTime != null) { + if (typeof object.updateTime !== "object") + throw TypeError(".google.cloud.gkehub.v1.Membership.updateTime: object expected"); + message.updateTime = $root.google.protobuf.Timestamp.fromObject(object.updateTime); + } + if (object.deleteTime != null) { + if (typeof object.deleteTime !== "object") + throw TypeError(".google.cloud.gkehub.v1.Membership.deleteTime: object expected"); + message.deleteTime = $root.google.protobuf.Timestamp.fromObject(object.deleteTime); + } + if (object.externalId != null) + message.externalId = String(object.externalId); + if (object.lastConnectionTime != null) { + if (typeof object.lastConnectionTime !== "object") + throw TypeError(".google.cloud.gkehub.v1.Membership.lastConnectionTime: object expected"); + message.lastConnectionTime = $root.google.protobuf.Timestamp.fromObject(object.lastConnectionTime); + } + if (object.uniqueId != null) + message.uniqueId = String(object.uniqueId); + if (object.authority != null) { + if (typeof object.authority !== "object") + throw TypeError(".google.cloud.gkehub.v1.Membership.authority: object expected"); + message.authority = $root.google.cloud.gkehub.v1.Authority.fromObject(object.authority); + } + return message; + }; + + /** + * Creates a plain object from a Membership message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.v1.Membership + * @static + * @param {google.cloud.gkehub.v1.Membership} message Membership + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + Membership.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.objects || options.defaults) + object.labels = {}; + if (options.defaults) { + object.name = ""; + object.description = ""; + object.state = null; + object.createTime = null; + object.updateTime = null; + object.deleteTime = null; + object.externalId = ""; + object.lastConnectionTime = null; + object.uniqueId = ""; + object.authority = null; + } + if (message.name != null && message.hasOwnProperty("name")) + object.name = message.name; + 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]]; + } + if (message.description != null && message.hasOwnProperty("description")) + object.description = message.description; + if (message.endpoint != null && message.hasOwnProperty("endpoint")) { + object.endpoint = $root.google.cloud.gkehub.v1.MembershipEndpoint.toObject(message.endpoint, options); + if (options.oneofs) + object.type = "endpoint"; + } + if (message.state != null && message.hasOwnProperty("state")) + object.state = $root.google.cloud.gkehub.v1.MembershipState.toObject(message.state, options); + if (message.createTime != null && message.hasOwnProperty("createTime")) + object.createTime = $root.google.protobuf.Timestamp.toObject(message.createTime, options); + if (message.updateTime != null && message.hasOwnProperty("updateTime")) + object.updateTime = $root.google.protobuf.Timestamp.toObject(message.updateTime, options); + if (message.deleteTime != null && message.hasOwnProperty("deleteTime")) + object.deleteTime = $root.google.protobuf.Timestamp.toObject(message.deleteTime, options); + if (message.externalId != null && message.hasOwnProperty("externalId")) + object.externalId = message.externalId; + if (message.lastConnectionTime != null && message.hasOwnProperty("lastConnectionTime")) + object.lastConnectionTime = $root.google.protobuf.Timestamp.toObject(message.lastConnectionTime, options); + if (message.uniqueId != null && message.hasOwnProperty("uniqueId")) + object.uniqueId = message.uniqueId; + if (message.authority != null && message.hasOwnProperty("authority")) + object.authority = $root.google.cloud.gkehub.v1.Authority.toObject(message.authority, options); + return object; + }; + + /** + * Converts this Membership to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.v1.Membership + * @instance + * @returns {Object.} JSON object + */ + Membership.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return Membership; + })(); + + v1.MembershipEndpoint = (function() { + + /** + * Properties of a MembershipEndpoint. + * @memberof google.cloud.gkehub.v1 + * @interface IMembershipEndpoint + * @property {google.cloud.gkehub.v1.IGkeCluster|null} [gkeCluster] MembershipEndpoint gkeCluster + * @property {google.cloud.gkehub.v1.IKubernetesMetadata|null} [kubernetesMetadata] MembershipEndpoint kubernetesMetadata + */ + + /** + * Constructs a new MembershipEndpoint. + * @memberof google.cloud.gkehub.v1 + * @classdesc Represents a MembershipEndpoint. + * @implements IMembershipEndpoint + * @constructor + * @param {google.cloud.gkehub.v1.IMembershipEndpoint=} [properties] Properties to set + */ + function MembershipEndpoint(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]]; + } + + /** + * MembershipEndpoint gkeCluster. + * @member {google.cloud.gkehub.v1.IGkeCluster|null|undefined} gkeCluster + * @memberof google.cloud.gkehub.v1.MembershipEndpoint + * @instance + */ + MembershipEndpoint.prototype.gkeCluster = null; + + /** + * MembershipEndpoint kubernetesMetadata. + * @member {google.cloud.gkehub.v1.IKubernetesMetadata|null|undefined} kubernetesMetadata + * @memberof google.cloud.gkehub.v1.MembershipEndpoint + * @instance + */ + MembershipEndpoint.prototype.kubernetesMetadata = null; + + /** + * Creates a new MembershipEndpoint instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.v1.MembershipEndpoint + * @static + * @param {google.cloud.gkehub.v1.IMembershipEndpoint=} [properties] Properties to set + * @returns {google.cloud.gkehub.v1.MembershipEndpoint} MembershipEndpoint instance + */ + MembershipEndpoint.create = function create(properties) { + return new MembershipEndpoint(properties); + }; + + /** + * Encodes the specified MembershipEndpoint message. Does not implicitly {@link google.cloud.gkehub.v1.MembershipEndpoint.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.v1.MembershipEndpoint + * @static + * @param {google.cloud.gkehub.v1.IMembershipEndpoint} message MembershipEndpoint message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + MembershipEndpoint.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.gkeCluster != null && Object.hasOwnProperty.call(message, "gkeCluster")) + $root.google.cloud.gkehub.v1.GkeCluster.encode(message.gkeCluster, writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim(); + if (message.kubernetesMetadata != null && Object.hasOwnProperty.call(message, "kubernetesMetadata")) + $root.google.cloud.gkehub.v1.KubernetesMetadata.encode(message.kubernetesMetadata, writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim(); + return writer; + }; + + /** + * Encodes the specified MembershipEndpoint message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1.MembershipEndpoint.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.v1.MembershipEndpoint + * @static + * @param {google.cloud.gkehub.v1.IMembershipEndpoint} message MembershipEndpoint message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + MembershipEndpoint.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a MembershipEndpoint message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.v1.MembershipEndpoint + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.v1.MembershipEndpoint} MembershipEndpoint + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + MembershipEndpoint.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.v1.MembershipEndpoint(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.gkeCluster = $root.google.cloud.gkehub.v1.GkeCluster.decode(reader, reader.uint32()); + break; + case 2: + message.kubernetesMetadata = $root.google.cloud.gkehub.v1.KubernetesMetadata.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a MembershipEndpoint message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.v1.MembershipEndpoint + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.v1.MembershipEndpoint} MembershipEndpoint + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + MembershipEndpoint.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a MembershipEndpoint message. + * @function verify + * @memberof google.cloud.gkehub.v1.MembershipEndpoint + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + MembershipEndpoint.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.gkeCluster != null && message.hasOwnProperty("gkeCluster")) { + var error = $root.google.cloud.gkehub.v1.GkeCluster.verify(message.gkeCluster); + if (error) + return "gkeCluster." + error; + } + if (message.kubernetesMetadata != null && message.hasOwnProperty("kubernetesMetadata")) { + var error = $root.google.cloud.gkehub.v1.KubernetesMetadata.verify(message.kubernetesMetadata); + if (error) + return "kubernetesMetadata." + error; + } + return null; + }; + + /** + * Creates a MembershipEndpoint message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.v1.MembershipEndpoint + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.v1.MembershipEndpoint} MembershipEndpoint + */ + MembershipEndpoint.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.v1.MembershipEndpoint) + return object; + var message = new $root.google.cloud.gkehub.v1.MembershipEndpoint(); + if (object.gkeCluster != null) { + if (typeof object.gkeCluster !== "object") + throw TypeError(".google.cloud.gkehub.v1.MembershipEndpoint.gkeCluster: object expected"); + message.gkeCluster = $root.google.cloud.gkehub.v1.GkeCluster.fromObject(object.gkeCluster); + } + if (object.kubernetesMetadata != null) { + if (typeof object.kubernetesMetadata !== "object") + throw TypeError(".google.cloud.gkehub.v1.MembershipEndpoint.kubernetesMetadata: object expected"); + message.kubernetesMetadata = $root.google.cloud.gkehub.v1.KubernetesMetadata.fromObject(object.kubernetesMetadata); + } + return message; + }; + + /** + * Creates a plain object from a MembershipEndpoint message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.v1.MembershipEndpoint + * @static + * @param {google.cloud.gkehub.v1.MembershipEndpoint} message MembershipEndpoint + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + MembershipEndpoint.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.gkeCluster = null; + object.kubernetesMetadata = null; + } + if (message.gkeCluster != null && message.hasOwnProperty("gkeCluster")) + object.gkeCluster = $root.google.cloud.gkehub.v1.GkeCluster.toObject(message.gkeCluster, options); + if (message.kubernetesMetadata != null && message.hasOwnProperty("kubernetesMetadata")) + object.kubernetesMetadata = $root.google.cloud.gkehub.v1.KubernetesMetadata.toObject(message.kubernetesMetadata, options); + return object; + }; + + /** + * Converts this MembershipEndpoint to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.v1.MembershipEndpoint + * @instance + * @returns {Object.} JSON object + */ + MembershipEndpoint.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return MembershipEndpoint; + })(); + + v1.GkeCluster = (function() { + + /** + * Properties of a GkeCluster. + * @memberof google.cloud.gkehub.v1 + * @interface IGkeCluster + * @property {string|null} [resourceLink] GkeCluster resourceLink + */ + + /** + * Constructs a new GkeCluster. + * @memberof google.cloud.gkehub.v1 + * @classdesc Represents a GkeCluster. + * @implements IGkeCluster + * @constructor + * @param {google.cloud.gkehub.v1.IGkeCluster=} [properties] Properties to set + */ + function GkeCluster(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]]; + } + + /** + * GkeCluster resourceLink. + * @member {string} resourceLink + * @memberof google.cloud.gkehub.v1.GkeCluster + * @instance + */ + GkeCluster.prototype.resourceLink = ""; + + /** + * Creates a new GkeCluster instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.v1.GkeCluster + * @static + * @param {google.cloud.gkehub.v1.IGkeCluster=} [properties] Properties to set + * @returns {google.cloud.gkehub.v1.GkeCluster} GkeCluster instance + */ + GkeCluster.create = function create(properties) { + return new GkeCluster(properties); + }; + + /** + * Encodes the specified GkeCluster message. Does not implicitly {@link google.cloud.gkehub.v1.GkeCluster.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.v1.GkeCluster + * @static + * @param {google.cloud.gkehub.v1.IGkeCluster} message GkeCluster message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + GkeCluster.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.resourceLink != null && Object.hasOwnProperty.call(message, "resourceLink")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.resourceLink); + return writer; + }; + + /** + * Encodes the specified GkeCluster message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1.GkeCluster.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.v1.GkeCluster + * @static + * @param {google.cloud.gkehub.v1.IGkeCluster} message GkeCluster message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + GkeCluster.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a GkeCluster message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.v1.GkeCluster + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.v1.GkeCluster} GkeCluster + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + GkeCluster.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.v1.GkeCluster(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.resourceLink = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a GkeCluster message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.v1.GkeCluster + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.v1.GkeCluster} GkeCluster + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + GkeCluster.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a GkeCluster message. + * @function verify + * @memberof google.cloud.gkehub.v1.GkeCluster + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + GkeCluster.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.resourceLink != null && message.hasOwnProperty("resourceLink")) + if (!$util.isString(message.resourceLink)) + return "resourceLink: string expected"; + return null; + }; + + /** + * Creates a GkeCluster message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.v1.GkeCluster + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.v1.GkeCluster} GkeCluster + */ + GkeCluster.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.v1.GkeCluster) + return object; + var message = new $root.google.cloud.gkehub.v1.GkeCluster(); + if (object.resourceLink != null) + message.resourceLink = String(object.resourceLink); + return message; + }; + + /** + * Creates a plain object from a GkeCluster message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.v1.GkeCluster + * @static + * @param {google.cloud.gkehub.v1.GkeCluster} message GkeCluster + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + GkeCluster.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) + object.resourceLink = ""; + if (message.resourceLink != null && message.hasOwnProperty("resourceLink")) + object.resourceLink = message.resourceLink; + return object; + }; + + /** + * Converts this GkeCluster to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.v1.GkeCluster + * @instance + * @returns {Object.} JSON object + */ + GkeCluster.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return GkeCluster; + })(); + + v1.KubernetesMetadata = (function() { + + /** + * Properties of a KubernetesMetadata. + * @memberof google.cloud.gkehub.v1 + * @interface IKubernetesMetadata + * @property {string|null} [kubernetesApiServerVersion] KubernetesMetadata kubernetesApiServerVersion + * @property {string|null} [nodeProviderId] KubernetesMetadata nodeProviderId + * @property {number|null} [nodeCount] KubernetesMetadata nodeCount + * @property {number|null} [vcpuCount] KubernetesMetadata vcpuCount + * @property {number|null} [memoryMb] KubernetesMetadata memoryMb + * @property {google.protobuf.ITimestamp|null} [updateTime] KubernetesMetadata updateTime + */ + + /** + * Constructs a new KubernetesMetadata. + * @memberof google.cloud.gkehub.v1 + * @classdesc Represents a KubernetesMetadata. + * @implements IKubernetesMetadata + * @constructor + * @param {google.cloud.gkehub.v1.IKubernetesMetadata=} [properties] Properties to set + */ + function KubernetesMetadata(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]]; + } + + /** + * KubernetesMetadata kubernetesApiServerVersion. + * @member {string} kubernetesApiServerVersion + * @memberof google.cloud.gkehub.v1.KubernetesMetadata + * @instance + */ + KubernetesMetadata.prototype.kubernetesApiServerVersion = ""; + + /** + * KubernetesMetadata nodeProviderId. + * @member {string} nodeProviderId + * @memberof google.cloud.gkehub.v1.KubernetesMetadata + * @instance + */ + KubernetesMetadata.prototype.nodeProviderId = ""; + + /** + * KubernetesMetadata nodeCount. + * @member {number} nodeCount + * @memberof google.cloud.gkehub.v1.KubernetesMetadata + * @instance + */ + KubernetesMetadata.prototype.nodeCount = 0; + + /** + * KubernetesMetadata vcpuCount. + * @member {number} vcpuCount + * @memberof google.cloud.gkehub.v1.KubernetesMetadata + * @instance + */ + KubernetesMetadata.prototype.vcpuCount = 0; + + /** + * KubernetesMetadata memoryMb. + * @member {number} memoryMb + * @memberof google.cloud.gkehub.v1.KubernetesMetadata + * @instance + */ + KubernetesMetadata.prototype.memoryMb = 0; + + /** + * KubernetesMetadata updateTime. + * @member {google.protobuf.ITimestamp|null|undefined} updateTime + * @memberof google.cloud.gkehub.v1.KubernetesMetadata + * @instance + */ + KubernetesMetadata.prototype.updateTime = null; + + /** + * Creates a new KubernetesMetadata instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.v1.KubernetesMetadata + * @static + * @param {google.cloud.gkehub.v1.IKubernetesMetadata=} [properties] Properties to set + * @returns {google.cloud.gkehub.v1.KubernetesMetadata} KubernetesMetadata instance + */ + KubernetesMetadata.create = function create(properties) { + return new KubernetesMetadata(properties); + }; + + /** + * Encodes the specified KubernetesMetadata message. Does not implicitly {@link google.cloud.gkehub.v1.KubernetesMetadata.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.v1.KubernetesMetadata + * @static + * @param {google.cloud.gkehub.v1.IKubernetesMetadata} message KubernetesMetadata message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + KubernetesMetadata.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.kubernetesApiServerVersion != null && Object.hasOwnProperty.call(message, "kubernetesApiServerVersion")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.kubernetesApiServerVersion); + if (message.nodeProviderId != null && Object.hasOwnProperty.call(message, "nodeProviderId")) + writer.uint32(/* id 2, wireType 2 =*/18).string(message.nodeProviderId); + if (message.nodeCount != null && Object.hasOwnProperty.call(message, "nodeCount")) + writer.uint32(/* id 3, wireType 0 =*/24).int32(message.nodeCount); + if (message.vcpuCount != null && Object.hasOwnProperty.call(message, "vcpuCount")) + writer.uint32(/* id 4, wireType 0 =*/32).int32(message.vcpuCount); + if (message.memoryMb != null && Object.hasOwnProperty.call(message, "memoryMb")) + writer.uint32(/* id 5, wireType 0 =*/40).int32(message.memoryMb); + if (message.updateTime != null && Object.hasOwnProperty.call(message, "updateTime")) + $root.google.protobuf.Timestamp.encode(message.updateTime, writer.uint32(/* id 100, wireType 2 =*/802).fork()).ldelim(); + return writer; + }; + + /** + * Encodes the specified KubernetesMetadata message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1.KubernetesMetadata.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.v1.KubernetesMetadata + * @static + * @param {google.cloud.gkehub.v1.IKubernetesMetadata} message KubernetesMetadata message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + KubernetesMetadata.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a KubernetesMetadata message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.v1.KubernetesMetadata + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.v1.KubernetesMetadata} KubernetesMetadata + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + KubernetesMetadata.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.v1.KubernetesMetadata(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.kubernetesApiServerVersion = reader.string(); + break; + case 2: + message.nodeProviderId = reader.string(); + break; + case 3: + message.nodeCount = reader.int32(); + break; + case 4: + message.vcpuCount = reader.int32(); + break; + case 5: + message.memoryMb = reader.int32(); + break; + case 100: + message.updateTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a KubernetesMetadata message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.v1.KubernetesMetadata + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.v1.KubernetesMetadata} KubernetesMetadata + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + KubernetesMetadata.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a KubernetesMetadata message. + * @function verify + * @memberof google.cloud.gkehub.v1.KubernetesMetadata + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + KubernetesMetadata.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.kubernetesApiServerVersion != null && message.hasOwnProperty("kubernetesApiServerVersion")) + if (!$util.isString(message.kubernetesApiServerVersion)) + return "kubernetesApiServerVersion: string expected"; + if (message.nodeProviderId != null && message.hasOwnProperty("nodeProviderId")) + if (!$util.isString(message.nodeProviderId)) + return "nodeProviderId: string expected"; + if (message.nodeCount != null && message.hasOwnProperty("nodeCount")) + if (!$util.isInteger(message.nodeCount)) + return "nodeCount: integer expected"; + if (message.vcpuCount != null && message.hasOwnProperty("vcpuCount")) + if (!$util.isInteger(message.vcpuCount)) + return "vcpuCount: integer expected"; + if (message.memoryMb != null && message.hasOwnProperty("memoryMb")) + if (!$util.isInteger(message.memoryMb)) + return "memoryMb: integer expected"; + if (message.updateTime != null && message.hasOwnProperty("updateTime")) { + var error = $root.google.protobuf.Timestamp.verify(message.updateTime); + if (error) + return "updateTime." + error; + } + return null; + }; + + /** + * Creates a KubernetesMetadata message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.v1.KubernetesMetadata + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.v1.KubernetesMetadata} KubernetesMetadata + */ + KubernetesMetadata.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.v1.KubernetesMetadata) + return object; + var message = new $root.google.cloud.gkehub.v1.KubernetesMetadata(); + if (object.kubernetesApiServerVersion != null) + message.kubernetesApiServerVersion = String(object.kubernetesApiServerVersion); + if (object.nodeProviderId != null) + message.nodeProviderId = String(object.nodeProviderId); + if (object.nodeCount != null) + message.nodeCount = object.nodeCount | 0; + if (object.vcpuCount != null) + message.vcpuCount = object.vcpuCount | 0; + if (object.memoryMb != null) + message.memoryMb = object.memoryMb | 0; + if (object.updateTime != null) { + if (typeof object.updateTime !== "object") + throw TypeError(".google.cloud.gkehub.v1.KubernetesMetadata.updateTime: object expected"); + message.updateTime = $root.google.protobuf.Timestamp.fromObject(object.updateTime); + } + return message; + }; + + /** + * Creates a plain object from a KubernetesMetadata message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.v1.KubernetesMetadata + * @static + * @param {google.cloud.gkehub.v1.KubernetesMetadata} message KubernetesMetadata + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + KubernetesMetadata.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.kubernetesApiServerVersion = ""; + object.nodeProviderId = ""; + object.nodeCount = 0; + object.vcpuCount = 0; + object.memoryMb = 0; + object.updateTime = null; + } + if (message.kubernetesApiServerVersion != null && message.hasOwnProperty("kubernetesApiServerVersion")) + object.kubernetesApiServerVersion = message.kubernetesApiServerVersion; + if (message.nodeProviderId != null && message.hasOwnProperty("nodeProviderId")) + object.nodeProviderId = message.nodeProviderId; + if (message.nodeCount != null && message.hasOwnProperty("nodeCount")) + object.nodeCount = message.nodeCount; + if (message.vcpuCount != null && message.hasOwnProperty("vcpuCount")) + object.vcpuCount = message.vcpuCount; + if (message.memoryMb != null && message.hasOwnProperty("memoryMb")) + object.memoryMb = message.memoryMb; + if (message.updateTime != null && message.hasOwnProperty("updateTime")) + object.updateTime = $root.google.protobuf.Timestamp.toObject(message.updateTime, options); + return object; + }; + + /** + * Converts this KubernetesMetadata to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.v1.KubernetesMetadata + * @instance + * @returns {Object.} JSON object + */ + KubernetesMetadata.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return KubernetesMetadata; + })(); + + v1.MembershipState = (function() { + + /** + * Properties of a MembershipState. + * @memberof google.cloud.gkehub.v1 + * @interface IMembershipState + * @property {google.cloud.gkehub.v1.MembershipState.Code|null} [code] MembershipState code + */ + + /** + * Constructs a new MembershipState. + * @memberof google.cloud.gkehub.v1 + * @classdesc Represents a MembershipState. + * @implements IMembershipState + * @constructor + * @param {google.cloud.gkehub.v1.IMembershipState=} [properties] Properties to set + */ + function MembershipState(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]]; + } + + /** + * MembershipState code. + * @member {google.cloud.gkehub.v1.MembershipState.Code} code + * @memberof google.cloud.gkehub.v1.MembershipState + * @instance + */ + MembershipState.prototype.code = 0; + + /** + * Creates a new MembershipState instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.v1.MembershipState + * @static + * @param {google.cloud.gkehub.v1.IMembershipState=} [properties] Properties to set + * @returns {google.cloud.gkehub.v1.MembershipState} MembershipState instance + */ + MembershipState.create = function create(properties) { + return new MembershipState(properties); + }; + + /** + * Encodes the specified MembershipState message. Does not implicitly {@link google.cloud.gkehub.v1.MembershipState.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.v1.MembershipState + * @static + * @param {google.cloud.gkehub.v1.IMembershipState} message MembershipState message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + MembershipState.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.code != null && Object.hasOwnProperty.call(message, "code")) + writer.uint32(/* id 1, wireType 0 =*/8).int32(message.code); + return writer; + }; + + /** + * Encodes the specified MembershipState message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1.MembershipState.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.v1.MembershipState + * @static + * @param {google.cloud.gkehub.v1.IMembershipState} message MembershipState message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + MembershipState.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a MembershipState message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.v1.MembershipState + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.v1.MembershipState} MembershipState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + MembershipState.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.v1.MembershipState(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.code = reader.int32(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a MembershipState message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.v1.MembershipState + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.v1.MembershipState} MembershipState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + MembershipState.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a MembershipState message. + * @function verify + * @memberof google.cloud.gkehub.v1.MembershipState + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + MembershipState.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.code != null && message.hasOwnProperty("code")) + switch (message.code) { + default: + return "code: enum value expected"; + case 0: + case 1: + case 2: + case 3: + case 4: + case 5: + break; + } + return null; + }; + + /** + * Creates a MembershipState message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.v1.MembershipState + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.v1.MembershipState} MembershipState + */ + MembershipState.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.v1.MembershipState) + return object; + var message = new $root.google.cloud.gkehub.v1.MembershipState(); + switch (object.code) { + case "CODE_UNSPECIFIED": + case 0: + message.code = 0; + break; + case "CREATING": + case 1: + message.code = 1; + break; + case "READY": + case 2: + message.code = 2; + break; + case "DELETING": + case 3: + message.code = 3; + break; + case "UPDATING": + case 4: + message.code = 4; + break; + case "SERVICE_UPDATING": + case 5: + message.code = 5; + break; + } + return message; + }; + + /** + * Creates a plain object from a MembershipState message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.v1.MembershipState + * @static + * @param {google.cloud.gkehub.v1.MembershipState} message MembershipState + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + MembershipState.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) + object.code = options.enums === String ? "CODE_UNSPECIFIED" : 0; + if (message.code != null && message.hasOwnProperty("code")) + object.code = options.enums === String ? $root.google.cloud.gkehub.v1.MembershipState.Code[message.code] : message.code; + return object; + }; + + /** + * Converts this MembershipState to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.v1.MembershipState + * @instance + * @returns {Object.} JSON object + */ + MembershipState.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + /** + * Code enum. + * @name google.cloud.gkehub.v1.MembershipState.Code + * @enum {number} + * @property {number} CODE_UNSPECIFIED=0 CODE_UNSPECIFIED value + * @property {number} CREATING=1 CREATING value + * @property {number} READY=2 READY value + * @property {number} DELETING=3 DELETING value + * @property {number} UPDATING=4 UPDATING value + * @property {number} SERVICE_UPDATING=5 SERVICE_UPDATING value + */ + MembershipState.Code = (function() { + var valuesById = {}, values = Object.create(valuesById); + values[valuesById[0] = "CODE_UNSPECIFIED"] = 0; + values[valuesById[1] = "CREATING"] = 1; + values[valuesById[2] = "READY"] = 2; + values[valuesById[3] = "DELETING"] = 3; + values[valuesById[4] = "UPDATING"] = 4; + values[valuesById[5] = "SERVICE_UPDATING"] = 5; + return values; + })(); + + return MembershipState; + })(); + + v1.Authority = (function() { + + /** + * Properties of an Authority. + * @memberof google.cloud.gkehub.v1 + * @interface IAuthority + * @property {string|null} [issuer] Authority issuer + * @property {string|null} [workloadIdentityPool] Authority workloadIdentityPool + * @property {string|null} [identityProvider] Authority identityProvider + * @property {Uint8Array|null} [oidcJwks] Authority oidcJwks + */ + + /** + * Constructs a new Authority. + * @memberof google.cloud.gkehub.v1 + * @classdesc Represents an Authority. + * @implements IAuthority + * @constructor + * @param {google.cloud.gkehub.v1.IAuthority=} [properties] Properties to set + */ + function Authority(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]]; + } + + /** + * Authority issuer. + * @member {string} issuer + * @memberof google.cloud.gkehub.v1.Authority + * @instance + */ + Authority.prototype.issuer = ""; + + /** + * Authority workloadIdentityPool. + * @member {string} workloadIdentityPool + * @memberof google.cloud.gkehub.v1.Authority + * @instance + */ + Authority.prototype.workloadIdentityPool = ""; + + /** + * Authority identityProvider. + * @member {string} identityProvider + * @memberof google.cloud.gkehub.v1.Authority + * @instance + */ + Authority.prototype.identityProvider = ""; + + /** + * Authority oidcJwks. + * @member {Uint8Array} oidcJwks + * @memberof google.cloud.gkehub.v1.Authority + * @instance + */ + Authority.prototype.oidcJwks = $util.newBuffer([]); + + /** + * Creates a new Authority instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.v1.Authority + * @static + * @param {google.cloud.gkehub.v1.IAuthority=} [properties] Properties to set + * @returns {google.cloud.gkehub.v1.Authority} Authority instance + */ + Authority.create = function create(properties) { + return new Authority(properties); + }; + + /** + * Encodes the specified Authority message. Does not implicitly {@link google.cloud.gkehub.v1.Authority.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.v1.Authority + * @static + * @param {google.cloud.gkehub.v1.IAuthority} message Authority message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + Authority.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.issuer != null && Object.hasOwnProperty.call(message, "issuer")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.issuer); + if (message.workloadIdentityPool != null && Object.hasOwnProperty.call(message, "workloadIdentityPool")) + writer.uint32(/* id 2, wireType 2 =*/18).string(message.workloadIdentityPool); + if (message.identityProvider != null && Object.hasOwnProperty.call(message, "identityProvider")) + writer.uint32(/* id 3, wireType 2 =*/26).string(message.identityProvider); + if (message.oidcJwks != null && Object.hasOwnProperty.call(message, "oidcJwks")) + writer.uint32(/* id 4, wireType 2 =*/34).bytes(message.oidcJwks); + return writer; + }; + + /** + * Encodes the specified Authority message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1.Authority.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.v1.Authority + * @static + * @param {google.cloud.gkehub.v1.IAuthority} message Authority message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + Authority.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes an Authority message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.v1.Authority + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.v1.Authority} Authority + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + Authority.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.v1.Authority(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.issuer = reader.string(); + break; + case 2: + message.workloadIdentityPool = reader.string(); + break; + case 3: + message.identityProvider = reader.string(); + break; + case 4: + message.oidcJwks = reader.bytes(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes an Authority message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.v1.Authority + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.v1.Authority} Authority + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + Authority.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies an Authority message. + * @function verify + * @memberof google.cloud.gkehub.v1.Authority + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + Authority.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.issuer != null && message.hasOwnProperty("issuer")) + if (!$util.isString(message.issuer)) + return "issuer: string expected"; + if (message.workloadIdentityPool != null && message.hasOwnProperty("workloadIdentityPool")) + if (!$util.isString(message.workloadIdentityPool)) + return "workloadIdentityPool: string expected"; + if (message.identityProvider != null && message.hasOwnProperty("identityProvider")) + if (!$util.isString(message.identityProvider)) + return "identityProvider: string expected"; + if (message.oidcJwks != null && message.hasOwnProperty("oidcJwks")) + if (!(message.oidcJwks && typeof message.oidcJwks.length === "number" || $util.isString(message.oidcJwks))) + return "oidcJwks: buffer expected"; + return null; + }; + + /** + * Creates an Authority message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.v1.Authority + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.v1.Authority} Authority + */ + Authority.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.v1.Authority) + return object; + var message = new $root.google.cloud.gkehub.v1.Authority(); + if (object.issuer != null) + message.issuer = String(object.issuer); + if (object.workloadIdentityPool != null) + message.workloadIdentityPool = String(object.workloadIdentityPool); + if (object.identityProvider != null) + message.identityProvider = String(object.identityProvider); + if (object.oidcJwks != null) + if (typeof object.oidcJwks === "string") + $util.base64.decode(object.oidcJwks, message.oidcJwks = $util.newBuffer($util.base64.length(object.oidcJwks)), 0); + else if (object.oidcJwks.length) + message.oidcJwks = object.oidcJwks; + return message; + }; + + /** + * Creates a plain object from an Authority message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.v1.Authority + * @static + * @param {google.cloud.gkehub.v1.Authority} message Authority + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + Authority.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.issuer = ""; + object.workloadIdentityPool = ""; + object.identityProvider = ""; + if (options.bytes === String) + object.oidcJwks = ""; + else { + object.oidcJwks = []; + if (options.bytes !== Array) + object.oidcJwks = $util.newBuffer(object.oidcJwks); + } + } + if (message.issuer != null && message.hasOwnProperty("issuer")) + object.issuer = message.issuer; + if (message.workloadIdentityPool != null && message.hasOwnProperty("workloadIdentityPool")) + object.workloadIdentityPool = message.workloadIdentityPool; + if (message.identityProvider != null && message.hasOwnProperty("identityProvider")) + object.identityProvider = message.identityProvider; + if (message.oidcJwks != null && message.hasOwnProperty("oidcJwks")) + object.oidcJwks = options.bytes === String ? $util.base64.encode(message.oidcJwks, 0, message.oidcJwks.length) : options.bytes === Array ? Array.prototype.slice.call(message.oidcJwks) : message.oidcJwks; + return object; + }; + + /** + * Converts this Authority to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.v1.Authority + * @instance + * @returns {Object.} JSON object + */ + Authority.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return Authority; + })(); + + v1.GkeHub = (function() { + + /** + * Constructs a new GkeHub service. + * @memberof google.cloud.gkehub.v1 + * @classdesc Represents a GkeHub + * @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 GkeHub(rpcImpl, requestDelimited, responseDelimited) { + $protobuf.rpc.Service.call(this, rpcImpl, requestDelimited, responseDelimited); + } + + (GkeHub.prototype = Object.create($protobuf.rpc.Service.prototype)).constructor = GkeHub; + + /** + * Creates new GkeHub service using the specified rpc implementation. + * @function create + * @memberof google.cloud.gkehub.v1.GkeHub + * @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 {GkeHub} RPC service. Useful where requests and/or responses are streamed. + */ + GkeHub.create = function create(rpcImpl, requestDelimited, responseDelimited) { + return new this(rpcImpl, requestDelimited, responseDelimited); + }; + + /** + * Callback as used by {@link google.cloud.gkehub.v1.GkeHub#listMemberships}. + * @memberof google.cloud.gkehub.v1.GkeHub + * @typedef ListMembershipsCallback + * @type {function} + * @param {Error|null} error Error, if any + * @param {google.cloud.gkehub.v1.ListMembershipsResponse} [response] ListMembershipsResponse + */ + + /** + * Calls ListMemberships. + * @function listMemberships + * @memberof google.cloud.gkehub.v1.GkeHub + * @instance + * @param {google.cloud.gkehub.v1.IListMembershipsRequest} request ListMembershipsRequest message or plain object + * @param {google.cloud.gkehub.v1.GkeHub.ListMembershipsCallback} callback Node-style callback called with the error, if any, and ListMembershipsResponse + * @returns {undefined} + * @variation 1 + */ + Object.defineProperty(GkeHub.prototype.listMemberships = function listMemberships(request, callback) { + return this.rpcCall(listMemberships, $root.google.cloud.gkehub.v1.ListMembershipsRequest, $root.google.cloud.gkehub.v1.ListMembershipsResponse, request, callback); + }, "name", { value: "ListMemberships" }); + + /** + * Calls ListMemberships. + * @function listMemberships + * @memberof google.cloud.gkehub.v1.GkeHub + * @instance + * @param {google.cloud.gkehub.v1.IListMembershipsRequest} request ListMembershipsRequest message or plain object + * @returns {Promise} Promise + * @variation 2 + */ + + /** + * Callback as used by {@link google.cloud.gkehub.v1.GkeHub#listFeatures}. + * @memberof google.cloud.gkehub.v1.GkeHub + * @typedef ListFeaturesCallback + * @type {function} + * @param {Error|null} error Error, if any + * @param {google.cloud.gkehub.v1.ListFeaturesResponse} [response] ListFeaturesResponse + */ + + /** + * Calls ListFeatures. + * @function listFeatures + * @memberof google.cloud.gkehub.v1.GkeHub + * @instance + * @param {google.cloud.gkehub.v1.IListFeaturesRequest} request ListFeaturesRequest message or plain object + * @param {google.cloud.gkehub.v1.GkeHub.ListFeaturesCallback} callback Node-style callback called with the error, if any, and ListFeaturesResponse + * @returns {undefined} + * @variation 1 + */ + Object.defineProperty(GkeHub.prototype.listFeatures = function listFeatures(request, callback) { + return this.rpcCall(listFeatures, $root.google.cloud.gkehub.v1.ListFeaturesRequest, $root.google.cloud.gkehub.v1.ListFeaturesResponse, request, callback); + }, "name", { value: "ListFeatures" }); + + /** + * Calls ListFeatures. + * @function listFeatures + * @memberof google.cloud.gkehub.v1.GkeHub + * @instance + * @param {google.cloud.gkehub.v1.IListFeaturesRequest} request ListFeaturesRequest message or plain object + * @returns {Promise} Promise + * @variation 2 + */ + + /** + * Callback as used by {@link google.cloud.gkehub.v1.GkeHub#getMembership}. + * @memberof google.cloud.gkehub.v1.GkeHub + * @typedef GetMembershipCallback + * @type {function} + * @param {Error|null} error Error, if any + * @param {google.cloud.gkehub.v1.Membership} [response] Membership + */ + + /** + * Calls GetMembership. + * @function getMembership + * @memberof google.cloud.gkehub.v1.GkeHub + * @instance + * @param {google.cloud.gkehub.v1.IGetMembershipRequest} request GetMembershipRequest message or plain object + * @param {google.cloud.gkehub.v1.GkeHub.GetMembershipCallback} callback Node-style callback called with the error, if any, and Membership + * @returns {undefined} + * @variation 1 + */ + Object.defineProperty(GkeHub.prototype.getMembership = function getMembership(request, callback) { + return this.rpcCall(getMembership, $root.google.cloud.gkehub.v1.GetMembershipRequest, $root.google.cloud.gkehub.v1.Membership, request, callback); + }, "name", { value: "GetMembership" }); + + /** + * Calls GetMembership. + * @function getMembership + * @memberof google.cloud.gkehub.v1.GkeHub + * @instance + * @param {google.cloud.gkehub.v1.IGetMembershipRequest} request GetMembershipRequest message or plain object + * @returns {Promise} Promise + * @variation 2 + */ + + /** + * Callback as used by {@link google.cloud.gkehub.v1.GkeHub#getFeature}. + * @memberof google.cloud.gkehub.v1.GkeHub + * @typedef GetFeatureCallback + * @type {function} + * @param {Error|null} error Error, if any + * @param {google.cloud.gkehub.v1.Feature} [response] Feature + */ + + /** + * Calls GetFeature. + * @function getFeature + * @memberof google.cloud.gkehub.v1.GkeHub + * @instance + * @param {google.cloud.gkehub.v1.IGetFeatureRequest} request GetFeatureRequest message or plain object + * @param {google.cloud.gkehub.v1.GkeHub.GetFeatureCallback} callback Node-style callback called with the error, if any, and Feature + * @returns {undefined} + * @variation 1 + */ + Object.defineProperty(GkeHub.prototype.getFeature = function getFeature(request, callback) { + return this.rpcCall(getFeature, $root.google.cloud.gkehub.v1.GetFeatureRequest, $root.google.cloud.gkehub.v1.Feature, request, callback); + }, "name", { value: "GetFeature" }); + + /** + * Calls GetFeature. + * @function getFeature + * @memberof google.cloud.gkehub.v1.GkeHub + * @instance + * @param {google.cloud.gkehub.v1.IGetFeatureRequest} request GetFeatureRequest message or plain object + * @returns {Promise} Promise + * @variation 2 + */ + + /** + * Callback as used by {@link google.cloud.gkehub.v1.GkeHub#createMembership}. + * @memberof google.cloud.gkehub.v1.GkeHub + * @typedef CreateMembershipCallback + * @type {function} + * @param {Error|null} error Error, if any + * @param {google.longrunning.Operation} [response] Operation + */ + + /** + * Calls CreateMembership. + * @function createMembership + * @memberof google.cloud.gkehub.v1.GkeHub + * @instance + * @param {google.cloud.gkehub.v1.ICreateMembershipRequest} request CreateMembershipRequest message or plain object + * @param {google.cloud.gkehub.v1.GkeHub.CreateMembershipCallback} callback Node-style callback called with the error, if any, and Operation + * @returns {undefined} + * @variation 1 + */ + Object.defineProperty(GkeHub.prototype.createMembership = function createMembership(request, callback) { + return this.rpcCall(createMembership, $root.google.cloud.gkehub.v1.CreateMembershipRequest, $root.google.longrunning.Operation, request, callback); + }, "name", { value: "CreateMembership" }); + + /** + * Calls CreateMembership. + * @function createMembership + * @memberof google.cloud.gkehub.v1.GkeHub + * @instance + * @param {google.cloud.gkehub.v1.ICreateMembershipRequest} request CreateMembershipRequest message or plain object + * @returns {Promise} Promise + * @variation 2 + */ + + /** + * Callback as used by {@link google.cloud.gkehub.v1.GkeHub#createFeature}. + * @memberof google.cloud.gkehub.v1.GkeHub + * @typedef CreateFeatureCallback + * @type {function} + * @param {Error|null} error Error, if any + * @param {google.longrunning.Operation} [response] Operation + */ + + /** + * Calls CreateFeature. + * @function createFeature + * @memberof google.cloud.gkehub.v1.GkeHub + * @instance + * @param {google.cloud.gkehub.v1.ICreateFeatureRequest} request CreateFeatureRequest message or plain object + * @param {google.cloud.gkehub.v1.GkeHub.CreateFeatureCallback} callback Node-style callback called with the error, if any, and Operation + * @returns {undefined} + * @variation 1 + */ + Object.defineProperty(GkeHub.prototype.createFeature = function createFeature(request, callback) { + return this.rpcCall(createFeature, $root.google.cloud.gkehub.v1.CreateFeatureRequest, $root.google.longrunning.Operation, request, callback); + }, "name", { value: "CreateFeature" }); + + /** + * Calls CreateFeature. + * @function createFeature + * @memberof google.cloud.gkehub.v1.GkeHub + * @instance + * @param {google.cloud.gkehub.v1.ICreateFeatureRequest} request CreateFeatureRequest message or plain object + * @returns {Promise} Promise + * @variation 2 + */ + + /** + * Callback as used by {@link google.cloud.gkehub.v1.GkeHub#deleteMembership}. + * @memberof google.cloud.gkehub.v1.GkeHub + * @typedef DeleteMembershipCallback + * @type {function} + * @param {Error|null} error Error, if any + * @param {google.longrunning.Operation} [response] Operation + */ + + /** + * Calls DeleteMembership. + * @function deleteMembership + * @memberof google.cloud.gkehub.v1.GkeHub + * @instance + * @param {google.cloud.gkehub.v1.IDeleteMembershipRequest} request DeleteMembershipRequest message or plain object + * @param {google.cloud.gkehub.v1.GkeHub.DeleteMembershipCallback} callback Node-style callback called with the error, if any, and Operation + * @returns {undefined} + * @variation 1 + */ + Object.defineProperty(GkeHub.prototype.deleteMembership = function deleteMembership(request, callback) { + return this.rpcCall(deleteMembership, $root.google.cloud.gkehub.v1.DeleteMembershipRequest, $root.google.longrunning.Operation, request, callback); + }, "name", { value: "DeleteMembership" }); + + /** + * Calls DeleteMembership. + * @function deleteMembership + * @memberof google.cloud.gkehub.v1.GkeHub + * @instance + * @param {google.cloud.gkehub.v1.IDeleteMembershipRequest} request DeleteMembershipRequest message or plain object + * @returns {Promise} Promise + * @variation 2 + */ + + /** + * Callback as used by {@link google.cloud.gkehub.v1.GkeHub#deleteFeature}. + * @memberof google.cloud.gkehub.v1.GkeHub + * @typedef DeleteFeatureCallback + * @type {function} + * @param {Error|null} error Error, if any + * @param {google.longrunning.Operation} [response] Operation + */ + + /** + * Calls DeleteFeature. + * @function deleteFeature + * @memberof google.cloud.gkehub.v1.GkeHub + * @instance + * @param {google.cloud.gkehub.v1.IDeleteFeatureRequest} request DeleteFeatureRequest message or plain object + * @param {google.cloud.gkehub.v1.GkeHub.DeleteFeatureCallback} callback Node-style callback called with the error, if any, and Operation + * @returns {undefined} + * @variation 1 + */ + Object.defineProperty(GkeHub.prototype.deleteFeature = function deleteFeature(request, callback) { + return this.rpcCall(deleteFeature, $root.google.cloud.gkehub.v1.DeleteFeatureRequest, $root.google.longrunning.Operation, request, callback); + }, "name", { value: "DeleteFeature" }); + + /** + * Calls DeleteFeature. + * @function deleteFeature + * @memberof google.cloud.gkehub.v1.GkeHub + * @instance + * @param {google.cloud.gkehub.v1.IDeleteFeatureRequest} request DeleteFeatureRequest message or plain object + * @returns {Promise} Promise + * @variation 2 + */ + + /** + * Callback as used by {@link google.cloud.gkehub.v1.GkeHub#updateMembership}. + * @memberof google.cloud.gkehub.v1.GkeHub + * @typedef UpdateMembershipCallback + * @type {function} + * @param {Error|null} error Error, if any + * @param {google.longrunning.Operation} [response] Operation + */ + + /** + * Calls UpdateMembership. + * @function updateMembership + * @memberof google.cloud.gkehub.v1.GkeHub + * @instance + * @param {google.cloud.gkehub.v1.IUpdateMembershipRequest} request UpdateMembershipRequest message or plain object + * @param {google.cloud.gkehub.v1.GkeHub.UpdateMembershipCallback} callback Node-style callback called with the error, if any, and Operation + * @returns {undefined} + * @variation 1 + */ + Object.defineProperty(GkeHub.prototype.updateMembership = function updateMembership(request, callback) { + return this.rpcCall(updateMembership, $root.google.cloud.gkehub.v1.UpdateMembershipRequest, $root.google.longrunning.Operation, request, callback); + }, "name", { value: "UpdateMembership" }); + + /** + * Calls UpdateMembership. + * @function updateMembership + * @memberof google.cloud.gkehub.v1.GkeHub + * @instance + * @param {google.cloud.gkehub.v1.IUpdateMembershipRequest} request UpdateMembershipRequest message or plain object + * @returns {Promise} Promise + * @variation 2 + */ + + /** + * Callback as used by {@link google.cloud.gkehub.v1.GkeHub#updateFeature}. + * @memberof google.cloud.gkehub.v1.GkeHub + * @typedef UpdateFeatureCallback + * @type {function} + * @param {Error|null} error Error, if any + * @param {google.longrunning.Operation} [response] Operation + */ + + /** + * Calls UpdateFeature. + * @function updateFeature + * @memberof google.cloud.gkehub.v1.GkeHub + * @instance + * @param {google.cloud.gkehub.v1.IUpdateFeatureRequest} request UpdateFeatureRequest message or plain object + * @param {google.cloud.gkehub.v1.GkeHub.UpdateFeatureCallback} callback Node-style callback called with the error, if any, and Operation + * @returns {undefined} + * @variation 1 + */ + Object.defineProperty(GkeHub.prototype.updateFeature = function updateFeature(request, callback) { + return this.rpcCall(updateFeature, $root.google.cloud.gkehub.v1.UpdateFeatureRequest, $root.google.longrunning.Operation, request, callback); + }, "name", { value: "UpdateFeature" }); + + /** + * Calls UpdateFeature. + * @function updateFeature + * @memberof google.cloud.gkehub.v1.GkeHub + * @instance + * @param {google.cloud.gkehub.v1.IUpdateFeatureRequest} request UpdateFeatureRequest message or plain object + * @returns {Promise} Promise + * @variation 2 + */ + + /** + * Callback as used by {@link google.cloud.gkehub.v1.GkeHub#generateConnectManifest}. + * @memberof google.cloud.gkehub.v1.GkeHub + * @typedef GenerateConnectManifestCallback + * @type {function} + * @param {Error|null} error Error, if any + * @param {google.cloud.gkehub.v1.GenerateConnectManifestResponse} [response] GenerateConnectManifestResponse + */ + + /** + * Calls GenerateConnectManifest. + * @function generateConnectManifest + * @memberof google.cloud.gkehub.v1.GkeHub + * @instance + * @param {google.cloud.gkehub.v1.IGenerateConnectManifestRequest} request GenerateConnectManifestRequest message or plain object + * @param {google.cloud.gkehub.v1.GkeHub.GenerateConnectManifestCallback} callback Node-style callback called with the error, if any, and GenerateConnectManifestResponse + * @returns {undefined} + * @variation 1 + */ + Object.defineProperty(GkeHub.prototype.generateConnectManifest = function generateConnectManifest(request, callback) { + return this.rpcCall(generateConnectManifest, $root.google.cloud.gkehub.v1.GenerateConnectManifestRequest, $root.google.cloud.gkehub.v1.GenerateConnectManifestResponse, request, callback); + }, "name", { value: "GenerateConnectManifest" }); + + /** + * Calls GenerateConnectManifest. + * @function generateConnectManifest + * @memberof google.cloud.gkehub.v1.GkeHub + * @instance + * @param {google.cloud.gkehub.v1.IGenerateConnectManifestRequest} request GenerateConnectManifestRequest message or plain object + * @returns {Promise} Promise + * @variation 2 + */ + + return GkeHub; + })(); + + v1.ListMembershipsRequest = (function() { + + /** + * Properties of a ListMembershipsRequest. + * @memberof google.cloud.gkehub.v1 + * @interface IListMembershipsRequest + * @property {string|null} [parent] ListMembershipsRequest parent + * @property {number|null} [pageSize] ListMembershipsRequest pageSize + * @property {string|null} [pageToken] ListMembershipsRequest pageToken + * @property {string|null} [filter] ListMembershipsRequest filter + * @property {string|null} [orderBy] ListMembershipsRequest orderBy + */ + + /** + * Constructs a new ListMembershipsRequest. + * @memberof google.cloud.gkehub.v1 + * @classdesc Represents a ListMembershipsRequest. + * @implements IListMembershipsRequest + * @constructor + * @param {google.cloud.gkehub.v1.IListMembershipsRequest=} [properties] Properties to set + */ + function ListMembershipsRequest(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]]; + } + + /** + * ListMembershipsRequest parent. + * @member {string} parent + * @memberof google.cloud.gkehub.v1.ListMembershipsRequest + * @instance + */ + ListMembershipsRequest.prototype.parent = ""; + + /** + * ListMembershipsRequest pageSize. + * @member {number} pageSize + * @memberof google.cloud.gkehub.v1.ListMembershipsRequest + * @instance + */ + ListMembershipsRequest.prototype.pageSize = 0; + + /** + * ListMembershipsRequest pageToken. + * @member {string} pageToken + * @memberof google.cloud.gkehub.v1.ListMembershipsRequest + * @instance + */ + ListMembershipsRequest.prototype.pageToken = ""; + + /** + * ListMembershipsRequest filter. + * @member {string} filter + * @memberof google.cloud.gkehub.v1.ListMembershipsRequest + * @instance + */ + ListMembershipsRequest.prototype.filter = ""; + + /** + * ListMembershipsRequest orderBy. + * @member {string} orderBy + * @memberof google.cloud.gkehub.v1.ListMembershipsRequest + * @instance + */ + ListMembershipsRequest.prototype.orderBy = ""; + + /** + * Creates a new ListMembershipsRequest instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.v1.ListMembershipsRequest + * @static + * @param {google.cloud.gkehub.v1.IListMembershipsRequest=} [properties] Properties to set + * @returns {google.cloud.gkehub.v1.ListMembershipsRequest} ListMembershipsRequest instance + */ + ListMembershipsRequest.create = function create(properties) { + return new ListMembershipsRequest(properties); + }; + + /** + * Encodes the specified ListMembershipsRequest message. Does not implicitly {@link google.cloud.gkehub.v1.ListMembershipsRequest.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.v1.ListMembershipsRequest + * @static + * @param {google.cloud.gkehub.v1.IListMembershipsRequest} message ListMembershipsRequest message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + ListMembershipsRequest.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.parent != null && Object.hasOwnProperty.call(message, "parent")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.parent); + if (message.pageSize != null && Object.hasOwnProperty.call(message, "pageSize")) + writer.uint32(/* id 2, wireType 0 =*/16).int32(message.pageSize); + if (message.pageToken != null && Object.hasOwnProperty.call(message, "pageToken")) + writer.uint32(/* id 3, wireType 2 =*/26).string(message.pageToken); + if (message.filter != null && Object.hasOwnProperty.call(message, "filter")) + writer.uint32(/* id 4, wireType 2 =*/34).string(message.filter); + if (message.orderBy != null && Object.hasOwnProperty.call(message, "orderBy")) + writer.uint32(/* id 5, wireType 2 =*/42).string(message.orderBy); + return writer; + }; + + /** + * Encodes the specified ListMembershipsRequest message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1.ListMembershipsRequest.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.v1.ListMembershipsRequest + * @static + * @param {google.cloud.gkehub.v1.IListMembershipsRequest} message ListMembershipsRequest message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + ListMembershipsRequest.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a ListMembershipsRequest message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.v1.ListMembershipsRequest + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.v1.ListMembershipsRequest} ListMembershipsRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + ListMembershipsRequest.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.v1.ListMembershipsRequest(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.parent = reader.string(); + break; + case 2: + message.pageSize = reader.int32(); + break; + case 3: + message.pageToken = reader.string(); + break; + case 4: + message.filter = reader.string(); + break; + case 5: + message.orderBy = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a ListMembershipsRequest message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.v1.ListMembershipsRequest + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.v1.ListMembershipsRequest} ListMembershipsRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + ListMembershipsRequest.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a ListMembershipsRequest message. + * @function verify + * @memberof google.cloud.gkehub.v1.ListMembershipsRequest + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + ListMembershipsRequest.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.parent != null && message.hasOwnProperty("parent")) + if (!$util.isString(message.parent)) + return "parent: string expected"; + if (message.pageSize != null && message.hasOwnProperty("pageSize")) + if (!$util.isInteger(message.pageSize)) + return "pageSize: integer expected"; + if (message.pageToken != null && message.hasOwnProperty("pageToken")) + if (!$util.isString(message.pageToken)) + return "pageToken: string expected"; + if (message.filter != null && message.hasOwnProperty("filter")) + if (!$util.isString(message.filter)) + return "filter: string expected"; + if (message.orderBy != null && message.hasOwnProperty("orderBy")) + if (!$util.isString(message.orderBy)) + return "orderBy: string expected"; + return null; + }; + + /** + * Creates a ListMembershipsRequest message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.v1.ListMembershipsRequest + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.v1.ListMembershipsRequest} ListMembershipsRequest + */ + ListMembershipsRequest.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.v1.ListMembershipsRequest) + return object; + var message = new $root.google.cloud.gkehub.v1.ListMembershipsRequest(); + if (object.parent != null) + message.parent = String(object.parent); + if (object.pageSize != null) + message.pageSize = object.pageSize | 0; + if (object.pageToken != null) + message.pageToken = String(object.pageToken); + if (object.filter != null) + message.filter = String(object.filter); + if (object.orderBy != null) + message.orderBy = String(object.orderBy); + return message; + }; + + /** + * Creates a plain object from a ListMembershipsRequest message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.v1.ListMembershipsRequest + * @static + * @param {google.cloud.gkehub.v1.ListMembershipsRequest} message ListMembershipsRequest + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + ListMembershipsRequest.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.parent = ""; + object.pageSize = 0; + object.pageToken = ""; + object.filter = ""; + object.orderBy = ""; + } + if (message.parent != null && message.hasOwnProperty("parent")) + object.parent = message.parent; + if (message.pageSize != null && message.hasOwnProperty("pageSize")) + object.pageSize = message.pageSize; + if (message.pageToken != null && message.hasOwnProperty("pageToken")) + object.pageToken = message.pageToken; + if (message.filter != null && message.hasOwnProperty("filter")) + object.filter = message.filter; + if (message.orderBy != null && message.hasOwnProperty("orderBy")) + object.orderBy = message.orderBy; + return object; + }; + + /** + * Converts this ListMembershipsRequest to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.v1.ListMembershipsRequest + * @instance + * @returns {Object.} JSON object + */ + ListMembershipsRequest.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return ListMembershipsRequest; + })(); + + v1.ListMembershipsResponse = (function() { + + /** + * Properties of a ListMembershipsResponse. + * @memberof google.cloud.gkehub.v1 + * @interface IListMembershipsResponse + * @property {Array.|null} [resources] ListMembershipsResponse resources + * @property {string|null} [nextPageToken] ListMembershipsResponse nextPageToken + * @property {Array.|null} [unreachable] ListMembershipsResponse unreachable + */ + + /** + * Constructs a new ListMembershipsResponse. + * @memberof google.cloud.gkehub.v1 + * @classdesc Represents a ListMembershipsResponse. + * @implements IListMembershipsResponse + * @constructor + * @param {google.cloud.gkehub.v1.IListMembershipsResponse=} [properties] Properties to set + */ + function ListMembershipsResponse(properties) { + this.resources = []; + this.unreachable = []; + 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]]; + } + + /** + * ListMembershipsResponse resources. + * @member {Array.} resources + * @memberof google.cloud.gkehub.v1.ListMembershipsResponse + * @instance + */ + ListMembershipsResponse.prototype.resources = $util.emptyArray; + + /** + * ListMembershipsResponse nextPageToken. + * @member {string} nextPageToken + * @memberof google.cloud.gkehub.v1.ListMembershipsResponse + * @instance + */ + ListMembershipsResponse.prototype.nextPageToken = ""; + + /** + * ListMembershipsResponse unreachable. + * @member {Array.} unreachable + * @memberof google.cloud.gkehub.v1.ListMembershipsResponse + * @instance + */ + ListMembershipsResponse.prototype.unreachable = $util.emptyArray; + + /** + * Creates a new ListMembershipsResponse instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.v1.ListMembershipsResponse + * @static + * @param {google.cloud.gkehub.v1.IListMembershipsResponse=} [properties] Properties to set + * @returns {google.cloud.gkehub.v1.ListMembershipsResponse} ListMembershipsResponse instance + */ + ListMembershipsResponse.create = function create(properties) { + return new ListMembershipsResponse(properties); + }; + + /** + * Encodes the specified ListMembershipsResponse message. Does not implicitly {@link google.cloud.gkehub.v1.ListMembershipsResponse.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.v1.ListMembershipsResponse + * @static + * @param {google.cloud.gkehub.v1.IListMembershipsResponse} message ListMembershipsResponse message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + ListMembershipsResponse.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.resources != null && message.resources.length) + for (var i = 0; i < message.resources.length; ++i) + $root.google.cloud.gkehub.v1.Membership.encode(message.resources[i], writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim(); + if (message.nextPageToken != null && Object.hasOwnProperty.call(message, "nextPageToken")) + writer.uint32(/* id 2, wireType 2 =*/18).string(message.nextPageToken); + if (message.unreachable != null && message.unreachable.length) + for (var i = 0; i < message.unreachable.length; ++i) + writer.uint32(/* id 3, wireType 2 =*/26).string(message.unreachable[i]); + return writer; + }; + + /** + * Encodes the specified ListMembershipsResponse message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1.ListMembershipsResponse.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.v1.ListMembershipsResponse + * @static + * @param {google.cloud.gkehub.v1.IListMembershipsResponse} message ListMembershipsResponse message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + ListMembershipsResponse.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a ListMembershipsResponse message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.v1.ListMembershipsResponse + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.v1.ListMembershipsResponse} ListMembershipsResponse + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + ListMembershipsResponse.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.v1.ListMembershipsResponse(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + if (!(message.resources && message.resources.length)) + message.resources = []; + message.resources.push($root.google.cloud.gkehub.v1.Membership.decode(reader, reader.uint32())); + break; + case 2: + message.nextPageToken = reader.string(); + break; + case 3: + if (!(message.unreachable && message.unreachable.length)) + message.unreachable = []; + message.unreachable.push(reader.string()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a ListMembershipsResponse message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.v1.ListMembershipsResponse + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.v1.ListMembershipsResponse} ListMembershipsResponse + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + ListMembershipsResponse.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a ListMembershipsResponse message. + * @function verify + * @memberof google.cloud.gkehub.v1.ListMembershipsResponse + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + ListMembershipsResponse.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.resources != null && message.hasOwnProperty("resources")) { + if (!Array.isArray(message.resources)) + return "resources: array expected"; + for (var i = 0; i < message.resources.length; ++i) { + var error = $root.google.cloud.gkehub.v1.Membership.verify(message.resources[i]); + if (error) + return "resources." + error; + } + } + if (message.nextPageToken != null && message.hasOwnProperty("nextPageToken")) + if (!$util.isString(message.nextPageToken)) + return "nextPageToken: string expected"; + if (message.unreachable != null && message.hasOwnProperty("unreachable")) { + if (!Array.isArray(message.unreachable)) + return "unreachable: array expected"; + for (var i = 0; i < message.unreachable.length; ++i) + if (!$util.isString(message.unreachable[i])) + return "unreachable: string[] expected"; + } + return null; + }; + + /** + * Creates a ListMembershipsResponse message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.v1.ListMembershipsResponse + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.v1.ListMembershipsResponse} ListMembershipsResponse + */ + ListMembershipsResponse.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.v1.ListMembershipsResponse) + return object; + var message = new $root.google.cloud.gkehub.v1.ListMembershipsResponse(); + if (object.resources) { + if (!Array.isArray(object.resources)) + throw TypeError(".google.cloud.gkehub.v1.ListMembershipsResponse.resources: array expected"); + message.resources = []; + for (var i = 0; i < object.resources.length; ++i) { + if (typeof object.resources[i] !== "object") + throw TypeError(".google.cloud.gkehub.v1.ListMembershipsResponse.resources: object expected"); + message.resources[i] = $root.google.cloud.gkehub.v1.Membership.fromObject(object.resources[i]); + } + } + if (object.nextPageToken != null) + message.nextPageToken = String(object.nextPageToken); + if (object.unreachable) { + if (!Array.isArray(object.unreachable)) + throw TypeError(".google.cloud.gkehub.v1.ListMembershipsResponse.unreachable: array expected"); + message.unreachable = []; + for (var i = 0; i < object.unreachable.length; ++i) + message.unreachable[i] = String(object.unreachable[i]); + } + return message; + }; + + /** + * Creates a plain object from a ListMembershipsResponse message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.v1.ListMembershipsResponse + * @static + * @param {google.cloud.gkehub.v1.ListMembershipsResponse} message ListMembershipsResponse + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + ListMembershipsResponse.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.arrays || options.defaults) { + object.resources = []; + object.unreachable = []; + } + if (options.defaults) + object.nextPageToken = ""; + if (message.resources && message.resources.length) { + object.resources = []; + for (var j = 0; j < message.resources.length; ++j) + object.resources[j] = $root.google.cloud.gkehub.v1.Membership.toObject(message.resources[j], options); + } + if (message.nextPageToken != null && message.hasOwnProperty("nextPageToken")) + object.nextPageToken = message.nextPageToken; + if (message.unreachable && message.unreachable.length) { + object.unreachable = []; + for (var j = 0; j < message.unreachable.length; ++j) + object.unreachable[j] = message.unreachable[j]; + } + return object; + }; + + /** + * Converts this ListMembershipsResponse to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.v1.ListMembershipsResponse + * @instance + * @returns {Object.} JSON object + */ + ListMembershipsResponse.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return ListMembershipsResponse; + })(); + + v1.GetMembershipRequest = (function() { + + /** + * Properties of a GetMembershipRequest. + * @memberof google.cloud.gkehub.v1 + * @interface IGetMembershipRequest + * @property {string|null} [name] GetMembershipRequest name + */ + + /** + * Constructs a new GetMembershipRequest. + * @memberof google.cloud.gkehub.v1 + * @classdesc Represents a GetMembershipRequest. + * @implements IGetMembershipRequest + * @constructor + * @param {google.cloud.gkehub.v1.IGetMembershipRequest=} [properties] Properties to set + */ + function GetMembershipRequest(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]]; + } + + /** + * GetMembershipRequest name. + * @member {string} name + * @memberof google.cloud.gkehub.v1.GetMembershipRequest + * @instance + */ + GetMembershipRequest.prototype.name = ""; + + /** + * Creates a new GetMembershipRequest instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.v1.GetMembershipRequest + * @static + * @param {google.cloud.gkehub.v1.IGetMembershipRequest=} [properties] Properties to set + * @returns {google.cloud.gkehub.v1.GetMembershipRequest} GetMembershipRequest instance + */ + GetMembershipRequest.create = function create(properties) { + return new GetMembershipRequest(properties); + }; + + /** + * Encodes the specified GetMembershipRequest message. Does not implicitly {@link google.cloud.gkehub.v1.GetMembershipRequest.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.v1.GetMembershipRequest + * @static + * @param {google.cloud.gkehub.v1.IGetMembershipRequest} message GetMembershipRequest message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + GetMembershipRequest.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.name != null && Object.hasOwnProperty.call(message, "name")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.name); + return writer; + }; + + /** + * Encodes the specified GetMembershipRequest message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1.GetMembershipRequest.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.v1.GetMembershipRequest + * @static + * @param {google.cloud.gkehub.v1.IGetMembershipRequest} message GetMembershipRequest message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + GetMembershipRequest.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a GetMembershipRequest message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.v1.GetMembershipRequest + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.v1.GetMembershipRequest} GetMembershipRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + GetMembershipRequest.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.v1.GetMembershipRequest(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.name = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a GetMembershipRequest message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.v1.GetMembershipRequest + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.v1.GetMembershipRequest} GetMembershipRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + GetMembershipRequest.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a GetMembershipRequest message. + * @function verify + * @memberof google.cloud.gkehub.v1.GetMembershipRequest + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + GetMembershipRequest.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.name != null && message.hasOwnProperty("name")) + if (!$util.isString(message.name)) + return "name: string expected"; + return null; + }; + + /** + * Creates a GetMembershipRequest message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.v1.GetMembershipRequest + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.v1.GetMembershipRequest} GetMembershipRequest + */ + GetMembershipRequest.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.v1.GetMembershipRequest) + return object; + var message = new $root.google.cloud.gkehub.v1.GetMembershipRequest(); + if (object.name != null) + message.name = String(object.name); + return message; + }; + + /** + * Creates a plain object from a GetMembershipRequest message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.v1.GetMembershipRequest + * @static + * @param {google.cloud.gkehub.v1.GetMembershipRequest} message GetMembershipRequest + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + GetMembershipRequest.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) + object.name = ""; + if (message.name != null && message.hasOwnProperty("name")) + object.name = message.name; + return object; + }; + + /** + * Converts this GetMembershipRequest to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.v1.GetMembershipRequest + * @instance + * @returns {Object.} JSON object + */ + GetMembershipRequest.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return GetMembershipRequest; + })(); + + v1.CreateMembershipRequest = (function() { + + /** + * Properties of a CreateMembershipRequest. + * @memberof google.cloud.gkehub.v1 + * @interface ICreateMembershipRequest + * @property {string|null} [parent] CreateMembershipRequest parent + * @property {string|null} [membershipId] CreateMembershipRequest membershipId + * @property {google.cloud.gkehub.v1.IMembership|null} [resource] CreateMembershipRequest resource + * @property {string|null} [requestId] CreateMembershipRequest requestId + */ + + /** + * Constructs a new CreateMembershipRequest. + * @memberof google.cloud.gkehub.v1 + * @classdesc Represents a CreateMembershipRequest. + * @implements ICreateMembershipRequest + * @constructor + * @param {google.cloud.gkehub.v1.ICreateMembershipRequest=} [properties] Properties to set + */ + function CreateMembershipRequest(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]]; + } + + /** + * CreateMembershipRequest parent. + * @member {string} parent + * @memberof google.cloud.gkehub.v1.CreateMembershipRequest + * @instance + */ + CreateMembershipRequest.prototype.parent = ""; + + /** + * CreateMembershipRequest membershipId. + * @member {string} membershipId + * @memberof google.cloud.gkehub.v1.CreateMembershipRequest + * @instance + */ + CreateMembershipRequest.prototype.membershipId = ""; + + /** + * CreateMembershipRequest resource. + * @member {google.cloud.gkehub.v1.IMembership|null|undefined} resource + * @memberof google.cloud.gkehub.v1.CreateMembershipRequest + * @instance + */ + CreateMembershipRequest.prototype.resource = null; + + /** + * CreateMembershipRequest requestId. + * @member {string} requestId + * @memberof google.cloud.gkehub.v1.CreateMembershipRequest + * @instance + */ + CreateMembershipRequest.prototype.requestId = ""; + + /** + * Creates a new CreateMembershipRequest instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.v1.CreateMembershipRequest + * @static + * @param {google.cloud.gkehub.v1.ICreateMembershipRequest=} [properties] Properties to set + * @returns {google.cloud.gkehub.v1.CreateMembershipRequest} CreateMembershipRequest instance + */ + CreateMembershipRequest.create = function create(properties) { + return new CreateMembershipRequest(properties); + }; + + /** + * Encodes the specified CreateMembershipRequest message. Does not implicitly {@link google.cloud.gkehub.v1.CreateMembershipRequest.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.v1.CreateMembershipRequest + * @static + * @param {google.cloud.gkehub.v1.ICreateMembershipRequest} message CreateMembershipRequest message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + CreateMembershipRequest.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.parent != null && Object.hasOwnProperty.call(message, "parent")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.parent); + if (message.membershipId != null && Object.hasOwnProperty.call(message, "membershipId")) + writer.uint32(/* id 2, wireType 2 =*/18).string(message.membershipId); + if (message.resource != null && Object.hasOwnProperty.call(message, "resource")) + $root.google.cloud.gkehub.v1.Membership.encode(message.resource, writer.uint32(/* id 3, wireType 2 =*/26).fork()).ldelim(); + if (message.requestId != null && Object.hasOwnProperty.call(message, "requestId")) + writer.uint32(/* id 4, wireType 2 =*/34).string(message.requestId); + return writer; + }; + + /** + * Encodes the specified CreateMembershipRequest message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1.CreateMembershipRequest.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.v1.CreateMembershipRequest + * @static + * @param {google.cloud.gkehub.v1.ICreateMembershipRequest} message CreateMembershipRequest message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + CreateMembershipRequest.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a CreateMembershipRequest message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.v1.CreateMembershipRequest + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.v1.CreateMembershipRequest} CreateMembershipRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + CreateMembershipRequest.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.v1.CreateMembershipRequest(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.parent = reader.string(); + break; + case 2: + message.membershipId = reader.string(); + break; + case 3: + message.resource = $root.google.cloud.gkehub.v1.Membership.decode(reader, reader.uint32()); + break; + case 4: + message.requestId = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a CreateMembershipRequest message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.v1.CreateMembershipRequest + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.v1.CreateMembershipRequest} CreateMembershipRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + CreateMembershipRequest.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a CreateMembershipRequest message. + * @function verify + * @memberof google.cloud.gkehub.v1.CreateMembershipRequest + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + CreateMembershipRequest.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.parent != null && message.hasOwnProperty("parent")) + if (!$util.isString(message.parent)) + return "parent: string expected"; + if (message.membershipId != null && message.hasOwnProperty("membershipId")) + if (!$util.isString(message.membershipId)) + return "membershipId: string expected"; + if (message.resource != null && message.hasOwnProperty("resource")) { + var error = $root.google.cloud.gkehub.v1.Membership.verify(message.resource); + if (error) + return "resource." + error; + } + if (message.requestId != null && message.hasOwnProperty("requestId")) + if (!$util.isString(message.requestId)) + return "requestId: string expected"; + return null; + }; + + /** + * Creates a CreateMembershipRequest message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.v1.CreateMembershipRequest + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.v1.CreateMembershipRequest} CreateMembershipRequest + */ + CreateMembershipRequest.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.v1.CreateMembershipRequest) + return object; + var message = new $root.google.cloud.gkehub.v1.CreateMembershipRequest(); + if (object.parent != null) + message.parent = String(object.parent); + if (object.membershipId != null) + message.membershipId = String(object.membershipId); + if (object.resource != null) { + if (typeof object.resource !== "object") + throw TypeError(".google.cloud.gkehub.v1.CreateMembershipRequest.resource: object expected"); + message.resource = $root.google.cloud.gkehub.v1.Membership.fromObject(object.resource); + } + if (object.requestId != null) + message.requestId = String(object.requestId); + return message; + }; + + /** + * Creates a plain object from a CreateMembershipRequest message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.v1.CreateMembershipRequest + * @static + * @param {google.cloud.gkehub.v1.CreateMembershipRequest} message CreateMembershipRequest + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + CreateMembershipRequest.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.parent = ""; + object.membershipId = ""; + object.resource = null; + object.requestId = ""; + } + if (message.parent != null && message.hasOwnProperty("parent")) + object.parent = message.parent; + if (message.membershipId != null && message.hasOwnProperty("membershipId")) + object.membershipId = message.membershipId; + if (message.resource != null && message.hasOwnProperty("resource")) + object.resource = $root.google.cloud.gkehub.v1.Membership.toObject(message.resource, options); + if (message.requestId != null && message.hasOwnProperty("requestId")) + object.requestId = message.requestId; + return object; + }; + + /** + * Converts this CreateMembershipRequest to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.v1.CreateMembershipRequest + * @instance + * @returns {Object.} JSON object + */ + CreateMembershipRequest.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return CreateMembershipRequest; + })(); + + v1.DeleteMembershipRequest = (function() { + + /** + * Properties of a DeleteMembershipRequest. + * @memberof google.cloud.gkehub.v1 + * @interface IDeleteMembershipRequest + * @property {string|null} [name] DeleteMembershipRequest name + * @property {string|null} [requestId] DeleteMembershipRequest requestId + */ + + /** + * Constructs a new DeleteMembershipRequest. + * @memberof google.cloud.gkehub.v1 + * @classdesc Represents a DeleteMembershipRequest. + * @implements IDeleteMembershipRequest + * @constructor + * @param {google.cloud.gkehub.v1.IDeleteMembershipRequest=} [properties] Properties to set + */ + function DeleteMembershipRequest(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]]; + } + + /** + * DeleteMembershipRequest name. + * @member {string} name + * @memberof google.cloud.gkehub.v1.DeleteMembershipRequest + * @instance + */ + DeleteMembershipRequest.prototype.name = ""; + + /** + * DeleteMembershipRequest requestId. + * @member {string} requestId + * @memberof google.cloud.gkehub.v1.DeleteMembershipRequest + * @instance + */ + DeleteMembershipRequest.prototype.requestId = ""; + + /** + * Creates a new DeleteMembershipRequest instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.v1.DeleteMembershipRequest + * @static + * @param {google.cloud.gkehub.v1.IDeleteMembershipRequest=} [properties] Properties to set + * @returns {google.cloud.gkehub.v1.DeleteMembershipRequest} DeleteMembershipRequest instance + */ + DeleteMembershipRequest.create = function create(properties) { + return new DeleteMembershipRequest(properties); + }; + + /** + * Encodes the specified DeleteMembershipRequest message. Does not implicitly {@link google.cloud.gkehub.v1.DeleteMembershipRequest.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.v1.DeleteMembershipRequest + * @static + * @param {google.cloud.gkehub.v1.IDeleteMembershipRequest} message DeleteMembershipRequest message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + DeleteMembershipRequest.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.name != null && Object.hasOwnProperty.call(message, "name")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.name); + if (message.requestId != null && Object.hasOwnProperty.call(message, "requestId")) + writer.uint32(/* id 2, wireType 2 =*/18).string(message.requestId); + return writer; + }; + + /** + * Encodes the specified DeleteMembershipRequest message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1.DeleteMembershipRequest.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.v1.DeleteMembershipRequest + * @static + * @param {google.cloud.gkehub.v1.IDeleteMembershipRequest} message DeleteMembershipRequest message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + DeleteMembershipRequest.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a DeleteMembershipRequest message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.v1.DeleteMembershipRequest + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.v1.DeleteMembershipRequest} DeleteMembershipRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + DeleteMembershipRequest.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.v1.DeleteMembershipRequest(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.name = reader.string(); + break; + case 2: + message.requestId = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a DeleteMembershipRequest message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.v1.DeleteMembershipRequest + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.v1.DeleteMembershipRequest} DeleteMembershipRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + DeleteMembershipRequest.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a DeleteMembershipRequest message. + * @function verify + * @memberof google.cloud.gkehub.v1.DeleteMembershipRequest + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + DeleteMembershipRequest.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.name != null && message.hasOwnProperty("name")) + if (!$util.isString(message.name)) + return "name: string expected"; + if (message.requestId != null && message.hasOwnProperty("requestId")) + if (!$util.isString(message.requestId)) + return "requestId: string expected"; + return null; + }; + + /** + * Creates a DeleteMembershipRequest message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.v1.DeleteMembershipRequest + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.v1.DeleteMembershipRequest} DeleteMembershipRequest + */ + DeleteMembershipRequest.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.v1.DeleteMembershipRequest) + return object; + var message = new $root.google.cloud.gkehub.v1.DeleteMembershipRequest(); + if (object.name != null) + message.name = String(object.name); + if (object.requestId != null) + message.requestId = String(object.requestId); + return message; + }; + + /** + * Creates a plain object from a DeleteMembershipRequest message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.v1.DeleteMembershipRequest + * @static + * @param {google.cloud.gkehub.v1.DeleteMembershipRequest} message DeleteMembershipRequest + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + DeleteMembershipRequest.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.name = ""; + object.requestId = ""; + } + if (message.name != null && message.hasOwnProperty("name")) + object.name = message.name; + if (message.requestId != null && message.hasOwnProperty("requestId")) + object.requestId = message.requestId; + return object; + }; + + /** + * Converts this DeleteMembershipRequest to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.v1.DeleteMembershipRequest + * @instance + * @returns {Object.} JSON object + */ + DeleteMembershipRequest.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return DeleteMembershipRequest; + })(); + + v1.UpdateMembershipRequest = (function() { + + /** + * Properties of an UpdateMembershipRequest. + * @memberof google.cloud.gkehub.v1 + * @interface IUpdateMembershipRequest + * @property {string|null} [name] UpdateMembershipRequest name + * @property {google.protobuf.IFieldMask|null} [updateMask] UpdateMembershipRequest updateMask + * @property {google.cloud.gkehub.v1.IMembership|null} [resource] UpdateMembershipRequest resource + * @property {string|null} [requestId] UpdateMembershipRequest requestId + */ + + /** + * Constructs a new UpdateMembershipRequest. + * @memberof google.cloud.gkehub.v1 + * @classdesc Represents an UpdateMembershipRequest. + * @implements IUpdateMembershipRequest + * @constructor + * @param {google.cloud.gkehub.v1.IUpdateMembershipRequest=} [properties] Properties to set + */ + function UpdateMembershipRequest(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]]; + } + + /** + * UpdateMembershipRequest name. + * @member {string} name + * @memberof google.cloud.gkehub.v1.UpdateMembershipRequest + * @instance + */ + UpdateMembershipRequest.prototype.name = ""; + + /** + * UpdateMembershipRequest updateMask. + * @member {google.protobuf.IFieldMask|null|undefined} updateMask + * @memberof google.cloud.gkehub.v1.UpdateMembershipRequest + * @instance + */ + UpdateMembershipRequest.prototype.updateMask = null; + + /** + * UpdateMembershipRequest resource. + * @member {google.cloud.gkehub.v1.IMembership|null|undefined} resource + * @memberof google.cloud.gkehub.v1.UpdateMembershipRequest + * @instance + */ + UpdateMembershipRequest.prototype.resource = null; + + /** + * UpdateMembershipRequest requestId. + * @member {string} requestId + * @memberof google.cloud.gkehub.v1.UpdateMembershipRequest + * @instance + */ + UpdateMembershipRequest.prototype.requestId = ""; + + /** + * Creates a new UpdateMembershipRequest instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.v1.UpdateMembershipRequest + * @static + * @param {google.cloud.gkehub.v1.IUpdateMembershipRequest=} [properties] Properties to set + * @returns {google.cloud.gkehub.v1.UpdateMembershipRequest} UpdateMembershipRequest instance + */ + UpdateMembershipRequest.create = function create(properties) { + return new UpdateMembershipRequest(properties); + }; + + /** + * Encodes the specified UpdateMembershipRequest message. Does not implicitly {@link google.cloud.gkehub.v1.UpdateMembershipRequest.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.v1.UpdateMembershipRequest + * @static + * @param {google.cloud.gkehub.v1.IUpdateMembershipRequest} message UpdateMembershipRequest message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + UpdateMembershipRequest.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.name != null && Object.hasOwnProperty.call(message, "name")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.name); + if (message.updateMask != null && Object.hasOwnProperty.call(message, "updateMask")) + $root.google.protobuf.FieldMask.encode(message.updateMask, writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim(); + if (message.resource != null && Object.hasOwnProperty.call(message, "resource")) + $root.google.cloud.gkehub.v1.Membership.encode(message.resource, writer.uint32(/* id 3, wireType 2 =*/26).fork()).ldelim(); + if (message.requestId != null && Object.hasOwnProperty.call(message, "requestId")) + writer.uint32(/* id 4, wireType 2 =*/34).string(message.requestId); + return writer; + }; + + /** + * Encodes the specified UpdateMembershipRequest message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1.UpdateMembershipRequest.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.v1.UpdateMembershipRequest + * @static + * @param {google.cloud.gkehub.v1.IUpdateMembershipRequest} message UpdateMembershipRequest message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + UpdateMembershipRequest.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes an UpdateMembershipRequest message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.v1.UpdateMembershipRequest + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.v1.UpdateMembershipRequest} UpdateMembershipRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + UpdateMembershipRequest.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.v1.UpdateMembershipRequest(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.name = reader.string(); + break; + case 2: + message.updateMask = $root.google.protobuf.FieldMask.decode(reader, reader.uint32()); + break; + case 3: + message.resource = $root.google.cloud.gkehub.v1.Membership.decode(reader, reader.uint32()); + break; + case 4: + message.requestId = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes an UpdateMembershipRequest message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.v1.UpdateMembershipRequest + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.v1.UpdateMembershipRequest} UpdateMembershipRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + UpdateMembershipRequest.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies an UpdateMembershipRequest message. + * @function verify + * @memberof google.cloud.gkehub.v1.UpdateMembershipRequest + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + UpdateMembershipRequest.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.name != null && message.hasOwnProperty("name")) + if (!$util.isString(message.name)) + return "name: string expected"; + if (message.updateMask != null && message.hasOwnProperty("updateMask")) { + var error = $root.google.protobuf.FieldMask.verify(message.updateMask); + if (error) + return "updateMask." + error; + } + if (message.resource != null && message.hasOwnProperty("resource")) { + var error = $root.google.cloud.gkehub.v1.Membership.verify(message.resource); + if (error) + return "resource." + error; + } + if (message.requestId != null && message.hasOwnProperty("requestId")) + if (!$util.isString(message.requestId)) + return "requestId: string expected"; + return null; + }; + + /** + * Creates an UpdateMembershipRequest message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.v1.UpdateMembershipRequest + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.v1.UpdateMembershipRequest} UpdateMembershipRequest + */ + UpdateMembershipRequest.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.v1.UpdateMembershipRequest) + return object; + var message = new $root.google.cloud.gkehub.v1.UpdateMembershipRequest(); + if (object.name != null) + message.name = String(object.name); + if (object.updateMask != null) { + if (typeof object.updateMask !== "object") + throw TypeError(".google.cloud.gkehub.v1.UpdateMembershipRequest.updateMask: object expected"); + message.updateMask = $root.google.protobuf.FieldMask.fromObject(object.updateMask); + } + if (object.resource != null) { + if (typeof object.resource !== "object") + throw TypeError(".google.cloud.gkehub.v1.UpdateMembershipRequest.resource: object expected"); + message.resource = $root.google.cloud.gkehub.v1.Membership.fromObject(object.resource); + } + if (object.requestId != null) + message.requestId = String(object.requestId); + return message; + }; + + /** + * Creates a plain object from an UpdateMembershipRequest message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.v1.UpdateMembershipRequest + * @static + * @param {google.cloud.gkehub.v1.UpdateMembershipRequest} message UpdateMembershipRequest + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + UpdateMembershipRequest.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.name = ""; + object.updateMask = null; + object.resource = null; + object.requestId = ""; + } + if (message.name != null && message.hasOwnProperty("name")) + object.name = message.name; + if (message.updateMask != null && message.hasOwnProperty("updateMask")) + object.updateMask = $root.google.protobuf.FieldMask.toObject(message.updateMask, options); + if (message.resource != null && message.hasOwnProperty("resource")) + object.resource = $root.google.cloud.gkehub.v1.Membership.toObject(message.resource, options); + if (message.requestId != null && message.hasOwnProperty("requestId")) + object.requestId = message.requestId; + return object; + }; + + /** + * Converts this UpdateMembershipRequest to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.v1.UpdateMembershipRequest + * @instance + * @returns {Object.} JSON object + */ + UpdateMembershipRequest.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return UpdateMembershipRequest; + })(); + + v1.GenerateConnectManifestRequest = (function() { + + /** + * Properties of a GenerateConnectManifestRequest. + * @memberof google.cloud.gkehub.v1 + * @interface IGenerateConnectManifestRequest + * @property {string|null} [name] GenerateConnectManifestRequest name + * @property {string|null} [namespace] GenerateConnectManifestRequest namespace + * @property {Uint8Array|null} [proxy] GenerateConnectManifestRequest proxy + * @property {string|null} [version] GenerateConnectManifestRequest version + * @property {boolean|null} [isUpgrade] GenerateConnectManifestRequest isUpgrade + * @property {string|null} [registry] GenerateConnectManifestRequest registry + * @property {Uint8Array|null} [imagePullSecretContent] GenerateConnectManifestRequest imagePullSecretContent + */ + + /** + * Constructs a new GenerateConnectManifestRequest. + * @memberof google.cloud.gkehub.v1 + * @classdesc Represents a GenerateConnectManifestRequest. + * @implements IGenerateConnectManifestRequest + * @constructor + * @param {google.cloud.gkehub.v1.IGenerateConnectManifestRequest=} [properties] Properties to set + */ + function GenerateConnectManifestRequest(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]]; + } + + /** + * GenerateConnectManifestRequest name. + * @member {string} name + * @memberof google.cloud.gkehub.v1.GenerateConnectManifestRequest + * @instance + */ + GenerateConnectManifestRequest.prototype.name = ""; + + /** + * GenerateConnectManifestRequest namespace. + * @member {string} namespace + * @memberof google.cloud.gkehub.v1.GenerateConnectManifestRequest + * @instance + */ + GenerateConnectManifestRequest.prototype.namespace = ""; + + /** + * GenerateConnectManifestRequest proxy. + * @member {Uint8Array} proxy + * @memberof google.cloud.gkehub.v1.GenerateConnectManifestRequest + * @instance + */ + GenerateConnectManifestRequest.prototype.proxy = $util.newBuffer([]); + + /** + * GenerateConnectManifestRequest version. + * @member {string} version + * @memberof google.cloud.gkehub.v1.GenerateConnectManifestRequest + * @instance + */ + GenerateConnectManifestRequest.prototype.version = ""; + + /** + * GenerateConnectManifestRequest isUpgrade. + * @member {boolean} isUpgrade + * @memberof google.cloud.gkehub.v1.GenerateConnectManifestRequest + * @instance + */ + GenerateConnectManifestRequest.prototype.isUpgrade = false; + + /** + * GenerateConnectManifestRequest registry. + * @member {string} registry + * @memberof google.cloud.gkehub.v1.GenerateConnectManifestRequest + * @instance + */ + GenerateConnectManifestRequest.prototype.registry = ""; + + /** + * GenerateConnectManifestRequest imagePullSecretContent. + * @member {Uint8Array} imagePullSecretContent + * @memberof google.cloud.gkehub.v1.GenerateConnectManifestRequest + * @instance + */ + GenerateConnectManifestRequest.prototype.imagePullSecretContent = $util.newBuffer([]); + + /** + * Creates a new GenerateConnectManifestRequest instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.v1.GenerateConnectManifestRequest + * @static + * @param {google.cloud.gkehub.v1.IGenerateConnectManifestRequest=} [properties] Properties to set + * @returns {google.cloud.gkehub.v1.GenerateConnectManifestRequest} GenerateConnectManifestRequest instance + */ + GenerateConnectManifestRequest.create = function create(properties) { + return new GenerateConnectManifestRequest(properties); + }; + + /** + * Encodes the specified GenerateConnectManifestRequest message. Does not implicitly {@link google.cloud.gkehub.v1.GenerateConnectManifestRequest.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.v1.GenerateConnectManifestRequest + * @static + * @param {google.cloud.gkehub.v1.IGenerateConnectManifestRequest} message GenerateConnectManifestRequest message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + GenerateConnectManifestRequest.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.name != null && Object.hasOwnProperty.call(message, "name")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.name); + if (message.namespace != null && Object.hasOwnProperty.call(message, "namespace")) + writer.uint32(/* id 2, wireType 2 =*/18).string(message.namespace); + if (message.proxy != null && Object.hasOwnProperty.call(message, "proxy")) + writer.uint32(/* id 3, wireType 2 =*/26).bytes(message.proxy); + if (message.version != null && Object.hasOwnProperty.call(message, "version")) + writer.uint32(/* id 4, wireType 2 =*/34).string(message.version); + if (message.isUpgrade != null && Object.hasOwnProperty.call(message, "isUpgrade")) + writer.uint32(/* id 5, wireType 0 =*/40).bool(message.isUpgrade); + if (message.registry != null && Object.hasOwnProperty.call(message, "registry")) + writer.uint32(/* id 6, wireType 2 =*/50).string(message.registry); + if (message.imagePullSecretContent != null && Object.hasOwnProperty.call(message, "imagePullSecretContent")) + writer.uint32(/* id 7, wireType 2 =*/58).bytes(message.imagePullSecretContent); + return writer; + }; + + /** + * Encodes the specified GenerateConnectManifestRequest message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1.GenerateConnectManifestRequest.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.v1.GenerateConnectManifestRequest + * @static + * @param {google.cloud.gkehub.v1.IGenerateConnectManifestRequest} message GenerateConnectManifestRequest message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + GenerateConnectManifestRequest.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a GenerateConnectManifestRequest message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.v1.GenerateConnectManifestRequest + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.v1.GenerateConnectManifestRequest} GenerateConnectManifestRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + GenerateConnectManifestRequest.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.v1.GenerateConnectManifestRequest(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.name = reader.string(); + break; + case 2: + message.namespace = reader.string(); + break; + case 3: + message.proxy = reader.bytes(); + break; + case 4: + message.version = reader.string(); + break; + case 5: + message.isUpgrade = reader.bool(); + break; + case 6: + message.registry = reader.string(); + break; + case 7: + message.imagePullSecretContent = reader.bytes(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a GenerateConnectManifestRequest message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.v1.GenerateConnectManifestRequest + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.v1.GenerateConnectManifestRequest} GenerateConnectManifestRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + GenerateConnectManifestRequest.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a GenerateConnectManifestRequest message. + * @function verify + * @memberof google.cloud.gkehub.v1.GenerateConnectManifestRequest + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + GenerateConnectManifestRequest.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.name != null && message.hasOwnProperty("name")) + if (!$util.isString(message.name)) + return "name: string expected"; + if (message.namespace != null && message.hasOwnProperty("namespace")) + if (!$util.isString(message.namespace)) + return "namespace: string expected"; + if (message.proxy != null && message.hasOwnProperty("proxy")) + if (!(message.proxy && typeof message.proxy.length === "number" || $util.isString(message.proxy))) + return "proxy: buffer expected"; + if (message.version != null && message.hasOwnProperty("version")) + if (!$util.isString(message.version)) + return "version: string expected"; + if (message.isUpgrade != null && message.hasOwnProperty("isUpgrade")) + if (typeof message.isUpgrade !== "boolean") + return "isUpgrade: boolean expected"; + if (message.registry != null && message.hasOwnProperty("registry")) + if (!$util.isString(message.registry)) + return "registry: string expected"; + if (message.imagePullSecretContent != null && message.hasOwnProperty("imagePullSecretContent")) + if (!(message.imagePullSecretContent && typeof message.imagePullSecretContent.length === "number" || $util.isString(message.imagePullSecretContent))) + return "imagePullSecretContent: buffer expected"; + return null; + }; + + /** + * Creates a GenerateConnectManifestRequest message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.v1.GenerateConnectManifestRequest + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.v1.GenerateConnectManifestRequest} GenerateConnectManifestRequest + */ + GenerateConnectManifestRequest.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.v1.GenerateConnectManifestRequest) + return object; + var message = new $root.google.cloud.gkehub.v1.GenerateConnectManifestRequest(); + if (object.name != null) + message.name = String(object.name); + if (object.namespace != null) + message.namespace = String(object.namespace); + if (object.proxy != null) + if (typeof object.proxy === "string") + $util.base64.decode(object.proxy, message.proxy = $util.newBuffer($util.base64.length(object.proxy)), 0); + else if (object.proxy.length) + message.proxy = object.proxy; + if (object.version != null) + message.version = String(object.version); + if (object.isUpgrade != null) + message.isUpgrade = Boolean(object.isUpgrade); + if (object.registry != null) + message.registry = String(object.registry); + if (object.imagePullSecretContent != null) + if (typeof object.imagePullSecretContent === "string") + $util.base64.decode(object.imagePullSecretContent, message.imagePullSecretContent = $util.newBuffer($util.base64.length(object.imagePullSecretContent)), 0); + else if (object.imagePullSecretContent.length) + message.imagePullSecretContent = object.imagePullSecretContent; + return message; + }; + + /** + * Creates a plain object from a GenerateConnectManifestRequest message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.v1.GenerateConnectManifestRequest + * @static + * @param {google.cloud.gkehub.v1.GenerateConnectManifestRequest} message GenerateConnectManifestRequest + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + GenerateConnectManifestRequest.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.name = ""; + object.namespace = ""; + if (options.bytes === String) + object.proxy = ""; + else { + object.proxy = []; + if (options.bytes !== Array) + object.proxy = $util.newBuffer(object.proxy); + } + object.version = ""; + object.isUpgrade = false; + object.registry = ""; + if (options.bytes === String) + object.imagePullSecretContent = ""; + else { + object.imagePullSecretContent = []; + if (options.bytes !== Array) + object.imagePullSecretContent = $util.newBuffer(object.imagePullSecretContent); + } + } + if (message.name != null && message.hasOwnProperty("name")) + object.name = message.name; + if (message.namespace != null && message.hasOwnProperty("namespace")) + object.namespace = message.namespace; + if (message.proxy != null && message.hasOwnProperty("proxy")) + object.proxy = options.bytes === String ? $util.base64.encode(message.proxy, 0, message.proxy.length) : options.bytes === Array ? Array.prototype.slice.call(message.proxy) : message.proxy; + if (message.version != null && message.hasOwnProperty("version")) + object.version = message.version; + if (message.isUpgrade != null && message.hasOwnProperty("isUpgrade")) + object.isUpgrade = message.isUpgrade; + if (message.registry != null && message.hasOwnProperty("registry")) + object.registry = message.registry; + if (message.imagePullSecretContent != null && message.hasOwnProperty("imagePullSecretContent")) + object.imagePullSecretContent = options.bytes === String ? $util.base64.encode(message.imagePullSecretContent, 0, message.imagePullSecretContent.length) : options.bytes === Array ? Array.prototype.slice.call(message.imagePullSecretContent) : message.imagePullSecretContent; + return object; + }; + + /** + * Converts this GenerateConnectManifestRequest to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.v1.GenerateConnectManifestRequest + * @instance + * @returns {Object.} JSON object + */ + GenerateConnectManifestRequest.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return GenerateConnectManifestRequest; + })(); + + v1.GenerateConnectManifestResponse = (function() { + + /** + * Properties of a GenerateConnectManifestResponse. + * @memberof google.cloud.gkehub.v1 + * @interface IGenerateConnectManifestResponse + * @property {Array.|null} [manifest] GenerateConnectManifestResponse manifest + */ + + /** + * Constructs a new GenerateConnectManifestResponse. + * @memberof google.cloud.gkehub.v1 + * @classdesc Represents a GenerateConnectManifestResponse. + * @implements IGenerateConnectManifestResponse + * @constructor + * @param {google.cloud.gkehub.v1.IGenerateConnectManifestResponse=} [properties] Properties to set + */ + function GenerateConnectManifestResponse(properties) { + this.manifest = []; + 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]]; + } + + /** + * GenerateConnectManifestResponse manifest. + * @member {Array.} manifest + * @memberof google.cloud.gkehub.v1.GenerateConnectManifestResponse + * @instance + */ + GenerateConnectManifestResponse.prototype.manifest = $util.emptyArray; + + /** + * Creates a new GenerateConnectManifestResponse instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.v1.GenerateConnectManifestResponse + * @static + * @param {google.cloud.gkehub.v1.IGenerateConnectManifestResponse=} [properties] Properties to set + * @returns {google.cloud.gkehub.v1.GenerateConnectManifestResponse} GenerateConnectManifestResponse instance + */ + GenerateConnectManifestResponse.create = function create(properties) { + return new GenerateConnectManifestResponse(properties); + }; + + /** + * Encodes the specified GenerateConnectManifestResponse message. Does not implicitly {@link google.cloud.gkehub.v1.GenerateConnectManifestResponse.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.v1.GenerateConnectManifestResponse + * @static + * @param {google.cloud.gkehub.v1.IGenerateConnectManifestResponse} message GenerateConnectManifestResponse message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + GenerateConnectManifestResponse.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.manifest != null && message.manifest.length) + for (var i = 0; i < message.manifest.length; ++i) + $root.google.cloud.gkehub.v1.ConnectAgentResource.encode(message.manifest[i], writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim(); + return writer; + }; + + /** + * Encodes the specified GenerateConnectManifestResponse message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1.GenerateConnectManifestResponse.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.v1.GenerateConnectManifestResponse + * @static + * @param {google.cloud.gkehub.v1.IGenerateConnectManifestResponse} message GenerateConnectManifestResponse message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + GenerateConnectManifestResponse.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a GenerateConnectManifestResponse message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.v1.GenerateConnectManifestResponse + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.v1.GenerateConnectManifestResponse} GenerateConnectManifestResponse + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + GenerateConnectManifestResponse.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.v1.GenerateConnectManifestResponse(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + if (!(message.manifest && message.manifest.length)) + message.manifest = []; + message.manifest.push($root.google.cloud.gkehub.v1.ConnectAgentResource.decode(reader, reader.uint32())); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a GenerateConnectManifestResponse message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.v1.GenerateConnectManifestResponse + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.v1.GenerateConnectManifestResponse} GenerateConnectManifestResponse + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + GenerateConnectManifestResponse.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a GenerateConnectManifestResponse message. + * @function verify + * @memberof google.cloud.gkehub.v1.GenerateConnectManifestResponse + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + GenerateConnectManifestResponse.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.manifest != null && message.hasOwnProperty("manifest")) { + if (!Array.isArray(message.manifest)) + return "manifest: array expected"; + for (var i = 0; i < message.manifest.length; ++i) { + var error = $root.google.cloud.gkehub.v1.ConnectAgentResource.verify(message.manifest[i]); + if (error) + return "manifest." + error; + } + } + return null; + }; + + /** + * Creates a GenerateConnectManifestResponse message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.v1.GenerateConnectManifestResponse + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.v1.GenerateConnectManifestResponse} GenerateConnectManifestResponse + */ + GenerateConnectManifestResponse.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.v1.GenerateConnectManifestResponse) + return object; + var message = new $root.google.cloud.gkehub.v1.GenerateConnectManifestResponse(); + if (object.manifest) { + if (!Array.isArray(object.manifest)) + throw TypeError(".google.cloud.gkehub.v1.GenerateConnectManifestResponse.manifest: array expected"); + message.manifest = []; + for (var i = 0; i < object.manifest.length; ++i) { + if (typeof object.manifest[i] !== "object") + throw TypeError(".google.cloud.gkehub.v1.GenerateConnectManifestResponse.manifest: object expected"); + message.manifest[i] = $root.google.cloud.gkehub.v1.ConnectAgentResource.fromObject(object.manifest[i]); + } + } + return message; + }; + + /** + * Creates a plain object from a GenerateConnectManifestResponse message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.v1.GenerateConnectManifestResponse + * @static + * @param {google.cloud.gkehub.v1.GenerateConnectManifestResponse} message GenerateConnectManifestResponse + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + GenerateConnectManifestResponse.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.arrays || options.defaults) + object.manifest = []; + if (message.manifest && message.manifest.length) { + object.manifest = []; + for (var j = 0; j < message.manifest.length; ++j) + object.manifest[j] = $root.google.cloud.gkehub.v1.ConnectAgentResource.toObject(message.manifest[j], options); + } + return object; + }; + + /** + * Converts this GenerateConnectManifestResponse to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.v1.GenerateConnectManifestResponse + * @instance + * @returns {Object.} JSON object + */ + GenerateConnectManifestResponse.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return GenerateConnectManifestResponse; + })(); + + v1.ConnectAgentResource = (function() { + + /** + * Properties of a ConnectAgentResource. + * @memberof google.cloud.gkehub.v1 + * @interface IConnectAgentResource + * @property {google.cloud.gkehub.v1.ITypeMeta|null} [type] ConnectAgentResource type + * @property {string|null} [manifest] ConnectAgentResource manifest + */ + + /** + * Constructs a new ConnectAgentResource. + * @memberof google.cloud.gkehub.v1 + * @classdesc Represents a ConnectAgentResource. + * @implements IConnectAgentResource + * @constructor + * @param {google.cloud.gkehub.v1.IConnectAgentResource=} [properties] Properties to set + */ + function ConnectAgentResource(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]]; + } + + /** + * ConnectAgentResource type. + * @member {google.cloud.gkehub.v1.ITypeMeta|null|undefined} type + * @memberof google.cloud.gkehub.v1.ConnectAgentResource + * @instance + */ + ConnectAgentResource.prototype.type = null; + + /** + * ConnectAgentResource manifest. + * @member {string} manifest + * @memberof google.cloud.gkehub.v1.ConnectAgentResource + * @instance + */ + ConnectAgentResource.prototype.manifest = ""; + + /** + * Creates a new ConnectAgentResource instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.v1.ConnectAgentResource + * @static + * @param {google.cloud.gkehub.v1.IConnectAgentResource=} [properties] Properties to set + * @returns {google.cloud.gkehub.v1.ConnectAgentResource} ConnectAgentResource instance + */ + ConnectAgentResource.create = function create(properties) { + return new ConnectAgentResource(properties); + }; + + /** + * Encodes the specified ConnectAgentResource message. Does not implicitly {@link google.cloud.gkehub.v1.ConnectAgentResource.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.v1.ConnectAgentResource + * @static + * @param {google.cloud.gkehub.v1.IConnectAgentResource} message ConnectAgentResource message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + ConnectAgentResource.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.type != null && Object.hasOwnProperty.call(message, "type")) + $root.google.cloud.gkehub.v1.TypeMeta.encode(message.type, writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim(); + if (message.manifest != null && Object.hasOwnProperty.call(message, "manifest")) + writer.uint32(/* id 2, wireType 2 =*/18).string(message.manifest); + return writer; + }; + + /** + * Encodes the specified ConnectAgentResource message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1.ConnectAgentResource.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.v1.ConnectAgentResource + * @static + * @param {google.cloud.gkehub.v1.IConnectAgentResource} message ConnectAgentResource message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + ConnectAgentResource.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a ConnectAgentResource message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.v1.ConnectAgentResource + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.v1.ConnectAgentResource} ConnectAgentResource + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + ConnectAgentResource.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.v1.ConnectAgentResource(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.type = $root.google.cloud.gkehub.v1.TypeMeta.decode(reader, reader.uint32()); + break; + case 2: + message.manifest = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a ConnectAgentResource message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.v1.ConnectAgentResource + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.v1.ConnectAgentResource} ConnectAgentResource + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + ConnectAgentResource.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a ConnectAgentResource message. + * @function verify + * @memberof google.cloud.gkehub.v1.ConnectAgentResource + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + ConnectAgentResource.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.type != null && message.hasOwnProperty("type")) { + var error = $root.google.cloud.gkehub.v1.TypeMeta.verify(message.type); + if (error) + return "type." + error; + } + if (message.manifest != null && message.hasOwnProperty("manifest")) + if (!$util.isString(message.manifest)) + return "manifest: string expected"; + return null; + }; + + /** + * Creates a ConnectAgentResource message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.v1.ConnectAgentResource + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.v1.ConnectAgentResource} ConnectAgentResource + */ + ConnectAgentResource.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.v1.ConnectAgentResource) + return object; + var message = new $root.google.cloud.gkehub.v1.ConnectAgentResource(); + if (object.type != null) { + if (typeof object.type !== "object") + throw TypeError(".google.cloud.gkehub.v1.ConnectAgentResource.type: object expected"); + message.type = $root.google.cloud.gkehub.v1.TypeMeta.fromObject(object.type); + } + if (object.manifest != null) + message.manifest = String(object.manifest); + return message; + }; + + /** + * Creates a plain object from a ConnectAgentResource message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.v1.ConnectAgentResource + * @static + * @param {google.cloud.gkehub.v1.ConnectAgentResource} message ConnectAgentResource + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + ConnectAgentResource.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.type = null; + object.manifest = ""; + } + if (message.type != null && message.hasOwnProperty("type")) + object.type = $root.google.cloud.gkehub.v1.TypeMeta.toObject(message.type, options); + if (message.manifest != null && message.hasOwnProperty("manifest")) + object.manifest = message.manifest; + return object; + }; + + /** + * Converts this ConnectAgentResource to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.v1.ConnectAgentResource + * @instance + * @returns {Object.} JSON object + */ + ConnectAgentResource.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return ConnectAgentResource; + })(); + + v1.TypeMeta = (function() { + + /** + * Properties of a TypeMeta. + * @memberof google.cloud.gkehub.v1 + * @interface ITypeMeta + * @property {string|null} [kind] TypeMeta kind + * @property {string|null} [apiVersion] TypeMeta apiVersion + */ + + /** + * Constructs a new TypeMeta. + * @memberof google.cloud.gkehub.v1 + * @classdesc Represents a TypeMeta. + * @implements ITypeMeta + * @constructor + * @param {google.cloud.gkehub.v1.ITypeMeta=} [properties] Properties to set + */ + function TypeMeta(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]]; + } + + /** + * TypeMeta kind. + * @member {string} kind + * @memberof google.cloud.gkehub.v1.TypeMeta + * @instance + */ + TypeMeta.prototype.kind = ""; + + /** + * TypeMeta apiVersion. + * @member {string} apiVersion + * @memberof google.cloud.gkehub.v1.TypeMeta + * @instance + */ + TypeMeta.prototype.apiVersion = ""; + + /** + * Creates a new TypeMeta instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.v1.TypeMeta + * @static + * @param {google.cloud.gkehub.v1.ITypeMeta=} [properties] Properties to set + * @returns {google.cloud.gkehub.v1.TypeMeta} TypeMeta instance + */ + TypeMeta.create = function create(properties) { + return new TypeMeta(properties); + }; + + /** + * Encodes the specified TypeMeta message. Does not implicitly {@link google.cloud.gkehub.v1.TypeMeta.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.v1.TypeMeta + * @static + * @param {google.cloud.gkehub.v1.ITypeMeta} message TypeMeta message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + TypeMeta.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.kind != null && Object.hasOwnProperty.call(message, "kind")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.kind); + if (message.apiVersion != null && Object.hasOwnProperty.call(message, "apiVersion")) + writer.uint32(/* id 2, wireType 2 =*/18).string(message.apiVersion); + return writer; + }; + + /** + * Encodes the specified TypeMeta message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1.TypeMeta.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.v1.TypeMeta + * @static + * @param {google.cloud.gkehub.v1.ITypeMeta} message TypeMeta message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + TypeMeta.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a TypeMeta message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.v1.TypeMeta + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.v1.TypeMeta} TypeMeta + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + TypeMeta.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.v1.TypeMeta(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.kind = reader.string(); + break; + case 2: + message.apiVersion = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a TypeMeta message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.v1.TypeMeta + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.v1.TypeMeta} TypeMeta + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + TypeMeta.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a TypeMeta message. + * @function verify + * @memberof google.cloud.gkehub.v1.TypeMeta + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + TypeMeta.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.kind != null && message.hasOwnProperty("kind")) + if (!$util.isString(message.kind)) + return "kind: string expected"; + if (message.apiVersion != null && message.hasOwnProperty("apiVersion")) + if (!$util.isString(message.apiVersion)) + return "apiVersion: string expected"; + return null; + }; + + /** + * Creates a TypeMeta message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.v1.TypeMeta + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.v1.TypeMeta} TypeMeta + */ + TypeMeta.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.v1.TypeMeta) + return object; + var message = new $root.google.cloud.gkehub.v1.TypeMeta(); + if (object.kind != null) + message.kind = String(object.kind); + if (object.apiVersion != null) + message.apiVersion = String(object.apiVersion); + return message; + }; + + /** + * Creates a plain object from a TypeMeta message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.v1.TypeMeta + * @static + * @param {google.cloud.gkehub.v1.TypeMeta} message TypeMeta + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + TypeMeta.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.kind = ""; + object.apiVersion = ""; + } + if (message.kind != null && message.hasOwnProperty("kind")) + object.kind = message.kind; + if (message.apiVersion != null && message.hasOwnProperty("apiVersion")) + object.apiVersion = message.apiVersion; + return object; + }; + + /** + * Converts this TypeMeta to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.v1.TypeMeta + * @instance + * @returns {Object.} JSON object + */ + TypeMeta.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return TypeMeta; + })(); + + v1.ListFeaturesRequest = (function() { + + /** + * Properties of a ListFeaturesRequest. + * @memberof google.cloud.gkehub.v1 + * @interface IListFeaturesRequest + * @property {string|null} [parent] ListFeaturesRequest parent + * @property {number|null} [pageSize] ListFeaturesRequest pageSize + * @property {string|null} [pageToken] ListFeaturesRequest pageToken + * @property {string|null} [filter] ListFeaturesRequest filter + * @property {string|null} [orderBy] ListFeaturesRequest orderBy + */ + + /** + * Constructs a new ListFeaturesRequest. + * @memberof google.cloud.gkehub.v1 + * @classdesc Represents a ListFeaturesRequest. + * @implements IListFeaturesRequest + * @constructor + * @param {google.cloud.gkehub.v1.IListFeaturesRequest=} [properties] Properties to set + */ + function ListFeaturesRequest(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]]; + } + + /** + * ListFeaturesRequest parent. + * @member {string} parent + * @memberof google.cloud.gkehub.v1.ListFeaturesRequest + * @instance + */ + ListFeaturesRequest.prototype.parent = ""; + + /** + * ListFeaturesRequest pageSize. + * @member {number} pageSize + * @memberof google.cloud.gkehub.v1.ListFeaturesRequest + * @instance + */ + ListFeaturesRequest.prototype.pageSize = 0; + + /** + * ListFeaturesRequest pageToken. + * @member {string} pageToken + * @memberof google.cloud.gkehub.v1.ListFeaturesRequest + * @instance + */ + ListFeaturesRequest.prototype.pageToken = ""; + + /** + * ListFeaturesRequest filter. + * @member {string} filter + * @memberof google.cloud.gkehub.v1.ListFeaturesRequest + * @instance + */ + ListFeaturesRequest.prototype.filter = ""; + + /** + * ListFeaturesRequest orderBy. + * @member {string} orderBy + * @memberof google.cloud.gkehub.v1.ListFeaturesRequest + * @instance + */ + ListFeaturesRequest.prototype.orderBy = ""; + + /** + * Creates a new ListFeaturesRequest instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.v1.ListFeaturesRequest + * @static + * @param {google.cloud.gkehub.v1.IListFeaturesRequest=} [properties] Properties to set + * @returns {google.cloud.gkehub.v1.ListFeaturesRequest} ListFeaturesRequest instance + */ + ListFeaturesRequest.create = function create(properties) { + return new ListFeaturesRequest(properties); + }; + + /** + * Encodes the specified ListFeaturesRequest message. Does not implicitly {@link google.cloud.gkehub.v1.ListFeaturesRequest.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.v1.ListFeaturesRequest + * @static + * @param {google.cloud.gkehub.v1.IListFeaturesRequest} message ListFeaturesRequest message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + ListFeaturesRequest.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.parent != null && Object.hasOwnProperty.call(message, "parent")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.parent); + if (message.pageSize != null && Object.hasOwnProperty.call(message, "pageSize")) + writer.uint32(/* id 2, wireType 0 =*/16).int32(message.pageSize); + if (message.pageToken != null && Object.hasOwnProperty.call(message, "pageToken")) + writer.uint32(/* id 3, wireType 2 =*/26).string(message.pageToken); + if (message.filter != null && Object.hasOwnProperty.call(message, "filter")) + writer.uint32(/* id 4, wireType 2 =*/34).string(message.filter); + if (message.orderBy != null && Object.hasOwnProperty.call(message, "orderBy")) + writer.uint32(/* id 5, wireType 2 =*/42).string(message.orderBy); + return writer; + }; + + /** + * Encodes the specified ListFeaturesRequest message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1.ListFeaturesRequest.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.v1.ListFeaturesRequest + * @static + * @param {google.cloud.gkehub.v1.IListFeaturesRequest} message ListFeaturesRequest message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + ListFeaturesRequest.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a ListFeaturesRequest message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.v1.ListFeaturesRequest + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.v1.ListFeaturesRequest} ListFeaturesRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + ListFeaturesRequest.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.v1.ListFeaturesRequest(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.parent = reader.string(); + break; + case 2: + message.pageSize = reader.int32(); + break; + case 3: + message.pageToken = reader.string(); + break; + case 4: + message.filter = reader.string(); + break; + case 5: + message.orderBy = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a ListFeaturesRequest message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.v1.ListFeaturesRequest + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.v1.ListFeaturesRequest} ListFeaturesRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + ListFeaturesRequest.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a ListFeaturesRequest message. + * @function verify + * @memberof google.cloud.gkehub.v1.ListFeaturesRequest + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + ListFeaturesRequest.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.parent != null && message.hasOwnProperty("parent")) + if (!$util.isString(message.parent)) + return "parent: string expected"; + if (message.pageSize != null && message.hasOwnProperty("pageSize")) + if (!$util.isInteger(message.pageSize)) + return "pageSize: integer expected"; + if (message.pageToken != null && message.hasOwnProperty("pageToken")) + if (!$util.isString(message.pageToken)) + return "pageToken: string expected"; + if (message.filter != null && message.hasOwnProperty("filter")) + if (!$util.isString(message.filter)) + return "filter: string expected"; + if (message.orderBy != null && message.hasOwnProperty("orderBy")) + if (!$util.isString(message.orderBy)) + return "orderBy: string expected"; + return null; + }; + + /** + * Creates a ListFeaturesRequest message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.v1.ListFeaturesRequest + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.v1.ListFeaturesRequest} ListFeaturesRequest + */ + ListFeaturesRequest.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.v1.ListFeaturesRequest) + return object; + var message = new $root.google.cloud.gkehub.v1.ListFeaturesRequest(); + if (object.parent != null) + message.parent = String(object.parent); + if (object.pageSize != null) + message.pageSize = object.pageSize | 0; + if (object.pageToken != null) + message.pageToken = String(object.pageToken); + if (object.filter != null) + message.filter = String(object.filter); + if (object.orderBy != null) + message.orderBy = String(object.orderBy); + return message; + }; + + /** + * Creates a plain object from a ListFeaturesRequest message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.v1.ListFeaturesRequest + * @static + * @param {google.cloud.gkehub.v1.ListFeaturesRequest} message ListFeaturesRequest + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + ListFeaturesRequest.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.parent = ""; + object.pageSize = 0; + object.pageToken = ""; + object.filter = ""; + object.orderBy = ""; + } + if (message.parent != null && message.hasOwnProperty("parent")) + object.parent = message.parent; + if (message.pageSize != null && message.hasOwnProperty("pageSize")) + object.pageSize = message.pageSize; + if (message.pageToken != null && message.hasOwnProperty("pageToken")) + object.pageToken = message.pageToken; + if (message.filter != null && message.hasOwnProperty("filter")) + object.filter = message.filter; + if (message.orderBy != null && message.hasOwnProperty("orderBy")) + object.orderBy = message.orderBy; + return object; + }; + + /** + * Converts this ListFeaturesRequest to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.v1.ListFeaturesRequest + * @instance + * @returns {Object.} JSON object + */ + ListFeaturesRequest.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return ListFeaturesRequest; + })(); + + v1.ListFeaturesResponse = (function() { + + /** + * Properties of a ListFeaturesResponse. + * @memberof google.cloud.gkehub.v1 + * @interface IListFeaturesResponse + * @property {Array.|null} [resources] ListFeaturesResponse resources + * @property {string|null} [nextPageToken] ListFeaturesResponse nextPageToken + */ + + /** + * Constructs a new ListFeaturesResponse. + * @memberof google.cloud.gkehub.v1 + * @classdesc Represents a ListFeaturesResponse. + * @implements IListFeaturesResponse + * @constructor + * @param {google.cloud.gkehub.v1.IListFeaturesResponse=} [properties] Properties to set + */ + function ListFeaturesResponse(properties) { + this.resources = []; + 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]]; + } + + /** + * ListFeaturesResponse resources. + * @member {Array.} resources + * @memberof google.cloud.gkehub.v1.ListFeaturesResponse + * @instance + */ + ListFeaturesResponse.prototype.resources = $util.emptyArray; + + /** + * ListFeaturesResponse nextPageToken. + * @member {string} nextPageToken + * @memberof google.cloud.gkehub.v1.ListFeaturesResponse + * @instance + */ + ListFeaturesResponse.prototype.nextPageToken = ""; + + /** + * Creates a new ListFeaturesResponse instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.v1.ListFeaturesResponse + * @static + * @param {google.cloud.gkehub.v1.IListFeaturesResponse=} [properties] Properties to set + * @returns {google.cloud.gkehub.v1.ListFeaturesResponse} ListFeaturesResponse instance + */ + ListFeaturesResponse.create = function create(properties) { + return new ListFeaturesResponse(properties); + }; + + /** + * Encodes the specified ListFeaturesResponse message. Does not implicitly {@link google.cloud.gkehub.v1.ListFeaturesResponse.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.v1.ListFeaturesResponse + * @static + * @param {google.cloud.gkehub.v1.IListFeaturesResponse} message ListFeaturesResponse message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + ListFeaturesResponse.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.resources != null && message.resources.length) + for (var i = 0; i < message.resources.length; ++i) + $root.google.cloud.gkehub.v1.Feature.encode(message.resources[i], writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim(); + if (message.nextPageToken != null && Object.hasOwnProperty.call(message, "nextPageToken")) + writer.uint32(/* id 2, wireType 2 =*/18).string(message.nextPageToken); + return writer; + }; + + /** + * Encodes the specified ListFeaturesResponse message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1.ListFeaturesResponse.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.v1.ListFeaturesResponse + * @static + * @param {google.cloud.gkehub.v1.IListFeaturesResponse} message ListFeaturesResponse message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + ListFeaturesResponse.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a ListFeaturesResponse message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.v1.ListFeaturesResponse + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.v1.ListFeaturesResponse} ListFeaturesResponse + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + ListFeaturesResponse.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.v1.ListFeaturesResponse(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + if (!(message.resources && message.resources.length)) + message.resources = []; + message.resources.push($root.google.cloud.gkehub.v1.Feature.decode(reader, reader.uint32())); + break; + case 2: + message.nextPageToken = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a ListFeaturesResponse message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.v1.ListFeaturesResponse + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.v1.ListFeaturesResponse} ListFeaturesResponse + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + ListFeaturesResponse.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a ListFeaturesResponse message. + * @function verify + * @memberof google.cloud.gkehub.v1.ListFeaturesResponse + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + ListFeaturesResponse.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.resources != null && message.hasOwnProperty("resources")) { + if (!Array.isArray(message.resources)) + return "resources: array expected"; + for (var i = 0; i < message.resources.length; ++i) { + var error = $root.google.cloud.gkehub.v1.Feature.verify(message.resources[i]); + if (error) + return "resources." + error; + } + } + if (message.nextPageToken != null && message.hasOwnProperty("nextPageToken")) + if (!$util.isString(message.nextPageToken)) + return "nextPageToken: string expected"; + return null; + }; + + /** + * Creates a ListFeaturesResponse message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.v1.ListFeaturesResponse + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.v1.ListFeaturesResponse} ListFeaturesResponse + */ + ListFeaturesResponse.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.v1.ListFeaturesResponse) + return object; + var message = new $root.google.cloud.gkehub.v1.ListFeaturesResponse(); + if (object.resources) { + if (!Array.isArray(object.resources)) + throw TypeError(".google.cloud.gkehub.v1.ListFeaturesResponse.resources: array expected"); + message.resources = []; + for (var i = 0; i < object.resources.length; ++i) { + if (typeof object.resources[i] !== "object") + throw TypeError(".google.cloud.gkehub.v1.ListFeaturesResponse.resources: object expected"); + message.resources[i] = $root.google.cloud.gkehub.v1.Feature.fromObject(object.resources[i]); + } + } + if (object.nextPageToken != null) + message.nextPageToken = String(object.nextPageToken); + return message; + }; + + /** + * Creates a plain object from a ListFeaturesResponse message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.v1.ListFeaturesResponse + * @static + * @param {google.cloud.gkehub.v1.ListFeaturesResponse} message ListFeaturesResponse + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + ListFeaturesResponse.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.arrays || options.defaults) + object.resources = []; + if (options.defaults) + object.nextPageToken = ""; + if (message.resources && message.resources.length) { + object.resources = []; + for (var j = 0; j < message.resources.length; ++j) + object.resources[j] = $root.google.cloud.gkehub.v1.Feature.toObject(message.resources[j], options); + } + if (message.nextPageToken != null && message.hasOwnProperty("nextPageToken")) + object.nextPageToken = message.nextPageToken; + return object; + }; + + /** + * Converts this ListFeaturesResponse to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.v1.ListFeaturesResponse + * @instance + * @returns {Object.} JSON object + */ + ListFeaturesResponse.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return ListFeaturesResponse; + })(); + + v1.GetFeatureRequest = (function() { + + /** + * Properties of a GetFeatureRequest. + * @memberof google.cloud.gkehub.v1 + * @interface IGetFeatureRequest + * @property {string|null} [name] GetFeatureRequest name + */ + + /** + * Constructs a new GetFeatureRequest. + * @memberof google.cloud.gkehub.v1 + * @classdesc Represents a GetFeatureRequest. + * @implements IGetFeatureRequest + * @constructor + * @param {google.cloud.gkehub.v1.IGetFeatureRequest=} [properties] Properties to set + */ + function GetFeatureRequest(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]]; + } + + /** + * GetFeatureRequest name. + * @member {string} name + * @memberof google.cloud.gkehub.v1.GetFeatureRequest + * @instance + */ + GetFeatureRequest.prototype.name = ""; + + /** + * Creates a new GetFeatureRequest instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.v1.GetFeatureRequest + * @static + * @param {google.cloud.gkehub.v1.IGetFeatureRequest=} [properties] Properties to set + * @returns {google.cloud.gkehub.v1.GetFeatureRequest} GetFeatureRequest instance + */ + GetFeatureRequest.create = function create(properties) { + return new GetFeatureRequest(properties); + }; + + /** + * Encodes the specified GetFeatureRequest message. Does not implicitly {@link google.cloud.gkehub.v1.GetFeatureRequest.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.v1.GetFeatureRequest + * @static + * @param {google.cloud.gkehub.v1.IGetFeatureRequest} message GetFeatureRequest message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + GetFeatureRequest.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.name != null && Object.hasOwnProperty.call(message, "name")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.name); + return writer; + }; + + /** + * Encodes the specified GetFeatureRequest message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1.GetFeatureRequest.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.v1.GetFeatureRequest + * @static + * @param {google.cloud.gkehub.v1.IGetFeatureRequest} message GetFeatureRequest message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + GetFeatureRequest.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a GetFeatureRequest message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.v1.GetFeatureRequest + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.v1.GetFeatureRequest} GetFeatureRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + GetFeatureRequest.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.v1.GetFeatureRequest(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.name = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a GetFeatureRequest message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.v1.GetFeatureRequest + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.v1.GetFeatureRequest} GetFeatureRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + GetFeatureRequest.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a GetFeatureRequest message. + * @function verify + * @memberof google.cloud.gkehub.v1.GetFeatureRequest + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + GetFeatureRequest.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.name != null && message.hasOwnProperty("name")) + if (!$util.isString(message.name)) + return "name: string expected"; + return null; + }; + + /** + * Creates a GetFeatureRequest message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.v1.GetFeatureRequest + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.v1.GetFeatureRequest} GetFeatureRequest + */ + GetFeatureRequest.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.v1.GetFeatureRequest) + return object; + var message = new $root.google.cloud.gkehub.v1.GetFeatureRequest(); + if (object.name != null) + message.name = String(object.name); + return message; + }; + + /** + * Creates a plain object from a GetFeatureRequest message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.v1.GetFeatureRequest + * @static + * @param {google.cloud.gkehub.v1.GetFeatureRequest} message GetFeatureRequest + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + GetFeatureRequest.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) + object.name = ""; + if (message.name != null && message.hasOwnProperty("name")) + object.name = message.name; + return object; + }; + + /** + * Converts this GetFeatureRequest to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.v1.GetFeatureRequest + * @instance + * @returns {Object.} JSON object + */ + GetFeatureRequest.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return GetFeatureRequest; + })(); + + v1.CreateFeatureRequest = (function() { + + /** + * Properties of a CreateFeatureRequest. + * @memberof google.cloud.gkehub.v1 + * @interface ICreateFeatureRequest + * @property {string|null} [parent] CreateFeatureRequest parent + * @property {string|null} [featureId] CreateFeatureRequest featureId + * @property {google.cloud.gkehub.v1.IFeature|null} [resource] CreateFeatureRequest resource + * @property {string|null} [requestId] CreateFeatureRequest requestId + */ + + /** + * Constructs a new CreateFeatureRequest. + * @memberof google.cloud.gkehub.v1 + * @classdesc Represents a CreateFeatureRequest. + * @implements ICreateFeatureRequest + * @constructor + * @param {google.cloud.gkehub.v1.ICreateFeatureRequest=} [properties] Properties to set + */ + function CreateFeatureRequest(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]]; + } + + /** + * CreateFeatureRequest parent. + * @member {string} parent + * @memberof google.cloud.gkehub.v1.CreateFeatureRequest + * @instance + */ + CreateFeatureRequest.prototype.parent = ""; + + /** + * CreateFeatureRequest featureId. + * @member {string} featureId + * @memberof google.cloud.gkehub.v1.CreateFeatureRequest + * @instance + */ + CreateFeatureRequest.prototype.featureId = ""; + + /** + * CreateFeatureRequest resource. + * @member {google.cloud.gkehub.v1.IFeature|null|undefined} resource + * @memberof google.cloud.gkehub.v1.CreateFeatureRequest + * @instance + */ + CreateFeatureRequest.prototype.resource = null; + + /** + * CreateFeatureRequest requestId. + * @member {string} requestId + * @memberof google.cloud.gkehub.v1.CreateFeatureRequest + * @instance + */ + CreateFeatureRequest.prototype.requestId = ""; + + /** + * Creates a new CreateFeatureRequest instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.v1.CreateFeatureRequest + * @static + * @param {google.cloud.gkehub.v1.ICreateFeatureRequest=} [properties] Properties to set + * @returns {google.cloud.gkehub.v1.CreateFeatureRequest} CreateFeatureRequest instance + */ + CreateFeatureRequest.create = function create(properties) { + return new CreateFeatureRequest(properties); + }; + + /** + * Encodes the specified CreateFeatureRequest message. Does not implicitly {@link google.cloud.gkehub.v1.CreateFeatureRequest.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.v1.CreateFeatureRequest + * @static + * @param {google.cloud.gkehub.v1.ICreateFeatureRequest} message CreateFeatureRequest message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + CreateFeatureRequest.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.parent != null && Object.hasOwnProperty.call(message, "parent")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.parent); + if (message.featureId != null && Object.hasOwnProperty.call(message, "featureId")) + writer.uint32(/* id 2, wireType 2 =*/18).string(message.featureId); + if (message.resource != null && Object.hasOwnProperty.call(message, "resource")) + $root.google.cloud.gkehub.v1.Feature.encode(message.resource, writer.uint32(/* id 3, wireType 2 =*/26).fork()).ldelim(); + if (message.requestId != null && Object.hasOwnProperty.call(message, "requestId")) + writer.uint32(/* id 4, wireType 2 =*/34).string(message.requestId); + return writer; + }; + + /** + * Encodes the specified CreateFeatureRequest message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1.CreateFeatureRequest.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.v1.CreateFeatureRequest + * @static + * @param {google.cloud.gkehub.v1.ICreateFeatureRequest} message CreateFeatureRequest message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + CreateFeatureRequest.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a CreateFeatureRequest message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.v1.CreateFeatureRequest + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.v1.CreateFeatureRequest} CreateFeatureRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + CreateFeatureRequest.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.v1.CreateFeatureRequest(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.parent = reader.string(); + break; + case 2: + message.featureId = reader.string(); + break; + case 3: + message.resource = $root.google.cloud.gkehub.v1.Feature.decode(reader, reader.uint32()); + break; + case 4: + message.requestId = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a CreateFeatureRequest message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.v1.CreateFeatureRequest + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.v1.CreateFeatureRequest} CreateFeatureRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + CreateFeatureRequest.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a CreateFeatureRequest message. + * @function verify + * @memberof google.cloud.gkehub.v1.CreateFeatureRequest + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + CreateFeatureRequest.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.parent != null && message.hasOwnProperty("parent")) + if (!$util.isString(message.parent)) + return "parent: string expected"; + if (message.featureId != null && message.hasOwnProperty("featureId")) + if (!$util.isString(message.featureId)) + return "featureId: string expected"; + if (message.resource != null && message.hasOwnProperty("resource")) { + var error = $root.google.cloud.gkehub.v1.Feature.verify(message.resource); + if (error) + return "resource." + error; + } + if (message.requestId != null && message.hasOwnProperty("requestId")) + if (!$util.isString(message.requestId)) + return "requestId: string expected"; + return null; + }; + + /** + * Creates a CreateFeatureRequest message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.v1.CreateFeatureRequest + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.v1.CreateFeatureRequest} CreateFeatureRequest + */ + CreateFeatureRequest.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.v1.CreateFeatureRequest) + return object; + var message = new $root.google.cloud.gkehub.v1.CreateFeatureRequest(); + if (object.parent != null) + message.parent = String(object.parent); + if (object.featureId != null) + message.featureId = String(object.featureId); + if (object.resource != null) { + if (typeof object.resource !== "object") + throw TypeError(".google.cloud.gkehub.v1.CreateFeatureRequest.resource: object expected"); + message.resource = $root.google.cloud.gkehub.v1.Feature.fromObject(object.resource); + } + if (object.requestId != null) + message.requestId = String(object.requestId); + return message; + }; + + /** + * Creates a plain object from a CreateFeatureRequest message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.v1.CreateFeatureRequest + * @static + * @param {google.cloud.gkehub.v1.CreateFeatureRequest} message CreateFeatureRequest + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + CreateFeatureRequest.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.parent = ""; + object.featureId = ""; + object.resource = null; + object.requestId = ""; + } + if (message.parent != null && message.hasOwnProperty("parent")) + object.parent = message.parent; + if (message.featureId != null && message.hasOwnProperty("featureId")) + object.featureId = message.featureId; + if (message.resource != null && message.hasOwnProperty("resource")) + object.resource = $root.google.cloud.gkehub.v1.Feature.toObject(message.resource, options); + if (message.requestId != null && message.hasOwnProperty("requestId")) + object.requestId = message.requestId; + return object; + }; + + /** + * Converts this CreateFeatureRequest to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.v1.CreateFeatureRequest + * @instance + * @returns {Object.} JSON object + */ + CreateFeatureRequest.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return CreateFeatureRequest; + })(); + + v1.DeleteFeatureRequest = (function() { + + /** + * Properties of a DeleteFeatureRequest. + * @memberof google.cloud.gkehub.v1 + * @interface IDeleteFeatureRequest + * @property {string|null} [name] DeleteFeatureRequest name + * @property {boolean|null} [force] DeleteFeatureRequest force + * @property {string|null} [requestId] DeleteFeatureRequest requestId + */ + + /** + * Constructs a new DeleteFeatureRequest. + * @memberof google.cloud.gkehub.v1 + * @classdesc Represents a DeleteFeatureRequest. + * @implements IDeleteFeatureRequest + * @constructor + * @param {google.cloud.gkehub.v1.IDeleteFeatureRequest=} [properties] Properties to set + */ + function DeleteFeatureRequest(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]]; + } + + /** + * DeleteFeatureRequest name. + * @member {string} name + * @memberof google.cloud.gkehub.v1.DeleteFeatureRequest + * @instance + */ + DeleteFeatureRequest.prototype.name = ""; + + /** + * DeleteFeatureRequest force. + * @member {boolean} force + * @memberof google.cloud.gkehub.v1.DeleteFeatureRequest + * @instance + */ + DeleteFeatureRequest.prototype.force = false; + + /** + * DeleteFeatureRequest requestId. + * @member {string} requestId + * @memberof google.cloud.gkehub.v1.DeleteFeatureRequest + * @instance + */ + DeleteFeatureRequest.prototype.requestId = ""; + + /** + * Creates a new DeleteFeatureRequest instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.v1.DeleteFeatureRequest + * @static + * @param {google.cloud.gkehub.v1.IDeleteFeatureRequest=} [properties] Properties to set + * @returns {google.cloud.gkehub.v1.DeleteFeatureRequest} DeleteFeatureRequest instance + */ + DeleteFeatureRequest.create = function create(properties) { + return new DeleteFeatureRequest(properties); + }; + + /** + * Encodes the specified DeleteFeatureRequest message. Does not implicitly {@link google.cloud.gkehub.v1.DeleteFeatureRequest.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.v1.DeleteFeatureRequest + * @static + * @param {google.cloud.gkehub.v1.IDeleteFeatureRequest} message DeleteFeatureRequest message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + DeleteFeatureRequest.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.name != null && Object.hasOwnProperty.call(message, "name")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.name); + if (message.force != null && Object.hasOwnProperty.call(message, "force")) + writer.uint32(/* id 2, wireType 0 =*/16).bool(message.force); + if (message.requestId != null && Object.hasOwnProperty.call(message, "requestId")) + writer.uint32(/* id 3, wireType 2 =*/26).string(message.requestId); + return writer; + }; + + /** + * Encodes the specified DeleteFeatureRequest message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1.DeleteFeatureRequest.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.v1.DeleteFeatureRequest + * @static + * @param {google.cloud.gkehub.v1.IDeleteFeatureRequest} message DeleteFeatureRequest message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + DeleteFeatureRequest.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a DeleteFeatureRequest message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.v1.DeleteFeatureRequest + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.v1.DeleteFeatureRequest} DeleteFeatureRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + DeleteFeatureRequest.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.v1.DeleteFeatureRequest(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.name = reader.string(); + break; + case 2: + message.force = reader.bool(); + break; + case 3: + message.requestId = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a DeleteFeatureRequest message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.v1.DeleteFeatureRequest + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.v1.DeleteFeatureRequest} DeleteFeatureRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + DeleteFeatureRequest.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a DeleteFeatureRequest message. + * @function verify + * @memberof google.cloud.gkehub.v1.DeleteFeatureRequest + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + DeleteFeatureRequest.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.name != null && message.hasOwnProperty("name")) + if (!$util.isString(message.name)) + return "name: string expected"; + if (message.force != null && message.hasOwnProperty("force")) + if (typeof message.force !== "boolean") + return "force: boolean expected"; + if (message.requestId != null && message.hasOwnProperty("requestId")) + if (!$util.isString(message.requestId)) + return "requestId: string expected"; + return null; + }; + + /** + * Creates a DeleteFeatureRequest message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.v1.DeleteFeatureRequest + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.v1.DeleteFeatureRequest} DeleteFeatureRequest + */ + DeleteFeatureRequest.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.v1.DeleteFeatureRequest) + return object; + var message = new $root.google.cloud.gkehub.v1.DeleteFeatureRequest(); + if (object.name != null) + message.name = String(object.name); + if (object.force != null) + message.force = Boolean(object.force); + if (object.requestId != null) + message.requestId = String(object.requestId); + return message; + }; + + /** + * Creates a plain object from a DeleteFeatureRequest message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.v1.DeleteFeatureRequest + * @static + * @param {google.cloud.gkehub.v1.DeleteFeatureRequest} message DeleteFeatureRequest + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + DeleteFeatureRequest.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.name = ""; + object.force = false; + object.requestId = ""; + } + if (message.name != null && message.hasOwnProperty("name")) + object.name = message.name; + if (message.force != null && message.hasOwnProperty("force")) + object.force = message.force; + if (message.requestId != null && message.hasOwnProperty("requestId")) + object.requestId = message.requestId; + return object; + }; + + /** + * Converts this DeleteFeatureRequest to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.v1.DeleteFeatureRequest + * @instance + * @returns {Object.} JSON object + */ + DeleteFeatureRequest.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return DeleteFeatureRequest; + })(); + + v1.UpdateFeatureRequest = (function() { + + /** + * Properties of an UpdateFeatureRequest. + * @memberof google.cloud.gkehub.v1 + * @interface IUpdateFeatureRequest + * @property {string|null} [name] UpdateFeatureRequest name + * @property {google.protobuf.IFieldMask|null} [updateMask] UpdateFeatureRequest updateMask + * @property {google.cloud.gkehub.v1.IFeature|null} [resource] UpdateFeatureRequest resource + * @property {string|null} [requestId] UpdateFeatureRequest requestId + */ + + /** + * Constructs a new UpdateFeatureRequest. + * @memberof google.cloud.gkehub.v1 + * @classdesc Represents an UpdateFeatureRequest. + * @implements IUpdateFeatureRequest + * @constructor + * @param {google.cloud.gkehub.v1.IUpdateFeatureRequest=} [properties] Properties to set + */ + function UpdateFeatureRequest(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]]; + } + + /** + * UpdateFeatureRequest name. + * @member {string} name + * @memberof google.cloud.gkehub.v1.UpdateFeatureRequest + * @instance + */ + UpdateFeatureRequest.prototype.name = ""; + + /** + * UpdateFeatureRequest updateMask. + * @member {google.protobuf.IFieldMask|null|undefined} updateMask + * @memberof google.cloud.gkehub.v1.UpdateFeatureRequest + * @instance + */ + UpdateFeatureRequest.prototype.updateMask = null; + + /** + * UpdateFeatureRequest resource. + * @member {google.cloud.gkehub.v1.IFeature|null|undefined} resource + * @memberof google.cloud.gkehub.v1.UpdateFeatureRequest + * @instance + */ + UpdateFeatureRequest.prototype.resource = null; + + /** + * UpdateFeatureRequest requestId. + * @member {string} requestId + * @memberof google.cloud.gkehub.v1.UpdateFeatureRequest + * @instance + */ + UpdateFeatureRequest.prototype.requestId = ""; + + /** + * Creates a new UpdateFeatureRequest instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.v1.UpdateFeatureRequest + * @static + * @param {google.cloud.gkehub.v1.IUpdateFeatureRequest=} [properties] Properties to set + * @returns {google.cloud.gkehub.v1.UpdateFeatureRequest} UpdateFeatureRequest instance + */ + UpdateFeatureRequest.create = function create(properties) { + return new UpdateFeatureRequest(properties); + }; + + /** + * Encodes the specified UpdateFeatureRequest message. Does not implicitly {@link google.cloud.gkehub.v1.UpdateFeatureRequest.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.v1.UpdateFeatureRequest + * @static + * @param {google.cloud.gkehub.v1.IUpdateFeatureRequest} message UpdateFeatureRequest message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + UpdateFeatureRequest.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.name != null && Object.hasOwnProperty.call(message, "name")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.name); + if (message.updateMask != null && Object.hasOwnProperty.call(message, "updateMask")) + $root.google.protobuf.FieldMask.encode(message.updateMask, writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim(); + if (message.resource != null && Object.hasOwnProperty.call(message, "resource")) + $root.google.cloud.gkehub.v1.Feature.encode(message.resource, writer.uint32(/* id 3, wireType 2 =*/26).fork()).ldelim(); + if (message.requestId != null && Object.hasOwnProperty.call(message, "requestId")) + writer.uint32(/* id 4, wireType 2 =*/34).string(message.requestId); + return writer; + }; + + /** + * Encodes the specified UpdateFeatureRequest message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1.UpdateFeatureRequest.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.v1.UpdateFeatureRequest + * @static + * @param {google.cloud.gkehub.v1.IUpdateFeatureRequest} message UpdateFeatureRequest message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + UpdateFeatureRequest.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes an UpdateFeatureRequest message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.v1.UpdateFeatureRequest + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.v1.UpdateFeatureRequest} UpdateFeatureRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + UpdateFeatureRequest.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.v1.UpdateFeatureRequest(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.name = reader.string(); + break; + case 2: + message.updateMask = $root.google.protobuf.FieldMask.decode(reader, reader.uint32()); + break; + case 3: + message.resource = $root.google.cloud.gkehub.v1.Feature.decode(reader, reader.uint32()); + break; + case 4: + message.requestId = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes an UpdateFeatureRequest message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.v1.UpdateFeatureRequest + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.v1.UpdateFeatureRequest} UpdateFeatureRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + UpdateFeatureRequest.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies an UpdateFeatureRequest message. + * @function verify + * @memberof google.cloud.gkehub.v1.UpdateFeatureRequest + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + UpdateFeatureRequest.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.name != null && message.hasOwnProperty("name")) + if (!$util.isString(message.name)) + return "name: string expected"; + if (message.updateMask != null && message.hasOwnProperty("updateMask")) { + var error = $root.google.protobuf.FieldMask.verify(message.updateMask); + if (error) + return "updateMask." + error; + } + if (message.resource != null && message.hasOwnProperty("resource")) { + var error = $root.google.cloud.gkehub.v1.Feature.verify(message.resource); + if (error) + return "resource." + error; + } + if (message.requestId != null && message.hasOwnProperty("requestId")) + if (!$util.isString(message.requestId)) + return "requestId: string expected"; + return null; + }; + + /** + * Creates an UpdateFeatureRequest message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.v1.UpdateFeatureRequest + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.v1.UpdateFeatureRequest} UpdateFeatureRequest + */ + UpdateFeatureRequest.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.v1.UpdateFeatureRequest) + return object; + var message = new $root.google.cloud.gkehub.v1.UpdateFeatureRequest(); + if (object.name != null) + message.name = String(object.name); + if (object.updateMask != null) { + if (typeof object.updateMask !== "object") + throw TypeError(".google.cloud.gkehub.v1.UpdateFeatureRequest.updateMask: object expected"); + message.updateMask = $root.google.protobuf.FieldMask.fromObject(object.updateMask); + } + if (object.resource != null) { + if (typeof object.resource !== "object") + throw TypeError(".google.cloud.gkehub.v1.UpdateFeatureRequest.resource: object expected"); + message.resource = $root.google.cloud.gkehub.v1.Feature.fromObject(object.resource); + } + if (object.requestId != null) + message.requestId = String(object.requestId); + return message; + }; + + /** + * Creates a plain object from an UpdateFeatureRequest message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.v1.UpdateFeatureRequest + * @static + * @param {google.cloud.gkehub.v1.UpdateFeatureRequest} message UpdateFeatureRequest + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + UpdateFeatureRequest.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.name = ""; + object.updateMask = null; + object.resource = null; + object.requestId = ""; + } + if (message.name != null && message.hasOwnProperty("name")) + object.name = message.name; + if (message.updateMask != null && message.hasOwnProperty("updateMask")) + object.updateMask = $root.google.protobuf.FieldMask.toObject(message.updateMask, options); + if (message.resource != null && message.hasOwnProperty("resource")) + object.resource = $root.google.cloud.gkehub.v1.Feature.toObject(message.resource, options); + if (message.requestId != null && message.hasOwnProperty("requestId")) + object.requestId = message.requestId; + return object; + }; + + /** + * Converts this UpdateFeatureRequest to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.v1.UpdateFeatureRequest + * @instance + * @returns {Object.} JSON object + */ + UpdateFeatureRequest.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return UpdateFeatureRequest; + })(); + + v1.OperationMetadata = (function() { + + /** + * Properties of an OperationMetadata. + * @memberof google.cloud.gkehub.v1 + * @interface IOperationMetadata + * @property {google.protobuf.ITimestamp|null} [createTime] OperationMetadata createTime + * @property {google.protobuf.ITimestamp|null} [endTime] OperationMetadata endTime + * @property {string|null} [target] OperationMetadata target + * @property {string|null} [verb] OperationMetadata verb + * @property {string|null} [statusDetail] OperationMetadata statusDetail + * @property {boolean|null} [cancelRequested] OperationMetadata cancelRequested + * @property {string|null} [apiVersion] OperationMetadata apiVersion + */ + + /** + * Constructs a new OperationMetadata. + * @memberof google.cloud.gkehub.v1 + * @classdesc Represents an OperationMetadata. + * @implements IOperationMetadata + * @constructor + * @param {google.cloud.gkehub.v1.IOperationMetadata=} [properties] Properties to set + */ + function OperationMetadata(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]]; + } + + /** + * OperationMetadata createTime. + * @member {google.protobuf.ITimestamp|null|undefined} createTime + * @memberof google.cloud.gkehub.v1.OperationMetadata + * @instance + */ + OperationMetadata.prototype.createTime = null; + + /** + * OperationMetadata endTime. + * @member {google.protobuf.ITimestamp|null|undefined} endTime + * @memberof google.cloud.gkehub.v1.OperationMetadata + * @instance + */ + OperationMetadata.prototype.endTime = null; + + /** + * OperationMetadata target. + * @member {string} target + * @memberof google.cloud.gkehub.v1.OperationMetadata + * @instance + */ + OperationMetadata.prototype.target = ""; + + /** + * OperationMetadata verb. + * @member {string} verb + * @memberof google.cloud.gkehub.v1.OperationMetadata + * @instance + */ + OperationMetadata.prototype.verb = ""; + + /** + * OperationMetadata statusDetail. + * @member {string} statusDetail + * @memberof google.cloud.gkehub.v1.OperationMetadata + * @instance + */ + OperationMetadata.prototype.statusDetail = ""; + + /** + * OperationMetadata cancelRequested. + * @member {boolean} cancelRequested + * @memberof google.cloud.gkehub.v1.OperationMetadata + * @instance + */ + OperationMetadata.prototype.cancelRequested = false; + + /** + * OperationMetadata apiVersion. + * @member {string} apiVersion + * @memberof google.cloud.gkehub.v1.OperationMetadata + * @instance + */ + OperationMetadata.prototype.apiVersion = ""; + + /** + * Creates a new OperationMetadata instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.v1.OperationMetadata + * @static + * @param {google.cloud.gkehub.v1.IOperationMetadata=} [properties] Properties to set + * @returns {google.cloud.gkehub.v1.OperationMetadata} OperationMetadata instance + */ + OperationMetadata.create = function create(properties) { + return new OperationMetadata(properties); + }; + + /** + * Encodes the specified OperationMetadata message. Does not implicitly {@link google.cloud.gkehub.v1.OperationMetadata.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.v1.OperationMetadata + * @static + * @param {google.cloud.gkehub.v1.IOperationMetadata} message OperationMetadata message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + OperationMetadata.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.createTime != null && Object.hasOwnProperty.call(message, "createTime")) + $root.google.protobuf.Timestamp.encode(message.createTime, writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim(); + if (message.endTime != null && Object.hasOwnProperty.call(message, "endTime")) + $root.google.protobuf.Timestamp.encode(message.endTime, writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim(); + if (message.target != null && Object.hasOwnProperty.call(message, "target")) + writer.uint32(/* id 3, wireType 2 =*/26).string(message.target); + if (message.verb != null && Object.hasOwnProperty.call(message, "verb")) + writer.uint32(/* id 4, wireType 2 =*/34).string(message.verb); + if (message.statusDetail != null && Object.hasOwnProperty.call(message, "statusDetail")) + writer.uint32(/* id 5, wireType 2 =*/42).string(message.statusDetail); + if (message.cancelRequested != null && Object.hasOwnProperty.call(message, "cancelRequested")) + writer.uint32(/* id 6, wireType 0 =*/48).bool(message.cancelRequested); + if (message.apiVersion != null && Object.hasOwnProperty.call(message, "apiVersion")) + writer.uint32(/* id 7, wireType 2 =*/58).string(message.apiVersion); + return writer; + }; + + /** + * Encodes the specified OperationMetadata message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1.OperationMetadata.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.v1.OperationMetadata + * @static + * @param {google.cloud.gkehub.v1.IOperationMetadata} message OperationMetadata message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + OperationMetadata.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes an OperationMetadata message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.v1.OperationMetadata + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.v1.OperationMetadata} OperationMetadata + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + OperationMetadata.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.v1.OperationMetadata(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.createTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + break; + case 2: + message.endTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + break; + case 3: + message.target = reader.string(); + break; + case 4: + message.verb = reader.string(); + break; + case 5: + message.statusDetail = reader.string(); + break; + case 6: + message.cancelRequested = reader.bool(); + break; + case 7: + message.apiVersion = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes an OperationMetadata message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.v1.OperationMetadata + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.v1.OperationMetadata} OperationMetadata + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + OperationMetadata.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies an OperationMetadata message. + * @function verify + * @memberof google.cloud.gkehub.v1.OperationMetadata + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + OperationMetadata.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.createTime != null && message.hasOwnProperty("createTime")) { + var error = $root.google.protobuf.Timestamp.verify(message.createTime); + if (error) + return "createTime." + error; + } + if (message.endTime != null && message.hasOwnProperty("endTime")) { + var error = $root.google.protobuf.Timestamp.verify(message.endTime); + if (error) + return "endTime." + error; + } + if (message.target != null && message.hasOwnProperty("target")) + if (!$util.isString(message.target)) + return "target: string expected"; + if (message.verb != null && message.hasOwnProperty("verb")) + if (!$util.isString(message.verb)) + return "verb: string expected"; + if (message.statusDetail != null && message.hasOwnProperty("statusDetail")) + if (!$util.isString(message.statusDetail)) + return "statusDetail: string expected"; + if (message.cancelRequested != null && message.hasOwnProperty("cancelRequested")) + if (typeof message.cancelRequested !== "boolean") + return "cancelRequested: boolean expected"; + if (message.apiVersion != null && message.hasOwnProperty("apiVersion")) + if (!$util.isString(message.apiVersion)) + return "apiVersion: string expected"; + return null; + }; + + /** + * Creates an OperationMetadata message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.v1.OperationMetadata + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.v1.OperationMetadata} OperationMetadata + */ + OperationMetadata.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.v1.OperationMetadata) + return object; + var message = new $root.google.cloud.gkehub.v1.OperationMetadata(); + if (object.createTime != null) { + if (typeof object.createTime !== "object") + throw TypeError(".google.cloud.gkehub.v1.OperationMetadata.createTime: object expected"); + message.createTime = $root.google.protobuf.Timestamp.fromObject(object.createTime); + } + if (object.endTime != null) { + if (typeof object.endTime !== "object") + throw TypeError(".google.cloud.gkehub.v1.OperationMetadata.endTime: object expected"); + message.endTime = $root.google.protobuf.Timestamp.fromObject(object.endTime); + } + if (object.target != null) + message.target = String(object.target); + if (object.verb != null) + message.verb = String(object.verb); + if (object.statusDetail != null) + message.statusDetail = String(object.statusDetail); + if (object.cancelRequested != null) + message.cancelRequested = Boolean(object.cancelRequested); + if (object.apiVersion != null) + message.apiVersion = String(object.apiVersion); + return message; + }; + + /** + * Creates a plain object from an OperationMetadata message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.v1.OperationMetadata + * @static + * @param {google.cloud.gkehub.v1.OperationMetadata} message OperationMetadata + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + OperationMetadata.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.createTime = null; + object.endTime = null; + object.target = ""; + object.verb = ""; + object.statusDetail = ""; + object.cancelRequested = false; + object.apiVersion = ""; + } + if (message.createTime != null && message.hasOwnProperty("createTime")) + object.createTime = $root.google.protobuf.Timestamp.toObject(message.createTime, options); + if (message.endTime != null && message.hasOwnProperty("endTime")) + object.endTime = $root.google.protobuf.Timestamp.toObject(message.endTime, options); + if (message.target != null && message.hasOwnProperty("target")) + object.target = message.target; + if (message.verb != null && message.hasOwnProperty("verb")) + object.verb = message.verb; + if (message.statusDetail != null && message.hasOwnProperty("statusDetail")) + object.statusDetail = message.statusDetail; + if (message.cancelRequested != null && message.hasOwnProperty("cancelRequested")) + object.cancelRequested = message.cancelRequested; + if (message.apiVersion != null && message.hasOwnProperty("apiVersion")) + object.apiVersion = message.apiVersion; + return object; + }; + + /** + * Converts this OperationMetadata to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.v1.OperationMetadata + * @instance + * @returns {Object.} JSON object + */ + OperationMetadata.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return OperationMetadata; + })(); + + return v1; + })(); + + gkehub.multiclusteringress = (function() { + + /** + * Namespace multiclusteringress. + * @memberof google.cloud.gkehub + * @namespace + */ + var multiclusteringress = {}; + + multiclusteringress.v1 = (function() { + + /** + * Namespace v1. + * @memberof google.cloud.gkehub.multiclusteringress + * @namespace + */ + var v1 = {}; + + v1.FeatureSpec = (function() { + + /** + * Properties of a FeatureSpec. + * @memberof google.cloud.gkehub.multiclusteringress.v1 + * @interface IFeatureSpec + * @property {string|null} [configMembership] FeatureSpec configMembership + */ + + /** + * Constructs a new FeatureSpec. + * @memberof google.cloud.gkehub.multiclusteringress.v1 + * @classdesc Represents a FeatureSpec. + * @implements IFeatureSpec + * @constructor + * @param {google.cloud.gkehub.multiclusteringress.v1.IFeatureSpec=} [properties] Properties to set + */ + function FeatureSpec(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]]; + } + + /** + * FeatureSpec configMembership. + * @member {string} configMembership + * @memberof google.cloud.gkehub.multiclusteringress.v1.FeatureSpec + * @instance + */ + FeatureSpec.prototype.configMembership = ""; + + /** + * Creates a new FeatureSpec instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.multiclusteringress.v1.FeatureSpec + * @static + * @param {google.cloud.gkehub.multiclusteringress.v1.IFeatureSpec=} [properties] Properties to set + * @returns {google.cloud.gkehub.multiclusteringress.v1.FeatureSpec} FeatureSpec instance + */ + FeatureSpec.create = function create(properties) { + return new FeatureSpec(properties); + }; + + /** + * Encodes the specified FeatureSpec message. Does not implicitly {@link google.cloud.gkehub.multiclusteringress.v1.FeatureSpec.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.multiclusteringress.v1.FeatureSpec + * @static + * @param {google.cloud.gkehub.multiclusteringress.v1.IFeatureSpec} message FeatureSpec message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + FeatureSpec.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.configMembership != null && Object.hasOwnProperty.call(message, "configMembership")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.configMembership); + return writer; + }; + + /** + * Encodes the specified FeatureSpec message, length delimited. Does not implicitly {@link google.cloud.gkehub.multiclusteringress.v1.FeatureSpec.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.multiclusteringress.v1.FeatureSpec + * @static + * @param {google.cloud.gkehub.multiclusteringress.v1.IFeatureSpec} message FeatureSpec message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + FeatureSpec.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a FeatureSpec message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.multiclusteringress.v1.FeatureSpec + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.multiclusteringress.v1.FeatureSpec} FeatureSpec + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + FeatureSpec.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.multiclusteringress.v1.FeatureSpec(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.configMembership = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a FeatureSpec message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.multiclusteringress.v1.FeatureSpec + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.multiclusteringress.v1.FeatureSpec} FeatureSpec + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + FeatureSpec.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a FeatureSpec message. + * @function verify + * @memberof google.cloud.gkehub.multiclusteringress.v1.FeatureSpec + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + FeatureSpec.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.configMembership != null && message.hasOwnProperty("configMembership")) + if (!$util.isString(message.configMembership)) + return "configMembership: string expected"; + return null; + }; + + /** + * Creates a FeatureSpec message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.multiclusteringress.v1.FeatureSpec + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.multiclusteringress.v1.FeatureSpec} FeatureSpec + */ + FeatureSpec.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.multiclusteringress.v1.FeatureSpec) + return object; + var message = new $root.google.cloud.gkehub.multiclusteringress.v1.FeatureSpec(); + if (object.configMembership != null) + message.configMembership = String(object.configMembership); + return message; + }; + + /** + * Creates a plain object from a FeatureSpec message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.multiclusteringress.v1.FeatureSpec + * @static + * @param {google.cloud.gkehub.multiclusteringress.v1.FeatureSpec} message FeatureSpec + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + FeatureSpec.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) + object.configMembership = ""; + if (message.configMembership != null && message.hasOwnProperty("configMembership")) + object.configMembership = message.configMembership; + return object; + }; + + /** + * Converts this FeatureSpec to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.multiclusteringress.v1.FeatureSpec + * @instance + * @returns {Object.} JSON object + */ + FeatureSpec.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return FeatureSpec; + })(); + + return v1; + })(); + + multiclusteringress.v1alpha = (function() { + + /** + * Namespace v1alpha. + * @memberof google.cloud.gkehub.multiclusteringress + * @namespace + */ + var v1alpha = {}; + + /** + * Billing enum. + * @name google.cloud.gkehub.multiclusteringress.v1alpha.Billing + * @enum {number} + * @property {number} BILLING_UNSPECIFIED=0 BILLING_UNSPECIFIED value + * @property {number} PAY_AS_YOU_GO=1 PAY_AS_YOU_GO value + * @property {number} ANTHOS_LICENSE=2 ANTHOS_LICENSE value + */ + v1alpha.Billing = (function() { + var valuesById = {}, values = Object.create(valuesById); + values[valuesById[0] = "BILLING_UNSPECIFIED"] = 0; + values[valuesById[1] = "PAY_AS_YOU_GO"] = 1; + values[valuesById[2] = "ANTHOS_LICENSE"] = 2; + return values; + })(); + + v1alpha.FeatureSpec = (function() { + + /** + * Properties of a FeatureSpec. + * @memberof google.cloud.gkehub.multiclusteringress.v1alpha + * @interface IFeatureSpec + * @property {string|null} [configMembership] FeatureSpec configMembership + * @property {google.cloud.gkehub.multiclusteringress.v1alpha.Billing|null} [billing] FeatureSpec billing + */ + + /** + * Constructs a new FeatureSpec. + * @memberof google.cloud.gkehub.multiclusteringress.v1alpha + * @classdesc Represents a FeatureSpec. + * @implements IFeatureSpec + * @constructor + * @param {google.cloud.gkehub.multiclusteringress.v1alpha.IFeatureSpec=} [properties] Properties to set + */ + function FeatureSpec(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]]; + } + + /** + * FeatureSpec configMembership. + * @member {string} configMembership + * @memberof google.cloud.gkehub.multiclusteringress.v1alpha.FeatureSpec + * @instance + */ + FeatureSpec.prototype.configMembership = ""; + + /** + * FeatureSpec billing. + * @member {google.cloud.gkehub.multiclusteringress.v1alpha.Billing} billing + * @memberof google.cloud.gkehub.multiclusteringress.v1alpha.FeatureSpec + * @instance + */ + FeatureSpec.prototype.billing = 0; + + /** + * Creates a new FeatureSpec instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.multiclusteringress.v1alpha.FeatureSpec + * @static + * @param {google.cloud.gkehub.multiclusteringress.v1alpha.IFeatureSpec=} [properties] Properties to set + * @returns {google.cloud.gkehub.multiclusteringress.v1alpha.FeatureSpec} FeatureSpec instance + */ + FeatureSpec.create = function create(properties) { + return new FeatureSpec(properties); + }; + + /** + * Encodes the specified FeatureSpec message. Does not implicitly {@link google.cloud.gkehub.multiclusteringress.v1alpha.FeatureSpec.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.multiclusteringress.v1alpha.FeatureSpec + * @static + * @param {google.cloud.gkehub.multiclusteringress.v1alpha.IFeatureSpec} message FeatureSpec message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + FeatureSpec.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.configMembership != null && Object.hasOwnProperty.call(message, "configMembership")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.configMembership); + if (message.billing != null && Object.hasOwnProperty.call(message, "billing")) + writer.uint32(/* id 2, wireType 0 =*/16).int32(message.billing); + return writer; + }; + + /** + * Encodes the specified FeatureSpec message, length delimited. Does not implicitly {@link google.cloud.gkehub.multiclusteringress.v1alpha.FeatureSpec.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.multiclusteringress.v1alpha.FeatureSpec + * @static + * @param {google.cloud.gkehub.multiclusteringress.v1alpha.IFeatureSpec} message FeatureSpec message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + FeatureSpec.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a FeatureSpec message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.multiclusteringress.v1alpha.FeatureSpec + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.multiclusteringress.v1alpha.FeatureSpec} FeatureSpec + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + FeatureSpec.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.multiclusteringress.v1alpha.FeatureSpec(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.configMembership = reader.string(); + break; + case 2: + message.billing = reader.int32(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a FeatureSpec message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.multiclusteringress.v1alpha.FeatureSpec + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.multiclusteringress.v1alpha.FeatureSpec} FeatureSpec + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + FeatureSpec.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a FeatureSpec message. + * @function verify + * @memberof google.cloud.gkehub.multiclusteringress.v1alpha.FeatureSpec + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + FeatureSpec.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.configMembership != null && message.hasOwnProperty("configMembership")) + if (!$util.isString(message.configMembership)) + return "configMembership: string expected"; + if (message.billing != null && message.hasOwnProperty("billing")) + switch (message.billing) { + default: + return "billing: enum value expected"; + case 0: + case 1: + case 2: + break; + } + return null; + }; + + /** + * Creates a FeatureSpec message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.multiclusteringress.v1alpha.FeatureSpec + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.multiclusteringress.v1alpha.FeatureSpec} FeatureSpec + */ + FeatureSpec.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.multiclusteringress.v1alpha.FeatureSpec) + return object; + var message = new $root.google.cloud.gkehub.multiclusteringress.v1alpha.FeatureSpec(); + if (object.configMembership != null) + message.configMembership = String(object.configMembership); + switch (object.billing) { + case "BILLING_UNSPECIFIED": + case 0: + message.billing = 0; + break; + case "PAY_AS_YOU_GO": + case 1: + message.billing = 1; + break; + case "ANTHOS_LICENSE": + case 2: + message.billing = 2; + break; + } + return message; + }; + + /** + * Creates a plain object from a FeatureSpec message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.multiclusteringress.v1alpha.FeatureSpec + * @static + * @param {google.cloud.gkehub.multiclusteringress.v1alpha.FeatureSpec} message FeatureSpec + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + FeatureSpec.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.configMembership = ""; + object.billing = options.enums === String ? "BILLING_UNSPECIFIED" : 0; + } + if (message.configMembership != null && message.hasOwnProperty("configMembership")) + object.configMembership = message.configMembership; + if (message.billing != null && message.hasOwnProperty("billing")) + object.billing = options.enums === String ? $root.google.cloud.gkehub.multiclusteringress.v1alpha.Billing[message.billing] : message.billing; + return object; + }; + + /** + * Converts this FeatureSpec to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.multiclusteringress.v1alpha.FeatureSpec + * @instance + * @returns {Object.} JSON object + */ + FeatureSpec.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return FeatureSpec; + })(); + + return v1alpha; + })(); + + multiclusteringress.v1beta = (function() { + + /** + * Namespace v1beta. + * @memberof google.cloud.gkehub.multiclusteringress + * @namespace + */ + var v1beta = {}; + + /** + * Billing enum. + * @name google.cloud.gkehub.multiclusteringress.v1beta.Billing + * @enum {number} + * @property {number} BILLING_UNSPECIFIED=0 BILLING_UNSPECIFIED value + * @property {number} PAY_AS_YOU_GO=1 PAY_AS_YOU_GO value + * @property {number} ANTHOS_LICENSE=2 ANTHOS_LICENSE value + */ + v1beta.Billing = (function() { + var valuesById = {}, values = Object.create(valuesById); + values[valuesById[0] = "BILLING_UNSPECIFIED"] = 0; + values[valuesById[1] = "PAY_AS_YOU_GO"] = 1; + values[valuesById[2] = "ANTHOS_LICENSE"] = 2; + return values; + })(); + + v1beta.FeatureSpec = (function() { + + /** + * Properties of a FeatureSpec. + * @memberof google.cloud.gkehub.multiclusteringress.v1beta + * @interface IFeatureSpec + * @property {string|null} [configMembership] FeatureSpec configMembership + * @property {google.cloud.gkehub.multiclusteringress.v1beta.Billing|null} [billing] FeatureSpec billing + */ + + /** + * Constructs a new FeatureSpec. + * @memberof google.cloud.gkehub.multiclusteringress.v1beta + * @classdesc Represents a FeatureSpec. + * @implements IFeatureSpec + * @constructor + * @param {google.cloud.gkehub.multiclusteringress.v1beta.IFeatureSpec=} [properties] Properties to set + */ + function FeatureSpec(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]]; + } + + /** + * FeatureSpec configMembership. + * @member {string} configMembership + * @memberof google.cloud.gkehub.multiclusteringress.v1beta.FeatureSpec + * @instance + */ + FeatureSpec.prototype.configMembership = ""; + + /** + * FeatureSpec billing. + * @member {google.cloud.gkehub.multiclusteringress.v1beta.Billing} billing + * @memberof google.cloud.gkehub.multiclusteringress.v1beta.FeatureSpec + * @instance + */ + FeatureSpec.prototype.billing = 0; + + /** + * Creates a new FeatureSpec instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.multiclusteringress.v1beta.FeatureSpec + * @static + * @param {google.cloud.gkehub.multiclusteringress.v1beta.IFeatureSpec=} [properties] Properties to set + * @returns {google.cloud.gkehub.multiclusteringress.v1beta.FeatureSpec} FeatureSpec instance + */ + FeatureSpec.create = function create(properties) { + return new FeatureSpec(properties); + }; + + /** + * Encodes the specified FeatureSpec message. Does not implicitly {@link google.cloud.gkehub.multiclusteringress.v1beta.FeatureSpec.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.multiclusteringress.v1beta.FeatureSpec + * @static + * @param {google.cloud.gkehub.multiclusteringress.v1beta.IFeatureSpec} message FeatureSpec message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + FeatureSpec.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.configMembership != null && Object.hasOwnProperty.call(message, "configMembership")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.configMembership); + if (message.billing != null && Object.hasOwnProperty.call(message, "billing")) + writer.uint32(/* id 2, wireType 0 =*/16).int32(message.billing); + return writer; + }; + + /** + * Encodes the specified FeatureSpec message, length delimited. Does not implicitly {@link google.cloud.gkehub.multiclusteringress.v1beta.FeatureSpec.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.multiclusteringress.v1beta.FeatureSpec + * @static + * @param {google.cloud.gkehub.multiclusteringress.v1beta.IFeatureSpec} message FeatureSpec message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + FeatureSpec.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a FeatureSpec message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.multiclusteringress.v1beta.FeatureSpec + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.multiclusteringress.v1beta.FeatureSpec} FeatureSpec + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + FeatureSpec.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.multiclusteringress.v1beta.FeatureSpec(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.configMembership = reader.string(); + break; + case 2: + message.billing = reader.int32(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a FeatureSpec message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.multiclusteringress.v1beta.FeatureSpec + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.multiclusteringress.v1beta.FeatureSpec} FeatureSpec + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + FeatureSpec.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a FeatureSpec message. + * @function verify + * @memberof google.cloud.gkehub.multiclusteringress.v1beta.FeatureSpec + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + FeatureSpec.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.configMembership != null && message.hasOwnProperty("configMembership")) + if (!$util.isString(message.configMembership)) + return "configMembership: string expected"; + if (message.billing != null && message.hasOwnProperty("billing")) + switch (message.billing) { + default: + return "billing: enum value expected"; + case 0: + case 1: + case 2: + break; + } + return null; + }; + + /** + * Creates a FeatureSpec message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.multiclusteringress.v1beta.FeatureSpec + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.multiclusteringress.v1beta.FeatureSpec} FeatureSpec + */ + FeatureSpec.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.multiclusteringress.v1beta.FeatureSpec) + return object; + var message = new $root.google.cloud.gkehub.multiclusteringress.v1beta.FeatureSpec(); + if (object.configMembership != null) + message.configMembership = String(object.configMembership); + switch (object.billing) { + case "BILLING_UNSPECIFIED": + case 0: + message.billing = 0; + break; + case "PAY_AS_YOU_GO": + case 1: + message.billing = 1; + break; + case "ANTHOS_LICENSE": + case 2: + message.billing = 2; + break; + } + return message; + }; + + /** + * Creates a plain object from a FeatureSpec message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.multiclusteringress.v1beta.FeatureSpec + * @static + * @param {google.cloud.gkehub.multiclusteringress.v1beta.FeatureSpec} message FeatureSpec + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + FeatureSpec.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.configMembership = ""; + object.billing = options.enums === String ? "BILLING_UNSPECIFIED" : 0; + } + if (message.configMembership != null && message.hasOwnProperty("configMembership")) + object.configMembership = message.configMembership; + if (message.billing != null && message.hasOwnProperty("billing")) + object.billing = options.enums === String ? $root.google.cloud.gkehub.multiclusteringress.v1beta.Billing[message.billing] : message.billing; + return object; + }; + + /** + * Converts this FeatureSpec to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.multiclusteringress.v1beta.FeatureSpec + * @instance + * @returns {Object.} JSON object + */ + FeatureSpec.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return FeatureSpec; + })(); + + return v1beta; + })(); + + return multiclusteringress; + })(); + + gkehub.cloudauditlogging = (function() { + + /** + * Namespace cloudauditlogging. + * @memberof google.cloud.gkehub + * @namespace + */ + var cloudauditlogging = {}; + + cloudauditlogging.v1alpha = (function() { + + /** + * Namespace v1alpha. + * @memberof google.cloud.gkehub.cloudauditlogging + * @namespace + */ + var v1alpha = {}; + + v1alpha.FeatureSpec = (function() { + + /** + * Properties of a FeatureSpec. + * @memberof google.cloud.gkehub.cloudauditlogging.v1alpha + * @interface IFeatureSpec + * @property {Array.|null} [allowlistedServiceAccounts] FeatureSpec allowlistedServiceAccounts + */ + + /** + * Constructs a new FeatureSpec. + * @memberof google.cloud.gkehub.cloudauditlogging.v1alpha + * @classdesc Represents a FeatureSpec. + * @implements IFeatureSpec + * @constructor + * @param {google.cloud.gkehub.cloudauditlogging.v1alpha.IFeatureSpec=} [properties] Properties to set + */ + function FeatureSpec(properties) { + this.allowlistedServiceAccounts = []; + 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]]; + } + + /** + * FeatureSpec allowlistedServiceAccounts. + * @member {Array.} allowlistedServiceAccounts + * @memberof google.cloud.gkehub.cloudauditlogging.v1alpha.FeatureSpec + * @instance + */ + FeatureSpec.prototype.allowlistedServiceAccounts = $util.emptyArray; + + /** + * Creates a new FeatureSpec instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.cloudauditlogging.v1alpha.FeatureSpec + * @static + * @param {google.cloud.gkehub.cloudauditlogging.v1alpha.IFeatureSpec=} [properties] Properties to set + * @returns {google.cloud.gkehub.cloudauditlogging.v1alpha.FeatureSpec} FeatureSpec instance + */ + FeatureSpec.create = function create(properties) { + return new FeatureSpec(properties); + }; + + /** + * Encodes the specified FeatureSpec message. Does not implicitly {@link google.cloud.gkehub.cloudauditlogging.v1alpha.FeatureSpec.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.cloudauditlogging.v1alpha.FeatureSpec + * @static + * @param {google.cloud.gkehub.cloudauditlogging.v1alpha.IFeatureSpec} message FeatureSpec message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + FeatureSpec.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.allowlistedServiceAccounts != null && message.allowlistedServiceAccounts.length) + for (var i = 0; i < message.allowlistedServiceAccounts.length; ++i) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.allowlistedServiceAccounts[i]); + return writer; + }; + + /** + * Encodes the specified FeatureSpec message, length delimited. Does not implicitly {@link google.cloud.gkehub.cloudauditlogging.v1alpha.FeatureSpec.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.cloudauditlogging.v1alpha.FeatureSpec + * @static + * @param {google.cloud.gkehub.cloudauditlogging.v1alpha.IFeatureSpec} message FeatureSpec message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + FeatureSpec.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a FeatureSpec message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.cloudauditlogging.v1alpha.FeatureSpec + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.cloudauditlogging.v1alpha.FeatureSpec} FeatureSpec + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + FeatureSpec.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.cloudauditlogging.v1alpha.FeatureSpec(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + if (!(message.allowlistedServiceAccounts && message.allowlistedServiceAccounts.length)) + message.allowlistedServiceAccounts = []; + message.allowlistedServiceAccounts.push(reader.string()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a FeatureSpec message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.cloudauditlogging.v1alpha.FeatureSpec + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.cloudauditlogging.v1alpha.FeatureSpec} FeatureSpec + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + FeatureSpec.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a FeatureSpec message. + * @function verify + * @memberof google.cloud.gkehub.cloudauditlogging.v1alpha.FeatureSpec + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + FeatureSpec.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.allowlistedServiceAccounts != null && message.hasOwnProperty("allowlistedServiceAccounts")) { + if (!Array.isArray(message.allowlistedServiceAccounts)) + return "allowlistedServiceAccounts: array expected"; + for (var i = 0; i < message.allowlistedServiceAccounts.length; ++i) + if (!$util.isString(message.allowlistedServiceAccounts[i])) + return "allowlistedServiceAccounts: string[] expected"; + } + return null; + }; + + /** + * Creates a FeatureSpec message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.cloudauditlogging.v1alpha.FeatureSpec + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.cloudauditlogging.v1alpha.FeatureSpec} FeatureSpec + */ + FeatureSpec.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.cloudauditlogging.v1alpha.FeatureSpec) + return object; + var message = new $root.google.cloud.gkehub.cloudauditlogging.v1alpha.FeatureSpec(); + if (object.allowlistedServiceAccounts) { + if (!Array.isArray(object.allowlistedServiceAccounts)) + throw TypeError(".google.cloud.gkehub.cloudauditlogging.v1alpha.FeatureSpec.allowlistedServiceAccounts: array expected"); + message.allowlistedServiceAccounts = []; + for (var i = 0; i < object.allowlistedServiceAccounts.length; ++i) + message.allowlistedServiceAccounts[i] = String(object.allowlistedServiceAccounts[i]); + } + return message; + }; + + /** + * Creates a plain object from a FeatureSpec message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.cloudauditlogging.v1alpha.FeatureSpec + * @static + * @param {google.cloud.gkehub.cloudauditlogging.v1alpha.FeatureSpec} message FeatureSpec + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + FeatureSpec.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.arrays || options.defaults) + object.allowlistedServiceAccounts = []; + if (message.allowlistedServiceAccounts && message.allowlistedServiceAccounts.length) { + object.allowlistedServiceAccounts = []; + for (var j = 0; j < message.allowlistedServiceAccounts.length; ++j) + object.allowlistedServiceAccounts[j] = message.allowlistedServiceAccounts[j]; + } + return object; + }; + + /** + * Converts this FeatureSpec to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.cloudauditlogging.v1alpha.FeatureSpec + * @instance + * @returns {Object.} JSON object + */ + FeatureSpec.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return FeatureSpec; + })(); + + return v1alpha; + })(); + + return cloudauditlogging; + })(); + + gkehub.v1alpha = (function() { + + /** + * Namespace v1alpha. + * @memberof google.cloud.gkehub + * @namespace + */ + var v1alpha = {}; + + v1alpha.Feature = (function() { + + /** + * Properties of a Feature. + * @memberof google.cloud.gkehub.v1alpha + * @interface IFeature + * @property {string|null} [name] Feature name + * @property {Object.|null} [labels] Feature labels + * @property {google.cloud.gkehub.v1alpha.IFeatureResourceState|null} [resourceState] Feature resourceState + * @property {google.cloud.gkehub.v1alpha.ICommonFeatureSpec|null} [spec] Feature spec + * @property {Object.|null} [membershipSpecs] Feature membershipSpecs + * @property {google.cloud.gkehub.v1alpha.ICommonFeatureState|null} [state] Feature state + * @property {Object.|null} [membershipStates] Feature membershipStates + * @property {google.protobuf.ITimestamp|null} [createTime] Feature createTime + * @property {google.protobuf.ITimestamp|null} [updateTime] Feature updateTime + * @property {google.protobuf.ITimestamp|null} [deleteTime] Feature deleteTime + */ + + /** + * Constructs a new Feature. + * @memberof google.cloud.gkehub.v1alpha + * @classdesc Represents a Feature. + * @implements IFeature + * @constructor + * @param {google.cloud.gkehub.v1alpha.IFeature=} [properties] Properties to set + */ + function Feature(properties) { + this.labels = {}; + this.membershipSpecs = {}; + this.membershipStates = {}; + 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]]; + } + + /** + * Feature name. + * @member {string} name + * @memberof google.cloud.gkehub.v1alpha.Feature + * @instance + */ + Feature.prototype.name = ""; + + /** + * Feature labels. + * @member {Object.} labels + * @memberof google.cloud.gkehub.v1alpha.Feature + * @instance + */ + Feature.prototype.labels = $util.emptyObject; + + /** + * Feature resourceState. + * @member {google.cloud.gkehub.v1alpha.IFeatureResourceState|null|undefined} resourceState + * @memberof google.cloud.gkehub.v1alpha.Feature + * @instance + */ + Feature.prototype.resourceState = null; + + /** + * Feature spec. + * @member {google.cloud.gkehub.v1alpha.ICommonFeatureSpec|null|undefined} spec + * @memberof google.cloud.gkehub.v1alpha.Feature + * @instance + */ + Feature.prototype.spec = null; + + /** + * Feature membershipSpecs. + * @member {Object.} membershipSpecs + * @memberof google.cloud.gkehub.v1alpha.Feature + * @instance + */ + Feature.prototype.membershipSpecs = $util.emptyObject; + + /** + * Feature state. + * @member {google.cloud.gkehub.v1alpha.ICommonFeatureState|null|undefined} state + * @memberof google.cloud.gkehub.v1alpha.Feature + * @instance + */ + Feature.prototype.state = null; + + /** + * Feature membershipStates. + * @member {Object.} membershipStates + * @memberof google.cloud.gkehub.v1alpha.Feature + * @instance + */ + Feature.prototype.membershipStates = $util.emptyObject; + + /** + * Feature createTime. + * @member {google.protobuf.ITimestamp|null|undefined} createTime + * @memberof google.cloud.gkehub.v1alpha.Feature + * @instance + */ + Feature.prototype.createTime = null; + + /** + * Feature updateTime. + * @member {google.protobuf.ITimestamp|null|undefined} updateTime + * @memberof google.cloud.gkehub.v1alpha.Feature + * @instance + */ + Feature.prototype.updateTime = null; + + /** + * Feature deleteTime. + * @member {google.protobuf.ITimestamp|null|undefined} deleteTime + * @memberof google.cloud.gkehub.v1alpha.Feature + * @instance + */ + Feature.prototype.deleteTime = null; + + /** + * Creates a new Feature instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.v1alpha.Feature + * @static + * @param {google.cloud.gkehub.v1alpha.IFeature=} [properties] Properties to set + * @returns {google.cloud.gkehub.v1alpha.Feature} Feature instance + */ + Feature.create = function create(properties) { + return new Feature(properties); + }; + + /** + * Encodes the specified Feature message. Does not implicitly {@link google.cloud.gkehub.v1alpha.Feature.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.v1alpha.Feature + * @static + * @param {google.cloud.gkehub.v1alpha.IFeature} message Feature message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + Feature.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.name != null && Object.hasOwnProperty.call(message, "name")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.name); + if (message.labels != null && Object.hasOwnProperty.call(message, "labels")) + for (var keys = Object.keys(message.labels), i = 0; i < keys.length; ++i) + writer.uint32(/* id 2, wireType 2 =*/18).fork().uint32(/* id 1, wireType 2 =*/10).string(keys[i]).uint32(/* id 2, wireType 2 =*/18).string(message.labels[keys[i]]).ldelim(); + if (message.resourceState != null && Object.hasOwnProperty.call(message, "resourceState")) + $root.google.cloud.gkehub.v1alpha.FeatureResourceState.encode(message.resourceState, writer.uint32(/* id 3, wireType 2 =*/26).fork()).ldelim(); + if (message.spec != null && Object.hasOwnProperty.call(message, "spec")) + $root.google.cloud.gkehub.v1alpha.CommonFeatureSpec.encode(message.spec, writer.uint32(/* id 4, wireType 2 =*/34).fork()).ldelim(); + if (message.membershipSpecs != null && Object.hasOwnProperty.call(message, "membershipSpecs")) + for (var keys = Object.keys(message.membershipSpecs), i = 0; i < keys.length; ++i) { + writer.uint32(/* id 5, wireType 2 =*/42).fork().uint32(/* id 1, wireType 2 =*/10).string(keys[i]); + $root.google.cloud.gkehub.v1alpha.MembershipFeatureSpec.encode(message.membershipSpecs[keys[i]], writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim().ldelim(); + } + if (message.state != null && Object.hasOwnProperty.call(message, "state")) + $root.google.cloud.gkehub.v1alpha.CommonFeatureState.encode(message.state, writer.uint32(/* id 6, wireType 2 =*/50).fork()).ldelim(); + if (message.membershipStates != null && Object.hasOwnProperty.call(message, "membershipStates")) + for (var keys = Object.keys(message.membershipStates), i = 0; i < keys.length; ++i) { + writer.uint32(/* id 7, wireType 2 =*/58).fork().uint32(/* id 1, wireType 2 =*/10).string(keys[i]); + $root.google.cloud.gkehub.v1alpha.MembershipFeatureState.encode(message.membershipStates[keys[i]], writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim().ldelim(); + } + if (message.createTime != null && Object.hasOwnProperty.call(message, "createTime")) + $root.google.protobuf.Timestamp.encode(message.createTime, writer.uint32(/* id 8, wireType 2 =*/66).fork()).ldelim(); + if (message.updateTime != null && Object.hasOwnProperty.call(message, "updateTime")) + $root.google.protobuf.Timestamp.encode(message.updateTime, writer.uint32(/* id 9, wireType 2 =*/74).fork()).ldelim(); + if (message.deleteTime != null && Object.hasOwnProperty.call(message, "deleteTime")) + $root.google.protobuf.Timestamp.encode(message.deleteTime, writer.uint32(/* id 10, wireType 2 =*/82).fork()).ldelim(); + return writer; + }; + + /** + * Encodes the specified Feature message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1alpha.Feature.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.v1alpha.Feature + * @static + * @param {google.cloud.gkehub.v1alpha.IFeature} message Feature message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + Feature.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a Feature message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.v1alpha.Feature + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.v1alpha.Feature} Feature + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + Feature.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.v1alpha.Feature(), key, value; + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.name = reader.string(); + break; + case 2: + 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 3: + message.resourceState = $root.google.cloud.gkehub.v1alpha.FeatureResourceState.decode(reader, reader.uint32()); + break; + case 4: + message.spec = $root.google.cloud.gkehub.v1alpha.CommonFeatureSpec.decode(reader, reader.uint32()); + break; + case 5: + if (message.membershipSpecs === $util.emptyObject) + message.membershipSpecs = {}; + var end2 = reader.uint32() + reader.pos; + key = ""; + value = null; + while (reader.pos < end2) { + var tag2 = reader.uint32(); + switch (tag2 >>> 3) { + case 1: + key = reader.string(); + break; + case 2: + value = $root.google.cloud.gkehub.v1alpha.MembershipFeatureSpec.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag2 & 7); + break; + } + } + message.membershipSpecs[key] = value; + break; + case 6: + message.state = $root.google.cloud.gkehub.v1alpha.CommonFeatureState.decode(reader, reader.uint32()); + break; + case 7: + if (message.membershipStates === $util.emptyObject) + message.membershipStates = {}; + var end2 = reader.uint32() + reader.pos; + key = ""; + value = null; + while (reader.pos < end2) { + var tag2 = reader.uint32(); + switch (tag2 >>> 3) { + case 1: + key = reader.string(); + break; + case 2: + value = $root.google.cloud.gkehub.v1alpha.MembershipFeatureState.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag2 & 7); + break; + } + } + message.membershipStates[key] = value; + break; + case 8: + message.createTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + break; + case 9: + message.updateTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + break; + case 10: + message.deleteTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a Feature message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.v1alpha.Feature + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.v1alpha.Feature} Feature + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + Feature.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a Feature message. + * @function verify + * @memberof google.cloud.gkehub.v1alpha.Feature + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + Feature.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.name != null && message.hasOwnProperty("name")) + if (!$util.isString(message.name)) + return "name: string expected"; + if (message.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.resourceState != null && message.hasOwnProperty("resourceState")) { + var error = $root.google.cloud.gkehub.v1alpha.FeatureResourceState.verify(message.resourceState); + if (error) + return "resourceState." + error; + } + if (message.spec != null && message.hasOwnProperty("spec")) { + var error = $root.google.cloud.gkehub.v1alpha.CommonFeatureSpec.verify(message.spec); + if (error) + return "spec." + error; + } + if (message.membershipSpecs != null && message.hasOwnProperty("membershipSpecs")) { + if (!$util.isObject(message.membershipSpecs)) + return "membershipSpecs: object expected"; + var key = Object.keys(message.membershipSpecs); + for (var i = 0; i < key.length; ++i) { + var error = $root.google.cloud.gkehub.v1alpha.MembershipFeatureSpec.verify(message.membershipSpecs[key[i]]); + if (error) + return "membershipSpecs." + error; + } + } + if (message.state != null && message.hasOwnProperty("state")) { + var error = $root.google.cloud.gkehub.v1alpha.CommonFeatureState.verify(message.state); + if (error) + return "state." + error; + } + if (message.membershipStates != null && message.hasOwnProperty("membershipStates")) { + if (!$util.isObject(message.membershipStates)) + return "membershipStates: object expected"; + var key = Object.keys(message.membershipStates); + for (var i = 0; i < key.length; ++i) { + var error = $root.google.cloud.gkehub.v1alpha.MembershipFeatureState.verify(message.membershipStates[key[i]]); + if (error) + return "membershipStates." + error; + } + } + if (message.createTime != null && message.hasOwnProperty("createTime")) { + var error = $root.google.protobuf.Timestamp.verify(message.createTime); + if (error) + return "createTime." + error; + } + if (message.updateTime != null && message.hasOwnProperty("updateTime")) { + var error = $root.google.protobuf.Timestamp.verify(message.updateTime); + if (error) + return "updateTime." + error; + } + if (message.deleteTime != null && message.hasOwnProperty("deleteTime")) { + var error = $root.google.protobuf.Timestamp.verify(message.deleteTime); + if (error) + return "deleteTime." + error; + } + return null; + }; + + /** + * Creates a Feature message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.v1alpha.Feature + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.v1alpha.Feature} Feature + */ + Feature.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.v1alpha.Feature) + return object; + var message = new $root.google.cloud.gkehub.v1alpha.Feature(); + if (object.name != null) + message.name = String(object.name); + if (object.labels) { + if (typeof object.labels !== "object") + throw TypeError(".google.cloud.gkehub.v1alpha.Feature.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.resourceState != null) { + if (typeof object.resourceState !== "object") + throw TypeError(".google.cloud.gkehub.v1alpha.Feature.resourceState: object expected"); + message.resourceState = $root.google.cloud.gkehub.v1alpha.FeatureResourceState.fromObject(object.resourceState); + } + if (object.spec != null) { + if (typeof object.spec !== "object") + throw TypeError(".google.cloud.gkehub.v1alpha.Feature.spec: object expected"); + message.spec = $root.google.cloud.gkehub.v1alpha.CommonFeatureSpec.fromObject(object.spec); + } + if (object.membershipSpecs) { + if (typeof object.membershipSpecs !== "object") + throw TypeError(".google.cloud.gkehub.v1alpha.Feature.membershipSpecs: object expected"); + message.membershipSpecs = {}; + for (var keys = Object.keys(object.membershipSpecs), i = 0; i < keys.length; ++i) { + if (typeof object.membershipSpecs[keys[i]] !== "object") + throw TypeError(".google.cloud.gkehub.v1alpha.Feature.membershipSpecs: object expected"); + message.membershipSpecs[keys[i]] = $root.google.cloud.gkehub.v1alpha.MembershipFeatureSpec.fromObject(object.membershipSpecs[keys[i]]); + } + } + if (object.state != null) { + if (typeof object.state !== "object") + throw TypeError(".google.cloud.gkehub.v1alpha.Feature.state: object expected"); + message.state = $root.google.cloud.gkehub.v1alpha.CommonFeatureState.fromObject(object.state); + } + if (object.membershipStates) { + if (typeof object.membershipStates !== "object") + throw TypeError(".google.cloud.gkehub.v1alpha.Feature.membershipStates: object expected"); + message.membershipStates = {}; + for (var keys = Object.keys(object.membershipStates), i = 0; i < keys.length; ++i) { + if (typeof object.membershipStates[keys[i]] !== "object") + throw TypeError(".google.cloud.gkehub.v1alpha.Feature.membershipStates: object expected"); + message.membershipStates[keys[i]] = $root.google.cloud.gkehub.v1alpha.MembershipFeatureState.fromObject(object.membershipStates[keys[i]]); + } + } + if (object.createTime != null) { + if (typeof object.createTime !== "object") + throw TypeError(".google.cloud.gkehub.v1alpha.Feature.createTime: object expected"); + message.createTime = $root.google.protobuf.Timestamp.fromObject(object.createTime); + } + if (object.updateTime != null) { + if (typeof object.updateTime !== "object") + throw TypeError(".google.cloud.gkehub.v1alpha.Feature.updateTime: object expected"); + message.updateTime = $root.google.protobuf.Timestamp.fromObject(object.updateTime); + } + if (object.deleteTime != null) { + if (typeof object.deleteTime !== "object") + throw TypeError(".google.cloud.gkehub.v1alpha.Feature.deleteTime: object expected"); + message.deleteTime = $root.google.protobuf.Timestamp.fromObject(object.deleteTime); + } + return message; + }; + + /** + * Creates a plain object from a Feature message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.v1alpha.Feature + * @static + * @param {google.cloud.gkehub.v1alpha.Feature} message Feature + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + Feature.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.objects || options.defaults) { + object.labels = {}; + object.membershipSpecs = {}; + object.membershipStates = {}; + } + if (options.defaults) { + object.name = ""; + object.resourceState = null; + object.spec = null; + object.state = null; + object.createTime = null; + object.updateTime = null; + object.deleteTime = null; + } + if (message.name != null && message.hasOwnProperty("name")) + object.name = message.name; + 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]]; + } + if (message.resourceState != null && message.hasOwnProperty("resourceState")) + object.resourceState = $root.google.cloud.gkehub.v1alpha.FeatureResourceState.toObject(message.resourceState, options); + if (message.spec != null && message.hasOwnProperty("spec")) + object.spec = $root.google.cloud.gkehub.v1alpha.CommonFeatureSpec.toObject(message.spec, options); + if (message.membershipSpecs && (keys2 = Object.keys(message.membershipSpecs)).length) { + object.membershipSpecs = {}; + for (var j = 0; j < keys2.length; ++j) + object.membershipSpecs[keys2[j]] = $root.google.cloud.gkehub.v1alpha.MembershipFeatureSpec.toObject(message.membershipSpecs[keys2[j]], options); + } + if (message.state != null && message.hasOwnProperty("state")) + object.state = $root.google.cloud.gkehub.v1alpha.CommonFeatureState.toObject(message.state, options); + if (message.membershipStates && (keys2 = Object.keys(message.membershipStates)).length) { + object.membershipStates = {}; + for (var j = 0; j < keys2.length; ++j) + object.membershipStates[keys2[j]] = $root.google.cloud.gkehub.v1alpha.MembershipFeatureState.toObject(message.membershipStates[keys2[j]], options); + } + if (message.createTime != null && message.hasOwnProperty("createTime")) + object.createTime = $root.google.protobuf.Timestamp.toObject(message.createTime, options); + if (message.updateTime != null && message.hasOwnProperty("updateTime")) + object.updateTime = $root.google.protobuf.Timestamp.toObject(message.updateTime, options); + if (message.deleteTime != null && message.hasOwnProperty("deleteTime")) + object.deleteTime = $root.google.protobuf.Timestamp.toObject(message.deleteTime, options); + return object; + }; + + /** + * Converts this Feature to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.v1alpha.Feature + * @instance + * @returns {Object.} JSON object + */ + Feature.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return Feature; + })(); + + v1alpha.FeatureResourceState = (function() { + + /** + * Properties of a FeatureResourceState. + * @memberof google.cloud.gkehub.v1alpha + * @interface IFeatureResourceState + * @property {google.cloud.gkehub.v1alpha.FeatureResourceState.State|null} [state] FeatureResourceState state + */ + + /** + * Constructs a new FeatureResourceState. + * @memberof google.cloud.gkehub.v1alpha + * @classdesc Represents a FeatureResourceState. + * @implements IFeatureResourceState + * @constructor + * @param {google.cloud.gkehub.v1alpha.IFeatureResourceState=} [properties] Properties to set + */ + function FeatureResourceState(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]]; + } + + /** + * FeatureResourceState state. + * @member {google.cloud.gkehub.v1alpha.FeatureResourceState.State} state + * @memberof google.cloud.gkehub.v1alpha.FeatureResourceState + * @instance + */ + FeatureResourceState.prototype.state = 0; + + /** + * Creates a new FeatureResourceState instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.v1alpha.FeatureResourceState + * @static + * @param {google.cloud.gkehub.v1alpha.IFeatureResourceState=} [properties] Properties to set + * @returns {google.cloud.gkehub.v1alpha.FeatureResourceState} FeatureResourceState instance + */ + FeatureResourceState.create = function create(properties) { + return new FeatureResourceState(properties); + }; + + /** + * Encodes the specified FeatureResourceState message. Does not implicitly {@link google.cloud.gkehub.v1alpha.FeatureResourceState.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.v1alpha.FeatureResourceState + * @static + * @param {google.cloud.gkehub.v1alpha.IFeatureResourceState} message FeatureResourceState message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + FeatureResourceState.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.state != null && Object.hasOwnProperty.call(message, "state")) + writer.uint32(/* id 1, wireType 0 =*/8).int32(message.state); + return writer; + }; + + /** + * Encodes the specified FeatureResourceState message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1alpha.FeatureResourceState.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.v1alpha.FeatureResourceState + * @static + * @param {google.cloud.gkehub.v1alpha.IFeatureResourceState} message FeatureResourceState message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + FeatureResourceState.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a FeatureResourceState message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.v1alpha.FeatureResourceState + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.v1alpha.FeatureResourceState} FeatureResourceState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + FeatureResourceState.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.v1alpha.FeatureResourceState(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.state = reader.int32(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a FeatureResourceState message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.v1alpha.FeatureResourceState + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.v1alpha.FeatureResourceState} FeatureResourceState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + FeatureResourceState.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a FeatureResourceState message. + * @function verify + * @memberof google.cloud.gkehub.v1alpha.FeatureResourceState + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + FeatureResourceState.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.state != null && message.hasOwnProperty("state")) + switch (message.state) { + default: + return "state: enum value expected"; + case 0: + case 1: + case 2: + case 3: + case 4: + case 5: + break; + } + return null; + }; + + /** + * Creates a FeatureResourceState message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.v1alpha.FeatureResourceState + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.v1alpha.FeatureResourceState} FeatureResourceState + */ + FeatureResourceState.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.v1alpha.FeatureResourceState) + return object; + var message = new $root.google.cloud.gkehub.v1alpha.FeatureResourceState(); + switch (object.state) { + case "STATE_UNSPECIFIED": + case 0: + message.state = 0; + break; + case "ENABLING": + case 1: + message.state = 1; + break; + case "ACTIVE": + case 2: + message.state = 2; + break; + case "DISABLING": + case 3: + message.state = 3; + break; + case "UPDATING": + case 4: + message.state = 4; + break; + case "SERVICE_UPDATING": + case 5: + message.state = 5; + break; + } + return message; + }; + + /** + * Creates a plain object from a FeatureResourceState message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.v1alpha.FeatureResourceState + * @static + * @param {google.cloud.gkehub.v1alpha.FeatureResourceState} message FeatureResourceState + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + FeatureResourceState.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) + object.state = options.enums === String ? "STATE_UNSPECIFIED" : 0; + if (message.state != null && message.hasOwnProperty("state")) + object.state = options.enums === String ? $root.google.cloud.gkehub.v1alpha.FeatureResourceState.State[message.state] : message.state; + return object; + }; + + /** + * Converts this FeatureResourceState to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.v1alpha.FeatureResourceState + * @instance + * @returns {Object.} JSON object + */ + FeatureResourceState.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + /** + * State enum. + * @name google.cloud.gkehub.v1alpha.FeatureResourceState.State + * @enum {number} + * @property {number} STATE_UNSPECIFIED=0 STATE_UNSPECIFIED value + * @property {number} ENABLING=1 ENABLING value + * @property {number} ACTIVE=2 ACTIVE value + * @property {number} DISABLING=3 DISABLING value + * @property {number} UPDATING=4 UPDATING value + * @property {number} SERVICE_UPDATING=5 SERVICE_UPDATING value + */ + FeatureResourceState.State = (function() { + var valuesById = {}, values = Object.create(valuesById); + values[valuesById[0] = "STATE_UNSPECIFIED"] = 0; + values[valuesById[1] = "ENABLING"] = 1; + values[valuesById[2] = "ACTIVE"] = 2; + values[valuesById[3] = "DISABLING"] = 3; + values[valuesById[4] = "UPDATING"] = 4; + values[valuesById[5] = "SERVICE_UPDATING"] = 5; + return values; + })(); + + return FeatureResourceState; + })(); + + v1alpha.FeatureState = (function() { + + /** + * Properties of a FeatureState. + * @memberof google.cloud.gkehub.v1alpha + * @interface IFeatureState + * @property {google.cloud.gkehub.v1alpha.FeatureState.Code|null} [code] FeatureState code + * @property {string|null} [description] FeatureState description + * @property {google.protobuf.ITimestamp|null} [updateTime] FeatureState updateTime + */ + + /** + * Constructs a new FeatureState. + * @memberof google.cloud.gkehub.v1alpha + * @classdesc Represents a FeatureState. + * @implements IFeatureState + * @constructor + * @param {google.cloud.gkehub.v1alpha.IFeatureState=} [properties] Properties to set + */ + function FeatureState(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]]; + } + + /** + * FeatureState code. + * @member {google.cloud.gkehub.v1alpha.FeatureState.Code} code + * @memberof google.cloud.gkehub.v1alpha.FeatureState + * @instance + */ + FeatureState.prototype.code = 0; + + /** + * FeatureState description. + * @member {string} description + * @memberof google.cloud.gkehub.v1alpha.FeatureState + * @instance + */ + FeatureState.prototype.description = ""; + + /** + * FeatureState updateTime. + * @member {google.protobuf.ITimestamp|null|undefined} updateTime + * @memberof google.cloud.gkehub.v1alpha.FeatureState + * @instance + */ + FeatureState.prototype.updateTime = null; + + /** + * Creates a new FeatureState instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.v1alpha.FeatureState + * @static + * @param {google.cloud.gkehub.v1alpha.IFeatureState=} [properties] Properties to set + * @returns {google.cloud.gkehub.v1alpha.FeatureState} FeatureState instance + */ + FeatureState.create = function create(properties) { + return new FeatureState(properties); + }; + + /** + * Encodes the specified FeatureState message. Does not implicitly {@link google.cloud.gkehub.v1alpha.FeatureState.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.v1alpha.FeatureState + * @static + * @param {google.cloud.gkehub.v1alpha.IFeatureState} message FeatureState message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + FeatureState.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.code != null && Object.hasOwnProperty.call(message, "code")) + writer.uint32(/* id 1, wireType 0 =*/8).int32(message.code); + if (message.description != null && Object.hasOwnProperty.call(message, "description")) + writer.uint32(/* id 2, wireType 2 =*/18).string(message.description); + if (message.updateTime != null && Object.hasOwnProperty.call(message, "updateTime")) + $root.google.protobuf.Timestamp.encode(message.updateTime, writer.uint32(/* id 3, wireType 2 =*/26).fork()).ldelim(); + return writer; + }; + + /** + * Encodes the specified FeatureState message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1alpha.FeatureState.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.v1alpha.FeatureState + * @static + * @param {google.cloud.gkehub.v1alpha.IFeatureState} message FeatureState message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + FeatureState.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a FeatureState message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.v1alpha.FeatureState + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.v1alpha.FeatureState} FeatureState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + FeatureState.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.v1alpha.FeatureState(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.code = reader.int32(); + break; + case 2: + message.description = reader.string(); + break; + case 3: + message.updateTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a FeatureState message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.v1alpha.FeatureState + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.v1alpha.FeatureState} FeatureState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + FeatureState.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a FeatureState message. + * @function verify + * @memberof google.cloud.gkehub.v1alpha.FeatureState + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + FeatureState.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.code != null && message.hasOwnProperty("code")) + switch (message.code) { + default: + return "code: enum value expected"; + case 0: + case 1: + case 2: + case 3: + break; + } + if (message.description != null && message.hasOwnProperty("description")) + if (!$util.isString(message.description)) + return "description: string expected"; + if (message.updateTime != null && message.hasOwnProperty("updateTime")) { + var error = $root.google.protobuf.Timestamp.verify(message.updateTime); + if (error) + return "updateTime." + error; + } + return null; + }; + + /** + * Creates a FeatureState message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.v1alpha.FeatureState + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.v1alpha.FeatureState} FeatureState + */ + FeatureState.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.v1alpha.FeatureState) + return object; + var message = new $root.google.cloud.gkehub.v1alpha.FeatureState(); + switch (object.code) { + case "CODE_UNSPECIFIED": + case 0: + message.code = 0; + break; + case "OK": + case 1: + message.code = 1; + break; + case "WARNING": + case 2: + message.code = 2; + break; + case "ERROR": + case 3: + message.code = 3; + break; + } + if (object.description != null) + message.description = String(object.description); + if (object.updateTime != null) { + if (typeof object.updateTime !== "object") + throw TypeError(".google.cloud.gkehub.v1alpha.FeatureState.updateTime: object expected"); + message.updateTime = $root.google.protobuf.Timestamp.fromObject(object.updateTime); + } + return message; + }; + + /** + * Creates a plain object from a FeatureState message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.v1alpha.FeatureState + * @static + * @param {google.cloud.gkehub.v1alpha.FeatureState} message FeatureState + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + FeatureState.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.code = options.enums === String ? "CODE_UNSPECIFIED" : 0; + object.description = ""; + object.updateTime = null; + } + if (message.code != null && message.hasOwnProperty("code")) + object.code = options.enums === String ? $root.google.cloud.gkehub.v1alpha.FeatureState.Code[message.code] : message.code; + if (message.description != null && message.hasOwnProperty("description")) + object.description = message.description; + if (message.updateTime != null && message.hasOwnProperty("updateTime")) + object.updateTime = $root.google.protobuf.Timestamp.toObject(message.updateTime, options); + return object; + }; + + /** + * Converts this FeatureState to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.v1alpha.FeatureState + * @instance + * @returns {Object.} JSON object + */ + FeatureState.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + /** + * Code enum. + * @name google.cloud.gkehub.v1alpha.FeatureState.Code + * @enum {number} + * @property {number} CODE_UNSPECIFIED=0 CODE_UNSPECIFIED value + * @property {number} OK=1 OK value + * @property {number} WARNING=2 WARNING value + * @property {number} ERROR=3 ERROR value + */ + FeatureState.Code = (function() { + var valuesById = {}, values = Object.create(valuesById); + values[valuesById[0] = "CODE_UNSPECIFIED"] = 0; + values[valuesById[1] = "OK"] = 1; + values[valuesById[2] = "WARNING"] = 2; + values[valuesById[3] = "ERROR"] = 3; + return values; + })(); + + return FeatureState; + })(); + + v1alpha.CommonFeatureSpec = (function() { + + /** + * Properties of a CommonFeatureSpec. + * @memberof google.cloud.gkehub.v1alpha + * @interface ICommonFeatureSpec + * @property {google.cloud.gkehub.multiclusteringress.v1alpha.IFeatureSpec|null} [multiclusteringress] CommonFeatureSpec multiclusteringress + * @property {google.cloud.gkehub.cloudauditlogging.v1alpha.IFeatureSpec|null} [cloudauditlogging] CommonFeatureSpec cloudauditlogging + */ + + /** + * Constructs a new CommonFeatureSpec. + * @memberof google.cloud.gkehub.v1alpha + * @classdesc Represents a CommonFeatureSpec. + * @implements ICommonFeatureSpec + * @constructor + * @param {google.cloud.gkehub.v1alpha.ICommonFeatureSpec=} [properties] Properties to set + */ + function CommonFeatureSpec(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]]; + } + + /** + * CommonFeatureSpec multiclusteringress. + * @member {google.cloud.gkehub.multiclusteringress.v1alpha.IFeatureSpec|null|undefined} multiclusteringress + * @memberof google.cloud.gkehub.v1alpha.CommonFeatureSpec + * @instance + */ + CommonFeatureSpec.prototype.multiclusteringress = null; + + /** + * CommonFeatureSpec cloudauditlogging. + * @member {google.cloud.gkehub.cloudauditlogging.v1alpha.IFeatureSpec|null|undefined} cloudauditlogging + * @memberof google.cloud.gkehub.v1alpha.CommonFeatureSpec + * @instance + */ + CommonFeatureSpec.prototype.cloudauditlogging = null; + + // OneOf field names bound to virtual getters and setters + var $oneOfFields; + + /** + * CommonFeatureSpec featureSpec. + * @member {"multiclusteringress"|"cloudauditlogging"|undefined} featureSpec + * @memberof google.cloud.gkehub.v1alpha.CommonFeatureSpec + * @instance + */ + Object.defineProperty(CommonFeatureSpec.prototype, "featureSpec", { + get: $util.oneOfGetter($oneOfFields = ["multiclusteringress", "cloudauditlogging"]), + set: $util.oneOfSetter($oneOfFields) + }); + + /** + * Creates a new CommonFeatureSpec instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.v1alpha.CommonFeatureSpec + * @static + * @param {google.cloud.gkehub.v1alpha.ICommonFeatureSpec=} [properties] Properties to set + * @returns {google.cloud.gkehub.v1alpha.CommonFeatureSpec} CommonFeatureSpec instance + */ + CommonFeatureSpec.create = function create(properties) { + return new CommonFeatureSpec(properties); + }; + + /** + * Encodes the specified CommonFeatureSpec message. Does not implicitly {@link google.cloud.gkehub.v1alpha.CommonFeatureSpec.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.v1alpha.CommonFeatureSpec + * @static + * @param {google.cloud.gkehub.v1alpha.ICommonFeatureSpec} message CommonFeatureSpec message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + CommonFeatureSpec.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.multiclusteringress != null && Object.hasOwnProperty.call(message, "multiclusteringress")) + $root.google.cloud.gkehub.multiclusteringress.v1alpha.FeatureSpec.encode(message.multiclusteringress, writer.uint32(/* id 102, wireType 2 =*/818).fork()).ldelim(); + if (message.cloudauditlogging != null && Object.hasOwnProperty.call(message, "cloudauditlogging")) + $root.google.cloud.gkehub.cloudauditlogging.v1alpha.FeatureSpec.encode(message.cloudauditlogging, writer.uint32(/* id 108, wireType 2 =*/866).fork()).ldelim(); + return writer; + }; + + /** + * Encodes the specified CommonFeatureSpec message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1alpha.CommonFeatureSpec.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.v1alpha.CommonFeatureSpec + * @static + * @param {google.cloud.gkehub.v1alpha.ICommonFeatureSpec} message CommonFeatureSpec message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + CommonFeatureSpec.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a CommonFeatureSpec message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.v1alpha.CommonFeatureSpec + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.v1alpha.CommonFeatureSpec} CommonFeatureSpec + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + CommonFeatureSpec.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.v1alpha.CommonFeatureSpec(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 102: + message.multiclusteringress = $root.google.cloud.gkehub.multiclusteringress.v1alpha.FeatureSpec.decode(reader, reader.uint32()); + break; + case 108: + message.cloudauditlogging = $root.google.cloud.gkehub.cloudauditlogging.v1alpha.FeatureSpec.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a CommonFeatureSpec message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.v1alpha.CommonFeatureSpec + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.v1alpha.CommonFeatureSpec} CommonFeatureSpec + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + CommonFeatureSpec.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a CommonFeatureSpec message. + * @function verify + * @memberof google.cloud.gkehub.v1alpha.CommonFeatureSpec + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + CommonFeatureSpec.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + var properties = {}; + if (message.multiclusteringress != null && message.hasOwnProperty("multiclusteringress")) { + properties.featureSpec = 1; + { + var error = $root.google.cloud.gkehub.multiclusteringress.v1alpha.FeatureSpec.verify(message.multiclusteringress); + if (error) + return "multiclusteringress." + error; + } + } + if (message.cloudauditlogging != null && message.hasOwnProperty("cloudauditlogging")) { + if (properties.featureSpec === 1) + return "featureSpec: multiple values"; + properties.featureSpec = 1; + { + var error = $root.google.cloud.gkehub.cloudauditlogging.v1alpha.FeatureSpec.verify(message.cloudauditlogging); + if (error) + return "cloudauditlogging." + error; + } + } + return null; + }; + + /** + * Creates a CommonFeatureSpec message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.v1alpha.CommonFeatureSpec + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.v1alpha.CommonFeatureSpec} CommonFeatureSpec + */ + CommonFeatureSpec.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.v1alpha.CommonFeatureSpec) + return object; + var message = new $root.google.cloud.gkehub.v1alpha.CommonFeatureSpec(); + if (object.multiclusteringress != null) { + if (typeof object.multiclusteringress !== "object") + throw TypeError(".google.cloud.gkehub.v1alpha.CommonFeatureSpec.multiclusteringress: object expected"); + message.multiclusteringress = $root.google.cloud.gkehub.multiclusteringress.v1alpha.FeatureSpec.fromObject(object.multiclusteringress); + } + if (object.cloudauditlogging != null) { + if (typeof object.cloudauditlogging !== "object") + throw TypeError(".google.cloud.gkehub.v1alpha.CommonFeatureSpec.cloudauditlogging: object expected"); + message.cloudauditlogging = $root.google.cloud.gkehub.cloudauditlogging.v1alpha.FeatureSpec.fromObject(object.cloudauditlogging); + } + return message; + }; + + /** + * Creates a plain object from a CommonFeatureSpec message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.v1alpha.CommonFeatureSpec + * @static + * @param {google.cloud.gkehub.v1alpha.CommonFeatureSpec} message CommonFeatureSpec + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + CommonFeatureSpec.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (message.multiclusteringress != null && message.hasOwnProperty("multiclusteringress")) { + object.multiclusteringress = $root.google.cloud.gkehub.multiclusteringress.v1alpha.FeatureSpec.toObject(message.multiclusteringress, options); + if (options.oneofs) + object.featureSpec = "multiclusteringress"; + } + if (message.cloudauditlogging != null && message.hasOwnProperty("cloudauditlogging")) { + object.cloudauditlogging = $root.google.cloud.gkehub.cloudauditlogging.v1alpha.FeatureSpec.toObject(message.cloudauditlogging, options); + if (options.oneofs) + object.featureSpec = "cloudauditlogging"; + } + return object; + }; + + /** + * Converts this CommonFeatureSpec to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.v1alpha.CommonFeatureSpec + * @instance + * @returns {Object.} JSON object + */ + CommonFeatureSpec.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return CommonFeatureSpec; + })(); + + v1alpha.CommonFeatureState = (function() { + + /** + * Properties of a CommonFeatureState. + * @memberof google.cloud.gkehub.v1alpha + * @interface ICommonFeatureState + * @property {google.cloud.gkehub.servicemesh.v1alpha.IFeatureState|null} [servicemesh] CommonFeatureState servicemesh + * @property {google.cloud.gkehub.v1alpha.IFeatureState|null} [state] CommonFeatureState state + */ + + /** + * Constructs a new CommonFeatureState. + * @memberof google.cloud.gkehub.v1alpha + * @classdesc Represents a CommonFeatureState. + * @implements ICommonFeatureState + * @constructor + * @param {google.cloud.gkehub.v1alpha.ICommonFeatureState=} [properties] Properties to set + */ + function CommonFeatureState(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]]; + } + + /** + * CommonFeatureState servicemesh. + * @member {google.cloud.gkehub.servicemesh.v1alpha.IFeatureState|null|undefined} servicemesh + * @memberof google.cloud.gkehub.v1alpha.CommonFeatureState + * @instance + */ + CommonFeatureState.prototype.servicemesh = null; + + /** + * CommonFeatureState state. + * @member {google.cloud.gkehub.v1alpha.IFeatureState|null|undefined} state + * @memberof google.cloud.gkehub.v1alpha.CommonFeatureState + * @instance + */ + CommonFeatureState.prototype.state = null; + + // OneOf field names bound to virtual getters and setters + var $oneOfFields; + + /** + * CommonFeatureState featureState. + * @member {"servicemesh"|undefined} featureState + * @memberof google.cloud.gkehub.v1alpha.CommonFeatureState + * @instance + */ + Object.defineProperty(CommonFeatureState.prototype, "featureState", { + get: $util.oneOfGetter($oneOfFields = ["servicemesh"]), + set: $util.oneOfSetter($oneOfFields) + }); + + /** + * Creates a new CommonFeatureState instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.v1alpha.CommonFeatureState + * @static + * @param {google.cloud.gkehub.v1alpha.ICommonFeatureState=} [properties] Properties to set + * @returns {google.cloud.gkehub.v1alpha.CommonFeatureState} CommonFeatureState instance + */ + CommonFeatureState.create = function create(properties) { + return new CommonFeatureState(properties); + }; + + /** + * Encodes the specified CommonFeatureState message. Does not implicitly {@link google.cloud.gkehub.v1alpha.CommonFeatureState.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.v1alpha.CommonFeatureState + * @static + * @param {google.cloud.gkehub.v1alpha.ICommonFeatureState} message CommonFeatureState message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + CommonFeatureState.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.state != null && Object.hasOwnProperty.call(message, "state")) + $root.google.cloud.gkehub.v1alpha.FeatureState.encode(message.state, writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim(); + if (message.servicemesh != null && Object.hasOwnProperty.call(message, "servicemesh")) + $root.google.cloud.gkehub.servicemesh.v1alpha.FeatureState.encode(message.servicemesh, writer.uint32(/* id 100, wireType 2 =*/802).fork()).ldelim(); + return writer; + }; + + /** + * Encodes the specified CommonFeatureState message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1alpha.CommonFeatureState.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.v1alpha.CommonFeatureState + * @static + * @param {google.cloud.gkehub.v1alpha.ICommonFeatureState} message CommonFeatureState message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + CommonFeatureState.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a CommonFeatureState message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.v1alpha.CommonFeatureState + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.v1alpha.CommonFeatureState} CommonFeatureState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + CommonFeatureState.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.v1alpha.CommonFeatureState(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 100: + message.servicemesh = $root.google.cloud.gkehub.servicemesh.v1alpha.FeatureState.decode(reader, reader.uint32()); + break; + case 1: + message.state = $root.google.cloud.gkehub.v1alpha.FeatureState.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a CommonFeatureState message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.v1alpha.CommonFeatureState + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.v1alpha.CommonFeatureState} CommonFeatureState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + CommonFeatureState.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a CommonFeatureState message. + * @function verify + * @memberof google.cloud.gkehub.v1alpha.CommonFeatureState + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + CommonFeatureState.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + var properties = {}; + if (message.servicemesh != null && message.hasOwnProperty("servicemesh")) { + properties.featureState = 1; + { + var error = $root.google.cloud.gkehub.servicemesh.v1alpha.FeatureState.verify(message.servicemesh); + if (error) + return "servicemesh." + error; + } + } + if (message.state != null && message.hasOwnProperty("state")) { + var error = $root.google.cloud.gkehub.v1alpha.FeatureState.verify(message.state); + if (error) + return "state." + error; + } + return null; + }; + + /** + * Creates a CommonFeatureState message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.v1alpha.CommonFeatureState + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.v1alpha.CommonFeatureState} CommonFeatureState + */ + CommonFeatureState.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.v1alpha.CommonFeatureState) + return object; + var message = new $root.google.cloud.gkehub.v1alpha.CommonFeatureState(); + if (object.servicemesh != null) { + if (typeof object.servicemesh !== "object") + throw TypeError(".google.cloud.gkehub.v1alpha.CommonFeatureState.servicemesh: object expected"); + message.servicemesh = $root.google.cloud.gkehub.servicemesh.v1alpha.FeatureState.fromObject(object.servicemesh); + } + if (object.state != null) { + if (typeof object.state !== "object") + throw TypeError(".google.cloud.gkehub.v1alpha.CommonFeatureState.state: object expected"); + message.state = $root.google.cloud.gkehub.v1alpha.FeatureState.fromObject(object.state); + } + return message; + }; + + /** + * Creates a plain object from a CommonFeatureState message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.v1alpha.CommonFeatureState + * @static + * @param {google.cloud.gkehub.v1alpha.CommonFeatureState} message CommonFeatureState + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + CommonFeatureState.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) + object.state = null; + if (message.state != null && message.hasOwnProperty("state")) + object.state = $root.google.cloud.gkehub.v1alpha.FeatureState.toObject(message.state, options); + if (message.servicemesh != null && message.hasOwnProperty("servicemesh")) { + object.servicemesh = $root.google.cloud.gkehub.servicemesh.v1alpha.FeatureState.toObject(message.servicemesh, options); + if (options.oneofs) + object.featureState = "servicemesh"; + } + return object; + }; + + /** + * Converts this CommonFeatureState to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.v1alpha.CommonFeatureState + * @instance + * @returns {Object.} JSON object + */ + CommonFeatureState.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return CommonFeatureState; + })(); + + v1alpha.MembershipFeatureSpec = (function() { + + /** + * Properties of a MembershipFeatureSpec. + * @memberof google.cloud.gkehub.v1alpha + * @interface IMembershipFeatureSpec + * @property {google.cloud.gkehub.configmanagement.v1alpha.IMembershipSpec|null} [configmanagement] MembershipFeatureSpec configmanagement + */ + + /** + * Constructs a new MembershipFeatureSpec. + * @memberof google.cloud.gkehub.v1alpha + * @classdesc Represents a MembershipFeatureSpec. + * @implements IMembershipFeatureSpec + * @constructor + * @param {google.cloud.gkehub.v1alpha.IMembershipFeatureSpec=} [properties] Properties to set + */ + function MembershipFeatureSpec(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]]; + } + + /** + * MembershipFeatureSpec configmanagement. + * @member {google.cloud.gkehub.configmanagement.v1alpha.IMembershipSpec|null|undefined} configmanagement + * @memberof google.cloud.gkehub.v1alpha.MembershipFeatureSpec + * @instance + */ + MembershipFeatureSpec.prototype.configmanagement = null; + + // OneOf field names bound to virtual getters and setters + var $oneOfFields; + + /** + * MembershipFeatureSpec featureSpec. + * @member {"configmanagement"|undefined} featureSpec + * @memberof google.cloud.gkehub.v1alpha.MembershipFeatureSpec + * @instance + */ + Object.defineProperty(MembershipFeatureSpec.prototype, "featureSpec", { + get: $util.oneOfGetter($oneOfFields = ["configmanagement"]), + set: $util.oneOfSetter($oneOfFields) + }); + + /** + * Creates a new MembershipFeatureSpec instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.v1alpha.MembershipFeatureSpec + * @static + * @param {google.cloud.gkehub.v1alpha.IMembershipFeatureSpec=} [properties] Properties to set + * @returns {google.cloud.gkehub.v1alpha.MembershipFeatureSpec} MembershipFeatureSpec instance + */ + MembershipFeatureSpec.create = function create(properties) { + return new MembershipFeatureSpec(properties); + }; + + /** + * Encodes the specified MembershipFeatureSpec message. Does not implicitly {@link google.cloud.gkehub.v1alpha.MembershipFeatureSpec.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.v1alpha.MembershipFeatureSpec + * @static + * @param {google.cloud.gkehub.v1alpha.IMembershipFeatureSpec} message MembershipFeatureSpec message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + MembershipFeatureSpec.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.configmanagement != null && Object.hasOwnProperty.call(message, "configmanagement")) + $root.google.cloud.gkehub.configmanagement.v1alpha.MembershipSpec.encode(message.configmanagement, writer.uint32(/* id 106, wireType 2 =*/850).fork()).ldelim(); + return writer; + }; + + /** + * Encodes the specified MembershipFeatureSpec message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1alpha.MembershipFeatureSpec.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.v1alpha.MembershipFeatureSpec + * @static + * @param {google.cloud.gkehub.v1alpha.IMembershipFeatureSpec} message MembershipFeatureSpec message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + MembershipFeatureSpec.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a MembershipFeatureSpec message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.v1alpha.MembershipFeatureSpec + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.v1alpha.MembershipFeatureSpec} MembershipFeatureSpec + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + MembershipFeatureSpec.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.v1alpha.MembershipFeatureSpec(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 106: + message.configmanagement = $root.google.cloud.gkehub.configmanagement.v1alpha.MembershipSpec.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a MembershipFeatureSpec message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.v1alpha.MembershipFeatureSpec + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.v1alpha.MembershipFeatureSpec} MembershipFeatureSpec + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + MembershipFeatureSpec.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a MembershipFeatureSpec message. + * @function verify + * @memberof google.cloud.gkehub.v1alpha.MembershipFeatureSpec + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + MembershipFeatureSpec.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + var properties = {}; + if (message.configmanagement != null && message.hasOwnProperty("configmanagement")) { + properties.featureSpec = 1; + { + var error = $root.google.cloud.gkehub.configmanagement.v1alpha.MembershipSpec.verify(message.configmanagement); + if (error) + return "configmanagement." + error; + } + } + return null; + }; + + /** + * Creates a MembershipFeatureSpec message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.v1alpha.MembershipFeatureSpec + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.v1alpha.MembershipFeatureSpec} MembershipFeatureSpec + */ + MembershipFeatureSpec.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.v1alpha.MembershipFeatureSpec) + return object; + var message = new $root.google.cloud.gkehub.v1alpha.MembershipFeatureSpec(); + if (object.configmanagement != null) { + if (typeof object.configmanagement !== "object") + throw TypeError(".google.cloud.gkehub.v1alpha.MembershipFeatureSpec.configmanagement: object expected"); + message.configmanagement = $root.google.cloud.gkehub.configmanagement.v1alpha.MembershipSpec.fromObject(object.configmanagement); + } + return message; + }; + + /** + * Creates a plain object from a MembershipFeatureSpec message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.v1alpha.MembershipFeatureSpec + * @static + * @param {google.cloud.gkehub.v1alpha.MembershipFeatureSpec} message MembershipFeatureSpec + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + MembershipFeatureSpec.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (message.configmanagement != null && message.hasOwnProperty("configmanagement")) { + object.configmanagement = $root.google.cloud.gkehub.configmanagement.v1alpha.MembershipSpec.toObject(message.configmanagement, options); + if (options.oneofs) + object.featureSpec = "configmanagement"; + } + return object; + }; + + /** + * Converts this MembershipFeatureSpec to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.v1alpha.MembershipFeatureSpec + * @instance + * @returns {Object.} JSON object + */ + MembershipFeatureSpec.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return MembershipFeatureSpec; + })(); + + v1alpha.MembershipFeatureState = (function() { + + /** + * Properties of a MembershipFeatureState. + * @memberof google.cloud.gkehub.v1alpha + * @interface IMembershipFeatureState + * @property {google.cloud.gkehub.servicemesh.v1alpha.IMembershipState|null} [servicemesh] MembershipFeatureState servicemesh + * @property {google.cloud.gkehub.metering.v1alpha.IMembershipState|null} [metering] MembershipFeatureState metering + * @property {google.cloud.gkehub.configmanagement.v1alpha.IMembershipState|null} [configmanagement] MembershipFeatureState configmanagement + * @property {google.cloud.gkehub.v1alpha.IFeatureState|null} [state] MembershipFeatureState state + */ + + /** + * Constructs a new MembershipFeatureState. + * @memberof google.cloud.gkehub.v1alpha + * @classdesc Represents a MembershipFeatureState. + * @implements IMembershipFeatureState + * @constructor + * @param {google.cloud.gkehub.v1alpha.IMembershipFeatureState=} [properties] Properties to set + */ + function MembershipFeatureState(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]]; + } + + /** + * MembershipFeatureState servicemesh. + * @member {google.cloud.gkehub.servicemesh.v1alpha.IMembershipState|null|undefined} servicemesh + * @memberof google.cloud.gkehub.v1alpha.MembershipFeatureState + * @instance + */ + MembershipFeatureState.prototype.servicemesh = null; + + /** + * MembershipFeatureState metering. + * @member {google.cloud.gkehub.metering.v1alpha.IMembershipState|null|undefined} metering + * @memberof google.cloud.gkehub.v1alpha.MembershipFeatureState + * @instance + */ + MembershipFeatureState.prototype.metering = null; + + /** + * MembershipFeatureState configmanagement. + * @member {google.cloud.gkehub.configmanagement.v1alpha.IMembershipState|null|undefined} configmanagement + * @memberof google.cloud.gkehub.v1alpha.MembershipFeatureState + * @instance + */ + MembershipFeatureState.prototype.configmanagement = null; + + /** + * MembershipFeatureState state. + * @member {google.cloud.gkehub.v1alpha.IFeatureState|null|undefined} state + * @memberof google.cloud.gkehub.v1alpha.MembershipFeatureState + * @instance + */ + MembershipFeatureState.prototype.state = null; + + // OneOf field names bound to virtual getters and setters + var $oneOfFields; + + /** + * MembershipFeatureState featureState. + * @member {"servicemesh"|"metering"|"configmanagement"|undefined} featureState + * @memberof google.cloud.gkehub.v1alpha.MembershipFeatureState + * @instance + */ + Object.defineProperty(MembershipFeatureState.prototype, "featureState", { + get: $util.oneOfGetter($oneOfFields = ["servicemesh", "metering", "configmanagement"]), + set: $util.oneOfSetter($oneOfFields) + }); + + /** + * Creates a new MembershipFeatureState instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.v1alpha.MembershipFeatureState + * @static + * @param {google.cloud.gkehub.v1alpha.IMembershipFeatureState=} [properties] Properties to set + * @returns {google.cloud.gkehub.v1alpha.MembershipFeatureState} MembershipFeatureState instance + */ + MembershipFeatureState.create = function create(properties) { + return new MembershipFeatureState(properties); + }; + + /** + * Encodes the specified MembershipFeatureState message. Does not implicitly {@link google.cloud.gkehub.v1alpha.MembershipFeatureState.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.v1alpha.MembershipFeatureState + * @static + * @param {google.cloud.gkehub.v1alpha.IMembershipFeatureState} message MembershipFeatureState message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + MembershipFeatureState.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.state != null && Object.hasOwnProperty.call(message, "state")) + $root.google.cloud.gkehub.v1alpha.FeatureState.encode(message.state, writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim(); + if (message.servicemesh != null && Object.hasOwnProperty.call(message, "servicemesh")) + $root.google.cloud.gkehub.servicemesh.v1alpha.MembershipState.encode(message.servicemesh, writer.uint32(/* id 100, wireType 2 =*/802).fork()).ldelim(); + if (message.metering != null && Object.hasOwnProperty.call(message, "metering")) + $root.google.cloud.gkehub.metering.v1alpha.MembershipState.encode(message.metering, writer.uint32(/* id 104, wireType 2 =*/834).fork()).ldelim(); + if (message.configmanagement != null && Object.hasOwnProperty.call(message, "configmanagement")) + $root.google.cloud.gkehub.configmanagement.v1alpha.MembershipState.encode(message.configmanagement, writer.uint32(/* id 106, wireType 2 =*/850).fork()).ldelim(); + return writer; + }; + + /** + * Encodes the specified MembershipFeatureState message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1alpha.MembershipFeatureState.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.v1alpha.MembershipFeatureState + * @static + * @param {google.cloud.gkehub.v1alpha.IMembershipFeatureState} message MembershipFeatureState message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + MembershipFeatureState.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a MembershipFeatureState message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.v1alpha.MembershipFeatureState + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.v1alpha.MembershipFeatureState} MembershipFeatureState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + MembershipFeatureState.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.v1alpha.MembershipFeatureState(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 100: + message.servicemesh = $root.google.cloud.gkehub.servicemesh.v1alpha.MembershipState.decode(reader, reader.uint32()); + break; + case 104: + message.metering = $root.google.cloud.gkehub.metering.v1alpha.MembershipState.decode(reader, reader.uint32()); + break; + case 106: + message.configmanagement = $root.google.cloud.gkehub.configmanagement.v1alpha.MembershipState.decode(reader, reader.uint32()); + break; + case 1: + message.state = $root.google.cloud.gkehub.v1alpha.FeatureState.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a MembershipFeatureState message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.v1alpha.MembershipFeatureState + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.v1alpha.MembershipFeatureState} MembershipFeatureState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + MembershipFeatureState.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a MembershipFeatureState message. + * @function verify + * @memberof google.cloud.gkehub.v1alpha.MembershipFeatureState + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + MembershipFeatureState.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + var properties = {}; + if (message.servicemesh != null && message.hasOwnProperty("servicemesh")) { + properties.featureState = 1; + { + var error = $root.google.cloud.gkehub.servicemesh.v1alpha.MembershipState.verify(message.servicemesh); + if (error) + return "servicemesh." + error; + } + } + if (message.metering != null && message.hasOwnProperty("metering")) { + if (properties.featureState === 1) + return "featureState: multiple values"; + properties.featureState = 1; + { + var error = $root.google.cloud.gkehub.metering.v1alpha.MembershipState.verify(message.metering); + if (error) + return "metering." + error; + } + } + if (message.configmanagement != null && message.hasOwnProperty("configmanagement")) { + if (properties.featureState === 1) + return "featureState: multiple values"; + properties.featureState = 1; + { + var error = $root.google.cloud.gkehub.configmanagement.v1alpha.MembershipState.verify(message.configmanagement); + if (error) + return "configmanagement." + error; + } + } + if (message.state != null && message.hasOwnProperty("state")) { + var error = $root.google.cloud.gkehub.v1alpha.FeatureState.verify(message.state); + if (error) + return "state." + error; + } + return null; + }; + + /** + * Creates a MembershipFeatureState message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.v1alpha.MembershipFeatureState + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.v1alpha.MembershipFeatureState} MembershipFeatureState + */ + MembershipFeatureState.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.v1alpha.MembershipFeatureState) + return object; + var message = new $root.google.cloud.gkehub.v1alpha.MembershipFeatureState(); + if (object.servicemesh != null) { + if (typeof object.servicemesh !== "object") + throw TypeError(".google.cloud.gkehub.v1alpha.MembershipFeatureState.servicemesh: object expected"); + message.servicemesh = $root.google.cloud.gkehub.servicemesh.v1alpha.MembershipState.fromObject(object.servicemesh); + } + if (object.metering != null) { + if (typeof object.metering !== "object") + throw TypeError(".google.cloud.gkehub.v1alpha.MembershipFeatureState.metering: object expected"); + message.metering = $root.google.cloud.gkehub.metering.v1alpha.MembershipState.fromObject(object.metering); + } + if (object.configmanagement != null) { + if (typeof object.configmanagement !== "object") + throw TypeError(".google.cloud.gkehub.v1alpha.MembershipFeatureState.configmanagement: object expected"); + message.configmanagement = $root.google.cloud.gkehub.configmanagement.v1alpha.MembershipState.fromObject(object.configmanagement); + } + if (object.state != null) { + if (typeof object.state !== "object") + throw TypeError(".google.cloud.gkehub.v1alpha.MembershipFeatureState.state: object expected"); + message.state = $root.google.cloud.gkehub.v1alpha.FeatureState.fromObject(object.state); + } + return message; + }; + + /** + * Creates a plain object from a MembershipFeatureState message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.v1alpha.MembershipFeatureState + * @static + * @param {google.cloud.gkehub.v1alpha.MembershipFeatureState} message MembershipFeatureState + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + MembershipFeatureState.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) + object.state = null; + if (message.state != null && message.hasOwnProperty("state")) + object.state = $root.google.cloud.gkehub.v1alpha.FeatureState.toObject(message.state, options); + if (message.servicemesh != null && message.hasOwnProperty("servicemesh")) { + object.servicemesh = $root.google.cloud.gkehub.servicemesh.v1alpha.MembershipState.toObject(message.servicemesh, options); + if (options.oneofs) + object.featureState = "servicemesh"; + } + if (message.metering != null && message.hasOwnProperty("metering")) { + object.metering = $root.google.cloud.gkehub.metering.v1alpha.MembershipState.toObject(message.metering, options); + if (options.oneofs) + object.featureState = "metering"; + } + if (message.configmanagement != null && message.hasOwnProperty("configmanagement")) { + object.configmanagement = $root.google.cloud.gkehub.configmanagement.v1alpha.MembershipState.toObject(message.configmanagement, options); + if (options.oneofs) + object.featureState = "configmanagement"; + } + return object; + }; + + /** + * Converts this MembershipFeatureState to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.v1alpha.MembershipFeatureState + * @instance + * @returns {Object.} JSON object + */ + MembershipFeatureState.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return MembershipFeatureState; + })(); + + v1alpha.GkeHub = (function() { + + /** + * Constructs a new GkeHub service. + * @memberof google.cloud.gkehub.v1alpha + * @classdesc Represents a GkeHub + * @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 GkeHub(rpcImpl, requestDelimited, responseDelimited) { + $protobuf.rpc.Service.call(this, rpcImpl, requestDelimited, responseDelimited); + } + + (GkeHub.prototype = Object.create($protobuf.rpc.Service.prototype)).constructor = GkeHub; + + /** + * Creates new GkeHub service using the specified rpc implementation. + * @function create + * @memberof google.cloud.gkehub.v1alpha.GkeHub + * @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 {GkeHub} RPC service. Useful where requests and/or responses are streamed. + */ + GkeHub.create = function create(rpcImpl, requestDelimited, responseDelimited) { + return new this(rpcImpl, requestDelimited, responseDelimited); + }; + + /** + * Callback as used by {@link google.cloud.gkehub.v1alpha.GkeHub#listFeatures}. + * @memberof google.cloud.gkehub.v1alpha.GkeHub + * @typedef ListFeaturesCallback + * @type {function} + * @param {Error|null} error Error, if any + * @param {google.cloud.gkehub.v1alpha.ListFeaturesResponse} [response] ListFeaturesResponse + */ + + /** + * Calls ListFeatures. + * @function listFeatures + * @memberof google.cloud.gkehub.v1alpha.GkeHub + * @instance + * @param {google.cloud.gkehub.v1alpha.IListFeaturesRequest} request ListFeaturesRequest message or plain object + * @param {google.cloud.gkehub.v1alpha.GkeHub.ListFeaturesCallback} callback Node-style callback called with the error, if any, and ListFeaturesResponse + * @returns {undefined} + * @variation 1 + */ + Object.defineProperty(GkeHub.prototype.listFeatures = function listFeatures(request, callback) { + return this.rpcCall(listFeatures, $root.google.cloud.gkehub.v1alpha.ListFeaturesRequest, $root.google.cloud.gkehub.v1alpha.ListFeaturesResponse, request, callback); + }, "name", { value: "ListFeatures" }); + + /** + * Calls ListFeatures. + * @function listFeatures + * @memberof google.cloud.gkehub.v1alpha.GkeHub + * @instance + * @param {google.cloud.gkehub.v1alpha.IListFeaturesRequest} request ListFeaturesRequest message or plain object + * @returns {Promise} Promise + * @variation 2 + */ + + /** + * Callback as used by {@link google.cloud.gkehub.v1alpha.GkeHub#getFeature}. + * @memberof google.cloud.gkehub.v1alpha.GkeHub + * @typedef GetFeatureCallback + * @type {function} + * @param {Error|null} error Error, if any + * @param {google.cloud.gkehub.v1alpha.Feature} [response] Feature + */ + + /** + * Calls GetFeature. + * @function getFeature + * @memberof google.cloud.gkehub.v1alpha.GkeHub + * @instance + * @param {google.cloud.gkehub.v1alpha.IGetFeatureRequest} request GetFeatureRequest message or plain object + * @param {google.cloud.gkehub.v1alpha.GkeHub.GetFeatureCallback} callback Node-style callback called with the error, if any, and Feature + * @returns {undefined} + * @variation 1 + */ + Object.defineProperty(GkeHub.prototype.getFeature = function getFeature(request, callback) { + return this.rpcCall(getFeature, $root.google.cloud.gkehub.v1alpha.GetFeatureRequest, $root.google.cloud.gkehub.v1alpha.Feature, request, callback); + }, "name", { value: "GetFeature" }); + + /** + * Calls GetFeature. + * @function getFeature + * @memberof google.cloud.gkehub.v1alpha.GkeHub + * @instance + * @param {google.cloud.gkehub.v1alpha.IGetFeatureRequest} request GetFeatureRequest message or plain object + * @returns {Promise} Promise + * @variation 2 + */ + + /** + * Callback as used by {@link google.cloud.gkehub.v1alpha.GkeHub#createFeature}. + * @memberof google.cloud.gkehub.v1alpha.GkeHub + * @typedef CreateFeatureCallback + * @type {function} + * @param {Error|null} error Error, if any + * @param {google.longrunning.Operation} [response] Operation + */ + + /** + * Calls CreateFeature. + * @function createFeature + * @memberof google.cloud.gkehub.v1alpha.GkeHub + * @instance + * @param {google.cloud.gkehub.v1alpha.ICreateFeatureRequest} request CreateFeatureRequest message or plain object + * @param {google.cloud.gkehub.v1alpha.GkeHub.CreateFeatureCallback} callback Node-style callback called with the error, if any, and Operation + * @returns {undefined} + * @variation 1 + */ + Object.defineProperty(GkeHub.prototype.createFeature = function createFeature(request, callback) { + return this.rpcCall(createFeature, $root.google.cloud.gkehub.v1alpha.CreateFeatureRequest, $root.google.longrunning.Operation, request, callback); + }, "name", { value: "CreateFeature" }); + + /** + * Calls CreateFeature. + * @function createFeature + * @memberof google.cloud.gkehub.v1alpha.GkeHub + * @instance + * @param {google.cloud.gkehub.v1alpha.ICreateFeatureRequest} request CreateFeatureRequest message or plain object + * @returns {Promise} Promise + * @variation 2 + */ + + /** + * Callback as used by {@link google.cloud.gkehub.v1alpha.GkeHub#deleteFeature}. + * @memberof google.cloud.gkehub.v1alpha.GkeHub + * @typedef DeleteFeatureCallback + * @type {function} + * @param {Error|null} error Error, if any + * @param {google.longrunning.Operation} [response] Operation + */ + + /** + * Calls DeleteFeature. + * @function deleteFeature + * @memberof google.cloud.gkehub.v1alpha.GkeHub + * @instance + * @param {google.cloud.gkehub.v1alpha.IDeleteFeatureRequest} request DeleteFeatureRequest message or plain object + * @param {google.cloud.gkehub.v1alpha.GkeHub.DeleteFeatureCallback} callback Node-style callback called with the error, if any, and Operation + * @returns {undefined} + * @variation 1 + */ + Object.defineProperty(GkeHub.prototype.deleteFeature = function deleteFeature(request, callback) { + return this.rpcCall(deleteFeature, $root.google.cloud.gkehub.v1alpha.DeleteFeatureRequest, $root.google.longrunning.Operation, request, callback); + }, "name", { value: "DeleteFeature" }); + + /** + * Calls DeleteFeature. + * @function deleteFeature + * @memberof google.cloud.gkehub.v1alpha.GkeHub + * @instance + * @param {google.cloud.gkehub.v1alpha.IDeleteFeatureRequest} request DeleteFeatureRequest message or plain object + * @returns {Promise} Promise + * @variation 2 + */ + + /** + * Callback as used by {@link google.cloud.gkehub.v1alpha.GkeHub#updateFeature}. + * @memberof google.cloud.gkehub.v1alpha.GkeHub + * @typedef UpdateFeatureCallback + * @type {function} + * @param {Error|null} error Error, if any + * @param {google.longrunning.Operation} [response] Operation + */ + + /** + * Calls UpdateFeature. + * @function updateFeature + * @memberof google.cloud.gkehub.v1alpha.GkeHub + * @instance + * @param {google.cloud.gkehub.v1alpha.IUpdateFeatureRequest} request UpdateFeatureRequest message or plain object + * @param {google.cloud.gkehub.v1alpha.GkeHub.UpdateFeatureCallback} callback Node-style callback called with the error, if any, and Operation + * @returns {undefined} + * @variation 1 + */ + Object.defineProperty(GkeHub.prototype.updateFeature = function updateFeature(request, callback) { + return this.rpcCall(updateFeature, $root.google.cloud.gkehub.v1alpha.UpdateFeatureRequest, $root.google.longrunning.Operation, request, callback); + }, "name", { value: "UpdateFeature" }); + + /** + * Calls UpdateFeature. + * @function updateFeature + * @memberof google.cloud.gkehub.v1alpha.GkeHub + * @instance + * @param {google.cloud.gkehub.v1alpha.IUpdateFeatureRequest} request UpdateFeatureRequest message or plain object + * @returns {Promise} Promise + * @variation 2 + */ + + return GkeHub; + })(); + + v1alpha.ListFeaturesRequest = (function() { + + /** + * Properties of a ListFeaturesRequest. + * @memberof google.cloud.gkehub.v1alpha + * @interface IListFeaturesRequest + * @property {string|null} [parent] ListFeaturesRequest parent + * @property {number|null} [pageSize] ListFeaturesRequest pageSize + * @property {string|null} [pageToken] ListFeaturesRequest pageToken + * @property {string|null} [filter] ListFeaturesRequest filter + * @property {string|null} [orderBy] ListFeaturesRequest orderBy + */ + + /** + * Constructs a new ListFeaturesRequest. + * @memberof google.cloud.gkehub.v1alpha + * @classdesc Represents a ListFeaturesRequest. + * @implements IListFeaturesRequest + * @constructor + * @param {google.cloud.gkehub.v1alpha.IListFeaturesRequest=} [properties] Properties to set + */ + function ListFeaturesRequest(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]]; + } + + /** + * ListFeaturesRequest parent. + * @member {string} parent + * @memberof google.cloud.gkehub.v1alpha.ListFeaturesRequest + * @instance + */ + ListFeaturesRequest.prototype.parent = ""; + + /** + * ListFeaturesRequest pageSize. + * @member {number} pageSize + * @memberof google.cloud.gkehub.v1alpha.ListFeaturesRequest + * @instance + */ + ListFeaturesRequest.prototype.pageSize = 0; + + /** + * ListFeaturesRequest pageToken. + * @member {string} pageToken + * @memberof google.cloud.gkehub.v1alpha.ListFeaturesRequest + * @instance + */ + ListFeaturesRequest.prototype.pageToken = ""; + + /** + * ListFeaturesRequest filter. + * @member {string} filter + * @memberof google.cloud.gkehub.v1alpha.ListFeaturesRequest + * @instance + */ + ListFeaturesRequest.prototype.filter = ""; + + /** + * ListFeaturesRequest orderBy. + * @member {string} orderBy + * @memberof google.cloud.gkehub.v1alpha.ListFeaturesRequest + * @instance + */ + ListFeaturesRequest.prototype.orderBy = ""; + + /** + * Creates a new ListFeaturesRequest instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.v1alpha.ListFeaturesRequest + * @static + * @param {google.cloud.gkehub.v1alpha.IListFeaturesRequest=} [properties] Properties to set + * @returns {google.cloud.gkehub.v1alpha.ListFeaturesRequest} ListFeaturesRequest instance + */ + ListFeaturesRequest.create = function create(properties) { + return new ListFeaturesRequest(properties); + }; + + /** + * Encodes the specified ListFeaturesRequest message. Does not implicitly {@link google.cloud.gkehub.v1alpha.ListFeaturesRequest.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.v1alpha.ListFeaturesRequest + * @static + * @param {google.cloud.gkehub.v1alpha.IListFeaturesRequest} message ListFeaturesRequest message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + ListFeaturesRequest.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.parent != null && Object.hasOwnProperty.call(message, "parent")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.parent); + if (message.pageSize != null && Object.hasOwnProperty.call(message, "pageSize")) + writer.uint32(/* id 2, wireType 0 =*/16).int32(message.pageSize); + if (message.pageToken != null && Object.hasOwnProperty.call(message, "pageToken")) + writer.uint32(/* id 3, wireType 2 =*/26).string(message.pageToken); + if (message.filter != null && Object.hasOwnProperty.call(message, "filter")) + writer.uint32(/* id 4, wireType 2 =*/34).string(message.filter); + if (message.orderBy != null && Object.hasOwnProperty.call(message, "orderBy")) + writer.uint32(/* id 5, wireType 2 =*/42).string(message.orderBy); + return writer; + }; + + /** + * Encodes the specified ListFeaturesRequest message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1alpha.ListFeaturesRequest.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.v1alpha.ListFeaturesRequest + * @static + * @param {google.cloud.gkehub.v1alpha.IListFeaturesRequest} message ListFeaturesRequest message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + ListFeaturesRequest.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a ListFeaturesRequest message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.v1alpha.ListFeaturesRequest + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.v1alpha.ListFeaturesRequest} ListFeaturesRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + ListFeaturesRequest.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.v1alpha.ListFeaturesRequest(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.parent = reader.string(); + break; + case 2: + message.pageSize = reader.int32(); + break; + case 3: + message.pageToken = reader.string(); + break; + case 4: + message.filter = reader.string(); + break; + case 5: + message.orderBy = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a ListFeaturesRequest message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.v1alpha.ListFeaturesRequest + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.v1alpha.ListFeaturesRequest} ListFeaturesRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + ListFeaturesRequest.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a ListFeaturesRequest message. + * @function verify + * @memberof google.cloud.gkehub.v1alpha.ListFeaturesRequest + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + ListFeaturesRequest.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.parent != null && message.hasOwnProperty("parent")) + if (!$util.isString(message.parent)) + return "parent: string expected"; + if (message.pageSize != null && message.hasOwnProperty("pageSize")) + if (!$util.isInteger(message.pageSize)) + return "pageSize: integer expected"; + if (message.pageToken != null && message.hasOwnProperty("pageToken")) + if (!$util.isString(message.pageToken)) + return "pageToken: string expected"; + if (message.filter != null && message.hasOwnProperty("filter")) + if (!$util.isString(message.filter)) + return "filter: string expected"; + if (message.orderBy != null && message.hasOwnProperty("orderBy")) + if (!$util.isString(message.orderBy)) + return "orderBy: string expected"; + return null; + }; + + /** + * Creates a ListFeaturesRequest message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.v1alpha.ListFeaturesRequest + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.v1alpha.ListFeaturesRequest} ListFeaturesRequest + */ + ListFeaturesRequest.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.v1alpha.ListFeaturesRequest) + return object; + var message = new $root.google.cloud.gkehub.v1alpha.ListFeaturesRequest(); + if (object.parent != null) + message.parent = String(object.parent); + if (object.pageSize != null) + message.pageSize = object.pageSize | 0; + if (object.pageToken != null) + message.pageToken = String(object.pageToken); + if (object.filter != null) + message.filter = String(object.filter); + if (object.orderBy != null) + message.orderBy = String(object.orderBy); + return message; + }; + + /** + * Creates a plain object from a ListFeaturesRequest message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.v1alpha.ListFeaturesRequest + * @static + * @param {google.cloud.gkehub.v1alpha.ListFeaturesRequest} message ListFeaturesRequest + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + ListFeaturesRequest.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.parent = ""; + object.pageSize = 0; + object.pageToken = ""; + object.filter = ""; + object.orderBy = ""; + } + if (message.parent != null && message.hasOwnProperty("parent")) + object.parent = message.parent; + if (message.pageSize != null && message.hasOwnProperty("pageSize")) + object.pageSize = message.pageSize; + if (message.pageToken != null && message.hasOwnProperty("pageToken")) + object.pageToken = message.pageToken; + if (message.filter != null && message.hasOwnProperty("filter")) + object.filter = message.filter; + if (message.orderBy != null && message.hasOwnProperty("orderBy")) + object.orderBy = message.orderBy; + return object; + }; + + /** + * Converts this ListFeaturesRequest to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.v1alpha.ListFeaturesRequest + * @instance + * @returns {Object.} JSON object + */ + ListFeaturesRequest.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return ListFeaturesRequest; + })(); + + v1alpha.ListFeaturesResponse = (function() { + + /** + * Properties of a ListFeaturesResponse. + * @memberof google.cloud.gkehub.v1alpha + * @interface IListFeaturesResponse + * @property {Array.|null} [resources] ListFeaturesResponse resources + * @property {string|null} [nextPageToken] ListFeaturesResponse nextPageToken + */ + + /** + * Constructs a new ListFeaturesResponse. + * @memberof google.cloud.gkehub.v1alpha + * @classdesc Represents a ListFeaturesResponse. + * @implements IListFeaturesResponse + * @constructor + * @param {google.cloud.gkehub.v1alpha.IListFeaturesResponse=} [properties] Properties to set + */ + function ListFeaturesResponse(properties) { + this.resources = []; + 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]]; + } + + /** + * ListFeaturesResponse resources. + * @member {Array.} resources + * @memberof google.cloud.gkehub.v1alpha.ListFeaturesResponse + * @instance + */ + ListFeaturesResponse.prototype.resources = $util.emptyArray; + + /** + * ListFeaturesResponse nextPageToken. + * @member {string} nextPageToken + * @memberof google.cloud.gkehub.v1alpha.ListFeaturesResponse + * @instance + */ + ListFeaturesResponse.prototype.nextPageToken = ""; + + /** + * Creates a new ListFeaturesResponse instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.v1alpha.ListFeaturesResponse + * @static + * @param {google.cloud.gkehub.v1alpha.IListFeaturesResponse=} [properties] Properties to set + * @returns {google.cloud.gkehub.v1alpha.ListFeaturesResponse} ListFeaturesResponse instance + */ + ListFeaturesResponse.create = function create(properties) { + return new ListFeaturesResponse(properties); + }; + + /** + * Encodes the specified ListFeaturesResponse message. Does not implicitly {@link google.cloud.gkehub.v1alpha.ListFeaturesResponse.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.v1alpha.ListFeaturesResponse + * @static + * @param {google.cloud.gkehub.v1alpha.IListFeaturesResponse} message ListFeaturesResponse message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + ListFeaturesResponse.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.resources != null && message.resources.length) + for (var i = 0; i < message.resources.length; ++i) + $root.google.cloud.gkehub.v1alpha.Feature.encode(message.resources[i], writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim(); + if (message.nextPageToken != null && Object.hasOwnProperty.call(message, "nextPageToken")) + writer.uint32(/* id 2, wireType 2 =*/18).string(message.nextPageToken); + return writer; + }; + + /** + * Encodes the specified ListFeaturesResponse message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1alpha.ListFeaturesResponse.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.v1alpha.ListFeaturesResponse + * @static + * @param {google.cloud.gkehub.v1alpha.IListFeaturesResponse} message ListFeaturesResponse message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + ListFeaturesResponse.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a ListFeaturesResponse message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.v1alpha.ListFeaturesResponse + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.v1alpha.ListFeaturesResponse} ListFeaturesResponse + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + ListFeaturesResponse.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.v1alpha.ListFeaturesResponse(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + if (!(message.resources && message.resources.length)) + message.resources = []; + message.resources.push($root.google.cloud.gkehub.v1alpha.Feature.decode(reader, reader.uint32())); + break; + case 2: + message.nextPageToken = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a ListFeaturesResponse message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.v1alpha.ListFeaturesResponse + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.v1alpha.ListFeaturesResponse} ListFeaturesResponse + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + ListFeaturesResponse.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a ListFeaturesResponse message. + * @function verify + * @memberof google.cloud.gkehub.v1alpha.ListFeaturesResponse + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + ListFeaturesResponse.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.resources != null && message.hasOwnProperty("resources")) { + if (!Array.isArray(message.resources)) + return "resources: array expected"; + for (var i = 0; i < message.resources.length; ++i) { + var error = $root.google.cloud.gkehub.v1alpha.Feature.verify(message.resources[i]); + if (error) + return "resources." + error; + } + } + if (message.nextPageToken != null && message.hasOwnProperty("nextPageToken")) + if (!$util.isString(message.nextPageToken)) + return "nextPageToken: string expected"; + return null; + }; + + /** + * Creates a ListFeaturesResponse message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.v1alpha.ListFeaturesResponse + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.v1alpha.ListFeaturesResponse} ListFeaturesResponse + */ + ListFeaturesResponse.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.v1alpha.ListFeaturesResponse) + return object; + var message = new $root.google.cloud.gkehub.v1alpha.ListFeaturesResponse(); + if (object.resources) { + if (!Array.isArray(object.resources)) + throw TypeError(".google.cloud.gkehub.v1alpha.ListFeaturesResponse.resources: array expected"); + message.resources = []; + for (var i = 0; i < object.resources.length; ++i) { + if (typeof object.resources[i] !== "object") + throw TypeError(".google.cloud.gkehub.v1alpha.ListFeaturesResponse.resources: object expected"); + message.resources[i] = $root.google.cloud.gkehub.v1alpha.Feature.fromObject(object.resources[i]); + } + } + if (object.nextPageToken != null) + message.nextPageToken = String(object.nextPageToken); + return message; + }; + + /** + * Creates a plain object from a ListFeaturesResponse message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.v1alpha.ListFeaturesResponse + * @static + * @param {google.cloud.gkehub.v1alpha.ListFeaturesResponse} message ListFeaturesResponse + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + ListFeaturesResponse.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.arrays || options.defaults) + object.resources = []; + if (options.defaults) + object.nextPageToken = ""; + if (message.resources && message.resources.length) { + object.resources = []; + for (var j = 0; j < message.resources.length; ++j) + object.resources[j] = $root.google.cloud.gkehub.v1alpha.Feature.toObject(message.resources[j], options); + } + if (message.nextPageToken != null && message.hasOwnProperty("nextPageToken")) + object.nextPageToken = message.nextPageToken; + return object; + }; + + /** + * Converts this ListFeaturesResponse to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.v1alpha.ListFeaturesResponse + * @instance + * @returns {Object.} JSON object + */ + ListFeaturesResponse.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return ListFeaturesResponse; + })(); + + v1alpha.GetFeatureRequest = (function() { + + /** + * Properties of a GetFeatureRequest. + * @memberof google.cloud.gkehub.v1alpha + * @interface IGetFeatureRequest + * @property {string|null} [name] GetFeatureRequest name + */ + + /** + * Constructs a new GetFeatureRequest. + * @memberof google.cloud.gkehub.v1alpha + * @classdesc Represents a GetFeatureRequest. + * @implements IGetFeatureRequest + * @constructor + * @param {google.cloud.gkehub.v1alpha.IGetFeatureRequest=} [properties] Properties to set + */ + function GetFeatureRequest(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]]; + } + + /** + * GetFeatureRequest name. + * @member {string} name + * @memberof google.cloud.gkehub.v1alpha.GetFeatureRequest + * @instance + */ + GetFeatureRequest.prototype.name = ""; + + /** + * Creates a new GetFeatureRequest instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.v1alpha.GetFeatureRequest + * @static + * @param {google.cloud.gkehub.v1alpha.IGetFeatureRequest=} [properties] Properties to set + * @returns {google.cloud.gkehub.v1alpha.GetFeatureRequest} GetFeatureRequest instance + */ + GetFeatureRequest.create = function create(properties) { + return new GetFeatureRequest(properties); + }; + + /** + * Encodes the specified GetFeatureRequest message. Does not implicitly {@link google.cloud.gkehub.v1alpha.GetFeatureRequest.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.v1alpha.GetFeatureRequest + * @static + * @param {google.cloud.gkehub.v1alpha.IGetFeatureRequest} message GetFeatureRequest message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + GetFeatureRequest.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.name != null && Object.hasOwnProperty.call(message, "name")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.name); + return writer; + }; + + /** + * Encodes the specified GetFeatureRequest message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1alpha.GetFeatureRequest.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.v1alpha.GetFeatureRequest + * @static + * @param {google.cloud.gkehub.v1alpha.IGetFeatureRequest} message GetFeatureRequest message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + GetFeatureRequest.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a GetFeatureRequest message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.v1alpha.GetFeatureRequest + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.v1alpha.GetFeatureRequest} GetFeatureRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + GetFeatureRequest.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.v1alpha.GetFeatureRequest(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.name = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a GetFeatureRequest message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.v1alpha.GetFeatureRequest + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.v1alpha.GetFeatureRequest} GetFeatureRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + GetFeatureRequest.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a GetFeatureRequest message. + * @function verify + * @memberof google.cloud.gkehub.v1alpha.GetFeatureRequest + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + GetFeatureRequest.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.name != null && message.hasOwnProperty("name")) + if (!$util.isString(message.name)) + return "name: string expected"; + return null; + }; + + /** + * Creates a GetFeatureRequest message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.v1alpha.GetFeatureRequest + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.v1alpha.GetFeatureRequest} GetFeatureRequest + */ + GetFeatureRequest.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.v1alpha.GetFeatureRequest) + return object; + var message = new $root.google.cloud.gkehub.v1alpha.GetFeatureRequest(); + if (object.name != null) + message.name = String(object.name); + return message; + }; + + /** + * Creates a plain object from a GetFeatureRequest message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.v1alpha.GetFeatureRequest + * @static + * @param {google.cloud.gkehub.v1alpha.GetFeatureRequest} message GetFeatureRequest + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + GetFeatureRequest.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) + object.name = ""; + if (message.name != null && message.hasOwnProperty("name")) + object.name = message.name; + return object; + }; + + /** + * Converts this GetFeatureRequest to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.v1alpha.GetFeatureRequest + * @instance + * @returns {Object.} JSON object + */ + GetFeatureRequest.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return GetFeatureRequest; + })(); + + v1alpha.CreateFeatureRequest = (function() { + + /** + * Properties of a CreateFeatureRequest. + * @memberof google.cloud.gkehub.v1alpha + * @interface ICreateFeatureRequest + * @property {string|null} [parent] CreateFeatureRequest parent + * @property {string|null} [featureId] CreateFeatureRequest featureId + * @property {google.cloud.gkehub.v1alpha.IFeature|null} [resource] CreateFeatureRequest resource + * @property {string|null} [requestId] CreateFeatureRequest requestId + */ + + /** + * Constructs a new CreateFeatureRequest. + * @memberof google.cloud.gkehub.v1alpha + * @classdesc Represents a CreateFeatureRequest. + * @implements ICreateFeatureRequest + * @constructor + * @param {google.cloud.gkehub.v1alpha.ICreateFeatureRequest=} [properties] Properties to set + */ + function CreateFeatureRequest(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]]; + } + + /** + * CreateFeatureRequest parent. + * @member {string} parent + * @memberof google.cloud.gkehub.v1alpha.CreateFeatureRequest + * @instance + */ + CreateFeatureRequest.prototype.parent = ""; + + /** + * CreateFeatureRequest featureId. + * @member {string} featureId + * @memberof google.cloud.gkehub.v1alpha.CreateFeatureRequest + * @instance + */ + CreateFeatureRequest.prototype.featureId = ""; + + /** + * CreateFeatureRequest resource. + * @member {google.cloud.gkehub.v1alpha.IFeature|null|undefined} resource + * @memberof google.cloud.gkehub.v1alpha.CreateFeatureRequest + * @instance + */ + CreateFeatureRequest.prototype.resource = null; + + /** + * CreateFeatureRequest requestId. + * @member {string} requestId + * @memberof google.cloud.gkehub.v1alpha.CreateFeatureRequest + * @instance + */ + CreateFeatureRequest.prototype.requestId = ""; + + /** + * Creates a new CreateFeatureRequest instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.v1alpha.CreateFeatureRequest + * @static + * @param {google.cloud.gkehub.v1alpha.ICreateFeatureRequest=} [properties] Properties to set + * @returns {google.cloud.gkehub.v1alpha.CreateFeatureRequest} CreateFeatureRequest instance + */ + CreateFeatureRequest.create = function create(properties) { + return new CreateFeatureRequest(properties); + }; + + /** + * Encodes the specified CreateFeatureRequest message. Does not implicitly {@link google.cloud.gkehub.v1alpha.CreateFeatureRequest.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.v1alpha.CreateFeatureRequest + * @static + * @param {google.cloud.gkehub.v1alpha.ICreateFeatureRequest} message CreateFeatureRequest message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + CreateFeatureRequest.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.parent != null && Object.hasOwnProperty.call(message, "parent")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.parent); + if (message.featureId != null && Object.hasOwnProperty.call(message, "featureId")) + writer.uint32(/* id 2, wireType 2 =*/18).string(message.featureId); + if (message.resource != null && Object.hasOwnProperty.call(message, "resource")) + $root.google.cloud.gkehub.v1alpha.Feature.encode(message.resource, writer.uint32(/* id 3, wireType 2 =*/26).fork()).ldelim(); + if (message.requestId != null && Object.hasOwnProperty.call(message, "requestId")) + writer.uint32(/* id 4, wireType 2 =*/34).string(message.requestId); + return writer; + }; + + /** + * Encodes the specified CreateFeatureRequest message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1alpha.CreateFeatureRequest.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.v1alpha.CreateFeatureRequest + * @static + * @param {google.cloud.gkehub.v1alpha.ICreateFeatureRequest} message CreateFeatureRequest message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + CreateFeatureRequest.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a CreateFeatureRequest message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.v1alpha.CreateFeatureRequest + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.v1alpha.CreateFeatureRequest} CreateFeatureRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + CreateFeatureRequest.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.v1alpha.CreateFeatureRequest(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.parent = reader.string(); + break; + case 2: + message.featureId = reader.string(); + break; + case 3: + message.resource = $root.google.cloud.gkehub.v1alpha.Feature.decode(reader, reader.uint32()); + break; + case 4: + message.requestId = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a CreateFeatureRequest message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.v1alpha.CreateFeatureRequest + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.v1alpha.CreateFeatureRequest} CreateFeatureRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + CreateFeatureRequest.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a CreateFeatureRequest message. + * @function verify + * @memberof google.cloud.gkehub.v1alpha.CreateFeatureRequest + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + CreateFeatureRequest.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.parent != null && message.hasOwnProperty("parent")) + if (!$util.isString(message.parent)) + return "parent: string expected"; + if (message.featureId != null && message.hasOwnProperty("featureId")) + if (!$util.isString(message.featureId)) + return "featureId: string expected"; + if (message.resource != null && message.hasOwnProperty("resource")) { + var error = $root.google.cloud.gkehub.v1alpha.Feature.verify(message.resource); + if (error) + return "resource." + error; + } + if (message.requestId != null && message.hasOwnProperty("requestId")) + if (!$util.isString(message.requestId)) + return "requestId: string expected"; + return null; + }; + + /** + * Creates a CreateFeatureRequest message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.v1alpha.CreateFeatureRequest + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.v1alpha.CreateFeatureRequest} CreateFeatureRequest + */ + CreateFeatureRequest.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.v1alpha.CreateFeatureRequest) + return object; + var message = new $root.google.cloud.gkehub.v1alpha.CreateFeatureRequest(); + if (object.parent != null) + message.parent = String(object.parent); + if (object.featureId != null) + message.featureId = String(object.featureId); + if (object.resource != null) { + if (typeof object.resource !== "object") + throw TypeError(".google.cloud.gkehub.v1alpha.CreateFeatureRequest.resource: object expected"); + message.resource = $root.google.cloud.gkehub.v1alpha.Feature.fromObject(object.resource); + } + if (object.requestId != null) + message.requestId = String(object.requestId); + return message; + }; + + /** + * Creates a plain object from a CreateFeatureRequest message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.v1alpha.CreateFeatureRequest + * @static + * @param {google.cloud.gkehub.v1alpha.CreateFeatureRequest} message CreateFeatureRequest + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + CreateFeatureRequest.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.parent = ""; + object.featureId = ""; + object.resource = null; + object.requestId = ""; + } + if (message.parent != null && message.hasOwnProperty("parent")) + object.parent = message.parent; + if (message.featureId != null && message.hasOwnProperty("featureId")) + object.featureId = message.featureId; + if (message.resource != null && message.hasOwnProperty("resource")) + object.resource = $root.google.cloud.gkehub.v1alpha.Feature.toObject(message.resource, options); + if (message.requestId != null && message.hasOwnProperty("requestId")) + object.requestId = message.requestId; + return object; + }; + + /** + * Converts this CreateFeatureRequest to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.v1alpha.CreateFeatureRequest + * @instance + * @returns {Object.} JSON object + */ + CreateFeatureRequest.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return CreateFeatureRequest; + })(); + + v1alpha.DeleteFeatureRequest = (function() { + + /** + * Properties of a DeleteFeatureRequest. + * @memberof google.cloud.gkehub.v1alpha + * @interface IDeleteFeatureRequest + * @property {string|null} [name] DeleteFeatureRequest name + * @property {boolean|null} [force] DeleteFeatureRequest force + * @property {string|null} [requestId] DeleteFeatureRequest requestId + */ + + /** + * Constructs a new DeleteFeatureRequest. + * @memberof google.cloud.gkehub.v1alpha + * @classdesc Represents a DeleteFeatureRequest. + * @implements IDeleteFeatureRequest + * @constructor + * @param {google.cloud.gkehub.v1alpha.IDeleteFeatureRequest=} [properties] Properties to set + */ + function DeleteFeatureRequest(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]]; + } + + /** + * DeleteFeatureRequest name. + * @member {string} name + * @memberof google.cloud.gkehub.v1alpha.DeleteFeatureRequest + * @instance + */ + DeleteFeatureRequest.prototype.name = ""; + + /** + * DeleteFeatureRequest force. + * @member {boolean} force + * @memberof google.cloud.gkehub.v1alpha.DeleteFeatureRequest + * @instance + */ + DeleteFeatureRequest.prototype.force = false; + + /** + * DeleteFeatureRequest requestId. + * @member {string} requestId + * @memberof google.cloud.gkehub.v1alpha.DeleteFeatureRequest + * @instance + */ + DeleteFeatureRequest.prototype.requestId = ""; + + /** + * Creates a new DeleteFeatureRequest instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.v1alpha.DeleteFeatureRequest + * @static + * @param {google.cloud.gkehub.v1alpha.IDeleteFeatureRequest=} [properties] Properties to set + * @returns {google.cloud.gkehub.v1alpha.DeleteFeatureRequest} DeleteFeatureRequest instance + */ + DeleteFeatureRequest.create = function create(properties) { + return new DeleteFeatureRequest(properties); + }; + + /** + * Encodes the specified DeleteFeatureRequest message. Does not implicitly {@link google.cloud.gkehub.v1alpha.DeleteFeatureRequest.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.v1alpha.DeleteFeatureRequest + * @static + * @param {google.cloud.gkehub.v1alpha.IDeleteFeatureRequest} message DeleteFeatureRequest message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + DeleteFeatureRequest.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.name != null && Object.hasOwnProperty.call(message, "name")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.name); + if (message.force != null && Object.hasOwnProperty.call(message, "force")) + writer.uint32(/* id 2, wireType 0 =*/16).bool(message.force); + if (message.requestId != null && Object.hasOwnProperty.call(message, "requestId")) + writer.uint32(/* id 3, wireType 2 =*/26).string(message.requestId); + return writer; + }; + + /** + * Encodes the specified DeleteFeatureRequest message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1alpha.DeleteFeatureRequest.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.v1alpha.DeleteFeatureRequest + * @static + * @param {google.cloud.gkehub.v1alpha.IDeleteFeatureRequest} message DeleteFeatureRequest message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + DeleteFeatureRequest.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a DeleteFeatureRequest message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.v1alpha.DeleteFeatureRequest + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from * @param {number} [length] Message length if known beforehand - * @returns {google.cloud.gkehub.v1beta1.Membership} Membership + * @returns {google.cloud.gkehub.v1alpha.DeleteFeatureRequest} DeleteFeatureRequest * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Membership.decode = function decode(reader, length) { + DeleteFeatureRequest.decode = function decode(reader, length) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); - var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.v1beta1.Membership(), key, value; + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.v1alpha.DeleteFeatureRequest(); while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { @@ -609,59 +41805,10 @@ message.name = reader.string(); break; case 2: - 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; + message.force = reader.bool(); break; case 3: - message.description = reader.string(); - break; - case 4: - message.endpoint = $root.google.cloud.gkehub.v1beta1.MembershipEndpoint.decode(reader, reader.uint32()); - break; - case 5: - message.state = $root.google.cloud.gkehub.v1beta1.MembershipState.decode(reader, reader.uint32()); - break; - case 9: - message.authority = $root.google.cloud.gkehub.v1beta1.Authority.decode(reader, reader.uint32()); - break; - case 6: - message.createTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); - break; - case 7: - message.updateTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); - break; - case 8: - message.deleteTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); - break; - case 10: - message.externalId = reader.string(); - break; - case 11: - message.lastConnectionTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); - break; - case 12: - message.uniqueId = reader.string(); - break; - case 13: - message.infrastructureType = reader.int32(); + message.requestId = reader.string(); break; default: reader.skipType(tag & 7); @@ -672,296 +41819,127 @@ }; /** - * Decodes a Membership message from the specified reader or buffer, length delimited. + * Decodes a DeleteFeatureRequest message from the specified reader or buffer, length delimited. * @function decodeDelimited - * @memberof google.cloud.gkehub.v1beta1.Membership + * @memberof google.cloud.gkehub.v1alpha.DeleteFeatureRequest * @static * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {google.cloud.gkehub.v1beta1.Membership} Membership + * @returns {google.cloud.gkehub.v1alpha.DeleteFeatureRequest} DeleteFeatureRequest * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Membership.decodeDelimited = function decodeDelimited(reader) { + DeleteFeatureRequest.decodeDelimited = function decodeDelimited(reader) { if (!(reader instanceof $Reader)) reader = new $Reader(reader); return this.decode(reader, reader.uint32()); }; /** - * Verifies a Membership message. + * Verifies a DeleteFeatureRequest message. * @function verify - * @memberof google.cloud.gkehub.v1beta1.Membership + * @memberof google.cloud.gkehub.v1alpha.DeleteFeatureRequest * @static * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Membership.verify = function verify(message) { + DeleteFeatureRequest.verify = function verify(message) { if (typeof message !== "object" || message === null) return "object expected"; - var properties = {}; - if (message.name != null && message.hasOwnProperty("name")) - if (!$util.isString(message.name)) - return "name: 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.description != null && message.hasOwnProperty("description")) - if (!$util.isString(message.description)) - return "description: string expected"; - if (message.endpoint != null && message.hasOwnProperty("endpoint")) { - properties.type = 1; - { - var error = $root.google.cloud.gkehub.v1beta1.MembershipEndpoint.verify(message.endpoint); - if (error) - return "endpoint." + error; - } - } - if (message.state != null && message.hasOwnProperty("state")) { - var error = $root.google.cloud.gkehub.v1beta1.MembershipState.verify(message.state); - if (error) - return "state." + error; - } - if (message.authority != null && message.hasOwnProperty("authority")) { - var error = $root.google.cloud.gkehub.v1beta1.Authority.verify(message.authority); - if (error) - return "authority." + error; - } - if (message.createTime != null && message.hasOwnProperty("createTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.createTime); - if (error) - return "createTime." + error; - } - if (message.updateTime != null && message.hasOwnProperty("updateTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.updateTime); - if (error) - return "updateTime." + error; - } - if (message.deleteTime != null && message.hasOwnProperty("deleteTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.deleteTime); - if (error) - return "deleteTime." + error; - } - if (message.externalId != null && message.hasOwnProperty("externalId")) - if (!$util.isString(message.externalId)) - return "externalId: string expected"; - if (message.lastConnectionTime != null && message.hasOwnProperty("lastConnectionTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.lastConnectionTime); - if (error) - return "lastConnectionTime." + error; - } - if (message.uniqueId != null && message.hasOwnProperty("uniqueId")) - if (!$util.isString(message.uniqueId)) - return "uniqueId: string expected"; - if (message.infrastructureType != null && message.hasOwnProperty("infrastructureType")) - switch (message.infrastructureType) { - default: - return "infrastructureType: enum value expected"; - case 0: - case 1: - case 2: - break; - } + if (message.name != null && message.hasOwnProperty("name")) + if (!$util.isString(message.name)) + return "name: string expected"; + if (message.force != null && message.hasOwnProperty("force")) + if (typeof message.force !== "boolean") + return "force: boolean expected"; + if (message.requestId != null && message.hasOwnProperty("requestId")) + if (!$util.isString(message.requestId)) + return "requestId: string expected"; return null; }; /** - * Creates a Membership message from a plain object. Also converts values to their respective internal types. + * Creates a DeleteFeatureRequest message from a plain object. Also converts values to their respective internal types. * @function fromObject - * @memberof google.cloud.gkehub.v1beta1.Membership + * @memberof google.cloud.gkehub.v1alpha.DeleteFeatureRequest * @static * @param {Object.} object Plain object - * @returns {google.cloud.gkehub.v1beta1.Membership} Membership + * @returns {google.cloud.gkehub.v1alpha.DeleteFeatureRequest} DeleteFeatureRequest */ - Membership.fromObject = function fromObject(object) { - if (object instanceof $root.google.cloud.gkehub.v1beta1.Membership) + DeleteFeatureRequest.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.v1alpha.DeleteFeatureRequest) return object; - var message = new $root.google.cloud.gkehub.v1beta1.Membership(); + var message = new $root.google.cloud.gkehub.v1alpha.DeleteFeatureRequest(); if (object.name != null) message.name = String(object.name); - if (object.labels) { - if (typeof object.labels !== "object") - throw TypeError(".google.cloud.gkehub.v1beta1.Membership.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.description != null) - message.description = String(object.description); - if (object.endpoint != null) { - if (typeof object.endpoint !== "object") - throw TypeError(".google.cloud.gkehub.v1beta1.Membership.endpoint: object expected"); - message.endpoint = $root.google.cloud.gkehub.v1beta1.MembershipEndpoint.fromObject(object.endpoint); - } - if (object.state != null) { - if (typeof object.state !== "object") - throw TypeError(".google.cloud.gkehub.v1beta1.Membership.state: object expected"); - message.state = $root.google.cloud.gkehub.v1beta1.MembershipState.fromObject(object.state); - } - if (object.authority != null) { - if (typeof object.authority !== "object") - throw TypeError(".google.cloud.gkehub.v1beta1.Membership.authority: object expected"); - message.authority = $root.google.cloud.gkehub.v1beta1.Authority.fromObject(object.authority); - } - if (object.createTime != null) { - if (typeof object.createTime !== "object") - throw TypeError(".google.cloud.gkehub.v1beta1.Membership.createTime: object expected"); - message.createTime = $root.google.protobuf.Timestamp.fromObject(object.createTime); - } - if (object.updateTime != null) { - if (typeof object.updateTime !== "object") - throw TypeError(".google.cloud.gkehub.v1beta1.Membership.updateTime: object expected"); - message.updateTime = $root.google.protobuf.Timestamp.fromObject(object.updateTime); - } - if (object.deleteTime != null) { - if (typeof object.deleteTime !== "object") - throw TypeError(".google.cloud.gkehub.v1beta1.Membership.deleteTime: object expected"); - message.deleteTime = $root.google.protobuf.Timestamp.fromObject(object.deleteTime); - } - if (object.externalId != null) - message.externalId = String(object.externalId); - if (object.lastConnectionTime != null) { - if (typeof object.lastConnectionTime !== "object") - throw TypeError(".google.cloud.gkehub.v1beta1.Membership.lastConnectionTime: object expected"); - message.lastConnectionTime = $root.google.protobuf.Timestamp.fromObject(object.lastConnectionTime); - } - if (object.uniqueId != null) - message.uniqueId = String(object.uniqueId); - switch (object.infrastructureType) { - case "INFRASTRUCTURE_TYPE_UNSPECIFIED": - case 0: - message.infrastructureType = 0; - break; - case "ON_PREM": - case 1: - message.infrastructureType = 1; - break; - case "MULTI_CLOUD": - case 2: - message.infrastructureType = 2; - break; - } + if (object.force != null) + message.force = Boolean(object.force); + if (object.requestId != null) + message.requestId = String(object.requestId); return message; }; /** - * Creates a plain object from a Membership message. Also converts values to other types if specified. + * Creates a plain object from a DeleteFeatureRequest message. Also converts values to other types if specified. * @function toObject - * @memberof google.cloud.gkehub.v1beta1.Membership + * @memberof google.cloud.gkehub.v1alpha.DeleteFeatureRequest * @static - * @param {google.cloud.gkehub.v1beta1.Membership} message Membership + * @param {google.cloud.gkehub.v1alpha.DeleteFeatureRequest} message DeleteFeatureRequest * @param {$protobuf.IConversionOptions} [options] Conversion options * @returns {Object.} Plain object */ - Membership.toObject = function toObject(message, options) { + DeleteFeatureRequest.toObject = function toObject(message, options) { if (!options) options = {}; var object = {}; - if (options.objects || options.defaults) - object.labels = {}; if (options.defaults) { object.name = ""; - object.description = ""; - object.state = null; - object.createTime = null; - object.updateTime = null; - object.deleteTime = null; - object.authority = null; - object.externalId = ""; - object.lastConnectionTime = null; - object.uniqueId = ""; - object.infrastructureType = options.enums === String ? "INFRASTRUCTURE_TYPE_UNSPECIFIED" : 0; + object.force = false; + object.requestId = ""; } if (message.name != null && message.hasOwnProperty("name")) object.name = message.name; - 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]]; - } - if (message.description != null && message.hasOwnProperty("description")) - object.description = message.description; - if (message.endpoint != null && message.hasOwnProperty("endpoint")) { - object.endpoint = $root.google.cloud.gkehub.v1beta1.MembershipEndpoint.toObject(message.endpoint, options); - if (options.oneofs) - object.type = "endpoint"; - } - if (message.state != null && message.hasOwnProperty("state")) - object.state = $root.google.cloud.gkehub.v1beta1.MembershipState.toObject(message.state, options); - if (message.createTime != null && message.hasOwnProperty("createTime")) - object.createTime = $root.google.protobuf.Timestamp.toObject(message.createTime, options); - if (message.updateTime != null && message.hasOwnProperty("updateTime")) - object.updateTime = $root.google.protobuf.Timestamp.toObject(message.updateTime, options); - if (message.deleteTime != null && message.hasOwnProperty("deleteTime")) - object.deleteTime = $root.google.protobuf.Timestamp.toObject(message.deleteTime, options); - if (message.authority != null && message.hasOwnProperty("authority")) - object.authority = $root.google.cloud.gkehub.v1beta1.Authority.toObject(message.authority, options); - if (message.externalId != null && message.hasOwnProperty("externalId")) - object.externalId = message.externalId; - if (message.lastConnectionTime != null && message.hasOwnProperty("lastConnectionTime")) - object.lastConnectionTime = $root.google.protobuf.Timestamp.toObject(message.lastConnectionTime, options); - if (message.uniqueId != null && message.hasOwnProperty("uniqueId")) - object.uniqueId = message.uniqueId; - if (message.infrastructureType != null && message.hasOwnProperty("infrastructureType")) - object.infrastructureType = options.enums === String ? $root.google.cloud.gkehub.v1beta1.Membership.InfrastructureType[message.infrastructureType] : message.infrastructureType; + if (message.force != null && message.hasOwnProperty("force")) + object.force = message.force; + if (message.requestId != null && message.hasOwnProperty("requestId")) + object.requestId = message.requestId; return object; }; /** - * Converts this Membership to JSON. + * Converts this DeleteFeatureRequest to JSON. * @function toJSON - * @memberof google.cloud.gkehub.v1beta1.Membership + * @memberof google.cloud.gkehub.v1alpha.DeleteFeatureRequest * @instance * @returns {Object.} JSON object */ - Membership.prototype.toJSON = function toJSON() { + DeleteFeatureRequest.prototype.toJSON = function toJSON() { return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; - /** - * InfrastructureType enum. - * @name google.cloud.gkehub.v1beta1.Membership.InfrastructureType - * @enum {number} - * @property {number} INFRASTRUCTURE_TYPE_UNSPECIFIED=0 INFRASTRUCTURE_TYPE_UNSPECIFIED value - * @property {number} ON_PREM=1 ON_PREM value - * @property {number} MULTI_CLOUD=2 MULTI_CLOUD value - */ - Membership.InfrastructureType = (function() { - var valuesById = {}, values = Object.create(valuesById); - values[valuesById[0] = "INFRASTRUCTURE_TYPE_UNSPECIFIED"] = 0; - values[valuesById[1] = "ON_PREM"] = 1; - values[valuesById[2] = "MULTI_CLOUD"] = 2; - return values; - })(); - - return Membership; + return DeleteFeatureRequest; })(); - v1beta1.MembershipEndpoint = (function() { + v1alpha.UpdateFeatureRequest = (function() { /** - * Properties of a MembershipEndpoint. - * @memberof google.cloud.gkehub.v1beta1 - * @interface IMembershipEndpoint - * @property {google.cloud.gkehub.v1beta1.IGkeCluster|null} [gkeCluster] MembershipEndpoint gkeCluster - * @property {google.cloud.gkehub.v1beta1.IKubernetesMetadata|null} [kubernetesMetadata] MembershipEndpoint kubernetesMetadata - * @property {google.cloud.gkehub.v1beta1.IKubernetesResource|null} [kubernetesResource] MembershipEndpoint kubernetesResource + * Properties of an UpdateFeatureRequest. + * @memberof google.cloud.gkehub.v1alpha + * @interface IUpdateFeatureRequest + * @property {string|null} [name] UpdateFeatureRequest name + * @property {google.protobuf.IFieldMask|null} [updateMask] UpdateFeatureRequest updateMask + * @property {google.cloud.gkehub.v1alpha.IFeature|null} [resource] UpdateFeatureRequest resource + * @property {string|null} [requestId] UpdateFeatureRequest requestId */ /** - * Constructs a new MembershipEndpoint. - * @memberof google.cloud.gkehub.v1beta1 - * @classdesc Represents a MembershipEndpoint. - * @implements IMembershipEndpoint + * Constructs a new UpdateFeatureRequest. + * @memberof google.cloud.gkehub.v1alpha + * @classdesc Represents an UpdateFeatureRequest. + * @implements IUpdateFeatureRequest * @constructor - * @param {google.cloud.gkehub.v1beta1.IMembershipEndpoint=} [properties] Properties to set + * @param {google.cloud.gkehub.v1alpha.IUpdateFeatureRequest=} [properties] Properties to set */ - function MembershipEndpoint(properties) { + function UpdateFeatureRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) if (properties[keys[i]] != null) @@ -969,101 +41947,114 @@ } /** - * MembershipEndpoint gkeCluster. - * @member {google.cloud.gkehub.v1beta1.IGkeCluster|null|undefined} gkeCluster - * @memberof google.cloud.gkehub.v1beta1.MembershipEndpoint + * UpdateFeatureRequest name. + * @member {string} name + * @memberof google.cloud.gkehub.v1alpha.UpdateFeatureRequest * @instance */ - MembershipEndpoint.prototype.gkeCluster = null; + UpdateFeatureRequest.prototype.name = ""; /** - * MembershipEndpoint kubernetesMetadata. - * @member {google.cloud.gkehub.v1beta1.IKubernetesMetadata|null|undefined} kubernetesMetadata - * @memberof google.cloud.gkehub.v1beta1.MembershipEndpoint + * UpdateFeatureRequest updateMask. + * @member {google.protobuf.IFieldMask|null|undefined} updateMask + * @memberof google.cloud.gkehub.v1alpha.UpdateFeatureRequest * @instance */ - MembershipEndpoint.prototype.kubernetesMetadata = null; + UpdateFeatureRequest.prototype.updateMask = null; /** - * MembershipEndpoint kubernetesResource. - * @member {google.cloud.gkehub.v1beta1.IKubernetesResource|null|undefined} kubernetesResource - * @memberof google.cloud.gkehub.v1beta1.MembershipEndpoint + * UpdateFeatureRequest resource. + * @member {google.cloud.gkehub.v1alpha.IFeature|null|undefined} resource + * @memberof google.cloud.gkehub.v1alpha.UpdateFeatureRequest * @instance */ - MembershipEndpoint.prototype.kubernetesResource = null; + UpdateFeatureRequest.prototype.resource = null; /** - * Creates a new MembershipEndpoint instance using the specified properties. + * UpdateFeatureRequest requestId. + * @member {string} requestId + * @memberof google.cloud.gkehub.v1alpha.UpdateFeatureRequest + * @instance + */ + UpdateFeatureRequest.prototype.requestId = ""; + + /** + * Creates a new UpdateFeatureRequest instance using the specified properties. * @function create - * @memberof google.cloud.gkehub.v1beta1.MembershipEndpoint + * @memberof google.cloud.gkehub.v1alpha.UpdateFeatureRequest * @static - * @param {google.cloud.gkehub.v1beta1.IMembershipEndpoint=} [properties] Properties to set - * @returns {google.cloud.gkehub.v1beta1.MembershipEndpoint} MembershipEndpoint instance + * @param {google.cloud.gkehub.v1alpha.IUpdateFeatureRequest=} [properties] Properties to set + * @returns {google.cloud.gkehub.v1alpha.UpdateFeatureRequest} UpdateFeatureRequest instance */ - MembershipEndpoint.create = function create(properties) { - return new MembershipEndpoint(properties); + UpdateFeatureRequest.create = function create(properties) { + return new UpdateFeatureRequest(properties); }; /** - * Encodes the specified MembershipEndpoint message. Does not implicitly {@link google.cloud.gkehub.v1beta1.MembershipEndpoint.verify|verify} messages. + * Encodes the specified UpdateFeatureRequest message. Does not implicitly {@link google.cloud.gkehub.v1alpha.UpdateFeatureRequest.verify|verify} messages. * @function encode - * @memberof google.cloud.gkehub.v1beta1.MembershipEndpoint + * @memberof google.cloud.gkehub.v1alpha.UpdateFeatureRequest * @static - * @param {google.cloud.gkehub.v1beta1.IMembershipEndpoint} message MembershipEndpoint message or plain object to encode + * @param {google.cloud.gkehub.v1alpha.IUpdateFeatureRequest} message UpdateFeatureRequest message or plain object to encode * @param {$protobuf.Writer} [writer] Writer to encode to * @returns {$protobuf.Writer} Writer */ - MembershipEndpoint.encode = function encode(message, writer) { + UpdateFeatureRequest.encode = function encode(message, writer) { if (!writer) writer = $Writer.create(); - if (message.gkeCluster != null && Object.hasOwnProperty.call(message, "gkeCluster")) - $root.google.cloud.gkehub.v1beta1.GkeCluster.encode(message.gkeCluster, writer.uint32(/* id 4, wireType 2 =*/34).fork()).ldelim(); - if (message.kubernetesMetadata != null && Object.hasOwnProperty.call(message, "kubernetesMetadata")) - $root.google.cloud.gkehub.v1beta1.KubernetesMetadata.encode(message.kubernetesMetadata, writer.uint32(/* id 5, wireType 2 =*/42).fork()).ldelim(); - if (message.kubernetesResource != null && Object.hasOwnProperty.call(message, "kubernetesResource")) - $root.google.cloud.gkehub.v1beta1.KubernetesResource.encode(message.kubernetesResource, writer.uint32(/* id 6, wireType 2 =*/50).fork()).ldelim(); + if (message.name != null && Object.hasOwnProperty.call(message, "name")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.name); + if (message.updateMask != null && Object.hasOwnProperty.call(message, "updateMask")) + $root.google.protobuf.FieldMask.encode(message.updateMask, writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim(); + if (message.resource != null && Object.hasOwnProperty.call(message, "resource")) + $root.google.cloud.gkehub.v1alpha.Feature.encode(message.resource, writer.uint32(/* id 3, wireType 2 =*/26).fork()).ldelim(); + if (message.requestId != null && Object.hasOwnProperty.call(message, "requestId")) + writer.uint32(/* id 4, wireType 2 =*/34).string(message.requestId); return writer; }; /** - * Encodes the specified MembershipEndpoint message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta1.MembershipEndpoint.verify|verify} messages. + * Encodes the specified UpdateFeatureRequest message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1alpha.UpdateFeatureRequest.verify|verify} messages. * @function encodeDelimited - * @memberof google.cloud.gkehub.v1beta1.MembershipEndpoint + * @memberof google.cloud.gkehub.v1alpha.UpdateFeatureRequest * @static - * @param {google.cloud.gkehub.v1beta1.IMembershipEndpoint} message MembershipEndpoint message or plain object to encode + * @param {google.cloud.gkehub.v1alpha.IUpdateFeatureRequest} message UpdateFeatureRequest message or plain object to encode * @param {$protobuf.Writer} [writer] Writer to encode to * @returns {$protobuf.Writer} Writer */ - MembershipEndpoint.encodeDelimited = function encodeDelimited(message, writer) { + UpdateFeatureRequest.encodeDelimited = function encodeDelimited(message, writer) { return this.encode(message, writer).ldelim(); }; /** - * Decodes a MembershipEndpoint message from the specified reader or buffer. + * Decodes an UpdateFeatureRequest message from the specified reader or buffer. * @function decode - * @memberof google.cloud.gkehub.v1beta1.MembershipEndpoint + * @memberof google.cloud.gkehub.v1alpha.UpdateFeatureRequest * @static * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from * @param {number} [length] Message length if known beforehand - * @returns {google.cloud.gkehub.v1beta1.MembershipEndpoint} MembershipEndpoint + * @returns {google.cloud.gkehub.v1alpha.UpdateFeatureRequest} UpdateFeatureRequest * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - MembershipEndpoint.decode = function decode(reader, length) { + UpdateFeatureRequest.decode = function decode(reader, length) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); - var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.v1beta1.MembershipEndpoint(); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.v1alpha.UpdateFeatureRequest(); while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 4: - message.gkeCluster = $root.google.cloud.gkehub.v1beta1.GkeCluster.decode(reader, reader.uint32()); + case 1: + message.name = reader.string(); break; - case 5: - message.kubernetesMetadata = $root.google.cloud.gkehub.v1beta1.KubernetesMetadata.decode(reader, reader.uint32()); + case 2: + message.updateMask = $root.google.protobuf.FieldMask.decode(reader, reader.uint32()); break; - case 6: - message.kubernetesResource = $root.google.cloud.gkehub.v1beta1.KubernetesResource.decode(reader, reader.uint32()); + case 3: + message.resource = $root.google.cloud.gkehub.v1alpha.Feature.decode(reader, reader.uint32()); + break; + case 4: + message.requestId = reader.string(); break; default: reader.skipType(tag & 7); @@ -1074,144 +42065,148 @@ }; /** - * Decodes a MembershipEndpoint message from the specified reader or buffer, length delimited. + * Decodes an UpdateFeatureRequest message from the specified reader or buffer, length delimited. * @function decodeDelimited - * @memberof google.cloud.gkehub.v1beta1.MembershipEndpoint + * @memberof google.cloud.gkehub.v1alpha.UpdateFeatureRequest * @static * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {google.cloud.gkehub.v1beta1.MembershipEndpoint} MembershipEndpoint + * @returns {google.cloud.gkehub.v1alpha.UpdateFeatureRequest} UpdateFeatureRequest * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - MembershipEndpoint.decodeDelimited = function decodeDelimited(reader) { + UpdateFeatureRequest.decodeDelimited = function decodeDelimited(reader) { if (!(reader instanceof $Reader)) reader = new $Reader(reader); return this.decode(reader, reader.uint32()); }; /** - * Verifies a MembershipEndpoint message. + * Verifies an UpdateFeatureRequest message. * @function verify - * @memberof google.cloud.gkehub.v1beta1.MembershipEndpoint + * @memberof google.cloud.gkehub.v1alpha.UpdateFeatureRequest * @static * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - MembershipEndpoint.verify = function verify(message) { + UpdateFeatureRequest.verify = function verify(message) { if (typeof message !== "object" || message === null) return "object expected"; - if (message.gkeCluster != null && message.hasOwnProperty("gkeCluster")) { - var error = $root.google.cloud.gkehub.v1beta1.GkeCluster.verify(message.gkeCluster); - if (error) - return "gkeCluster." + error; - } - if (message.kubernetesMetadata != null && message.hasOwnProperty("kubernetesMetadata")) { - var error = $root.google.cloud.gkehub.v1beta1.KubernetesMetadata.verify(message.kubernetesMetadata); + if (message.name != null && message.hasOwnProperty("name")) + if (!$util.isString(message.name)) + return "name: string expected"; + if (message.updateMask != null && message.hasOwnProperty("updateMask")) { + var error = $root.google.protobuf.FieldMask.verify(message.updateMask); if (error) - return "kubernetesMetadata." + error; + return "updateMask." + error; } - if (message.kubernetesResource != null && message.hasOwnProperty("kubernetesResource")) { - var error = $root.google.cloud.gkehub.v1beta1.KubernetesResource.verify(message.kubernetesResource); + if (message.resource != null && message.hasOwnProperty("resource")) { + var error = $root.google.cloud.gkehub.v1alpha.Feature.verify(message.resource); if (error) - return "kubernetesResource." + error; + return "resource." + error; } + if (message.requestId != null && message.hasOwnProperty("requestId")) + if (!$util.isString(message.requestId)) + return "requestId: string expected"; return null; }; /** - * Creates a MembershipEndpoint message from a plain object. Also converts values to their respective internal types. + * Creates an UpdateFeatureRequest message from a plain object. Also converts values to their respective internal types. * @function fromObject - * @memberof google.cloud.gkehub.v1beta1.MembershipEndpoint + * @memberof google.cloud.gkehub.v1alpha.UpdateFeatureRequest * @static * @param {Object.} object Plain object - * @returns {google.cloud.gkehub.v1beta1.MembershipEndpoint} MembershipEndpoint + * @returns {google.cloud.gkehub.v1alpha.UpdateFeatureRequest} UpdateFeatureRequest */ - MembershipEndpoint.fromObject = function fromObject(object) { - if (object instanceof $root.google.cloud.gkehub.v1beta1.MembershipEndpoint) + UpdateFeatureRequest.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.v1alpha.UpdateFeatureRequest) return object; - var message = new $root.google.cloud.gkehub.v1beta1.MembershipEndpoint(); - if (object.gkeCluster != null) { - if (typeof object.gkeCluster !== "object") - throw TypeError(".google.cloud.gkehub.v1beta1.MembershipEndpoint.gkeCluster: object expected"); - message.gkeCluster = $root.google.cloud.gkehub.v1beta1.GkeCluster.fromObject(object.gkeCluster); - } - if (object.kubernetesMetadata != null) { - if (typeof object.kubernetesMetadata !== "object") - throw TypeError(".google.cloud.gkehub.v1beta1.MembershipEndpoint.kubernetesMetadata: object expected"); - message.kubernetesMetadata = $root.google.cloud.gkehub.v1beta1.KubernetesMetadata.fromObject(object.kubernetesMetadata); + var message = new $root.google.cloud.gkehub.v1alpha.UpdateFeatureRequest(); + if (object.name != null) + message.name = String(object.name); + if (object.updateMask != null) { + if (typeof object.updateMask !== "object") + throw TypeError(".google.cloud.gkehub.v1alpha.UpdateFeatureRequest.updateMask: object expected"); + message.updateMask = $root.google.protobuf.FieldMask.fromObject(object.updateMask); } - if (object.kubernetesResource != null) { - if (typeof object.kubernetesResource !== "object") - throw TypeError(".google.cloud.gkehub.v1beta1.MembershipEndpoint.kubernetesResource: object expected"); - message.kubernetesResource = $root.google.cloud.gkehub.v1beta1.KubernetesResource.fromObject(object.kubernetesResource); + if (object.resource != null) { + if (typeof object.resource !== "object") + throw TypeError(".google.cloud.gkehub.v1alpha.UpdateFeatureRequest.resource: object expected"); + message.resource = $root.google.cloud.gkehub.v1alpha.Feature.fromObject(object.resource); } + if (object.requestId != null) + message.requestId = String(object.requestId); return message; }; /** - * Creates a plain object from a MembershipEndpoint message. Also converts values to other types if specified. + * Creates a plain object from an UpdateFeatureRequest message. Also converts values to other types if specified. * @function toObject - * @memberof google.cloud.gkehub.v1beta1.MembershipEndpoint + * @memberof google.cloud.gkehub.v1alpha.UpdateFeatureRequest * @static - * @param {google.cloud.gkehub.v1beta1.MembershipEndpoint} message MembershipEndpoint + * @param {google.cloud.gkehub.v1alpha.UpdateFeatureRequest} message UpdateFeatureRequest * @param {$protobuf.IConversionOptions} [options] Conversion options * @returns {Object.} Plain object */ - MembershipEndpoint.toObject = function toObject(message, options) { + UpdateFeatureRequest.toObject = function toObject(message, options) { if (!options) options = {}; var object = {}; if (options.defaults) { - object.gkeCluster = null; - object.kubernetesMetadata = null; - object.kubernetesResource = null; + object.name = ""; + object.updateMask = null; + object.resource = null; + object.requestId = ""; } - if (message.gkeCluster != null && message.hasOwnProperty("gkeCluster")) - object.gkeCluster = $root.google.cloud.gkehub.v1beta1.GkeCluster.toObject(message.gkeCluster, options); - if (message.kubernetesMetadata != null && message.hasOwnProperty("kubernetesMetadata")) - object.kubernetesMetadata = $root.google.cloud.gkehub.v1beta1.KubernetesMetadata.toObject(message.kubernetesMetadata, options); - if (message.kubernetesResource != null && message.hasOwnProperty("kubernetesResource")) - object.kubernetesResource = $root.google.cloud.gkehub.v1beta1.KubernetesResource.toObject(message.kubernetesResource, options); + if (message.name != null && message.hasOwnProperty("name")) + object.name = message.name; + if (message.updateMask != null && message.hasOwnProperty("updateMask")) + object.updateMask = $root.google.protobuf.FieldMask.toObject(message.updateMask, options); + if (message.resource != null && message.hasOwnProperty("resource")) + object.resource = $root.google.cloud.gkehub.v1alpha.Feature.toObject(message.resource, options); + if (message.requestId != null && message.hasOwnProperty("requestId")) + object.requestId = message.requestId; return object; }; /** - * Converts this MembershipEndpoint to JSON. + * Converts this UpdateFeatureRequest to JSON. * @function toJSON - * @memberof google.cloud.gkehub.v1beta1.MembershipEndpoint + * @memberof google.cloud.gkehub.v1alpha.UpdateFeatureRequest * @instance * @returns {Object.} JSON object */ - MembershipEndpoint.prototype.toJSON = function toJSON() { + UpdateFeatureRequest.prototype.toJSON = function toJSON() { return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; - return MembershipEndpoint; + return UpdateFeatureRequest; })(); - v1beta1.KubernetesResource = (function() { + v1alpha.OperationMetadata = (function() { /** - * Properties of a KubernetesResource. - * @memberof google.cloud.gkehub.v1beta1 - * @interface IKubernetesResource - * @property {string|null} [membershipCrManifest] KubernetesResource membershipCrManifest - * @property {Array.|null} [membershipResources] KubernetesResource membershipResources - * @property {Array.|null} [connectResources] KubernetesResource connectResources - * @property {google.cloud.gkehub.v1beta1.IResourceOptions|null} [resourceOptions] KubernetesResource resourceOptions + * Properties of an OperationMetadata. + * @memberof google.cloud.gkehub.v1alpha + * @interface IOperationMetadata + * @property {google.protobuf.ITimestamp|null} [createTime] OperationMetadata createTime + * @property {google.protobuf.ITimestamp|null} [endTime] OperationMetadata endTime + * @property {string|null} [target] OperationMetadata target + * @property {string|null} [verb] OperationMetadata verb + * @property {string|null} [statusDetail] OperationMetadata statusDetail + * @property {boolean|null} [cancelRequested] OperationMetadata cancelRequested + * @property {string|null} [apiVersion] OperationMetadata apiVersion */ /** - * Constructs a new KubernetesResource. - * @memberof google.cloud.gkehub.v1beta1 - * @classdesc Represents a KubernetesResource. - * @implements IKubernetesResource + * Constructs a new OperationMetadata. + * @memberof google.cloud.gkehub.v1alpha + * @classdesc Represents an OperationMetadata. + * @implements IOperationMetadata * @constructor - * @param {google.cloud.gkehub.v1beta1.IKubernetesResource=} [properties] Properties to set + * @param {google.cloud.gkehub.v1alpha.IOperationMetadata=} [properties] Properties to set */ - function KubernetesResource(properties) { - this.membershipResources = []; - this.connectResources = []; + function OperationMetadata(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) if (properties[keys[i]] != null) @@ -1219,120 +42214,153 @@ } /** - * KubernetesResource membershipCrManifest. - * @member {string} membershipCrManifest - * @memberof google.cloud.gkehub.v1beta1.KubernetesResource + * OperationMetadata createTime. + * @member {google.protobuf.ITimestamp|null|undefined} createTime + * @memberof google.cloud.gkehub.v1alpha.OperationMetadata * @instance */ - KubernetesResource.prototype.membershipCrManifest = ""; + OperationMetadata.prototype.createTime = null; /** - * KubernetesResource membershipResources. - * @member {Array.} membershipResources - * @memberof google.cloud.gkehub.v1beta1.KubernetesResource + * OperationMetadata endTime. + * @member {google.protobuf.ITimestamp|null|undefined} endTime + * @memberof google.cloud.gkehub.v1alpha.OperationMetadata * @instance */ - KubernetesResource.prototype.membershipResources = $util.emptyArray; + OperationMetadata.prototype.endTime = null; /** - * KubernetesResource connectResources. - * @member {Array.} connectResources - * @memberof google.cloud.gkehub.v1beta1.KubernetesResource + * OperationMetadata target. + * @member {string} target + * @memberof google.cloud.gkehub.v1alpha.OperationMetadata * @instance */ - KubernetesResource.prototype.connectResources = $util.emptyArray; + OperationMetadata.prototype.target = ""; /** - * KubernetesResource resourceOptions. - * @member {google.cloud.gkehub.v1beta1.IResourceOptions|null|undefined} resourceOptions - * @memberof google.cloud.gkehub.v1beta1.KubernetesResource + * OperationMetadata verb. + * @member {string} verb + * @memberof google.cloud.gkehub.v1alpha.OperationMetadata * @instance */ - KubernetesResource.prototype.resourceOptions = null; + OperationMetadata.prototype.verb = ""; /** - * Creates a new KubernetesResource instance using the specified properties. + * OperationMetadata statusDetail. + * @member {string} statusDetail + * @memberof google.cloud.gkehub.v1alpha.OperationMetadata + * @instance + */ + OperationMetadata.prototype.statusDetail = ""; + + /** + * OperationMetadata cancelRequested. + * @member {boolean} cancelRequested + * @memberof google.cloud.gkehub.v1alpha.OperationMetadata + * @instance + */ + OperationMetadata.prototype.cancelRequested = false; + + /** + * OperationMetadata apiVersion. + * @member {string} apiVersion + * @memberof google.cloud.gkehub.v1alpha.OperationMetadata + * @instance + */ + OperationMetadata.prototype.apiVersion = ""; + + /** + * Creates a new OperationMetadata instance using the specified properties. * @function create - * @memberof google.cloud.gkehub.v1beta1.KubernetesResource + * @memberof google.cloud.gkehub.v1alpha.OperationMetadata * @static - * @param {google.cloud.gkehub.v1beta1.IKubernetesResource=} [properties] Properties to set - * @returns {google.cloud.gkehub.v1beta1.KubernetesResource} KubernetesResource instance + * @param {google.cloud.gkehub.v1alpha.IOperationMetadata=} [properties] Properties to set + * @returns {google.cloud.gkehub.v1alpha.OperationMetadata} OperationMetadata instance */ - KubernetesResource.create = function create(properties) { - return new KubernetesResource(properties); + OperationMetadata.create = function create(properties) { + return new OperationMetadata(properties); }; /** - * Encodes the specified KubernetesResource message. Does not implicitly {@link google.cloud.gkehub.v1beta1.KubernetesResource.verify|verify} messages. + * Encodes the specified OperationMetadata message. Does not implicitly {@link google.cloud.gkehub.v1alpha.OperationMetadata.verify|verify} messages. * @function encode - * @memberof google.cloud.gkehub.v1beta1.KubernetesResource + * @memberof google.cloud.gkehub.v1alpha.OperationMetadata * @static - * @param {google.cloud.gkehub.v1beta1.IKubernetesResource} message KubernetesResource message or plain object to encode + * @param {google.cloud.gkehub.v1alpha.IOperationMetadata} message OperationMetadata message or plain object to encode * @param {$protobuf.Writer} [writer] Writer to encode to * @returns {$protobuf.Writer} Writer */ - KubernetesResource.encode = function encode(message, writer) { + OperationMetadata.encode = function encode(message, writer) { if (!writer) writer = $Writer.create(); - if (message.membershipCrManifest != null && Object.hasOwnProperty.call(message, "membershipCrManifest")) - writer.uint32(/* id 1, wireType 2 =*/10).string(message.membershipCrManifest); - if (message.membershipResources != null && message.membershipResources.length) - for (var i = 0; i < message.membershipResources.length; ++i) - $root.google.cloud.gkehub.v1beta1.ResourceManifest.encode(message.membershipResources[i], writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim(); - if (message.connectResources != null && message.connectResources.length) - for (var i = 0; i < message.connectResources.length; ++i) - $root.google.cloud.gkehub.v1beta1.ResourceManifest.encode(message.connectResources[i], writer.uint32(/* id 3, wireType 2 =*/26).fork()).ldelim(); - if (message.resourceOptions != null && Object.hasOwnProperty.call(message, "resourceOptions")) - $root.google.cloud.gkehub.v1beta1.ResourceOptions.encode(message.resourceOptions, writer.uint32(/* id 4, wireType 2 =*/34).fork()).ldelim(); + if (message.createTime != null && Object.hasOwnProperty.call(message, "createTime")) + $root.google.protobuf.Timestamp.encode(message.createTime, writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim(); + if (message.endTime != null && Object.hasOwnProperty.call(message, "endTime")) + $root.google.protobuf.Timestamp.encode(message.endTime, writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim(); + if (message.target != null && Object.hasOwnProperty.call(message, "target")) + writer.uint32(/* id 3, wireType 2 =*/26).string(message.target); + if (message.verb != null && Object.hasOwnProperty.call(message, "verb")) + writer.uint32(/* id 4, wireType 2 =*/34).string(message.verb); + if (message.statusDetail != null && Object.hasOwnProperty.call(message, "statusDetail")) + writer.uint32(/* id 5, wireType 2 =*/42).string(message.statusDetail); + if (message.cancelRequested != null && Object.hasOwnProperty.call(message, "cancelRequested")) + writer.uint32(/* id 6, wireType 0 =*/48).bool(message.cancelRequested); + if (message.apiVersion != null && Object.hasOwnProperty.call(message, "apiVersion")) + writer.uint32(/* id 7, wireType 2 =*/58).string(message.apiVersion); return writer; }; /** - * Encodes the specified KubernetesResource message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta1.KubernetesResource.verify|verify} messages. + * Encodes the specified OperationMetadata message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1alpha.OperationMetadata.verify|verify} messages. * @function encodeDelimited - * @memberof google.cloud.gkehub.v1beta1.KubernetesResource + * @memberof google.cloud.gkehub.v1alpha.OperationMetadata * @static - * @param {google.cloud.gkehub.v1beta1.IKubernetesResource} message KubernetesResource message or plain object to encode + * @param {google.cloud.gkehub.v1alpha.IOperationMetadata} message OperationMetadata message or plain object to encode * @param {$protobuf.Writer} [writer] Writer to encode to * @returns {$protobuf.Writer} Writer */ - KubernetesResource.encodeDelimited = function encodeDelimited(message, writer) { + OperationMetadata.encodeDelimited = function encodeDelimited(message, writer) { return this.encode(message, writer).ldelim(); }; /** - * Decodes a KubernetesResource message from the specified reader or buffer. + * Decodes an OperationMetadata message from the specified reader or buffer. * @function decode - * @memberof google.cloud.gkehub.v1beta1.KubernetesResource + * @memberof google.cloud.gkehub.v1alpha.OperationMetadata * @static * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from * @param {number} [length] Message length if known beforehand - * @returns {google.cloud.gkehub.v1beta1.KubernetesResource} KubernetesResource + * @returns {google.cloud.gkehub.v1alpha.OperationMetadata} OperationMetadata * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - KubernetesResource.decode = function decode(reader, length) { + OperationMetadata.decode = function decode(reader, length) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); - var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.v1beta1.KubernetesResource(); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.v1alpha.OperationMetadata(); while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { case 1: - message.membershipCrManifest = reader.string(); + message.createTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); break; case 2: - if (!(message.membershipResources && message.membershipResources.length)) - message.membershipResources = []; - message.membershipResources.push($root.google.cloud.gkehub.v1beta1.ResourceManifest.decode(reader, reader.uint32())); + message.endTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); break; case 3: - if (!(message.connectResources && message.connectResources.length)) - message.connectResources = []; - message.connectResources.push($root.google.cloud.gkehub.v1beta1.ResourceManifest.decode(reader, reader.uint32())); + message.target = reader.string(); break; case 4: - message.resourceOptions = $root.google.cloud.gkehub.v1beta1.ResourceOptions.decode(reader, reader.uint32()); + message.verb = reader.string(); + break; + case 5: + message.statusDetail = reader.string(); + break; + case 6: + message.cancelRequested = reader.bool(); + break; + case 7: + message.apiVersion = reader.string(); break; default: reader.skipType(tag & 7); @@ -1343,384 +42371,2132 @@ }; /** - * Decodes a KubernetesResource message from the specified reader or buffer, length delimited. - * @function decodeDelimited - * @memberof google.cloud.gkehub.v1beta1.KubernetesResource + * Decodes an OperationMetadata message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.v1alpha.OperationMetadata + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.v1alpha.OperationMetadata} OperationMetadata + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + OperationMetadata.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies an OperationMetadata message. + * @function verify + * @memberof google.cloud.gkehub.v1alpha.OperationMetadata + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + OperationMetadata.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.createTime != null && message.hasOwnProperty("createTime")) { + var error = $root.google.protobuf.Timestamp.verify(message.createTime); + if (error) + return "createTime." + error; + } + if (message.endTime != null && message.hasOwnProperty("endTime")) { + var error = $root.google.protobuf.Timestamp.verify(message.endTime); + if (error) + return "endTime." + error; + } + if (message.target != null && message.hasOwnProperty("target")) + if (!$util.isString(message.target)) + return "target: string expected"; + if (message.verb != null && message.hasOwnProperty("verb")) + if (!$util.isString(message.verb)) + return "verb: string expected"; + if (message.statusDetail != null && message.hasOwnProperty("statusDetail")) + if (!$util.isString(message.statusDetail)) + return "statusDetail: string expected"; + if (message.cancelRequested != null && message.hasOwnProperty("cancelRequested")) + if (typeof message.cancelRequested !== "boolean") + return "cancelRequested: boolean expected"; + if (message.apiVersion != null && message.hasOwnProperty("apiVersion")) + if (!$util.isString(message.apiVersion)) + return "apiVersion: string expected"; + return null; + }; + + /** + * Creates an OperationMetadata message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.v1alpha.OperationMetadata + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.v1alpha.OperationMetadata} OperationMetadata + */ + OperationMetadata.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.v1alpha.OperationMetadata) + return object; + var message = new $root.google.cloud.gkehub.v1alpha.OperationMetadata(); + if (object.createTime != null) { + if (typeof object.createTime !== "object") + throw TypeError(".google.cloud.gkehub.v1alpha.OperationMetadata.createTime: object expected"); + message.createTime = $root.google.protobuf.Timestamp.fromObject(object.createTime); + } + if (object.endTime != null) { + if (typeof object.endTime !== "object") + throw TypeError(".google.cloud.gkehub.v1alpha.OperationMetadata.endTime: object expected"); + message.endTime = $root.google.protobuf.Timestamp.fromObject(object.endTime); + } + if (object.target != null) + message.target = String(object.target); + if (object.verb != null) + message.verb = String(object.verb); + if (object.statusDetail != null) + message.statusDetail = String(object.statusDetail); + if (object.cancelRequested != null) + message.cancelRequested = Boolean(object.cancelRequested); + if (object.apiVersion != null) + message.apiVersion = String(object.apiVersion); + return message; + }; + + /** + * Creates a plain object from an OperationMetadata message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.v1alpha.OperationMetadata * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {google.cloud.gkehub.v1beta1.KubernetesResource} KubernetesResource - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing + * @param {google.cloud.gkehub.v1alpha.OperationMetadata} message OperationMetadata + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object */ - KubernetesResource.decodeDelimited = function decodeDelimited(reader) { - if (!(reader instanceof $Reader)) - reader = new $Reader(reader); - return this.decode(reader, reader.uint32()); + OperationMetadata.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.createTime = null; + object.endTime = null; + object.target = ""; + object.verb = ""; + object.statusDetail = ""; + object.cancelRequested = false; + object.apiVersion = ""; + } + if (message.createTime != null && message.hasOwnProperty("createTime")) + object.createTime = $root.google.protobuf.Timestamp.toObject(message.createTime, options); + if (message.endTime != null && message.hasOwnProperty("endTime")) + object.endTime = $root.google.protobuf.Timestamp.toObject(message.endTime, options); + if (message.target != null && message.hasOwnProperty("target")) + object.target = message.target; + if (message.verb != null && message.hasOwnProperty("verb")) + object.verb = message.verb; + if (message.statusDetail != null && message.hasOwnProperty("statusDetail")) + object.statusDetail = message.statusDetail; + if (message.cancelRequested != null && message.hasOwnProperty("cancelRequested")) + object.cancelRequested = message.cancelRequested; + if (message.apiVersion != null && message.hasOwnProperty("apiVersion")) + object.apiVersion = message.apiVersion; + return object; }; /** - * Verifies a KubernetesResource message. - * @function verify - * @memberof google.cloud.gkehub.v1beta1.KubernetesResource - * @static - * @param {Object.} message Plain object to verify - * @returns {string|null} `null` if valid, otherwise the reason why it is not + * Converts this OperationMetadata to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.v1alpha.OperationMetadata + * @instance + * @returns {Object.} JSON object */ - KubernetesResource.verify = function verify(message) { - if (typeof message !== "object" || message === null) - return "object expected"; - if (message.membershipCrManifest != null && message.hasOwnProperty("membershipCrManifest")) - if (!$util.isString(message.membershipCrManifest)) - return "membershipCrManifest: string expected"; - if (message.membershipResources != null && message.hasOwnProperty("membershipResources")) { - if (!Array.isArray(message.membershipResources)) - return "membershipResources: array expected"; - for (var i = 0; i < message.membershipResources.length; ++i) { - var error = $root.google.cloud.gkehub.v1beta1.ResourceManifest.verify(message.membershipResources[i]); + OperationMetadata.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return OperationMetadata; + })(); + + return v1alpha; + })(); + + gkehub.metering = (function() { + + /** + * Namespace metering. + * @memberof google.cloud.gkehub + * @namespace + */ + var metering = {}; + + metering.v1alpha = (function() { + + /** + * Namespace v1alpha. + * @memberof google.cloud.gkehub.metering + * @namespace + */ + var v1alpha = {}; + + v1alpha.MembershipState = (function() { + + /** + * Properties of a MembershipState. + * @memberof google.cloud.gkehub.metering.v1alpha + * @interface IMembershipState + * @property {google.protobuf.ITimestamp|null} [lastMeasurementTime] MembershipState lastMeasurementTime + * @property {number|null} [preciseLastMeasuredClusterVcpuCapacity] MembershipState preciseLastMeasuredClusterVcpuCapacity + */ + + /** + * Constructs a new MembershipState. + * @memberof google.cloud.gkehub.metering.v1alpha + * @classdesc Represents a MembershipState. + * @implements IMembershipState + * @constructor + * @param {google.cloud.gkehub.metering.v1alpha.IMembershipState=} [properties] Properties to set + */ + function MembershipState(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]]; + } + + /** + * MembershipState lastMeasurementTime. + * @member {google.protobuf.ITimestamp|null|undefined} lastMeasurementTime + * @memberof google.cloud.gkehub.metering.v1alpha.MembershipState + * @instance + */ + MembershipState.prototype.lastMeasurementTime = null; + + /** + * MembershipState preciseLastMeasuredClusterVcpuCapacity. + * @member {number} preciseLastMeasuredClusterVcpuCapacity + * @memberof google.cloud.gkehub.metering.v1alpha.MembershipState + * @instance + */ + MembershipState.prototype.preciseLastMeasuredClusterVcpuCapacity = 0; + + /** + * Creates a new MembershipState instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.metering.v1alpha.MembershipState + * @static + * @param {google.cloud.gkehub.metering.v1alpha.IMembershipState=} [properties] Properties to set + * @returns {google.cloud.gkehub.metering.v1alpha.MembershipState} MembershipState instance + */ + MembershipState.create = function create(properties) { + return new MembershipState(properties); + }; + + /** + * Encodes the specified MembershipState message. Does not implicitly {@link google.cloud.gkehub.metering.v1alpha.MembershipState.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.metering.v1alpha.MembershipState + * @static + * @param {google.cloud.gkehub.metering.v1alpha.IMembershipState} message MembershipState message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + MembershipState.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.lastMeasurementTime != null && Object.hasOwnProperty.call(message, "lastMeasurementTime")) + $root.google.protobuf.Timestamp.encode(message.lastMeasurementTime, writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim(); + if (message.preciseLastMeasuredClusterVcpuCapacity != null && Object.hasOwnProperty.call(message, "preciseLastMeasuredClusterVcpuCapacity")) + writer.uint32(/* id 3, wireType 5 =*/29).float(message.preciseLastMeasuredClusterVcpuCapacity); + return writer; + }; + + /** + * Encodes the specified MembershipState message, length delimited. Does not implicitly {@link google.cloud.gkehub.metering.v1alpha.MembershipState.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.metering.v1alpha.MembershipState + * @static + * @param {google.cloud.gkehub.metering.v1alpha.IMembershipState} message MembershipState message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + MembershipState.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a MembershipState message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.metering.v1alpha.MembershipState + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.metering.v1alpha.MembershipState} MembershipState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + MembershipState.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.metering.v1alpha.MembershipState(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.lastMeasurementTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + break; + case 3: + message.preciseLastMeasuredClusterVcpuCapacity = reader.float(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a MembershipState message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.metering.v1alpha.MembershipState + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.metering.v1alpha.MembershipState} MembershipState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + MembershipState.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a MembershipState message. + * @function verify + * @memberof google.cloud.gkehub.metering.v1alpha.MembershipState + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + MembershipState.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.lastMeasurementTime != null && message.hasOwnProperty("lastMeasurementTime")) { + var error = $root.google.protobuf.Timestamp.verify(message.lastMeasurementTime); if (error) - return "membershipResources." + error; + return "lastMeasurementTime." + error; + } + if (message.preciseLastMeasuredClusterVcpuCapacity != null && message.hasOwnProperty("preciseLastMeasuredClusterVcpuCapacity")) + if (typeof message.preciseLastMeasuredClusterVcpuCapacity !== "number") + return "preciseLastMeasuredClusterVcpuCapacity: number expected"; + return null; + }; + + /** + * Creates a MembershipState message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.metering.v1alpha.MembershipState + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.metering.v1alpha.MembershipState} MembershipState + */ + MembershipState.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.metering.v1alpha.MembershipState) + return object; + var message = new $root.google.cloud.gkehub.metering.v1alpha.MembershipState(); + if (object.lastMeasurementTime != null) { + if (typeof object.lastMeasurementTime !== "object") + throw TypeError(".google.cloud.gkehub.metering.v1alpha.MembershipState.lastMeasurementTime: object expected"); + message.lastMeasurementTime = $root.google.protobuf.Timestamp.fromObject(object.lastMeasurementTime); + } + if (object.preciseLastMeasuredClusterVcpuCapacity != null) + message.preciseLastMeasuredClusterVcpuCapacity = Number(object.preciseLastMeasuredClusterVcpuCapacity); + return message; + }; + + /** + * Creates a plain object from a MembershipState message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.metering.v1alpha.MembershipState + * @static + * @param {google.cloud.gkehub.metering.v1alpha.MembershipState} message MembershipState + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + MembershipState.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.lastMeasurementTime = null; + object.preciseLastMeasuredClusterVcpuCapacity = 0; } + if (message.lastMeasurementTime != null && message.hasOwnProperty("lastMeasurementTime")) + object.lastMeasurementTime = $root.google.protobuf.Timestamp.toObject(message.lastMeasurementTime, options); + if (message.preciseLastMeasuredClusterVcpuCapacity != null && message.hasOwnProperty("preciseLastMeasuredClusterVcpuCapacity")) + object.preciseLastMeasuredClusterVcpuCapacity = options.json && !isFinite(message.preciseLastMeasuredClusterVcpuCapacity) ? String(message.preciseLastMeasuredClusterVcpuCapacity) : message.preciseLastMeasuredClusterVcpuCapacity; + return object; + }; + + /** + * Converts this MembershipState to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.metering.v1alpha.MembershipState + * @instance + * @returns {Object.} JSON object + */ + MembershipState.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return MembershipState; + })(); + + return v1alpha; + })(); + + metering.v1beta = (function() { + + /** + * Namespace v1beta. + * @memberof google.cloud.gkehub.metering + * @namespace + */ + var v1beta = {}; + + v1beta.MembershipState = (function() { + + /** + * Properties of a MembershipState. + * @memberof google.cloud.gkehub.metering.v1beta + * @interface IMembershipState + * @property {google.protobuf.ITimestamp|null} [lastMeasurementTime] MembershipState lastMeasurementTime + * @property {number|null} [preciseLastMeasuredClusterVcpuCapacity] MembershipState preciseLastMeasuredClusterVcpuCapacity + */ + + /** + * Constructs a new MembershipState. + * @memberof google.cloud.gkehub.metering.v1beta + * @classdesc Represents a MembershipState. + * @implements IMembershipState + * @constructor + * @param {google.cloud.gkehub.metering.v1beta.IMembershipState=} [properties] Properties to set + */ + function MembershipState(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]]; } - if (message.connectResources != null && message.hasOwnProperty("connectResources")) { - if (!Array.isArray(message.connectResources)) - return "connectResources: array expected"; - for (var i = 0; i < message.connectResources.length; ++i) { - var error = $root.google.cloud.gkehub.v1beta1.ResourceManifest.verify(message.connectResources[i]); + + /** + * MembershipState lastMeasurementTime. + * @member {google.protobuf.ITimestamp|null|undefined} lastMeasurementTime + * @memberof google.cloud.gkehub.metering.v1beta.MembershipState + * @instance + */ + MembershipState.prototype.lastMeasurementTime = null; + + /** + * MembershipState preciseLastMeasuredClusterVcpuCapacity. + * @member {number} preciseLastMeasuredClusterVcpuCapacity + * @memberof google.cloud.gkehub.metering.v1beta.MembershipState + * @instance + */ + MembershipState.prototype.preciseLastMeasuredClusterVcpuCapacity = 0; + + /** + * Creates a new MembershipState instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.metering.v1beta.MembershipState + * @static + * @param {google.cloud.gkehub.metering.v1beta.IMembershipState=} [properties] Properties to set + * @returns {google.cloud.gkehub.metering.v1beta.MembershipState} MembershipState instance + */ + MembershipState.create = function create(properties) { + return new MembershipState(properties); + }; + + /** + * Encodes the specified MembershipState message. Does not implicitly {@link google.cloud.gkehub.metering.v1beta.MembershipState.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.metering.v1beta.MembershipState + * @static + * @param {google.cloud.gkehub.metering.v1beta.IMembershipState} message MembershipState message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + MembershipState.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.lastMeasurementTime != null && Object.hasOwnProperty.call(message, "lastMeasurementTime")) + $root.google.protobuf.Timestamp.encode(message.lastMeasurementTime, writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim(); + if (message.preciseLastMeasuredClusterVcpuCapacity != null && Object.hasOwnProperty.call(message, "preciseLastMeasuredClusterVcpuCapacity")) + writer.uint32(/* id 3, wireType 5 =*/29).float(message.preciseLastMeasuredClusterVcpuCapacity); + return writer; + }; + + /** + * Encodes the specified MembershipState message, length delimited. Does not implicitly {@link google.cloud.gkehub.metering.v1beta.MembershipState.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.metering.v1beta.MembershipState + * @static + * @param {google.cloud.gkehub.metering.v1beta.IMembershipState} message MembershipState message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + MembershipState.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a MembershipState message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.metering.v1beta.MembershipState + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.metering.v1beta.MembershipState} MembershipState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + MembershipState.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.metering.v1beta.MembershipState(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.lastMeasurementTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + break; + case 3: + message.preciseLastMeasuredClusterVcpuCapacity = reader.float(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a MembershipState message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.metering.v1beta.MembershipState + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.metering.v1beta.MembershipState} MembershipState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + MembershipState.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a MembershipState message. + * @function verify + * @memberof google.cloud.gkehub.metering.v1beta.MembershipState + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + MembershipState.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.lastMeasurementTime != null && message.hasOwnProperty("lastMeasurementTime")) { + var error = $root.google.protobuf.Timestamp.verify(message.lastMeasurementTime); if (error) - return "connectResources." + error; + return "lastMeasurementTime." + error; } + if (message.preciseLastMeasuredClusterVcpuCapacity != null && message.hasOwnProperty("preciseLastMeasuredClusterVcpuCapacity")) + if (typeof message.preciseLastMeasuredClusterVcpuCapacity !== "number") + return "preciseLastMeasuredClusterVcpuCapacity: number expected"; + return null; + }; + + /** + * Creates a MembershipState message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.metering.v1beta.MembershipState + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.metering.v1beta.MembershipState} MembershipState + */ + MembershipState.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.metering.v1beta.MembershipState) + return object; + var message = new $root.google.cloud.gkehub.metering.v1beta.MembershipState(); + if (object.lastMeasurementTime != null) { + if (typeof object.lastMeasurementTime !== "object") + throw TypeError(".google.cloud.gkehub.metering.v1beta.MembershipState.lastMeasurementTime: object expected"); + message.lastMeasurementTime = $root.google.protobuf.Timestamp.fromObject(object.lastMeasurementTime); + } + if (object.preciseLastMeasuredClusterVcpuCapacity != null) + message.preciseLastMeasuredClusterVcpuCapacity = Number(object.preciseLastMeasuredClusterVcpuCapacity); + return message; + }; + + /** + * Creates a plain object from a MembershipState message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.metering.v1beta.MembershipState + * @static + * @param {google.cloud.gkehub.metering.v1beta.MembershipState} message MembershipState + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + MembershipState.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.lastMeasurementTime = null; + object.preciseLastMeasuredClusterVcpuCapacity = 0; + } + if (message.lastMeasurementTime != null && message.hasOwnProperty("lastMeasurementTime")) + object.lastMeasurementTime = $root.google.protobuf.Timestamp.toObject(message.lastMeasurementTime, options); + if (message.preciseLastMeasuredClusterVcpuCapacity != null && message.hasOwnProperty("preciseLastMeasuredClusterVcpuCapacity")) + object.preciseLastMeasuredClusterVcpuCapacity = options.json && !isFinite(message.preciseLastMeasuredClusterVcpuCapacity) ? String(message.preciseLastMeasuredClusterVcpuCapacity) : message.preciseLastMeasuredClusterVcpuCapacity; + return object; + }; + + /** + * Converts this MembershipState to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.metering.v1beta.MembershipState + * @instance + * @returns {Object.} JSON object + */ + MembershipState.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return MembershipState; + })(); + + return v1beta; + })(); + + return metering; + })(); + + gkehub.servicemesh = (function() { + + /** + * Namespace servicemesh. + * @memberof google.cloud.gkehub + * @namespace + */ + var servicemesh = {}; + + servicemesh.v1alpha = (function() { + + /** + * Namespace v1alpha. + * @memberof google.cloud.gkehub.servicemesh + * @namespace + */ + var v1alpha = {}; + + v1alpha.FeatureState = (function() { + + /** + * Properties of a FeatureState. + * @memberof google.cloud.gkehub.servicemesh.v1alpha + * @interface IFeatureState + * @property {Array.|null} [analysisMessages] FeatureState analysisMessages + */ + + /** + * Constructs a new FeatureState. + * @memberof google.cloud.gkehub.servicemesh.v1alpha + * @classdesc Represents a FeatureState. + * @implements IFeatureState + * @constructor + * @param {google.cloud.gkehub.servicemesh.v1alpha.IFeatureState=} [properties] Properties to set + */ + function FeatureState(properties) { + this.analysisMessages = []; + 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]]; } - if (message.resourceOptions != null && message.hasOwnProperty("resourceOptions")) { - var error = $root.google.cloud.gkehub.v1beta1.ResourceOptions.verify(message.resourceOptions); - if (error) - return "resourceOptions." + error; - } - return null; - }; - /** - * Creates a KubernetesResource message from a plain object. Also converts values to their respective internal types. - * @function fromObject - * @memberof google.cloud.gkehub.v1beta1.KubernetesResource - * @static - * @param {Object.} object Plain object - * @returns {google.cloud.gkehub.v1beta1.KubernetesResource} KubernetesResource - */ - KubernetesResource.fromObject = function fromObject(object) { - if (object instanceof $root.google.cloud.gkehub.v1beta1.KubernetesResource) - return object; - var message = new $root.google.cloud.gkehub.v1beta1.KubernetesResource(); - if (object.membershipCrManifest != null) - message.membershipCrManifest = String(object.membershipCrManifest); - if (object.membershipResources) { - if (!Array.isArray(object.membershipResources)) - throw TypeError(".google.cloud.gkehub.v1beta1.KubernetesResource.membershipResources: array expected"); - message.membershipResources = []; - for (var i = 0; i < object.membershipResources.length; ++i) { - if (typeof object.membershipResources[i] !== "object") - throw TypeError(".google.cloud.gkehub.v1beta1.KubernetesResource.membershipResources: object expected"); - message.membershipResources[i] = $root.google.cloud.gkehub.v1beta1.ResourceManifest.fromObject(object.membershipResources[i]); + /** + * FeatureState analysisMessages. + * @member {Array.} analysisMessages + * @memberof google.cloud.gkehub.servicemesh.v1alpha.FeatureState + * @instance + */ + FeatureState.prototype.analysisMessages = $util.emptyArray; + + /** + * Creates a new FeatureState instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.servicemesh.v1alpha.FeatureState + * @static + * @param {google.cloud.gkehub.servicemesh.v1alpha.IFeatureState=} [properties] Properties to set + * @returns {google.cloud.gkehub.servicemesh.v1alpha.FeatureState} FeatureState instance + */ + FeatureState.create = function create(properties) { + return new FeatureState(properties); + }; + + /** + * Encodes the specified FeatureState message. Does not implicitly {@link google.cloud.gkehub.servicemesh.v1alpha.FeatureState.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.servicemesh.v1alpha.FeatureState + * @static + * @param {google.cloud.gkehub.servicemesh.v1alpha.IFeatureState} message FeatureState message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + FeatureState.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.analysisMessages != null && message.analysisMessages.length) + for (var i = 0; i < message.analysisMessages.length; ++i) + $root.google.cloud.gkehub.servicemesh.v1alpha.AnalysisMessage.encode(message.analysisMessages[i], writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim(); + return writer; + }; + + /** + * Encodes the specified FeatureState message, length delimited. Does not implicitly {@link google.cloud.gkehub.servicemesh.v1alpha.FeatureState.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.servicemesh.v1alpha.FeatureState + * @static + * @param {google.cloud.gkehub.servicemesh.v1alpha.IFeatureState} message FeatureState message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + FeatureState.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a FeatureState message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.servicemesh.v1alpha.FeatureState + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.servicemesh.v1alpha.FeatureState} FeatureState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + FeatureState.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.servicemesh.v1alpha.FeatureState(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + if (!(message.analysisMessages && message.analysisMessages.length)) + message.analysisMessages = []; + message.analysisMessages.push($root.google.cloud.gkehub.servicemesh.v1alpha.AnalysisMessage.decode(reader, reader.uint32())); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a FeatureState message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.servicemesh.v1alpha.FeatureState + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.servicemesh.v1alpha.FeatureState} FeatureState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + FeatureState.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a FeatureState message. + * @function verify + * @memberof google.cloud.gkehub.servicemesh.v1alpha.FeatureState + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + FeatureState.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.analysisMessages != null && message.hasOwnProperty("analysisMessages")) { + if (!Array.isArray(message.analysisMessages)) + return "analysisMessages: array expected"; + for (var i = 0; i < message.analysisMessages.length; ++i) { + var error = $root.google.cloud.gkehub.servicemesh.v1alpha.AnalysisMessage.verify(message.analysisMessages[i]); + if (error) + return "analysisMessages." + error; + } } + return null; + }; + + /** + * Creates a FeatureState message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.servicemesh.v1alpha.FeatureState + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.servicemesh.v1alpha.FeatureState} FeatureState + */ + FeatureState.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.servicemesh.v1alpha.FeatureState) + return object; + var message = new $root.google.cloud.gkehub.servicemesh.v1alpha.FeatureState(); + if (object.analysisMessages) { + if (!Array.isArray(object.analysisMessages)) + throw TypeError(".google.cloud.gkehub.servicemesh.v1alpha.FeatureState.analysisMessages: array expected"); + message.analysisMessages = []; + for (var i = 0; i < object.analysisMessages.length; ++i) { + if (typeof object.analysisMessages[i] !== "object") + throw TypeError(".google.cloud.gkehub.servicemesh.v1alpha.FeatureState.analysisMessages: object expected"); + message.analysisMessages[i] = $root.google.cloud.gkehub.servicemesh.v1alpha.AnalysisMessage.fromObject(object.analysisMessages[i]); + } + } + return message; + }; + + /** + * Creates a plain object from a FeatureState message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.servicemesh.v1alpha.FeatureState + * @static + * @param {google.cloud.gkehub.servicemesh.v1alpha.FeatureState} message FeatureState + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + FeatureState.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.arrays || options.defaults) + object.analysisMessages = []; + if (message.analysisMessages && message.analysisMessages.length) { + object.analysisMessages = []; + for (var j = 0; j < message.analysisMessages.length; ++j) + object.analysisMessages[j] = $root.google.cloud.gkehub.servicemesh.v1alpha.AnalysisMessage.toObject(message.analysisMessages[j], options); + } + return object; + }; + + /** + * Converts this FeatureState to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.servicemesh.v1alpha.FeatureState + * @instance + * @returns {Object.} JSON object + */ + FeatureState.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return FeatureState; + })(); + + v1alpha.MembershipState = (function() { + + /** + * Properties of a MembershipState. + * @memberof google.cloud.gkehub.servicemesh.v1alpha + * @interface IMembershipState + * @property {Array.|null} [analysisMessages] MembershipState analysisMessages + */ + + /** + * Constructs a new MembershipState. + * @memberof google.cloud.gkehub.servicemesh.v1alpha + * @classdesc Represents a MembershipState. + * @implements IMembershipState + * @constructor + * @param {google.cloud.gkehub.servicemesh.v1alpha.IMembershipState=} [properties] Properties to set + */ + function MembershipState(properties) { + this.analysisMessages = []; + 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]]; } - if (object.connectResources) { - if (!Array.isArray(object.connectResources)) - throw TypeError(".google.cloud.gkehub.v1beta1.KubernetesResource.connectResources: array expected"); - message.connectResources = []; - for (var i = 0; i < object.connectResources.length; ++i) { - if (typeof object.connectResources[i] !== "object") - throw TypeError(".google.cloud.gkehub.v1beta1.KubernetesResource.connectResources: object expected"); - message.connectResources[i] = $root.google.cloud.gkehub.v1beta1.ResourceManifest.fromObject(object.connectResources[i]); + + /** + * MembershipState analysisMessages. + * @member {Array.} analysisMessages + * @memberof google.cloud.gkehub.servicemesh.v1alpha.MembershipState + * @instance + */ + MembershipState.prototype.analysisMessages = $util.emptyArray; + + /** + * Creates a new MembershipState instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.servicemesh.v1alpha.MembershipState + * @static + * @param {google.cloud.gkehub.servicemesh.v1alpha.IMembershipState=} [properties] Properties to set + * @returns {google.cloud.gkehub.servicemesh.v1alpha.MembershipState} MembershipState instance + */ + MembershipState.create = function create(properties) { + return new MembershipState(properties); + }; + + /** + * Encodes the specified MembershipState message. Does not implicitly {@link google.cloud.gkehub.servicemesh.v1alpha.MembershipState.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.servicemesh.v1alpha.MembershipState + * @static + * @param {google.cloud.gkehub.servicemesh.v1alpha.IMembershipState} message MembershipState message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + MembershipState.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.analysisMessages != null && message.analysisMessages.length) + for (var i = 0; i < message.analysisMessages.length; ++i) + $root.google.cloud.gkehub.servicemesh.v1alpha.AnalysisMessage.encode(message.analysisMessages[i], writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim(); + return writer; + }; + + /** + * Encodes the specified MembershipState message, length delimited. Does not implicitly {@link google.cloud.gkehub.servicemesh.v1alpha.MembershipState.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.servicemesh.v1alpha.MembershipState + * @static + * @param {google.cloud.gkehub.servicemesh.v1alpha.IMembershipState} message MembershipState message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + MembershipState.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a MembershipState message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.servicemesh.v1alpha.MembershipState + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.servicemesh.v1alpha.MembershipState} MembershipState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + MembershipState.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.servicemesh.v1alpha.MembershipState(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + if (!(message.analysisMessages && message.analysisMessages.length)) + message.analysisMessages = []; + message.analysisMessages.push($root.google.cloud.gkehub.servicemesh.v1alpha.AnalysisMessage.decode(reader, reader.uint32())); + break; + default: + reader.skipType(tag & 7); + break; + } } + return message; + }; + + /** + * Decodes a MembershipState message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.servicemesh.v1alpha.MembershipState + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.servicemesh.v1alpha.MembershipState} MembershipState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + MembershipState.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a MembershipState message. + * @function verify + * @memberof google.cloud.gkehub.servicemesh.v1alpha.MembershipState + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + MembershipState.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.analysisMessages != null && message.hasOwnProperty("analysisMessages")) { + if (!Array.isArray(message.analysisMessages)) + return "analysisMessages: array expected"; + for (var i = 0; i < message.analysisMessages.length; ++i) { + var error = $root.google.cloud.gkehub.servicemesh.v1alpha.AnalysisMessage.verify(message.analysisMessages[i]); + if (error) + return "analysisMessages." + error; + } + } + return null; + }; + + /** + * Creates a MembershipState message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.servicemesh.v1alpha.MembershipState + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.servicemesh.v1alpha.MembershipState} MembershipState + */ + MembershipState.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.servicemesh.v1alpha.MembershipState) + return object; + var message = new $root.google.cloud.gkehub.servicemesh.v1alpha.MembershipState(); + if (object.analysisMessages) { + if (!Array.isArray(object.analysisMessages)) + throw TypeError(".google.cloud.gkehub.servicemesh.v1alpha.MembershipState.analysisMessages: array expected"); + message.analysisMessages = []; + for (var i = 0; i < object.analysisMessages.length; ++i) { + if (typeof object.analysisMessages[i] !== "object") + throw TypeError(".google.cloud.gkehub.servicemesh.v1alpha.MembershipState.analysisMessages: object expected"); + message.analysisMessages[i] = $root.google.cloud.gkehub.servicemesh.v1alpha.AnalysisMessage.fromObject(object.analysisMessages[i]); + } + } + return message; + }; + + /** + * Creates a plain object from a MembershipState message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.servicemesh.v1alpha.MembershipState + * @static + * @param {google.cloud.gkehub.servicemesh.v1alpha.MembershipState} message MembershipState + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + MembershipState.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.arrays || options.defaults) + object.analysisMessages = []; + if (message.analysisMessages && message.analysisMessages.length) { + object.analysisMessages = []; + for (var j = 0; j < message.analysisMessages.length; ++j) + object.analysisMessages[j] = $root.google.cloud.gkehub.servicemesh.v1alpha.AnalysisMessage.toObject(message.analysisMessages[j], options); + } + return object; + }; + + /** + * Converts this MembershipState to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.servicemesh.v1alpha.MembershipState + * @instance + * @returns {Object.} JSON object + */ + MembershipState.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return MembershipState; + })(); + + v1alpha.AnalysisMessageBase = (function() { + + /** + * Properties of an AnalysisMessageBase. + * @memberof google.cloud.gkehub.servicemesh.v1alpha + * @interface IAnalysisMessageBase + * @property {google.cloud.gkehub.servicemesh.v1alpha.AnalysisMessageBase.IType|null} [type] AnalysisMessageBase type + * @property {google.cloud.gkehub.servicemesh.v1alpha.AnalysisMessageBase.Level|null} [level] AnalysisMessageBase level + * @property {string|null} [documentationUrl] AnalysisMessageBase documentationUrl + */ + + /** + * Constructs a new AnalysisMessageBase. + * @memberof google.cloud.gkehub.servicemesh.v1alpha + * @classdesc Represents an AnalysisMessageBase. + * @implements IAnalysisMessageBase + * @constructor + * @param {google.cloud.gkehub.servicemesh.v1alpha.IAnalysisMessageBase=} [properties] Properties to set + */ + function AnalysisMessageBase(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]]; } - if (object.resourceOptions != null) { - if (typeof object.resourceOptions !== "object") - throw TypeError(".google.cloud.gkehub.v1beta1.KubernetesResource.resourceOptions: object expected"); - message.resourceOptions = $root.google.cloud.gkehub.v1beta1.ResourceOptions.fromObject(object.resourceOptions); + + /** + * AnalysisMessageBase type. + * @member {google.cloud.gkehub.servicemesh.v1alpha.AnalysisMessageBase.IType|null|undefined} type + * @memberof google.cloud.gkehub.servicemesh.v1alpha.AnalysisMessageBase + * @instance + */ + AnalysisMessageBase.prototype.type = null; + + /** + * AnalysisMessageBase level. + * @member {google.cloud.gkehub.servicemesh.v1alpha.AnalysisMessageBase.Level} level + * @memberof google.cloud.gkehub.servicemesh.v1alpha.AnalysisMessageBase + * @instance + */ + AnalysisMessageBase.prototype.level = 0; + + /** + * AnalysisMessageBase documentationUrl. + * @member {string} documentationUrl + * @memberof google.cloud.gkehub.servicemesh.v1alpha.AnalysisMessageBase + * @instance + */ + AnalysisMessageBase.prototype.documentationUrl = ""; + + /** + * Creates a new AnalysisMessageBase instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.servicemesh.v1alpha.AnalysisMessageBase + * @static + * @param {google.cloud.gkehub.servicemesh.v1alpha.IAnalysisMessageBase=} [properties] Properties to set + * @returns {google.cloud.gkehub.servicemesh.v1alpha.AnalysisMessageBase} AnalysisMessageBase instance + */ + AnalysisMessageBase.create = function create(properties) { + return new AnalysisMessageBase(properties); + }; + + /** + * Encodes the specified AnalysisMessageBase message. Does not implicitly {@link google.cloud.gkehub.servicemesh.v1alpha.AnalysisMessageBase.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.servicemesh.v1alpha.AnalysisMessageBase + * @static + * @param {google.cloud.gkehub.servicemesh.v1alpha.IAnalysisMessageBase} message AnalysisMessageBase message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + AnalysisMessageBase.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.type != null && Object.hasOwnProperty.call(message, "type")) + $root.google.cloud.gkehub.servicemesh.v1alpha.AnalysisMessageBase.Type.encode(message.type, writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim(); + if (message.level != null && Object.hasOwnProperty.call(message, "level")) + writer.uint32(/* id 2, wireType 0 =*/16).int32(message.level); + if (message.documentationUrl != null && Object.hasOwnProperty.call(message, "documentationUrl")) + writer.uint32(/* id 3, wireType 2 =*/26).string(message.documentationUrl); + return writer; + }; + + /** + * Encodes the specified AnalysisMessageBase message, length delimited. Does not implicitly {@link google.cloud.gkehub.servicemesh.v1alpha.AnalysisMessageBase.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.servicemesh.v1alpha.AnalysisMessageBase + * @static + * @param {google.cloud.gkehub.servicemesh.v1alpha.IAnalysisMessageBase} message AnalysisMessageBase message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + AnalysisMessageBase.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes an AnalysisMessageBase message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.servicemesh.v1alpha.AnalysisMessageBase + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.servicemesh.v1alpha.AnalysisMessageBase} AnalysisMessageBase + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + AnalysisMessageBase.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.servicemesh.v1alpha.AnalysisMessageBase(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.type = $root.google.cloud.gkehub.servicemesh.v1alpha.AnalysisMessageBase.Type.decode(reader, reader.uint32()); + break; + case 2: + message.level = reader.int32(); + break; + case 3: + message.documentationUrl = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes an AnalysisMessageBase message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.servicemesh.v1alpha.AnalysisMessageBase + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.servicemesh.v1alpha.AnalysisMessageBase} AnalysisMessageBase + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + AnalysisMessageBase.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies an AnalysisMessageBase message. + * @function verify + * @memberof google.cloud.gkehub.servicemesh.v1alpha.AnalysisMessageBase + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + AnalysisMessageBase.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.type != null && message.hasOwnProperty("type")) { + var error = $root.google.cloud.gkehub.servicemesh.v1alpha.AnalysisMessageBase.Type.verify(message.type); + if (error) + return "type." + error; + } + if (message.level != null && message.hasOwnProperty("level")) + switch (message.level) { + default: + return "level: enum value expected"; + case 0: + case 3: + case 8: + case 12: + break; + } + if (message.documentationUrl != null && message.hasOwnProperty("documentationUrl")) + if (!$util.isString(message.documentationUrl)) + return "documentationUrl: string expected"; + return null; + }; + + /** + * Creates an AnalysisMessageBase message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.servicemesh.v1alpha.AnalysisMessageBase + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.servicemesh.v1alpha.AnalysisMessageBase} AnalysisMessageBase + */ + AnalysisMessageBase.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.servicemesh.v1alpha.AnalysisMessageBase) + return object; + var message = new $root.google.cloud.gkehub.servicemesh.v1alpha.AnalysisMessageBase(); + if (object.type != null) { + if (typeof object.type !== "object") + throw TypeError(".google.cloud.gkehub.servicemesh.v1alpha.AnalysisMessageBase.type: object expected"); + message.type = $root.google.cloud.gkehub.servicemesh.v1alpha.AnalysisMessageBase.Type.fromObject(object.type); + } + switch (object.level) { + case "LEVEL_UNSPECIFIED": + case 0: + message.level = 0; + break; + case "ERROR": + case 3: + message.level = 3; + break; + case "WARNING": + case 8: + message.level = 8; + break; + case "INFO": + case 12: + message.level = 12; + break; + } + if (object.documentationUrl != null) + message.documentationUrl = String(object.documentationUrl); + return message; + }; + + /** + * Creates a plain object from an AnalysisMessageBase message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.servicemesh.v1alpha.AnalysisMessageBase + * @static + * @param {google.cloud.gkehub.servicemesh.v1alpha.AnalysisMessageBase} message AnalysisMessageBase + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + AnalysisMessageBase.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.type = null; + object.level = options.enums === String ? "LEVEL_UNSPECIFIED" : 0; + object.documentationUrl = ""; + } + if (message.type != null && message.hasOwnProperty("type")) + object.type = $root.google.cloud.gkehub.servicemesh.v1alpha.AnalysisMessageBase.Type.toObject(message.type, options); + if (message.level != null && message.hasOwnProperty("level")) + object.level = options.enums === String ? $root.google.cloud.gkehub.servicemesh.v1alpha.AnalysisMessageBase.Level[message.level] : message.level; + if (message.documentationUrl != null && message.hasOwnProperty("documentationUrl")) + object.documentationUrl = message.documentationUrl; + return object; + }; + + /** + * Converts this AnalysisMessageBase to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.servicemesh.v1alpha.AnalysisMessageBase + * @instance + * @returns {Object.} JSON object + */ + AnalysisMessageBase.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + AnalysisMessageBase.Type = (function() { + + /** + * Properties of a Type. + * @memberof google.cloud.gkehub.servicemesh.v1alpha.AnalysisMessageBase + * @interface IType + * @property {string|null} [displayName] Type displayName + * @property {string|null} [code] Type code + */ + + /** + * Constructs a new Type. + * @memberof google.cloud.gkehub.servicemesh.v1alpha.AnalysisMessageBase + * @classdesc Represents a Type. + * @implements IType + * @constructor + * @param {google.cloud.gkehub.servicemesh.v1alpha.AnalysisMessageBase.IType=} [properties] Properties to set + */ + function Type(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]]; + } + + /** + * Type displayName. + * @member {string} displayName + * @memberof google.cloud.gkehub.servicemesh.v1alpha.AnalysisMessageBase.Type + * @instance + */ + Type.prototype.displayName = ""; + + /** + * Type code. + * @member {string} code + * @memberof google.cloud.gkehub.servicemesh.v1alpha.AnalysisMessageBase.Type + * @instance + */ + Type.prototype.code = ""; + + /** + * Creates a new Type instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.servicemesh.v1alpha.AnalysisMessageBase.Type + * @static + * @param {google.cloud.gkehub.servicemesh.v1alpha.AnalysisMessageBase.IType=} [properties] Properties to set + * @returns {google.cloud.gkehub.servicemesh.v1alpha.AnalysisMessageBase.Type} Type instance + */ + Type.create = function create(properties) { + return new Type(properties); + }; + + /** + * Encodes the specified Type message. Does not implicitly {@link google.cloud.gkehub.servicemesh.v1alpha.AnalysisMessageBase.Type.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.servicemesh.v1alpha.AnalysisMessageBase.Type + * @static + * @param {google.cloud.gkehub.servicemesh.v1alpha.AnalysisMessageBase.IType} message Type message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + Type.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.code != null && Object.hasOwnProperty.call(message, "code")) + writer.uint32(/* id 2, wireType 2 =*/18).string(message.code); + return writer; + }; + + /** + * Encodes the specified Type message, length delimited. Does not implicitly {@link google.cloud.gkehub.servicemesh.v1alpha.AnalysisMessageBase.Type.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.servicemesh.v1alpha.AnalysisMessageBase.Type + * @static + * @param {google.cloud.gkehub.servicemesh.v1alpha.AnalysisMessageBase.IType} message Type message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + Type.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a Type message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.servicemesh.v1alpha.AnalysisMessageBase.Type + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.servicemesh.v1alpha.AnalysisMessageBase.Type} Type + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + Type.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.servicemesh.v1alpha.AnalysisMessageBase.Type(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.displayName = reader.string(); + break; + case 2: + message.code = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a Type message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.servicemesh.v1alpha.AnalysisMessageBase.Type + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.servicemesh.v1alpha.AnalysisMessageBase.Type} Type + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + Type.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a Type message. + * @function verify + * @memberof google.cloud.gkehub.servicemesh.v1alpha.AnalysisMessageBase.Type + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + Type.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.code != null && message.hasOwnProperty("code")) + if (!$util.isString(message.code)) + return "code: string expected"; + return null; + }; + + /** + * Creates a Type message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.servicemesh.v1alpha.AnalysisMessageBase.Type + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.servicemesh.v1alpha.AnalysisMessageBase.Type} Type + */ + Type.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.servicemesh.v1alpha.AnalysisMessageBase.Type) + return object; + var message = new $root.google.cloud.gkehub.servicemesh.v1alpha.AnalysisMessageBase.Type(); + if (object.displayName != null) + message.displayName = String(object.displayName); + if (object.code != null) + message.code = String(object.code); + return message; + }; + + /** + * Creates a plain object from a Type message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.servicemesh.v1alpha.AnalysisMessageBase.Type + * @static + * @param {google.cloud.gkehub.servicemesh.v1alpha.AnalysisMessageBase.Type} message Type + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + Type.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.displayName = ""; + object.code = ""; + } + if (message.displayName != null && message.hasOwnProperty("displayName")) + object.displayName = message.displayName; + if (message.code != null && message.hasOwnProperty("code")) + object.code = message.code; + return object; + }; + + /** + * Converts this Type to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.servicemesh.v1alpha.AnalysisMessageBase.Type + * @instance + * @returns {Object.} JSON object + */ + Type.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return Type; + })(); + + /** + * Level enum. + * @name google.cloud.gkehub.servicemesh.v1alpha.AnalysisMessageBase.Level + * @enum {number} + * @property {number} LEVEL_UNSPECIFIED=0 LEVEL_UNSPECIFIED value + * @property {number} ERROR=3 ERROR value + * @property {number} WARNING=8 WARNING value + * @property {number} INFO=12 INFO value + */ + AnalysisMessageBase.Level = (function() { + var valuesById = {}, values = Object.create(valuesById); + values[valuesById[0] = "LEVEL_UNSPECIFIED"] = 0; + values[valuesById[3] = "ERROR"] = 3; + values[valuesById[8] = "WARNING"] = 8; + values[valuesById[12] = "INFO"] = 12; + return values; + })(); + + return AnalysisMessageBase; + })(); + + v1alpha.AnalysisMessage = (function() { + + /** + * Properties of an AnalysisMessage. + * @memberof google.cloud.gkehub.servicemesh.v1alpha + * @interface IAnalysisMessage + * @property {google.cloud.gkehub.servicemesh.v1alpha.IAnalysisMessageBase|null} [messageBase] AnalysisMessage messageBase + * @property {string|null} [description] AnalysisMessage description + * @property {Array.|null} [resourcePaths] AnalysisMessage resourcePaths + * @property {google.protobuf.IStruct|null} [args] AnalysisMessage args + */ + + /** + * Constructs a new AnalysisMessage. + * @memberof google.cloud.gkehub.servicemesh.v1alpha + * @classdesc Represents an AnalysisMessage. + * @implements IAnalysisMessage + * @constructor + * @param {google.cloud.gkehub.servicemesh.v1alpha.IAnalysisMessage=} [properties] Properties to set + */ + function AnalysisMessage(properties) { + this.resourcePaths = []; + 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]]; } - return message; + + /** + * AnalysisMessage messageBase. + * @member {google.cloud.gkehub.servicemesh.v1alpha.IAnalysisMessageBase|null|undefined} messageBase + * @memberof google.cloud.gkehub.servicemesh.v1alpha.AnalysisMessage + * @instance + */ + AnalysisMessage.prototype.messageBase = null; + + /** + * AnalysisMessage description. + * @member {string} description + * @memberof google.cloud.gkehub.servicemesh.v1alpha.AnalysisMessage + * @instance + */ + AnalysisMessage.prototype.description = ""; + + /** + * AnalysisMessage resourcePaths. + * @member {Array.} resourcePaths + * @memberof google.cloud.gkehub.servicemesh.v1alpha.AnalysisMessage + * @instance + */ + AnalysisMessage.prototype.resourcePaths = $util.emptyArray; + + /** + * AnalysisMessage args. + * @member {google.protobuf.IStruct|null|undefined} args + * @memberof google.cloud.gkehub.servicemesh.v1alpha.AnalysisMessage + * @instance + */ + AnalysisMessage.prototype.args = null; + + /** + * Creates a new AnalysisMessage instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.servicemesh.v1alpha.AnalysisMessage + * @static + * @param {google.cloud.gkehub.servicemesh.v1alpha.IAnalysisMessage=} [properties] Properties to set + * @returns {google.cloud.gkehub.servicemesh.v1alpha.AnalysisMessage} AnalysisMessage instance + */ + AnalysisMessage.create = function create(properties) { + return new AnalysisMessage(properties); + }; + + /** + * Encodes the specified AnalysisMessage message. Does not implicitly {@link google.cloud.gkehub.servicemesh.v1alpha.AnalysisMessage.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.servicemesh.v1alpha.AnalysisMessage + * @static + * @param {google.cloud.gkehub.servicemesh.v1alpha.IAnalysisMessage} message AnalysisMessage message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + AnalysisMessage.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.messageBase != null && Object.hasOwnProperty.call(message, "messageBase")) + $root.google.cloud.gkehub.servicemesh.v1alpha.AnalysisMessageBase.encode(message.messageBase, writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim(); + if (message.description != null && Object.hasOwnProperty.call(message, "description")) + writer.uint32(/* id 2, wireType 2 =*/18).string(message.description); + if (message.resourcePaths != null && message.resourcePaths.length) + for (var i = 0; i < message.resourcePaths.length; ++i) + writer.uint32(/* id 3, wireType 2 =*/26).string(message.resourcePaths[i]); + if (message.args != null && Object.hasOwnProperty.call(message, "args")) + $root.google.protobuf.Struct.encode(message.args, writer.uint32(/* id 4, wireType 2 =*/34).fork()).ldelim(); + return writer; + }; + + /** + * Encodes the specified AnalysisMessage message, length delimited. Does not implicitly {@link google.cloud.gkehub.servicemesh.v1alpha.AnalysisMessage.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.servicemesh.v1alpha.AnalysisMessage + * @static + * @param {google.cloud.gkehub.servicemesh.v1alpha.IAnalysisMessage} message AnalysisMessage message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + AnalysisMessage.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes an AnalysisMessage message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.servicemesh.v1alpha.AnalysisMessage + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.servicemesh.v1alpha.AnalysisMessage} AnalysisMessage + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + AnalysisMessage.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.servicemesh.v1alpha.AnalysisMessage(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.messageBase = $root.google.cloud.gkehub.servicemesh.v1alpha.AnalysisMessageBase.decode(reader, reader.uint32()); + break; + case 2: + message.description = reader.string(); + break; + case 3: + if (!(message.resourcePaths && message.resourcePaths.length)) + message.resourcePaths = []; + message.resourcePaths.push(reader.string()); + break; + case 4: + message.args = $root.google.protobuf.Struct.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes an AnalysisMessage message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.servicemesh.v1alpha.AnalysisMessage + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.servicemesh.v1alpha.AnalysisMessage} AnalysisMessage + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + AnalysisMessage.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies an AnalysisMessage message. + * @function verify + * @memberof google.cloud.gkehub.servicemesh.v1alpha.AnalysisMessage + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + AnalysisMessage.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.messageBase != null && message.hasOwnProperty("messageBase")) { + var error = $root.google.cloud.gkehub.servicemesh.v1alpha.AnalysisMessageBase.verify(message.messageBase); + if (error) + return "messageBase." + error; + } + if (message.description != null && message.hasOwnProperty("description")) + if (!$util.isString(message.description)) + return "description: string expected"; + if (message.resourcePaths != null && message.hasOwnProperty("resourcePaths")) { + if (!Array.isArray(message.resourcePaths)) + return "resourcePaths: array expected"; + for (var i = 0; i < message.resourcePaths.length; ++i) + if (!$util.isString(message.resourcePaths[i])) + return "resourcePaths: string[] expected"; + } + if (message.args != null && message.hasOwnProperty("args")) { + var error = $root.google.protobuf.Struct.verify(message.args); + if (error) + return "args." + error; + } + return null; + }; + + /** + * Creates an AnalysisMessage message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.servicemesh.v1alpha.AnalysisMessage + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.servicemesh.v1alpha.AnalysisMessage} AnalysisMessage + */ + AnalysisMessage.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.servicemesh.v1alpha.AnalysisMessage) + return object; + var message = new $root.google.cloud.gkehub.servicemesh.v1alpha.AnalysisMessage(); + if (object.messageBase != null) { + if (typeof object.messageBase !== "object") + throw TypeError(".google.cloud.gkehub.servicemesh.v1alpha.AnalysisMessage.messageBase: object expected"); + message.messageBase = $root.google.cloud.gkehub.servicemesh.v1alpha.AnalysisMessageBase.fromObject(object.messageBase); + } + if (object.description != null) + message.description = String(object.description); + if (object.resourcePaths) { + if (!Array.isArray(object.resourcePaths)) + throw TypeError(".google.cloud.gkehub.servicemesh.v1alpha.AnalysisMessage.resourcePaths: array expected"); + message.resourcePaths = []; + for (var i = 0; i < object.resourcePaths.length; ++i) + message.resourcePaths[i] = String(object.resourcePaths[i]); + } + if (object.args != null) { + if (typeof object.args !== "object") + throw TypeError(".google.cloud.gkehub.servicemesh.v1alpha.AnalysisMessage.args: object expected"); + message.args = $root.google.protobuf.Struct.fromObject(object.args); + } + return message; + }; + + /** + * Creates a plain object from an AnalysisMessage message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.servicemesh.v1alpha.AnalysisMessage + * @static + * @param {google.cloud.gkehub.servicemesh.v1alpha.AnalysisMessage} message AnalysisMessage + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + AnalysisMessage.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.arrays || options.defaults) + object.resourcePaths = []; + if (options.defaults) { + object.messageBase = null; + object.description = ""; + object.args = null; + } + if (message.messageBase != null && message.hasOwnProperty("messageBase")) + object.messageBase = $root.google.cloud.gkehub.servicemesh.v1alpha.AnalysisMessageBase.toObject(message.messageBase, options); + if (message.description != null && message.hasOwnProperty("description")) + object.description = message.description; + if (message.resourcePaths && message.resourcePaths.length) { + object.resourcePaths = []; + for (var j = 0; j < message.resourcePaths.length; ++j) + object.resourcePaths[j] = message.resourcePaths[j]; + } + if (message.args != null && message.hasOwnProperty("args")) + object.args = $root.google.protobuf.Struct.toObject(message.args, options); + return object; + }; + + /** + * Converts this AnalysisMessage to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.servicemesh.v1alpha.AnalysisMessage + * @instance + * @returns {Object.} JSON object + */ + AnalysisMessage.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return AnalysisMessage; + })(); + + return v1alpha; + })(); + + return servicemesh; + })(); + + gkehub.v1alpha2 = (function() { + + /** + * Namespace v1alpha2. + * @memberof google.cloud.gkehub + * @namespace + */ + var v1alpha2 = {}; + + v1alpha2.GkeHub = (function() { + + /** + * Constructs a new GkeHub service. + * @memberof google.cloud.gkehub.v1alpha2 + * @classdesc Represents a GkeHub + * @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 GkeHub(rpcImpl, requestDelimited, responseDelimited) { + $protobuf.rpc.Service.call(this, rpcImpl, requestDelimited, responseDelimited); + } + + (GkeHub.prototype = Object.create($protobuf.rpc.Service.prototype)).constructor = GkeHub; + + /** + * Creates new GkeHub service using the specified rpc implementation. + * @function create + * @memberof google.cloud.gkehub.v1alpha2.GkeHub + * @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 {GkeHub} RPC service. Useful where requests and/or responses are streamed. + */ + GkeHub.create = function create(rpcImpl, requestDelimited, responseDelimited) { + return new this(rpcImpl, requestDelimited, responseDelimited); }; /** - * Creates a plain object from a KubernetesResource message. Also converts values to other types if specified. - * @function toObject - * @memberof google.cloud.gkehub.v1beta1.KubernetesResource - * @static - * @param {google.cloud.gkehub.v1beta1.KubernetesResource} message KubernetesResource - * @param {$protobuf.IConversionOptions} [options] Conversion options - * @returns {Object.} Plain object + * Callback as used by {@link google.cloud.gkehub.v1alpha2.GkeHub#listMemberships}. + * @memberof google.cloud.gkehub.v1alpha2.GkeHub + * @typedef ListMembershipsCallback + * @type {function} + * @param {Error|null} error Error, if any + * @param {google.cloud.gkehub.v1alpha2.ListMembershipsResponse} [response] ListMembershipsResponse */ - KubernetesResource.toObject = function toObject(message, options) { - if (!options) - options = {}; - var object = {}; - if (options.arrays || options.defaults) { - object.membershipResources = []; - object.connectResources = []; - } - if (options.defaults) { - object.membershipCrManifest = ""; - object.resourceOptions = null; - } - if (message.membershipCrManifest != null && message.hasOwnProperty("membershipCrManifest")) - object.membershipCrManifest = message.membershipCrManifest; - if (message.membershipResources && message.membershipResources.length) { - object.membershipResources = []; - for (var j = 0; j < message.membershipResources.length; ++j) - object.membershipResources[j] = $root.google.cloud.gkehub.v1beta1.ResourceManifest.toObject(message.membershipResources[j], options); - } - if (message.connectResources && message.connectResources.length) { - object.connectResources = []; - for (var j = 0; j < message.connectResources.length; ++j) - object.connectResources[j] = $root.google.cloud.gkehub.v1beta1.ResourceManifest.toObject(message.connectResources[j], options); - } - if (message.resourceOptions != null && message.hasOwnProperty("resourceOptions")) - object.resourceOptions = $root.google.cloud.gkehub.v1beta1.ResourceOptions.toObject(message.resourceOptions, options); - return object; - }; /** - * Converts this KubernetesResource to JSON. - * @function toJSON - * @memberof google.cloud.gkehub.v1beta1.KubernetesResource + * Calls ListMemberships. + * @function listMemberships + * @memberof google.cloud.gkehub.v1alpha2.GkeHub * @instance - * @returns {Object.} JSON object + * @param {google.cloud.gkehub.v1alpha2.IListMembershipsRequest} request ListMembershipsRequest message or plain object + * @param {google.cloud.gkehub.v1alpha2.GkeHub.ListMembershipsCallback} callback Node-style callback called with the error, if any, and ListMembershipsResponse + * @returns {undefined} + * @variation 1 */ - KubernetesResource.prototype.toJSON = function toJSON() { - return this.constructor.toObject(this, $protobuf.util.toJSONOptions); - }; + Object.defineProperty(GkeHub.prototype.listMemberships = function listMemberships(request, callback) { + return this.rpcCall(listMemberships, $root.google.cloud.gkehub.v1alpha2.ListMembershipsRequest, $root.google.cloud.gkehub.v1alpha2.ListMembershipsResponse, request, callback); + }, "name", { value: "ListMemberships" }); - return KubernetesResource; - })(); + /** + * Calls ListMemberships. + * @function listMemberships + * @memberof google.cloud.gkehub.v1alpha2.GkeHub + * @instance + * @param {google.cloud.gkehub.v1alpha2.IListMembershipsRequest} request ListMembershipsRequest message or plain object + * @returns {Promise} Promise + * @variation 2 + */ - v1beta1.ResourceOptions = (function() { + /** + * Callback as used by {@link google.cloud.gkehub.v1alpha2.GkeHub#getMembership}. + * @memberof google.cloud.gkehub.v1alpha2.GkeHub + * @typedef GetMembershipCallback + * @type {function} + * @param {Error|null} error Error, if any + * @param {google.cloud.gkehub.v1alpha2.Membership} [response] Membership + */ /** - * Properties of a ResourceOptions. - * @memberof google.cloud.gkehub.v1beta1 - * @interface IResourceOptions - * @property {string|null} [connectVersion] ResourceOptions connectVersion - * @property {boolean|null} [v1beta1Crd] ResourceOptions v1beta1Crd + * Calls GetMembership. + * @function getMembership + * @memberof google.cloud.gkehub.v1alpha2.GkeHub + * @instance + * @param {google.cloud.gkehub.v1alpha2.IGetMembershipRequest} request GetMembershipRequest message or plain object + * @param {google.cloud.gkehub.v1alpha2.GkeHub.GetMembershipCallback} callback Node-style callback called with the error, if any, and Membership + * @returns {undefined} + * @variation 1 */ + Object.defineProperty(GkeHub.prototype.getMembership = function getMembership(request, callback) { + return this.rpcCall(getMembership, $root.google.cloud.gkehub.v1alpha2.GetMembershipRequest, $root.google.cloud.gkehub.v1alpha2.Membership, request, callback); + }, "name", { value: "GetMembership" }); /** - * Constructs a new ResourceOptions. - * @memberof google.cloud.gkehub.v1beta1 - * @classdesc Represents a ResourceOptions. - * @implements IResourceOptions - * @constructor - * @param {google.cloud.gkehub.v1beta1.IResourceOptions=} [properties] Properties to set + * Calls GetMembership. + * @function getMembership + * @memberof google.cloud.gkehub.v1alpha2.GkeHub + * @instance + * @param {google.cloud.gkehub.v1alpha2.IGetMembershipRequest} request GetMembershipRequest message or plain object + * @returns {Promise} Promise + * @variation 2 */ - function ResourceOptions(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]]; - } /** - * ResourceOptions connectVersion. - * @member {string} connectVersion - * @memberof google.cloud.gkehub.v1beta1.ResourceOptions + * Callback as used by {@link google.cloud.gkehub.v1alpha2.GkeHub#createMembership}. + * @memberof google.cloud.gkehub.v1alpha2.GkeHub + * @typedef CreateMembershipCallback + * @type {function} + * @param {Error|null} error Error, if any + * @param {google.longrunning.Operation} [response] Operation + */ + + /** + * Calls CreateMembership. + * @function createMembership + * @memberof google.cloud.gkehub.v1alpha2.GkeHub * @instance + * @param {google.cloud.gkehub.v1alpha2.ICreateMembershipRequest} request CreateMembershipRequest message or plain object + * @param {google.cloud.gkehub.v1alpha2.GkeHub.CreateMembershipCallback} callback Node-style callback called with the error, if any, and Operation + * @returns {undefined} + * @variation 1 */ - ResourceOptions.prototype.connectVersion = ""; + Object.defineProperty(GkeHub.prototype.createMembership = function createMembership(request, callback) { + return this.rpcCall(createMembership, $root.google.cloud.gkehub.v1alpha2.CreateMembershipRequest, $root.google.longrunning.Operation, request, callback); + }, "name", { value: "CreateMembership" }); /** - * ResourceOptions v1beta1Crd. - * @member {boolean} v1beta1Crd - * @memberof google.cloud.gkehub.v1beta1.ResourceOptions + * Calls CreateMembership. + * @function createMembership + * @memberof google.cloud.gkehub.v1alpha2.GkeHub * @instance + * @param {google.cloud.gkehub.v1alpha2.ICreateMembershipRequest} request CreateMembershipRequest message or plain object + * @returns {Promise} Promise + * @variation 2 */ - ResourceOptions.prototype.v1beta1Crd = false; /** - * Creates a new ResourceOptions instance using the specified properties. - * @function create - * @memberof google.cloud.gkehub.v1beta1.ResourceOptions - * @static - * @param {google.cloud.gkehub.v1beta1.IResourceOptions=} [properties] Properties to set - * @returns {google.cloud.gkehub.v1beta1.ResourceOptions} ResourceOptions instance + * Callback as used by {@link google.cloud.gkehub.v1alpha2.GkeHub#deleteMembership}. + * @memberof google.cloud.gkehub.v1alpha2.GkeHub + * @typedef DeleteMembershipCallback + * @type {function} + * @param {Error|null} error Error, if any + * @param {google.longrunning.Operation} [response] Operation */ - ResourceOptions.create = function create(properties) { - return new ResourceOptions(properties); - }; /** - * Encodes the specified ResourceOptions message. Does not implicitly {@link google.cloud.gkehub.v1beta1.ResourceOptions.verify|verify} messages. - * @function encode - * @memberof google.cloud.gkehub.v1beta1.ResourceOptions - * @static - * @param {google.cloud.gkehub.v1beta1.IResourceOptions} message ResourceOptions message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer + * Calls DeleteMembership. + * @function deleteMembership + * @memberof google.cloud.gkehub.v1alpha2.GkeHub + * @instance + * @param {google.cloud.gkehub.v1alpha2.IDeleteMembershipRequest} request DeleteMembershipRequest message or plain object + * @param {google.cloud.gkehub.v1alpha2.GkeHub.DeleteMembershipCallback} callback Node-style callback called with the error, if any, and Operation + * @returns {undefined} + * @variation 1 */ - ResourceOptions.encode = function encode(message, writer) { - if (!writer) - writer = $Writer.create(); - if (message.connectVersion != null && Object.hasOwnProperty.call(message, "connectVersion")) - writer.uint32(/* id 1, wireType 2 =*/10).string(message.connectVersion); - if (message.v1beta1Crd != null && Object.hasOwnProperty.call(message, "v1beta1Crd")) - writer.uint32(/* id 2, wireType 0 =*/16).bool(message.v1beta1Crd); - return writer; - }; + Object.defineProperty(GkeHub.prototype.deleteMembership = function deleteMembership(request, callback) { + return this.rpcCall(deleteMembership, $root.google.cloud.gkehub.v1alpha2.DeleteMembershipRequest, $root.google.longrunning.Operation, request, callback); + }, "name", { value: "DeleteMembership" }); /** - * Encodes the specified ResourceOptions message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta1.ResourceOptions.verify|verify} messages. - * @function encodeDelimited - * @memberof google.cloud.gkehub.v1beta1.ResourceOptions - * @static - * @param {google.cloud.gkehub.v1beta1.IResourceOptions} message ResourceOptions message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer + * Calls DeleteMembership. + * @function deleteMembership + * @memberof google.cloud.gkehub.v1alpha2.GkeHub + * @instance + * @param {google.cloud.gkehub.v1alpha2.IDeleteMembershipRequest} request DeleteMembershipRequest message or plain object + * @returns {Promise} Promise + * @variation 2 */ - ResourceOptions.encodeDelimited = function encodeDelimited(message, writer) { - return this.encode(message, writer).ldelim(); - }; /** - * Decodes a ResourceOptions message from the specified reader or buffer. - * @function decode - * @memberof google.cloud.gkehub.v1beta1.ResourceOptions - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @param {number} [length] Message length if known beforehand - * @returns {google.cloud.gkehub.v1beta1.ResourceOptions} ResourceOptions - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing + * Callback as used by {@link google.cloud.gkehub.v1alpha2.GkeHub#updateMembership}. + * @memberof google.cloud.gkehub.v1alpha2.GkeHub + * @typedef UpdateMembershipCallback + * @type {function} + * @param {Error|null} error Error, if any + * @param {google.longrunning.Operation} [response] Operation */ - ResourceOptions.decode = function decode(reader, length) { - if (!(reader instanceof $Reader)) - reader = $Reader.create(reader); - var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.v1beta1.ResourceOptions(); - while (reader.pos < end) { - var tag = reader.uint32(); - switch (tag >>> 3) { - case 1: - message.connectVersion = reader.string(); - break; - case 2: - message.v1beta1Crd = reader.bool(); - break; - default: - reader.skipType(tag & 7); - break; - } - } - return message; - }; /** - * Decodes a ResourceOptions message from the specified reader or buffer, length delimited. - * @function decodeDelimited - * @memberof google.cloud.gkehub.v1beta1.ResourceOptions - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {google.cloud.gkehub.v1beta1.ResourceOptions} ResourceOptions - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing + * Calls UpdateMembership. + * @function updateMembership + * @memberof google.cloud.gkehub.v1alpha2.GkeHub + * @instance + * @param {google.cloud.gkehub.v1alpha2.IUpdateMembershipRequest} request UpdateMembershipRequest message or plain object + * @param {google.cloud.gkehub.v1alpha2.GkeHub.UpdateMembershipCallback} callback Node-style callback called with the error, if any, and Operation + * @returns {undefined} + * @variation 1 */ - ResourceOptions.decodeDelimited = function decodeDelimited(reader) { - if (!(reader instanceof $Reader)) - reader = new $Reader(reader); - return this.decode(reader, reader.uint32()); - }; + Object.defineProperty(GkeHub.prototype.updateMembership = function updateMembership(request, callback) { + return this.rpcCall(updateMembership, $root.google.cloud.gkehub.v1alpha2.UpdateMembershipRequest, $root.google.longrunning.Operation, request, callback); + }, "name", { value: "UpdateMembership" }); /** - * Verifies a ResourceOptions message. - * @function verify - * @memberof google.cloud.gkehub.v1beta1.ResourceOptions - * @static - * @param {Object.} message Plain object to verify - * @returns {string|null} `null` if valid, otherwise the reason why it is not + * Calls UpdateMembership. + * @function updateMembership + * @memberof google.cloud.gkehub.v1alpha2.GkeHub + * @instance + * @param {google.cloud.gkehub.v1alpha2.IUpdateMembershipRequest} request UpdateMembershipRequest message or plain object + * @returns {Promise} Promise + * @variation 2 */ - ResourceOptions.verify = function verify(message) { - if (typeof message !== "object" || message === null) - return "object expected"; - if (message.connectVersion != null && message.hasOwnProperty("connectVersion")) - if (!$util.isString(message.connectVersion)) - return "connectVersion: string expected"; - if (message.v1beta1Crd != null && message.hasOwnProperty("v1beta1Crd")) - if (typeof message.v1beta1Crd !== "boolean") - return "v1beta1Crd: boolean expected"; - return null; - }; /** - * Creates a ResourceOptions message from a plain object. Also converts values to their respective internal types. - * @function fromObject - * @memberof google.cloud.gkehub.v1beta1.ResourceOptions - * @static - * @param {Object.} object Plain object - * @returns {google.cloud.gkehub.v1beta1.ResourceOptions} ResourceOptions + * Callback as used by {@link google.cloud.gkehub.v1alpha2.GkeHub#generateConnectManifest}. + * @memberof google.cloud.gkehub.v1alpha2.GkeHub + * @typedef GenerateConnectManifestCallback + * @type {function} + * @param {Error|null} error Error, if any + * @param {google.cloud.gkehub.v1alpha2.GenerateConnectManifestResponse} [response] GenerateConnectManifestResponse + */ + + /** + * Calls GenerateConnectManifest. + * @function generateConnectManifest + * @memberof google.cloud.gkehub.v1alpha2.GkeHub + * @instance + * @param {google.cloud.gkehub.v1alpha2.IGenerateConnectManifestRequest} request GenerateConnectManifestRequest message or plain object + * @param {google.cloud.gkehub.v1alpha2.GkeHub.GenerateConnectManifestCallback} callback Node-style callback called with the error, if any, and GenerateConnectManifestResponse + * @returns {undefined} + * @variation 1 + */ + Object.defineProperty(GkeHub.prototype.generateConnectManifest = function generateConnectManifest(request, callback) { + return this.rpcCall(generateConnectManifest, $root.google.cloud.gkehub.v1alpha2.GenerateConnectManifestRequest, $root.google.cloud.gkehub.v1alpha2.GenerateConnectManifestResponse, request, callback); + }, "name", { value: "GenerateConnectManifest" }); + + /** + * Calls GenerateConnectManifest. + * @function generateConnectManifest + * @memberof google.cloud.gkehub.v1alpha2.GkeHub + * @instance + * @param {google.cloud.gkehub.v1alpha2.IGenerateConnectManifestRequest} request GenerateConnectManifestRequest message or plain object + * @returns {Promise} Promise + * @variation 2 */ - ResourceOptions.fromObject = function fromObject(object) { - if (object instanceof $root.google.cloud.gkehub.v1beta1.ResourceOptions) - return object; - var message = new $root.google.cloud.gkehub.v1beta1.ResourceOptions(); - if (object.connectVersion != null) - message.connectVersion = String(object.connectVersion); - if (object.v1beta1Crd != null) - message.v1beta1Crd = Boolean(object.v1beta1Crd); - return message; - }; /** - * Creates a plain object from a ResourceOptions message. Also converts values to other types if specified. - * @function toObject - * @memberof google.cloud.gkehub.v1beta1.ResourceOptions - * @static - * @param {google.cloud.gkehub.v1beta1.ResourceOptions} message ResourceOptions - * @param {$protobuf.IConversionOptions} [options] Conversion options - * @returns {Object.} Plain object + * Callback as used by {@link google.cloud.gkehub.v1alpha2.GkeHub#initializeHub}. + * @memberof google.cloud.gkehub.v1alpha2.GkeHub + * @typedef InitializeHubCallback + * @type {function} + * @param {Error|null} error Error, if any + * @param {google.cloud.gkehub.v1alpha2.InitializeHubResponse} [response] InitializeHubResponse */ - ResourceOptions.toObject = function toObject(message, options) { - if (!options) - options = {}; - var object = {}; - if (options.defaults) { - object.connectVersion = ""; - object.v1beta1Crd = false; - } - if (message.connectVersion != null && message.hasOwnProperty("connectVersion")) - object.connectVersion = message.connectVersion; - if (message.v1beta1Crd != null && message.hasOwnProperty("v1beta1Crd")) - object.v1beta1Crd = message.v1beta1Crd; - return object; - }; /** - * Converts this ResourceOptions to JSON. - * @function toJSON - * @memberof google.cloud.gkehub.v1beta1.ResourceOptions + * Calls InitializeHub. + * @function initializeHub + * @memberof google.cloud.gkehub.v1alpha2.GkeHub * @instance - * @returns {Object.} JSON object + * @param {google.cloud.gkehub.v1alpha2.IInitializeHubRequest} request InitializeHubRequest message or plain object + * @param {google.cloud.gkehub.v1alpha2.GkeHub.InitializeHubCallback} callback Node-style callback called with the error, if any, and InitializeHubResponse + * @returns {undefined} + * @variation 1 */ - ResourceOptions.prototype.toJSON = function toJSON() { - return this.constructor.toObject(this, $protobuf.util.toJSONOptions); - }; + Object.defineProperty(GkeHub.prototype.initializeHub = function initializeHub(request, callback) { + return this.rpcCall(initializeHub, $root.google.cloud.gkehub.v1alpha2.InitializeHubRequest, $root.google.cloud.gkehub.v1alpha2.InitializeHubResponse, request, callback); + }, "name", { value: "InitializeHub" }); - return ResourceOptions; + /** + * Calls InitializeHub. + * @function initializeHub + * @memberof google.cloud.gkehub.v1alpha2.GkeHub + * @instance + * @param {google.cloud.gkehub.v1alpha2.IInitializeHubRequest} request InitializeHubRequest message or plain object + * @returns {Promise} Promise + * @variation 2 + */ + + return GkeHub; })(); - v1beta1.ResourceManifest = (function() { + v1alpha2.Membership = (function() { /** - * Properties of a ResourceManifest. - * @memberof google.cloud.gkehub.v1beta1 - * @interface IResourceManifest - * @property {string|null} [manifest] ResourceManifest manifest - * @property {boolean|null} [clusterScoped] ResourceManifest clusterScoped + * Properties of a Membership. + * @memberof google.cloud.gkehub.v1alpha2 + * @interface IMembership + * @property {string|null} [name] Membership name + * @property {Object.|null} [labels] Membership labels + * @property {string|null} [description] Membership description + * @property {google.cloud.gkehub.v1alpha2.IMembershipEndpoint|null} [endpoint] Membership endpoint + * @property {google.cloud.gkehub.v1alpha2.IMembershipState|null} [state] Membership state + * @property {google.protobuf.ITimestamp|null} [createTime] Membership createTime + * @property {google.protobuf.ITimestamp|null} [updateTime] Membership updateTime + * @property {google.protobuf.ITimestamp|null} [deleteTime] Membership deleteTime + * @property {string|null} [externalId] Membership externalId + * @property {google.cloud.gkehub.v1alpha2.IAuthority|null} [authority] Membership authority + * @property {google.protobuf.ITimestamp|null} [lastConnectionTime] Membership lastConnectionTime + * @property {string|null} [uniqueId] Membership uniqueId + * @property {google.cloud.gkehub.v1alpha2.Membership.InfrastructureType|null} [infrastructureType] Membership infrastructureType */ /** - * Constructs a new ResourceManifest. - * @memberof google.cloud.gkehub.v1beta1 - * @classdesc Represents a ResourceManifest. - * @implements IResourceManifest + * Constructs a new Membership. + * @memberof google.cloud.gkehub.v1alpha2 + * @classdesc Represents a Membership. + * @implements IMembership * @constructor - * @param {google.cloud.gkehub.v1beta1.IResourceManifest=} [properties] Properties to set + * @param {google.cloud.gkehub.v1alpha2.IMembership=} [properties] Properties to set */ - function ResourceManifest(properties) { + function Membership(properties) { + this.labels = {}; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) if (properties[keys[i]] != null) @@ -1728,284 +44504,265 @@ } /** - * ResourceManifest manifest. - * @member {string} manifest - * @memberof google.cloud.gkehub.v1beta1.ResourceManifest + * Membership name. + * @member {string} name + * @memberof google.cloud.gkehub.v1alpha2.Membership * @instance */ - ResourceManifest.prototype.manifest = ""; + Membership.prototype.name = ""; /** - * ResourceManifest clusterScoped. - * @member {boolean} clusterScoped - * @memberof google.cloud.gkehub.v1beta1.ResourceManifest + * Membership labels. + * @member {Object.} labels + * @memberof google.cloud.gkehub.v1alpha2.Membership * @instance */ - ResourceManifest.prototype.clusterScoped = false; - - /** - * Creates a new ResourceManifest instance using the specified properties. - * @function create - * @memberof google.cloud.gkehub.v1beta1.ResourceManifest - * @static - * @param {google.cloud.gkehub.v1beta1.IResourceManifest=} [properties] Properties to set - * @returns {google.cloud.gkehub.v1beta1.ResourceManifest} ResourceManifest instance - */ - ResourceManifest.create = function create(properties) { - return new ResourceManifest(properties); - }; - - /** - * Encodes the specified ResourceManifest message. Does not implicitly {@link google.cloud.gkehub.v1beta1.ResourceManifest.verify|verify} messages. - * @function encode - * @memberof google.cloud.gkehub.v1beta1.ResourceManifest - * @static - * @param {google.cloud.gkehub.v1beta1.IResourceManifest} message ResourceManifest message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - ResourceManifest.encode = function encode(message, writer) { - if (!writer) - writer = $Writer.create(); - if (message.manifest != null && Object.hasOwnProperty.call(message, "manifest")) - writer.uint32(/* id 1, wireType 2 =*/10).string(message.manifest); - if (message.clusterScoped != null && Object.hasOwnProperty.call(message, "clusterScoped")) - writer.uint32(/* id 2, wireType 0 =*/16).bool(message.clusterScoped); - return writer; - }; - - /** - * Encodes the specified ResourceManifest message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta1.ResourceManifest.verify|verify} messages. - * @function encodeDelimited - * @memberof google.cloud.gkehub.v1beta1.ResourceManifest - * @static - * @param {google.cloud.gkehub.v1beta1.IResourceManifest} message ResourceManifest message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - ResourceManifest.encodeDelimited = function encodeDelimited(message, writer) { - return this.encode(message, writer).ldelim(); - }; + Membership.prototype.labels = $util.emptyObject; /** - * Decodes a ResourceManifest message from the specified reader or buffer. - * @function decode - * @memberof google.cloud.gkehub.v1beta1.ResourceManifest - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @param {number} [length] Message length if known beforehand - * @returns {google.cloud.gkehub.v1beta1.ResourceManifest} ResourceManifest - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing + * Membership description. + * @member {string} description + * @memberof google.cloud.gkehub.v1alpha2.Membership + * @instance */ - ResourceManifest.decode = function decode(reader, length) { - if (!(reader instanceof $Reader)) - reader = $Reader.create(reader); - var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.v1beta1.ResourceManifest(); - while (reader.pos < end) { - var tag = reader.uint32(); - switch (tag >>> 3) { - case 1: - message.manifest = reader.string(); - break; - case 2: - message.clusterScoped = reader.bool(); - break; - default: - reader.skipType(tag & 7); - break; - } - } - return message; - }; + Membership.prototype.description = ""; /** - * Decodes a ResourceManifest message from the specified reader or buffer, length delimited. - * @function decodeDelimited - * @memberof google.cloud.gkehub.v1beta1.ResourceManifest - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {google.cloud.gkehub.v1beta1.ResourceManifest} ResourceManifest - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing + * Membership endpoint. + * @member {google.cloud.gkehub.v1alpha2.IMembershipEndpoint|null|undefined} endpoint + * @memberof google.cloud.gkehub.v1alpha2.Membership + * @instance */ - ResourceManifest.decodeDelimited = function decodeDelimited(reader) { - if (!(reader instanceof $Reader)) - reader = new $Reader(reader); - return this.decode(reader, reader.uint32()); - }; + Membership.prototype.endpoint = null; /** - * Verifies a ResourceManifest message. - * @function verify - * @memberof google.cloud.gkehub.v1beta1.ResourceManifest - * @static - * @param {Object.} message Plain object to verify - * @returns {string|null} `null` if valid, otherwise the reason why it is not + * Membership state. + * @member {google.cloud.gkehub.v1alpha2.IMembershipState|null|undefined} state + * @memberof google.cloud.gkehub.v1alpha2.Membership + * @instance */ - ResourceManifest.verify = function verify(message) { - if (typeof message !== "object" || message === null) - return "object expected"; - if (message.manifest != null && message.hasOwnProperty("manifest")) - if (!$util.isString(message.manifest)) - return "manifest: string expected"; - if (message.clusterScoped != null && message.hasOwnProperty("clusterScoped")) - if (typeof message.clusterScoped !== "boolean") - return "clusterScoped: boolean expected"; - return null; - }; + Membership.prototype.state = null; /** - * Creates a ResourceManifest message from a plain object. Also converts values to their respective internal types. - * @function fromObject - * @memberof google.cloud.gkehub.v1beta1.ResourceManifest - * @static - * @param {Object.} object Plain object - * @returns {google.cloud.gkehub.v1beta1.ResourceManifest} ResourceManifest + * Membership createTime. + * @member {google.protobuf.ITimestamp|null|undefined} createTime + * @memberof google.cloud.gkehub.v1alpha2.Membership + * @instance */ - ResourceManifest.fromObject = function fromObject(object) { - if (object instanceof $root.google.cloud.gkehub.v1beta1.ResourceManifest) - return object; - var message = new $root.google.cloud.gkehub.v1beta1.ResourceManifest(); - if (object.manifest != null) - message.manifest = String(object.manifest); - if (object.clusterScoped != null) - message.clusterScoped = Boolean(object.clusterScoped); - return message; - }; + Membership.prototype.createTime = null; /** - * Creates a plain object from a ResourceManifest message. Also converts values to other types if specified. - * @function toObject - * @memberof google.cloud.gkehub.v1beta1.ResourceManifest - * @static - * @param {google.cloud.gkehub.v1beta1.ResourceManifest} message ResourceManifest - * @param {$protobuf.IConversionOptions} [options] Conversion options - * @returns {Object.} Plain object - */ - ResourceManifest.toObject = function toObject(message, options) { - if (!options) - options = {}; - var object = {}; - if (options.defaults) { - object.manifest = ""; - object.clusterScoped = false; - } - if (message.manifest != null && message.hasOwnProperty("manifest")) - object.manifest = message.manifest; - if (message.clusterScoped != null && message.hasOwnProperty("clusterScoped")) - object.clusterScoped = message.clusterScoped; - return object; - }; + * Membership updateTime. + * @member {google.protobuf.ITimestamp|null|undefined} updateTime + * @memberof google.cloud.gkehub.v1alpha2.Membership + * @instance + */ + Membership.prototype.updateTime = null; /** - * Converts this ResourceManifest to JSON. - * @function toJSON - * @memberof google.cloud.gkehub.v1beta1.ResourceManifest + * Membership deleteTime. + * @member {google.protobuf.ITimestamp|null|undefined} deleteTime + * @memberof google.cloud.gkehub.v1alpha2.Membership * @instance - * @returns {Object.} JSON object */ - ResourceManifest.prototype.toJSON = function toJSON() { - return this.constructor.toObject(this, $protobuf.util.toJSONOptions); - }; + Membership.prototype.deleteTime = null; - return ResourceManifest; - })(); + /** + * Membership externalId. + * @member {string} externalId + * @memberof google.cloud.gkehub.v1alpha2.Membership + * @instance + */ + Membership.prototype.externalId = ""; - v1beta1.GkeCluster = (function() { + /** + * Membership authority. + * @member {google.cloud.gkehub.v1alpha2.IAuthority|null|undefined} authority + * @memberof google.cloud.gkehub.v1alpha2.Membership + * @instance + */ + Membership.prototype.authority = null; /** - * Properties of a GkeCluster. - * @memberof google.cloud.gkehub.v1beta1 - * @interface IGkeCluster - * @property {string|null} [resourceLink] GkeCluster resourceLink + * Membership lastConnectionTime. + * @member {google.protobuf.ITimestamp|null|undefined} lastConnectionTime + * @memberof google.cloud.gkehub.v1alpha2.Membership + * @instance */ + Membership.prototype.lastConnectionTime = null; /** - * Constructs a new GkeCluster. - * @memberof google.cloud.gkehub.v1beta1 - * @classdesc Represents a GkeCluster. - * @implements IGkeCluster - * @constructor - * @param {google.cloud.gkehub.v1beta1.IGkeCluster=} [properties] Properties to set + * Membership uniqueId. + * @member {string} uniqueId + * @memberof google.cloud.gkehub.v1alpha2.Membership + * @instance */ - function GkeCluster(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]]; - } + Membership.prototype.uniqueId = ""; /** - * GkeCluster resourceLink. - * @member {string} resourceLink - * @memberof google.cloud.gkehub.v1beta1.GkeCluster + * Membership infrastructureType. + * @member {google.cloud.gkehub.v1alpha2.Membership.InfrastructureType} infrastructureType + * @memberof google.cloud.gkehub.v1alpha2.Membership * @instance */ - GkeCluster.prototype.resourceLink = ""; + Membership.prototype.infrastructureType = 0; + + // OneOf field names bound to virtual getters and setters + var $oneOfFields; /** - * Creates a new GkeCluster instance using the specified properties. + * Membership type. + * @member {"endpoint"|undefined} type + * @memberof google.cloud.gkehub.v1alpha2.Membership + * @instance + */ + Object.defineProperty(Membership.prototype, "type", { + get: $util.oneOfGetter($oneOfFields = ["endpoint"]), + set: $util.oneOfSetter($oneOfFields) + }); + + /** + * Creates a new Membership instance using the specified properties. * @function create - * @memberof google.cloud.gkehub.v1beta1.GkeCluster + * @memberof google.cloud.gkehub.v1alpha2.Membership * @static - * @param {google.cloud.gkehub.v1beta1.IGkeCluster=} [properties] Properties to set - * @returns {google.cloud.gkehub.v1beta1.GkeCluster} GkeCluster instance + * @param {google.cloud.gkehub.v1alpha2.IMembership=} [properties] Properties to set + * @returns {google.cloud.gkehub.v1alpha2.Membership} Membership instance */ - GkeCluster.create = function create(properties) { - return new GkeCluster(properties); + Membership.create = function create(properties) { + return new Membership(properties); }; /** - * Encodes the specified GkeCluster message. Does not implicitly {@link google.cloud.gkehub.v1beta1.GkeCluster.verify|verify} messages. + * Encodes the specified Membership message. Does not implicitly {@link google.cloud.gkehub.v1alpha2.Membership.verify|verify} messages. * @function encode - * @memberof google.cloud.gkehub.v1beta1.GkeCluster + * @memberof google.cloud.gkehub.v1alpha2.Membership * @static - * @param {google.cloud.gkehub.v1beta1.IGkeCluster} message GkeCluster message or plain object to encode + * @param {google.cloud.gkehub.v1alpha2.IMembership} message Membership message or plain object to encode * @param {$protobuf.Writer} [writer] Writer to encode to * @returns {$protobuf.Writer} Writer */ - GkeCluster.encode = function encode(message, writer) { + Membership.encode = function encode(message, writer) { if (!writer) writer = $Writer.create(); - if (message.resourceLink != null && Object.hasOwnProperty.call(message, "resourceLink")) - writer.uint32(/* id 1, wireType 2 =*/10).string(message.resourceLink); + if (message.name != null && Object.hasOwnProperty.call(message, "name")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.name); + 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 2, wireType 2 =*/18).fork().uint32(/* id 1, wireType 2 =*/10).string(keys[i]).uint32(/* id 2, wireType 2 =*/18).string(message.labels[keys[i]]).ldelim(); + if (message.description != null && Object.hasOwnProperty.call(message, "description")) + writer.uint32(/* id 3, wireType 2 =*/26).string(message.description); + if (message.endpoint != null && Object.hasOwnProperty.call(message, "endpoint")) + $root.google.cloud.gkehub.v1alpha2.MembershipEndpoint.encode(message.endpoint, writer.uint32(/* id 4, wireType 2 =*/34).fork()).ldelim(); + if (message.state != null && Object.hasOwnProperty.call(message, "state")) + $root.google.cloud.gkehub.v1alpha2.MembershipState.encode(message.state, writer.uint32(/* id 5, wireType 2 =*/42).fork()).ldelim(); + if (message.createTime != null && Object.hasOwnProperty.call(message, "createTime")) + $root.google.protobuf.Timestamp.encode(message.createTime, writer.uint32(/* id 6, wireType 2 =*/50).fork()).ldelim(); + if (message.updateTime != null && Object.hasOwnProperty.call(message, "updateTime")) + $root.google.protobuf.Timestamp.encode(message.updateTime, writer.uint32(/* id 7, wireType 2 =*/58).fork()).ldelim(); + if (message.deleteTime != null && Object.hasOwnProperty.call(message, "deleteTime")) + $root.google.protobuf.Timestamp.encode(message.deleteTime, writer.uint32(/* id 8, wireType 2 =*/66).fork()).ldelim(); + if (message.externalId != null && Object.hasOwnProperty.call(message, "externalId")) + writer.uint32(/* id 9, wireType 2 =*/74).string(message.externalId); + if (message.authority != null && Object.hasOwnProperty.call(message, "authority")) + $root.google.cloud.gkehub.v1alpha2.Authority.encode(message.authority, writer.uint32(/* id 10, wireType 2 =*/82).fork()).ldelim(); + if (message.lastConnectionTime != null && Object.hasOwnProperty.call(message, "lastConnectionTime")) + $root.google.protobuf.Timestamp.encode(message.lastConnectionTime, writer.uint32(/* id 11, wireType 2 =*/90).fork()).ldelim(); + if (message.uniqueId != null && Object.hasOwnProperty.call(message, "uniqueId")) + writer.uint32(/* id 12, wireType 2 =*/98).string(message.uniqueId); + if (message.infrastructureType != null && Object.hasOwnProperty.call(message, "infrastructureType")) + writer.uint32(/* id 13, wireType 0 =*/104).int32(message.infrastructureType); return writer; }; /** - * Encodes the specified GkeCluster message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta1.GkeCluster.verify|verify} messages. + * Encodes the specified Membership message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1alpha2.Membership.verify|verify} messages. * @function encodeDelimited - * @memberof google.cloud.gkehub.v1beta1.GkeCluster + * @memberof google.cloud.gkehub.v1alpha2.Membership * @static - * @param {google.cloud.gkehub.v1beta1.IGkeCluster} message GkeCluster message or plain object to encode + * @param {google.cloud.gkehub.v1alpha2.IMembership} message Membership message or plain object to encode * @param {$protobuf.Writer} [writer] Writer to encode to * @returns {$protobuf.Writer} Writer */ - GkeCluster.encodeDelimited = function encodeDelimited(message, writer) { + Membership.encodeDelimited = function encodeDelimited(message, writer) { return this.encode(message, writer).ldelim(); }; /** - * Decodes a GkeCluster message from the specified reader or buffer. + * Decodes a Membership message from the specified reader or buffer. * @function decode - * @memberof google.cloud.gkehub.v1beta1.GkeCluster + * @memberof google.cloud.gkehub.v1alpha2.Membership * @static * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from * @param {number} [length] Message length if known beforehand - * @returns {google.cloud.gkehub.v1beta1.GkeCluster} GkeCluster + * @returns {google.cloud.gkehub.v1alpha2.Membership} Membership * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - GkeCluster.decode = function decode(reader, length) { + Membership.decode = function decode(reader, length) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); - var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.v1beta1.GkeCluster(); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.v1alpha2.Membership(), key, value; while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { case 1: - message.resourceLink = reader.string(); + message.name = reader.string(); + break; + case 2: + 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 3: + message.description = reader.string(); + break; + case 4: + message.endpoint = $root.google.cloud.gkehub.v1alpha2.MembershipEndpoint.decode(reader, reader.uint32()); + break; + case 5: + message.state = $root.google.cloud.gkehub.v1alpha2.MembershipState.decode(reader, reader.uint32()); + break; + case 6: + message.createTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + break; + case 7: + message.updateTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + break; + case 8: + message.deleteTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + break; + case 9: + message.externalId = reader.string(); + break; + case 10: + message.authority = $root.google.cloud.gkehub.v1alpha2.Authority.decode(reader, reader.uint32()); + break; + case 11: + message.lastConnectionTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + break; + case 12: + message.uniqueId = reader.string(); + break; + case 13: + message.infrastructureType = reader.int32(); break; default: reader.skipType(tag & 7); @@ -2016,112 +44773,296 @@ }; /** - * Decodes a GkeCluster message from the specified reader or buffer, length delimited. + * Decodes a Membership message from the specified reader or buffer, length delimited. * @function decodeDelimited - * @memberof google.cloud.gkehub.v1beta1.GkeCluster + * @memberof google.cloud.gkehub.v1alpha2.Membership * @static * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {google.cloud.gkehub.v1beta1.GkeCluster} GkeCluster + * @returns {google.cloud.gkehub.v1alpha2.Membership} Membership * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - GkeCluster.decodeDelimited = function decodeDelimited(reader) { + Membership.decodeDelimited = function decodeDelimited(reader) { if (!(reader instanceof $Reader)) reader = new $Reader(reader); return this.decode(reader, reader.uint32()); }; /** - * Verifies a GkeCluster message. + * Verifies a Membership message. * @function verify - * @memberof google.cloud.gkehub.v1beta1.GkeCluster + * @memberof google.cloud.gkehub.v1alpha2.Membership * @static * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - GkeCluster.verify = function verify(message) { + Membership.verify = function verify(message) { if (typeof message !== "object" || message === null) return "object expected"; - if (message.resourceLink != null && message.hasOwnProperty("resourceLink")) - if (!$util.isString(message.resourceLink)) - return "resourceLink: string expected"; + var properties = {}; + if (message.name != null && message.hasOwnProperty("name")) + if (!$util.isString(message.name)) + return "name: 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.description != null && message.hasOwnProperty("description")) + if (!$util.isString(message.description)) + return "description: string expected"; + if (message.endpoint != null && message.hasOwnProperty("endpoint")) { + properties.type = 1; + { + var error = $root.google.cloud.gkehub.v1alpha2.MembershipEndpoint.verify(message.endpoint); + if (error) + return "endpoint." + error; + } + } + if (message.state != null && message.hasOwnProperty("state")) { + var error = $root.google.cloud.gkehub.v1alpha2.MembershipState.verify(message.state); + if (error) + return "state." + error; + } + if (message.createTime != null && message.hasOwnProperty("createTime")) { + var error = $root.google.protobuf.Timestamp.verify(message.createTime); + if (error) + return "createTime." + error; + } + if (message.updateTime != null && message.hasOwnProperty("updateTime")) { + var error = $root.google.protobuf.Timestamp.verify(message.updateTime); + if (error) + return "updateTime." + error; + } + if (message.deleteTime != null && message.hasOwnProperty("deleteTime")) { + var error = $root.google.protobuf.Timestamp.verify(message.deleteTime); + if (error) + return "deleteTime." + error; + } + if (message.externalId != null && message.hasOwnProperty("externalId")) + if (!$util.isString(message.externalId)) + return "externalId: string expected"; + if (message.authority != null && message.hasOwnProperty("authority")) { + var error = $root.google.cloud.gkehub.v1alpha2.Authority.verify(message.authority); + if (error) + return "authority." + error; + } + if (message.lastConnectionTime != null && message.hasOwnProperty("lastConnectionTime")) { + var error = $root.google.protobuf.Timestamp.verify(message.lastConnectionTime); + if (error) + return "lastConnectionTime." + error; + } + if (message.uniqueId != null && message.hasOwnProperty("uniqueId")) + if (!$util.isString(message.uniqueId)) + return "uniqueId: string expected"; + if (message.infrastructureType != null && message.hasOwnProperty("infrastructureType")) + switch (message.infrastructureType) { + default: + return "infrastructureType: enum value expected"; + case 0: + case 1: + case 2: + break; + } return null; }; /** - * Creates a GkeCluster message from a plain object. Also converts values to their respective internal types. + * Creates a Membership message from a plain object. Also converts values to their respective internal types. * @function fromObject - * @memberof google.cloud.gkehub.v1beta1.GkeCluster + * @memberof google.cloud.gkehub.v1alpha2.Membership * @static * @param {Object.} object Plain object - * @returns {google.cloud.gkehub.v1beta1.GkeCluster} GkeCluster + * @returns {google.cloud.gkehub.v1alpha2.Membership} Membership */ - GkeCluster.fromObject = function fromObject(object) { - if (object instanceof $root.google.cloud.gkehub.v1beta1.GkeCluster) + Membership.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.v1alpha2.Membership) return object; - var message = new $root.google.cloud.gkehub.v1beta1.GkeCluster(); - if (object.resourceLink != null) - message.resourceLink = String(object.resourceLink); + var message = new $root.google.cloud.gkehub.v1alpha2.Membership(); + if (object.name != null) + message.name = String(object.name); + if (object.labels) { + if (typeof object.labels !== "object") + throw TypeError(".google.cloud.gkehub.v1alpha2.Membership.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.description != null) + message.description = String(object.description); + if (object.endpoint != null) { + if (typeof object.endpoint !== "object") + throw TypeError(".google.cloud.gkehub.v1alpha2.Membership.endpoint: object expected"); + message.endpoint = $root.google.cloud.gkehub.v1alpha2.MembershipEndpoint.fromObject(object.endpoint); + } + if (object.state != null) { + if (typeof object.state !== "object") + throw TypeError(".google.cloud.gkehub.v1alpha2.Membership.state: object expected"); + message.state = $root.google.cloud.gkehub.v1alpha2.MembershipState.fromObject(object.state); + } + if (object.createTime != null) { + if (typeof object.createTime !== "object") + throw TypeError(".google.cloud.gkehub.v1alpha2.Membership.createTime: object expected"); + message.createTime = $root.google.protobuf.Timestamp.fromObject(object.createTime); + } + if (object.updateTime != null) { + if (typeof object.updateTime !== "object") + throw TypeError(".google.cloud.gkehub.v1alpha2.Membership.updateTime: object expected"); + message.updateTime = $root.google.protobuf.Timestamp.fromObject(object.updateTime); + } + if (object.deleteTime != null) { + if (typeof object.deleteTime !== "object") + throw TypeError(".google.cloud.gkehub.v1alpha2.Membership.deleteTime: object expected"); + message.deleteTime = $root.google.protobuf.Timestamp.fromObject(object.deleteTime); + } + if (object.externalId != null) + message.externalId = String(object.externalId); + if (object.authority != null) { + if (typeof object.authority !== "object") + throw TypeError(".google.cloud.gkehub.v1alpha2.Membership.authority: object expected"); + message.authority = $root.google.cloud.gkehub.v1alpha2.Authority.fromObject(object.authority); + } + if (object.lastConnectionTime != null) { + if (typeof object.lastConnectionTime !== "object") + throw TypeError(".google.cloud.gkehub.v1alpha2.Membership.lastConnectionTime: object expected"); + message.lastConnectionTime = $root.google.protobuf.Timestamp.fromObject(object.lastConnectionTime); + } + if (object.uniqueId != null) + message.uniqueId = String(object.uniqueId); + switch (object.infrastructureType) { + case "INFRASTRUCTURE_TYPE_UNSPECIFIED": + case 0: + message.infrastructureType = 0; + break; + case "ON_PREM": + case 1: + message.infrastructureType = 1; + break; + case "MULTI_CLOUD": + case 2: + message.infrastructureType = 2; + break; + } return message; }; /** - * Creates a plain object from a GkeCluster message. Also converts values to other types if specified. + * Creates a plain object from a Membership message. Also converts values to other types if specified. * @function toObject - * @memberof google.cloud.gkehub.v1beta1.GkeCluster + * @memberof google.cloud.gkehub.v1alpha2.Membership * @static - * @param {google.cloud.gkehub.v1beta1.GkeCluster} message GkeCluster + * @param {google.cloud.gkehub.v1alpha2.Membership} message Membership * @param {$protobuf.IConversionOptions} [options] Conversion options * @returns {Object.} Plain object */ - GkeCluster.toObject = function toObject(message, options) { + Membership.toObject = function toObject(message, options) { if (!options) options = {}; var object = {}; - if (options.defaults) - object.resourceLink = ""; - if (message.resourceLink != null && message.hasOwnProperty("resourceLink")) - object.resourceLink = message.resourceLink; + if (options.objects || options.defaults) + object.labels = {}; + if (options.defaults) { + object.name = ""; + object.description = ""; + object.state = null; + object.createTime = null; + object.updateTime = null; + object.deleteTime = null; + object.externalId = ""; + object.authority = null; + object.lastConnectionTime = null; + object.uniqueId = ""; + object.infrastructureType = options.enums === String ? "INFRASTRUCTURE_TYPE_UNSPECIFIED" : 0; + } + if (message.name != null && message.hasOwnProperty("name")) + object.name = message.name; + 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]]; + } + if (message.description != null && message.hasOwnProperty("description")) + object.description = message.description; + if (message.endpoint != null && message.hasOwnProperty("endpoint")) { + object.endpoint = $root.google.cloud.gkehub.v1alpha2.MembershipEndpoint.toObject(message.endpoint, options); + if (options.oneofs) + object.type = "endpoint"; + } + if (message.state != null && message.hasOwnProperty("state")) + object.state = $root.google.cloud.gkehub.v1alpha2.MembershipState.toObject(message.state, options); + if (message.createTime != null && message.hasOwnProperty("createTime")) + object.createTime = $root.google.protobuf.Timestamp.toObject(message.createTime, options); + if (message.updateTime != null && message.hasOwnProperty("updateTime")) + object.updateTime = $root.google.protobuf.Timestamp.toObject(message.updateTime, options); + if (message.deleteTime != null && message.hasOwnProperty("deleteTime")) + object.deleteTime = $root.google.protobuf.Timestamp.toObject(message.deleteTime, options); + if (message.externalId != null && message.hasOwnProperty("externalId")) + object.externalId = message.externalId; + if (message.authority != null && message.hasOwnProperty("authority")) + object.authority = $root.google.cloud.gkehub.v1alpha2.Authority.toObject(message.authority, options); + if (message.lastConnectionTime != null && message.hasOwnProperty("lastConnectionTime")) + object.lastConnectionTime = $root.google.protobuf.Timestamp.toObject(message.lastConnectionTime, options); + if (message.uniqueId != null && message.hasOwnProperty("uniqueId")) + object.uniqueId = message.uniqueId; + if (message.infrastructureType != null && message.hasOwnProperty("infrastructureType")) + object.infrastructureType = options.enums === String ? $root.google.cloud.gkehub.v1alpha2.Membership.InfrastructureType[message.infrastructureType] : message.infrastructureType; return object; }; /** - * Converts this GkeCluster to JSON. + * Converts this Membership to JSON. * @function toJSON - * @memberof google.cloud.gkehub.v1beta1.GkeCluster + * @memberof google.cloud.gkehub.v1alpha2.Membership * @instance * @returns {Object.} JSON object */ - GkeCluster.prototype.toJSON = function toJSON() { + Membership.prototype.toJSON = function toJSON() { return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; - return GkeCluster; + /** + * InfrastructureType enum. + * @name google.cloud.gkehub.v1alpha2.Membership.InfrastructureType + * @enum {number} + * @property {number} INFRASTRUCTURE_TYPE_UNSPECIFIED=0 INFRASTRUCTURE_TYPE_UNSPECIFIED value + * @property {number} ON_PREM=1 ON_PREM value + * @property {number} MULTI_CLOUD=2 MULTI_CLOUD value + */ + Membership.InfrastructureType = (function() { + var valuesById = {}, values = Object.create(valuesById); + values[valuesById[0] = "INFRASTRUCTURE_TYPE_UNSPECIFIED"] = 0; + values[valuesById[1] = "ON_PREM"] = 1; + values[valuesById[2] = "MULTI_CLOUD"] = 2; + return values; + })(); + + return Membership; })(); - v1beta1.KubernetesMetadata = (function() { + v1alpha2.MembershipEndpoint = (function() { /** - * Properties of a KubernetesMetadata. - * @memberof google.cloud.gkehub.v1beta1 - * @interface IKubernetesMetadata - * @property {string|null} [kubernetesApiServerVersion] KubernetesMetadata kubernetesApiServerVersion - * @property {string|null} [nodeProviderId] KubernetesMetadata nodeProviderId - * @property {number|null} [nodeCount] KubernetesMetadata nodeCount - * @property {number|null} [vcpuCount] KubernetesMetadata vcpuCount - * @property {number|null} [memoryMb] KubernetesMetadata memoryMb - * @property {google.protobuf.ITimestamp|null} [updateTime] KubernetesMetadata updateTime + * Properties of a MembershipEndpoint. + * @memberof google.cloud.gkehub.v1alpha2 + * @interface IMembershipEndpoint + * @property {google.cloud.gkehub.v1alpha2.IGkeCluster|null} [gkeCluster] MembershipEndpoint gkeCluster + * @property {google.cloud.gkehub.v1alpha2.IKubernetesMetadata|null} [kubernetesMetadata] MembershipEndpoint kubernetesMetadata + * @property {google.cloud.gkehub.v1alpha2.IKubernetesResource|null} [kubernetesResource] MembershipEndpoint kubernetesResource */ /** - * Constructs a new KubernetesMetadata. - * @memberof google.cloud.gkehub.v1beta1 - * @classdesc Represents a KubernetesMetadata. - * @implements IKubernetesMetadata + * Constructs a new MembershipEndpoint. + * @memberof google.cloud.gkehub.v1alpha2 + * @classdesc Represents a MembershipEndpoint. + * @implements IMembershipEndpoint * @constructor - * @param {google.cloud.gkehub.v1beta1.IKubernetesMetadata=} [properties] Properties to set + * @param {google.cloud.gkehub.v1alpha2.IMembershipEndpoint=} [properties] Properties to set */ - function KubernetesMetadata(properties) { + function MembershipEndpoint(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) if (properties[keys[i]] != null) @@ -2129,140 +45070,101 @@ } /** - * KubernetesMetadata kubernetesApiServerVersion. - * @member {string} kubernetesApiServerVersion - * @memberof google.cloud.gkehub.v1beta1.KubernetesMetadata - * @instance - */ - KubernetesMetadata.prototype.kubernetesApiServerVersion = ""; - - /** - * KubernetesMetadata nodeProviderId. - * @member {string} nodeProviderId - * @memberof google.cloud.gkehub.v1beta1.KubernetesMetadata - * @instance - */ - KubernetesMetadata.prototype.nodeProviderId = ""; - - /** - * KubernetesMetadata nodeCount. - * @member {number} nodeCount - * @memberof google.cloud.gkehub.v1beta1.KubernetesMetadata - * @instance - */ - KubernetesMetadata.prototype.nodeCount = 0; - - /** - * KubernetesMetadata vcpuCount. - * @member {number} vcpuCount - * @memberof google.cloud.gkehub.v1beta1.KubernetesMetadata + * MembershipEndpoint gkeCluster. + * @member {google.cloud.gkehub.v1alpha2.IGkeCluster|null|undefined} gkeCluster + * @memberof google.cloud.gkehub.v1alpha2.MembershipEndpoint * @instance */ - KubernetesMetadata.prototype.vcpuCount = 0; + MembershipEndpoint.prototype.gkeCluster = null; /** - * KubernetesMetadata memoryMb. - * @member {number} memoryMb - * @memberof google.cloud.gkehub.v1beta1.KubernetesMetadata + * MembershipEndpoint kubernetesMetadata. + * @member {google.cloud.gkehub.v1alpha2.IKubernetesMetadata|null|undefined} kubernetesMetadata + * @memberof google.cloud.gkehub.v1alpha2.MembershipEndpoint * @instance */ - KubernetesMetadata.prototype.memoryMb = 0; + MembershipEndpoint.prototype.kubernetesMetadata = null; /** - * KubernetesMetadata updateTime. - * @member {google.protobuf.ITimestamp|null|undefined} updateTime - * @memberof google.cloud.gkehub.v1beta1.KubernetesMetadata + * MembershipEndpoint kubernetesResource. + * @member {google.cloud.gkehub.v1alpha2.IKubernetesResource|null|undefined} kubernetesResource + * @memberof google.cloud.gkehub.v1alpha2.MembershipEndpoint * @instance */ - KubernetesMetadata.prototype.updateTime = null; + MembershipEndpoint.prototype.kubernetesResource = null; /** - * Creates a new KubernetesMetadata instance using the specified properties. + * Creates a new MembershipEndpoint instance using the specified properties. * @function create - * @memberof google.cloud.gkehub.v1beta1.KubernetesMetadata + * @memberof google.cloud.gkehub.v1alpha2.MembershipEndpoint * @static - * @param {google.cloud.gkehub.v1beta1.IKubernetesMetadata=} [properties] Properties to set - * @returns {google.cloud.gkehub.v1beta1.KubernetesMetadata} KubernetesMetadata instance + * @param {google.cloud.gkehub.v1alpha2.IMembershipEndpoint=} [properties] Properties to set + * @returns {google.cloud.gkehub.v1alpha2.MembershipEndpoint} MembershipEndpoint instance */ - KubernetesMetadata.create = function create(properties) { - return new KubernetesMetadata(properties); + MembershipEndpoint.create = function create(properties) { + return new MembershipEndpoint(properties); }; /** - * Encodes the specified KubernetesMetadata message. Does not implicitly {@link google.cloud.gkehub.v1beta1.KubernetesMetadata.verify|verify} messages. + * Encodes the specified MembershipEndpoint message. Does not implicitly {@link google.cloud.gkehub.v1alpha2.MembershipEndpoint.verify|verify} messages. * @function encode - * @memberof google.cloud.gkehub.v1beta1.KubernetesMetadata + * @memberof google.cloud.gkehub.v1alpha2.MembershipEndpoint * @static - * @param {google.cloud.gkehub.v1beta1.IKubernetesMetadata} message KubernetesMetadata message or plain object to encode + * @param {google.cloud.gkehub.v1alpha2.IMembershipEndpoint} message MembershipEndpoint message or plain object to encode * @param {$protobuf.Writer} [writer] Writer to encode to * @returns {$protobuf.Writer} Writer */ - KubernetesMetadata.encode = function encode(message, writer) { + MembershipEndpoint.encode = function encode(message, writer) { if (!writer) writer = $Writer.create(); - if (message.kubernetesApiServerVersion != null && Object.hasOwnProperty.call(message, "kubernetesApiServerVersion")) - writer.uint32(/* id 1, wireType 2 =*/10).string(message.kubernetesApiServerVersion); - if (message.nodeProviderId != null && Object.hasOwnProperty.call(message, "nodeProviderId")) - writer.uint32(/* id 2, wireType 2 =*/18).string(message.nodeProviderId); - if (message.nodeCount != null && Object.hasOwnProperty.call(message, "nodeCount")) - writer.uint32(/* id 3, wireType 0 =*/24).int32(message.nodeCount); - if (message.vcpuCount != null && Object.hasOwnProperty.call(message, "vcpuCount")) - writer.uint32(/* id 4, wireType 0 =*/32).int32(message.vcpuCount); - if (message.memoryMb != null && Object.hasOwnProperty.call(message, "memoryMb")) - writer.uint32(/* id 5, wireType 0 =*/40).int32(message.memoryMb); - if (message.updateTime != null && Object.hasOwnProperty.call(message, "updateTime")) - $root.google.protobuf.Timestamp.encode(message.updateTime, writer.uint32(/* id 100, wireType 2 =*/802).fork()).ldelim(); + if (message.gkeCluster != null && Object.hasOwnProperty.call(message, "gkeCluster")) + $root.google.cloud.gkehub.v1alpha2.GkeCluster.encode(message.gkeCluster, writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim(); + if (message.kubernetesMetadata != null && Object.hasOwnProperty.call(message, "kubernetesMetadata")) + $root.google.cloud.gkehub.v1alpha2.KubernetesMetadata.encode(message.kubernetesMetadata, writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim(); + if (message.kubernetesResource != null && Object.hasOwnProperty.call(message, "kubernetesResource")) + $root.google.cloud.gkehub.v1alpha2.KubernetesResource.encode(message.kubernetesResource, writer.uint32(/* id 3, wireType 2 =*/26).fork()).ldelim(); return writer; }; /** - * Encodes the specified KubernetesMetadata message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta1.KubernetesMetadata.verify|verify} messages. + * Encodes the specified MembershipEndpoint message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1alpha2.MembershipEndpoint.verify|verify} messages. * @function encodeDelimited - * @memberof google.cloud.gkehub.v1beta1.KubernetesMetadata + * @memberof google.cloud.gkehub.v1alpha2.MembershipEndpoint * @static - * @param {google.cloud.gkehub.v1beta1.IKubernetesMetadata} message KubernetesMetadata message or plain object to encode + * @param {google.cloud.gkehub.v1alpha2.IMembershipEndpoint} message MembershipEndpoint message or plain object to encode * @param {$protobuf.Writer} [writer] Writer to encode to * @returns {$protobuf.Writer} Writer */ - KubernetesMetadata.encodeDelimited = function encodeDelimited(message, writer) { + MembershipEndpoint.encodeDelimited = function encodeDelimited(message, writer) { return this.encode(message, writer).ldelim(); }; /** - * Decodes a KubernetesMetadata message from the specified reader or buffer. + * Decodes a MembershipEndpoint message from the specified reader or buffer. * @function decode - * @memberof google.cloud.gkehub.v1beta1.KubernetesMetadata + * @memberof google.cloud.gkehub.v1alpha2.MembershipEndpoint * @static * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from * @param {number} [length] Message length if known beforehand - * @returns {google.cloud.gkehub.v1beta1.KubernetesMetadata} KubernetesMetadata + * @returns {google.cloud.gkehub.v1alpha2.MembershipEndpoint} MembershipEndpoint * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - KubernetesMetadata.decode = function decode(reader, length) { + MembershipEndpoint.decode = function decode(reader, length) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); - var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.v1beta1.KubernetesMetadata(); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.v1alpha2.MembershipEndpoint(); while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { case 1: - message.kubernetesApiServerVersion = reader.string(); - break; - case 2: - message.nodeProviderId = reader.string(); - break; - case 3: - message.nodeCount = reader.int32(); - break; - case 4: - message.vcpuCount = reader.int32(); - break; - case 5: - message.memoryMb = reader.int32(); + message.gkeCluster = $root.google.cloud.gkehub.v1alpha2.GkeCluster.decode(reader, reader.uint32()); break; - case 100: - message.updateTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + case 2: + message.kubernetesMetadata = $root.google.cloud.gkehub.v1alpha2.KubernetesMetadata.decode(reader, reader.uint32()); + break; + case 3: + message.kubernetesResource = $root.google.cloud.gkehub.v1alpha2.KubernetesResource.decode(reader, reader.uint32()); break; default: reader.skipType(tag & 7); @@ -2273,156 +45175,144 @@ }; /** - * Decodes a KubernetesMetadata message from the specified reader or buffer, length delimited. + * Decodes a MembershipEndpoint message from the specified reader or buffer, length delimited. * @function decodeDelimited - * @memberof google.cloud.gkehub.v1beta1.KubernetesMetadata + * @memberof google.cloud.gkehub.v1alpha2.MembershipEndpoint * @static * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {google.cloud.gkehub.v1beta1.KubernetesMetadata} KubernetesMetadata + * @returns {google.cloud.gkehub.v1alpha2.MembershipEndpoint} MembershipEndpoint * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - KubernetesMetadata.decodeDelimited = function decodeDelimited(reader) { + MembershipEndpoint.decodeDelimited = function decodeDelimited(reader) { if (!(reader instanceof $Reader)) reader = new $Reader(reader); return this.decode(reader, reader.uint32()); }; /** - * Verifies a KubernetesMetadata message. + * Verifies a MembershipEndpoint message. * @function verify - * @memberof google.cloud.gkehub.v1beta1.KubernetesMetadata + * @memberof google.cloud.gkehub.v1alpha2.MembershipEndpoint * @static * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - KubernetesMetadata.verify = function verify(message) { + MembershipEndpoint.verify = function verify(message) { if (typeof message !== "object" || message === null) return "object expected"; - if (message.kubernetesApiServerVersion != null && message.hasOwnProperty("kubernetesApiServerVersion")) - if (!$util.isString(message.kubernetesApiServerVersion)) - return "kubernetesApiServerVersion: string expected"; - if (message.nodeProviderId != null && message.hasOwnProperty("nodeProviderId")) - if (!$util.isString(message.nodeProviderId)) - return "nodeProviderId: string expected"; - if (message.nodeCount != null && message.hasOwnProperty("nodeCount")) - if (!$util.isInteger(message.nodeCount)) - return "nodeCount: integer expected"; - if (message.vcpuCount != null && message.hasOwnProperty("vcpuCount")) - if (!$util.isInteger(message.vcpuCount)) - return "vcpuCount: integer expected"; - if (message.memoryMb != null && message.hasOwnProperty("memoryMb")) - if (!$util.isInteger(message.memoryMb)) - return "memoryMb: integer expected"; - if (message.updateTime != null && message.hasOwnProperty("updateTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.updateTime); + if (message.gkeCluster != null && message.hasOwnProperty("gkeCluster")) { + var error = $root.google.cloud.gkehub.v1alpha2.GkeCluster.verify(message.gkeCluster); if (error) - return "updateTime." + error; + return "gkeCluster." + error; + } + if (message.kubernetesMetadata != null && message.hasOwnProperty("kubernetesMetadata")) { + var error = $root.google.cloud.gkehub.v1alpha2.KubernetesMetadata.verify(message.kubernetesMetadata); + if (error) + return "kubernetesMetadata." + error; + } + if (message.kubernetesResource != null && message.hasOwnProperty("kubernetesResource")) { + var error = $root.google.cloud.gkehub.v1alpha2.KubernetesResource.verify(message.kubernetesResource); + if (error) + return "kubernetesResource." + error; } return null; }; /** - * Creates a KubernetesMetadata message from a plain object. Also converts values to their respective internal types. + * Creates a MembershipEndpoint message from a plain object. Also converts values to their respective internal types. * @function fromObject - * @memberof google.cloud.gkehub.v1beta1.KubernetesMetadata + * @memberof google.cloud.gkehub.v1alpha2.MembershipEndpoint * @static * @param {Object.} object Plain object - * @returns {google.cloud.gkehub.v1beta1.KubernetesMetadata} KubernetesMetadata + * @returns {google.cloud.gkehub.v1alpha2.MembershipEndpoint} MembershipEndpoint */ - KubernetesMetadata.fromObject = function fromObject(object) { - if (object instanceof $root.google.cloud.gkehub.v1beta1.KubernetesMetadata) + MembershipEndpoint.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.v1alpha2.MembershipEndpoint) return object; - var message = new $root.google.cloud.gkehub.v1beta1.KubernetesMetadata(); - if (object.kubernetesApiServerVersion != null) - message.kubernetesApiServerVersion = String(object.kubernetesApiServerVersion); - if (object.nodeProviderId != null) - message.nodeProviderId = String(object.nodeProviderId); - if (object.nodeCount != null) - message.nodeCount = object.nodeCount | 0; - if (object.vcpuCount != null) - message.vcpuCount = object.vcpuCount | 0; - if (object.memoryMb != null) - message.memoryMb = object.memoryMb | 0; - if (object.updateTime != null) { - if (typeof object.updateTime !== "object") - throw TypeError(".google.cloud.gkehub.v1beta1.KubernetesMetadata.updateTime: object expected"); - message.updateTime = $root.google.protobuf.Timestamp.fromObject(object.updateTime); + var message = new $root.google.cloud.gkehub.v1alpha2.MembershipEndpoint(); + if (object.gkeCluster != null) { + if (typeof object.gkeCluster !== "object") + throw TypeError(".google.cloud.gkehub.v1alpha2.MembershipEndpoint.gkeCluster: object expected"); + message.gkeCluster = $root.google.cloud.gkehub.v1alpha2.GkeCluster.fromObject(object.gkeCluster); + } + if (object.kubernetesMetadata != null) { + if (typeof object.kubernetesMetadata !== "object") + throw TypeError(".google.cloud.gkehub.v1alpha2.MembershipEndpoint.kubernetesMetadata: object expected"); + message.kubernetesMetadata = $root.google.cloud.gkehub.v1alpha2.KubernetesMetadata.fromObject(object.kubernetesMetadata); + } + if (object.kubernetesResource != null) { + if (typeof object.kubernetesResource !== "object") + throw TypeError(".google.cloud.gkehub.v1alpha2.MembershipEndpoint.kubernetesResource: object expected"); + message.kubernetesResource = $root.google.cloud.gkehub.v1alpha2.KubernetesResource.fromObject(object.kubernetesResource); } return message; }; /** - * Creates a plain object from a KubernetesMetadata message. Also converts values to other types if specified. + * Creates a plain object from a MembershipEndpoint message. Also converts values to other types if specified. * @function toObject - * @memberof google.cloud.gkehub.v1beta1.KubernetesMetadata + * @memberof google.cloud.gkehub.v1alpha2.MembershipEndpoint * @static - * @param {google.cloud.gkehub.v1beta1.KubernetesMetadata} message KubernetesMetadata + * @param {google.cloud.gkehub.v1alpha2.MembershipEndpoint} message MembershipEndpoint * @param {$protobuf.IConversionOptions} [options] Conversion options * @returns {Object.} Plain object */ - KubernetesMetadata.toObject = function toObject(message, options) { + MembershipEndpoint.toObject = function toObject(message, options) { if (!options) options = {}; var object = {}; if (options.defaults) { - object.kubernetesApiServerVersion = ""; - object.nodeProviderId = ""; - object.nodeCount = 0; - object.vcpuCount = 0; - object.memoryMb = 0; - object.updateTime = null; + object.gkeCluster = null; + object.kubernetesMetadata = null; + object.kubernetesResource = null; } - if (message.kubernetesApiServerVersion != null && message.hasOwnProperty("kubernetesApiServerVersion")) - object.kubernetesApiServerVersion = message.kubernetesApiServerVersion; - if (message.nodeProviderId != null && message.hasOwnProperty("nodeProviderId")) - object.nodeProviderId = message.nodeProviderId; - if (message.nodeCount != null && message.hasOwnProperty("nodeCount")) - object.nodeCount = message.nodeCount; - if (message.vcpuCount != null && message.hasOwnProperty("vcpuCount")) - object.vcpuCount = message.vcpuCount; - if (message.memoryMb != null && message.hasOwnProperty("memoryMb")) - object.memoryMb = message.memoryMb; - if (message.updateTime != null && message.hasOwnProperty("updateTime")) - object.updateTime = $root.google.protobuf.Timestamp.toObject(message.updateTime, options); + if (message.gkeCluster != null && message.hasOwnProperty("gkeCluster")) + object.gkeCluster = $root.google.cloud.gkehub.v1alpha2.GkeCluster.toObject(message.gkeCluster, options); + if (message.kubernetesMetadata != null && message.hasOwnProperty("kubernetesMetadata")) + object.kubernetesMetadata = $root.google.cloud.gkehub.v1alpha2.KubernetesMetadata.toObject(message.kubernetesMetadata, options); + if (message.kubernetesResource != null && message.hasOwnProperty("kubernetesResource")) + object.kubernetesResource = $root.google.cloud.gkehub.v1alpha2.KubernetesResource.toObject(message.kubernetesResource, options); return object; }; /** - * Converts this KubernetesMetadata to JSON. + * Converts this MembershipEndpoint to JSON. * @function toJSON - * @memberof google.cloud.gkehub.v1beta1.KubernetesMetadata + * @memberof google.cloud.gkehub.v1alpha2.MembershipEndpoint * @instance * @returns {Object.} JSON object */ - KubernetesMetadata.prototype.toJSON = function toJSON() { + MembershipEndpoint.prototype.toJSON = function toJSON() { return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; - return KubernetesMetadata; + return MembershipEndpoint; })(); - v1beta1.Authority = (function() { + v1alpha2.KubernetesResource = (function() { /** - * Properties of an Authority. - * @memberof google.cloud.gkehub.v1beta1 - * @interface IAuthority - * @property {string|null} [issuer] Authority issuer - * @property {string|null} [workloadIdentityPool] Authority workloadIdentityPool - * @property {string|null} [identityProvider] Authority identityProvider - * @property {Uint8Array|null} [oidcJwks] Authority oidcJwks + * Properties of a KubernetesResource. + * @memberof google.cloud.gkehub.v1alpha2 + * @interface IKubernetesResource + * @property {string|null} [membershipCrManifest] KubernetesResource membershipCrManifest + * @property {Array.|null} [membershipResources] KubernetesResource membershipResources + * @property {Array.|null} [connectResources] KubernetesResource connectResources + * @property {google.cloud.gkehub.v1alpha2.IResourceOptions|null} [resourceOptions] KubernetesResource resourceOptions */ /** - * Constructs a new Authority. - * @memberof google.cloud.gkehub.v1beta1 - * @classdesc Represents an Authority. - * @implements IAuthority + * Constructs a new KubernetesResource. + * @memberof google.cloud.gkehub.v1alpha2 + * @classdesc Represents a KubernetesResource. + * @implements IKubernetesResource * @constructor - * @param {google.cloud.gkehub.v1beta1.IAuthority=} [properties] Properties to set + * @param {google.cloud.gkehub.v1alpha2.IKubernetesResource=} [properties] Properties to set */ - function Authority(properties) { + function KubernetesResource(properties) { + this.membershipResources = []; + this.connectResources = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) if (properties[keys[i]] != null) @@ -2430,114 +45320,120 @@ } /** - * Authority issuer. - * @member {string} issuer - * @memberof google.cloud.gkehub.v1beta1.Authority + * KubernetesResource membershipCrManifest. + * @member {string} membershipCrManifest + * @memberof google.cloud.gkehub.v1alpha2.KubernetesResource * @instance */ - Authority.prototype.issuer = ""; + KubernetesResource.prototype.membershipCrManifest = ""; /** - * Authority workloadIdentityPool. - * @member {string} workloadIdentityPool - * @memberof google.cloud.gkehub.v1beta1.Authority + * KubernetesResource membershipResources. + * @member {Array.} membershipResources + * @memberof google.cloud.gkehub.v1alpha2.KubernetesResource * @instance */ - Authority.prototype.workloadIdentityPool = ""; + KubernetesResource.prototype.membershipResources = $util.emptyArray; /** - * Authority identityProvider. - * @member {string} identityProvider - * @memberof google.cloud.gkehub.v1beta1.Authority + * KubernetesResource connectResources. + * @member {Array.} connectResources + * @memberof google.cloud.gkehub.v1alpha2.KubernetesResource * @instance */ - Authority.prototype.identityProvider = ""; + KubernetesResource.prototype.connectResources = $util.emptyArray; /** - * Authority oidcJwks. - * @member {Uint8Array} oidcJwks - * @memberof google.cloud.gkehub.v1beta1.Authority + * KubernetesResource resourceOptions. + * @member {google.cloud.gkehub.v1alpha2.IResourceOptions|null|undefined} resourceOptions + * @memberof google.cloud.gkehub.v1alpha2.KubernetesResource * @instance */ - Authority.prototype.oidcJwks = $util.newBuffer([]); + KubernetesResource.prototype.resourceOptions = null; /** - * Creates a new Authority instance using the specified properties. + * Creates a new KubernetesResource instance using the specified properties. * @function create - * @memberof google.cloud.gkehub.v1beta1.Authority + * @memberof google.cloud.gkehub.v1alpha2.KubernetesResource * @static - * @param {google.cloud.gkehub.v1beta1.IAuthority=} [properties] Properties to set - * @returns {google.cloud.gkehub.v1beta1.Authority} Authority instance + * @param {google.cloud.gkehub.v1alpha2.IKubernetesResource=} [properties] Properties to set + * @returns {google.cloud.gkehub.v1alpha2.KubernetesResource} KubernetesResource instance */ - Authority.create = function create(properties) { - return new Authority(properties); + KubernetesResource.create = function create(properties) { + return new KubernetesResource(properties); }; /** - * Encodes the specified Authority message. Does not implicitly {@link google.cloud.gkehub.v1beta1.Authority.verify|verify} messages. + * Encodes the specified KubernetesResource message. Does not implicitly {@link google.cloud.gkehub.v1alpha2.KubernetesResource.verify|verify} messages. * @function encode - * @memberof google.cloud.gkehub.v1beta1.Authority + * @memberof google.cloud.gkehub.v1alpha2.KubernetesResource * @static - * @param {google.cloud.gkehub.v1beta1.IAuthority} message Authority message or plain object to encode + * @param {google.cloud.gkehub.v1alpha2.IKubernetesResource} message KubernetesResource message or plain object to encode * @param {$protobuf.Writer} [writer] Writer to encode to * @returns {$protobuf.Writer} Writer */ - Authority.encode = function encode(message, writer) { + KubernetesResource.encode = function encode(message, writer) { if (!writer) writer = $Writer.create(); - if (message.issuer != null && Object.hasOwnProperty.call(message, "issuer")) - writer.uint32(/* id 1, wireType 2 =*/10).string(message.issuer); - if (message.workloadIdentityPool != null && Object.hasOwnProperty.call(message, "workloadIdentityPool")) - writer.uint32(/* id 2, wireType 2 =*/18).string(message.workloadIdentityPool); - if (message.identityProvider != null && Object.hasOwnProperty.call(message, "identityProvider")) - writer.uint32(/* id 3, wireType 2 =*/26).string(message.identityProvider); - if (message.oidcJwks != null && Object.hasOwnProperty.call(message, "oidcJwks")) - writer.uint32(/* id 4, wireType 2 =*/34).bytes(message.oidcJwks); + if (message.membershipCrManifest != null && Object.hasOwnProperty.call(message, "membershipCrManifest")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.membershipCrManifest); + if (message.membershipResources != null && message.membershipResources.length) + for (var i = 0; i < message.membershipResources.length; ++i) + $root.google.cloud.gkehub.v1alpha2.ResourceManifest.encode(message.membershipResources[i], writer.uint32(/* id 3, wireType 2 =*/26).fork()).ldelim(); + if (message.connectResources != null && message.connectResources.length) + for (var i = 0; i < message.connectResources.length; ++i) + $root.google.cloud.gkehub.v1alpha2.ResourceManifest.encode(message.connectResources[i], writer.uint32(/* id 4, wireType 2 =*/34).fork()).ldelim(); + if (message.resourceOptions != null && Object.hasOwnProperty.call(message, "resourceOptions")) + $root.google.cloud.gkehub.v1alpha2.ResourceOptions.encode(message.resourceOptions, writer.uint32(/* id 5, wireType 2 =*/42).fork()).ldelim(); return writer; }; /** - * Encodes the specified Authority message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta1.Authority.verify|verify} messages. + * Encodes the specified KubernetesResource message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1alpha2.KubernetesResource.verify|verify} messages. * @function encodeDelimited - * @memberof google.cloud.gkehub.v1beta1.Authority + * @memberof google.cloud.gkehub.v1alpha2.KubernetesResource * @static - * @param {google.cloud.gkehub.v1beta1.IAuthority} message Authority message or plain object to encode + * @param {google.cloud.gkehub.v1alpha2.IKubernetesResource} message KubernetesResource message or plain object to encode * @param {$protobuf.Writer} [writer] Writer to encode to * @returns {$protobuf.Writer} Writer */ - Authority.encodeDelimited = function encodeDelimited(message, writer) { + KubernetesResource.encodeDelimited = function encodeDelimited(message, writer) { return this.encode(message, writer).ldelim(); }; /** - * Decodes an Authority message from the specified reader or buffer. + * Decodes a KubernetesResource message from the specified reader or buffer. * @function decode - * @memberof google.cloud.gkehub.v1beta1.Authority + * @memberof google.cloud.gkehub.v1alpha2.KubernetesResource * @static * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from * @param {number} [length] Message length if known beforehand - * @returns {google.cloud.gkehub.v1beta1.Authority} Authority + * @returns {google.cloud.gkehub.v1alpha2.KubernetesResource} KubernetesResource * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Authority.decode = function decode(reader, length) { + KubernetesResource.decode = function decode(reader, length) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); - var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.v1beta1.Authority(); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.v1alpha2.KubernetesResource(); while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { case 1: - message.issuer = reader.string(); - break; - case 2: - message.workloadIdentityPool = reader.string(); + message.membershipCrManifest = reader.string(); break; case 3: - message.identityProvider = reader.string(); + if (!(message.membershipResources && message.membershipResources.length)) + message.membershipResources = []; + message.membershipResources.push($root.google.cloud.gkehub.v1alpha2.ResourceManifest.decode(reader, reader.uint32())); break; case 4: - message.oidcJwks = reader.bytes(); + if (!(message.connectResources && message.connectResources.length)) + message.connectResources = []; + message.connectResources.push($root.google.cloud.gkehub.v1alpha2.ResourceManifest.decode(reader, reader.uint32())); + break; + case 5: + message.resourceOptions = $root.google.cloud.gkehub.v1alpha2.ResourceOptions.decode(reader, reader.uint32()); break; default: reader.skipType(tag & 7); @@ -2548,143 +45444,174 @@ }; /** - * Decodes an Authority message from the specified reader or buffer, length delimited. + * Decodes a KubernetesResource message from the specified reader or buffer, length delimited. * @function decodeDelimited - * @memberof google.cloud.gkehub.v1beta1.Authority + * @memberof google.cloud.gkehub.v1alpha2.KubernetesResource * @static * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {google.cloud.gkehub.v1beta1.Authority} Authority + * @returns {google.cloud.gkehub.v1alpha2.KubernetesResource} KubernetesResource * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Authority.decodeDelimited = function decodeDelimited(reader) { + KubernetesResource.decodeDelimited = function decodeDelimited(reader) { if (!(reader instanceof $Reader)) reader = new $Reader(reader); return this.decode(reader, reader.uint32()); }; /** - * Verifies an Authority message. + * Verifies a KubernetesResource message. * @function verify - * @memberof google.cloud.gkehub.v1beta1.Authority + * @memberof google.cloud.gkehub.v1alpha2.KubernetesResource * @static * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Authority.verify = function verify(message) { + KubernetesResource.verify = function verify(message) { if (typeof message !== "object" || message === null) return "object expected"; - if (message.issuer != null && message.hasOwnProperty("issuer")) - if (!$util.isString(message.issuer)) - return "issuer: string expected"; - if (message.workloadIdentityPool != null && message.hasOwnProperty("workloadIdentityPool")) - if (!$util.isString(message.workloadIdentityPool)) - return "workloadIdentityPool: string expected"; - if (message.identityProvider != null && message.hasOwnProperty("identityProvider")) - if (!$util.isString(message.identityProvider)) - return "identityProvider: string expected"; - if (message.oidcJwks != null && message.hasOwnProperty("oidcJwks")) - if (!(message.oidcJwks && typeof message.oidcJwks.length === "number" || $util.isString(message.oidcJwks))) - return "oidcJwks: buffer expected"; + if (message.membershipCrManifest != null && message.hasOwnProperty("membershipCrManifest")) + if (!$util.isString(message.membershipCrManifest)) + return "membershipCrManifest: string expected"; + if (message.membershipResources != null && message.hasOwnProperty("membershipResources")) { + if (!Array.isArray(message.membershipResources)) + return "membershipResources: array expected"; + for (var i = 0; i < message.membershipResources.length; ++i) { + var error = $root.google.cloud.gkehub.v1alpha2.ResourceManifest.verify(message.membershipResources[i]); + if (error) + return "membershipResources." + error; + } + } + if (message.connectResources != null && message.hasOwnProperty("connectResources")) { + if (!Array.isArray(message.connectResources)) + return "connectResources: array expected"; + for (var i = 0; i < message.connectResources.length; ++i) { + var error = $root.google.cloud.gkehub.v1alpha2.ResourceManifest.verify(message.connectResources[i]); + if (error) + return "connectResources." + error; + } + } + if (message.resourceOptions != null && message.hasOwnProperty("resourceOptions")) { + var error = $root.google.cloud.gkehub.v1alpha2.ResourceOptions.verify(message.resourceOptions); + if (error) + return "resourceOptions." + error; + } return null; }; /** - * Creates an Authority message from a plain object. Also converts values to their respective internal types. + * Creates a KubernetesResource message from a plain object. Also converts values to their respective internal types. * @function fromObject - * @memberof google.cloud.gkehub.v1beta1.Authority + * @memberof google.cloud.gkehub.v1alpha2.KubernetesResource * @static * @param {Object.} object Plain object - * @returns {google.cloud.gkehub.v1beta1.Authority} Authority + * @returns {google.cloud.gkehub.v1alpha2.KubernetesResource} KubernetesResource */ - Authority.fromObject = function fromObject(object) { - if (object instanceof $root.google.cloud.gkehub.v1beta1.Authority) + KubernetesResource.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.v1alpha2.KubernetesResource) return object; - var message = new $root.google.cloud.gkehub.v1beta1.Authority(); - if (object.issuer != null) - message.issuer = String(object.issuer); - if (object.workloadIdentityPool != null) - message.workloadIdentityPool = String(object.workloadIdentityPool); - if (object.identityProvider != null) - message.identityProvider = String(object.identityProvider); - if (object.oidcJwks != null) - if (typeof object.oidcJwks === "string") - $util.base64.decode(object.oidcJwks, message.oidcJwks = $util.newBuffer($util.base64.length(object.oidcJwks)), 0); - else if (object.oidcJwks.length) - message.oidcJwks = object.oidcJwks; + var message = new $root.google.cloud.gkehub.v1alpha2.KubernetesResource(); + if (object.membershipCrManifest != null) + message.membershipCrManifest = String(object.membershipCrManifest); + if (object.membershipResources) { + if (!Array.isArray(object.membershipResources)) + throw TypeError(".google.cloud.gkehub.v1alpha2.KubernetesResource.membershipResources: array expected"); + message.membershipResources = []; + for (var i = 0; i < object.membershipResources.length; ++i) { + if (typeof object.membershipResources[i] !== "object") + throw TypeError(".google.cloud.gkehub.v1alpha2.KubernetesResource.membershipResources: object expected"); + message.membershipResources[i] = $root.google.cloud.gkehub.v1alpha2.ResourceManifest.fromObject(object.membershipResources[i]); + } + } + if (object.connectResources) { + if (!Array.isArray(object.connectResources)) + throw TypeError(".google.cloud.gkehub.v1alpha2.KubernetesResource.connectResources: array expected"); + message.connectResources = []; + for (var i = 0; i < object.connectResources.length; ++i) { + if (typeof object.connectResources[i] !== "object") + throw TypeError(".google.cloud.gkehub.v1alpha2.KubernetesResource.connectResources: object expected"); + message.connectResources[i] = $root.google.cloud.gkehub.v1alpha2.ResourceManifest.fromObject(object.connectResources[i]); + } + } + if (object.resourceOptions != null) { + if (typeof object.resourceOptions !== "object") + throw TypeError(".google.cloud.gkehub.v1alpha2.KubernetesResource.resourceOptions: object expected"); + message.resourceOptions = $root.google.cloud.gkehub.v1alpha2.ResourceOptions.fromObject(object.resourceOptions); + } return message; }; /** - * Creates a plain object from an Authority message. Also converts values to other types if specified. + * Creates a plain object from a KubernetesResource message. Also converts values to other types if specified. * @function toObject - * @memberof google.cloud.gkehub.v1beta1.Authority + * @memberof google.cloud.gkehub.v1alpha2.KubernetesResource * @static - * @param {google.cloud.gkehub.v1beta1.Authority} message Authority + * @param {google.cloud.gkehub.v1alpha2.KubernetesResource} message KubernetesResource * @param {$protobuf.IConversionOptions} [options] Conversion options * @returns {Object.} Plain object */ - Authority.toObject = function toObject(message, options) { + KubernetesResource.toObject = function toObject(message, options) { if (!options) options = {}; var object = {}; + if (options.arrays || options.defaults) { + object.membershipResources = []; + object.connectResources = []; + } if (options.defaults) { - object.issuer = ""; - object.workloadIdentityPool = ""; - object.identityProvider = ""; - if (options.bytes === String) - object.oidcJwks = ""; - else { - object.oidcJwks = []; - if (options.bytes !== Array) - object.oidcJwks = $util.newBuffer(object.oidcJwks); - } + object.membershipCrManifest = ""; + object.resourceOptions = null; } - if (message.issuer != null && message.hasOwnProperty("issuer")) - object.issuer = message.issuer; - if (message.workloadIdentityPool != null && message.hasOwnProperty("workloadIdentityPool")) - object.workloadIdentityPool = message.workloadIdentityPool; - if (message.identityProvider != null && message.hasOwnProperty("identityProvider")) - object.identityProvider = message.identityProvider; - if (message.oidcJwks != null && message.hasOwnProperty("oidcJwks")) - object.oidcJwks = options.bytes === String ? $util.base64.encode(message.oidcJwks, 0, message.oidcJwks.length) : options.bytes === Array ? Array.prototype.slice.call(message.oidcJwks) : message.oidcJwks; + if (message.membershipCrManifest != null && message.hasOwnProperty("membershipCrManifest")) + object.membershipCrManifest = message.membershipCrManifest; + if (message.membershipResources && message.membershipResources.length) { + object.membershipResources = []; + for (var j = 0; j < message.membershipResources.length; ++j) + object.membershipResources[j] = $root.google.cloud.gkehub.v1alpha2.ResourceManifest.toObject(message.membershipResources[j], options); + } + if (message.connectResources && message.connectResources.length) { + object.connectResources = []; + for (var j = 0; j < message.connectResources.length; ++j) + object.connectResources[j] = $root.google.cloud.gkehub.v1alpha2.ResourceManifest.toObject(message.connectResources[j], options); + } + if (message.resourceOptions != null && message.hasOwnProperty("resourceOptions")) + object.resourceOptions = $root.google.cloud.gkehub.v1alpha2.ResourceOptions.toObject(message.resourceOptions, options); return object; }; /** - * Converts this Authority to JSON. + * Converts this KubernetesResource to JSON. * @function toJSON - * @memberof google.cloud.gkehub.v1beta1.Authority + * @memberof google.cloud.gkehub.v1alpha2.KubernetesResource * @instance * @returns {Object.} JSON object */ - Authority.prototype.toJSON = function toJSON() { + KubernetesResource.prototype.toJSON = function toJSON() { return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; - return Authority; + return KubernetesResource; })(); - v1beta1.MembershipState = (function() { + v1alpha2.ResourceOptions = (function() { /** - * Properties of a MembershipState. - * @memberof google.cloud.gkehub.v1beta1 - * @interface IMembershipState - * @property {google.cloud.gkehub.v1beta1.MembershipState.Code|null} [code] MembershipState code - * @property {string|null} [description] MembershipState description - * @property {google.protobuf.ITimestamp|null} [updateTime] MembershipState updateTime + * Properties of a ResourceOptions. + * @memberof google.cloud.gkehub.v1alpha2 + * @interface IResourceOptions + * @property {string|null} [connectVersion] ResourceOptions connectVersion + * @property {boolean|null} [v1beta1Crd] ResourceOptions v1beta1Crd */ /** - * Constructs a new MembershipState. - * @memberof google.cloud.gkehub.v1beta1 - * @classdesc Represents a MembershipState. - * @implements IMembershipState + * Constructs a new ResourceOptions. + * @memberof google.cloud.gkehub.v1alpha2 + * @classdesc Represents a ResourceOptions. + * @implements IResourceOptions * @constructor - * @param {google.cloud.gkehub.v1beta1.IMembershipState=} [properties] Properties to set + * @param {google.cloud.gkehub.v1alpha2.IResourceOptions=} [properties] Properties to set */ - function MembershipState(properties) { + function ResourceOptions(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) if (properties[keys[i]] != null) @@ -2692,101 +45619,88 @@ } /** - * MembershipState code. - * @member {google.cloud.gkehub.v1beta1.MembershipState.Code} code - * @memberof google.cloud.gkehub.v1beta1.MembershipState - * @instance - */ - MembershipState.prototype.code = 0; - - /** - * MembershipState description. - * @member {string} description - * @memberof google.cloud.gkehub.v1beta1.MembershipState + * ResourceOptions connectVersion. + * @member {string} connectVersion + * @memberof google.cloud.gkehub.v1alpha2.ResourceOptions * @instance */ - MembershipState.prototype.description = ""; + ResourceOptions.prototype.connectVersion = ""; /** - * MembershipState updateTime. - * @member {google.protobuf.ITimestamp|null|undefined} updateTime - * @memberof google.cloud.gkehub.v1beta1.MembershipState + * ResourceOptions v1beta1Crd. + * @member {boolean} v1beta1Crd + * @memberof google.cloud.gkehub.v1alpha2.ResourceOptions * @instance */ - MembershipState.prototype.updateTime = null; + ResourceOptions.prototype.v1beta1Crd = false; /** - * Creates a new MembershipState instance using the specified properties. + * Creates a new ResourceOptions instance using the specified properties. * @function create - * @memberof google.cloud.gkehub.v1beta1.MembershipState + * @memberof google.cloud.gkehub.v1alpha2.ResourceOptions * @static - * @param {google.cloud.gkehub.v1beta1.IMembershipState=} [properties] Properties to set - * @returns {google.cloud.gkehub.v1beta1.MembershipState} MembershipState instance + * @param {google.cloud.gkehub.v1alpha2.IResourceOptions=} [properties] Properties to set + * @returns {google.cloud.gkehub.v1alpha2.ResourceOptions} ResourceOptions instance */ - MembershipState.create = function create(properties) { - return new MembershipState(properties); + ResourceOptions.create = function create(properties) { + return new ResourceOptions(properties); }; /** - * Encodes the specified MembershipState message. Does not implicitly {@link google.cloud.gkehub.v1beta1.MembershipState.verify|verify} messages. + * Encodes the specified ResourceOptions message. Does not implicitly {@link google.cloud.gkehub.v1alpha2.ResourceOptions.verify|verify} messages. * @function encode - * @memberof google.cloud.gkehub.v1beta1.MembershipState + * @memberof google.cloud.gkehub.v1alpha2.ResourceOptions * @static - * @param {google.cloud.gkehub.v1beta1.IMembershipState} message MembershipState message or plain object to encode + * @param {google.cloud.gkehub.v1alpha2.IResourceOptions} message ResourceOptions message or plain object to encode * @param {$protobuf.Writer} [writer] Writer to encode to * @returns {$protobuf.Writer} Writer */ - MembershipState.encode = function encode(message, writer) { + ResourceOptions.encode = function encode(message, writer) { if (!writer) writer = $Writer.create(); - if (message.code != null && Object.hasOwnProperty.call(message, "code")) - writer.uint32(/* id 1, wireType 0 =*/8).int32(message.code); - if (message.description != null && Object.hasOwnProperty.call(message, "description")) - writer.uint32(/* id 2, wireType 2 =*/18).string(message.description); - if (message.updateTime != null && Object.hasOwnProperty.call(message, "updateTime")) - $root.google.protobuf.Timestamp.encode(message.updateTime, writer.uint32(/* id 3, wireType 2 =*/26).fork()).ldelim(); + if (message.connectVersion != null && Object.hasOwnProperty.call(message, "connectVersion")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.connectVersion); + if (message.v1beta1Crd != null && Object.hasOwnProperty.call(message, "v1beta1Crd")) + writer.uint32(/* id 2, wireType 0 =*/16).bool(message.v1beta1Crd); return writer; }; /** - * Encodes the specified MembershipState message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta1.MembershipState.verify|verify} messages. + * Encodes the specified ResourceOptions message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1alpha2.ResourceOptions.verify|verify} messages. * @function encodeDelimited - * @memberof google.cloud.gkehub.v1beta1.MembershipState + * @memberof google.cloud.gkehub.v1alpha2.ResourceOptions * @static - * @param {google.cloud.gkehub.v1beta1.IMembershipState} message MembershipState message or plain object to encode + * @param {google.cloud.gkehub.v1alpha2.IResourceOptions} message ResourceOptions message or plain object to encode * @param {$protobuf.Writer} [writer] Writer to encode to * @returns {$protobuf.Writer} Writer */ - MembershipState.encodeDelimited = function encodeDelimited(message, writer) { + ResourceOptions.encodeDelimited = function encodeDelimited(message, writer) { return this.encode(message, writer).ldelim(); }; /** - * Decodes a MembershipState message from the specified reader or buffer. + * Decodes a ResourceOptions message from the specified reader or buffer. * @function decode - * @memberof google.cloud.gkehub.v1beta1.MembershipState + * @memberof google.cloud.gkehub.v1alpha2.ResourceOptions * @static * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from * @param {number} [length] Message length if known beforehand - * @returns {google.cloud.gkehub.v1beta1.MembershipState} MembershipState + * @returns {google.cloud.gkehub.v1alpha2.ResourceOptions} ResourceOptions * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - MembershipState.decode = function decode(reader, length) { + ResourceOptions.decode = function decode(reader, length) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); - var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.v1beta1.MembershipState(); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.v1alpha2.ResourceOptions(); while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { case 1: - message.code = reader.int32(); + message.connectVersion = reader.string(); break; case 2: - message.description = reader.string(); - break; - case 3: - message.updateTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.v1beta1Crd = reader.bool(); break; default: reader.skipType(tag & 7); @@ -2797,188 +45711,116 @@ }; /** - * Decodes a MembershipState message from the specified reader or buffer, length delimited. + * Decodes a ResourceOptions message from the specified reader or buffer, length delimited. * @function decodeDelimited - * @memberof google.cloud.gkehub.v1beta1.MembershipState + * @memberof google.cloud.gkehub.v1alpha2.ResourceOptions * @static * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {google.cloud.gkehub.v1beta1.MembershipState} MembershipState + * @returns {google.cloud.gkehub.v1alpha2.ResourceOptions} ResourceOptions * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - MembershipState.decodeDelimited = function decodeDelimited(reader) { + ResourceOptions.decodeDelimited = function decodeDelimited(reader) { if (!(reader instanceof $Reader)) reader = new $Reader(reader); return this.decode(reader, reader.uint32()); }; /** - * Verifies a MembershipState message. + * Verifies a ResourceOptions message. * @function verify - * @memberof google.cloud.gkehub.v1beta1.MembershipState + * @memberof google.cloud.gkehub.v1alpha2.ResourceOptions * @static * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - MembershipState.verify = function verify(message) { + ResourceOptions.verify = function verify(message) { if (typeof message !== "object" || message === null) return "object expected"; - if (message.code != null && message.hasOwnProperty("code")) - switch (message.code) { - default: - return "code: enum value expected"; - case 0: - case 1: - case 2: - case 3: - case 4: - case 5: - break; - } - if (message.description != null && message.hasOwnProperty("description")) - if (!$util.isString(message.description)) - return "description: string expected"; - if (message.updateTime != null && message.hasOwnProperty("updateTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.updateTime); - if (error) - return "updateTime." + error; - } + if (message.connectVersion != null && message.hasOwnProperty("connectVersion")) + if (!$util.isString(message.connectVersion)) + return "connectVersion: string expected"; + if (message.v1beta1Crd != null && message.hasOwnProperty("v1beta1Crd")) + if (typeof message.v1beta1Crd !== "boolean") + return "v1beta1Crd: boolean expected"; return null; }; /** - * Creates a MembershipState message from a plain object. Also converts values to their respective internal types. - * @function fromObject - * @memberof google.cloud.gkehub.v1beta1.MembershipState - * @static - * @param {Object.} object Plain object - * @returns {google.cloud.gkehub.v1beta1.MembershipState} MembershipState - */ - MembershipState.fromObject = function fromObject(object) { - if (object instanceof $root.google.cloud.gkehub.v1beta1.MembershipState) - return object; - var message = new $root.google.cloud.gkehub.v1beta1.MembershipState(); - switch (object.code) { - case "CODE_UNSPECIFIED": - case 0: - message.code = 0; - break; - case "CREATING": - case 1: - message.code = 1; - break; - case "READY": - case 2: - message.code = 2; - break; - case "DELETING": - case 3: - message.code = 3; - break; - case "UPDATING": - case 4: - message.code = 4; - break; - case "SERVICE_UPDATING": - case 5: - message.code = 5; - break; - } - if (object.description != null) - message.description = String(object.description); - if (object.updateTime != null) { - if (typeof object.updateTime !== "object") - throw TypeError(".google.cloud.gkehub.v1beta1.MembershipState.updateTime: object expected"); - message.updateTime = $root.google.protobuf.Timestamp.fromObject(object.updateTime); - } + * Creates a ResourceOptions message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.v1alpha2.ResourceOptions + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.v1alpha2.ResourceOptions} ResourceOptions + */ + ResourceOptions.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.v1alpha2.ResourceOptions) + return object; + var message = new $root.google.cloud.gkehub.v1alpha2.ResourceOptions(); + if (object.connectVersion != null) + message.connectVersion = String(object.connectVersion); + if (object.v1beta1Crd != null) + message.v1beta1Crd = Boolean(object.v1beta1Crd); return message; }; /** - * Creates a plain object from a MembershipState message. Also converts values to other types if specified. + * Creates a plain object from a ResourceOptions message. Also converts values to other types if specified. * @function toObject - * @memberof google.cloud.gkehub.v1beta1.MembershipState + * @memberof google.cloud.gkehub.v1alpha2.ResourceOptions * @static - * @param {google.cloud.gkehub.v1beta1.MembershipState} message MembershipState + * @param {google.cloud.gkehub.v1alpha2.ResourceOptions} message ResourceOptions * @param {$protobuf.IConversionOptions} [options] Conversion options * @returns {Object.} Plain object */ - MembershipState.toObject = function toObject(message, options) { + ResourceOptions.toObject = function toObject(message, options) { if (!options) options = {}; var object = {}; if (options.defaults) { - object.code = options.enums === String ? "CODE_UNSPECIFIED" : 0; - object.description = ""; - object.updateTime = null; + object.connectVersion = ""; + object.v1beta1Crd = false; } - if (message.code != null && message.hasOwnProperty("code")) - object.code = options.enums === String ? $root.google.cloud.gkehub.v1beta1.MembershipState.Code[message.code] : message.code; - if (message.description != null && message.hasOwnProperty("description")) - object.description = message.description; - if (message.updateTime != null && message.hasOwnProperty("updateTime")) - object.updateTime = $root.google.protobuf.Timestamp.toObject(message.updateTime, options); + if (message.connectVersion != null && message.hasOwnProperty("connectVersion")) + object.connectVersion = message.connectVersion; + if (message.v1beta1Crd != null && message.hasOwnProperty("v1beta1Crd")) + object.v1beta1Crd = message.v1beta1Crd; return object; }; /** - * Converts this MembershipState to JSON. + * Converts this ResourceOptions to JSON. * @function toJSON - * @memberof google.cloud.gkehub.v1beta1.MembershipState + * @memberof google.cloud.gkehub.v1alpha2.ResourceOptions * @instance * @returns {Object.} JSON object */ - MembershipState.prototype.toJSON = function toJSON() { + ResourceOptions.prototype.toJSON = function toJSON() { return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; - /** - * Code enum. - * @name google.cloud.gkehub.v1beta1.MembershipState.Code - * @enum {number} - * @property {number} CODE_UNSPECIFIED=0 CODE_UNSPECIFIED value - * @property {number} CREATING=1 CREATING value - * @property {number} READY=2 READY value - * @property {number} DELETING=3 DELETING value - * @property {number} UPDATING=4 UPDATING value - * @property {number} SERVICE_UPDATING=5 SERVICE_UPDATING value - */ - MembershipState.Code = (function() { - var valuesById = {}, values = Object.create(valuesById); - values[valuesById[0] = "CODE_UNSPECIFIED"] = 0; - values[valuesById[1] = "CREATING"] = 1; - values[valuesById[2] = "READY"] = 2; - values[valuesById[3] = "DELETING"] = 3; - values[valuesById[4] = "UPDATING"] = 4; - values[valuesById[5] = "SERVICE_UPDATING"] = 5; - return values; - })(); - - return MembershipState; + return ResourceOptions; })(); - v1beta1.ListMembershipsRequest = (function() { + v1alpha2.GkeCluster = (function() { /** - * Properties of a ListMembershipsRequest. - * @memberof google.cloud.gkehub.v1beta1 - * @interface IListMembershipsRequest - * @property {string|null} [parent] ListMembershipsRequest parent - * @property {number|null} [pageSize] ListMembershipsRequest pageSize - * @property {string|null} [pageToken] ListMembershipsRequest pageToken - * @property {string|null} [filter] ListMembershipsRequest filter - * @property {string|null} [orderBy] ListMembershipsRequest orderBy + * Properties of a GkeCluster. + * @memberof google.cloud.gkehub.v1alpha2 + * @interface IGkeCluster + * @property {string|null} [resourceLink] GkeCluster resourceLink */ /** - * Constructs a new ListMembershipsRequest. - * @memberof google.cloud.gkehub.v1beta1 - * @classdesc Represents a ListMembershipsRequest. - * @implements IListMembershipsRequest + * Constructs a new GkeCluster. + * @memberof google.cloud.gkehub.v1alpha2 + * @classdesc Represents a GkeCluster. + * @implements IGkeCluster * @constructor - * @param {google.cloud.gkehub.v1beta1.IListMembershipsRequest=} [properties] Properties to set + * @param {google.cloud.gkehub.v1alpha2.IGkeCluster=} [properties] Properties to set */ - function ListMembershipsRequest(properties) { + function GkeCluster(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) if (properties[keys[i]] != null) @@ -2986,127 +45828,75 @@ } /** - * ListMembershipsRequest parent. - * @member {string} parent - * @memberof google.cloud.gkehub.v1beta1.ListMembershipsRequest - * @instance - */ - ListMembershipsRequest.prototype.parent = ""; - - /** - * ListMembershipsRequest pageSize. - * @member {number} pageSize - * @memberof google.cloud.gkehub.v1beta1.ListMembershipsRequest - * @instance - */ - ListMembershipsRequest.prototype.pageSize = 0; - - /** - * ListMembershipsRequest pageToken. - * @member {string} pageToken - * @memberof google.cloud.gkehub.v1beta1.ListMembershipsRequest - * @instance - */ - ListMembershipsRequest.prototype.pageToken = ""; - - /** - * ListMembershipsRequest filter. - * @member {string} filter - * @memberof google.cloud.gkehub.v1beta1.ListMembershipsRequest - * @instance - */ - ListMembershipsRequest.prototype.filter = ""; - - /** - * ListMembershipsRequest orderBy. - * @member {string} orderBy - * @memberof google.cloud.gkehub.v1beta1.ListMembershipsRequest + * GkeCluster resourceLink. + * @member {string} resourceLink + * @memberof google.cloud.gkehub.v1alpha2.GkeCluster * @instance */ - ListMembershipsRequest.prototype.orderBy = ""; + GkeCluster.prototype.resourceLink = ""; /** - * Creates a new ListMembershipsRequest instance using the specified properties. + * Creates a new GkeCluster instance using the specified properties. * @function create - * @memberof google.cloud.gkehub.v1beta1.ListMembershipsRequest + * @memberof google.cloud.gkehub.v1alpha2.GkeCluster * @static - * @param {google.cloud.gkehub.v1beta1.IListMembershipsRequest=} [properties] Properties to set - * @returns {google.cloud.gkehub.v1beta1.ListMembershipsRequest} ListMembershipsRequest instance + * @param {google.cloud.gkehub.v1alpha2.IGkeCluster=} [properties] Properties to set + * @returns {google.cloud.gkehub.v1alpha2.GkeCluster} GkeCluster instance */ - ListMembershipsRequest.create = function create(properties) { - return new ListMembershipsRequest(properties); + GkeCluster.create = function create(properties) { + return new GkeCluster(properties); }; /** - * Encodes the specified ListMembershipsRequest message. Does not implicitly {@link google.cloud.gkehub.v1beta1.ListMembershipsRequest.verify|verify} messages. + * Encodes the specified GkeCluster message. Does not implicitly {@link google.cloud.gkehub.v1alpha2.GkeCluster.verify|verify} messages. * @function encode - * @memberof google.cloud.gkehub.v1beta1.ListMembershipsRequest + * @memberof google.cloud.gkehub.v1alpha2.GkeCluster * @static - * @param {google.cloud.gkehub.v1beta1.IListMembershipsRequest} message ListMembershipsRequest message or plain object to encode + * @param {google.cloud.gkehub.v1alpha2.IGkeCluster} message GkeCluster message or plain object to encode * @param {$protobuf.Writer} [writer] Writer to encode to * @returns {$protobuf.Writer} Writer */ - ListMembershipsRequest.encode = function encode(message, writer) { + GkeCluster.encode = function encode(message, writer) { if (!writer) writer = $Writer.create(); - if (message.parent != null && Object.hasOwnProperty.call(message, "parent")) - writer.uint32(/* id 1, wireType 2 =*/10).string(message.parent); - if (message.pageSize != null && Object.hasOwnProperty.call(message, "pageSize")) - writer.uint32(/* id 2, wireType 0 =*/16).int32(message.pageSize); - if (message.pageToken != null && Object.hasOwnProperty.call(message, "pageToken")) - writer.uint32(/* id 3, wireType 2 =*/26).string(message.pageToken); - if (message.filter != null && Object.hasOwnProperty.call(message, "filter")) - writer.uint32(/* id 4, wireType 2 =*/34).string(message.filter); - if (message.orderBy != null && Object.hasOwnProperty.call(message, "orderBy")) - writer.uint32(/* id 5, wireType 2 =*/42).string(message.orderBy); + if (message.resourceLink != null && Object.hasOwnProperty.call(message, "resourceLink")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.resourceLink); return writer; }; /** - * Encodes the specified ListMembershipsRequest message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta1.ListMembershipsRequest.verify|verify} messages. + * Encodes the specified GkeCluster message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1alpha2.GkeCluster.verify|verify} messages. * @function encodeDelimited - * @memberof google.cloud.gkehub.v1beta1.ListMembershipsRequest + * @memberof google.cloud.gkehub.v1alpha2.GkeCluster * @static - * @param {google.cloud.gkehub.v1beta1.IListMembershipsRequest} message ListMembershipsRequest message or plain object to encode + * @param {google.cloud.gkehub.v1alpha2.IGkeCluster} message GkeCluster message or plain object to encode * @param {$protobuf.Writer} [writer] Writer to encode to * @returns {$protobuf.Writer} Writer */ - ListMembershipsRequest.encodeDelimited = function encodeDelimited(message, writer) { + GkeCluster.encodeDelimited = function encodeDelimited(message, writer) { return this.encode(message, writer).ldelim(); }; /** - * Decodes a ListMembershipsRequest message from the specified reader or buffer. + * Decodes a GkeCluster message from the specified reader or buffer. * @function decode - * @memberof google.cloud.gkehub.v1beta1.ListMembershipsRequest + * @memberof google.cloud.gkehub.v1alpha2.GkeCluster * @static * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from * @param {number} [length] Message length if known beforehand - * @returns {google.cloud.gkehub.v1beta1.ListMembershipsRequest} ListMembershipsRequest + * @returns {google.cloud.gkehub.v1alpha2.GkeCluster} GkeCluster * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ListMembershipsRequest.decode = function decode(reader, length) { + GkeCluster.decode = function decode(reader, length) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); - var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.v1beta1.ListMembershipsRequest(); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.v1alpha2.GkeCluster(); while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { case 1: - message.parent = reader.string(); - break; - case 2: - message.pageSize = reader.int32(); - break; - case 3: - message.pageToken = reader.string(); - break; - case 4: - message.filter = reader.string(); - break; - case 5: - message.orderBy = reader.string(); + message.resourceLink = reader.string(); break; default: reader.skipType(tag & 7); @@ -3117,144 +45907,112 @@ }; /** - * Decodes a ListMembershipsRequest message from the specified reader or buffer, length delimited. + * Decodes a GkeCluster message from the specified reader or buffer, length delimited. * @function decodeDelimited - * @memberof google.cloud.gkehub.v1beta1.ListMembershipsRequest + * @memberof google.cloud.gkehub.v1alpha2.GkeCluster * @static * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {google.cloud.gkehub.v1beta1.ListMembershipsRequest} ListMembershipsRequest + * @returns {google.cloud.gkehub.v1alpha2.GkeCluster} GkeCluster * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ListMembershipsRequest.decodeDelimited = function decodeDelimited(reader) { + GkeCluster.decodeDelimited = function decodeDelimited(reader) { if (!(reader instanceof $Reader)) reader = new $Reader(reader); return this.decode(reader, reader.uint32()); }; /** - * Verifies a ListMembershipsRequest message. + * Verifies a GkeCluster message. * @function verify - * @memberof google.cloud.gkehub.v1beta1.ListMembershipsRequest + * @memberof google.cloud.gkehub.v1alpha2.GkeCluster * @static * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ListMembershipsRequest.verify = function verify(message) { + GkeCluster.verify = function verify(message) { if (typeof message !== "object" || message === null) return "object expected"; - if (message.parent != null && message.hasOwnProperty("parent")) - if (!$util.isString(message.parent)) - return "parent: string expected"; - if (message.pageSize != null && message.hasOwnProperty("pageSize")) - if (!$util.isInteger(message.pageSize)) - return "pageSize: integer expected"; - if (message.pageToken != null && message.hasOwnProperty("pageToken")) - if (!$util.isString(message.pageToken)) - return "pageToken: string expected"; - if (message.filter != null && message.hasOwnProperty("filter")) - if (!$util.isString(message.filter)) - return "filter: string expected"; - if (message.orderBy != null && message.hasOwnProperty("orderBy")) - if (!$util.isString(message.orderBy)) - return "orderBy: string expected"; + if (message.resourceLink != null && message.hasOwnProperty("resourceLink")) + if (!$util.isString(message.resourceLink)) + return "resourceLink: string expected"; return null; }; /** - * Creates a ListMembershipsRequest message from a plain object. Also converts values to their respective internal types. + * Creates a GkeCluster message from a plain object. Also converts values to their respective internal types. * @function fromObject - * @memberof google.cloud.gkehub.v1beta1.ListMembershipsRequest + * @memberof google.cloud.gkehub.v1alpha2.GkeCluster * @static * @param {Object.} object Plain object - * @returns {google.cloud.gkehub.v1beta1.ListMembershipsRequest} ListMembershipsRequest + * @returns {google.cloud.gkehub.v1alpha2.GkeCluster} GkeCluster */ - ListMembershipsRequest.fromObject = function fromObject(object) { - if (object instanceof $root.google.cloud.gkehub.v1beta1.ListMembershipsRequest) + GkeCluster.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.v1alpha2.GkeCluster) return object; - var message = new $root.google.cloud.gkehub.v1beta1.ListMembershipsRequest(); - if (object.parent != null) - message.parent = String(object.parent); - if (object.pageSize != null) - message.pageSize = object.pageSize | 0; - if (object.pageToken != null) - message.pageToken = String(object.pageToken); - if (object.filter != null) - message.filter = String(object.filter); - if (object.orderBy != null) - message.orderBy = String(object.orderBy); + var message = new $root.google.cloud.gkehub.v1alpha2.GkeCluster(); + if (object.resourceLink != null) + message.resourceLink = String(object.resourceLink); return message; }; /** - * Creates a plain object from a ListMembershipsRequest message. Also converts values to other types if specified. + * Creates a plain object from a GkeCluster message. Also converts values to other types if specified. * @function toObject - * @memberof google.cloud.gkehub.v1beta1.ListMembershipsRequest + * @memberof google.cloud.gkehub.v1alpha2.GkeCluster * @static - * @param {google.cloud.gkehub.v1beta1.ListMembershipsRequest} message ListMembershipsRequest + * @param {google.cloud.gkehub.v1alpha2.GkeCluster} message GkeCluster * @param {$protobuf.IConversionOptions} [options] Conversion options * @returns {Object.} Plain object */ - ListMembershipsRequest.toObject = function toObject(message, options) { + GkeCluster.toObject = function toObject(message, options) { if (!options) options = {}; var object = {}; - if (options.defaults) { - object.parent = ""; - object.pageSize = 0; - object.pageToken = ""; - object.filter = ""; - object.orderBy = ""; - } - if (message.parent != null && message.hasOwnProperty("parent")) - object.parent = message.parent; - if (message.pageSize != null && message.hasOwnProperty("pageSize")) - object.pageSize = message.pageSize; - if (message.pageToken != null && message.hasOwnProperty("pageToken")) - object.pageToken = message.pageToken; - if (message.filter != null && message.hasOwnProperty("filter")) - object.filter = message.filter; - if (message.orderBy != null && message.hasOwnProperty("orderBy")) - object.orderBy = message.orderBy; + if (options.defaults) + object.resourceLink = ""; + if (message.resourceLink != null && message.hasOwnProperty("resourceLink")) + object.resourceLink = message.resourceLink; return object; }; /** - * Converts this ListMembershipsRequest to JSON. + * Converts this GkeCluster to JSON. * @function toJSON - * @memberof google.cloud.gkehub.v1beta1.ListMembershipsRequest + * @memberof google.cloud.gkehub.v1alpha2.GkeCluster * @instance * @returns {Object.} JSON object */ - ListMembershipsRequest.prototype.toJSON = function toJSON() { + GkeCluster.prototype.toJSON = function toJSON() { return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; - return ListMembershipsRequest; + return GkeCluster; })(); - v1beta1.ListMembershipsResponse = (function() { + v1alpha2.KubernetesMetadata = (function() { /** - * Properties of a ListMembershipsResponse. - * @memberof google.cloud.gkehub.v1beta1 - * @interface IListMembershipsResponse - * @property {Array.|null} [resources] ListMembershipsResponse resources - * @property {string|null} [nextPageToken] ListMembershipsResponse nextPageToken - * @property {Array.|null} [unreachable] ListMembershipsResponse unreachable + * Properties of a KubernetesMetadata. + * @memberof google.cloud.gkehub.v1alpha2 + * @interface IKubernetesMetadata + * @property {string|null} [kubernetesApiServerVersion] KubernetesMetadata kubernetesApiServerVersion + * @property {string|null} [nodeProviderId] KubernetesMetadata nodeProviderId + * @property {number|null} [nodeCount] KubernetesMetadata nodeCount + * @property {number|null} [vcpuCount] KubernetesMetadata vcpuCount + * @property {number|null} [memoryMb] KubernetesMetadata memoryMb + * @property {google.protobuf.ITimestamp|null} [updateTime] KubernetesMetadata updateTime */ /** - * Constructs a new ListMembershipsResponse. - * @memberof google.cloud.gkehub.v1beta1 - * @classdesc Represents a ListMembershipsResponse. - * @implements IListMembershipsResponse + * Constructs a new KubernetesMetadata. + * @memberof google.cloud.gkehub.v1alpha2 + * @classdesc Represents a KubernetesMetadata. + * @implements IKubernetesMetadata * @constructor - * @param {google.cloud.gkehub.v1beta1.IListMembershipsResponse=} [properties] Properties to set + * @param {google.cloud.gkehub.v1alpha2.IKubernetesMetadata=} [properties] Properties to set */ - function ListMembershipsResponse(properties) { - this.resources = []; - this.unreachable = []; + function KubernetesMetadata(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) if (properties[keys[i]] != null) @@ -3262,107 +46020,140 @@ } /** - * ListMembershipsResponse resources. - * @member {Array.} resources - * @memberof google.cloud.gkehub.v1beta1.ListMembershipsResponse + * KubernetesMetadata kubernetesApiServerVersion. + * @member {string} kubernetesApiServerVersion + * @memberof google.cloud.gkehub.v1alpha2.KubernetesMetadata * @instance */ - ListMembershipsResponse.prototype.resources = $util.emptyArray; + KubernetesMetadata.prototype.kubernetesApiServerVersion = ""; /** - * ListMembershipsResponse nextPageToken. - * @member {string} nextPageToken - * @memberof google.cloud.gkehub.v1beta1.ListMembershipsResponse + * KubernetesMetadata nodeProviderId. + * @member {string} nodeProviderId + * @memberof google.cloud.gkehub.v1alpha2.KubernetesMetadata * @instance */ - ListMembershipsResponse.prototype.nextPageToken = ""; + KubernetesMetadata.prototype.nodeProviderId = ""; /** - * ListMembershipsResponse unreachable. - * @member {Array.} unreachable - * @memberof google.cloud.gkehub.v1beta1.ListMembershipsResponse + * KubernetesMetadata nodeCount. + * @member {number} nodeCount + * @memberof google.cloud.gkehub.v1alpha2.KubernetesMetadata * @instance */ - ListMembershipsResponse.prototype.unreachable = $util.emptyArray; + KubernetesMetadata.prototype.nodeCount = 0; /** - * Creates a new ListMembershipsResponse instance using the specified properties. + * KubernetesMetadata vcpuCount. + * @member {number} vcpuCount + * @memberof google.cloud.gkehub.v1alpha2.KubernetesMetadata + * @instance + */ + KubernetesMetadata.prototype.vcpuCount = 0; + + /** + * KubernetesMetadata memoryMb. + * @member {number} memoryMb + * @memberof google.cloud.gkehub.v1alpha2.KubernetesMetadata + * @instance + */ + KubernetesMetadata.prototype.memoryMb = 0; + + /** + * KubernetesMetadata updateTime. + * @member {google.protobuf.ITimestamp|null|undefined} updateTime + * @memberof google.cloud.gkehub.v1alpha2.KubernetesMetadata + * @instance + */ + KubernetesMetadata.prototype.updateTime = null; + + /** + * Creates a new KubernetesMetadata instance using the specified properties. * @function create - * @memberof google.cloud.gkehub.v1beta1.ListMembershipsResponse + * @memberof google.cloud.gkehub.v1alpha2.KubernetesMetadata * @static - * @param {google.cloud.gkehub.v1beta1.IListMembershipsResponse=} [properties] Properties to set - * @returns {google.cloud.gkehub.v1beta1.ListMembershipsResponse} ListMembershipsResponse instance + * @param {google.cloud.gkehub.v1alpha2.IKubernetesMetadata=} [properties] Properties to set + * @returns {google.cloud.gkehub.v1alpha2.KubernetesMetadata} KubernetesMetadata instance */ - ListMembershipsResponse.create = function create(properties) { - return new ListMembershipsResponse(properties); + KubernetesMetadata.create = function create(properties) { + return new KubernetesMetadata(properties); }; /** - * Encodes the specified ListMembershipsResponse message. Does not implicitly {@link google.cloud.gkehub.v1beta1.ListMembershipsResponse.verify|verify} messages. + * Encodes the specified KubernetesMetadata message. Does not implicitly {@link google.cloud.gkehub.v1alpha2.KubernetesMetadata.verify|verify} messages. * @function encode - * @memberof google.cloud.gkehub.v1beta1.ListMembershipsResponse + * @memberof google.cloud.gkehub.v1alpha2.KubernetesMetadata * @static - * @param {google.cloud.gkehub.v1beta1.IListMembershipsResponse} message ListMembershipsResponse message or plain object to encode + * @param {google.cloud.gkehub.v1alpha2.IKubernetesMetadata} message KubernetesMetadata message or plain object to encode * @param {$protobuf.Writer} [writer] Writer to encode to * @returns {$protobuf.Writer} Writer */ - ListMembershipsResponse.encode = function encode(message, writer) { + KubernetesMetadata.encode = function encode(message, writer) { if (!writer) writer = $Writer.create(); - if (message.resources != null && message.resources.length) - for (var i = 0; i < message.resources.length; ++i) - $root.google.cloud.gkehub.v1beta1.Membership.encode(message.resources[i], writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim(); - if (message.nextPageToken != null && Object.hasOwnProperty.call(message, "nextPageToken")) - writer.uint32(/* id 2, wireType 2 =*/18).string(message.nextPageToken); - if (message.unreachable != null && message.unreachable.length) - for (var i = 0; i < message.unreachable.length; ++i) - writer.uint32(/* id 3, wireType 2 =*/26).string(message.unreachable[i]); + if (message.kubernetesApiServerVersion != null && Object.hasOwnProperty.call(message, "kubernetesApiServerVersion")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.kubernetesApiServerVersion); + if (message.nodeProviderId != null && Object.hasOwnProperty.call(message, "nodeProviderId")) + writer.uint32(/* id 2, wireType 2 =*/18).string(message.nodeProviderId); + if (message.nodeCount != null && Object.hasOwnProperty.call(message, "nodeCount")) + writer.uint32(/* id 3, wireType 0 =*/24).int32(message.nodeCount); + if (message.vcpuCount != null && Object.hasOwnProperty.call(message, "vcpuCount")) + writer.uint32(/* id 4, wireType 0 =*/32).int32(message.vcpuCount); + if (message.memoryMb != null && Object.hasOwnProperty.call(message, "memoryMb")) + writer.uint32(/* id 5, wireType 0 =*/40).int32(message.memoryMb); + if (message.updateTime != null && Object.hasOwnProperty.call(message, "updateTime")) + $root.google.protobuf.Timestamp.encode(message.updateTime, writer.uint32(/* id 100, wireType 2 =*/802).fork()).ldelim(); return writer; }; /** - * Encodes the specified ListMembershipsResponse message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta1.ListMembershipsResponse.verify|verify} messages. + * Encodes the specified KubernetesMetadata message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1alpha2.KubernetesMetadata.verify|verify} messages. * @function encodeDelimited - * @memberof google.cloud.gkehub.v1beta1.ListMembershipsResponse + * @memberof google.cloud.gkehub.v1alpha2.KubernetesMetadata * @static - * @param {google.cloud.gkehub.v1beta1.IListMembershipsResponse} message ListMembershipsResponse message or plain object to encode + * @param {google.cloud.gkehub.v1alpha2.IKubernetesMetadata} message KubernetesMetadata message or plain object to encode * @param {$protobuf.Writer} [writer] Writer to encode to * @returns {$protobuf.Writer} Writer */ - ListMembershipsResponse.encodeDelimited = function encodeDelimited(message, writer) { + KubernetesMetadata.encodeDelimited = function encodeDelimited(message, writer) { return this.encode(message, writer).ldelim(); }; /** - * Decodes a ListMembershipsResponse message from the specified reader or buffer. + * Decodes a KubernetesMetadata message from the specified reader or buffer. * @function decode - * @memberof google.cloud.gkehub.v1beta1.ListMembershipsResponse + * @memberof google.cloud.gkehub.v1alpha2.KubernetesMetadata * @static * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from * @param {number} [length] Message length if known beforehand - * @returns {google.cloud.gkehub.v1beta1.ListMembershipsResponse} ListMembershipsResponse + * @returns {google.cloud.gkehub.v1alpha2.KubernetesMetadata} KubernetesMetadata * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ListMembershipsResponse.decode = function decode(reader, length) { + KubernetesMetadata.decode = function decode(reader, length) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); - var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.v1beta1.ListMembershipsResponse(); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.v1alpha2.KubernetesMetadata(); while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { case 1: - if (!(message.resources && message.resources.length)) - message.resources = []; - message.resources.push($root.google.cloud.gkehub.v1beta1.Membership.decode(reader, reader.uint32())); + message.kubernetesApiServerVersion = reader.string(); break; case 2: - message.nextPageToken = reader.string(); + message.nodeProviderId = reader.string(); break; case 3: - if (!(message.unreachable && message.unreachable.length)) - message.unreachable = []; - message.unreachable.push(reader.string()); + message.nodeCount = reader.int32(); + break; + case 4: + message.vcpuCount = reader.int32(); + break; + case 5: + message.memoryMb = reader.int32(); + break; + case 100: + message.updateTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); break; default: reader.skipType(tag & 7); @@ -3373,154 +46164,156 @@ }; /** - * Decodes a ListMembershipsResponse message from the specified reader or buffer, length delimited. + * Decodes a KubernetesMetadata message from the specified reader or buffer, length delimited. * @function decodeDelimited - * @memberof google.cloud.gkehub.v1beta1.ListMembershipsResponse + * @memberof google.cloud.gkehub.v1alpha2.KubernetesMetadata * @static * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {google.cloud.gkehub.v1beta1.ListMembershipsResponse} ListMembershipsResponse + * @returns {google.cloud.gkehub.v1alpha2.KubernetesMetadata} KubernetesMetadata * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ListMembershipsResponse.decodeDelimited = function decodeDelimited(reader) { + KubernetesMetadata.decodeDelimited = function decodeDelimited(reader) { if (!(reader instanceof $Reader)) reader = new $Reader(reader); return this.decode(reader, reader.uint32()); }; /** - * Verifies a ListMembershipsResponse message. + * Verifies a KubernetesMetadata message. * @function verify - * @memberof google.cloud.gkehub.v1beta1.ListMembershipsResponse + * @memberof google.cloud.gkehub.v1alpha2.KubernetesMetadata * @static * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ListMembershipsResponse.verify = function verify(message) { + KubernetesMetadata.verify = function verify(message) { if (typeof message !== "object" || message === null) return "object expected"; - if (message.resources != null && message.hasOwnProperty("resources")) { - if (!Array.isArray(message.resources)) - return "resources: array expected"; - for (var i = 0; i < message.resources.length; ++i) { - var error = $root.google.cloud.gkehub.v1beta1.Membership.verify(message.resources[i]); - if (error) - return "resources." + error; - } - } - if (message.nextPageToken != null && message.hasOwnProperty("nextPageToken")) - if (!$util.isString(message.nextPageToken)) - return "nextPageToken: string expected"; - if (message.unreachable != null && message.hasOwnProperty("unreachable")) { - if (!Array.isArray(message.unreachable)) - return "unreachable: array expected"; - for (var i = 0; i < message.unreachable.length; ++i) - if (!$util.isString(message.unreachable[i])) - return "unreachable: string[] expected"; + if (message.kubernetesApiServerVersion != null && message.hasOwnProperty("kubernetesApiServerVersion")) + if (!$util.isString(message.kubernetesApiServerVersion)) + return "kubernetesApiServerVersion: string expected"; + if (message.nodeProviderId != null && message.hasOwnProperty("nodeProviderId")) + if (!$util.isString(message.nodeProviderId)) + return "nodeProviderId: string expected"; + if (message.nodeCount != null && message.hasOwnProperty("nodeCount")) + if (!$util.isInteger(message.nodeCount)) + return "nodeCount: integer expected"; + if (message.vcpuCount != null && message.hasOwnProperty("vcpuCount")) + if (!$util.isInteger(message.vcpuCount)) + return "vcpuCount: integer expected"; + if (message.memoryMb != null && message.hasOwnProperty("memoryMb")) + if (!$util.isInteger(message.memoryMb)) + return "memoryMb: integer expected"; + if (message.updateTime != null && message.hasOwnProperty("updateTime")) { + var error = $root.google.protobuf.Timestamp.verify(message.updateTime); + if (error) + return "updateTime." + error; } return null; }; /** - * Creates a ListMembershipsResponse message from a plain object. Also converts values to their respective internal types. + * Creates a KubernetesMetadata message from a plain object. Also converts values to their respective internal types. * @function fromObject - * @memberof google.cloud.gkehub.v1beta1.ListMembershipsResponse + * @memberof google.cloud.gkehub.v1alpha2.KubernetesMetadata * @static * @param {Object.} object Plain object - * @returns {google.cloud.gkehub.v1beta1.ListMembershipsResponse} ListMembershipsResponse + * @returns {google.cloud.gkehub.v1alpha2.KubernetesMetadata} KubernetesMetadata */ - ListMembershipsResponse.fromObject = function fromObject(object) { - if (object instanceof $root.google.cloud.gkehub.v1beta1.ListMembershipsResponse) + KubernetesMetadata.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.v1alpha2.KubernetesMetadata) return object; - var message = new $root.google.cloud.gkehub.v1beta1.ListMembershipsResponse(); - if (object.resources) { - if (!Array.isArray(object.resources)) - throw TypeError(".google.cloud.gkehub.v1beta1.ListMembershipsResponse.resources: array expected"); - message.resources = []; - for (var i = 0; i < object.resources.length; ++i) { - if (typeof object.resources[i] !== "object") - throw TypeError(".google.cloud.gkehub.v1beta1.ListMembershipsResponse.resources: object expected"); - message.resources[i] = $root.google.cloud.gkehub.v1beta1.Membership.fromObject(object.resources[i]); - } - } - if (object.nextPageToken != null) - message.nextPageToken = String(object.nextPageToken); - if (object.unreachable) { - if (!Array.isArray(object.unreachable)) - throw TypeError(".google.cloud.gkehub.v1beta1.ListMembershipsResponse.unreachable: array expected"); - message.unreachable = []; - for (var i = 0; i < object.unreachable.length; ++i) - message.unreachable[i] = String(object.unreachable[i]); + var message = new $root.google.cloud.gkehub.v1alpha2.KubernetesMetadata(); + if (object.kubernetesApiServerVersion != null) + message.kubernetesApiServerVersion = String(object.kubernetesApiServerVersion); + if (object.nodeProviderId != null) + message.nodeProviderId = String(object.nodeProviderId); + if (object.nodeCount != null) + message.nodeCount = object.nodeCount | 0; + if (object.vcpuCount != null) + message.vcpuCount = object.vcpuCount | 0; + if (object.memoryMb != null) + message.memoryMb = object.memoryMb | 0; + if (object.updateTime != null) { + if (typeof object.updateTime !== "object") + throw TypeError(".google.cloud.gkehub.v1alpha2.KubernetesMetadata.updateTime: object expected"); + message.updateTime = $root.google.protobuf.Timestamp.fromObject(object.updateTime); } return message; }; /** - * Creates a plain object from a ListMembershipsResponse message. Also converts values to other types if specified. + * Creates a plain object from a KubernetesMetadata message. Also converts values to other types if specified. * @function toObject - * @memberof google.cloud.gkehub.v1beta1.ListMembershipsResponse + * @memberof google.cloud.gkehub.v1alpha2.KubernetesMetadata * @static - * @param {google.cloud.gkehub.v1beta1.ListMembershipsResponse} message ListMembershipsResponse + * @param {google.cloud.gkehub.v1alpha2.KubernetesMetadata} message KubernetesMetadata * @param {$protobuf.IConversionOptions} [options] Conversion options * @returns {Object.} Plain object */ - ListMembershipsResponse.toObject = function toObject(message, options) { + KubernetesMetadata.toObject = function toObject(message, options) { if (!options) options = {}; var object = {}; - if (options.arrays || options.defaults) { - object.resources = []; - object.unreachable = []; - } - if (options.defaults) - object.nextPageToken = ""; - if (message.resources && message.resources.length) { - object.resources = []; - for (var j = 0; j < message.resources.length; ++j) - object.resources[j] = $root.google.cloud.gkehub.v1beta1.Membership.toObject(message.resources[j], options); - } - if (message.nextPageToken != null && message.hasOwnProperty("nextPageToken")) - object.nextPageToken = message.nextPageToken; - if (message.unreachable && message.unreachable.length) { - object.unreachable = []; - for (var j = 0; j < message.unreachable.length; ++j) - object.unreachable[j] = message.unreachable[j]; + if (options.defaults) { + object.kubernetesApiServerVersion = ""; + object.nodeProviderId = ""; + object.nodeCount = 0; + object.vcpuCount = 0; + object.memoryMb = 0; + object.updateTime = null; } + if (message.kubernetesApiServerVersion != null && message.hasOwnProperty("kubernetesApiServerVersion")) + object.kubernetesApiServerVersion = message.kubernetesApiServerVersion; + if (message.nodeProviderId != null && message.hasOwnProperty("nodeProviderId")) + object.nodeProviderId = message.nodeProviderId; + if (message.nodeCount != null && message.hasOwnProperty("nodeCount")) + object.nodeCount = message.nodeCount; + if (message.vcpuCount != null && message.hasOwnProperty("vcpuCount")) + object.vcpuCount = message.vcpuCount; + if (message.memoryMb != null && message.hasOwnProperty("memoryMb")) + object.memoryMb = message.memoryMb; + if (message.updateTime != null && message.hasOwnProperty("updateTime")) + object.updateTime = $root.google.protobuf.Timestamp.toObject(message.updateTime, options); return object; }; /** - * Converts this ListMembershipsResponse to JSON. + * Converts this KubernetesMetadata to JSON. * @function toJSON - * @memberof google.cloud.gkehub.v1beta1.ListMembershipsResponse + * @memberof google.cloud.gkehub.v1alpha2.KubernetesMetadata * @instance * @returns {Object.} JSON object */ - ListMembershipsResponse.prototype.toJSON = function toJSON() { + KubernetesMetadata.prototype.toJSON = function toJSON() { return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; - return ListMembershipsResponse; + return KubernetesMetadata; })(); - v1beta1.GetMembershipRequest = (function() { + v1alpha2.Authority = (function() { /** - * Properties of a GetMembershipRequest. - * @memberof google.cloud.gkehub.v1beta1 - * @interface IGetMembershipRequest - * @property {string|null} [name] GetMembershipRequest name + * Properties of an Authority. + * @memberof google.cloud.gkehub.v1alpha2 + * @interface IAuthority + * @property {string|null} [issuer] Authority issuer + * @property {Uint8Array|null} [oidcJwks] Authority oidcJwks + * @property {string|null} [identityProvider] Authority identityProvider + * @property {string|null} [workloadIdentityPool] Authority workloadIdentityPool */ /** - * Constructs a new GetMembershipRequest. - * @memberof google.cloud.gkehub.v1beta1 - * @classdesc Represents a GetMembershipRequest. - * @implements IGetMembershipRequest + * Constructs a new Authority. + * @memberof google.cloud.gkehub.v1alpha2 + * @classdesc Represents an Authority. + * @implements IAuthority * @constructor - * @param {google.cloud.gkehub.v1beta1.IGetMembershipRequest=} [properties] Properties to set + * @param {google.cloud.gkehub.v1alpha2.IAuthority=} [properties] Properties to set */ - function GetMembershipRequest(properties) { + function Authority(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) if (properties[keys[i]] != null) @@ -3528,75 +46321,114 @@ } /** - * GetMembershipRequest name. - * @member {string} name - * @memberof google.cloud.gkehub.v1beta1.GetMembershipRequest + * Authority issuer. + * @member {string} issuer + * @memberof google.cloud.gkehub.v1alpha2.Authority * @instance */ - GetMembershipRequest.prototype.name = ""; + Authority.prototype.issuer = ""; /** - * Creates a new GetMembershipRequest instance using the specified properties. + * Authority oidcJwks. + * @member {Uint8Array} oidcJwks + * @memberof google.cloud.gkehub.v1alpha2.Authority + * @instance + */ + Authority.prototype.oidcJwks = $util.newBuffer([]); + + /** + * Authority identityProvider. + * @member {string} identityProvider + * @memberof google.cloud.gkehub.v1alpha2.Authority + * @instance + */ + Authority.prototype.identityProvider = ""; + + /** + * Authority workloadIdentityPool. + * @member {string} workloadIdentityPool + * @memberof google.cloud.gkehub.v1alpha2.Authority + * @instance + */ + Authority.prototype.workloadIdentityPool = ""; + + /** + * Creates a new Authority instance using the specified properties. * @function create - * @memberof google.cloud.gkehub.v1beta1.GetMembershipRequest + * @memberof google.cloud.gkehub.v1alpha2.Authority * @static - * @param {google.cloud.gkehub.v1beta1.IGetMembershipRequest=} [properties] Properties to set - * @returns {google.cloud.gkehub.v1beta1.GetMembershipRequest} GetMembershipRequest instance + * @param {google.cloud.gkehub.v1alpha2.IAuthority=} [properties] Properties to set + * @returns {google.cloud.gkehub.v1alpha2.Authority} Authority instance */ - GetMembershipRequest.create = function create(properties) { - return new GetMembershipRequest(properties); + Authority.create = function create(properties) { + return new Authority(properties); }; /** - * Encodes the specified GetMembershipRequest message. Does not implicitly {@link google.cloud.gkehub.v1beta1.GetMembershipRequest.verify|verify} messages. + * Encodes the specified Authority message. Does not implicitly {@link google.cloud.gkehub.v1alpha2.Authority.verify|verify} messages. * @function encode - * @memberof google.cloud.gkehub.v1beta1.GetMembershipRequest + * @memberof google.cloud.gkehub.v1alpha2.Authority * @static - * @param {google.cloud.gkehub.v1beta1.IGetMembershipRequest} message GetMembershipRequest message or plain object to encode + * @param {google.cloud.gkehub.v1alpha2.IAuthority} message Authority message or plain object to encode * @param {$protobuf.Writer} [writer] Writer to encode to * @returns {$protobuf.Writer} Writer */ - GetMembershipRequest.encode = function encode(message, writer) { + Authority.encode = function encode(message, writer) { if (!writer) writer = $Writer.create(); - if (message.name != null && Object.hasOwnProperty.call(message, "name")) - writer.uint32(/* id 1, wireType 2 =*/10).string(message.name); + if (message.issuer != null && Object.hasOwnProperty.call(message, "issuer")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.issuer); + if (message.identityProvider != null && Object.hasOwnProperty.call(message, "identityProvider")) + writer.uint32(/* id 3, wireType 2 =*/26).string(message.identityProvider); + if (message.workloadIdentityPool != null && Object.hasOwnProperty.call(message, "workloadIdentityPool")) + writer.uint32(/* id 4, wireType 2 =*/34).string(message.workloadIdentityPool); + if (message.oidcJwks != null && Object.hasOwnProperty.call(message, "oidcJwks")) + writer.uint32(/* id 5, wireType 2 =*/42).bytes(message.oidcJwks); return writer; }; /** - * Encodes the specified GetMembershipRequest message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta1.GetMembershipRequest.verify|verify} messages. + * Encodes the specified Authority message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1alpha2.Authority.verify|verify} messages. * @function encodeDelimited - * @memberof google.cloud.gkehub.v1beta1.GetMembershipRequest + * @memberof google.cloud.gkehub.v1alpha2.Authority * @static - * @param {google.cloud.gkehub.v1beta1.IGetMembershipRequest} message GetMembershipRequest message or plain object to encode + * @param {google.cloud.gkehub.v1alpha2.IAuthority} message Authority message or plain object to encode * @param {$protobuf.Writer} [writer] Writer to encode to * @returns {$protobuf.Writer} Writer */ - GetMembershipRequest.encodeDelimited = function encodeDelimited(message, writer) { + Authority.encodeDelimited = function encodeDelimited(message, writer) { return this.encode(message, writer).ldelim(); }; /** - * Decodes a GetMembershipRequest message from the specified reader or buffer. + * Decodes an Authority message from the specified reader or buffer. * @function decode - * @memberof google.cloud.gkehub.v1beta1.GetMembershipRequest + * @memberof google.cloud.gkehub.v1alpha2.Authority * @static * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from * @param {number} [length] Message length if known beforehand - * @returns {google.cloud.gkehub.v1beta1.GetMembershipRequest} GetMembershipRequest + * @returns {google.cloud.gkehub.v1alpha2.Authority} Authority * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - GetMembershipRequest.decode = function decode(reader, length) { + Authority.decode = function decode(reader, length) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); - var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.v1beta1.GetMembershipRequest(); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.v1alpha2.Authority(); while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { case 1: - message.name = reader.string(); + message.issuer = reader.string(); + break; + case 5: + message.oidcJwks = reader.bytes(); + break; + case 3: + message.identityProvider = reader.string(); + break; + case 4: + message.workloadIdentityPool = reader.string(); break; default: reader.skipType(tag & 7); @@ -3607,109 +46439,141 @@ }; /** - * Decodes a GetMembershipRequest message from the specified reader or buffer, length delimited. + * Decodes an Authority message from the specified reader or buffer, length delimited. * @function decodeDelimited - * @memberof google.cloud.gkehub.v1beta1.GetMembershipRequest + * @memberof google.cloud.gkehub.v1alpha2.Authority * @static * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {google.cloud.gkehub.v1beta1.GetMembershipRequest} GetMembershipRequest + * @returns {google.cloud.gkehub.v1alpha2.Authority} Authority * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - GetMembershipRequest.decodeDelimited = function decodeDelimited(reader) { + Authority.decodeDelimited = function decodeDelimited(reader) { if (!(reader instanceof $Reader)) reader = new $Reader(reader); return this.decode(reader, reader.uint32()); }; /** - * Verifies a GetMembershipRequest message. + * Verifies an Authority message. * @function verify - * @memberof google.cloud.gkehub.v1beta1.GetMembershipRequest + * @memberof google.cloud.gkehub.v1alpha2.Authority * @static * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - GetMembershipRequest.verify = function verify(message) { + Authority.verify = function verify(message) { if (typeof message !== "object" || message === null) return "object expected"; - if (message.name != null && message.hasOwnProperty("name")) - if (!$util.isString(message.name)) - return "name: string expected"; + if (message.issuer != null && message.hasOwnProperty("issuer")) + if (!$util.isString(message.issuer)) + return "issuer: string expected"; + if (message.oidcJwks != null && message.hasOwnProperty("oidcJwks")) + if (!(message.oidcJwks && typeof message.oidcJwks.length === "number" || $util.isString(message.oidcJwks))) + return "oidcJwks: buffer expected"; + if (message.identityProvider != null && message.hasOwnProperty("identityProvider")) + if (!$util.isString(message.identityProvider)) + return "identityProvider: string expected"; + if (message.workloadIdentityPool != null && message.hasOwnProperty("workloadIdentityPool")) + if (!$util.isString(message.workloadIdentityPool)) + return "workloadIdentityPool: string expected"; return null; }; /** - * Creates a GetMembershipRequest message from a plain object. Also converts values to their respective internal types. + * Creates an Authority message from a plain object. Also converts values to their respective internal types. * @function fromObject - * @memberof google.cloud.gkehub.v1beta1.GetMembershipRequest + * @memberof google.cloud.gkehub.v1alpha2.Authority * @static * @param {Object.} object Plain object - * @returns {google.cloud.gkehub.v1beta1.GetMembershipRequest} GetMembershipRequest + * @returns {google.cloud.gkehub.v1alpha2.Authority} Authority */ - GetMembershipRequest.fromObject = function fromObject(object) { - if (object instanceof $root.google.cloud.gkehub.v1beta1.GetMembershipRequest) + Authority.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.v1alpha2.Authority) return object; - var message = new $root.google.cloud.gkehub.v1beta1.GetMembershipRequest(); - if (object.name != null) - message.name = String(object.name); + var message = new $root.google.cloud.gkehub.v1alpha2.Authority(); + if (object.issuer != null) + message.issuer = String(object.issuer); + if (object.oidcJwks != null) + if (typeof object.oidcJwks === "string") + $util.base64.decode(object.oidcJwks, message.oidcJwks = $util.newBuffer($util.base64.length(object.oidcJwks)), 0); + else if (object.oidcJwks.length) + message.oidcJwks = object.oidcJwks; + if (object.identityProvider != null) + message.identityProvider = String(object.identityProvider); + if (object.workloadIdentityPool != null) + message.workloadIdentityPool = String(object.workloadIdentityPool); return message; }; /** - * Creates a plain object from a GetMembershipRequest message. Also converts values to other types if specified. + * Creates a plain object from an Authority message. Also converts values to other types if specified. * @function toObject - * @memberof google.cloud.gkehub.v1beta1.GetMembershipRequest + * @memberof google.cloud.gkehub.v1alpha2.Authority * @static - * @param {google.cloud.gkehub.v1beta1.GetMembershipRequest} message GetMembershipRequest + * @param {google.cloud.gkehub.v1alpha2.Authority} message Authority * @param {$protobuf.IConversionOptions} [options] Conversion options * @returns {Object.} Plain object */ - GetMembershipRequest.toObject = function toObject(message, options) { + Authority.toObject = function toObject(message, options) { if (!options) options = {}; var object = {}; - if (options.defaults) - object.name = ""; - if (message.name != null && message.hasOwnProperty("name")) - object.name = message.name; + if (options.defaults) { + object.issuer = ""; + object.identityProvider = ""; + object.workloadIdentityPool = ""; + if (options.bytes === String) + object.oidcJwks = ""; + else { + object.oidcJwks = []; + if (options.bytes !== Array) + object.oidcJwks = $util.newBuffer(object.oidcJwks); + } + } + if (message.issuer != null && message.hasOwnProperty("issuer")) + object.issuer = message.issuer; + if (message.identityProvider != null && message.hasOwnProperty("identityProvider")) + object.identityProvider = message.identityProvider; + if (message.workloadIdentityPool != null && message.hasOwnProperty("workloadIdentityPool")) + object.workloadIdentityPool = message.workloadIdentityPool; + if (message.oidcJwks != null && message.hasOwnProperty("oidcJwks")) + object.oidcJwks = options.bytes === String ? $util.base64.encode(message.oidcJwks, 0, message.oidcJwks.length) : options.bytes === Array ? Array.prototype.slice.call(message.oidcJwks) : message.oidcJwks; return object; }; /** - * Converts this GetMembershipRequest to JSON. + * Converts this Authority to JSON. * @function toJSON - * @memberof google.cloud.gkehub.v1beta1.GetMembershipRequest + * @memberof google.cloud.gkehub.v1alpha2.Authority * @instance * @returns {Object.} JSON object */ - GetMembershipRequest.prototype.toJSON = function toJSON() { + Authority.prototype.toJSON = function toJSON() { return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; - return GetMembershipRequest; + return Authority; })(); - v1beta1.CreateMembershipRequest = (function() { + v1alpha2.MembershipState = (function() { /** - * Properties of a CreateMembershipRequest. - * @memberof google.cloud.gkehub.v1beta1 - * @interface ICreateMembershipRequest - * @property {string|null} [parent] CreateMembershipRequest parent - * @property {string|null} [membershipId] CreateMembershipRequest membershipId - * @property {google.cloud.gkehub.v1beta1.IMembership|null} [resource] CreateMembershipRequest resource + * Properties of a MembershipState. + * @memberof google.cloud.gkehub.v1alpha2 + * @interface IMembershipState + * @property {google.cloud.gkehub.v1alpha2.MembershipState.Code|null} [code] MembershipState code */ /** - * Constructs a new CreateMembershipRequest. - * @memberof google.cloud.gkehub.v1beta1 - * @classdesc Represents a CreateMembershipRequest. - * @implements ICreateMembershipRequest + * Constructs a new MembershipState. + * @memberof google.cloud.gkehub.v1alpha2 + * @classdesc Represents a MembershipState. + * @implements IMembershipState * @constructor - * @param {google.cloud.gkehub.v1beta1.ICreateMembershipRequest=} [properties] Properties to set + * @param {google.cloud.gkehub.v1alpha2.IMembershipState=} [properties] Properties to set */ - function CreateMembershipRequest(properties) { + function MembershipState(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) if (properties[keys[i]] != null) @@ -3717,101 +46581,75 @@ } /** - * CreateMembershipRequest parent. - * @member {string} parent - * @memberof google.cloud.gkehub.v1beta1.CreateMembershipRequest - * @instance - */ - CreateMembershipRequest.prototype.parent = ""; - - /** - * CreateMembershipRequest membershipId. - * @member {string} membershipId - * @memberof google.cloud.gkehub.v1beta1.CreateMembershipRequest - * @instance - */ - CreateMembershipRequest.prototype.membershipId = ""; - - /** - * CreateMembershipRequest resource. - * @member {google.cloud.gkehub.v1beta1.IMembership|null|undefined} resource - * @memberof google.cloud.gkehub.v1beta1.CreateMembershipRequest + * MembershipState code. + * @member {google.cloud.gkehub.v1alpha2.MembershipState.Code} code + * @memberof google.cloud.gkehub.v1alpha2.MembershipState * @instance */ - CreateMembershipRequest.prototype.resource = null; + MembershipState.prototype.code = 0; /** - * Creates a new CreateMembershipRequest instance using the specified properties. + * Creates a new MembershipState instance using the specified properties. * @function create - * @memberof google.cloud.gkehub.v1beta1.CreateMembershipRequest + * @memberof google.cloud.gkehub.v1alpha2.MembershipState * @static - * @param {google.cloud.gkehub.v1beta1.ICreateMembershipRequest=} [properties] Properties to set - * @returns {google.cloud.gkehub.v1beta1.CreateMembershipRequest} CreateMembershipRequest instance + * @param {google.cloud.gkehub.v1alpha2.IMembershipState=} [properties] Properties to set + * @returns {google.cloud.gkehub.v1alpha2.MembershipState} MembershipState instance */ - CreateMembershipRequest.create = function create(properties) { - return new CreateMembershipRequest(properties); + MembershipState.create = function create(properties) { + return new MembershipState(properties); }; /** - * Encodes the specified CreateMembershipRequest message. Does not implicitly {@link google.cloud.gkehub.v1beta1.CreateMembershipRequest.verify|verify} messages. + * Encodes the specified MembershipState message. Does not implicitly {@link google.cloud.gkehub.v1alpha2.MembershipState.verify|verify} messages. * @function encode - * @memberof google.cloud.gkehub.v1beta1.CreateMembershipRequest + * @memberof google.cloud.gkehub.v1alpha2.MembershipState * @static - * @param {google.cloud.gkehub.v1beta1.ICreateMembershipRequest} message CreateMembershipRequest message or plain object to encode + * @param {google.cloud.gkehub.v1alpha2.IMembershipState} message MembershipState message or plain object to encode * @param {$protobuf.Writer} [writer] Writer to encode to * @returns {$protobuf.Writer} Writer - */ - CreateMembershipRequest.encode = function encode(message, writer) { - if (!writer) - writer = $Writer.create(); - if (message.parent != null && Object.hasOwnProperty.call(message, "parent")) - writer.uint32(/* id 1, wireType 2 =*/10).string(message.parent); - if (message.membershipId != null && Object.hasOwnProperty.call(message, "membershipId")) - writer.uint32(/* id 2, wireType 2 =*/18).string(message.membershipId); - if (message.resource != null && Object.hasOwnProperty.call(message, "resource")) - $root.google.cloud.gkehub.v1beta1.Membership.encode(message.resource, writer.uint32(/* id 3, wireType 2 =*/26).fork()).ldelim(); + */ + MembershipState.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.code != null && Object.hasOwnProperty.call(message, "code")) + writer.uint32(/* id 1, wireType 0 =*/8).int32(message.code); return writer; }; /** - * Encodes the specified CreateMembershipRequest message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta1.CreateMembershipRequest.verify|verify} messages. + * Encodes the specified MembershipState message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1alpha2.MembershipState.verify|verify} messages. * @function encodeDelimited - * @memberof google.cloud.gkehub.v1beta1.CreateMembershipRequest + * @memberof google.cloud.gkehub.v1alpha2.MembershipState * @static - * @param {google.cloud.gkehub.v1beta1.ICreateMembershipRequest} message CreateMembershipRequest message or plain object to encode + * @param {google.cloud.gkehub.v1alpha2.IMembershipState} message MembershipState message or plain object to encode * @param {$protobuf.Writer} [writer] Writer to encode to * @returns {$protobuf.Writer} Writer */ - CreateMembershipRequest.encodeDelimited = function encodeDelimited(message, writer) { + MembershipState.encodeDelimited = function encodeDelimited(message, writer) { return this.encode(message, writer).ldelim(); }; /** - * Decodes a CreateMembershipRequest message from the specified reader or buffer. + * Decodes a MembershipState message from the specified reader or buffer. * @function decode - * @memberof google.cloud.gkehub.v1beta1.CreateMembershipRequest + * @memberof google.cloud.gkehub.v1alpha2.MembershipState * @static * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from * @param {number} [length] Message length if known beforehand - * @returns {google.cloud.gkehub.v1beta1.CreateMembershipRequest} CreateMembershipRequest + * @returns {google.cloud.gkehub.v1alpha2.MembershipState} MembershipState * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - CreateMembershipRequest.decode = function decode(reader, length) { + MembershipState.decode = function decode(reader, length) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); - var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.v1beta1.CreateMembershipRequest(); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.v1alpha2.MembershipState(); while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { case 1: - message.parent = reader.string(); - break; - case 2: - message.membershipId = reader.string(); - break; - case 3: - message.resource = $root.google.cloud.gkehub.v1beta1.Membership.decode(reader, reader.uint32()); + message.code = reader.int32(); break; default: reader.skipType(tag & 7); @@ -3822,129 +46660,166 @@ }; /** - * Decodes a CreateMembershipRequest message from the specified reader or buffer, length delimited. + * Decodes a MembershipState message from the specified reader or buffer, length delimited. * @function decodeDelimited - * @memberof google.cloud.gkehub.v1beta1.CreateMembershipRequest + * @memberof google.cloud.gkehub.v1alpha2.MembershipState * @static * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {google.cloud.gkehub.v1beta1.CreateMembershipRequest} CreateMembershipRequest + * @returns {google.cloud.gkehub.v1alpha2.MembershipState} MembershipState * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - CreateMembershipRequest.decodeDelimited = function decodeDelimited(reader) { + MembershipState.decodeDelimited = function decodeDelimited(reader) { if (!(reader instanceof $Reader)) reader = new $Reader(reader); return this.decode(reader, reader.uint32()); }; /** - * Verifies a CreateMembershipRequest message. + * Verifies a MembershipState message. * @function verify - * @memberof google.cloud.gkehub.v1beta1.CreateMembershipRequest + * @memberof google.cloud.gkehub.v1alpha2.MembershipState * @static * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - CreateMembershipRequest.verify = function verify(message) { + MembershipState.verify = function verify(message) { if (typeof message !== "object" || message === null) return "object expected"; - if (message.parent != null && message.hasOwnProperty("parent")) - if (!$util.isString(message.parent)) - return "parent: string expected"; - if (message.membershipId != null && message.hasOwnProperty("membershipId")) - if (!$util.isString(message.membershipId)) - return "membershipId: string expected"; - if (message.resource != null && message.hasOwnProperty("resource")) { - var error = $root.google.cloud.gkehub.v1beta1.Membership.verify(message.resource); - if (error) - return "resource." + error; - } + if (message.code != null && message.hasOwnProperty("code")) + switch (message.code) { + default: + return "code: enum value expected"; + case 0: + case 1: + case 2: + case 3: + case 4: + case 5: + break; + } return null; }; /** - * Creates a CreateMembershipRequest message from a plain object. Also converts values to their respective internal types. + * Creates a MembershipState message from a plain object. Also converts values to their respective internal types. * @function fromObject - * @memberof google.cloud.gkehub.v1beta1.CreateMembershipRequest + * @memberof google.cloud.gkehub.v1alpha2.MembershipState * @static * @param {Object.} object Plain object - * @returns {google.cloud.gkehub.v1beta1.CreateMembershipRequest} CreateMembershipRequest + * @returns {google.cloud.gkehub.v1alpha2.MembershipState} MembershipState */ - CreateMembershipRequest.fromObject = function fromObject(object) { - if (object instanceof $root.google.cloud.gkehub.v1beta1.CreateMembershipRequest) + MembershipState.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.v1alpha2.MembershipState) return object; - var message = new $root.google.cloud.gkehub.v1beta1.CreateMembershipRequest(); - if (object.parent != null) - message.parent = String(object.parent); - if (object.membershipId != null) - message.membershipId = String(object.membershipId); - if (object.resource != null) { - if (typeof object.resource !== "object") - throw TypeError(".google.cloud.gkehub.v1beta1.CreateMembershipRequest.resource: object expected"); - message.resource = $root.google.cloud.gkehub.v1beta1.Membership.fromObject(object.resource); + var message = new $root.google.cloud.gkehub.v1alpha2.MembershipState(); + switch (object.code) { + case "CODE_UNSPECIFIED": + case 0: + message.code = 0; + break; + case "CREATING": + case 1: + message.code = 1; + break; + case "READY": + case 2: + message.code = 2; + break; + case "DELETING": + case 3: + message.code = 3; + break; + case "UPDATING": + case 4: + message.code = 4; + break; + case "SERVICE_UPDATING": + case 5: + message.code = 5; + break; } return message; }; /** - * Creates a plain object from a CreateMembershipRequest message. Also converts values to other types if specified. + * Creates a plain object from a MembershipState message. Also converts values to other types if specified. * @function toObject - * @memberof google.cloud.gkehub.v1beta1.CreateMembershipRequest + * @memberof google.cloud.gkehub.v1alpha2.MembershipState * @static - * @param {google.cloud.gkehub.v1beta1.CreateMembershipRequest} message CreateMembershipRequest + * @param {google.cloud.gkehub.v1alpha2.MembershipState} message MembershipState * @param {$protobuf.IConversionOptions} [options] Conversion options * @returns {Object.} Plain object */ - CreateMembershipRequest.toObject = function toObject(message, options) { + MembershipState.toObject = function toObject(message, options) { if (!options) options = {}; var object = {}; - if (options.defaults) { - object.parent = ""; - object.membershipId = ""; - object.resource = null; - } - if (message.parent != null && message.hasOwnProperty("parent")) - object.parent = message.parent; - if (message.membershipId != null && message.hasOwnProperty("membershipId")) - object.membershipId = message.membershipId; - if (message.resource != null && message.hasOwnProperty("resource")) - object.resource = $root.google.cloud.gkehub.v1beta1.Membership.toObject(message.resource, options); + if (options.defaults) + object.code = options.enums === String ? "CODE_UNSPECIFIED" : 0; + if (message.code != null && message.hasOwnProperty("code")) + object.code = options.enums === String ? $root.google.cloud.gkehub.v1alpha2.MembershipState.Code[message.code] : message.code; return object; }; /** - * Converts this CreateMembershipRequest to JSON. + * Converts this MembershipState to JSON. * @function toJSON - * @memberof google.cloud.gkehub.v1beta1.CreateMembershipRequest + * @memberof google.cloud.gkehub.v1alpha2.MembershipState * @instance * @returns {Object.} JSON object */ - CreateMembershipRequest.prototype.toJSON = function toJSON() { + MembershipState.prototype.toJSON = function toJSON() { return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; - return CreateMembershipRequest; + /** + * Code enum. + * @name google.cloud.gkehub.v1alpha2.MembershipState.Code + * @enum {number} + * @property {number} CODE_UNSPECIFIED=0 CODE_UNSPECIFIED value + * @property {number} CREATING=1 CREATING value + * @property {number} READY=2 READY value + * @property {number} DELETING=3 DELETING value + * @property {number} UPDATING=4 UPDATING value + * @property {number} SERVICE_UPDATING=5 SERVICE_UPDATING value + */ + MembershipState.Code = (function() { + var valuesById = {}, values = Object.create(valuesById); + values[valuesById[0] = "CODE_UNSPECIFIED"] = 0; + values[valuesById[1] = "CREATING"] = 1; + values[valuesById[2] = "READY"] = 2; + values[valuesById[3] = "DELETING"] = 3; + values[valuesById[4] = "UPDATING"] = 4; + values[valuesById[5] = "SERVICE_UPDATING"] = 5; + return values; + })(); + + return MembershipState; })(); - v1beta1.DeleteMembershipRequest = (function() { + v1alpha2.ListMembershipsRequest = (function() { /** - * Properties of a DeleteMembershipRequest. - * @memberof google.cloud.gkehub.v1beta1 - * @interface IDeleteMembershipRequest - * @property {string|null} [name] DeleteMembershipRequest name + * Properties of a ListMembershipsRequest. + * @memberof google.cloud.gkehub.v1alpha2 + * @interface IListMembershipsRequest + * @property {string|null} [parent] ListMembershipsRequest parent + * @property {number|null} [pageSize] ListMembershipsRequest pageSize + * @property {string|null} [pageToken] ListMembershipsRequest pageToken + * @property {string|null} [filter] ListMembershipsRequest filter + * @property {string|null} [orderBy] ListMembershipsRequest orderBy */ /** - * Constructs a new DeleteMembershipRequest. - * @memberof google.cloud.gkehub.v1beta1 - * @classdesc Represents a DeleteMembershipRequest. - * @implements IDeleteMembershipRequest + * Constructs a new ListMembershipsRequest. + * @memberof google.cloud.gkehub.v1alpha2 + * @classdesc Represents a ListMembershipsRequest. + * @implements IListMembershipsRequest * @constructor - * @param {google.cloud.gkehub.v1beta1.IDeleteMembershipRequest=} [properties] Properties to set + * @param {google.cloud.gkehub.v1alpha2.IListMembershipsRequest=} [properties] Properties to set */ - function DeleteMembershipRequest(properties) { + function ListMembershipsRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) if (properties[keys[i]] != null) @@ -3952,75 +46827,127 @@ } /** - * DeleteMembershipRequest name. - * @member {string} name - * @memberof google.cloud.gkehub.v1beta1.DeleteMembershipRequest + * ListMembershipsRequest parent. + * @member {string} parent + * @memberof google.cloud.gkehub.v1alpha2.ListMembershipsRequest * @instance */ - DeleteMembershipRequest.prototype.name = ""; + ListMembershipsRequest.prototype.parent = ""; /** - * Creates a new DeleteMembershipRequest instance using the specified properties. + * ListMembershipsRequest pageSize. + * @member {number} pageSize + * @memberof google.cloud.gkehub.v1alpha2.ListMembershipsRequest + * @instance + */ + ListMembershipsRequest.prototype.pageSize = 0; + + /** + * ListMembershipsRequest pageToken. + * @member {string} pageToken + * @memberof google.cloud.gkehub.v1alpha2.ListMembershipsRequest + * @instance + */ + ListMembershipsRequest.prototype.pageToken = ""; + + /** + * ListMembershipsRequest filter. + * @member {string} filter + * @memberof google.cloud.gkehub.v1alpha2.ListMembershipsRequest + * @instance + */ + ListMembershipsRequest.prototype.filter = ""; + + /** + * ListMembershipsRequest orderBy. + * @member {string} orderBy + * @memberof google.cloud.gkehub.v1alpha2.ListMembershipsRequest + * @instance + */ + ListMembershipsRequest.prototype.orderBy = ""; + + /** + * Creates a new ListMembershipsRequest instance using the specified properties. * @function create - * @memberof google.cloud.gkehub.v1beta1.DeleteMembershipRequest + * @memberof google.cloud.gkehub.v1alpha2.ListMembershipsRequest * @static - * @param {google.cloud.gkehub.v1beta1.IDeleteMembershipRequest=} [properties] Properties to set - * @returns {google.cloud.gkehub.v1beta1.DeleteMembershipRequest} DeleteMembershipRequest instance + * @param {google.cloud.gkehub.v1alpha2.IListMembershipsRequest=} [properties] Properties to set + * @returns {google.cloud.gkehub.v1alpha2.ListMembershipsRequest} ListMembershipsRequest instance */ - DeleteMembershipRequest.create = function create(properties) { - return new DeleteMembershipRequest(properties); + ListMembershipsRequest.create = function create(properties) { + return new ListMembershipsRequest(properties); }; /** - * Encodes the specified DeleteMembershipRequest message. Does not implicitly {@link google.cloud.gkehub.v1beta1.DeleteMembershipRequest.verify|verify} messages. + * Encodes the specified ListMembershipsRequest message. Does not implicitly {@link google.cloud.gkehub.v1alpha2.ListMembershipsRequest.verify|verify} messages. * @function encode - * @memberof google.cloud.gkehub.v1beta1.DeleteMembershipRequest + * @memberof google.cloud.gkehub.v1alpha2.ListMembershipsRequest * @static - * @param {google.cloud.gkehub.v1beta1.IDeleteMembershipRequest} message DeleteMembershipRequest message or plain object to encode + * @param {google.cloud.gkehub.v1alpha2.IListMembershipsRequest} message ListMembershipsRequest message or plain object to encode * @param {$protobuf.Writer} [writer] Writer to encode to * @returns {$protobuf.Writer} Writer */ - DeleteMembershipRequest.encode = function encode(message, writer) { + ListMembershipsRequest.encode = function encode(message, writer) { if (!writer) writer = $Writer.create(); - if (message.name != null && Object.hasOwnProperty.call(message, "name")) - writer.uint32(/* id 1, wireType 2 =*/10).string(message.name); + if (message.parent != null && Object.hasOwnProperty.call(message, "parent")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.parent); + if (message.pageSize != null && Object.hasOwnProperty.call(message, "pageSize")) + writer.uint32(/* id 2, wireType 0 =*/16).int32(message.pageSize); + if (message.pageToken != null && Object.hasOwnProperty.call(message, "pageToken")) + writer.uint32(/* id 3, wireType 2 =*/26).string(message.pageToken); + if (message.filter != null && Object.hasOwnProperty.call(message, "filter")) + writer.uint32(/* id 4, wireType 2 =*/34).string(message.filter); + if (message.orderBy != null && Object.hasOwnProperty.call(message, "orderBy")) + writer.uint32(/* id 5, wireType 2 =*/42).string(message.orderBy); return writer; }; /** - * Encodes the specified DeleteMembershipRequest message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta1.DeleteMembershipRequest.verify|verify} messages. + * Encodes the specified ListMembershipsRequest message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1alpha2.ListMembershipsRequest.verify|verify} messages. * @function encodeDelimited - * @memberof google.cloud.gkehub.v1beta1.DeleteMembershipRequest + * @memberof google.cloud.gkehub.v1alpha2.ListMembershipsRequest * @static - * @param {google.cloud.gkehub.v1beta1.IDeleteMembershipRequest} message DeleteMembershipRequest message or plain object to encode + * @param {google.cloud.gkehub.v1alpha2.IListMembershipsRequest} message ListMembershipsRequest message or plain object to encode * @param {$protobuf.Writer} [writer] Writer to encode to * @returns {$protobuf.Writer} Writer */ - DeleteMembershipRequest.encodeDelimited = function encodeDelimited(message, writer) { + ListMembershipsRequest.encodeDelimited = function encodeDelimited(message, writer) { return this.encode(message, writer).ldelim(); }; /** - * Decodes a DeleteMembershipRequest message from the specified reader or buffer. + * Decodes a ListMembershipsRequest message from the specified reader or buffer. * @function decode - * @memberof google.cloud.gkehub.v1beta1.DeleteMembershipRequest + * @memberof google.cloud.gkehub.v1alpha2.ListMembershipsRequest * @static * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from * @param {number} [length] Message length if known beforehand - * @returns {google.cloud.gkehub.v1beta1.DeleteMembershipRequest} DeleteMembershipRequest + * @returns {google.cloud.gkehub.v1alpha2.ListMembershipsRequest} ListMembershipsRequest * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - DeleteMembershipRequest.decode = function decode(reader, length) { + ListMembershipsRequest.decode = function decode(reader, length) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); - var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.v1beta1.DeleteMembershipRequest(); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.v1alpha2.ListMembershipsRequest(); while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { case 1: - message.name = reader.string(); + message.parent = reader.string(); + break; + case 2: + message.pageSize = reader.int32(); + break; + case 3: + message.pageToken = reader.string(); + break; + case 4: + message.filter = reader.string(); + break; + case 5: + message.orderBy = reader.string(); break; default: reader.skipType(tag & 7); @@ -4031,109 +46958,144 @@ }; /** - * Decodes a DeleteMembershipRequest message from the specified reader or buffer, length delimited. + * Decodes a ListMembershipsRequest message from the specified reader or buffer, length delimited. * @function decodeDelimited - * @memberof google.cloud.gkehub.v1beta1.DeleteMembershipRequest + * @memberof google.cloud.gkehub.v1alpha2.ListMembershipsRequest * @static * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {google.cloud.gkehub.v1beta1.DeleteMembershipRequest} DeleteMembershipRequest + * @returns {google.cloud.gkehub.v1alpha2.ListMembershipsRequest} ListMembershipsRequest * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - DeleteMembershipRequest.decodeDelimited = function decodeDelimited(reader) { + ListMembershipsRequest.decodeDelimited = function decodeDelimited(reader) { if (!(reader instanceof $Reader)) reader = new $Reader(reader); return this.decode(reader, reader.uint32()); }; /** - * Verifies a DeleteMembershipRequest message. + * Verifies a ListMembershipsRequest message. * @function verify - * @memberof google.cloud.gkehub.v1beta1.DeleteMembershipRequest + * @memberof google.cloud.gkehub.v1alpha2.ListMembershipsRequest * @static * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - DeleteMembershipRequest.verify = function verify(message) { + ListMembershipsRequest.verify = function verify(message) { if (typeof message !== "object" || message === null) return "object expected"; - if (message.name != null && message.hasOwnProperty("name")) - if (!$util.isString(message.name)) - return "name: string expected"; + if (message.parent != null && message.hasOwnProperty("parent")) + if (!$util.isString(message.parent)) + return "parent: string expected"; + if (message.pageSize != null && message.hasOwnProperty("pageSize")) + if (!$util.isInteger(message.pageSize)) + return "pageSize: integer expected"; + if (message.pageToken != null && message.hasOwnProperty("pageToken")) + if (!$util.isString(message.pageToken)) + return "pageToken: string expected"; + if (message.filter != null && message.hasOwnProperty("filter")) + if (!$util.isString(message.filter)) + return "filter: string expected"; + if (message.orderBy != null && message.hasOwnProperty("orderBy")) + if (!$util.isString(message.orderBy)) + return "orderBy: string expected"; return null; }; /** - * Creates a DeleteMembershipRequest message from a plain object. Also converts values to their respective internal types. + * Creates a ListMembershipsRequest message from a plain object. Also converts values to their respective internal types. * @function fromObject - * @memberof google.cloud.gkehub.v1beta1.DeleteMembershipRequest + * @memberof google.cloud.gkehub.v1alpha2.ListMembershipsRequest * @static * @param {Object.} object Plain object - * @returns {google.cloud.gkehub.v1beta1.DeleteMembershipRequest} DeleteMembershipRequest + * @returns {google.cloud.gkehub.v1alpha2.ListMembershipsRequest} ListMembershipsRequest */ - DeleteMembershipRequest.fromObject = function fromObject(object) { - if (object instanceof $root.google.cloud.gkehub.v1beta1.DeleteMembershipRequest) + ListMembershipsRequest.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.v1alpha2.ListMembershipsRequest) return object; - var message = new $root.google.cloud.gkehub.v1beta1.DeleteMembershipRequest(); - if (object.name != null) - message.name = String(object.name); + var message = new $root.google.cloud.gkehub.v1alpha2.ListMembershipsRequest(); + if (object.parent != null) + message.parent = String(object.parent); + if (object.pageSize != null) + message.pageSize = object.pageSize | 0; + if (object.pageToken != null) + message.pageToken = String(object.pageToken); + if (object.filter != null) + message.filter = String(object.filter); + if (object.orderBy != null) + message.orderBy = String(object.orderBy); return message; }; /** - * Creates a plain object from a DeleteMembershipRequest message. Also converts values to other types if specified. + * Creates a plain object from a ListMembershipsRequest message. Also converts values to other types if specified. * @function toObject - * @memberof google.cloud.gkehub.v1beta1.DeleteMembershipRequest + * @memberof google.cloud.gkehub.v1alpha2.ListMembershipsRequest * @static - * @param {google.cloud.gkehub.v1beta1.DeleteMembershipRequest} message DeleteMembershipRequest + * @param {google.cloud.gkehub.v1alpha2.ListMembershipsRequest} message ListMembershipsRequest * @param {$protobuf.IConversionOptions} [options] Conversion options * @returns {Object.} Plain object */ - DeleteMembershipRequest.toObject = function toObject(message, options) { + ListMembershipsRequest.toObject = function toObject(message, options) { if (!options) options = {}; var object = {}; - if (options.defaults) - object.name = ""; - if (message.name != null && message.hasOwnProperty("name")) - object.name = message.name; + if (options.defaults) { + object.parent = ""; + object.pageSize = 0; + object.pageToken = ""; + object.filter = ""; + object.orderBy = ""; + } + if (message.parent != null && message.hasOwnProperty("parent")) + object.parent = message.parent; + if (message.pageSize != null && message.hasOwnProperty("pageSize")) + object.pageSize = message.pageSize; + if (message.pageToken != null && message.hasOwnProperty("pageToken")) + object.pageToken = message.pageToken; + if (message.filter != null && message.hasOwnProperty("filter")) + object.filter = message.filter; + if (message.orderBy != null && message.hasOwnProperty("orderBy")) + object.orderBy = message.orderBy; return object; }; /** - * Converts this DeleteMembershipRequest to JSON. + * Converts this ListMembershipsRequest to JSON. * @function toJSON - * @memberof google.cloud.gkehub.v1beta1.DeleteMembershipRequest + * @memberof google.cloud.gkehub.v1alpha2.ListMembershipsRequest * @instance * @returns {Object.} JSON object */ - DeleteMembershipRequest.prototype.toJSON = function toJSON() { + ListMembershipsRequest.prototype.toJSON = function toJSON() { return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; - return DeleteMembershipRequest; + return ListMembershipsRequest; })(); - v1beta1.UpdateMembershipRequest = (function() { + v1alpha2.ListMembershipsResponse = (function() { /** - * Properties of an UpdateMembershipRequest. - * @memberof google.cloud.gkehub.v1beta1 - * @interface IUpdateMembershipRequest - * @property {string|null} [name] UpdateMembershipRequest name - * @property {google.protobuf.IFieldMask|null} [updateMask] UpdateMembershipRequest updateMask - * @property {google.cloud.gkehub.v1beta1.IMembership|null} [resource] UpdateMembershipRequest resource + * Properties of a ListMembershipsResponse. + * @memberof google.cloud.gkehub.v1alpha2 + * @interface IListMembershipsResponse + * @property {Array.|null} [resources] ListMembershipsResponse resources + * @property {string|null} [nextPageToken] ListMembershipsResponse nextPageToken + * @property {Array.|null} [unreachable] ListMembershipsResponse unreachable */ /** - * Constructs a new UpdateMembershipRequest. - * @memberof google.cloud.gkehub.v1beta1 - * @classdesc Represents an UpdateMembershipRequest. - * @implements IUpdateMembershipRequest + * Constructs a new ListMembershipsResponse. + * @memberof google.cloud.gkehub.v1alpha2 + * @classdesc Represents a ListMembershipsResponse. + * @implements IListMembershipsResponse * @constructor - * @param {google.cloud.gkehub.v1beta1.IUpdateMembershipRequest=} [properties] Properties to set + * @param {google.cloud.gkehub.v1alpha2.IListMembershipsResponse=} [properties] Properties to set */ - function UpdateMembershipRequest(properties) { + function ListMembershipsResponse(properties) { + this.resources = []; + this.unreachable = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) if (properties[keys[i]] != null) @@ -4141,101 +47103,107 @@ } /** - * UpdateMembershipRequest name. - * @member {string} name - * @memberof google.cloud.gkehub.v1beta1.UpdateMembershipRequest + * ListMembershipsResponse resources. + * @member {Array.} resources + * @memberof google.cloud.gkehub.v1alpha2.ListMembershipsResponse * @instance */ - UpdateMembershipRequest.prototype.name = ""; + ListMembershipsResponse.prototype.resources = $util.emptyArray; /** - * UpdateMembershipRequest updateMask. - * @member {google.protobuf.IFieldMask|null|undefined} updateMask - * @memberof google.cloud.gkehub.v1beta1.UpdateMembershipRequest + * ListMembershipsResponse nextPageToken. + * @member {string} nextPageToken + * @memberof google.cloud.gkehub.v1alpha2.ListMembershipsResponse * @instance */ - UpdateMembershipRequest.prototype.updateMask = null; + ListMembershipsResponse.prototype.nextPageToken = ""; /** - * UpdateMembershipRequest resource. - * @member {google.cloud.gkehub.v1beta1.IMembership|null|undefined} resource - * @memberof google.cloud.gkehub.v1beta1.UpdateMembershipRequest + * ListMembershipsResponse unreachable. + * @member {Array.} unreachable + * @memberof google.cloud.gkehub.v1alpha2.ListMembershipsResponse * @instance */ - UpdateMembershipRequest.prototype.resource = null; + ListMembershipsResponse.prototype.unreachable = $util.emptyArray; /** - * Creates a new UpdateMembershipRequest instance using the specified properties. + * Creates a new ListMembershipsResponse instance using the specified properties. * @function create - * @memberof google.cloud.gkehub.v1beta1.UpdateMembershipRequest + * @memberof google.cloud.gkehub.v1alpha2.ListMembershipsResponse * @static - * @param {google.cloud.gkehub.v1beta1.IUpdateMembershipRequest=} [properties] Properties to set - * @returns {google.cloud.gkehub.v1beta1.UpdateMembershipRequest} UpdateMembershipRequest instance + * @param {google.cloud.gkehub.v1alpha2.IListMembershipsResponse=} [properties] Properties to set + * @returns {google.cloud.gkehub.v1alpha2.ListMembershipsResponse} ListMembershipsResponse instance */ - UpdateMembershipRequest.create = function create(properties) { - return new UpdateMembershipRequest(properties); + ListMembershipsResponse.create = function create(properties) { + return new ListMembershipsResponse(properties); }; /** - * Encodes the specified UpdateMembershipRequest message. Does not implicitly {@link google.cloud.gkehub.v1beta1.UpdateMembershipRequest.verify|verify} messages. + * Encodes the specified ListMembershipsResponse message. Does not implicitly {@link google.cloud.gkehub.v1alpha2.ListMembershipsResponse.verify|verify} messages. * @function encode - * @memberof google.cloud.gkehub.v1beta1.UpdateMembershipRequest + * @memberof google.cloud.gkehub.v1alpha2.ListMembershipsResponse * @static - * @param {google.cloud.gkehub.v1beta1.IUpdateMembershipRequest} message UpdateMembershipRequest message or plain object to encode + * @param {google.cloud.gkehub.v1alpha2.IListMembershipsResponse} message ListMembershipsResponse message or plain object to encode * @param {$protobuf.Writer} [writer] Writer to encode to * @returns {$protobuf.Writer} Writer */ - UpdateMembershipRequest.encode = function encode(message, writer) { + ListMembershipsResponse.encode = function encode(message, writer) { if (!writer) writer = $Writer.create(); - if (message.name != null && Object.hasOwnProperty.call(message, "name")) - writer.uint32(/* id 1, wireType 2 =*/10).string(message.name); - if (message.updateMask != null && Object.hasOwnProperty.call(message, "updateMask")) - $root.google.protobuf.FieldMask.encode(message.updateMask, writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim(); - if (message.resource != null && Object.hasOwnProperty.call(message, "resource")) - $root.google.cloud.gkehub.v1beta1.Membership.encode(message.resource, writer.uint32(/* id 3, wireType 2 =*/26).fork()).ldelim(); + if (message.resources != null && message.resources.length) + for (var i = 0; i < message.resources.length; ++i) + $root.google.cloud.gkehub.v1alpha2.Membership.encode(message.resources[i], writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim(); + if (message.nextPageToken != null && Object.hasOwnProperty.call(message, "nextPageToken")) + writer.uint32(/* id 2, wireType 2 =*/18).string(message.nextPageToken); + if (message.unreachable != null && message.unreachable.length) + for (var i = 0; i < message.unreachable.length; ++i) + writer.uint32(/* id 3, wireType 2 =*/26).string(message.unreachable[i]); return writer; }; /** - * Encodes the specified UpdateMembershipRequest message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta1.UpdateMembershipRequest.verify|verify} messages. + * Encodes the specified ListMembershipsResponse message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1alpha2.ListMembershipsResponse.verify|verify} messages. * @function encodeDelimited - * @memberof google.cloud.gkehub.v1beta1.UpdateMembershipRequest + * @memberof google.cloud.gkehub.v1alpha2.ListMembershipsResponse * @static - * @param {google.cloud.gkehub.v1beta1.IUpdateMembershipRequest} message UpdateMembershipRequest message or plain object to encode + * @param {google.cloud.gkehub.v1alpha2.IListMembershipsResponse} message ListMembershipsResponse message or plain object to encode * @param {$protobuf.Writer} [writer] Writer to encode to * @returns {$protobuf.Writer} Writer */ - UpdateMembershipRequest.encodeDelimited = function encodeDelimited(message, writer) { + ListMembershipsResponse.encodeDelimited = function encodeDelimited(message, writer) { return this.encode(message, writer).ldelim(); }; /** - * Decodes an UpdateMembershipRequest message from the specified reader or buffer. + * Decodes a ListMembershipsResponse message from the specified reader or buffer. * @function decode - * @memberof google.cloud.gkehub.v1beta1.UpdateMembershipRequest + * @memberof google.cloud.gkehub.v1alpha2.ListMembershipsResponse * @static * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from * @param {number} [length] Message length if known beforehand - * @returns {google.cloud.gkehub.v1beta1.UpdateMembershipRequest} UpdateMembershipRequest + * @returns {google.cloud.gkehub.v1alpha2.ListMembershipsResponse} ListMembershipsResponse * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - UpdateMembershipRequest.decode = function decode(reader, length) { + ListMembershipsResponse.decode = function decode(reader, length) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); - var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.v1beta1.UpdateMembershipRequest(); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.v1alpha2.ListMembershipsResponse(); while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { case 1: - message.name = reader.string(); + if (!(message.resources && message.resources.length)) + message.resources = []; + message.resources.push($root.google.cloud.gkehub.v1alpha2.Membership.decode(reader, reader.uint32())); break; case 2: - message.updateMask = $root.google.protobuf.FieldMask.decode(reader, reader.uint32()); + message.nextPageToken = reader.string(); break; case 3: - message.resource = $root.google.cloud.gkehub.v1beta1.Membership.decode(reader, reader.uint32()); + if (!(message.unreachable && message.unreachable.length)) + message.unreachable = []; + message.unreachable.push(reader.string()); break; default: reader.skipType(tag & 7); @@ -4246,139 +47214,154 @@ }; /** - * Decodes an UpdateMembershipRequest message from the specified reader or buffer, length delimited. + * Decodes a ListMembershipsResponse message from the specified reader or buffer, length delimited. * @function decodeDelimited - * @memberof google.cloud.gkehub.v1beta1.UpdateMembershipRequest + * @memberof google.cloud.gkehub.v1alpha2.ListMembershipsResponse * @static * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {google.cloud.gkehub.v1beta1.UpdateMembershipRequest} UpdateMembershipRequest + * @returns {google.cloud.gkehub.v1alpha2.ListMembershipsResponse} ListMembershipsResponse * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - UpdateMembershipRequest.decodeDelimited = function decodeDelimited(reader) { + ListMembershipsResponse.decodeDelimited = function decodeDelimited(reader) { if (!(reader instanceof $Reader)) reader = new $Reader(reader); return this.decode(reader, reader.uint32()); }; /** - * Verifies an UpdateMembershipRequest message. + * Verifies a ListMembershipsResponse message. * @function verify - * @memberof google.cloud.gkehub.v1beta1.UpdateMembershipRequest + * @memberof google.cloud.gkehub.v1alpha2.ListMembershipsResponse * @static * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - UpdateMembershipRequest.verify = function verify(message) { + ListMembershipsResponse.verify = function verify(message) { if (typeof message !== "object" || message === null) return "object expected"; - if (message.name != null && message.hasOwnProperty("name")) - if (!$util.isString(message.name)) - return "name: string expected"; - if (message.updateMask != null && message.hasOwnProperty("updateMask")) { - var error = $root.google.protobuf.FieldMask.verify(message.updateMask); - if (error) - return "updateMask." + error; + if (message.resources != null && message.hasOwnProperty("resources")) { + if (!Array.isArray(message.resources)) + return "resources: array expected"; + for (var i = 0; i < message.resources.length; ++i) { + var error = $root.google.cloud.gkehub.v1alpha2.Membership.verify(message.resources[i]); + if (error) + return "resources." + error; + } } - if (message.resource != null && message.hasOwnProperty("resource")) { - var error = $root.google.cloud.gkehub.v1beta1.Membership.verify(message.resource); - if (error) - return "resource." + error; + if (message.nextPageToken != null && message.hasOwnProperty("nextPageToken")) + if (!$util.isString(message.nextPageToken)) + return "nextPageToken: string expected"; + if (message.unreachable != null && message.hasOwnProperty("unreachable")) { + if (!Array.isArray(message.unreachable)) + return "unreachable: array expected"; + for (var i = 0; i < message.unreachable.length; ++i) + if (!$util.isString(message.unreachable[i])) + return "unreachable: string[] expected"; } return null; }; /** - * Creates an UpdateMembershipRequest message from a plain object. Also converts values to their respective internal types. + * Creates a ListMembershipsResponse message from a plain object. Also converts values to their respective internal types. * @function fromObject - * @memberof google.cloud.gkehub.v1beta1.UpdateMembershipRequest + * @memberof google.cloud.gkehub.v1alpha2.ListMembershipsResponse * @static * @param {Object.} object Plain object - * @returns {google.cloud.gkehub.v1beta1.UpdateMembershipRequest} UpdateMembershipRequest + * @returns {google.cloud.gkehub.v1alpha2.ListMembershipsResponse} ListMembershipsResponse */ - UpdateMembershipRequest.fromObject = function fromObject(object) { - if (object instanceof $root.google.cloud.gkehub.v1beta1.UpdateMembershipRequest) + ListMembershipsResponse.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.v1alpha2.ListMembershipsResponse) return object; - var message = new $root.google.cloud.gkehub.v1beta1.UpdateMembershipRequest(); - if (object.name != null) - message.name = String(object.name); - if (object.updateMask != null) { - if (typeof object.updateMask !== "object") - throw TypeError(".google.cloud.gkehub.v1beta1.UpdateMembershipRequest.updateMask: object expected"); - message.updateMask = $root.google.protobuf.FieldMask.fromObject(object.updateMask); + var message = new $root.google.cloud.gkehub.v1alpha2.ListMembershipsResponse(); + if (object.resources) { + if (!Array.isArray(object.resources)) + throw TypeError(".google.cloud.gkehub.v1alpha2.ListMembershipsResponse.resources: array expected"); + message.resources = []; + for (var i = 0; i < object.resources.length; ++i) { + if (typeof object.resources[i] !== "object") + throw TypeError(".google.cloud.gkehub.v1alpha2.ListMembershipsResponse.resources: object expected"); + message.resources[i] = $root.google.cloud.gkehub.v1alpha2.Membership.fromObject(object.resources[i]); + } } - if (object.resource != null) { - if (typeof object.resource !== "object") - throw TypeError(".google.cloud.gkehub.v1beta1.UpdateMembershipRequest.resource: object expected"); - message.resource = $root.google.cloud.gkehub.v1beta1.Membership.fromObject(object.resource); + if (object.nextPageToken != null) + message.nextPageToken = String(object.nextPageToken); + if (object.unreachable) { + if (!Array.isArray(object.unreachable)) + throw TypeError(".google.cloud.gkehub.v1alpha2.ListMembershipsResponse.unreachable: array expected"); + message.unreachable = []; + for (var i = 0; i < object.unreachable.length; ++i) + message.unreachable[i] = String(object.unreachable[i]); } return message; }; /** - * Creates a plain object from an UpdateMembershipRequest message. Also converts values to other types if specified. + * Creates a plain object from a ListMembershipsResponse message. Also converts values to other types if specified. * @function toObject - * @memberof google.cloud.gkehub.v1beta1.UpdateMembershipRequest + * @memberof google.cloud.gkehub.v1alpha2.ListMembershipsResponse * @static - * @param {google.cloud.gkehub.v1beta1.UpdateMembershipRequest} message UpdateMembershipRequest + * @param {google.cloud.gkehub.v1alpha2.ListMembershipsResponse} message ListMembershipsResponse * @param {$protobuf.IConversionOptions} [options] Conversion options * @returns {Object.} Plain object */ - UpdateMembershipRequest.toObject = function toObject(message, options) { + ListMembershipsResponse.toObject = function toObject(message, options) { if (!options) options = {}; var object = {}; - if (options.defaults) { - object.name = ""; - object.updateMask = null; - object.resource = null; + if (options.arrays || options.defaults) { + object.resources = []; + object.unreachable = []; + } + if (options.defaults) + object.nextPageToken = ""; + if (message.resources && message.resources.length) { + object.resources = []; + for (var j = 0; j < message.resources.length; ++j) + object.resources[j] = $root.google.cloud.gkehub.v1alpha2.Membership.toObject(message.resources[j], options); + } + if (message.nextPageToken != null && message.hasOwnProperty("nextPageToken")) + object.nextPageToken = message.nextPageToken; + if (message.unreachable && message.unreachable.length) { + object.unreachable = []; + for (var j = 0; j < message.unreachable.length; ++j) + object.unreachable[j] = message.unreachable[j]; } - if (message.name != null && message.hasOwnProperty("name")) - object.name = message.name; - if (message.updateMask != null && message.hasOwnProperty("updateMask")) - object.updateMask = $root.google.protobuf.FieldMask.toObject(message.updateMask, options); - if (message.resource != null && message.hasOwnProperty("resource")) - object.resource = $root.google.cloud.gkehub.v1beta1.Membership.toObject(message.resource, options); return object; }; /** - * Converts this UpdateMembershipRequest to JSON. + * Converts this ListMembershipsResponse to JSON. * @function toJSON - * @memberof google.cloud.gkehub.v1beta1.UpdateMembershipRequest + * @memberof google.cloud.gkehub.v1alpha2.ListMembershipsResponse * @instance * @returns {Object.} JSON object */ - UpdateMembershipRequest.prototype.toJSON = function toJSON() { + ListMembershipsResponse.prototype.toJSON = function toJSON() { return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; - return UpdateMembershipRequest; + return ListMembershipsResponse; })(); - v1beta1.GenerateConnectManifestRequest = (function() { + v1alpha2.GetMembershipRequest = (function() { /** - * Properties of a GenerateConnectManifestRequest. - * @memberof google.cloud.gkehub.v1beta1 - * @interface IGenerateConnectManifestRequest - * @property {string|null} [name] GenerateConnectManifestRequest name - * @property {google.cloud.gkehub.v1beta1.IConnectAgent|null} [connectAgent] GenerateConnectManifestRequest connectAgent - * @property {string|null} [version] GenerateConnectManifestRequest version - * @property {boolean|null} [isUpgrade] GenerateConnectManifestRequest isUpgrade - * @property {string|null} [registry] GenerateConnectManifestRequest registry - * @property {Uint8Array|null} [imagePullSecretContent] GenerateConnectManifestRequest imagePullSecretContent + * Properties of a GetMembershipRequest. + * @memberof google.cloud.gkehub.v1alpha2 + * @interface IGetMembershipRequest + * @property {string|null} [name] GetMembershipRequest name */ /** - * Constructs a new GenerateConnectManifestRequest. - * @memberof google.cloud.gkehub.v1beta1 - * @classdesc Represents a GenerateConnectManifestRequest. - * @implements IGenerateConnectManifestRequest + * Constructs a new GetMembershipRequest. + * @memberof google.cloud.gkehub.v1alpha2 + * @classdesc Represents a GetMembershipRequest. + * @implements IGetMembershipRequest * @constructor - * @param {google.cloud.gkehub.v1beta1.IGenerateConnectManifestRequest=} [properties] Properties to set + * @param {google.cloud.gkehub.v1alpha2.IGetMembershipRequest=} [properties] Properties to set */ - function GenerateConnectManifestRequest(properties) { + function GetMembershipRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) if (properties[keys[i]] != null) @@ -4386,141 +47369,76 @@ } /** - * GenerateConnectManifestRequest name. + * GetMembershipRequest name. * @member {string} name - * @memberof google.cloud.gkehub.v1beta1.GenerateConnectManifestRequest - * @instance - */ - GenerateConnectManifestRequest.prototype.name = ""; - - /** - * GenerateConnectManifestRequest connectAgent. - * @member {google.cloud.gkehub.v1beta1.IConnectAgent|null|undefined} connectAgent - * @memberof google.cloud.gkehub.v1beta1.GenerateConnectManifestRequest - * @instance - */ - GenerateConnectManifestRequest.prototype.connectAgent = null; - - /** - * GenerateConnectManifestRequest version. - * @member {string} version - * @memberof google.cloud.gkehub.v1beta1.GenerateConnectManifestRequest - * @instance - */ - GenerateConnectManifestRequest.prototype.version = ""; - - /** - * GenerateConnectManifestRequest isUpgrade. - * @member {boolean} isUpgrade - * @memberof google.cloud.gkehub.v1beta1.GenerateConnectManifestRequest - * @instance - */ - GenerateConnectManifestRequest.prototype.isUpgrade = false; - - /** - * GenerateConnectManifestRequest registry. - * @member {string} registry - * @memberof google.cloud.gkehub.v1beta1.GenerateConnectManifestRequest - * @instance - */ - GenerateConnectManifestRequest.prototype.registry = ""; - - /** - * GenerateConnectManifestRequest imagePullSecretContent. - * @member {Uint8Array} imagePullSecretContent - * @memberof google.cloud.gkehub.v1beta1.GenerateConnectManifestRequest + * @memberof google.cloud.gkehub.v1alpha2.GetMembershipRequest * @instance */ - GenerateConnectManifestRequest.prototype.imagePullSecretContent = $util.newBuffer([]); + GetMembershipRequest.prototype.name = ""; /** - * Creates a new GenerateConnectManifestRequest instance using the specified properties. + * Creates a new GetMembershipRequest instance using the specified properties. * @function create - * @memberof google.cloud.gkehub.v1beta1.GenerateConnectManifestRequest + * @memberof google.cloud.gkehub.v1alpha2.GetMembershipRequest * @static - * @param {google.cloud.gkehub.v1beta1.IGenerateConnectManifestRequest=} [properties] Properties to set - * @returns {google.cloud.gkehub.v1beta1.GenerateConnectManifestRequest} GenerateConnectManifestRequest instance + * @param {google.cloud.gkehub.v1alpha2.IGetMembershipRequest=} [properties] Properties to set + * @returns {google.cloud.gkehub.v1alpha2.GetMembershipRequest} GetMembershipRequest instance */ - GenerateConnectManifestRequest.create = function create(properties) { - return new GenerateConnectManifestRequest(properties); + GetMembershipRequest.create = function create(properties) { + return new GetMembershipRequest(properties); }; /** - * Encodes the specified GenerateConnectManifestRequest message. Does not implicitly {@link google.cloud.gkehub.v1beta1.GenerateConnectManifestRequest.verify|verify} messages. + * Encodes the specified GetMembershipRequest message. Does not implicitly {@link google.cloud.gkehub.v1alpha2.GetMembershipRequest.verify|verify} messages. * @function encode - * @memberof google.cloud.gkehub.v1beta1.GenerateConnectManifestRequest + * @memberof google.cloud.gkehub.v1alpha2.GetMembershipRequest * @static - * @param {google.cloud.gkehub.v1beta1.IGenerateConnectManifestRequest} message GenerateConnectManifestRequest message or plain object to encode + * @param {google.cloud.gkehub.v1alpha2.IGetMembershipRequest} message GetMembershipRequest message or plain object to encode * @param {$protobuf.Writer} [writer] Writer to encode to * @returns {$protobuf.Writer} Writer */ - GenerateConnectManifestRequest.encode = function encode(message, writer) { + GetMembershipRequest.encode = function encode(message, writer) { if (!writer) writer = $Writer.create(); if (message.name != null && Object.hasOwnProperty.call(message, "name")) writer.uint32(/* id 1, wireType 2 =*/10).string(message.name); - if (message.connectAgent != null && Object.hasOwnProperty.call(message, "connectAgent")) - $root.google.cloud.gkehub.v1beta1.ConnectAgent.encode(message.connectAgent, writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim(); - if (message.version != null && Object.hasOwnProperty.call(message, "version")) - writer.uint32(/* id 3, wireType 2 =*/26).string(message.version); - if (message.isUpgrade != null && Object.hasOwnProperty.call(message, "isUpgrade")) - writer.uint32(/* id 4, wireType 0 =*/32).bool(message.isUpgrade); - if (message.registry != null && Object.hasOwnProperty.call(message, "registry")) - writer.uint32(/* id 5, wireType 2 =*/42).string(message.registry); - if (message.imagePullSecretContent != null && Object.hasOwnProperty.call(message, "imagePullSecretContent")) - writer.uint32(/* id 6, wireType 2 =*/50).bytes(message.imagePullSecretContent); return writer; }; /** - * Encodes the specified GenerateConnectManifestRequest message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta1.GenerateConnectManifestRequest.verify|verify} messages. + * Encodes the specified GetMembershipRequest message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1alpha2.GetMembershipRequest.verify|verify} messages. * @function encodeDelimited - * @memberof google.cloud.gkehub.v1beta1.GenerateConnectManifestRequest + * @memberof google.cloud.gkehub.v1alpha2.GetMembershipRequest * @static - * @param {google.cloud.gkehub.v1beta1.IGenerateConnectManifestRequest} message GenerateConnectManifestRequest message or plain object to encode + * @param {google.cloud.gkehub.v1alpha2.IGetMembershipRequest} message GetMembershipRequest message or plain object to encode * @param {$protobuf.Writer} [writer] Writer to encode to * @returns {$protobuf.Writer} Writer */ - GenerateConnectManifestRequest.encodeDelimited = function encodeDelimited(message, writer) { + GetMembershipRequest.encodeDelimited = function encodeDelimited(message, writer) { return this.encode(message, writer).ldelim(); }; /** - * Decodes a GenerateConnectManifestRequest message from the specified reader or buffer. + * Decodes a GetMembershipRequest message from the specified reader or buffer. * @function decode - * @memberof google.cloud.gkehub.v1beta1.GenerateConnectManifestRequest + * @memberof google.cloud.gkehub.v1alpha2.GetMembershipRequest * @static * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from * @param {number} [length] Message length if known beforehand - * @returns {google.cloud.gkehub.v1beta1.GenerateConnectManifestRequest} GenerateConnectManifestRequest + * @returns {google.cloud.gkehub.v1alpha2.GetMembershipRequest} GetMembershipRequest * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - GenerateConnectManifestRequest.decode = function decode(reader, length) { + GetMembershipRequest.decode = function decode(reader, length) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); - var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.v1beta1.GenerateConnectManifestRequest(); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.v1alpha2.GetMembershipRequest(); while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { case 1: message.name = reader.string(); break; - case 2: - message.connectAgent = $root.google.cloud.gkehub.v1beta1.ConnectAgent.decode(reader, reader.uint32()); - break; - case 3: - message.version = reader.string(); - break; - case 4: - message.isUpgrade = reader.bool(); - break; - case 5: - message.registry = reader.string(); - break; - case 6: - message.imagePullSecretContent = reader.bytes(); - break; default: reader.skipType(tag & 7); break; @@ -4530,163 +47448,109 @@ }; /** - * Decodes a GenerateConnectManifestRequest message from the specified reader or buffer, length delimited. + * Decodes a GetMembershipRequest message from the specified reader or buffer, length delimited. * @function decodeDelimited - * @memberof google.cloud.gkehub.v1beta1.GenerateConnectManifestRequest + * @memberof google.cloud.gkehub.v1alpha2.GetMembershipRequest * @static * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {google.cloud.gkehub.v1beta1.GenerateConnectManifestRequest} GenerateConnectManifestRequest + * @returns {google.cloud.gkehub.v1alpha2.GetMembershipRequest} GetMembershipRequest * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - GenerateConnectManifestRequest.decodeDelimited = function decodeDelimited(reader) { + GetMembershipRequest.decodeDelimited = function decodeDelimited(reader) { if (!(reader instanceof $Reader)) reader = new $Reader(reader); return this.decode(reader, reader.uint32()); }; /** - * Verifies a GenerateConnectManifestRequest message. + * Verifies a GetMembershipRequest message. * @function verify - * @memberof google.cloud.gkehub.v1beta1.GenerateConnectManifestRequest + * @memberof google.cloud.gkehub.v1alpha2.GetMembershipRequest * @static * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - GenerateConnectManifestRequest.verify = function verify(message) { + GetMembershipRequest.verify = function verify(message) { if (typeof message !== "object" || message === null) return "object expected"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; - if (message.connectAgent != null && message.hasOwnProperty("connectAgent")) { - var error = $root.google.cloud.gkehub.v1beta1.ConnectAgent.verify(message.connectAgent); - if (error) - return "connectAgent." + error; - } - if (message.version != null && message.hasOwnProperty("version")) - if (!$util.isString(message.version)) - return "version: string expected"; - if (message.isUpgrade != null && message.hasOwnProperty("isUpgrade")) - if (typeof message.isUpgrade !== "boolean") - return "isUpgrade: boolean expected"; - if (message.registry != null && message.hasOwnProperty("registry")) - if (!$util.isString(message.registry)) - return "registry: string expected"; - if (message.imagePullSecretContent != null && message.hasOwnProperty("imagePullSecretContent")) - if (!(message.imagePullSecretContent && typeof message.imagePullSecretContent.length === "number" || $util.isString(message.imagePullSecretContent))) - return "imagePullSecretContent: buffer expected"; return null; }; /** - * Creates a GenerateConnectManifestRequest message from a plain object. Also converts values to their respective internal types. + * Creates a GetMembershipRequest message from a plain object. Also converts values to their respective internal types. * @function fromObject - * @memberof google.cloud.gkehub.v1beta1.GenerateConnectManifestRequest + * @memberof google.cloud.gkehub.v1alpha2.GetMembershipRequest * @static * @param {Object.} object Plain object - * @returns {google.cloud.gkehub.v1beta1.GenerateConnectManifestRequest} GenerateConnectManifestRequest + * @returns {google.cloud.gkehub.v1alpha2.GetMembershipRequest} GetMembershipRequest */ - GenerateConnectManifestRequest.fromObject = function fromObject(object) { - if (object instanceof $root.google.cloud.gkehub.v1beta1.GenerateConnectManifestRequest) + GetMembershipRequest.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.v1alpha2.GetMembershipRequest) return object; - var message = new $root.google.cloud.gkehub.v1beta1.GenerateConnectManifestRequest(); + var message = new $root.google.cloud.gkehub.v1alpha2.GetMembershipRequest(); if (object.name != null) message.name = String(object.name); - if (object.connectAgent != null) { - if (typeof object.connectAgent !== "object") - throw TypeError(".google.cloud.gkehub.v1beta1.GenerateConnectManifestRequest.connectAgent: object expected"); - message.connectAgent = $root.google.cloud.gkehub.v1beta1.ConnectAgent.fromObject(object.connectAgent); - } - if (object.version != null) - message.version = String(object.version); - if (object.isUpgrade != null) - message.isUpgrade = Boolean(object.isUpgrade); - if (object.registry != null) - message.registry = String(object.registry); - if (object.imagePullSecretContent != null) - if (typeof object.imagePullSecretContent === "string") - $util.base64.decode(object.imagePullSecretContent, message.imagePullSecretContent = $util.newBuffer($util.base64.length(object.imagePullSecretContent)), 0); - else if (object.imagePullSecretContent.length) - message.imagePullSecretContent = object.imagePullSecretContent; return message; }; /** - * Creates a plain object from a GenerateConnectManifestRequest message. Also converts values to other types if specified. + * Creates a plain object from a GetMembershipRequest message. Also converts values to other types if specified. * @function toObject - * @memberof google.cloud.gkehub.v1beta1.GenerateConnectManifestRequest + * @memberof google.cloud.gkehub.v1alpha2.GetMembershipRequest * @static - * @param {google.cloud.gkehub.v1beta1.GenerateConnectManifestRequest} message GenerateConnectManifestRequest + * @param {google.cloud.gkehub.v1alpha2.GetMembershipRequest} message GetMembershipRequest * @param {$protobuf.IConversionOptions} [options] Conversion options * @returns {Object.} Plain object */ - GenerateConnectManifestRequest.toObject = function toObject(message, options) { + GetMembershipRequest.toObject = function toObject(message, options) { if (!options) options = {}; var object = {}; - if (options.defaults) { + if (options.defaults) object.name = ""; - object.connectAgent = null; - object.version = ""; - object.isUpgrade = false; - object.registry = ""; - if (options.bytes === String) - object.imagePullSecretContent = ""; - else { - object.imagePullSecretContent = []; - if (options.bytes !== Array) - object.imagePullSecretContent = $util.newBuffer(object.imagePullSecretContent); - } - } if (message.name != null && message.hasOwnProperty("name")) object.name = message.name; - if (message.connectAgent != null && message.hasOwnProperty("connectAgent")) - object.connectAgent = $root.google.cloud.gkehub.v1beta1.ConnectAgent.toObject(message.connectAgent, options); - if (message.version != null && message.hasOwnProperty("version")) - object.version = message.version; - if (message.isUpgrade != null && message.hasOwnProperty("isUpgrade")) - object.isUpgrade = message.isUpgrade; - if (message.registry != null && message.hasOwnProperty("registry")) - object.registry = message.registry; - if (message.imagePullSecretContent != null && message.hasOwnProperty("imagePullSecretContent")) - object.imagePullSecretContent = options.bytes === String ? $util.base64.encode(message.imagePullSecretContent, 0, message.imagePullSecretContent.length) : options.bytes === Array ? Array.prototype.slice.call(message.imagePullSecretContent) : message.imagePullSecretContent; return object; }; /** - * Converts this GenerateConnectManifestRequest to JSON. + * Converts this GetMembershipRequest to JSON. * @function toJSON - * @memberof google.cloud.gkehub.v1beta1.GenerateConnectManifestRequest + * @memberof google.cloud.gkehub.v1alpha2.GetMembershipRequest * @instance * @returns {Object.} JSON object */ - GenerateConnectManifestRequest.prototype.toJSON = function toJSON() { + GetMembershipRequest.prototype.toJSON = function toJSON() { return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; - return GenerateConnectManifestRequest; + return GetMembershipRequest; })(); - v1beta1.GenerateConnectManifestResponse = (function() { + v1alpha2.CreateMembershipRequest = (function() { /** - * Properties of a GenerateConnectManifestResponse. - * @memberof google.cloud.gkehub.v1beta1 - * @interface IGenerateConnectManifestResponse - * @property {Array.|null} [manifest] GenerateConnectManifestResponse manifest + * Properties of a CreateMembershipRequest. + * @memberof google.cloud.gkehub.v1alpha2 + * @interface ICreateMembershipRequest + * @property {string|null} [parent] CreateMembershipRequest parent + * @property {string|null} [membershipId] CreateMembershipRequest membershipId + * @property {google.cloud.gkehub.v1alpha2.IMembership|null} [resource] CreateMembershipRequest resource */ /** - * Constructs a new GenerateConnectManifestResponse. - * @memberof google.cloud.gkehub.v1beta1 - * @classdesc Represents a GenerateConnectManifestResponse. - * @implements IGenerateConnectManifestResponse + * Constructs a new CreateMembershipRequest. + * @memberof google.cloud.gkehub.v1alpha2 + * @classdesc Represents a CreateMembershipRequest. + * @implements ICreateMembershipRequest * @constructor - * @param {google.cloud.gkehub.v1beta1.IGenerateConnectManifestResponse=} [properties] Properties to set + * @param {google.cloud.gkehub.v1alpha2.ICreateMembershipRequest=} [properties] Properties to set */ - function GenerateConnectManifestResponse(properties) { - this.manifest = []; + function CreateMembershipRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) if (properties[keys[i]] != null) @@ -4694,78 +47558,101 @@ } /** - * GenerateConnectManifestResponse manifest. - * @member {Array.} manifest - * @memberof google.cloud.gkehub.v1beta1.GenerateConnectManifestResponse + * CreateMembershipRequest parent. + * @member {string} parent + * @memberof google.cloud.gkehub.v1alpha2.CreateMembershipRequest * @instance */ - GenerateConnectManifestResponse.prototype.manifest = $util.emptyArray; + CreateMembershipRequest.prototype.parent = ""; /** - * Creates a new GenerateConnectManifestResponse instance using the specified properties. + * CreateMembershipRequest membershipId. + * @member {string} membershipId + * @memberof google.cloud.gkehub.v1alpha2.CreateMembershipRequest + * @instance + */ + CreateMembershipRequest.prototype.membershipId = ""; + + /** + * CreateMembershipRequest resource. + * @member {google.cloud.gkehub.v1alpha2.IMembership|null|undefined} resource + * @memberof google.cloud.gkehub.v1alpha2.CreateMembershipRequest + * @instance + */ + CreateMembershipRequest.prototype.resource = null; + + /** + * Creates a new CreateMembershipRequest instance using the specified properties. * @function create - * @memberof google.cloud.gkehub.v1beta1.GenerateConnectManifestResponse + * @memberof google.cloud.gkehub.v1alpha2.CreateMembershipRequest * @static - * @param {google.cloud.gkehub.v1beta1.IGenerateConnectManifestResponse=} [properties] Properties to set - * @returns {google.cloud.gkehub.v1beta1.GenerateConnectManifestResponse} GenerateConnectManifestResponse instance + * @param {google.cloud.gkehub.v1alpha2.ICreateMembershipRequest=} [properties] Properties to set + * @returns {google.cloud.gkehub.v1alpha2.CreateMembershipRequest} CreateMembershipRequest instance */ - GenerateConnectManifestResponse.create = function create(properties) { - return new GenerateConnectManifestResponse(properties); + CreateMembershipRequest.create = function create(properties) { + return new CreateMembershipRequest(properties); }; /** - * Encodes the specified GenerateConnectManifestResponse message. Does not implicitly {@link google.cloud.gkehub.v1beta1.GenerateConnectManifestResponse.verify|verify} messages. + * Encodes the specified CreateMembershipRequest message. Does not implicitly {@link google.cloud.gkehub.v1alpha2.CreateMembershipRequest.verify|verify} messages. * @function encode - * @memberof google.cloud.gkehub.v1beta1.GenerateConnectManifestResponse + * @memberof google.cloud.gkehub.v1alpha2.CreateMembershipRequest * @static - * @param {google.cloud.gkehub.v1beta1.IGenerateConnectManifestResponse} message GenerateConnectManifestResponse message or plain object to encode + * @param {google.cloud.gkehub.v1alpha2.ICreateMembershipRequest} message CreateMembershipRequest message or plain object to encode * @param {$protobuf.Writer} [writer] Writer to encode to * @returns {$protobuf.Writer} Writer */ - GenerateConnectManifestResponse.encode = function encode(message, writer) { + CreateMembershipRequest.encode = function encode(message, writer) { if (!writer) writer = $Writer.create(); - if (message.manifest != null && message.manifest.length) - for (var i = 0; i < message.manifest.length; ++i) - $root.google.cloud.gkehub.v1beta1.ConnectAgentResource.encode(message.manifest[i], writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim(); + if (message.parent != null && Object.hasOwnProperty.call(message, "parent")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.parent); + if (message.membershipId != null && Object.hasOwnProperty.call(message, "membershipId")) + writer.uint32(/* id 2, wireType 2 =*/18).string(message.membershipId); + if (message.resource != null && Object.hasOwnProperty.call(message, "resource")) + $root.google.cloud.gkehub.v1alpha2.Membership.encode(message.resource, writer.uint32(/* id 3, wireType 2 =*/26).fork()).ldelim(); return writer; }; /** - * Encodes the specified GenerateConnectManifestResponse message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta1.GenerateConnectManifestResponse.verify|verify} messages. + * Encodes the specified CreateMembershipRequest message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1alpha2.CreateMembershipRequest.verify|verify} messages. * @function encodeDelimited - * @memberof google.cloud.gkehub.v1beta1.GenerateConnectManifestResponse + * @memberof google.cloud.gkehub.v1alpha2.CreateMembershipRequest * @static - * @param {google.cloud.gkehub.v1beta1.IGenerateConnectManifestResponse} message GenerateConnectManifestResponse message or plain object to encode + * @param {google.cloud.gkehub.v1alpha2.ICreateMembershipRequest} message CreateMembershipRequest message or plain object to encode * @param {$protobuf.Writer} [writer] Writer to encode to * @returns {$protobuf.Writer} Writer */ - GenerateConnectManifestResponse.encodeDelimited = function encodeDelimited(message, writer) { + CreateMembershipRequest.encodeDelimited = function encodeDelimited(message, writer) { return this.encode(message, writer).ldelim(); }; /** - * Decodes a GenerateConnectManifestResponse message from the specified reader or buffer. + * Decodes a CreateMembershipRequest message from the specified reader or buffer. * @function decode - * @memberof google.cloud.gkehub.v1beta1.GenerateConnectManifestResponse + * @memberof google.cloud.gkehub.v1alpha2.CreateMembershipRequest * @static * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from * @param {number} [length] Message length if known beforehand - * @returns {google.cloud.gkehub.v1beta1.GenerateConnectManifestResponse} GenerateConnectManifestResponse + * @returns {google.cloud.gkehub.v1alpha2.CreateMembershipRequest} CreateMembershipRequest * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - GenerateConnectManifestResponse.decode = function decode(reader, length) { + CreateMembershipRequest.decode = function decode(reader, length) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); - var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.v1beta1.GenerateConnectManifestResponse(); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.v1alpha2.CreateMembershipRequest(); while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { case 1: - if (!(message.manifest && message.manifest.length)) - message.manifest = []; - message.manifest.push($root.google.cloud.gkehub.v1beta1.ConnectAgentResource.decode(reader, reader.uint32())); + message.parent = reader.string(); + break; + case 2: + message.membershipId = reader.string(); + break; + case 3: + message.resource = $root.google.cloud.gkehub.v1alpha2.Membership.decode(reader, reader.uint32()); break; default: reader.skipType(tag & 7); @@ -4776,125 +47663,129 @@ }; /** - * Decodes a GenerateConnectManifestResponse message from the specified reader or buffer, length delimited. + * Decodes a CreateMembershipRequest message from the specified reader or buffer, length delimited. * @function decodeDelimited - * @memberof google.cloud.gkehub.v1beta1.GenerateConnectManifestResponse + * @memberof google.cloud.gkehub.v1alpha2.CreateMembershipRequest * @static * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {google.cloud.gkehub.v1beta1.GenerateConnectManifestResponse} GenerateConnectManifestResponse + * @returns {google.cloud.gkehub.v1alpha2.CreateMembershipRequest} CreateMembershipRequest * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - GenerateConnectManifestResponse.decodeDelimited = function decodeDelimited(reader) { + CreateMembershipRequest.decodeDelimited = function decodeDelimited(reader) { if (!(reader instanceof $Reader)) reader = new $Reader(reader); return this.decode(reader, reader.uint32()); }; /** - * Verifies a GenerateConnectManifestResponse message. + * Verifies a CreateMembershipRequest message. * @function verify - * @memberof google.cloud.gkehub.v1beta1.GenerateConnectManifestResponse + * @memberof google.cloud.gkehub.v1alpha2.CreateMembershipRequest * @static * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - GenerateConnectManifestResponse.verify = function verify(message) { + CreateMembershipRequest.verify = function verify(message) { if (typeof message !== "object" || message === null) return "object expected"; - if (message.manifest != null && message.hasOwnProperty("manifest")) { - if (!Array.isArray(message.manifest)) - return "manifest: array expected"; - for (var i = 0; i < message.manifest.length; ++i) { - var error = $root.google.cloud.gkehub.v1beta1.ConnectAgentResource.verify(message.manifest[i]); - if (error) - return "manifest." + error; - } + if (message.parent != null && message.hasOwnProperty("parent")) + if (!$util.isString(message.parent)) + return "parent: string expected"; + if (message.membershipId != null && message.hasOwnProperty("membershipId")) + if (!$util.isString(message.membershipId)) + return "membershipId: string expected"; + if (message.resource != null && message.hasOwnProperty("resource")) { + var error = $root.google.cloud.gkehub.v1alpha2.Membership.verify(message.resource); + if (error) + return "resource." + error; } return null; }; /** - * Creates a GenerateConnectManifestResponse message from a plain object. Also converts values to their respective internal types. + * Creates a CreateMembershipRequest message from a plain object. Also converts values to their respective internal types. * @function fromObject - * @memberof google.cloud.gkehub.v1beta1.GenerateConnectManifestResponse + * @memberof google.cloud.gkehub.v1alpha2.CreateMembershipRequest * @static * @param {Object.} object Plain object - * @returns {google.cloud.gkehub.v1beta1.GenerateConnectManifestResponse} GenerateConnectManifestResponse + * @returns {google.cloud.gkehub.v1alpha2.CreateMembershipRequest} CreateMembershipRequest */ - GenerateConnectManifestResponse.fromObject = function fromObject(object) { - if (object instanceof $root.google.cloud.gkehub.v1beta1.GenerateConnectManifestResponse) + CreateMembershipRequest.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.v1alpha2.CreateMembershipRequest) return object; - var message = new $root.google.cloud.gkehub.v1beta1.GenerateConnectManifestResponse(); - if (object.manifest) { - if (!Array.isArray(object.manifest)) - throw TypeError(".google.cloud.gkehub.v1beta1.GenerateConnectManifestResponse.manifest: array expected"); - message.manifest = []; - for (var i = 0; i < object.manifest.length; ++i) { - if (typeof object.manifest[i] !== "object") - throw TypeError(".google.cloud.gkehub.v1beta1.GenerateConnectManifestResponse.manifest: object expected"); - message.manifest[i] = $root.google.cloud.gkehub.v1beta1.ConnectAgentResource.fromObject(object.manifest[i]); - } + var message = new $root.google.cloud.gkehub.v1alpha2.CreateMembershipRequest(); + if (object.parent != null) + message.parent = String(object.parent); + if (object.membershipId != null) + message.membershipId = String(object.membershipId); + if (object.resource != null) { + if (typeof object.resource !== "object") + throw TypeError(".google.cloud.gkehub.v1alpha2.CreateMembershipRequest.resource: object expected"); + message.resource = $root.google.cloud.gkehub.v1alpha2.Membership.fromObject(object.resource); } return message; }; /** - * Creates a plain object from a GenerateConnectManifestResponse message. Also converts values to other types if specified. + * Creates a plain object from a CreateMembershipRequest message. Also converts values to other types if specified. * @function toObject - * @memberof google.cloud.gkehub.v1beta1.GenerateConnectManifestResponse + * @memberof google.cloud.gkehub.v1alpha2.CreateMembershipRequest * @static - * @param {google.cloud.gkehub.v1beta1.GenerateConnectManifestResponse} message GenerateConnectManifestResponse + * @param {google.cloud.gkehub.v1alpha2.CreateMembershipRequest} message CreateMembershipRequest * @param {$protobuf.IConversionOptions} [options] Conversion options * @returns {Object.} Plain object */ - GenerateConnectManifestResponse.toObject = function toObject(message, options) { + CreateMembershipRequest.toObject = function toObject(message, options) { if (!options) options = {}; var object = {}; - if (options.arrays || options.defaults) - object.manifest = []; - if (message.manifest && message.manifest.length) { - object.manifest = []; - for (var j = 0; j < message.manifest.length; ++j) - object.manifest[j] = $root.google.cloud.gkehub.v1beta1.ConnectAgentResource.toObject(message.manifest[j], options); + if (options.defaults) { + object.parent = ""; + object.membershipId = ""; + object.resource = null; } + if (message.parent != null && message.hasOwnProperty("parent")) + object.parent = message.parent; + if (message.membershipId != null && message.hasOwnProperty("membershipId")) + object.membershipId = message.membershipId; + if (message.resource != null && message.hasOwnProperty("resource")) + object.resource = $root.google.cloud.gkehub.v1alpha2.Membership.toObject(message.resource, options); return object; }; /** - * Converts this GenerateConnectManifestResponse to JSON. + * Converts this CreateMembershipRequest to JSON. * @function toJSON - * @memberof google.cloud.gkehub.v1beta1.GenerateConnectManifestResponse + * @memberof google.cloud.gkehub.v1alpha2.CreateMembershipRequest * @instance * @returns {Object.} JSON object */ - GenerateConnectManifestResponse.prototype.toJSON = function toJSON() { + CreateMembershipRequest.prototype.toJSON = function toJSON() { return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; - return GenerateConnectManifestResponse; + return CreateMembershipRequest; })(); - v1beta1.ConnectAgentResource = (function() { + v1alpha2.DeleteMembershipRequest = (function() { /** - * Properties of a ConnectAgentResource. - * @memberof google.cloud.gkehub.v1beta1 - * @interface IConnectAgentResource - * @property {google.cloud.gkehub.v1beta1.ITypeMeta|null} [type] ConnectAgentResource type - * @property {string|null} [manifest] ConnectAgentResource manifest + * Properties of a DeleteMembershipRequest. + * @memberof google.cloud.gkehub.v1alpha2 + * @interface IDeleteMembershipRequest + * @property {string|null} [name] DeleteMembershipRequest name */ /** - * Constructs a new ConnectAgentResource. - * @memberof google.cloud.gkehub.v1beta1 - * @classdesc Represents a ConnectAgentResource. - * @implements IConnectAgentResource + * Constructs a new DeleteMembershipRequest. + * @memberof google.cloud.gkehub.v1alpha2 + * @classdesc Represents a DeleteMembershipRequest. + * @implements IDeleteMembershipRequest * @constructor - * @param {google.cloud.gkehub.v1beta1.IConnectAgentResource=} [properties] Properties to set + * @param {google.cloud.gkehub.v1alpha2.IDeleteMembershipRequest=} [properties] Properties to set */ - function ConnectAgentResource(properties) { + function DeleteMembershipRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) if (properties[keys[i]] != null) @@ -4902,88 +47793,75 @@ } /** - * ConnectAgentResource type. - * @member {google.cloud.gkehub.v1beta1.ITypeMeta|null|undefined} type - * @memberof google.cloud.gkehub.v1beta1.ConnectAgentResource - * @instance - */ - ConnectAgentResource.prototype.type = null; - - /** - * ConnectAgentResource manifest. - * @member {string} manifest - * @memberof google.cloud.gkehub.v1beta1.ConnectAgentResource + * DeleteMembershipRequest name. + * @member {string} name + * @memberof google.cloud.gkehub.v1alpha2.DeleteMembershipRequest * @instance */ - ConnectAgentResource.prototype.manifest = ""; + DeleteMembershipRequest.prototype.name = ""; /** - * Creates a new ConnectAgentResource instance using the specified properties. + * Creates a new DeleteMembershipRequest instance using the specified properties. * @function create - * @memberof google.cloud.gkehub.v1beta1.ConnectAgentResource + * @memberof google.cloud.gkehub.v1alpha2.DeleteMembershipRequest * @static - * @param {google.cloud.gkehub.v1beta1.IConnectAgentResource=} [properties] Properties to set - * @returns {google.cloud.gkehub.v1beta1.ConnectAgentResource} ConnectAgentResource instance + * @param {google.cloud.gkehub.v1alpha2.IDeleteMembershipRequest=} [properties] Properties to set + * @returns {google.cloud.gkehub.v1alpha2.DeleteMembershipRequest} DeleteMembershipRequest instance */ - ConnectAgentResource.create = function create(properties) { - return new ConnectAgentResource(properties); + DeleteMembershipRequest.create = function create(properties) { + return new DeleteMembershipRequest(properties); }; /** - * Encodes the specified ConnectAgentResource message. Does not implicitly {@link google.cloud.gkehub.v1beta1.ConnectAgentResource.verify|verify} messages. + * Encodes the specified DeleteMembershipRequest message. Does not implicitly {@link google.cloud.gkehub.v1alpha2.DeleteMembershipRequest.verify|verify} messages. * @function encode - * @memberof google.cloud.gkehub.v1beta1.ConnectAgentResource + * @memberof google.cloud.gkehub.v1alpha2.DeleteMembershipRequest * @static - * @param {google.cloud.gkehub.v1beta1.IConnectAgentResource} message ConnectAgentResource message or plain object to encode + * @param {google.cloud.gkehub.v1alpha2.IDeleteMembershipRequest} message DeleteMembershipRequest message or plain object to encode * @param {$protobuf.Writer} [writer] Writer to encode to * @returns {$protobuf.Writer} Writer */ - ConnectAgentResource.encode = function encode(message, writer) { + DeleteMembershipRequest.encode = function encode(message, writer) { if (!writer) writer = $Writer.create(); - if (message.type != null && Object.hasOwnProperty.call(message, "type")) - $root.google.cloud.gkehub.v1beta1.TypeMeta.encode(message.type, writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim(); - if (message.manifest != null && Object.hasOwnProperty.call(message, "manifest")) - writer.uint32(/* id 2, wireType 2 =*/18).string(message.manifest); + if (message.name != null && Object.hasOwnProperty.call(message, "name")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.name); return writer; }; /** - * Encodes the specified ConnectAgentResource message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta1.ConnectAgentResource.verify|verify} messages. + * Encodes the specified DeleteMembershipRequest message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1alpha2.DeleteMembershipRequest.verify|verify} messages. * @function encodeDelimited - * @memberof google.cloud.gkehub.v1beta1.ConnectAgentResource + * @memberof google.cloud.gkehub.v1alpha2.DeleteMembershipRequest * @static - * @param {google.cloud.gkehub.v1beta1.IConnectAgentResource} message ConnectAgentResource message or plain object to encode + * @param {google.cloud.gkehub.v1alpha2.IDeleteMembershipRequest} message DeleteMembershipRequest message or plain object to encode * @param {$protobuf.Writer} [writer] Writer to encode to * @returns {$protobuf.Writer} Writer */ - ConnectAgentResource.encodeDelimited = function encodeDelimited(message, writer) { + DeleteMembershipRequest.encodeDelimited = function encodeDelimited(message, writer) { return this.encode(message, writer).ldelim(); }; /** - * Decodes a ConnectAgentResource message from the specified reader or buffer. + * Decodes a DeleteMembershipRequest message from the specified reader or buffer. * @function decode - * @memberof google.cloud.gkehub.v1beta1.ConnectAgentResource + * @memberof google.cloud.gkehub.v1alpha2.DeleteMembershipRequest * @static * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from * @param {number} [length] Message length if known beforehand - * @returns {google.cloud.gkehub.v1beta1.ConnectAgentResource} ConnectAgentResource + * @returns {google.cloud.gkehub.v1alpha2.DeleteMembershipRequest} DeleteMembershipRequest * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ConnectAgentResource.decode = function decode(reader, length) { + DeleteMembershipRequest.decode = function decode(reader, length) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); - var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.v1beta1.ConnectAgentResource(); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.v1alpha2.DeleteMembershipRequest(); while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { case 1: - message.type = $root.google.cloud.gkehub.v1beta1.TypeMeta.decode(reader, reader.uint32()); - break; - case 2: - message.manifest = reader.string(); + message.name = reader.string(); break; default: reader.skipType(tag & 7); @@ -4994,122 +47872,109 @@ }; /** - * Decodes a ConnectAgentResource message from the specified reader or buffer, length delimited. + * Decodes a DeleteMembershipRequest message from the specified reader or buffer, length delimited. * @function decodeDelimited - * @memberof google.cloud.gkehub.v1beta1.ConnectAgentResource + * @memberof google.cloud.gkehub.v1alpha2.DeleteMembershipRequest * @static * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {google.cloud.gkehub.v1beta1.ConnectAgentResource} ConnectAgentResource + * @returns {google.cloud.gkehub.v1alpha2.DeleteMembershipRequest} DeleteMembershipRequest * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ConnectAgentResource.decodeDelimited = function decodeDelimited(reader) { + DeleteMembershipRequest.decodeDelimited = function decodeDelimited(reader) { if (!(reader instanceof $Reader)) reader = new $Reader(reader); return this.decode(reader, reader.uint32()); }; /** - * Verifies a ConnectAgentResource message. + * Verifies a DeleteMembershipRequest message. * @function verify - * @memberof google.cloud.gkehub.v1beta1.ConnectAgentResource + * @memberof google.cloud.gkehub.v1alpha2.DeleteMembershipRequest * @static * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ConnectAgentResource.verify = function verify(message) { + DeleteMembershipRequest.verify = function verify(message) { if (typeof message !== "object" || message === null) return "object expected"; - if (message.type != null && message.hasOwnProperty("type")) { - var error = $root.google.cloud.gkehub.v1beta1.TypeMeta.verify(message.type); - if (error) - return "type." + error; - } - if (message.manifest != null && message.hasOwnProperty("manifest")) - if (!$util.isString(message.manifest)) - return "manifest: string expected"; + if (message.name != null && message.hasOwnProperty("name")) + if (!$util.isString(message.name)) + return "name: string expected"; return null; }; /** - * Creates a ConnectAgentResource message from a plain object. Also converts values to their respective internal types. + * Creates a DeleteMembershipRequest message from a plain object. Also converts values to their respective internal types. * @function fromObject - * @memberof google.cloud.gkehub.v1beta1.ConnectAgentResource + * @memberof google.cloud.gkehub.v1alpha2.DeleteMembershipRequest * @static * @param {Object.} object Plain object - * @returns {google.cloud.gkehub.v1beta1.ConnectAgentResource} ConnectAgentResource + * @returns {google.cloud.gkehub.v1alpha2.DeleteMembershipRequest} DeleteMembershipRequest */ - ConnectAgentResource.fromObject = function fromObject(object) { - if (object instanceof $root.google.cloud.gkehub.v1beta1.ConnectAgentResource) + DeleteMembershipRequest.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.v1alpha2.DeleteMembershipRequest) return object; - var message = new $root.google.cloud.gkehub.v1beta1.ConnectAgentResource(); - if (object.type != null) { - if (typeof object.type !== "object") - throw TypeError(".google.cloud.gkehub.v1beta1.ConnectAgentResource.type: object expected"); - message.type = $root.google.cloud.gkehub.v1beta1.TypeMeta.fromObject(object.type); - } - if (object.manifest != null) - message.manifest = String(object.manifest); + var message = new $root.google.cloud.gkehub.v1alpha2.DeleteMembershipRequest(); + if (object.name != null) + message.name = String(object.name); return message; }; /** - * Creates a plain object from a ConnectAgentResource message. Also converts values to other types if specified. + * Creates a plain object from a DeleteMembershipRequest message. Also converts values to other types if specified. * @function toObject - * @memberof google.cloud.gkehub.v1beta1.ConnectAgentResource + * @memberof google.cloud.gkehub.v1alpha2.DeleteMembershipRequest * @static - * @param {google.cloud.gkehub.v1beta1.ConnectAgentResource} message ConnectAgentResource + * @param {google.cloud.gkehub.v1alpha2.DeleteMembershipRequest} message DeleteMembershipRequest * @param {$protobuf.IConversionOptions} [options] Conversion options * @returns {Object.} Plain object */ - ConnectAgentResource.toObject = function toObject(message, options) { + DeleteMembershipRequest.toObject = function toObject(message, options) { if (!options) options = {}; var object = {}; - if (options.defaults) { - object.type = null; - object.manifest = ""; - } - if (message.type != null && message.hasOwnProperty("type")) - object.type = $root.google.cloud.gkehub.v1beta1.TypeMeta.toObject(message.type, options); - if (message.manifest != null && message.hasOwnProperty("manifest")) - object.manifest = message.manifest; + if (options.defaults) + object.name = ""; + if (message.name != null && message.hasOwnProperty("name")) + object.name = message.name; return object; }; /** - * Converts this ConnectAgentResource to JSON. + * Converts this DeleteMembershipRequest to JSON. * @function toJSON - * @memberof google.cloud.gkehub.v1beta1.ConnectAgentResource + * @memberof google.cloud.gkehub.v1alpha2.DeleteMembershipRequest * @instance * @returns {Object.} JSON object */ - ConnectAgentResource.prototype.toJSON = function toJSON() { + DeleteMembershipRequest.prototype.toJSON = function toJSON() { return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; - return ConnectAgentResource; + return DeleteMembershipRequest; })(); - v1beta1.TypeMeta = (function() { + v1alpha2.UpdateMembershipRequest = (function() { /** - * Properties of a TypeMeta. - * @memberof google.cloud.gkehub.v1beta1 - * @interface ITypeMeta - * @property {string|null} [kind] TypeMeta kind - * @property {string|null} [apiVersion] TypeMeta apiVersion + * Properties of an UpdateMembershipRequest. + * @memberof google.cloud.gkehub.v1alpha2 + * @interface IUpdateMembershipRequest + * @property {string|null} [name] UpdateMembershipRequest name + * @property {google.protobuf.IFieldMask|null} [updateMask] UpdateMembershipRequest updateMask + * @property {google.cloud.gkehub.v1alpha2.IMembership|null} [resource] UpdateMembershipRequest resource */ /** - * Constructs a new TypeMeta. - * @memberof google.cloud.gkehub.v1beta1 - * @classdesc Represents a TypeMeta. - * @implements ITypeMeta + * Constructs a new UpdateMembershipRequest. + * @memberof google.cloud.gkehub.v1alpha2 + * @classdesc Represents an UpdateMembershipRequest. + * @implements IUpdateMembershipRequest * @constructor - * @param {google.cloud.gkehub.v1beta1.ITypeMeta=} [properties] Properties to set + * @param {google.cloud.gkehub.v1alpha2.IUpdateMembershipRequest=} [properties] Properties to set */ - function TypeMeta(properties) { + function UpdateMembershipRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) if (properties[keys[i]] != null) @@ -5117,88 +47982,101 @@ } /** - * TypeMeta kind. - * @member {string} kind - * @memberof google.cloud.gkehub.v1beta1.TypeMeta + * UpdateMembershipRequest name. + * @member {string} name + * @memberof google.cloud.gkehub.v1alpha2.UpdateMembershipRequest * @instance */ - TypeMeta.prototype.kind = ""; + UpdateMembershipRequest.prototype.name = ""; /** - * TypeMeta apiVersion. - * @member {string} apiVersion - * @memberof google.cloud.gkehub.v1beta1.TypeMeta + * UpdateMembershipRequest updateMask. + * @member {google.protobuf.IFieldMask|null|undefined} updateMask + * @memberof google.cloud.gkehub.v1alpha2.UpdateMembershipRequest * @instance */ - TypeMeta.prototype.apiVersion = ""; + UpdateMembershipRequest.prototype.updateMask = null; /** - * Creates a new TypeMeta instance using the specified properties. + * UpdateMembershipRequest resource. + * @member {google.cloud.gkehub.v1alpha2.IMembership|null|undefined} resource + * @memberof google.cloud.gkehub.v1alpha2.UpdateMembershipRequest + * @instance + */ + UpdateMembershipRequest.prototype.resource = null; + + /** + * Creates a new UpdateMembershipRequest instance using the specified properties. * @function create - * @memberof google.cloud.gkehub.v1beta1.TypeMeta + * @memberof google.cloud.gkehub.v1alpha2.UpdateMembershipRequest * @static - * @param {google.cloud.gkehub.v1beta1.ITypeMeta=} [properties] Properties to set - * @returns {google.cloud.gkehub.v1beta1.TypeMeta} TypeMeta instance + * @param {google.cloud.gkehub.v1alpha2.IUpdateMembershipRequest=} [properties] Properties to set + * @returns {google.cloud.gkehub.v1alpha2.UpdateMembershipRequest} UpdateMembershipRequest instance */ - TypeMeta.create = function create(properties) { - return new TypeMeta(properties); + UpdateMembershipRequest.create = function create(properties) { + return new UpdateMembershipRequest(properties); }; /** - * Encodes the specified TypeMeta message. Does not implicitly {@link google.cloud.gkehub.v1beta1.TypeMeta.verify|verify} messages. + * Encodes the specified UpdateMembershipRequest message. Does not implicitly {@link google.cloud.gkehub.v1alpha2.UpdateMembershipRequest.verify|verify} messages. * @function encode - * @memberof google.cloud.gkehub.v1beta1.TypeMeta + * @memberof google.cloud.gkehub.v1alpha2.UpdateMembershipRequest * @static - * @param {google.cloud.gkehub.v1beta1.ITypeMeta} message TypeMeta message or plain object to encode + * @param {google.cloud.gkehub.v1alpha2.IUpdateMembershipRequest} message UpdateMembershipRequest message or plain object to encode * @param {$protobuf.Writer} [writer] Writer to encode to * @returns {$protobuf.Writer} Writer */ - TypeMeta.encode = function encode(message, writer) { + UpdateMembershipRequest.encode = function encode(message, writer) { if (!writer) writer = $Writer.create(); - if (message.kind != null && Object.hasOwnProperty.call(message, "kind")) - writer.uint32(/* id 1, wireType 2 =*/10).string(message.kind); - if (message.apiVersion != null && Object.hasOwnProperty.call(message, "apiVersion")) - writer.uint32(/* id 2, wireType 2 =*/18).string(message.apiVersion); + if (message.name != null && Object.hasOwnProperty.call(message, "name")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.name); + if (message.updateMask != null && Object.hasOwnProperty.call(message, "updateMask")) + $root.google.protobuf.FieldMask.encode(message.updateMask, writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim(); + if (message.resource != null && Object.hasOwnProperty.call(message, "resource")) + $root.google.cloud.gkehub.v1alpha2.Membership.encode(message.resource, writer.uint32(/* id 3, wireType 2 =*/26).fork()).ldelim(); return writer; }; /** - * Encodes the specified TypeMeta message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta1.TypeMeta.verify|verify} messages. + * Encodes the specified UpdateMembershipRequest message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1alpha2.UpdateMembershipRequest.verify|verify} messages. * @function encodeDelimited - * @memberof google.cloud.gkehub.v1beta1.TypeMeta + * @memberof google.cloud.gkehub.v1alpha2.UpdateMembershipRequest * @static - * @param {google.cloud.gkehub.v1beta1.ITypeMeta} message TypeMeta message or plain object to encode + * @param {google.cloud.gkehub.v1alpha2.IUpdateMembershipRequest} message UpdateMembershipRequest message or plain object to encode * @param {$protobuf.Writer} [writer] Writer to encode to * @returns {$protobuf.Writer} Writer */ - TypeMeta.encodeDelimited = function encodeDelimited(message, writer) { + UpdateMembershipRequest.encodeDelimited = function encodeDelimited(message, writer) { return this.encode(message, writer).ldelim(); }; /** - * Decodes a TypeMeta message from the specified reader or buffer. + * Decodes an UpdateMembershipRequest message from the specified reader or buffer. * @function decode - * @memberof google.cloud.gkehub.v1beta1.TypeMeta + * @memberof google.cloud.gkehub.v1alpha2.UpdateMembershipRequest * @static * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from * @param {number} [length] Message length if known beforehand - * @returns {google.cloud.gkehub.v1beta1.TypeMeta} TypeMeta + * @returns {google.cloud.gkehub.v1alpha2.UpdateMembershipRequest} UpdateMembershipRequest * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - TypeMeta.decode = function decode(reader, length) { + UpdateMembershipRequest.decode = function decode(reader, length) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); - var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.v1beta1.TypeMeta(); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.v1alpha2.UpdateMembershipRequest(); while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { case 1: - message.kind = reader.string(); + message.name = reader.string(); break; case 2: - message.apiVersion = reader.string(); + message.updateMask = $root.google.protobuf.FieldMask.decode(reader, reader.uint32()); + break; + case 3: + message.resource = $root.google.cloud.gkehub.v1alpha2.Membership.decode(reader, reader.uint32()); break; default: reader.skipType(tag & 7); @@ -5209,118 +48087,140 @@ }; /** - * Decodes a TypeMeta message from the specified reader or buffer, length delimited. + * Decodes an UpdateMembershipRequest message from the specified reader or buffer, length delimited. * @function decodeDelimited - * @memberof google.cloud.gkehub.v1beta1.TypeMeta + * @memberof google.cloud.gkehub.v1alpha2.UpdateMembershipRequest * @static * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {google.cloud.gkehub.v1beta1.TypeMeta} TypeMeta + * @returns {google.cloud.gkehub.v1alpha2.UpdateMembershipRequest} UpdateMembershipRequest * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - TypeMeta.decodeDelimited = function decodeDelimited(reader) { + UpdateMembershipRequest.decodeDelimited = function decodeDelimited(reader) { if (!(reader instanceof $Reader)) reader = new $Reader(reader); return this.decode(reader, reader.uint32()); }; /** - * Verifies a TypeMeta message. + * Verifies an UpdateMembershipRequest message. * @function verify - * @memberof google.cloud.gkehub.v1beta1.TypeMeta + * @memberof google.cloud.gkehub.v1alpha2.UpdateMembershipRequest * @static * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - TypeMeta.verify = function verify(message) { + UpdateMembershipRequest.verify = function verify(message) { if (typeof message !== "object" || message === null) return "object expected"; - if (message.kind != null && message.hasOwnProperty("kind")) - if (!$util.isString(message.kind)) - return "kind: string expected"; - if (message.apiVersion != null && message.hasOwnProperty("apiVersion")) - if (!$util.isString(message.apiVersion)) - return "apiVersion: string expected"; + if (message.name != null && message.hasOwnProperty("name")) + if (!$util.isString(message.name)) + return "name: string expected"; + if (message.updateMask != null && message.hasOwnProperty("updateMask")) { + var error = $root.google.protobuf.FieldMask.verify(message.updateMask); + if (error) + return "updateMask." + error; + } + if (message.resource != null && message.hasOwnProperty("resource")) { + var error = $root.google.cloud.gkehub.v1alpha2.Membership.verify(message.resource); + if (error) + return "resource." + error; + } return null; }; /** - * Creates a TypeMeta message from a plain object. Also converts values to their respective internal types. + * Creates an UpdateMembershipRequest message from a plain object. Also converts values to their respective internal types. * @function fromObject - * @memberof google.cloud.gkehub.v1beta1.TypeMeta + * @memberof google.cloud.gkehub.v1alpha2.UpdateMembershipRequest * @static * @param {Object.} object Plain object - * @returns {google.cloud.gkehub.v1beta1.TypeMeta} TypeMeta + * @returns {google.cloud.gkehub.v1alpha2.UpdateMembershipRequest} UpdateMembershipRequest */ - TypeMeta.fromObject = function fromObject(object) { - if (object instanceof $root.google.cloud.gkehub.v1beta1.TypeMeta) + UpdateMembershipRequest.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.v1alpha2.UpdateMembershipRequest) return object; - var message = new $root.google.cloud.gkehub.v1beta1.TypeMeta(); - if (object.kind != null) - message.kind = String(object.kind); - if (object.apiVersion != null) - message.apiVersion = String(object.apiVersion); + var message = new $root.google.cloud.gkehub.v1alpha2.UpdateMembershipRequest(); + if (object.name != null) + message.name = String(object.name); + if (object.updateMask != null) { + if (typeof object.updateMask !== "object") + throw TypeError(".google.cloud.gkehub.v1alpha2.UpdateMembershipRequest.updateMask: object expected"); + message.updateMask = $root.google.protobuf.FieldMask.fromObject(object.updateMask); + } + if (object.resource != null) { + if (typeof object.resource !== "object") + throw TypeError(".google.cloud.gkehub.v1alpha2.UpdateMembershipRequest.resource: object expected"); + message.resource = $root.google.cloud.gkehub.v1alpha2.Membership.fromObject(object.resource); + } return message; }; /** - * Creates a plain object from a TypeMeta message. Also converts values to other types if specified. + * Creates a plain object from an UpdateMembershipRequest message. Also converts values to other types if specified. * @function toObject - * @memberof google.cloud.gkehub.v1beta1.TypeMeta + * @memberof google.cloud.gkehub.v1alpha2.UpdateMembershipRequest * @static - * @param {google.cloud.gkehub.v1beta1.TypeMeta} message TypeMeta + * @param {google.cloud.gkehub.v1alpha2.UpdateMembershipRequest} message UpdateMembershipRequest * @param {$protobuf.IConversionOptions} [options] Conversion options * @returns {Object.} Plain object */ - TypeMeta.toObject = function toObject(message, options) { + UpdateMembershipRequest.toObject = function toObject(message, options) { if (!options) options = {}; var object = {}; if (options.defaults) { - object.kind = ""; - object.apiVersion = ""; + object.name = ""; + object.updateMask = null; + object.resource = null; } - if (message.kind != null && message.hasOwnProperty("kind")) - object.kind = message.kind; - if (message.apiVersion != null && message.hasOwnProperty("apiVersion")) - object.apiVersion = message.apiVersion; + if (message.name != null && message.hasOwnProperty("name")) + object.name = message.name; + if (message.updateMask != null && message.hasOwnProperty("updateMask")) + object.updateMask = $root.google.protobuf.FieldMask.toObject(message.updateMask, options); + if (message.resource != null && message.hasOwnProperty("resource")) + object.resource = $root.google.cloud.gkehub.v1alpha2.Membership.toObject(message.resource, options); return object; }; /** - * Converts this TypeMeta to JSON. + * Converts this UpdateMembershipRequest to JSON. * @function toJSON - * @memberof google.cloud.gkehub.v1beta1.TypeMeta + * @memberof google.cloud.gkehub.v1alpha2.UpdateMembershipRequest * @instance * @returns {Object.} JSON object */ - TypeMeta.prototype.toJSON = function toJSON() { + UpdateMembershipRequest.prototype.toJSON = function toJSON() { return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; - return TypeMeta; + return UpdateMembershipRequest; })(); - v1beta1.ConnectAgent = (function() { + v1alpha2.GenerateConnectManifestRequest = (function() { /** - * Properties of a ConnectAgent. - * @memberof google.cloud.gkehub.v1beta1 - * @interface IConnectAgent - * @property {string|null} [name] ConnectAgent name - * @property {Uint8Array|null} [proxy] ConnectAgent proxy - * @property {string|null} [namespace] ConnectAgent namespace + * Properties of a GenerateConnectManifestRequest. + * @memberof google.cloud.gkehub.v1alpha2 + * @interface IGenerateConnectManifestRequest + * @property {string|null} [name] GenerateConnectManifestRequest name + * @property {string|null} [namespace] GenerateConnectManifestRequest namespace + * @property {Uint8Array|null} [proxy] GenerateConnectManifestRequest proxy + * @property {string|null} [version] GenerateConnectManifestRequest version + * @property {boolean|null} [isUpgrade] GenerateConnectManifestRequest isUpgrade + * @property {string|null} [registry] GenerateConnectManifestRequest registry + * @property {Uint8Array|null} [imagePullSecretContent] GenerateConnectManifestRequest imagePullSecretContent */ /** - * Constructs a new ConnectAgent. - * @memberof google.cloud.gkehub.v1beta1 - * @classdesc Represents a ConnectAgent. - * @implements IConnectAgent + * Constructs a new GenerateConnectManifestRequest. + * @memberof google.cloud.gkehub.v1alpha2 + * @classdesc Represents a GenerateConnectManifestRequest. + * @implements IGenerateConnectManifestRequest * @constructor - * @param {google.cloud.gkehub.v1beta1.IConnectAgent=} [properties] Properties to set + * @param {google.cloud.gkehub.v1alpha2.IGenerateConnectManifestRequest=} [properties] Properties to set */ - function ConnectAgent(properties) { + function GenerateConnectManifestRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) if (properties[keys[i]] != null) @@ -5328,90 +48228,130 @@ } /** - * ConnectAgent name. + * GenerateConnectManifestRequest name. * @member {string} name - * @memberof google.cloud.gkehub.v1beta1.ConnectAgent + * @memberof google.cloud.gkehub.v1alpha2.GenerateConnectManifestRequest * @instance */ - ConnectAgent.prototype.name = ""; + GenerateConnectManifestRequest.prototype.name = ""; /** - * ConnectAgent proxy. + * GenerateConnectManifestRequest namespace. + * @member {string} namespace + * @memberof google.cloud.gkehub.v1alpha2.GenerateConnectManifestRequest + * @instance + */ + GenerateConnectManifestRequest.prototype.namespace = ""; + + /** + * GenerateConnectManifestRequest proxy. * @member {Uint8Array} proxy - * @memberof google.cloud.gkehub.v1beta1.ConnectAgent + * @memberof google.cloud.gkehub.v1alpha2.GenerateConnectManifestRequest * @instance */ - ConnectAgent.prototype.proxy = $util.newBuffer([]); + GenerateConnectManifestRequest.prototype.proxy = $util.newBuffer([]); /** - * ConnectAgent namespace. - * @member {string} namespace - * @memberof google.cloud.gkehub.v1beta1.ConnectAgent + * GenerateConnectManifestRequest version. + * @member {string} version + * @memberof google.cloud.gkehub.v1alpha2.GenerateConnectManifestRequest * @instance */ - ConnectAgent.prototype.namespace = ""; + GenerateConnectManifestRequest.prototype.version = ""; /** - * Creates a new ConnectAgent instance using the specified properties. + * GenerateConnectManifestRequest isUpgrade. + * @member {boolean} isUpgrade + * @memberof google.cloud.gkehub.v1alpha2.GenerateConnectManifestRequest + * @instance + */ + GenerateConnectManifestRequest.prototype.isUpgrade = false; + + /** + * GenerateConnectManifestRequest registry. + * @member {string} registry + * @memberof google.cloud.gkehub.v1alpha2.GenerateConnectManifestRequest + * @instance + */ + GenerateConnectManifestRequest.prototype.registry = ""; + + /** + * GenerateConnectManifestRequest imagePullSecretContent. + * @member {Uint8Array} imagePullSecretContent + * @memberof google.cloud.gkehub.v1alpha2.GenerateConnectManifestRequest + * @instance + */ + GenerateConnectManifestRequest.prototype.imagePullSecretContent = $util.newBuffer([]); + + /** + * Creates a new GenerateConnectManifestRequest instance using the specified properties. * @function create - * @memberof google.cloud.gkehub.v1beta1.ConnectAgent + * @memberof google.cloud.gkehub.v1alpha2.GenerateConnectManifestRequest * @static - * @param {google.cloud.gkehub.v1beta1.IConnectAgent=} [properties] Properties to set - * @returns {google.cloud.gkehub.v1beta1.ConnectAgent} ConnectAgent instance + * @param {google.cloud.gkehub.v1alpha2.IGenerateConnectManifestRequest=} [properties] Properties to set + * @returns {google.cloud.gkehub.v1alpha2.GenerateConnectManifestRequest} GenerateConnectManifestRequest instance */ - ConnectAgent.create = function create(properties) { - return new ConnectAgent(properties); + GenerateConnectManifestRequest.create = function create(properties) { + return new GenerateConnectManifestRequest(properties); }; /** - * Encodes the specified ConnectAgent message. Does not implicitly {@link google.cloud.gkehub.v1beta1.ConnectAgent.verify|verify} messages. + * Encodes the specified GenerateConnectManifestRequest message. Does not implicitly {@link google.cloud.gkehub.v1alpha2.GenerateConnectManifestRequest.verify|verify} messages. * @function encode - * @memberof google.cloud.gkehub.v1beta1.ConnectAgent + * @memberof google.cloud.gkehub.v1alpha2.GenerateConnectManifestRequest * @static - * @param {google.cloud.gkehub.v1beta1.IConnectAgent} message ConnectAgent message or plain object to encode + * @param {google.cloud.gkehub.v1alpha2.IGenerateConnectManifestRequest} message GenerateConnectManifestRequest message or plain object to encode * @param {$protobuf.Writer} [writer] Writer to encode to * @returns {$protobuf.Writer} Writer */ - ConnectAgent.encode = function encode(message, writer) { + GenerateConnectManifestRequest.encode = function encode(message, writer) { if (!writer) writer = $Writer.create(); if (message.name != null && Object.hasOwnProperty.call(message, "name")) writer.uint32(/* id 1, wireType 2 =*/10).string(message.name); - if (message.proxy != null && Object.hasOwnProperty.call(message, "proxy")) - writer.uint32(/* id 2, wireType 2 =*/18).bytes(message.proxy); if (message.namespace != null && Object.hasOwnProperty.call(message, "namespace")) - writer.uint32(/* id 3, wireType 2 =*/26).string(message.namespace); + writer.uint32(/* id 2, wireType 2 =*/18).string(message.namespace); + if (message.proxy != null && Object.hasOwnProperty.call(message, "proxy")) + writer.uint32(/* id 3, wireType 2 =*/26).bytes(message.proxy); + if (message.version != null && Object.hasOwnProperty.call(message, "version")) + writer.uint32(/* id 4, wireType 2 =*/34).string(message.version); + if (message.isUpgrade != null && Object.hasOwnProperty.call(message, "isUpgrade")) + writer.uint32(/* id 5, wireType 0 =*/40).bool(message.isUpgrade); + if (message.registry != null && Object.hasOwnProperty.call(message, "registry")) + writer.uint32(/* id 6, wireType 2 =*/50).string(message.registry); + if (message.imagePullSecretContent != null && Object.hasOwnProperty.call(message, "imagePullSecretContent")) + writer.uint32(/* id 7, wireType 2 =*/58).bytes(message.imagePullSecretContent); return writer; }; /** - * Encodes the specified ConnectAgent message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta1.ConnectAgent.verify|verify} messages. + * Encodes the specified GenerateConnectManifestRequest message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1alpha2.GenerateConnectManifestRequest.verify|verify} messages. * @function encodeDelimited - * @memberof google.cloud.gkehub.v1beta1.ConnectAgent + * @memberof google.cloud.gkehub.v1alpha2.GenerateConnectManifestRequest * @static - * @param {google.cloud.gkehub.v1beta1.IConnectAgent} message ConnectAgent message or plain object to encode + * @param {google.cloud.gkehub.v1alpha2.IGenerateConnectManifestRequest} message GenerateConnectManifestRequest message or plain object to encode * @param {$protobuf.Writer} [writer] Writer to encode to * @returns {$protobuf.Writer} Writer */ - ConnectAgent.encodeDelimited = function encodeDelimited(message, writer) { + GenerateConnectManifestRequest.encodeDelimited = function encodeDelimited(message, writer) { return this.encode(message, writer).ldelim(); }; /** - * Decodes a ConnectAgent message from the specified reader or buffer. + * Decodes a GenerateConnectManifestRequest message from the specified reader or buffer. * @function decode - * @memberof google.cloud.gkehub.v1beta1.ConnectAgent + * @memberof google.cloud.gkehub.v1alpha2.GenerateConnectManifestRequest * @static * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from * @param {number} [length] Message length if known beforehand - * @returns {google.cloud.gkehub.v1beta1.ConnectAgent} ConnectAgent + * @returns {google.cloud.gkehub.v1alpha2.GenerateConnectManifestRequest} GenerateConnectManifestRequest * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ConnectAgent.decode = function decode(reader, length) { + GenerateConnectManifestRequest.decode = function decode(reader, length) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); - var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.v1beta1.ConnectAgent(); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.v1alpha2.GenerateConnectManifestRequest(); while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { @@ -5419,10 +48359,22 @@ message.name = reader.string(); break; case 2: - message.proxy = reader.bytes(); + message.namespace = reader.string(); break; case 3: - message.namespace = reader.string(); + message.proxy = reader.bytes(); + break; + case 4: + message.version = reader.string(); + break; + case 5: + message.isUpgrade = reader.bool(); + break; + case 6: + message.registry = reader.string(); + break; + case 7: + message.imagePullSecretContent = reader.bytes(); break; default: reader.skipType(tag & 7); @@ -5433,83 +48385,107 @@ }; /** - * Decodes a ConnectAgent message from the specified reader or buffer, length delimited. + * Decodes a GenerateConnectManifestRequest message from the specified reader or buffer, length delimited. * @function decodeDelimited - * @memberof google.cloud.gkehub.v1beta1.ConnectAgent + * @memberof google.cloud.gkehub.v1alpha2.GenerateConnectManifestRequest * @static * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {google.cloud.gkehub.v1beta1.ConnectAgent} ConnectAgent + * @returns {google.cloud.gkehub.v1alpha2.GenerateConnectManifestRequest} GenerateConnectManifestRequest * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ConnectAgent.decodeDelimited = function decodeDelimited(reader) { + GenerateConnectManifestRequest.decodeDelimited = function decodeDelimited(reader) { if (!(reader instanceof $Reader)) reader = new $Reader(reader); return this.decode(reader, reader.uint32()); }; /** - * Verifies a ConnectAgent message. + * Verifies a GenerateConnectManifestRequest message. * @function verify - * @memberof google.cloud.gkehub.v1beta1.ConnectAgent + * @memberof google.cloud.gkehub.v1alpha2.GenerateConnectManifestRequest * @static * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ConnectAgent.verify = function verify(message) { + GenerateConnectManifestRequest.verify = function verify(message) { if (typeof message !== "object" || message === null) return "object expected"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; - if (message.proxy != null && message.hasOwnProperty("proxy")) - if (!(message.proxy && typeof message.proxy.length === "number" || $util.isString(message.proxy))) - return "proxy: buffer expected"; if (message.namespace != null && message.hasOwnProperty("namespace")) if (!$util.isString(message.namespace)) return "namespace: string expected"; + if (message.proxy != null && message.hasOwnProperty("proxy")) + if (!(message.proxy && typeof message.proxy.length === "number" || $util.isString(message.proxy))) + return "proxy: buffer expected"; + if (message.version != null && message.hasOwnProperty("version")) + if (!$util.isString(message.version)) + return "version: string expected"; + if (message.isUpgrade != null && message.hasOwnProperty("isUpgrade")) + if (typeof message.isUpgrade !== "boolean") + return "isUpgrade: boolean expected"; + if (message.registry != null && message.hasOwnProperty("registry")) + if (!$util.isString(message.registry)) + return "registry: string expected"; + if (message.imagePullSecretContent != null && message.hasOwnProperty("imagePullSecretContent")) + if (!(message.imagePullSecretContent && typeof message.imagePullSecretContent.length === "number" || $util.isString(message.imagePullSecretContent))) + return "imagePullSecretContent: buffer expected"; return null; }; /** - * Creates a ConnectAgent message from a plain object. Also converts values to their respective internal types. + * Creates a GenerateConnectManifestRequest message from a plain object. Also converts values to their respective internal types. * @function fromObject - * @memberof google.cloud.gkehub.v1beta1.ConnectAgent + * @memberof google.cloud.gkehub.v1alpha2.GenerateConnectManifestRequest * @static * @param {Object.} object Plain object - * @returns {google.cloud.gkehub.v1beta1.ConnectAgent} ConnectAgent + * @returns {google.cloud.gkehub.v1alpha2.GenerateConnectManifestRequest} GenerateConnectManifestRequest */ - ConnectAgent.fromObject = function fromObject(object) { - if (object instanceof $root.google.cloud.gkehub.v1beta1.ConnectAgent) + GenerateConnectManifestRequest.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.v1alpha2.GenerateConnectManifestRequest) return object; - var message = new $root.google.cloud.gkehub.v1beta1.ConnectAgent(); + var message = new $root.google.cloud.gkehub.v1alpha2.GenerateConnectManifestRequest(); if (object.name != null) message.name = String(object.name); + if (object.namespace != null) + message.namespace = String(object.namespace); if (object.proxy != null) if (typeof object.proxy === "string") $util.base64.decode(object.proxy, message.proxy = $util.newBuffer($util.base64.length(object.proxy)), 0); else if (object.proxy.length) message.proxy = object.proxy; - if (object.namespace != null) - message.namespace = String(object.namespace); + if (object.version != null) + message.version = String(object.version); + if (object.isUpgrade != null) + message.isUpgrade = Boolean(object.isUpgrade); + if (object.registry != null) + message.registry = String(object.registry); + if (object.imagePullSecretContent != null) + if (typeof object.imagePullSecretContent === "string") + $util.base64.decode(object.imagePullSecretContent, message.imagePullSecretContent = $util.newBuffer($util.base64.length(object.imagePullSecretContent)), 0); + else if (object.imagePullSecretContent.length) + message.imagePullSecretContent = object.imagePullSecretContent; return message; }; /** - * Creates a plain object from a ConnectAgent message. Also converts values to other types if specified. + * Creates a plain object from a GenerateConnectManifestRequest message. Also converts values to other types if specified. * @function toObject - * @memberof google.cloud.gkehub.v1beta1.ConnectAgent + * @memberof google.cloud.gkehub.v1alpha2.GenerateConnectManifestRequest * @static - * @param {google.cloud.gkehub.v1beta1.ConnectAgent} message ConnectAgent + * @param {google.cloud.gkehub.v1alpha2.GenerateConnectManifestRequest} message GenerateConnectManifestRequest * @param {$protobuf.IConversionOptions} [options] Conversion options * @returns {Object.} Plain object */ - ConnectAgent.toObject = function toObject(message, options) { + GenerateConnectManifestRequest.toObject = function toObject(message, options) { if (!options) options = {}; var object = {}; if (options.defaults) { object.name = ""; + object.namespace = ""; if (options.bytes === String) object.proxy = ""; else { @@ -5517,51 +48493,67 @@ if (options.bytes !== Array) object.proxy = $util.newBuffer(object.proxy); } - object.namespace = ""; + object.version = ""; + object.isUpgrade = false; + object.registry = ""; + if (options.bytes === String) + object.imagePullSecretContent = ""; + else { + object.imagePullSecretContent = []; + if (options.bytes !== Array) + object.imagePullSecretContent = $util.newBuffer(object.imagePullSecretContent); + } } if (message.name != null && message.hasOwnProperty("name")) object.name = message.name; - if (message.proxy != null && message.hasOwnProperty("proxy")) - object.proxy = options.bytes === String ? $util.base64.encode(message.proxy, 0, message.proxy.length) : options.bytes === Array ? Array.prototype.slice.call(message.proxy) : message.proxy; if (message.namespace != null && message.hasOwnProperty("namespace")) object.namespace = message.namespace; + if (message.proxy != null && message.hasOwnProperty("proxy")) + object.proxy = options.bytes === String ? $util.base64.encode(message.proxy, 0, message.proxy.length) : options.bytes === Array ? Array.prototype.slice.call(message.proxy) : message.proxy; + if (message.version != null && message.hasOwnProperty("version")) + object.version = message.version; + if (message.isUpgrade != null && message.hasOwnProperty("isUpgrade")) + object.isUpgrade = message.isUpgrade; + if (message.registry != null && message.hasOwnProperty("registry")) + object.registry = message.registry; + if (message.imagePullSecretContent != null && message.hasOwnProperty("imagePullSecretContent")) + object.imagePullSecretContent = options.bytes === String ? $util.base64.encode(message.imagePullSecretContent, 0, message.imagePullSecretContent.length) : options.bytes === Array ? Array.prototype.slice.call(message.imagePullSecretContent) : message.imagePullSecretContent; return object; }; /** - * Converts this ConnectAgent to JSON. + * Converts this GenerateConnectManifestRequest to JSON. * @function toJSON - * @memberof google.cloud.gkehub.v1beta1.ConnectAgent + * @memberof google.cloud.gkehub.v1alpha2.GenerateConnectManifestRequest * @instance * @returns {Object.} JSON object */ - ConnectAgent.prototype.toJSON = function toJSON() { + GenerateConnectManifestRequest.prototype.toJSON = function toJSON() { return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; - return ConnectAgent; + return GenerateConnectManifestRequest; })(); - v1beta1.ValidateExclusivityRequest = (function() { + v1alpha2.GenerateConnectManifestResponse = (function() { /** - * Properties of a ValidateExclusivityRequest. - * @memberof google.cloud.gkehub.v1beta1 - * @interface IValidateExclusivityRequest - * @property {string|null} [parent] ValidateExclusivityRequest parent - * @property {string|null} [crManifest] ValidateExclusivityRequest crManifest - * @property {string|null} [intendedMembership] ValidateExclusivityRequest intendedMembership + * Properties of a GenerateConnectManifestResponse. + * @memberof google.cloud.gkehub.v1alpha2 + * @interface IGenerateConnectManifestResponse + * @property {Array.|null} [manifest] GenerateConnectManifestResponse manifest */ /** - * Constructs a new ValidateExclusivityRequest. - * @memberof google.cloud.gkehub.v1beta1 - * @classdesc Represents a ValidateExclusivityRequest. - * @implements IValidateExclusivityRequest + * Constructs a new GenerateConnectManifestResponse. + * @memberof google.cloud.gkehub.v1alpha2 + * @classdesc Represents a GenerateConnectManifestResponse. + * @implements IGenerateConnectManifestResponse * @constructor - * @param {google.cloud.gkehub.v1beta1.IValidateExclusivityRequest=} [properties] Properties to set + * @param {google.cloud.gkehub.v1alpha2.IGenerateConnectManifestResponse=} [properties] Properties to set */ - function ValidateExclusivityRequest(properties) { + function GenerateConnectManifestResponse(properties) { + this.manifest = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) if (properties[keys[i]] != null) @@ -5569,101 +48561,78 @@ } /** - * ValidateExclusivityRequest parent. - * @member {string} parent - * @memberof google.cloud.gkehub.v1beta1.ValidateExclusivityRequest - * @instance - */ - ValidateExclusivityRequest.prototype.parent = ""; - - /** - * ValidateExclusivityRequest crManifest. - * @member {string} crManifest - * @memberof google.cloud.gkehub.v1beta1.ValidateExclusivityRequest - * @instance - */ - ValidateExclusivityRequest.prototype.crManifest = ""; - - /** - * ValidateExclusivityRequest intendedMembership. - * @member {string} intendedMembership - * @memberof google.cloud.gkehub.v1beta1.ValidateExclusivityRequest + * GenerateConnectManifestResponse manifest. + * @member {Array.} manifest + * @memberof google.cloud.gkehub.v1alpha2.GenerateConnectManifestResponse * @instance */ - ValidateExclusivityRequest.prototype.intendedMembership = ""; + GenerateConnectManifestResponse.prototype.manifest = $util.emptyArray; /** - * Creates a new ValidateExclusivityRequest instance using the specified properties. + * Creates a new GenerateConnectManifestResponse instance using the specified properties. * @function create - * @memberof google.cloud.gkehub.v1beta1.ValidateExclusivityRequest + * @memberof google.cloud.gkehub.v1alpha2.GenerateConnectManifestResponse * @static - * @param {google.cloud.gkehub.v1beta1.IValidateExclusivityRequest=} [properties] Properties to set - * @returns {google.cloud.gkehub.v1beta1.ValidateExclusivityRequest} ValidateExclusivityRequest instance + * @param {google.cloud.gkehub.v1alpha2.IGenerateConnectManifestResponse=} [properties] Properties to set + * @returns {google.cloud.gkehub.v1alpha2.GenerateConnectManifestResponse} GenerateConnectManifestResponse instance */ - ValidateExclusivityRequest.create = function create(properties) { - return new ValidateExclusivityRequest(properties); + GenerateConnectManifestResponse.create = function create(properties) { + return new GenerateConnectManifestResponse(properties); }; /** - * Encodes the specified ValidateExclusivityRequest message. Does not implicitly {@link google.cloud.gkehub.v1beta1.ValidateExclusivityRequest.verify|verify} messages. + * Encodes the specified GenerateConnectManifestResponse message. Does not implicitly {@link google.cloud.gkehub.v1alpha2.GenerateConnectManifestResponse.verify|verify} messages. * @function encode - * @memberof google.cloud.gkehub.v1beta1.ValidateExclusivityRequest + * @memberof google.cloud.gkehub.v1alpha2.GenerateConnectManifestResponse * @static - * @param {google.cloud.gkehub.v1beta1.IValidateExclusivityRequest} message ValidateExclusivityRequest message or plain object to encode + * @param {google.cloud.gkehub.v1alpha2.IGenerateConnectManifestResponse} message GenerateConnectManifestResponse message or plain object to encode * @param {$protobuf.Writer} [writer] Writer to encode to * @returns {$protobuf.Writer} Writer */ - ValidateExclusivityRequest.encode = function encode(message, writer) { + GenerateConnectManifestResponse.encode = function encode(message, writer) { if (!writer) writer = $Writer.create(); - if (message.parent != null && Object.hasOwnProperty.call(message, "parent")) - writer.uint32(/* id 1, wireType 2 =*/10).string(message.parent); - if (message.crManifest != null && Object.hasOwnProperty.call(message, "crManifest")) - writer.uint32(/* id 2, wireType 2 =*/18).string(message.crManifest); - if (message.intendedMembership != null && Object.hasOwnProperty.call(message, "intendedMembership")) - writer.uint32(/* id 3, wireType 2 =*/26).string(message.intendedMembership); + if (message.manifest != null && message.manifest.length) + for (var i = 0; i < message.manifest.length; ++i) + $root.google.cloud.gkehub.v1alpha2.ConnectAgentResource.encode(message.manifest[i], writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim(); return writer; }; /** - * Encodes the specified ValidateExclusivityRequest message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta1.ValidateExclusivityRequest.verify|verify} messages. + * Encodes the specified GenerateConnectManifestResponse message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1alpha2.GenerateConnectManifestResponse.verify|verify} messages. * @function encodeDelimited - * @memberof google.cloud.gkehub.v1beta1.ValidateExclusivityRequest + * @memberof google.cloud.gkehub.v1alpha2.GenerateConnectManifestResponse * @static - * @param {google.cloud.gkehub.v1beta1.IValidateExclusivityRequest} message ValidateExclusivityRequest message or plain object to encode + * @param {google.cloud.gkehub.v1alpha2.IGenerateConnectManifestResponse} message GenerateConnectManifestResponse message or plain object to encode * @param {$protobuf.Writer} [writer] Writer to encode to * @returns {$protobuf.Writer} Writer */ - ValidateExclusivityRequest.encodeDelimited = function encodeDelimited(message, writer) { + GenerateConnectManifestResponse.encodeDelimited = function encodeDelimited(message, writer) { return this.encode(message, writer).ldelim(); }; /** - * Decodes a ValidateExclusivityRequest message from the specified reader or buffer. + * Decodes a GenerateConnectManifestResponse message from the specified reader or buffer. * @function decode - * @memberof google.cloud.gkehub.v1beta1.ValidateExclusivityRequest + * @memberof google.cloud.gkehub.v1alpha2.GenerateConnectManifestResponse * @static * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from * @param {number} [length] Message length if known beforehand - * @returns {google.cloud.gkehub.v1beta1.ValidateExclusivityRequest} ValidateExclusivityRequest + * @returns {google.cloud.gkehub.v1alpha2.GenerateConnectManifestResponse} GenerateConnectManifestResponse * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ValidateExclusivityRequest.decode = function decode(reader, length) { + GenerateConnectManifestResponse.decode = function decode(reader, length) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); - var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.v1beta1.ValidateExclusivityRequest(); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.v1alpha2.GenerateConnectManifestResponse(); while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { case 1: - message.parent = reader.string(); - break; - case 2: - message.crManifest = reader.string(); - break; - case 3: - message.intendedMembership = reader.string(); + if (!(message.manifest && message.manifest.length)) + message.manifest = []; + message.manifest.push($root.google.cloud.gkehub.v1alpha2.ConnectAgentResource.decode(reader, reader.uint32())); break; default: reader.skipType(tag & 7); @@ -5674,124 +48643,125 @@ }; /** - * Decodes a ValidateExclusivityRequest message from the specified reader or buffer, length delimited. + * Decodes a GenerateConnectManifestResponse message from the specified reader or buffer, length delimited. * @function decodeDelimited - * @memberof google.cloud.gkehub.v1beta1.ValidateExclusivityRequest + * @memberof google.cloud.gkehub.v1alpha2.GenerateConnectManifestResponse * @static * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {google.cloud.gkehub.v1beta1.ValidateExclusivityRequest} ValidateExclusivityRequest + * @returns {google.cloud.gkehub.v1alpha2.GenerateConnectManifestResponse} GenerateConnectManifestResponse * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ValidateExclusivityRequest.decodeDelimited = function decodeDelimited(reader) { + GenerateConnectManifestResponse.decodeDelimited = function decodeDelimited(reader) { if (!(reader instanceof $Reader)) reader = new $Reader(reader); return this.decode(reader, reader.uint32()); }; /** - * Verifies a ValidateExclusivityRequest message. + * Verifies a GenerateConnectManifestResponse message. * @function verify - * @memberof google.cloud.gkehub.v1beta1.ValidateExclusivityRequest + * @memberof google.cloud.gkehub.v1alpha2.GenerateConnectManifestResponse * @static * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ValidateExclusivityRequest.verify = function verify(message) { + GenerateConnectManifestResponse.verify = function verify(message) { if (typeof message !== "object" || message === null) return "object expected"; - if (message.parent != null && message.hasOwnProperty("parent")) - if (!$util.isString(message.parent)) - return "parent: string expected"; - if (message.crManifest != null && message.hasOwnProperty("crManifest")) - if (!$util.isString(message.crManifest)) - return "crManifest: string expected"; - if (message.intendedMembership != null && message.hasOwnProperty("intendedMembership")) - if (!$util.isString(message.intendedMembership)) - return "intendedMembership: string expected"; + if (message.manifest != null && message.hasOwnProperty("manifest")) { + if (!Array.isArray(message.manifest)) + return "manifest: array expected"; + for (var i = 0; i < message.manifest.length; ++i) { + var error = $root.google.cloud.gkehub.v1alpha2.ConnectAgentResource.verify(message.manifest[i]); + if (error) + return "manifest." + error; + } + } return null; }; /** - * Creates a ValidateExclusivityRequest message from a plain object. Also converts values to their respective internal types. + * Creates a GenerateConnectManifestResponse message from a plain object. Also converts values to their respective internal types. * @function fromObject - * @memberof google.cloud.gkehub.v1beta1.ValidateExclusivityRequest + * @memberof google.cloud.gkehub.v1alpha2.GenerateConnectManifestResponse * @static - * @param {Object.} object Plain object - * @returns {google.cloud.gkehub.v1beta1.ValidateExclusivityRequest} ValidateExclusivityRequest - */ - ValidateExclusivityRequest.fromObject = function fromObject(object) { - if (object instanceof $root.google.cloud.gkehub.v1beta1.ValidateExclusivityRequest) - return object; - var message = new $root.google.cloud.gkehub.v1beta1.ValidateExclusivityRequest(); - if (object.parent != null) - message.parent = String(object.parent); - if (object.crManifest != null) - message.crManifest = String(object.crManifest); - if (object.intendedMembership != null) - message.intendedMembership = String(object.intendedMembership); + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.v1alpha2.GenerateConnectManifestResponse} GenerateConnectManifestResponse + */ + GenerateConnectManifestResponse.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.v1alpha2.GenerateConnectManifestResponse) + return object; + var message = new $root.google.cloud.gkehub.v1alpha2.GenerateConnectManifestResponse(); + if (object.manifest) { + if (!Array.isArray(object.manifest)) + throw TypeError(".google.cloud.gkehub.v1alpha2.GenerateConnectManifestResponse.manifest: array expected"); + message.manifest = []; + for (var i = 0; i < object.manifest.length; ++i) { + if (typeof object.manifest[i] !== "object") + throw TypeError(".google.cloud.gkehub.v1alpha2.GenerateConnectManifestResponse.manifest: object expected"); + message.manifest[i] = $root.google.cloud.gkehub.v1alpha2.ConnectAgentResource.fromObject(object.manifest[i]); + } + } return message; }; /** - * Creates a plain object from a ValidateExclusivityRequest message. Also converts values to other types if specified. + * Creates a plain object from a GenerateConnectManifestResponse message. Also converts values to other types if specified. * @function toObject - * @memberof google.cloud.gkehub.v1beta1.ValidateExclusivityRequest + * @memberof google.cloud.gkehub.v1alpha2.GenerateConnectManifestResponse * @static - * @param {google.cloud.gkehub.v1beta1.ValidateExclusivityRequest} message ValidateExclusivityRequest + * @param {google.cloud.gkehub.v1alpha2.GenerateConnectManifestResponse} message GenerateConnectManifestResponse * @param {$protobuf.IConversionOptions} [options] Conversion options * @returns {Object.} Plain object */ - ValidateExclusivityRequest.toObject = function toObject(message, options) { + GenerateConnectManifestResponse.toObject = function toObject(message, options) { if (!options) options = {}; var object = {}; - if (options.defaults) { - object.parent = ""; - object.crManifest = ""; - object.intendedMembership = ""; + if (options.arrays || options.defaults) + object.manifest = []; + if (message.manifest && message.manifest.length) { + object.manifest = []; + for (var j = 0; j < message.manifest.length; ++j) + object.manifest[j] = $root.google.cloud.gkehub.v1alpha2.ConnectAgentResource.toObject(message.manifest[j], options); } - if (message.parent != null && message.hasOwnProperty("parent")) - object.parent = message.parent; - if (message.crManifest != null && message.hasOwnProperty("crManifest")) - object.crManifest = message.crManifest; - if (message.intendedMembership != null && message.hasOwnProperty("intendedMembership")) - object.intendedMembership = message.intendedMembership; return object; }; /** - * Converts this ValidateExclusivityRequest to JSON. + * Converts this GenerateConnectManifestResponse to JSON. * @function toJSON - * @memberof google.cloud.gkehub.v1beta1.ValidateExclusivityRequest + * @memberof google.cloud.gkehub.v1alpha2.GenerateConnectManifestResponse * @instance * @returns {Object.} JSON object */ - ValidateExclusivityRequest.prototype.toJSON = function toJSON() { + GenerateConnectManifestResponse.prototype.toJSON = function toJSON() { return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; - return ValidateExclusivityRequest; + return GenerateConnectManifestResponse; })(); - v1beta1.ValidateExclusivityResponse = (function() { + v1alpha2.ConnectAgentResource = (function() { /** - * Properties of a ValidateExclusivityResponse. - * @memberof google.cloud.gkehub.v1beta1 - * @interface IValidateExclusivityResponse - * @property {google.rpc.IStatus|null} [status] ValidateExclusivityResponse status + * Properties of a ConnectAgentResource. + * @memberof google.cloud.gkehub.v1alpha2 + * @interface IConnectAgentResource + * @property {google.cloud.gkehub.v1alpha2.ITypeMeta|null} [type] ConnectAgentResource type + * @property {string|null} [manifest] ConnectAgentResource manifest */ /** - * Constructs a new ValidateExclusivityResponse. - * @memberof google.cloud.gkehub.v1beta1 - * @classdesc Represents a ValidateExclusivityResponse. - * @implements IValidateExclusivityResponse + * Constructs a new ConnectAgentResource. + * @memberof google.cloud.gkehub.v1alpha2 + * @classdesc Represents a ConnectAgentResource. + * @implements IConnectAgentResource * @constructor - * @param {google.cloud.gkehub.v1beta1.IValidateExclusivityResponse=} [properties] Properties to set + * @param {google.cloud.gkehub.v1alpha2.IConnectAgentResource=} [properties] Properties to set */ - function ValidateExclusivityResponse(properties) { + function ConnectAgentResource(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) if (properties[keys[i]] != null) @@ -5799,75 +48769,88 @@ } /** - * ValidateExclusivityResponse status. - * @member {google.rpc.IStatus|null|undefined} status - * @memberof google.cloud.gkehub.v1beta1.ValidateExclusivityResponse + * ConnectAgentResource type. + * @member {google.cloud.gkehub.v1alpha2.ITypeMeta|null|undefined} type + * @memberof google.cloud.gkehub.v1alpha2.ConnectAgentResource * @instance */ - ValidateExclusivityResponse.prototype.status = null; + ConnectAgentResource.prototype.type = null; /** - * Creates a new ValidateExclusivityResponse instance using the specified properties. + * ConnectAgentResource manifest. + * @member {string} manifest + * @memberof google.cloud.gkehub.v1alpha2.ConnectAgentResource + * @instance + */ + ConnectAgentResource.prototype.manifest = ""; + + /** + * Creates a new ConnectAgentResource instance using the specified properties. * @function create - * @memberof google.cloud.gkehub.v1beta1.ValidateExclusivityResponse + * @memberof google.cloud.gkehub.v1alpha2.ConnectAgentResource * @static - * @param {google.cloud.gkehub.v1beta1.IValidateExclusivityResponse=} [properties] Properties to set - * @returns {google.cloud.gkehub.v1beta1.ValidateExclusivityResponse} ValidateExclusivityResponse instance + * @param {google.cloud.gkehub.v1alpha2.IConnectAgentResource=} [properties] Properties to set + * @returns {google.cloud.gkehub.v1alpha2.ConnectAgentResource} ConnectAgentResource instance */ - ValidateExclusivityResponse.create = function create(properties) { - return new ValidateExclusivityResponse(properties); + ConnectAgentResource.create = function create(properties) { + return new ConnectAgentResource(properties); }; /** - * Encodes the specified ValidateExclusivityResponse message. Does not implicitly {@link google.cloud.gkehub.v1beta1.ValidateExclusivityResponse.verify|verify} messages. + * Encodes the specified ConnectAgentResource message. Does not implicitly {@link google.cloud.gkehub.v1alpha2.ConnectAgentResource.verify|verify} messages. * @function encode - * @memberof google.cloud.gkehub.v1beta1.ValidateExclusivityResponse + * @memberof google.cloud.gkehub.v1alpha2.ConnectAgentResource * @static - * @param {google.cloud.gkehub.v1beta1.IValidateExclusivityResponse} message ValidateExclusivityResponse message or plain object to encode + * @param {google.cloud.gkehub.v1alpha2.IConnectAgentResource} message ConnectAgentResource message or plain object to encode * @param {$protobuf.Writer} [writer] Writer to encode to * @returns {$protobuf.Writer} Writer */ - ValidateExclusivityResponse.encode = function encode(message, writer) { + ConnectAgentResource.encode = function encode(message, writer) { if (!writer) writer = $Writer.create(); - if (message.status != null && Object.hasOwnProperty.call(message, "status")) - $root.google.rpc.Status.encode(message.status, writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim(); + if (message.type != null && Object.hasOwnProperty.call(message, "type")) + $root.google.cloud.gkehub.v1alpha2.TypeMeta.encode(message.type, writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim(); + if (message.manifest != null && Object.hasOwnProperty.call(message, "manifest")) + writer.uint32(/* id 2, wireType 2 =*/18).string(message.manifest); return writer; }; /** - * Encodes the specified ValidateExclusivityResponse message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta1.ValidateExclusivityResponse.verify|verify} messages. + * Encodes the specified ConnectAgentResource message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1alpha2.ConnectAgentResource.verify|verify} messages. * @function encodeDelimited - * @memberof google.cloud.gkehub.v1beta1.ValidateExclusivityResponse + * @memberof google.cloud.gkehub.v1alpha2.ConnectAgentResource * @static - * @param {google.cloud.gkehub.v1beta1.IValidateExclusivityResponse} message ValidateExclusivityResponse message or plain object to encode + * @param {google.cloud.gkehub.v1alpha2.IConnectAgentResource} message ConnectAgentResource message or plain object to encode * @param {$protobuf.Writer} [writer] Writer to encode to * @returns {$protobuf.Writer} Writer */ - ValidateExclusivityResponse.encodeDelimited = function encodeDelimited(message, writer) { + ConnectAgentResource.encodeDelimited = function encodeDelimited(message, writer) { return this.encode(message, writer).ldelim(); }; /** - * Decodes a ValidateExclusivityResponse message from the specified reader or buffer. + * Decodes a ConnectAgentResource message from the specified reader or buffer. * @function decode - * @memberof google.cloud.gkehub.v1beta1.ValidateExclusivityResponse + * @memberof google.cloud.gkehub.v1alpha2.ConnectAgentResource * @static * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from * @param {number} [length] Message length if known beforehand - * @returns {google.cloud.gkehub.v1beta1.ValidateExclusivityResponse} ValidateExclusivityResponse + * @returns {google.cloud.gkehub.v1alpha2.ConnectAgentResource} ConnectAgentResource * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ValidateExclusivityResponse.decode = function decode(reader, length) { + ConnectAgentResource.decode = function decode(reader, length) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); - var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.v1beta1.ValidateExclusivityResponse(); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.v1alpha2.ConnectAgentResource(); while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { case 1: - message.status = $root.google.rpc.Status.decode(reader, reader.uint32()); + message.type = $root.google.cloud.gkehub.v1alpha2.TypeMeta.decode(reader, reader.uint32()); + break; + case 2: + message.manifest = reader.string(); break; default: reader.skipType(tag & 7); @@ -5878,114 +48861,122 @@ }; /** - * Decodes a ValidateExclusivityResponse message from the specified reader or buffer, length delimited. + * Decodes a ConnectAgentResource message from the specified reader or buffer, length delimited. * @function decodeDelimited - * @memberof google.cloud.gkehub.v1beta1.ValidateExclusivityResponse + * @memberof google.cloud.gkehub.v1alpha2.ConnectAgentResource * @static * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {google.cloud.gkehub.v1beta1.ValidateExclusivityResponse} ValidateExclusivityResponse + * @returns {google.cloud.gkehub.v1alpha2.ConnectAgentResource} ConnectAgentResource * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ValidateExclusivityResponse.decodeDelimited = function decodeDelimited(reader) { + ConnectAgentResource.decodeDelimited = function decodeDelimited(reader) { if (!(reader instanceof $Reader)) reader = new $Reader(reader); return this.decode(reader, reader.uint32()); }; /** - * Verifies a ValidateExclusivityResponse message. + * Verifies a ConnectAgentResource message. * @function verify - * @memberof google.cloud.gkehub.v1beta1.ValidateExclusivityResponse + * @memberof google.cloud.gkehub.v1alpha2.ConnectAgentResource * @static * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ValidateExclusivityResponse.verify = function verify(message) { + ConnectAgentResource.verify = function verify(message) { if (typeof message !== "object" || message === null) return "object expected"; - if (message.status != null && message.hasOwnProperty("status")) { - var error = $root.google.rpc.Status.verify(message.status); + if (message.type != null && message.hasOwnProperty("type")) { + var error = $root.google.cloud.gkehub.v1alpha2.TypeMeta.verify(message.type); if (error) - return "status." + error; + return "type." + error; } + if (message.manifest != null && message.hasOwnProperty("manifest")) + if (!$util.isString(message.manifest)) + return "manifest: string expected"; return null; }; /** - * Creates a ValidateExclusivityResponse message from a plain object. Also converts values to their respective internal types. + * Creates a ConnectAgentResource message from a plain object. Also converts values to their respective internal types. * @function fromObject - * @memberof google.cloud.gkehub.v1beta1.ValidateExclusivityResponse + * @memberof google.cloud.gkehub.v1alpha2.ConnectAgentResource * @static * @param {Object.} object Plain object - * @returns {google.cloud.gkehub.v1beta1.ValidateExclusivityResponse} ValidateExclusivityResponse + * @returns {google.cloud.gkehub.v1alpha2.ConnectAgentResource} ConnectAgentResource */ - ValidateExclusivityResponse.fromObject = function fromObject(object) { - if (object instanceof $root.google.cloud.gkehub.v1beta1.ValidateExclusivityResponse) + ConnectAgentResource.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.v1alpha2.ConnectAgentResource) return object; - var message = new $root.google.cloud.gkehub.v1beta1.ValidateExclusivityResponse(); - if (object.status != null) { - if (typeof object.status !== "object") - throw TypeError(".google.cloud.gkehub.v1beta1.ValidateExclusivityResponse.status: object expected"); - message.status = $root.google.rpc.Status.fromObject(object.status); + var message = new $root.google.cloud.gkehub.v1alpha2.ConnectAgentResource(); + if (object.type != null) { + if (typeof object.type !== "object") + throw TypeError(".google.cloud.gkehub.v1alpha2.ConnectAgentResource.type: object expected"); + message.type = $root.google.cloud.gkehub.v1alpha2.TypeMeta.fromObject(object.type); } + if (object.manifest != null) + message.manifest = String(object.manifest); return message; }; /** - * Creates a plain object from a ValidateExclusivityResponse message. Also converts values to other types if specified. + * Creates a plain object from a ConnectAgentResource message. Also converts values to other types if specified. * @function toObject - * @memberof google.cloud.gkehub.v1beta1.ValidateExclusivityResponse + * @memberof google.cloud.gkehub.v1alpha2.ConnectAgentResource * @static - * @param {google.cloud.gkehub.v1beta1.ValidateExclusivityResponse} message ValidateExclusivityResponse + * @param {google.cloud.gkehub.v1alpha2.ConnectAgentResource} message ConnectAgentResource * @param {$protobuf.IConversionOptions} [options] Conversion options * @returns {Object.} Plain object */ - ValidateExclusivityResponse.toObject = function toObject(message, options) { + ConnectAgentResource.toObject = function toObject(message, options) { if (!options) options = {}; var object = {}; - if (options.defaults) - object.status = null; - if (message.status != null && message.hasOwnProperty("status")) - object.status = $root.google.rpc.Status.toObject(message.status, options); + if (options.defaults) { + object.type = null; + object.manifest = ""; + } + if (message.type != null && message.hasOwnProperty("type")) + object.type = $root.google.cloud.gkehub.v1alpha2.TypeMeta.toObject(message.type, options); + if (message.manifest != null && message.hasOwnProperty("manifest")) + object.manifest = message.manifest; return object; }; /** - * Converts this ValidateExclusivityResponse to JSON. + * Converts this ConnectAgentResource to JSON. * @function toJSON - * @memberof google.cloud.gkehub.v1beta1.ValidateExclusivityResponse + * @memberof google.cloud.gkehub.v1alpha2.ConnectAgentResource * @instance * @returns {Object.} JSON object */ - ValidateExclusivityResponse.prototype.toJSON = function toJSON() { + ConnectAgentResource.prototype.toJSON = function toJSON() { return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; - return ValidateExclusivityResponse; + return ConnectAgentResource; })(); - v1beta1.GenerateExclusivityManifestRequest = (function() { + v1alpha2.ResourceManifest = (function() { /** - * Properties of a GenerateExclusivityManifestRequest. - * @memberof google.cloud.gkehub.v1beta1 - * @interface IGenerateExclusivityManifestRequest - * @property {string|null} [name] GenerateExclusivityManifestRequest name - * @property {string|null} [crdManifest] GenerateExclusivityManifestRequest crdManifest - * @property {string|null} [crManifest] GenerateExclusivityManifestRequest crManifest + * Properties of a ResourceManifest. + * @memberof google.cloud.gkehub.v1alpha2 + * @interface IResourceManifest + * @property {string|null} [manifest] ResourceManifest manifest + * @property {boolean|null} [clusterScoped] ResourceManifest clusterScoped */ /** - * Constructs a new GenerateExclusivityManifestRequest. - * @memberof google.cloud.gkehub.v1beta1 - * @classdesc Represents a GenerateExclusivityManifestRequest. - * @implements IGenerateExclusivityManifestRequest + * Constructs a new ResourceManifest. + * @memberof google.cloud.gkehub.v1alpha2 + * @classdesc Represents a ResourceManifest. + * @implements IResourceManifest * @constructor - * @param {google.cloud.gkehub.v1beta1.IGenerateExclusivityManifestRequest=} [properties] Properties to set + * @param {google.cloud.gkehub.v1alpha2.IResourceManifest=} [properties] Properties to set */ - function GenerateExclusivityManifestRequest(properties) { + function ResourceManifest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) if (properties[keys[i]] != null) @@ -5993,101 +48984,88 @@ } /** - * GenerateExclusivityManifestRequest name. - * @member {string} name - * @memberof google.cloud.gkehub.v1beta1.GenerateExclusivityManifestRequest - * @instance - */ - GenerateExclusivityManifestRequest.prototype.name = ""; - - /** - * GenerateExclusivityManifestRequest crdManifest. - * @member {string} crdManifest - * @memberof google.cloud.gkehub.v1beta1.GenerateExclusivityManifestRequest + * ResourceManifest manifest. + * @member {string} manifest + * @memberof google.cloud.gkehub.v1alpha2.ResourceManifest * @instance */ - GenerateExclusivityManifestRequest.prototype.crdManifest = ""; + ResourceManifest.prototype.manifest = ""; /** - * GenerateExclusivityManifestRequest crManifest. - * @member {string} crManifest - * @memberof google.cloud.gkehub.v1beta1.GenerateExclusivityManifestRequest + * ResourceManifest clusterScoped. + * @member {boolean} clusterScoped + * @memberof google.cloud.gkehub.v1alpha2.ResourceManifest * @instance */ - GenerateExclusivityManifestRequest.prototype.crManifest = ""; + ResourceManifest.prototype.clusterScoped = false; /** - * Creates a new GenerateExclusivityManifestRequest instance using the specified properties. + * Creates a new ResourceManifest instance using the specified properties. * @function create - * @memberof google.cloud.gkehub.v1beta1.GenerateExclusivityManifestRequest + * @memberof google.cloud.gkehub.v1alpha2.ResourceManifest * @static - * @param {google.cloud.gkehub.v1beta1.IGenerateExclusivityManifestRequest=} [properties] Properties to set - * @returns {google.cloud.gkehub.v1beta1.GenerateExclusivityManifestRequest} GenerateExclusivityManifestRequest instance + * @param {google.cloud.gkehub.v1alpha2.IResourceManifest=} [properties] Properties to set + * @returns {google.cloud.gkehub.v1alpha2.ResourceManifest} ResourceManifest instance */ - GenerateExclusivityManifestRequest.create = function create(properties) { - return new GenerateExclusivityManifestRequest(properties); + ResourceManifest.create = function create(properties) { + return new ResourceManifest(properties); }; /** - * Encodes the specified GenerateExclusivityManifestRequest message. Does not implicitly {@link google.cloud.gkehub.v1beta1.GenerateExclusivityManifestRequest.verify|verify} messages. + * Encodes the specified ResourceManifest message. Does not implicitly {@link google.cloud.gkehub.v1alpha2.ResourceManifest.verify|verify} messages. * @function encode - * @memberof google.cloud.gkehub.v1beta1.GenerateExclusivityManifestRequest + * @memberof google.cloud.gkehub.v1alpha2.ResourceManifest * @static - * @param {google.cloud.gkehub.v1beta1.IGenerateExclusivityManifestRequest} message GenerateExclusivityManifestRequest message or plain object to encode + * @param {google.cloud.gkehub.v1alpha2.IResourceManifest} message ResourceManifest message or plain object to encode * @param {$protobuf.Writer} [writer] Writer to encode to * @returns {$protobuf.Writer} Writer */ - GenerateExclusivityManifestRequest.encode = function encode(message, writer) { + ResourceManifest.encode = function encode(message, writer) { if (!writer) writer = $Writer.create(); - if (message.name != null && Object.hasOwnProperty.call(message, "name")) - writer.uint32(/* id 1, wireType 2 =*/10).string(message.name); - if (message.crdManifest != null && Object.hasOwnProperty.call(message, "crdManifest")) - writer.uint32(/* id 2, wireType 2 =*/18).string(message.crdManifest); - if (message.crManifest != null && Object.hasOwnProperty.call(message, "crManifest")) - writer.uint32(/* id 3, wireType 2 =*/26).string(message.crManifest); + if (message.manifest != null && Object.hasOwnProperty.call(message, "manifest")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.manifest); + if (message.clusterScoped != null && Object.hasOwnProperty.call(message, "clusterScoped")) + writer.uint32(/* id 2, wireType 0 =*/16).bool(message.clusterScoped); return writer; }; /** - * Encodes the specified GenerateExclusivityManifestRequest message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta1.GenerateExclusivityManifestRequest.verify|verify} messages. + * Encodes the specified ResourceManifest message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1alpha2.ResourceManifest.verify|verify} messages. * @function encodeDelimited - * @memberof google.cloud.gkehub.v1beta1.GenerateExclusivityManifestRequest + * @memberof google.cloud.gkehub.v1alpha2.ResourceManifest * @static - * @param {google.cloud.gkehub.v1beta1.IGenerateExclusivityManifestRequest} message GenerateExclusivityManifestRequest message or plain object to encode + * @param {google.cloud.gkehub.v1alpha2.IResourceManifest} message ResourceManifest message or plain object to encode * @param {$protobuf.Writer} [writer] Writer to encode to * @returns {$protobuf.Writer} Writer */ - GenerateExclusivityManifestRequest.encodeDelimited = function encodeDelimited(message, writer) { + ResourceManifest.encodeDelimited = function encodeDelimited(message, writer) { return this.encode(message, writer).ldelim(); }; /** - * Decodes a GenerateExclusivityManifestRequest message from the specified reader or buffer. + * Decodes a ResourceManifest message from the specified reader or buffer. * @function decode - * @memberof google.cloud.gkehub.v1beta1.GenerateExclusivityManifestRequest + * @memberof google.cloud.gkehub.v1alpha2.ResourceManifest * @static * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from * @param {number} [length] Message length if known beforehand - * @returns {google.cloud.gkehub.v1beta1.GenerateExclusivityManifestRequest} GenerateExclusivityManifestRequest + * @returns {google.cloud.gkehub.v1alpha2.ResourceManifest} ResourceManifest * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - GenerateExclusivityManifestRequest.decode = function decode(reader, length) { + ResourceManifest.decode = function decode(reader, length) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); - var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.v1beta1.GenerateExclusivityManifestRequest(); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.v1alpha2.ResourceManifest(); while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { case 1: - message.name = reader.string(); + message.manifest = reader.string(); break; case 2: - message.crdManifest = reader.string(); - break; - case 3: - message.crManifest = reader.string(); + message.clusterScoped = reader.bool(); break; default: reader.skipType(tag & 7); @@ -6098,125 +49076,117 @@ }; /** - * Decodes a GenerateExclusivityManifestRequest message from the specified reader or buffer, length delimited. + * Decodes a ResourceManifest message from the specified reader or buffer, length delimited. * @function decodeDelimited - * @memberof google.cloud.gkehub.v1beta1.GenerateExclusivityManifestRequest + * @memberof google.cloud.gkehub.v1alpha2.ResourceManifest * @static * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {google.cloud.gkehub.v1beta1.GenerateExclusivityManifestRequest} GenerateExclusivityManifestRequest + * @returns {google.cloud.gkehub.v1alpha2.ResourceManifest} ResourceManifest * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - GenerateExclusivityManifestRequest.decodeDelimited = function decodeDelimited(reader) { + ResourceManifest.decodeDelimited = function decodeDelimited(reader) { if (!(reader instanceof $Reader)) reader = new $Reader(reader); return this.decode(reader, reader.uint32()); }; /** - * Verifies a GenerateExclusivityManifestRequest message. + * Verifies a ResourceManifest message. * @function verify - * @memberof google.cloud.gkehub.v1beta1.GenerateExclusivityManifestRequest + * @memberof google.cloud.gkehub.v1alpha2.ResourceManifest * @static * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - GenerateExclusivityManifestRequest.verify = function verify(message) { + ResourceManifest.verify = function verify(message) { if (typeof message !== "object" || message === null) return "object expected"; - if (message.name != null && message.hasOwnProperty("name")) - if (!$util.isString(message.name)) - return "name: string expected"; - if (message.crdManifest != null && message.hasOwnProperty("crdManifest")) - if (!$util.isString(message.crdManifest)) - return "crdManifest: string expected"; - if (message.crManifest != null && message.hasOwnProperty("crManifest")) - if (!$util.isString(message.crManifest)) - return "crManifest: string expected"; + if (message.manifest != null && message.hasOwnProperty("manifest")) + if (!$util.isString(message.manifest)) + return "manifest: string expected"; + if (message.clusterScoped != null && message.hasOwnProperty("clusterScoped")) + if (typeof message.clusterScoped !== "boolean") + return "clusterScoped: boolean expected"; return null; }; /** - * Creates a GenerateExclusivityManifestRequest message from a plain object. Also converts values to their respective internal types. + * Creates a ResourceManifest message from a plain object. Also converts values to their respective internal types. * @function fromObject - * @memberof google.cloud.gkehub.v1beta1.GenerateExclusivityManifestRequest + * @memberof google.cloud.gkehub.v1alpha2.ResourceManifest * @static * @param {Object.} object Plain object - * @returns {google.cloud.gkehub.v1beta1.GenerateExclusivityManifestRequest} GenerateExclusivityManifestRequest + * @returns {google.cloud.gkehub.v1alpha2.ResourceManifest} ResourceManifest */ - GenerateExclusivityManifestRequest.fromObject = function fromObject(object) { - if (object instanceof $root.google.cloud.gkehub.v1beta1.GenerateExclusivityManifestRequest) + ResourceManifest.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.v1alpha2.ResourceManifest) return object; - var message = new $root.google.cloud.gkehub.v1beta1.GenerateExclusivityManifestRequest(); - if (object.name != null) - message.name = String(object.name); - if (object.crdManifest != null) - message.crdManifest = String(object.crdManifest); - if (object.crManifest != null) - message.crManifest = String(object.crManifest); + var message = new $root.google.cloud.gkehub.v1alpha2.ResourceManifest(); + if (object.manifest != null) + message.manifest = String(object.manifest); + if (object.clusterScoped != null) + message.clusterScoped = Boolean(object.clusterScoped); return message; }; /** - * Creates a plain object from a GenerateExclusivityManifestRequest message. Also converts values to other types if specified. + * Creates a plain object from a ResourceManifest message. Also converts values to other types if specified. * @function toObject - * @memberof google.cloud.gkehub.v1beta1.GenerateExclusivityManifestRequest + * @memberof google.cloud.gkehub.v1alpha2.ResourceManifest * @static - * @param {google.cloud.gkehub.v1beta1.GenerateExclusivityManifestRequest} message GenerateExclusivityManifestRequest + * @param {google.cloud.gkehub.v1alpha2.ResourceManifest} message ResourceManifest * @param {$protobuf.IConversionOptions} [options] Conversion options * @returns {Object.} Plain object */ - GenerateExclusivityManifestRequest.toObject = function toObject(message, options) { + ResourceManifest.toObject = function toObject(message, options) { if (!options) options = {}; var object = {}; if (options.defaults) { - object.name = ""; - object.crdManifest = ""; - object.crManifest = ""; + object.manifest = ""; + object.clusterScoped = false; } - if (message.name != null && message.hasOwnProperty("name")) - object.name = message.name; - if (message.crdManifest != null && message.hasOwnProperty("crdManifest")) - object.crdManifest = message.crdManifest; - if (message.crManifest != null && message.hasOwnProperty("crManifest")) - object.crManifest = message.crManifest; + if (message.manifest != null && message.hasOwnProperty("manifest")) + object.manifest = message.manifest; + if (message.clusterScoped != null && message.hasOwnProperty("clusterScoped")) + object.clusterScoped = message.clusterScoped; return object; }; /** - * Converts this GenerateExclusivityManifestRequest to JSON. + * Converts this ResourceManifest to JSON. * @function toJSON - * @memberof google.cloud.gkehub.v1beta1.GenerateExclusivityManifestRequest + * @memberof google.cloud.gkehub.v1alpha2.ResourceManifest * @instance * @returns {Object.} JSON object */ - GenerateExclusivityManifestRequest.prototype.toJSON = function toJSON() { + ResourceManifest.prototype.toJSON = function toJSON() { return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; - return GenerateExclusivityManifestRequest; + return ResourceManifest; })(); - v1beta1.GenerateExclusivityManifestResponse = (function() { + v1alpha2.TypeMeta = (function() { /** - * Properties of a GenerateExclusivityManifestResponse. - * @memberof google.cloud.gkehub.v1beta1 - * @interface IGenerateExclusivityManifestResponse - * @property {string|null} [crdManifest] GenerateExclusivityManifestResponse crdManifest - * @property {string|null} [crManifest] GenerateExclusivityManifestResponse crManifest + * Properties of a TypeMeta. + * @memberof google.cloud.gkehub.v1alpha2 + * @interface ITypeMeta + * @property {string|null} [kind] TypeMeta kind + * @property {string|null} [apiVersion] TypeMeta apiVersion */ /** - * Constructs a new GenerateExclusivityManifestResponse. - * @memberof google.cloud.gkehub.v1beta1 - * @classdesc Represents a GenerateExclusivityManifestResponse. - * @implements IGenerateExclusivityManifestResponse + * Constructs a new TypeMeta. + * @memberof google.cloud.gkehub.v1alpha2 + * @classdesc Represents a TypeMeta. + * @implements ITypeMeta * @constructor - * @param {google.cloud.gkehub.v1beta1.IGenerateExclusivityManifestResponse=} [properties] Properties to set + * @param {google.cloud.gkehub.v1alpha2.ITypeMeta=} [properties] Properties to set */ - function GenerateExclusivityManifestResponse(properties) { + function TypeMeta(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) if (properties[keys[i]] != null) @@ -6224,88 +49194,88 @@ } /** - * GenerateExclusivityManifestResponse crdManifest. - * @member {string} crdManifest - * @memberof google.cloud.gkehub.v1beta1.GenerateExclusivityManifestResponse + * TypeMeta kind. + * @member {string} kind + * @memberof google.cloud.gkehub.v1alpha2.TypeMeta * @instance */ - GenerateExclusivityManifestResponse.prototype.crdManifest = ""; + TypeMeta.prototype.kind = ""; /** - * GenerateExclusivityManifestResponse crManifest. - * @member {string} crManifest - * @memberof google.cloud.gkehub.v1beta1.GenerateExclusivityManifestResponse + * TypeMeta apiVersion. + * @member {string} apiVersion + * @memberof google.cloud.gkehub.v1alpha2.TypeMeta * @instance */ - GenerateExclusivityManifestResponse.prototype.crManifest = ""; + TypeMeta.prototype.apiVersion = ""; /** - * Creates a new GenerateExclusivityManifestResponse instance using the specified properties. + * Creates a new TypeMeta instance using the specified properties. * @function create - * @memberof google.cloud.gkehub.v1beta1.GenerateExclusivityManifestResponse + * @memberof google.cloud.gkehub.v1alpha2.TypeMeta * @static - * @param {google.cloud.gkehub.v1beta1.IGenerateExclusivityManifestResponse=} [properties] Properties to set - * @returns {google.cloud.gkehub.v1beta1.GenerateExclusivityManifestResponse} GenerateExclusivityManifestResponse instance + * @param {google.cloud.gkehub.v1alpha2.ITypeMeta=} [properties] Properties to set + * @returns {google.cloud.gkehub.v1alpha2.TypeMeta} TypeMeta instance */ - GenerateExclusivityManifestResponse.create = function create(properties) { - return new GenerateExclusivityManifestResponse(properties); + TypeMeta.create = function create(properties) { + return new TypeMeta(properties); }; /** - * Encodes the specified GenerateExclusivityManifestResponse message. Does not implicitly {@link google.cloud.gkehub.v1beta1.GenerateExclusivityManifestResponse.verify|verify} messages. + * Encodes the specified TypeMeta message. Does not implicitly {@link google.cloud.gkehub.v1alpha2.TypeMeta.verify|verify} messages. * @function encode - * @memberof google.cloud.gkehub.v1beta1.GenerateExclusivityManifestResponse + * @memberof google.cloud.gkehub.v1alpha2.TypeMeta * @static - * @param {google.cloud.gkehub.v1beta1.IGenerateExclusivityManifestResponse} message GenerateExclusivityManifestResponse message or plain object to encode + * @param {google.cloud.gkehub.v1alpha2.ITypeMeta} message TypeMeta message or plain object to encode * @param {$protobuf.Writer} [writer] Writer to encode to * @returns {$protobuf.Writer} Writer */ - GenerateExclusivityManifestResponse.encode = function encode(message, writer) { + TypeMeta.encode = function encode(message, writer) { if (!writer) writer = $Writer.create(); - if (message.crdManifest != null && Object.hasOwnProperty.call(message, "crdManifest")) - writer.uint32(/* id 1, wireType 2 =*/10).string(message.crdManifest); - if (message.crManifest != null && Object.hasOwnProperty.call(message, "crManifest")) - writer.uint32(/* id 2, wireType 2 =*/18).string(message.crManifest); + if (message.kind != null && Object.hasOwnProperty.call(message, "kind")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.kind); + if (message.apiVersion != null && Object.hasOwnProperty.call(message, "apiVersion")) + writer.uint32(/* id 2, wireType 2 =*/18).string(message.apiVersion); return writer; }; /** - * Encodes the specified GenerateExclusivityManifestResponse message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta1.GenerateExclusivityManifestResponse.verify|verify} messages. + * Encodes the specified TypeMeta message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1alpha2.TypeMeta.verify|verify} messages. * @function encodeDelimited - * @memberof google.cloud.gkehub.v1beta1.GenerateExclusivityManifestResponse + * @memberof google.cloud.gkehub.v1alpha2.TypeMeta * @static - * @param {google.cloud.gkehub.v1beta1.IGenerateExclusivityManifestResponse} message GenerateExclusivityManifestResponse message or plain object to encode + * @param {google.cloud.gkehub.v1alpha2.ITypeMeta} message TypeMeta message or plain object to encode * @param {$protobuf.Writer} [writer] Writer to encode to * @returns {$protobuf.Writer} Writer */ - GenerateExclusivityManifestResponse.encodeDelimited = function encodeDelimited(message, writer) { + TypeMeta.encodeDelimited = function encodeDelimited(message, writer) { return this.encode(message, writer).ldelim(); }; /** - * Decodes a GenerateExclusivityManifestResponse message from the specified reader or buffer. + * Decodes a TypeMeta message from the specified reader or buffer. * @function decode - * @memberof google.cloud.gkehub.v1beta1.GenerateExclusivityManifestResponse + * @memberof google.cloud.gkehub.v1alpha2.TypeMeta * @static * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from * @param {number} [length] Message length if known beforehand - * @returns {google.cloud.gkehub.v1beta1.GenerateExclusivityManifestResponse} GenerateExclusivityManifestResponse + * @returns {google.cloud.gkehub.v1alpha2.TypeMeta} TypeMeta * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - GenerateExclusivityManifestResponse.decode = function decode(reader, length) { + TypeMeta.decode = function decode(reader, length) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); - var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.v1beta1.GenerateExclusivityManifestResponse(); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.v1alpha2.TypeMeta(); while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { case 1: - message.crdManifest = reader.string(); + message.kind = reader.string(); break; case 2: - message.crManifest = reader.string(); + message.apiVersion = reader.string(); break; default: reader.skipType(tag & 7); @@ -6316,276 +49286,192 @@ }; /** - * Decodes a GenerateExclusivityManifestResponse message from the specified reader or buffer, length delimited. + * Decodes a TypeMeta message from the specified reader or buffer, length delimited. * @function decodeDelimited - * @memberof google.cloud.gkehub.v1beta1.GenerateExclusivityManifestResponse + * @memberof google.cloud.gkehub.v1alpha2.TypeMeta * @static * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {google.cloud.gkehub.v1beta1.GenerateExclusivityManifestResponse} GenerateExclusivityManifestResponse + * @returns {google.cloud.gkehub.v1alpha2.TypeMeta} TypeMeta * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - GenerateExclusivityManifestResponse.decodeDelimited = function decodeDelimited(reader) { + TypeMeta.decodeDelimited = function decodeDelimited(reader) { if (!(reader instanceof $Reader)) reader = new $Reader(reader); return this.decode(reader, reader.uint32()); }; /** - * Verifies a GenerateExclusivityManifestResponse message. + * Verifies a TypeMeta message. * @function verify - * @memberof google.cloud.gkehub.v1beta1.GenerateExclusivityManifestResponse + * @memberof google.cloud.gkehub.v1alpha2.TypeMeta * @static * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - GenerateExclusivityManifestResponse.verify = function verify(message) { + TypeMeta.verify = function verify(message) { if (typeof message !== "object" || message === null) return "object expected"; - if (message.crdManifest != null && message.hasOwnProperty("crdManifest")) - if (!$util.isString(message.crdManifest)) - return "crdManifest: string expected"; - if (message.crManifest != null && message.hasOwnProperty("crManifest")) - if (!$util.isString(message.crManifest)) - return "crManifest: string expected"; + if (message.kind != null && message.hasOwnProperty("kind")) + if (!$util.isString(message.kind)) + return "kind: string expected"; + if (message.apiVersion != null && message.hasOwnProperty("apiVersion")) + if (!$util.isString(message.apiVersion)) + return "apiVersion: string expected"; return null; }; /** - * Creates a GenerateExclusivityManifestResponse message from a plain object. Also converts values to their respective internal types. + * Creates a TypeMeta message from a plain object. Also converts values to their respective internal types. * @function fromObject - * @memberof google.cloud.gkehub.v1beta1.GenerateExclusivityManifestResponse + * @memberof google.cloud.gkehub.v1alpha2.TypeMeta * @static * @param {Object.} object Plain object - * @returns {google.cloud.gkehub.v1beta1.GenerateExclusivityManifestResponse} GenerateExclusivityManifestResponse + * @returns {google.cloud.gkehub.v1alpha2.TypeMeta} TypeMeta */ - GenerateExclusivityManifestResponse.fromObject = function fromObject(object) { - if (object instanceof $root.google.cloud.gkehub.v1beta1.GenerateExclusivityManifestResponse) + TypeMeta.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.v1alpha2.TypeMeta) return object; - var message = new $root.google.cloud.gkehub.v1beta1.GenerateExclusivityManifestResponse(); - if (object.crdManifest != null) - message.crdManifest = String(object.crdManifest); - if (object.crManifest != null) - message.crManifest = String(object.crManifest); + var message = new $root.google.cloud.gkehub.v1alpha2.TypeMeta(); + if (object.kind != null) + message.kind = String(object.kind); + if (object.apiVersion != null) + message.apiVersion = String(object.apiVersion); return message; }; /** - * Creates a plain object from a GenerateExclusivityManifestResponse message. Also converts values to other types if specified. + * Creates a plain object from a TypeMeta message. Also converts values to other types if specified. * @function toObject - * @memberof google.cloud.gkehub.v1beta1.GenerateExclusivityManifestResponse + * @memberof google.cloud.gkehub.v1alpha2.TypeMeta * @static - * @param {google.cloud.gkehub.v1beta1.GenerateExclusivityManifestResponse} message GenerateExclusivityManifestResponse + * @param {google.cloud.gkehub.v1alpha2.TypeMeta} message TypeMeta * @param {$protobuf.IConversionOptions} [options] Conversion options * @returns {Object.} Plain object */ - GenerateExclusivityManifestResponse.toObject = function toObject(message, options) { + TypeMeta.toObject = function toObject(message, options) { if (!options) options = {}; var object = {}; if (options.defaults) { - object.crdManifest = ""; - object.crManifest = ""; + object.kind = ""; + object.apiVersion = ""; } - if (message.crdManifest != null && message.hasOwnProperty("crdManifest")) - object.crdManifest = message.crdManifest; - if (message.crManifest != null && message.hasOwnProperty("crManifest")) - object.crManifest = message.crManifest; - return object; - }; - - /** - * Converts this GenerateExclusivityManifestResponse to JSON. - * @function toJSON - * @memberof google.cloud.gkehub.v1beta1.GenerateExclusivityManifestResponse - * @instance - * @returns {Object.} JSON object - */ - GenerateExclusivityManifestResponse.prototype.toJSON = function toJSON() { - return this.constructor.toObject(this, $protobuf.util.toJSONOptions); - }; - - return GenerateExclusivityManifestResponse; - })(); - - v1beta1.OperationMetadata = (function() { - - /** - * Properties of an OperationMetadata. - * @memberof google.cloud.gkehub.v1beta1 - * @interface IOperationMetadata - * @property {google.protobuf.ITimestamp|null} [createTime] OperationMetadata createTime - * @property {google.protobuf.ITimestamp|null} [endTime] OperationMetadata endTime - * @property {string|null} [target] OperationMetadata target - * @property {string|null} [verb] OperationMetadata verb - * @property {string|null} [statusDetail] OperationMetadata statusDetail - * @property {boolean|null} [cancelRequested] OperationMetadata cancelRequested - * @property {string|null} [apiVersion] OperationMetadata apiVersion - */ - - /** - * Constructs a new OperationMetadata. - * @memberof google.cloud.gkehub.v1beta1 - * @classdesc Represents an OperationMetadata. - * @implements IOperationMetadata - * @constructor - * @param {google.cloud.gkehub.v1beta1.IOperationMetadata=} [properties] Properties to set - */ - function OperationMetadata(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]]; - } - - /** - * OperationMetadata createTime. - * @member {google.protobuf.ITimestamp|null|undefined} createTime - * @memberof google.cloud.gkehub.v1beta1.OperationMetadata - * @instance - */ - OperationMetadata.prototype.createTime = null; - - /** - * OperationMetadata endTime. - * @member {google.protobuf.ITimestamp|null|undefined} endTime - * @memberof google.cloud.gkehub.v1beta1.OperationMetadata - * @instance - */ - OperationMetadata.prototype.endTime = null; + if (message.kind != null && message.hasOwnProperty("kind")) + object.kind = message.kind; + if (message.apiVersion != null && message.hasOwnProperty("apiVersion")) + object.apiVersion = message.apiVersion; + return object; + }; /** - * OperationMetadata target. - * @member {string} target - * @memberof google.cloud.gkehub.v1beta1.OperationMetadata + * Converts this TypeMeta to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.v1alpha2.TypeMeta * @instance + * @returns {Object.} JSON object */ - OperationMetadata.prototype.target = ""; + TypeMeta.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; - /** - * OperationMetadata verb. - * @member {string} verb - * @memberof google.cloud.gkehub.v1beta1.OperationMetadata - * @instance - */ - OperationMetadata.prototype.verb = ""; + return TypeMeta; + })(); + + v1alpha2.InitializeHubRequest = (function() { /** - * OperationMetadata statusDetail. - * @member {string} statusDetail - * @memberof google.cloud.gkehub.v1beta1.OperationMetadata - * @instance + * Properties of an InitializeHubRequest. + * @memberof google.cloud.gkehub.v1alpha2 + * @interface IInitializeHubRequest + * @property {string|null} [project] InitializeHubRequest project */ - OperationMetadata.prototype.statusDetail = ""; /** - * OperationMetadata cancelRequested. - * @member {boolean} cancelRequested - * @memberof google.cloud.gkehub.v1beta1.OperationMetadata - * @instance + * Constructs a new InitializeHubRequest. + * @memberof google.cloud.gkehub.v1alpha2 + * @classdesc Represents an InitializeHubRequest. + * @implements IInitializeHubRequest + * @constructor + * @param {google.cloud.gkehub.v1alpha2.IInitializeHubRequest=} [properties] Properties to set */ - OperationMetadata.prototype.cancelRequested = false; + function InitializeHubRequest(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]]; + } /** - * OperationMetadata apiVersion. - * @member {string} apiVersion - * @memberof google.cloud.gkehub.v1beta1.OperationMetadata + * InitializeHubRequest project. + * @member {string} project + * @memberof google.cloud.gkehub.v1alpha2.InitializeHubRequest * @instance */ - OperationMetadata.prototype.apiVersion = ""; + InitializeHubRequest.prototype.project = ""; /** - * Creates a new OperationMetadata instance using the specified properties. + * Creates a new InitializeHubRequest instance using the specified properties. * @function create - * @memberof google.cloud.gkehub.v1beta1.OperationMetadata + * @memberof google.cloud.gkehub.v1alpha2.InitializeHubRequest * @static - * @param {google.cloud.gkehub.v1beta1.IOperationMetadata=} [properties] Properties to set - * @returns {google.cloud.gkehub.v1beta1.OperationMetadata} OperationMetadata instance + * @param {google.cloud.gkehub.v1alpha2.IInitializeHubRequest=} [properties] Properties to set + * @returns {google.cloud.gkehub.v1alpha2.InitializeHubRequest} InitializeHubRequest instance */ - OperationMetadata.create = function create(properties) { - return new OperationMetadata(properties); + InitializeHubRequest.create = function create(properties) { + return new InitializeHubRequest(properties); }; /** - * Encodes the specified OperationMetadata message. Does not implicitly {@link google.cloud.gkehub.v1beta1.OperationMetadata.verify|verify} messages. + * Encodes the specified InitializeHubRequest message. Does not implicitly {@link google.cloud.gkehub.v1alpha2.InitializeHubRequest.verify|verify} messages. * @function encode - * @memberof google.cloud.gkehub.v1beta1.OperationMetadata + * @memberof google.cloud.gkehub.v1alpha2.InitializeHubRequest * @static - * @param {google.cloud.gkehub.v1beta1.IOperationMetadata} message OperationMetadata message or plain object to encode + * @param {google.cloud.gkehub.v1alpha2.IInitializeHubRequest} message InitializeHubRequest message or plain object to encode * @param {$protobuf.Writer} [writer] Writer to encode to * @returns {$protobuf.Writer} Writer */ - OperationMetadata.encode = function encode(message, writer) { + InitializeHubRequest.encode = function encode(message, writer) { if (!writer) writer = $Writer.create(); - if (message.createTime != null && Object.hasOwnProperty.call(message, "createTime")) - $root.google.protobuf.Timestamp.encode(message.createTime, writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim(); - if (message.endTime != null && Object.hasOwnProperty.call(message, "endTime")) - $root.google.protobuf.Timestamp.encode(message.endTime, writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim(); - if (message.target != null && Object.hasOwnProperty.call(message, "target")) - writer.uint32(/* id 3, wireType 2 =*/26).string(message.target); - if (message.verb != null && Object.hasOwnProperty.call(message, "verb")) - writer.uint32(/* id 4, wireType 2 =*/34).string(message.verb); - if (message.statusDetail != null && Object.hasOwnProperty.call(message, "statusDetail")) - writer.uint32(/* id 5, wireType 2 =*/42).string(message.statusDetail); - if (message.cancelRequested != null && Object.hasOwnProperty.call(message, "cancelRequested")) - writer.uint32(/* id 6, wireType 0 =*/48).bool(message.cancelRequested); - if (message.apiVersion != null && Object.hasOwnProperty.call(message, "apiVersion")) - writer.uint32(/* id 7, wireType 2 =*/58).string(message.apiVersion); + if (message.project != null && Object.hasOwnProperty.call(message, "project")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.project); return writer; }; /** - * Encodes the specified OperationMetadata message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta1.OperationMetadata.verify|verify} messages. + * Encodes the specified InitializeHubRequest message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1alpha2.InitializeHubRequest.verify|verify} messages. * @function encodeDelimited - * @memberof google.cloud.gkehub.v1beta1.OperationMetadata + * @memberof google.cloud.gkehub.v1alpha2.InitializeHubRequest * @static - * @param {google.cloud.gkehub.v1beta1.IOperationMetadata} message OperationMetadata message or plain object to encode + * @param {google.cloud.gkehub.v1alpha2.IInitializeHubRequest} message InitializeHubRequest message or plain object to encode * @param {$protobuf.Writer} [writer] Writer to encode to * @returns {$protobuf.Writer} Writer */ - OperationMetadata.encodeDelimited = function encodeDelimited(message, writer) { + InitializeHubRequest.encodeDelimited = function encodeDelimited(message, writer) { return this.encode(message, writer).ldelim(); }; /** - * Decodes an OperationMetadata message from the specified reader or buffer. + * Decodes an InitializeHubRequest message from the specified reader or buffer. * @function decode - * @memberof google.cloud.gkehub.v1beta1.OperationMetadata + * @memberof google.cloud.gkehub.v1alpha2.InitializeHubRequest * @static * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from * @param {number} [length] Message length if known beforehand - * @returns {google.cloud.gkehub.v1beta1.OperationMetadata} OperationMetadata + * @returns {google.cloud.gkehub.v1alpha2.InitializeHubRequest} InitializeHubRequest * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - OperationMetadata.decode = function decode(reader, length) { + InitializeHubRequest.decode = function decode(reader, length) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); - var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.v1beta1.OperationMetadata(); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.v1alpha2.InitializeHubRequest(); while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { case 1: - message.createTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); - break; - case 2: - message.endTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); - break; - case 3: - message.target = reader.string(); - break; - case 4: - message.verb = reader.string(); - break; - case 5: - message.statusDetail = reader.string(); - break; - case 6: - message.cancelRequested = reader.bool(); - break; - case 7: - message.apiVersion = reader.string(); + message.project = reader.string(); break; default: reader.skipType(tag & 7); @@ -6596,10467 +49482,11284 @@ }; /** - * Decodes an OperationMetadata message from the specified reader or buffer, length delimited. + * Decodes an InitializeHubRequest message from the specified reader or buffer, length delimited. * @function decodeDelimited - * @memberof google.cloud.gkehub.v1beta1.OperationMetadata + * @memberof google.cloud.gkehub.v1alpha2.InitializeHubRequest * @static * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {google.cloud.gkehub.v1beta1.OperationMetadata} OperationMetadata + * @returns {google.cloud.gkehub.v1alpha2.InitializeHubRequest} InitializeHubRequest * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - OperationMetadata.decodeDelimited = function decodeDelimited(reader) { + InitializeHubRequest.decodeDelimited = function decodeDelimited(reader) { if (!(reader instanceof $Reader)) reader = new $Reader(reader); return this.decode(reader, reader.uint32()); }; /** - * Verifies an OperationMetadata message. + * Verifies an InitializeHubRequest message. * @function verify - * @memberof google.cloud.gkehub.v1beta1.OperationMetadata + * @memberof google.cloud.gkehub.v1alpha2.InitializeHubRequest * @static * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - OperationMetadata.verify = function verify(message) { + InitializeHubRequest.verify = function verify(message) { if (typeof message !== "object" || message === null) return "object expected"; - if (message.createTime != null && message.hasOwnProperty("createTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.createTime); - if (error) - return "createTime." + error; - } - if (message.endTime != null && message.hasOwnProperty("endTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.endTime); - if (error) - return "endTime." + error; - } - if (message.target != null && message.hasOwnProperty("target")) - if (!$util.isString(message.target)) - return "target: string expected"; - if (message.verb != null && message.hasOwnProperty("verb")) - if (!$util.isString(message.verb)) - return "verb: string expected"; - if (message.statusDetail != null && message.hasOwnProperty("statusDetail")) - if (!$util.isString(message.statusDetail)) - return "statusDetail: string expected"; - if (message.cancelRequested != null && message.hasOwnProperty("cancelRequested")) - if (typeof message.cancelRequested !== "boolean") - return "cancelRequested: boolean expected"; - if (message.apiVersion != null && message.hasOwnProperty("apiVersion")) - if (!$util.isString(message.apiVersion)) - return "apiVersion: string expected"; + if (message.project != null && message.hasOwnProperty("project")) + if (!$util.isString(message.project)) + return "project: string expected"; return null; }; /** - * Creates an OperationMetadata message from a plain object. Also converts values to their respective internal types. + * Creates an InitializeHubRequest message from a plain object. Also converts values to their respective internal types. * @function fromObject - * @memberof google.cloud.gkehub.v1beta1.OperationMetadata + * @memberof google.cloud.gkehub.v1alpha2.InitializeHubRequest * @static * @param {Object.} object Plain object - * @returns {google.cloud.gkehub.v1beta1.OperationMetadata} OperationMetadata + * @returns {google.cloud.gkehub.v1alpha2.InitializeHubRequest} InitializeHubRequest */ - OperationMetadata.fromObject = function fromObject(object) { - if (object instanceof $root.google.cloud.gkehub.v1beta1.OperationMetadata) + InitializeHubRequest.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.v1alpha2.InitializeHubRequest) return object; - var message = new $root.google.cloud.gkehub.v1beta1.OperationMetadata(); - if (object.createTime != null) { - if (typeof object.createTime !== "object") - throw TypeError(".google.cloud.gkehub.v1beta1.OperationMetadata.createTime: object expected"); - message.createTime = $root.google.protobuf.Timestamp.fromObject(object.createTime); - } - if (object.endTime != null) { - if (typeof object.endTime !== "object") - throw TypeError(".google.cloud.gkehub.v1beta1.OperationMetadata.endTime: object expected"); - message.endTime = $root.google.protobuf.Timestamp.fromObject(object.endTime); - } - if (object.target != null) - message.target = String(object.target); - if (object.verb != null) - message.verb = String(object.verb); - if (object.statusDetail != null) - message.statusDetail = String(object.statusDetail); - if (object.cancelRequested != null) - message.cancelRequested = Boolean(object.cancelRequested); - if (object.apiVersion != null) - message.apiVersion = String(object.apiVersion); + var message = new $root.google.cloud.gkehub.v1alpha2.InitializeHubRequest(); + if (object.project != null) + message.project = String(object.project); return message; }; /** - * Creates a plain object from an OperationMetadata message. Also converts values to other types if specified. + * Creates a plain object from an InitializeHubRequest message. Also converts values to other types if specified. * @function toObject - * @memberof google.cloud.gkehub.v1beta1.OperationMetadata + * @memberof google.cloud.gkehub.v1alpha2.InitializeHubRequest * @static - * @param {google.cloud.gkehub.v1beta1.OperationMetadata} message OperationMetadata + * @param {google.cloud.gkehub.v1alpha2.InitializeHubRequest} message InitializeHubRequest * @param {$protobuf.IConversionOptions} [options] Conversion options * @returns {Object.} Plain object */ - OperationMetadata.toObject = function toObject(message, options) { + InitializeHubRequest.toObject = function toObject(message, options) { if (!options) options = {}; var object = {}; - if (options.defaults) { - object.createTime = null; - object.endTime = null; - object.target = ""; - object.verb = ""; - object.statusDetail = ""; - object.cancelRequested = false; - object.apiVersion = ""; - } - if (message.createTime != null && message.hasOwnProperty("createTime")) - object.createTime = $root.google.protobuf.Timestamp.toObject(message.createTime, options); - if (message.endTime != null && message.hasOwnProperty("endTime")) - object.endTime = $root.google.protobuf.Timestamp.toObject(message.endTime, options); - if (message.target != null && message.hasOwnProperty("target")) - object.target = message.target; - if (message.verb != null && message.hasOwnProperty("verb")) - object.verb = message.verb; - if (message.statusDetail != null && message.hasOwnProperty("statusDetail")) - object.statusDetail = message.statusDetail; - if (message.cancelRequested != null && message.hasOwnProperty("cancelRequested")) - object.cancelRequested = message.cancelRequested; - if (message.apiVersion != null && message.hasOwnProperty("apiVersion")) - object.apiVersion = message.apiVersion; - return object; - }; - - /** - * Converts this OperationMetadata to JSON. - * @function toJSON - * @memberof google.cloud.gkehub.v1beta1.OperationMetadata - * @instance - * @returns {Object.} JSON object - */ - OperationMetadata.prototype.toJSON = function toJSON() { - return this.constructor.toObject(this, $protobuf.util.toJSONOptions); - }; - - return OperationMetadata; - })(); - - return v1beta1; - })(); - - return gkehub; - })(); - - return cloud; - })(); - - google.api = (function() { - - /** - * Namespace api. - * @memberof google - * @namespace - */ - var api = {}; - - api.Http = (function() { - - /** - * Properties of a Http. - * @memberof google.api - * @interface IHttp - * @property {Array.|null} [rules] Http rules - * @property {boolean|null} [fullyDecodeReservedExpansion] Http fullyDecodeReservedExpansion - */ - - /** - * Constructs a new Http. - * @memberof google.api - * @classdesc Represents a Http. - * @implements IHttp - * @constructor - * @param {google.api.IHttp=} [properties] Properties to set - */ - function Http(properties) { - this.rules = []; - 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]]; - } - - /** - * Http rules. - * @member {Array.} rules - * @memberof google.api.Http - * @instance - */ - Http.prototype.rules = $util.emptyArray; - - /** - * Http fullyDecodeReservedExpansion. - * @member {boolean} fullyDecodeReservedExpansion - * @memberof google.api.Http - * @instance - */ - Http.prototype.fullyDecodeReservedExpansion = false; + if (options.defaults) + object.project = ""; + if (message.project != null && message.hasOwnProperty("project")) + object.project = message.project; + return object; + }; - /** - * Creates a new Http instance using the specified properties. - * @function create - * @memberof google.api.Http - * @static - * @param {google.api.IHttp=} [properties] Properties to set - * @returns {google.api.Http} Http instance - */ - Http.create = function create(properties) { - return new Http(properties); - }; + /** + * Converts this InitializeHubRequest to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.v1alpha2.InitializeHubRequest + * @instance + * @returns {Object.} JSON object + */ + InitializeHubRequest.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; - /** - * Encodes the specified Http message. Does not implicitly {@link google.api.Http.verify|verify} messages. - * @function encode - * @memberof google.api.Http - * @static - * @param {google.api.IHttp} message Http message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - Http.encode = function encode(message, writer) { - if (!writer) - writer = $Writer.create(); - if (message.rules != null && message.rules.length) - for (var i = 0; i < message.rules.length; ++i) - $root.google.api.HttpRule.encode(message.rules[i], writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim(); - if (message.fullyDecodeReservedExpansion != null && Object.hasOwnProperty.call(message, "fullyDecodeReservedExpansion")) - writer.uint32(/* id 2, wireType 0 =*/16).bool(message.fullyDecodeReservedExpansion); - return writer; - }; + return InitializeHubRequest; + })(); - /** - * Encodes the specified Http message, length delimited. Does not implicitly {@link google.api.Http.verify|verify} messages. - * @function encodeDelimited - * @memberof google.api.Http - * @static - * @param {google.api.IHttp} message Http message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - Http.encodeDelimited = function encodeDelimited(message, writer) { - return this.encode(message, writer).ldelim(); - }; + v1alpha2.InitializeHubResponse = (function() { - /** - * Decodes a Http message from the specified reader or buffer. - * @function decode - * @memberof google.api.Http - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @param {number} [length] Message length if known beforehand - * @returns {google.api.Http} Http - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - Http.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.api.Http(); - while (reader.pos < end) { - var tag = reader.uint32(); - switch (tag >>> 3) { - case 1: - if (!(message.rules && message.rules.length)) - message.rules = []; - message.rules.push($root.google.api.HttpRule.decode(reader, reader.uint32())); - break; - case 2: - message.fullyDecodeReservedExpansion = reader.bool(); - break; - default: - reader.skipType(tag & 7); - break; + /** + * Properties of an InitializeHubResponse. + * @memberof google.cloud.gkehub.v1alpha2 + * @interface IInitializeHubResponse + * @property {string|null} [serviceIdentity] InitializeHubResponse serviceIdentity + * @property {string|null} [workloadIdentityPool] InitializeHubResponse workloadIdentityPool + */ + + /** + * Constructs a new InitializeHubResponse. + * @memberof google.cloud.gkehub.v1alpha2 + * @classdesc Represents an InitializeHubResponse. + * @implements IInitializeHubResponse + * @constructor + * @param {google.cloud.gkehub.v1alpha2.IInitializeHubResponse=} [properties] Properties to set + */ + function InitializeHubResponse(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]]; } - } - return message; - }; - /** - * Decodes a Http message from the specified reader or buffer, length delimited. - * @function decodeDelimited - * @memberof google.api.Http - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {google.api.Http} Http - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - Http.decodeDelimited = function decodeDelimited(reader) { - if (!(reader instanceof $Reader)) - reader = new $Reader(reader); - return this.decode(reader, reader.uint32()); - }; + /** + * InitializeHubResponse serviceIdentity. + * @member {string} serviceIdentity + * @memberof google.cloud.gkehub.v1alpha2.InitializeHubResponse + * @instance + */ + InitializeHubResponse.prototype.serviceIdentity = ""; - /** - * Verifies a Http message. - * @function verify - * @memberof google.api.Http - * @static - * @param {Object.} message Plain object to verify - * @returns {string|null} `null` if valid, otherwise the reason why it is not - */ - Http.verify = function verify(message) { - if (typeof message !== "object" || message === null) - return "object expected"; - if (message.rules != null && message.hasOwnProperty("rules")) { - if (!Array.isArray(message.rules)) - return "rules: array expected"; - for (var i = 0; i < message.rules.length; ++i) { - var error = $root.google.api.HttpRule.verify(message.rules[i]); - if (error) - return "rules." + error; - } - } - if (message.fullyDecodeReservedExpansion != null && message.hasOwnProperty("fullyDecodeReservedExpansion")) - if (typeof message.fullyDecodeReservedExpansion !== "boolean") - return "fullyDecodeReservedExpansion: boolean expected"; - return null; - }; + /** + * InitializeHubResponse workloadIdentityPool. + * @member {string} workloadIdentityPool + * @memberof google.cloud.gkehub.v1alpha2.InitializeHubResponse + * @instance + */ + InitializeHubResponse.prototype.workloadIdentityPool = ""; - /** - * Creates a Http message from a plain object. Also converts values to their respective internal types. - * @function fromObject - * @memberof google.api.Http - * @static - * @param {Object.} object Plain object - * @returns {google.api.Http} Http - */ - Http.fromObject = function fromObject(object) { - if (object instanceof $root.google.api.Http) - return object; - var message = new $root.google.api.Http(); - if (object.rules) { - if (!Array.isArray(object.rules)) - throw TypeError(".google.api.Http.rules: array expected"); - message.rules = []; - for (var i = 0; i < object.rules.length; ++i) { - if (typeof object.rules[i] !== "object") - throw TypeError(".google.api.Http.rules: object expected"); - message.rules[i] = $root.google.api.HttpRule.fromObject(object.rules[i]); - } - } - if (object.fullyDecodeReservedExpansion != null) - message.fullyDecodeReservedExpansion = Boolean(object.fullyDecodeReservedExpansion); - return message; - }; + /** + * Creates a new InitializeHubResponse instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.v1alpha2.InitializeHubResponse + * @static + * @param {google.cloud.gkehub.v1alpha2.IInitializeHubResponse=} [properties] Properties to set + * @returns {google.cloud.gkehub.v1alpha2.InitializeHubResponse} InitializeHubResponse instance + */ + InitializeHubResponse.create = function create(properties) { + return new InitializeHubResponse(properties); + }; - /** - * Creates a plain object from a Http message. Also converts values to other types if specified. - * @function toObject - * @memberof google.api.Http - * @static - * @param {google.api.Http} message Http - * @param {$protobuf.IConversionOptions} [options] Conversion options - * @returns {Object.} Plain object - */ - Http.toObject = function toObject(message, options) { - if (!options) - options = {}; - var object = {}; - if (options.arrays || options.defaults) - object.rules = []; - if (options.defaults) - object.fullyDecodeReservedExpansion = false; - if (message.rules && message.rules.length) { - object.rules = []; - for (var j = 0; j < message.rules.length; ++j) - object.rules[j] = $root.google.api.HttpRule.toObject(message.rules[j], options); - } - if (message.fullyDecodeReservedExpansion != null && message.hasOwnProperty("fullyDecodeReservedExpansion")) - object.fullyDecodeReservedExpansion = message.fullyDecodeReservedExpansion; - return object; - }; + /** + * Encodes the specified InitializeHubResponse message. Does not implicitly {@link google.cloud.gkehub.v1alpha2.InitializeHubResponse.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.v1alpha2.InitializeHubResponse + * @static + * @param {google.cloud.gkehub.v1alpha2.IInitializeHubResponse} message InitializeHubResponse message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + InitializeHubResponse.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.serviceIdentity != null && Object.hasOwnProperty.call(message, "serviceIdentity")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.serviceIdentity); + if (message.workloadIdentityPool != null && Object.hasOwnProperty.call(message, "workloadIdentityPool")) + writer.uint32(/* id 2, wireType 2 =*/18).string(message.workloadIdentityPool); + return writer; + }; + + /** + * Encodes the specified InitializeHubResponse message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1alpha2.InitializeHubResponse.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.v1alpha2.InitializeHubResponse + * @static + * @param {google.cloud.gkehub.v1alpha2.IInitializeHubResponse} message InitializeHubResponse message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + InitializeHubResponse.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes an InitializeHubResponse message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.v1alpha2.InitializeHubResponse + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.v1alpha2.InitializeHubResponse} InitializeHubResponse + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + InitializeHubResponse.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.v1alpha2.InitializeHubResponse(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.serviceIdentity = reader.string(); + break; + case 2: + message.workloadIdentityPool = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes an InitializeHubResponse message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.v1alpha2.InitializeHubResponse + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.v1alpha2.InitializeHubResponse} InitializeHubResponse + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + InitializeHubResponse.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; - /** - * Converts this Http to JSON. - * @function toJSON - * @memberof google.api.Http - * @instance - * @returns {Object.} JSON object - */ - Http.prototype.toJSON = function toJSON() { - return this.constructor.toObject(this, $protobuf.util.toJSONOptions); - }; + /** + * Verifies an InitializeHubResponse message. + * @function verify + * @memberof google.cloud.gkehub.v1alpha2.InitializeHubResponse + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + InitializeHubResponse.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.serviceIdentity != null && message.hasOwnProperty("serviceIdentity")) + if (!$util.isString(message.serviceIdentity)) + return "serviceIdentity: string expected"; + if (message.workloadIdentityPool != null && message.hasOwnProperty("workloadIdentityPool")) + if (!$util.isString(message.workloadIdentityPool)) + return "workloadIdentityPool: string expected"; + return null; + }; - return Http; - })(); + /** + * Creates an InitializeHubResponse message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.v1alpha2.InitializeHubResponse + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.v1alpha2.InitializeHubResponse} InitializeHubResponse + */ + InitializeHubResponse.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.v1alpha2.InitializeHubResponse) + return object; + var message = new $root.google.cloud.gkehub.v1alpha2.InitializeHubResponse(); + if (object.serviceIdentity != null) + message.serviceIdentity = String(object.serviceIdentity); + if (object.workloadIdentityPool != null) + message.workloadIdentityPool = String(object.workloadIdentityPool); + return message; + }; - api.HttpRule = (function() { + /** + * Creates a plain object from an InitializeHubResponse message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.v1alpha2.InitializeHubResponse + * @static + * @param {google.cloud.gkehub.v1alpha2.InitializeHubResponse} message InitializeHubResponse + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + InitializeHubResponse.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.serviceIdentity = ""; + object.workloadIdentityPool = ""; + } + if (message.serviceIdentity != null && message.hasOwnProperty("serviceIdentity")) + object.serviceIdentity = message.serviceIdentity; + if (message.workloadIdentityPool != null && message.hasOwnProperty("workloadIdentityPool")) + object.workloadIdentityPool = message.workloadIdentityPool; + return object; + }; - /** - * Properties of a HttpRule. - * @memberof google.api - * @interface IHttpRule - * @property {string|null} [selector] HttpRule selector - * @property {string|null} [get] HttpRule get - * @property {string|null} [put] HttpRule put - * @property {string|null} [post] HttpRule post - * @property {string|null} ["delete"] HttpRule delete - * @property {string|null} [patch] HttpRule patch - * @property {google.api.ICustomHttpPattern|null} [custom] HttpRule custom - * @property {string|null} [body] HttpRule body - * @property {string|null} [responseBody] HttpRule responseBody - * @property {Array.|null} [additionalBindings] HttpRule additionalBindings - */ + /** + * Converts this InitializeHubResponse to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.v1alpha2.InitializeHubResponse + * @instance + * @returns {Object.} JSON object + */ + InitializeHubResponse.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; - /** - * Constructs a new HttpRule. - * @memberof google.api - * @classdesc Represents a HttpRule. - * @implements IHttpRule - * @constructor - * @param {google.api.IHttpRule=} [properties] Properties to set - */ - function HttpRule(properties) { - this.additionalBindings = []; - 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]]; - } + return InitializeHubResponse; + })(); - /** - * HttpRule selector. - * @member {string} selector - * @memberof google.api.HttpRule - * @instance - */ - HttpRule.prototype.selector = ""; + v1alpha2.OperationMetadata = (function() { - /** - * HttpRule get. - * @member {string|null|undefined} get - * @memberof google.api.HttpRule - * @instance - */ - HttpRule.prototype.get = null; + /** + * Properties of an OperationMetadata. + * @memberof google.cloud.gkehub.v1alpha2 + * @interface IOperationMetadata + * @property {google.protobuf.ITimestamp|null} [createTime] OperationMetadata createTime + * @property {google.protobuf.ITimestamp|null} [endTime] OperationMetadata endTime + * @property {string|null} [target] OperationMetadata target + * @property {string|null} [verb] OperationMetadata verb + * @property {string|null} [statusDetail] OperationMetadata statusDetail + * @property {boolean|null} [cancelRequested] OperationMetadata cancelRequested + * @property {string|null} [apiVersion] OperationMetadata apiVersion + */ - /** - * HttpRule put. - * @member {string|null|undefined} put - * @memberof google.api.HttpRule - * @instance - */ - HttpRule.prototype.put = null; + /** + * Constructs a new OperationMetadata. + * @memberof google.cloud.gkehub.v1alpha2 + * @classdesc Represents an OperationMetadata. + * @implements IOperationMetadata + * @constructor + * @param {google.cloud.gkehub.v1alpha2.IOperationMetadata=} [properties] Properties to set + */ + function OperationMetadata(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]]; + } - /** - * HttpRule post. - * @member {string|null|undefined} post - * @memberof google.api.HttpRule - * @instance - */ - HttpRule.prototype.post = null; + /** + * OperationMetadata createTime. + * @member {google.protobuf.ITimestamp|null|undefined} createTime + * @memberof google.cloud.gkehub.v1alpha2.OperationMetadata + * @instance + */ + OperationMetadata.prototype.createTime = null; - /** - * HttpRule delete. - * @member {string|null|undefined} delete - * @memberof google.api.HttpRule - * @instance - */ - HttpRule.prototype["delete"] = null; + /** + * OperationMetadata endTime. + * @member {google.protobuf.ITimestamp|null|undefined} endTime + * @memberof google.cloud.gkehub.v1alpha2.OperationMetadata + * @instance + */ + OperationMetadata.prototype.endTime = null; - /** - * HttpRule patch. - * @member {string|null|undefined} patch - * @memberof google.api.HttpRule - * @instance - */ - HttpRule.prototype.patch = null; + /** + * OperationMetadata target. + * @member {string} target + * @memberof google.cloud.gkehub.v1alpha2.OperationMetadata + * @instance + */ + OperationMetadata.prototype.target = ""; - /** - * HttpRule custom. - * @member {google.api.ICustomHttpPattern|null|undefined} custom - * @memberof google.api.HttpRule - * @instance - */ - HttpRule.prototype.custom = null; + /** + * OperationMetadata verb. + * @member {string} verb + * @memberof google.cloud.gkehub.v1alpha2.OperationMetadata + * @instance + */ + OperationMetadata.prototype.verb = ""; - /** - * HttpRule body. - * @member {string} body - * @memberof google.api.HttpRule - * @instance - */ - HttpRule.prototype.body = ""; + /** + * OperationMetadata statusDetail. + * @member {string} statusDetail + * @memberof google.cloud.gkehub.v1alpha2.OperationMetadata + * @instance + */ + OperationMetadata.prototype.statusDetail = ""; - /** - * HttpRule responseBody. - * @member {string} responseBody - * @memberof google.api.HttpRule - * @instance - */ - HttpRule.prototype.responseBody = ""; + /** + * OperationMetadata cancelRequested. + * @member {boolean} cancelRequested + * @memberof google.cloud.gkehub.v1alpha2.OperationMetadata + * @instance + */ + OperationMetadata.prototype.cancelRequested = false; - /** - * HttpRule additionalBindings. - * @member {Array.} additionalBindings - * @memberof google.api.HttpRule - * @instance - */ - HttpRule.prototype.additionalBindings = $util.emptyArray; + /** + * OperationMetadata apiVersion. + * @member {string} apiVersion + * @memberof google.cloud.gkehub.v1alpha2.OperationMetadata + * @instance + */ + OperationMetadata.prototype.apiVersion = ""; - // OneOf field names bound to virtual getters and setters - var $oneOfFields; + /** + * Creates a new OperationMetadata instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.v1alpha2.OperationMetadata + * @static + * @param {google.cloud.gkehub.v1alpha2.IOperationMetadata=} [properties] Properties to set + * @returns {google.cloud.gkehub.v1alpha2.OperationMetadata} OperationMetadata instance + */ + OperationMetadata.create = function create(properties) { + return new OperationMetadata(properties); + }; + + /** + * Encodes the specified OperationMetadata message. Does not implicitly {@link google.cloud.gkehub.v1alpha2.OperationMetadata.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.v1alpha2.OperationMetadata + * @static + * @param {google.cloud.gkehub.v1alpha2.IOperationMetadata} message OperationMetadata message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + OperationMetadata.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.createTime != null && Object.hasOwnProperty.call(message, "createTime")) + $root.google.protobuf.Timestamp.encode(message.createTime, writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim(); + if (message.endTime != null && Object.hasOwnProperty.call(message, "endTime")) + $root.google.protobuf.Timestamp.encode(message.endTime, writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim(); + if (message.target != null && Object.hasOwnProperty.call(message, "target")) + writer.uint32(/* id 3, wireType 2 =*/26).string(message.target); + if (message.verb != null && Object.hasOwnProperty.call(message, "verb")) + writer.uint32(/* id 4, wireType 2 =*/34).string(message.verb); + if (message.statusDetail != null && Object.hasOwnProperty.call(message, "statusDetail")) + writer.uint32(/* id 5, wireType 2 =*/42).string(message.statusDetail); + if (message.cancelRequested != null && Object.hasOwnProperty.call(message, "cancelRequested")) + writer.uint32(/* id 6, wireType 0 =*/48).bool(message.cancelRequested); + if (message.apiVersion != null && Object.hasOwnProperty.call(message, "apiVersion")) + writer.uint32(/* id 7, wireType 2 =*/58).string(message.apiVersion); + return writer; + }; - /** - * HttpRule pattern. - * @member {"get"|"put"|"post"|"delete"|"patch"|"custom"|undefined} pattern - * @memberof google.api.HttpRule - * @instance - */ - Object.defineProperty(HttpRule.prototype, "pattern", { - get: $util.oneOfGetter($oneOfFields = ["get", "put", "post", "delete", "patch", "custom"]), - set: $util.oneOfSetter($oneOfFields) - }); + /** + * Encodes the specified OperationMetadata message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1alpha2.OperationMetadata.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.v1alpha2.OperationMetadata + * @static + * @param {google.cloud.gkehub.v1alpha2.IOperationMetadata} message OperationMetadata message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + OperationMetadata.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; - /** - * Creates a new HttpRule instance using the specified properties. - * @function create - * @memberof google.api.HttpRule - * @static - * @param {google.api.IHttpRule=} [properties] Properties to set - * @returns {google.api.HttpRule} HttpRule instance - */ - HttpRule.create = function create(properties) { - return new HttpRule(properties); - }; + /** + * Decodes an OperationMetadata message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.v1alpha2.OperationMetadata + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.v1alpha2.OperationMetadata} OperationMetadata + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + OperationMetadata.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.v1alpha2.OperationMetadata(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.createTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + break; + case 2: + message.endTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + break; + case 3: + message.target = reader.string(); + break; + case 4: + message.verb = reader.string(); + break; + case 5: + message.statusDetail = reader.string(); + break; + case 6: + message.cancelRequested = reader.bool(); + break; + case 7: + message.apiVersion = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; - /** - * Encodes the specified HttpRule message. Does not implicitly {@link google.api.HttpRule.verify|verify} messages. - * @function encode - * @memberof google.api.HttpRule - * @static - * @param {google.api.IHttpRule} message HttpRule message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - HttpRule.encode = function encode(message, writer) { - if (!writer) - writer = $Writer.create(); - if (message.selector != null && Object.hasOwnProperty.call(message, "selector")) - writer.uint32(/* id 1, wireType 2 =*/10).string(message.selector); - if (message.get != null && Object.hasOwnProperty.call(message, "get")) - writer.uint32(/* id 2, wireType 2 =*/18).string(message.get); - if (message.put != null && Object.hasOwnProperty.call(message, "put")) - writer.uint32(/* id 3, wireType 2 =*/26).string(message.put); - if (message.post != null && Object.hasOwnProperty.call(message, "post")) - writer.uint32(/* id 4, wireType 2 =*/34).string(message.post); - if (message["delete"] != null && Object.hasOwnProperty.call(message, "delete")) - writer.uint32(/* id 5, wireType 2 =*/42).string(message["delete"]); - if (message.patch != null && Object.hasOwnProperty.call(message, "patch")) - writer.uint32(/* id 6, wireType 2 =*/50).string(message.patch); - if (message.body != null && Object.hasOwnProperty.call(message, "body")) - writer.uint32(/* id 7, wireType 2 =*/58).string(message.body); - if (message.custom != null && Object.hasOwnProperty.call(message, "custom")) - $root.google.api.CustomHttpPattern.encode(message.custom, writer.uint32(/* id 8, wireType 2 =*/66).fork()).ldelim(); - if (message.additionalBindings != null && message.additionalBindings.length) - for (var i = 0; i < message.additionalBindings.length; ++i) - $root.google.api.HttpRule.encode(message.additionalBindings[i], writer.uint32(/* id 11, wireType 2 =*/90).fork()).ldelim(); - if (message.responseBody != null && Object.hasOwnProperty.call(message, "responseBody")) - writer.uint32(/* id 12, wireType 2 =*/98).string(message.responseBody); - return writer; - }; + /** + * Decodes an OperationMetadata message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.v1alpha2.OperationMetadata + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.v1alpha2.OperationMetadata} OperationMetadata + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + OperationMetadata.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; - /** - * Encodes the specified HttpRule message, length delimited. Does not implicitly {@link google.api.HttpRule.verify|verify} messages. - * @function encodeDelimited - * @memberof google.api.HttpRule - * @static - * @param {google.api.IHttpRule} message HttpRule message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - HttpRule.encodeDelimited = function encodeDelimited(message, writer) { - return this.encode(message, writer).ldelim(); - }; + /** + * Verifies an OperationMetadata message. + * @function verify + * @memberof google.cloud.gkehub.v1alpha2.OperationMetadata + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + OperationMetadata.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.createTime != null && message.hasOwnProperty("createTime")) { + var error = $root.google.protobuf.Timestamp.verify(message.createTime); + if (error) + return "createTime." + error; + } + if (message.endTime != null && message.hasOwnProperty("endTime")) { + var error = $root.google.protobuf.Timestamp.verify(message.endTime); + if (error) + return "endTime." + error; + } + if (message.target != null && message.hasOwnProperty("target")) + if (!$util.isString(message.target)) + return "target: string expected"; + if (message.verb != null && message.hasOwnProperty("verb")) + if (!$util.isString(message.verb)) + return "verb: string expected"; + if (message.statusDetail != null && message.hasOwnProperty("statusDetail")) + if (!$util.isString(message.statusDetail)) + return "statusDetail: string expected"; + if (message.cancelRequested != null && message.hasOwnProperty("cancelRequested")) + if (typeof message.cancelRequested !== "boolean") + return "cancelRequested: boolean expected"; + if (message.apiVersion != null && message.hasOwnProperty("apiVersion")) + if (!$util.isString(message.apiVersion)) + return "apiVersion: string expected"; + return null; + }; - /** - * Decodes a HttpRule message from the specified reader or buffer. - * @function decode - * @memberof google.api.HttpRule - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @param {number} [length] Message length if known beforehand - * @returns {google.api.HttpRule} HttpRule - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - HttpRule.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.api.HttpRule(); - while (reader.pos < end) { - var tag = reader.uint32(); - switch (tag >>> 3) { - case 1: - message.selector = reader.string(); - break; - case 2: - message.get = reader.string(); - break; - case 3: - message.put = reader.string(); - break; - case 4: - message.post = reader.string(); - break; - case 5: - message["delete"] = reader.string(); - break; - case 6: - message.patch = reader.string(); - break; - case 8: - message.custom = $root.google.api.CustomHttpPattern.decode(reader, reader.uint32()); - break; - case 7: - message.body = reader.string(); - break; - case 12: - message.responseBody = reader.string(); - break; - case 11: - if (!(message.additionalBindings && message.additionalBindings.length)) - message.additionalBindings = []; - message.additionalBindings.push($root.google.api.HttpRule.decode(reader, reader.uint32())); - break; - default: - reader.skipType(tag & 7); - break; - } - } - return message; - }; + /** + * Creates an OperationMetadata message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.v1alpha2.OperationMetadata + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.v1alpha2.OperationMetadata} OperationMetadata + */ + OperationMetadata.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.v1alpha2.OperationMetadata) + return object; + var message = new $root.google.cloud.gkehub.v1alpha2.OperationMetadata(); + if (object.createTime != null) { + if (typeof object.createTime !== "object") + throw TypeError(".google.cloud.gkehub.v1alpha2.OperationMetadata.createTime: object expected"); + message.createTime = $root.google.protobuf.Timestamp.fromObject(object.createTime); + } + if (object.endTime != null) { + if (typeof object.endTime !== "object") + throw TypeError(".google.cloud.gkehub.v1alpha2.OperationMetadata.endTime: object expected"); + message.endTime = $root.google.protobuf.Timestamp.fromObject(object.endTime); + } + if (object.target != null) + message.target = String(object.target); + if (object.verb != null) + message.verb = String(object.verb); + if (object.statusDetail != null) + message.statusDetail = String(object.statusDetail); + if (object.cancelRequested != null) + message.cancelRequested = Boolean(object.cancelRequested); + if (object.apiVersion != null) + message.apiVersion = String(object.apiVersion); + return message; + }; - /** - * Decodes a HttpRule message from the specified reader or buffer, length delimited. - * @function decodeDelimited - * @memberof google.api.HttpRule - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {google.api.HttpRule} HttpRule - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - HttpRule.decodeDelimited = function decodeDelimited(reader) { - if (!(reader instanceof $Reader)) - reader = new $Reader(reader); - return this.decode(reader, reader.uint32()); - }; + /** + * Creates a plain object from an OperationMetadata message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.v1alpha2.OperationMetadata + * @static + * @param {google.cloud.gkehub.v1alpha2.OperationMetadata} message OperationMetadata + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + OperationMetadata.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.createTime = null; + object.endTime = null; + object.target = ""; + object.verb = ""; + object.statusDetail = ""; + object.cancelRequested = false; + object.apiVersion = ""; + } + if (message.createTime != null && message.hasOwnProperty("createTime")) + object.createTime = $root.google.protobuf.Timestamp.toObject(message.createTime, options); + if (message.endTime != null && message.hasOwnProperty("endTime")) + object.endTime = $root.google.protobuf.Timestamp.toObject(message.endTime, options); + if (message.target != null && message.hasOwnProperty("target")) + object.target = message.target; + if (message.verb != null && message.hasOwnProperty("verb")) + object.verb = message.verb; + if (message.statusDetail != null && message.hasOwnProperty("statusDetail")) + object.statusDetail = message.statusDetail; + if (message.cancelRequested != null && message.hasOwnProperty("cancelRequested")) + object.cancelRequested = message.cancelRequested; + if (message.apiVersion != null && message.hasOwnProperty("apiVersion")) + object.apiVersion = message.apiVersion; + return object; + }; - /** - * Verifies a HttpRule message. - * @function verify - * @memberof google.api.HttpRule - * @static - * @param {Object.} message Plain object to verify - * @returns {string|null} `null` if valid, otherwise the reason why it is not - */ - HttpRule.verify = function verify(message) { - if (typeof message !== "object" || message === null) - return "object expected"; - var properties = {}; - if (message.selector != null && message.hasOwnProperty("selector")) - if (!$util.isString(message.selector)) - return "selector: string expected"; - if (message.get != null && message.hasOwnProperty("get")) { - properties.pattern = 1; - if (!$util.isString(message.get)) - return "get: string expected"; - } - if (message.put != null && message.hasOwnProperty("put")) { - if (properties.pattern === 1) - return "pattern: multiple values"; - properties.pattern = 1; - if (!$util.isString(message.put)) - return "put: string expected"; - } - if (message.post != null && message.hasOwnProperty("post")) { - if (properties.pattern === 1) - return "pattern: multiple values"; - properties.pattern = 1; - if (!$util.isString(message.post)) - return "post: string expected"; - } - if (message["delete"] != null && message.hasOwnProperty("delete")) { - if (properties.pattern === 1) - return "pattern: multiple values"; - properties.pattern = 1; - if (!$util.isString(message["delete"])) - return "delete: string expected"; - } - if (message.patch != null && message.hasOwnProperty("patch")) { - if (properties.pattern === 1) - return "pattern: multiple values"; - properties.pattern = 1; - if (!$util.isString(message.patch)) - return "patch: string expected"; - } - if (message.custom != null && message.hasOwnProperty("custom")) { - if (properties.pattern === 1) - return "pattern: multiple values"; - properties.pattern = 1; - { - var error = $root.google.api.CustomHttpPattern.verify(message.custom); - if (error) - return "custom." + error; - } - } - if (message.body != null && message.hasOwnProperty("body")) - if (!$util.isString(message.body)) - return "body: string expected"; - if (message.responseBody != null && message.hasOwnProperty("responseBody")) - if (!$util.isString(message.responseBody)) - return "responseBody: string expected"; - if (message.additionalBindings != null && message.hasOwnProperty("additionalBindings")) { - if (!Array.isArray(message.additionalBindings)) - return "additionalBindings: array expected"; - for (var i = 0; i < message.additionalBindings.length; ++i) { - var error = $root.google.api.HttpRule.verify(message.additionalBindings[i]); - if (error) - return "additionalBindings." + error; - } - } - return null; - }; + /** + * Converts this OperationMetadata to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.v1alpha2.OperationMetadata + * @instance + * @returns {Object.} JSON object + */ + OperationMetadata.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; - /** - * Creates a HttpRule message from a plain object. Also converts values to their respective internal types. - * @function fromObject - * @memberof google.api.HttpRule - * @static - * @param {Object.} object Plain object - * @returns {google.api.HttpRule} HttpRule - */ - HttpRule.fromObject = function fromObject(object) { - if (object instanceof $root.google.api.HttpRule) - return object; - var message = new $root.google.api.HttpRule(); - if (object.selector != null) - message.selector = String(object.selector); - if (object.get != null) - message.get = String(object.get); - if (object.put != null) - message.put = String(object.put); - if (object.post != null) - message.post = String(object.post); - if (object["delete"] != null) - message["delete"] = String(object["delete"]); - if (object.patch != null) - message.patch = String(object.patch); - if (object.custom != null) { - if (typeof object.custom !== "object") - throw TypeError(".google.api.HttpRule.custom: object expected"); - message.custom = $root.google.api.CustomHttpPattern.fromObject(object.custom); - } - if (object.body != null) - message.body = String(object.body); - if (object.responseBody != null) - message.responseBody = String(object.responseBody); - if (object.additionalBindings) { - if (!Array.isArray(object.additionalBindings)) - throw TypeError(".google.api.HttpRule.additionalBindings: array expected"); - message.additionalBindings = []; - for (var i = 0; i < object.additionalBindings.length; ++i) { - if (typeof object.additionalBindings[i] !== "object") - throw TypeError(".google.api.HttpRule.additionalBindings: object expected"); - message.additionalBindings[i] = $root.google.api.HttpRule.fromObject(object.additionalBindings[i]); - } - } - return message; - }; + return OperationMetadata; + })(); - /** - * Creates a plain object from a HttpRule message. Also converts values to other types if specified. - * @function toObject - * @memberof google.api.HttpRule - * @static - * @param {google.api.HttpRule} message HttpRule - * @param {$protobuf.IConversionOptions} [options] Conversion options - * @returns {Object.} Plain object - */ - HttpRule.toObject = function toObject(message, options) { - if (!options) - options = {}; - var object = {}; - if (options.arrays || options.defaults) - object.additionalBindings = []; - if (options.defaults) { - object.selector = ""; - object.body = ""; - object.responseBody = ""; - } - if (message.selector != null && message.hasOwnProperty("selector")) - object.selector = message.selector; - if (message.get != null && message.hasOwnProperty("get")) { - object.get = message.get; - if (options.oneofs) - object.pattern = "get"; - } - if (message.put != null && message.hasOwnProperty("put")) { - object.put = message.put; - if (options.oneofs) - object.pattern = "put"; - } - if (message.post != null && message.hasOwnProperty("post")) { - object.post = message.post; - if (options.oneofs) - object.pattern = "post"; - } - if (message["delete"] != null && message.hasOwnProperty("delete")) { - object["delete"] = message["delete"]; - if (options.oneofs) - object.pattern = "delete"; - } - if (message.patch != null && message.hasOwnProperty("patch")) { - object.patch = message.patch; - if (options.oneofs) - object.pattern = "patch"; - } - if (message.body != null && message.hasOwnProperty("body")) - object.body = message.body; - if (message.custom != null && message.hasOwnProperty("custom")) { - object.custom = $root.google.api.CustomHttpPattern.toObject(message.custom, options); - if (options.oneofs) - object.pattern = "custom"; - } - if (message.additionalBindings && message.additionalBindings.length) { - object.additionalBindings = []; - for (var j = 0; j < message.additionalBindings.length; ++j) - object.additionalBindings[j] = $root.google.api.HttpRule.toObject(message.additionalBindings[j], options); - } - if (message.responseBody != null && message.hasOwnProperty("responseBody")) - object.responseBody = message.responseBody; - return object; - }; + return v1alpha2; + })(); + + gkehub.v1beta = (function() { + + /** + * Namespace v1beta. + * @memberof google.cloud.gkehub + * @namespace + */ + var v1beta = {}; - /** - * Converts this HttpRule to JSON. - * @function toJSON - * @memberof google.api.HttpRule - * @instance - * @returns {Object.} JSON object - */ - HttpRule.prototype.toJSON = function toJSON() { - return this.constructor.toObject(this, $protobuf.util.toJSONOptions); - }; + v1beta.Feature = (function() { - return HttpRule; - })(); + /** + * Properties of a Feature. + * @memberof google.cloud.gkehub.v1beta + * @interface IFeature + * @property {string|null} [name] Feature name + * @property {Object.|null} [labels] Feature labels + * @property {google.cloud.gkehub.v1beta.IFeatureResourceState|null} [resourceState] Feature resourceState + * @property {google.cloud.gkehub.v1beta.ICommonFeatureSpec|null} [spec] Feature spec + * @property {Object.|null} [membershipSpecs] Feature membershipSpecs + * @property {google.cloud.gkehub.v1beta.ICommonFeatureState|null} [state] Feature state + * @property {Object.|null} [membershipStates] Feature membershipStates + * @property {google.protobuf.ITimestamp|null} [createTime] Feature createTime + * @property {google.protobuf.ITimestamp|null} [updateTime] Feature updateTime + * @property {google.protobuf.ITimestamp|null} [deleteTime] Feature deleteTime + */ - api.CustomHttpPattern = (function() { + /** + * Constructs a new Feature. + * @memberof google.cloud.gkehub.v1beta + * @classdesc Represents a Feature. + * @implements IFeature + * @constructor + * @param {google.cloud.gkehub.v1beta.IFeature=} [properties] Properties to set + */ + function Feature(properties) { + this.labels = {}; + this.membershipSpecs = {}; + this.membershipStates = {}; + 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]]; + } - /** - * Properties of a CustomHttpPattern. - * @memberof google.api - * @interface ICustomHttpPattern - * @property {string|null} [kind] CustomHttpPattern kind - * @property {string|null} [path] CustomHttpPattern path - */ + /** + * Feature name. + * @member {string} name + * @memberof google.cloud.gkehub.v1beta.Feature + * @instance + */ + Feature.prototype.name = ""; - /** - * Constructs a new CustomHttpPattern. - * @memberof google.api - * @classdesc Represents a CustomHttpPattern. - * @implements ICustomHttpPattern - * @constructor - * @param {google.api.ICustomHttpPattern=} [properties] Properties to set - */ - function CustomHttpPattern(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]]; - } + /** + * Feature labels. + * @member {Object.} labels + * @memberof google.cloud.gkehub.v1beta.Feature + * @instance + */ + Feature.prototype.labels = $util.emptyObject; - /** - * CustomHttpPattern kind. - * @member {string} kind - * @memberof google.api.CustomHttpPattern - * @instance - */ - CustomHttpPattern.prototype.kind = ""; + /** + * Feature resourceState. + * @member {google.cloud.gkehub.v1beta.IFeatureResourceState|null|undefined} resourceState + * @memberof google.cloud.gkehub.v1beta.Feature + * @instance + */ + Feature.prototype.resourceState = null; - /** - * CustomHttpPattern path. - * @member {string} path - * @memberof google.api.CustomHttpPattern - * @instance - */ - CustomHttpPattern.prototype.path = ""; + /** + * Feature spec. + * @member {google.cloud.gkehub.v1beta.ICommonFeatureSpec|null|undefined} spec + * @memberof google.cloud.gkehub.v1beta.Feature + * @instance + */ + Feature.prototype.spec = null; - /** - * Creates a new CustomHttpPattern instance using the specified properties. - * @function create - * @memberof google.api.CustomHttpPattern - * @static - * @param {google.api.ICustomHttpPattern=} [properties] Properties to set - * @returns {google.api.CustomHttpPattern} CustomHttpPattern instance - */ - CustomHttpPattern.create = function create(properties) { - return new CustomHttpPattern(properties); - }; + /** + * Feature membershipSpecs. + * @member {Object.} membershipSpecs + * @memberof google.cloud.gkehub.v1beta.Feature + * @instance + */ + Feature.prototype.membershipSpecs = $util.emptyObject; - /** - * Encodes the specified CustomHttpPattern message. Does not implicitly {@link google.api.CustomHttpPattern.verify|verify} messages. - * @function encode - * @memberof google.api.CustomHttpPattern - * @static - * @param {google.api.ICustomHttpPattern} message CustomHttpPattern message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - CustomHttpPattern.encode = function encode(message, writer) { - if (!writer) - writer = $Writer.create(); - if (message.kind != null && Object.hasOwnProperty.call(message, "kind")) - writer.uint32(/* id 1, wireType 2 =*/10).string(message.kind); - if (message.path != null && Object.hasOwnProperty.call(message, "path")) - writer.uint32(/* id 2, wireType 2 =*/18).string(message.path); - return writer; - }; + /** + * Feature state. + * @member {google.cloud.gkehub.v1beta.ICommonFeatureState|null|undefined} state + * @memberof google.cloud.gkehub.v1beta.Feature + * @instance + */ + Feature.prototype.state = null; - /** - * Encodes the specified CustomHttpPattern message, length delimited. Does not implicitly {@link google.api.CustomHttpPattern.verify|verify} messages. - * @function encodeDelimited - * @memberof google.api.CustomHttpPattern - * @static - * @param {google.api.ICustomHttpPattern} message CustomHttpPattern message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - CustomHttpPattern.encodeDelimited = function encodeDelimited(message, writer) { - return this.encode(message, writer).ldelim(); - }; + /** + * Feature membershipStates. + * @member {Object.} membershipStates + * @memberof google.cloud.gkehub.v1beta.Feature + * @instance + */ + Feature.prototype.membershipStates = $util.emptyObject; - /** - * Decodes a CustomHttpPattern message from the specified reader or buffer. - * @function decode - * @memberof google.api.CustomHttpPattern - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @param {number} [length] Message length if known beforehand - * @returns {google.api.CustomHttpPattern} CustomHttpPattern - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - CustomHttpPattern.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.api.CustomHttpPattern(); - while (reader.pos < end) { - var tag = reader.uint32(); - switch (tag >>> 3) { - case 1: - message.kind = reader.string(); - break; - case 2: - message.path = reader.string(); - break; - default: - reader.skipType(tag & 7); - break; - } - } - return message; - }; + /** + * Feature createTime. + * @member {google.protobuf.ITimestamp|null|undefined} createTime + * @memberof google.cloud.gkehub.v1beta.Feature + * @instance + */ + Feature.prototype.createTime = null; + + /** + * Feature updateTime. + * @member {google.protobuf.ITimestamp|null|undefined} updateTime + * @memberof google.cloud.gkehub.v1beta.Feature + * @instance + */ + Feature.prototype.updateTime = null; + + /** + * Feature deleteTime. + * @member {google.protobuf.ITimestamp|null|undefined} deleteTime + * @memberof google.cloud.gkehub.v1beta.Feature + * @instance + */ + Feature.prototype.deleteTime = null; + + /** + * Creates a new Feature instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.v1beta.Feature + * @static + * @param {google.cloud.gkehub.v1beta.IFeature=} [properties] Properties to set + * @returns {google.cloud.gkehub.v1beta.Feature} Feature instance + */ + Feature.create = function create(properties) { + return new Feature(properties); + }; + + /** + * Encodes the specified Feature message. Does not implicitly {@link google.cloud.gkehub.v1beta.Feature.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.v1beta.Feature + * @static + * @param {google.cloud.gkehub.v1beta.IFeature} message Feature message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + Feature.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.name != null && Object.hasOwnProperty.call(message, "name")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.name); + if (message.labels != null && Object.hasOwnProperty.call(message, "labels")) + for (var keys = Object.keys(message.labels), i = 0; i < keys.length; ++i) + writer.uint32(/* id 2, wireType 2 =*/18).fork().uint32(/* id 1, wireType 2 =*/10).string(keys[i]).uint32(/* id 2, wireType 2 =*/18).string(message.labels[keys[i]]).ldelim(); + if (message.resourceState != null && Object.hasOwnProperty.call(message, "resourceState")) + $root.google.cloud.gkehub.v1beta.FeatureResourceState.encode(message.resourceState, writer.uint32(/* id 3, wireType 2 =*/26).fork()).ldelim(); + if (message.spec != null && Object.hasOwnProperty.call(message, "spec")) + $root.google.cloud.gkehub.v1beta.CommonFeatureSpec.encode(message.spec, writer.uint32(/* id 4, wireType 2 =*/34).fork()).ldelim(); + if (message.membershipSpecs != null && Object.hasOwnProperty.call(message, "membershipSpecs")) + for (var keys = Object.keys(message.membershipSpecs), i = 0; i < keys.length; ++i) { + writer.uint32(/* id 5, wireType 2 =*/42).fork().uint32(/* id 1, wireType 2 =*/10).string(keys[i]); + $root.google.cloud.gkehub.v1beta.MembershipFeatureSpec.encode(message.membershipSpecs[keys[i]], writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim().ldelim(); + } + if (message.state != null && Object.hasOwnProperty.call(message, "state")) + $root.google.cloud.gkehub.v1beta.CommonFeatureState.encode(message.state, writer.uint32(/* id 6, wireType 2 =*/50).fork()).ldelim(); + if (message.membershipStates != null && Object.hasOwnProperty.call(message, "membershipStates")) + for (var keys = Object.keys(message.membershipStates), i = 0; i < keys.length; ++i) { + writer.uint32(/* id 7, wireType 2 =*/58).fork().uint32(/* id 1, wireType 2 =*/10).string(keys[i]); + $root.google.cloud.gkehub.v1beta.MembershipFeatureState.encode(message.membershipStates[keys[i]], writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim().ldelim(); + } + if (message.createTime != null && Object.hasOwnProperty.call(message, "createTime")) + $root.google.protobuf.Timestamp.encode(message.createTime, writer.uint32(/* id 8, wireType 2 =*/66).fork()).ldelim(); + if (message.updateTime != null && Object.hasOwnProperty.call(message, "updateTime")) + $root.google.protobuf.Timestamp.encode(message.updateTime, writer.uint32(/* id 9, wireType 2 =*/74).fork()).ldelim(); + if (message.deleteTime != null && Object.hasOwnProperty.call(message, "deleteTime")) + $root.google.protobuf.Timestamp.encode(message.deleteTime, writer.uint32(/* id 10, wireType 2 =*/82).fork()).ldelim(); + return writer; + }; + + /** + * Encodes the specified Feature message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta.Feature.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.v1beta.Feature + * @static + * @param {google.cloud.gkehub.v1beta.IFeature} message Feature message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + Feature.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a Feature message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.v1beta.Feature + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.v1beta.Feature} Feature + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + Feature.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.v1beta.Feature(), key, value; + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.name = reader.string(); + break; + case 2: + 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 3: + message.resourceState = $root.google.cloud.gkehub.v1beta.FeatureResourceState.decode(reader, reader.uint32()); + break; + case 4: + message.spec = $root.google.cloud.gkehub.v1beta.CommonFeatureSpec.decode(reader, reader.uint32()); + break; + case 5: + if (message.membershipSpecs === $util.emptyObject) + message.membershipSpecs = {}; + var end2 = reader.uint32() + reader.pos; + key = ""; + value = null; + while (reader.pos < end2) { + var tag2 = reader.uint32(); + switch (tag2 >>> 3) { + case 1: + key = reader.string(); + break; + case 2: + value = $root.google.cloud.gkehub.v1beta.MembershipFeatureSpec.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag2 & 7); + break; + } + } + message.membershipSpecs[key] = value; + break; + case 6: + message.state = $root.google.cloud.gkehub.v1beta.CommonFeatureState.decode(reader, reader.uint32()); + break; + case 7: + if (message.membershipStates === $util.emptyObject) + message.membershipStates = {}; + var end2 = reader.uint32() + reader.pos; + key = ""; + value = null; + while (reader.pos < end2) { + var tag2 = reader.uint32(); + switch (tag2 >>> 3) { + case 1: + key = reader.string(); + break; + case 2: + value = $root.google.cloud.gkehub.v1beta.MembershipFeatureState.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag2 & 7); + break; + } + } + message.membershipStates[key] = value; + break; + case 8: + message.createTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + break; + case 9: + message.updateTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + break; + case 10: + message.deleteTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; - /** - * Decodes a CustomHttpPattern message from the specified reader or buffer, length delimited. - * @function decodeDelimited - * @memberof google.api.CustomHttpPattern - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {google.api.CustomHttpPattern} CustomHttpPattern - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - CustomHttpPattern.decodeDelimited = function decodeDelimited(reader) { - if (!(reader instanceof $Reader)) - reader = new $Reader(reader); - return this.decode(reader, reader.uint32()); - }; + /** + * Decodes a Feature message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.v1beta.Feature + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.v1beta.Feature} Feature + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + Feature.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; - /** - * Verifies a CustomHttpPattern message. - * @function verify - * @memberof google.api.CustomHttpPattern - * @static - * @param {Object.} message Plain object to verify - * @returns {string|null} `null` if valid, otherwise the reason why it is not - */ - CustomHttpPattern.verify = function verify(message) { - if (typeof message !== "object" || message === null) - return "object expected"; - if (message.kind != null && message.hasOwnProperty("kind")) - if (!$util.isString(message.kind)) - return "kind: string expected"; - if (message.path != null && message.hasOwnProperty("path")) - if (!$util.isString(message.path)) - return "path: string expected"; - return null; - }; + /** + * Verifies a Feature message. + * @function verify + * @memberof google.cloud.gkehub.v1beta.Feature + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + Feature.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.name != null && message.hasOwnProperty("name")) + if (!$util.isString(message.name)) + return "name: string expected"; + if (message.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.resourceState != null && message.hasOwnProperty("resourceState")) { + var error = $root.google.cloud.gkehub.v1beta.FeatureResourceState.verify(message.resourceState); + if (error) + return "resourceState." + error; + } + if (message.spec != null && message.hasOwnProperty("spec")) { + var error = $root.google.cloud.gkehub.v1beta.CommonFeatureSpec.verify(message.spec); + if (error) + return "spec." + error; + } + if (message.membershipSpecs != null && message.hasOwnProperty("membershipSpecs")) { + if (!$util.isObject(message.membershipSpecs)) + return "membershipSpecs: object expected"; + var key = Object.keys(message.membershipSpecs); + for (var i = 0; i < key.length; ++i) { + var error = $root.google.cloud.gkehub.v1beta.MembershipFeatureSpec.verify(message.membershipSpecs[key[i]]); + if (error) + return "membershipSpecs." + error; + } + } + if (message.state != null && message.hasOwnProperty("state")) { + var error = $root.google.cloud.gkehub.v1beta.CommonFeatureState.verify(message.state); + if (error) + return "state." + error; + } + if (message.membershipStates != null && message.hasOwnProperty("membershipStates")) { + if (!$util.isObject(message.membershipStates)) + return "membershipStates: object expected"; + var key = Object.keys(message.membershipStates); + for (var i = 0; i < key.length; ++i) { + var error = $root.google.cloud.gkehub.v1beta.MembershipFeatureState.verify(message.membershipStates[key[i]]); + if (error) + return "membershipStates." + error; + } + } + if (message.createTime != null && message.hasOwnProperty("createTime")) { + var error = $root.google.protobuf.Timestamp.verify(message.createTime); + if (error) + return "createTime." + error; + } + if (message.updateTime != null && message.hasOwnProperty("updateTime")) { + var error = $root.google.protobuf.Timestamp.verify(message.updateTime); + if (error) + return "updateTime." + error; + } + if (message.deleteTime != null && message.hasOwnProperty("deleteTime")) { + var error = $root.google.protobuf.Timestamp.verify(message.deleteTime); + if (error) + return "deleteTime." + error; + } + return null; + }; - /** - * Creates a CustomHttpPattern message from a plain object. Also converts values to their respective internal types. - * @function fromObject - * @memberof google.api.CustomHttpPattern - * @static - * @param {Object.} object Plain object - * @returns {google.api.CustomHttpPattern} CustomHttpPattern - */ - CustomHttpPattern.fromObject = function fromObject(object) { - if (object instanceof $root.google.api.CustomHttpPattern) - return object; - var message = new $root.google.api.CustomHttpPattern(); - if (object.kind != null) - message.kind = String(object.kind); - if (object.path != null) - message.path = String(object.path); - return message; - }; + /** + * Creates a Feature message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.v1beta.Feature + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.v1beta.Feature} Feature + */ + Feature.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.v1beta.Feature) + return object; + var message = new $root.google.cloud.gkehub.v1beta.Feature(); + if (object.name != null) + message.name = String(object.name); + if (object.labels) { + if (typeof object.labels !== "object") + throw TypeError(".google.cloud.gkehub.v1beta.Feature.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.resourceState != null) { + if (typeof object.resourceState !== "object") + throw TypeError(".google.cloud.gkehub.v1beta.Feature.resourceState: object expected"); + message.resourceState = $root.google.cloud.gkehub.v1beta.FeatureResourceState.fromObject(object.resourceState); + } + if (object.spec != null) { + if (typeof object.spec !== "object") + throw TypeError(".google.cloud.gkehub.v1beta.Feature.spec: object expected"); + message.spec = $root.google.cloud.gkehub.v1beta.CommonFeatureSpec.fromObject(object.spec); + } + if (object.membershipSpecs) { + if (typeof object.membershipSpecs !== "object") + throw TypeError(".google.cloud.gkehub.v1beta.Feature.membershipSpecs: object expected"); + message.membershipSpecs = {}; + for (var keys = Object.keys(object.membershipSpecs), i = 0; i < keys.length; ++i) { + if (typeof object.membershipSpecs[keys[i]] !== "object") + throw TypeError(".google.cloud.gkehub.v1beta.Feature.membershipSpecs: object expected"); + message.membershipSpecs[keys[i]] = $root.google.cloud.gkehub.v1beta.MembershipFeatureSpec.fromObject(object.membershipSpecs[keys[i]]); + } + } + if (object.state != null) { + if (typeof object.state !== "object") + throw TypeError(".google.cloud.gkehub.v1beta.Feature.state: object expected"); + message.state = $root.google.cloud.gkehub.v1beta.CommonFeatureState.fromObject(object.state); + } + if (object.membershipStates) { + if (typeof object.membershipStates !== "object") + throw TypeError(".google.cloud.gkehub.v1beta.Feature.membershipStates: object expected"); + message.membershipStates = {}; + for (var keys = Object.keys(object.membershipStates), i = 0; i < keys.length; ++i) { + if (typeof object.membershipStates[keys[i]] !== "object") + throw TypeError(".google.cloud.gkehub.v1beta.Feature.membershipStates: object expected"); + message.membershipStates[keys[i]] = $root.google.cloud.gkehub.v1beta.MembershipFeatureState.fromObject(object.membershipStates[keys[i]]); + } + } + if (object.createTime != null) { + if (typeof object.createTime !== "object") + throw TypeError(".google.cloud.gkehub.v1beta.Feature.createTime: object expected"); + message.createTime = $root.google.protobuf.Timestamp.fromObject(object.createTime); + } + if (object.updateTime != null) { + if (typeof object.updateTime !== "object") + throw TypeError(".google.cloud.gkehub.v1beta.Feature.updateTime: object expected"); + message.updateTime = $root.google.protobuf.Timestamp.fromObject(object.updateTime); + } + if (object.deleteTime != null) { + if (typeof object.deleteTime !== "object") + throw TypeError(".google.cloud.gkehub.v1beta.Feature.deleteTime: object expected"); + message.deleteTime = $root.google.protobuf.Timestamp.fromObject(object.deleteTime); + } + return message; + }; - /** - * Creates a plain object from a CustomHttpPattern message. Also converts values to other types if specified. - * @function toObject - * @memberof google.api.CustomHttpPattern - * @static - * @param {google.api.CustomHttpPattern} message CustomHttpPattern - * @param {$protobuf.IConversionOptions} [options] Conversion options - * @returns {Object.} Plain object - */ - CustomHttpPattern.toObject = function toObject(message, options) { - if (!options) - options = {}; - var object = {}; - if (options.defaults) { - object.kind = ""; - object.path = ""; - } - if (message.kind != null && message.hasOwnProperty("kind")) - object.kind = message.kind; - if (message.path != null && message.hasOwnProperty("path")) - object.path = message.path; - return object; - }; + /** + * Creates a plain object from a Feature message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.v1beta.Feature + * @static + * @param {google.cloud.gkehub.v1beta.Feature} message Feature + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + Feature.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.objects || options.defaults) { + object.labels = {}; + object.membershipSpecs = {}; + object.membershipStates = {}; + } + if (options.defaults) { + object.name = ""; + object.resourceState = null; + object.spec = null; + object.state = null; + object.createTime = null; + object.updateTime = null; + object.deleteTime = null; + } + if (message.name != null && message.hasOwnProperty("name")) + object.name = message.name; + 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]]; + } + if (message.resourceState != null && message.hasOwnProperty("resourceState")) + object.resourceState = $root.google.cloud.gkehub.v1beta.FeatureResourceState.toObject(message.resourceState, options); + if (message.spec != null && message.hasOwnProperty("spec")) + object.spec = $root.google.cloud.gkehub.v1beta.CommonFeatureSpec.toObject(message.spec, options); + if (message.membershipSpecs && (keys2 = Object.keys(message.membershipSpecs)).length) { + object.membershipSpecs = {}; + for (var j = 0; j < keys2.length; ++j) + object.membershipSpecs[keys2[j]] = $root.google.cloud.gkehub.v1beta.MembershipFeatureSpec.toObject(message.membershipSpecs[keys2[j]], options); + } + if (message.state != null && message.hasOwnProperty("state")) + object.state = $root.google.cloud.gkehub.v1beta.CommonFeatureState.toObject(message.state, options); + if (message.membershipStates && (keys2 = Object.keys(message.membershipStates)).length) { + object.membershipStates = {}; + for (var j = 0; j < keys2.length; ++j) + object.membershipStates[keys2[j]] = $root.google.cloud.gkehub.v1beta.MembershipFeatureState.toObject(message.membershipStates[keys2[j]], options); + } + if (message.createTime != null && message.hasOwnProperty("createTime")) + object.createTime = $root.google.protobuf.Timestamp.toObject(message.createTime, options); + if (message.updateTime != null && message.hasOwnProperty("updateTime")) + object.updateTime = $root.google.protobuf.Timestamp.toObject(message.updateTime, options); + if (message.deleteTime != null && message.hasOwnProperty("deleteTime")) + object.deleteTime = $root.google.protobuf.Timestamp.toObject(message.deleteTime, options); + return object; + }; - /** - * Converts this CustomHttpPattern to JSON. - * @function toJSON - * @memberof google.api.CustomHttpPattern - * @instance - * @returns {Object.} JSON object - */ - CustomHttpPattern.prototype.toJSON = function toJSON() { - return this.constructor.toObject(this, $protobuf.util.toJSONOptions); - }; + /** + * Converts this Feature to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.v1beta.Feature + * @instance + * @returns {Object.} JSON object + */ + Feature.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; - return CustomHttpPattern; - })(); + return Feature; + })(); - /** - * FieldBehavior enum. - * @name google.api.FieldBehavior - * @enum {number} - * @property {number} FIELD_BEHAVIOR_UNSPECIFIED=0 FIELD_BEHAVIOR_UNSPECIFIED value - * @property {number} OPTIONAL=1 OPTIONAL value - * @property {number} REQUIRED=2 REQUIRED value - * @property {number} OUTPUT_ONLY=3 OUTPUT_ONLY value - * @property {number} INPUT_ONLY=4 INPUT_ONLY value - * @property {number} IMMUTABLE=5 IMMUTABLE value - * @property {number} UNORDERED_LIST=6 UNORDERED_LIST value - */ - api.FieldBehavior = (function() { - var valuesById = {}, values = Object.create(valuesById); - values[valuesById[0] = "FIELD_BEHAVIOR_UNSPECIFIED"] = 0; - values[valuesById[1] = "OPTIONAL"] = 1; - values[valuesById[2] = "REQUIRED"] = 2; - values[valuesById[3] = "OUTPUT_ONLY"] = 3; - values[valuesById[4] = "INPUT_ONLY"] = 4; - values[valuesById[5] = "IMMUTABLE"] = 5; - values[valuesById[6] = "UNORDERED_LIST"] = 6; - return values; - })(); + v1beta.FeatureResourceState = (function() { - api.ResourceDescriptor = (function() { + /** + * Properties of a FeatureResourceState. + * @memberof google.cloud.gkehub.v1beta + * @interface IFeatureResourceState + * @property {google.cloud.gkehub.v1beta.FeatureResourceState.State|null} [state] FeatureResourceState state + */ - /** - * Properties of a ResourceDescriptor. - * @memberof google.api - * @interface IResourceDescriptor - * @property {string|null} [type] ResourceDescriptor type - * @property {Array.|null} [pattern] ResourceDescriptor pattern - * @property {string|null} [nameField] ResourceDescriptor nameField - * @property {google.api.ResourceDescriptor.History|null} [history] ResourceDescriptor history - * @property {string|null} [plural] ResourceDescriptor plural - * @property {string|null} [singular] ResourceDescriptor singular - * @property {Array.|null} [style] ResourceDescriptor style - */ + /** + * Constructs a new FeatureResourceState. + * @memberof google.cloud.gkehub.v1beta + * @classdesc Represents a FeatureResourceState. + * @implements IFeatureResourceState + * @constructor + * @param {google.cloud.gkehub.v1beta.IFeatureResourceState=} [properties] Properties to set + */ + function FeatureResourceState(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]]; + } - /** - * Constructs a new ResourceDescriptor. - * @memberof google.api - * @classdesc Represents a ResourceDescriptor. - * @implements IResourceDescriptor - * @constructor - * @param {google.api.IResourceDescriptor=} [properties] Properties to set - */ - function ResourceDescriptor(properties) { - this.pattern = []; - this.style = []; - 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]]; - } + /** + * FeatureResourceState state. + * @member {google.cloud.gkehub.v1beta.FeatureResourceState.State} state + * @memberof google.cloud.gkehub.v1beta.FeatureResourceState + * @instance + */ + FeatureResourceState.prototype.state = 0; - /** - * ResourceDescriptor type. - * @member {string} type - * @memberof google.api.ResourceDescriptor - * @instance - */ - ResourceDescriptor.prototype.type = ""; + /** + * Creates a new FeatureResourceState instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.v1beta.FeatureResourceState + * @static + * @param {google.cloud.gkehub.v1beta.IFeatureResourceState=} [properties] Properties to set + * @returns {google.cloud.gkehub.v1beta.FeatureResourceState} FeatureResourceState instance + */ + FeatureResourceState.create = function create(properties) { + return new FeatureResourceState(properties); + }; - /** - * ResourceDescriptor pattern. - * @member {Array.} pattern - * @memberof google.api.ResourceDescriptor - * @instance - */ - ResourceDescriptor.prototype.pattern = $util.emptyArray; + /** + * Encodes the specified FeatureResourceState message. Does not implicitly {@link google.cloud.gkehub.v1beta.FeatureResourceState.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.v1beta.FeatureResourceState + * @static + * @param {google.cloud.gkehub.v1beta.IFeatureResourceState} message FeatureResourceState message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + FeatureResourceState.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.state != null && Object.hasOwnProperty.call(message, "state")) + writer.uint32(/* id 1, wireType 0 =*/8).int32(message.state); + return writer; + }; - /** - * ResourceDescriptor nameField. - * @member {string} nameField - * @memberof google.api.ResourceDescriptor - * @instance - */ - ResourceDescriptor.prototype.nameField = ""; + /** + * Encodes the specified FeatureResourceState message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta.FeatureResourceState.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.v1beta.FeatureResourceState + * @static + * @param {google.cloud.gkehub.v1beta.IFeatureResourceState} message FeatureResourceState message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + FeatureResourceState.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; - /** - * ResourceDescriptor history. - * @member {google.api.ResourceDescriptor.History} history - * @memberof google.api.ResourceDescriptor - * @instance - */ - ResourceDescriptor.prototype.history = 0; + /** + * Decodes a FeatureResourceState message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.v1beta.FeatureResourceState + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.v1beta.FeatureResourceState} FeatureResourceState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + FeatureResourceState.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.v1beta.FeatureResourceState(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.state = reader.int32(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; - /** - * ResourceDescriptor plural. - * @member {string} plural - * @memberof google.api.ResourceDescriptor - * @instance - */ - ResourceDescriptor.prototype.plural = ""; + /** + * Decodes a FeatureResourceState message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.v1beta.FeatureResourceState + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.v1beta.FeatureResourceState} FeatureResourceState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + FeatureResourceState.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a FeatureResourceState message. + * @function verify + * @memberof google.cloud.gkehub.v1beta.FeatureResourceState + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + FeatureResourceState.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.state != null && message.hasOwnProperty("state")) + switch (message.state) { + default: + return "state: enum value expected"; + case 0: + case 1: + case 2: + case 3: + case 4: + case 5: + break; + } + return null; + }; + + /** + * Creates a FeatureResourceState message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.v1beta.FeatureResourceState + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.v1beta.FeatureResourceState} FeatureResourceState + */ + FeatureResourceState.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.v1beta.FeatureResourceState) + return object; + var message = new $root.google.cloud.gkehub.v1beta.FeatureResourceState(); + switch (object.state) { + case "STATE_UNSPECIFIED": + case 0: + message.state = 0; + break; + case "ENABLING": + case 1: + message.state = 1; + break; + case "ACTIVE": + case 2: + message.state = 2; + break; + case "DISABLING": + case 3: + message.state = 3; + break; + case "UPDATING": + case 4: + message.state = 4; + break; + case "SERVICE_UPDATING": + case 5: + message.state = 5; + break; + } + return message; + }; + + /** + * Creates a plain object from a FeatureResourceState message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.v1beta.FeatureResourceState + * @static + * @param {google.cloud.gkehub.v1beta.FeatureResourceState} message FeatureResourceState + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + FeatureResourceState.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) + object.state = options.enums === String ? "STATE_UNSPECIFIED" : 0; + if (message.state != null && message.hasOwnProperty("state")) + object.state = options.enums === String ? $root.google.cloud.gkehub.v1beta.FeatureResourceState.State[message.state] : message.state; + return object; + }; + + /** + * Converts this FeatureResourceState to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.v1beta.FeatureResourceState + * @instance + * @returns {Object.} JSON object + */ + FeatureResourceState.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + /** + * State enum. + * @name google.cloud.gkehub.v1beta.FeatureResourceState.State + * @enum {number} + * @property {number} STATE_UNSPECIFIED=0 STATE_UNSPECIFIED value + * @property {number} ENABLING=1 ENABLING value + * @property {number} ACTIVE=2 ACTIVE value + * @property {number} DISABLING=3 DISABLING value + * @property {number} UPDATING=4 UPDATING value + * @property {number} SERVICE_UPDATING=5 SERVICE_UPDATING value + */ + FeatureResourceState.State = (function() { + var valuesById = {}, values = Object.create(valuesById); + values[valuesById[0] = "STATE_UNSPECIFIED"] = 0; + values[valuesById[1] = "ENABLING"] = 1; + values[valuesById[2] = "ACTIVE"] = 2; + values[valuesById[3] = "DISABLING"] = 3; + values[valuesById[4] = "UPDATING"] = 4; + values[valuesById[5] = "SERVICE_UPDATING"] = 5; + return values; + })(); - /** - * ResourceDescriptor singular. - * @member {string} singular - * @memberof google.api.ResourceDescriptor - * @instance - */ - ResourceDescriptor.prototype.singular = ""; + return FeatureResourceState; + })(); - /** - * ResourceDescriptor style. - * @member {Array.} style - * @memberof google.api.ResourceDescriptor - * @instance - */ - ResourceDescriptor.prototype.style = $util.emptyArray; + v1beta.FeatureState = (function() { - /** - * Creates a new ResourceDescriptor instance using the specified properties. - * @function create - * @memberof google.api.ResourceDescriptor - * @static - * @param {google.api.IResourceDescriptor=} [properties] Properties to set - * @returns {google.api.ResourceDescriptor} ResourceDescriptor instance - */ - ResourceDescriptor.create = function create(properties) { - return new ResourceDescriptor(properties); - }; + /** + * Properties of a FeatureState. + * @memberof google.cloud.gkehub.v1beta + * @interface IFeatureState + * @property {google.cloud.gkehub.v1beta.FeatureState.Code|null} [code] FeatureState code + * @property {string|null} [description] FeatureState description + * @property {google.protobuf.ITimestamp|null} [updateTime] FeatureState updateTime + */ - /** - * Encodes the specified ResourceDescriptor message. Does not implicitly {@link google.api.ResourceDescriptor.verify|verify} messages. - * @function encode - * @memberof google.api.ResourceDescriptor - * @static - * @param {google.api.IResourceDescriptor} message ResourceDescriptor message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - ResourceDescriptor.encode = function encode(message, writer) { - if (!writer) - writer = $Writer.create(); - if (message.type != null && Object.hasOwnProperty.call(message, "type")) - writer.uint32(/* id 1, wireType 2 =*/10).string(message.type); - if (message.pattern != null && message.pattern.length) - for (var i = 0; i < message.pattern.length; ++i) - writer.uint32(/* id 2, wireType 2 =*/18).string(message.pattern[i]); - if (message.nameField != null && Object.hasOwnProperty.call(message, "nameField")) - writer.uint32(/* id 3, wireType 2 =*/26).string(message.nameField); - if (message.history != null && Object.hasOwnProperty.call(message, "history")) - writer.uint32(/* id 4, wireType 0 =*/32).int32(message.history); - if (message.plural != null && Object.hasOwnProperty.call(message, "plural")) - writer.uint32(/* id 5, wireType 2 =*/42).string(message.plural); - if (message.singular != null && Object.hasOwnProperty.call(message, "singular")) - writer.uint32(/* id 6, wireType 2 =*/50).string(message.singular); - if (message.style != null && message.style.length) { - writer.uint32(/* id 10, wireType 2 =*/82).fork(); - for (var i = 0; i < message.style.length; ++i) - writer.int32(message.style[i]); - writer.ldelim(); - } - return writer; - }; + /** + * Constructs a new FeatureState. + * @memberof google.cloud.gkehub.v1beta + * @classdesc Represents a FeatureState. + * @implements IFeatureState + * @constructor + * @param {google.cloud.gkehub.v1beta.IFeatureState=} [properties] Properties to set + */ + function FeatureState(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]]; + } - /** - * Encodes the specified ResourceDescriptor message, length delimited. Does not implicitly {@link google.api.ResourceDescriptor.verify|verify} messages. - * @function encodeDelimited - * @memberof google.api.ResourceDescriptor - * @static - * @param {google.api.IResourceDescriptor} message ResourceDescriptor message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - ResourceDescriptor.encodeDelimited = function encodeDelimited(message, writer) { - return this.encode(message, writer).ldelim(); - }; + /** + * FeatureState code. + * @member {google.cloud.gkehub.v1beta.FeatureState.Code} code + * @memberof google.cloud.gkehub.v1beta.FeatureState + * @instance + */ + FeatureState.prototype.code = 0; - /** - * Decodes a ResourceDescriptor message from the specified reader or buffer. - * @function decode - * @memberof google.api.ResourceDescriptor - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @param {number} [length] Message length if known beforehand - * @returns {google.api.ResourceDescriptor} ResourceDescriptor - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - ResourceDescriptor.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.api.ResourceDescriptor(); - while (reader.pos < end) { - var tag = reader.uint32(); - switch (tag >>> 3) { - case 1: - message.type = reader.string(); - break; - case 2: - if (!(message.pattern && message.pattern.length)) - message.pattern = []; - message.pattern.push(reader.string()); - break; - case 3: - message.nameField = reader.string(); - break; - case 4: - message.history = reader.int32(); - break; - case 5: - message.plural = reader.string(); - break; - case 6: - message.singular = reader.string(); - break; - case 10: - if (!(message.style && message.style.length)) - message.style = []; - if ((tag & 7) === 2) { - var end2 = reader.uint32() + reader.pos; - while (reader.pos < end2) - message.style.push(reader.int32()); - } else - message.style.push(reader.int32()); - break; - default: - reader.skipType(tag & 7); - break; - } - } - return message; - }; + /** + * FeatureState description. + * @member {string} description + * @memberof google.cloud.gkehub.v1beta.FeatureState + * @instance + */ + FeatureState.prototype.description = ""; - /** - * Decodes a ResourceDescriptor message from the specified reader or buffer, length delimited. - * @function decodeDelimited - * @memberof google.api.ResourceDescriptor - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {google.api.ResourceDescriptor} ResourceDescriptor - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - ResourceDescriptor.decodeDelimited = function decodeDelimited(reader) { - if (!(reader instanceof $Reader)) - reader = new $Reader(reader); - return this.decode(reader, reader.uint32()); - }; + /** + * FeatureState updateTime. + * @member {google.protobuf.ITimestamp|null|undefined} updateTime + * @memberof google.cloud.gkehub.v1beta.FeatureState + * @instance + */ + FeatureState.prototype.updateTime = null; - /** - * Verifies a ResourceDescriptor message. - * @function verify - * @memberof google.api.ResourceDescriptor - * @static - * @param {Object.} message Plain object to verify - * @returns {string|null} `null` if valid, otherwise the reason why it is not - */ - ResourceDescriptor.verify = function verify(message) { - if (typeof message !== "object" || message === null) - return "object expected"; - if (message.type != null && message.hasOwnProperty("type")) - if (!$util.isString(message.type)) - return "type: string expected"; - if (message.pattern != null && message.hasOwnProperty("pattern")) { - if (!Array.isArray(message.pattern)) - return "pattern: array expected"; - for (var i = 0; i < message.pattern.length; ++i) - if (!$util.isString(message.pattern[i])) - return "pattern: string[] expected"; - } - if (message.nameField != null && message.hasOwnProperty("nameField")) - if (!$util.isString(message.nameField)) - return "nameField: string expected"; - if (message.history != null && message.hasOwnProperty("history")) - switch (message.history) { - default: - return "history: enum value expected"; - case 0: - case 1: - case 2: - break; - } - if (message.plural != null && message.hasOwnProperty("plural")) - if (!$util.isString(message.plural)) - return "plural: string expected"; - if (message.singular != null && message.hasOwnProperty("singular")) - if (!$util.isString(message.singular)) - return "singular: string expected"; - if (message.style != null && message.hasOwnProperty("style")) { - if (!Array.isArray(message.style)) - return "style: array expected"; - for (var i = 0; i < message.style.length; ++i) - switch (message.style[i]) { - default: - return "style: enum value[] expected"; - case 0: - case 1: - break; + /** + * Creates a new FeatureState instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.v1beta.FeatureState + * @static + * @param {google.cloud.gkehub.v1beta.IFeatureState=} [properties] Properties to set + * @returns {google.cloud.gkehub.v1beta.FeatureState} FeatureState instance + */ + FeatureState.create = function create(properties) { + return new FeatureState(properties); + }; + + /** + * Encodes the specified FeatureState message. Does not implicitly {@link google.cloud.gkehub.v1beta.FeatureState.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.v1beta.FeatureState + * @static + * @param {google.cloud.gkehub.v1beta.IFeatureState} message FeatureState message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + FeatureState.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.code != null && Object.hasOwnProperty.call(message, "code")) + writer.uint32(/* id 1, wireType 0 =*/8).int32(message.code); + if (message.description != null && Object.hasOwnProperty.call(message, "description")) + writer.uint32(/* id 2, wireType 2 =*/18).string(message.description); + if (message.updateTime != null && Object.hasOwnProperty.call(message, "updateTime")) + $root.google.protobuf.Timestamp.encode(message.updateTime, writer.uint32(/* id 3, wireType 2 =*/26).fork()).ldelim(); + return writer; + }; + + /** + * Encodes the specified FeatureState message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta.FeatureState.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.v1beta.FeatureState + * @static + * @param {google.cloud.gkehub.v1beta.IFeatureState} message FeatureState message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + FeatureState.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a FeatureState message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.v1beta.FeatureState + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.v1beta.FeatureState} FeatureState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + FeatureState.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.v1beta.FeatureState(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.code = reader.int32(); + break; + case 2: + message.description = reader.string(); + break; + case 3: + message.updateTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag & 7); + break; + } } - } - return null; - }; + return message; + }; - /** - * Creates a ResourceDescriptor message from a plain object. Also converts values to their respective internal types. - * @function fromObject - * @memberof google.api.ResourceDescriptor - * @static - * @param {Object.} object Plain object - * @returns {google.api.ResourceDescriptor} ResourceDescriptor - */ - ResourceDescriptor.fromObject = function fromObject(object) { - if (object instanceof $root.google.api.ResourceDescriptor) - return object; - var message = new $root.google.api.ResourceDescriptor(); - if (object.type != null) - message.type = String(object.type); - if (object.pattern) { - if (!Array.isArray(object.pattern)) - throw TypeError(".google.api.ResourceDescriptor.pattern: array expected"); - message.pattern = []; - for (var i = 0; i < object.pattern.length; ++i) - message.pattern[i] = String(object.pattern[i]); - } - if (object.nameField != null) - message.nameField = String(object.nameField); - switch (object.history) { - case "HISTORY_UNSPECIFIED": - case 0: - message.history = 0; - break; - case "ORIGINALLY_SINGLE_PATTERN": - case 1: - message.history = 1; - break; - case "FUTURE_MULTI_PATTERN": - case 2: - message.history = 2; - break; - } - if (object.plural != null) - message.plural = String(object.plural); - if (object.singular != null) - message.singular = String(object.singular); - if (object.style) { - if (!Array.isArray(object.style)) - throw TypeError(".google.api.ResourceDescriptor.style: array expected"); - message.style = []; - for (var i = 0; i < object.style.length; ++i) - switch (object.style[i]) { - default: - case "STYLE_UNSPECIFIED": + /** + * Decodes a FeatureState message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.v1beta.FeatureState + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.v1beta.FeatureState} FeatureState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + FeatureState.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a FeatureState message. + * @function verify + * @memberof google.cloud.gkehub.v1beta.FeatureState + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + FeatureState.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.code != null && message.hasOwnProperty("code")) + switch (message.code) { + default: + return "code: enum value expected"; + case 0: + case 1: + case 2: + case 3: + break; + } + if (message.description != null && message.hasOwnProperty("description")) + if (!$util.isString(message.description)) + return "description: string expected"; + if (message.updateTime != null && message.hasOwnProperty("updateTime")) { + var error = $root.google.protobuf.Timestamp.verify(message.updateTime); + if (error) + return "updateTime." + error; + } + return null; + }; + + /** + * Creates a FeatureState message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.v1beta.FeatureState + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.v1beta.FeatureState} FeatureState + */ + FeatureState.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.v1beta.FeatureState) + return object; + var message = new $root.google.cloud.gkehub.v1beta.FeatureState(); + switch (object.code) { + case "CODE_UNSPECIFIED": case 0: - message.style[i] = 0; + message.code = 0; break; - case "DECLARATIVE_FRIENDLY": + case "OK": case 1: - message.style[i] = 1; + message.code = 1; + break; + case "WARNING": + case 2: + message.code = 2; + break; + case "ERROR": + case 3: + message.code = 3; break; } - } - return message; - }; + if (object.description != null) + message.description = String(object.description); + if (object.updateTime != null) { + if (typeof object.updateTime !== "object") + throw TypeError(".google.cloud.gkehub.v1beta.FeatureState.updateTime: object expected"); + message.updateTime = $root.google.protobuf.Timestamp.fromObject(object.updateTime); + } + return message; + }; + + /** + * Creates a plain object from a FeatureState message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.v1beta.FeatureState + * @static + * @param {google.cloud.gkehub.v1beta.FeatureState} message FeatureState + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + FeatureState.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.code = options.enums === String ? "CODE_UNSPECIFIED" : 0; + object.description = ""; + object.updateTime = null; + } + if (message.code != null && message.hasOwnProperty("code")) + object.code = options.enums === String ? $root.google.cloud.gkehub.v1beta.FeatureState.Code[message.code] : message.code; + if (message.description != null && message.hasOwnProperty("description")) + object.description = message.description; + if (message.updateTime != null && message.hasOwnProperty("updateTime")) + object.updateTime = $root.google.protobuf.Timestamp.toObject(message.updateTime, options); + return object; + }; + + /** + * Converts this FeatureState to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.v1beta.FeatureState + * @instance + * @returns {Object.} JSON object + */ + FeatureState.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + /** + * Code enum. + * @name google.cloud.gkehub.v1beta.FeatureState.Code + * @enum {number} + * @property {number} CODE_UNSPECIFIED=0 CODE_UNSPECIFIED value + * @property {number} OK=1 OK value + * @property {number} WARNING=2 WARNING value + * @property {number} ERROR=3 ERROR value + */ + FeatureState.Code = (function() { + var valuesById = {}, values = Object.create(valuesById); + values[valuesById[0] = "CODE_UNSPECIFIED"] = 0; + values[valuesById[1] = "OK"] = 1; + values[valuesById[2] = "WARNING"] = 2; + values[valuesById[3] = "ERROR"] = 3; + return values; + })(); + + return FeatureState; + })(); + + v1beta.CommonFeatureSpec = (function() { + + /** + * Properties of a CommonFeatureSpec. + * @memberof google.cloud.gkehub.v1beta + * @interface ICommonFeatureSpec + * @property {google.cloud.gkehub.multiclusteringress.v1beta.IFeatureSpec|null} [multiclusteringress] CommonFeatureSpec multiclusteringress + */ + + /** + * Constructs a new CommonFeatureSpec. + * @memberof google.cloud.gkehub.v1beta + * @classdesc Represents a CommonFeatureSpec. + * @implements ICommonFeatureSpec + * @constructor + * @param {google.cloud.gkehub.v1beta.ICommonFeatureSpec=} [properties] Properties to set + */ + function CommonFeatureSpec(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]]; + } + + /** + * CommonFeatureSpec multiclusteringress. + * @member {google.cloud.gkehub.multiclusteringress.v1beta.IFeatureSpec|null|undefined} multiclusteringress + * @memberof google.cloud.gkehub.v1beta.CommonFeatureSpec + * @instance + */ + CommonFeatureSpec.prototype.multiclusteringress = null; + + // OneOf field names bound to virtual getters and setters + var $oneOfFields; + + /** + * CommonFeatureSpec featureSpec. + * @member {"multiclusteringress"|undefined} featureSpec + * @memberof google.cloud.gkehub.v1beta.CommonFeatureSpec + * @instance + */ + Object.defineProperty(CommonFeatureSpec.prototype, "featureSpec", { + get: $util.oneOfGetter($oneOfFields = ["multiclusteringress"]), + set: $util.oneOfSetter($oneOfFields) + }); + + /** + * Creates a new CommonFeatureSpec instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.v1beta.CommonFeatureSpec + * @static + * @param {google.cloud.gkehub.v1beta.ICommonFeatureSpec=} [properties] Properties to set + * @returns {google.cloud.gkehub.v1beta.CommonFeatureSpec} CommonFeatureSpec instance + */ + CommonFeatureSpec.create = function create(properties) { + return new CommonFeatureSpec(properties); + }; + + /** + * Encodes the specified CommonFeatureSpec message. Does not implicitly {@link google.cloud.gkehub.v1beta.CommonFeatureSpec.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.v1beta.CommonFeatureSpec + * @static + * @param {google.cloud.gkehub.v1beta.ICommonFeatureSpec} message CommonFeatureSpec message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + CommonFeatureSpec.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.multiclusteringress != null && Object.hasOwnProperty.call(message, "multiclusteringress")) + $root.google.cloud.gkehub.multiclusteringress.v1beta.FeatureSpec.encode(message.multiclusteringress, writer.uint32(/* id 102, wireType 2 =*/818).fork()).ldelim(); + return writer; + }; + + /** + * Encodes the specified CommonFeatureSpec message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta.CommonFeatureSpec.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.v1beta.CommonFeatureSpec + * @static + * @param {google.cloud.gkehub.v1beta.ICommonFeatureSpec} message CommonFeatureSpec message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + CommonFeatureSpec.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a CommonFeatureSpec message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.v1beta.CommonFeatureSpec + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.v1beta.CommonFeatureSpec} CommonFeatureSpec + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + CommonFeatureSpec.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.v1beta.CommonFeatureSpec(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 102: + message.multiclusteringress = $root.google.cloud.gkehub.multiclusteringress.v1beta.FeatureSpec.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a CommonFeatureSpec message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.v1beta.CommonFeatureSpec + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.v1beta.CommonFeatureSpec} CommonFeatureSpec + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + CommonFeatureSpec.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a CommonFeatureSpec message. + * @function verify + * @memberof google.cloud.gkehub.v1beta.CommonFeatureSpec + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + CommonFeatureSpec.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + var properties = {}; + if (message.multiclusteringress != null && message.hasOwnProperty("multiclusteringress")) { + properties.featureSpec = 1; + { + var error = $root.google.cloud.gkehub.multiclusteringress.v1beta.FeatureSpec.verify(message.multiclusteringress); + if (error) + return "multiclusteringress." + error; + } + } + return null; + }; - /** - * Creates a plain object from a ResourceDescriptor message. Also converts values to other types if specified. - * @function toObject - * @memberof google.api.ResourceDescriptor - * @static - * @param {google.api.ResourceDescriptor} message ResourceDescriptor - * @param {$protobuf.IConversionOptions} [options] Conversion options - * @returns {Object.} Plain object - */ - ResourceDescriptor.toObject = function toObject(message, options) { - if (!options) - options = {}; - var object = {}; - if (options.arrays || options.defaults) { - object.pattern = []; - object.style = []; - } - if (options.defaults) { - object.type = ""; - object.nameField = ""; - object.history = options.enums === String ? "HISTORY_UNSPECIFIED" : 0; - object.plural = ""; - object.singular = ""; - } - if (message.type != null && message.hasOwnProperty("type")) - object.type = message.type; - if (message.pattern && message.pattern.length) { - object.pattern = []; - for (var j = 0; j < message.pattern.length; ++j) - object.pattern[j] = message.pattern[j]; - } - if (message.nameField != null && message.hasOwnProperty("nameField")) - object.nameField = message.nameField; - if (message.history != null && message.hasOwnProperty("history")) - object.history = options.enums === String ? $root.google.api.ResourceDescriptor.History[message.history] : message.history; - if (message.plural != null && message.hasOwnProperty("plural")) - object.plural = message.plural; - if (message.singular != null && message.hasOwnProperty("singular")) - object.singular = message.singular; - if (message.style && message.style.length) { - object.style = []; - for (var j = 0; j < message.style.length; ++j) - object.style[j] = options.enums === String ? $root.google.api.ResourceDescriptor.Style[message.style[j]] : message.style[j]; - } - return object; - }; + /** + * Creates a CommonFeatureSpec message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.v1beta.CommonFeatureSpec + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.v1beta.CommonFeatureSpec} CommonFeatureSpec + */ + CommonFeatureSpec.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.v1beta.CommonFeatureSpec) + return object; + var message = new $root.google.cloud.gkehub.v1beta.CommonFeatureSpec(); + if (object.multiclusteringress != null) { + if (typeof object.multiclusteringress !== "object") + throw TypeError(".google.cloud.gkehub.v1beta.CommonFeatureSpec.multiclusteringress: object expected"); + message.multiclusteringress = $root.google.cloud.gkehub.multiclusteringress.v1beta.FeatureSpec.fromObject(object.multiclusteringress); + } + return message; + }; - /** - * Converts this ResourceDescriptor to JSON. - * @function toJSON - * @memberof google.api.ResourceDescriptor - * @instance - * @returns {Object.} JSON object - */ - ResourceDescriptor.prototype.toJSON = function toJSON() { - return this.constructor.toObject(this, $protobuf.util.toJSONOptions); - }; + /** + * Creates a plain object from a CommonFeatureSpec message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.v1beta.CommonFeatureSpec + * @static + * @param {google.cloud.gkehub.v1beta.CommonFeatureSpec} message CommonFeatureSpec + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + CommonFeatureSpec.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (message.multiclusteringress != null && message.hasOwnProperty("multiclusteringress")) { + object.multiclusteringress = $root.google.cloud.gkehub.multiclusteringress.v1beta.FeatureSpec.toObject(message.multiclusteringress, options); + if (options.oneofs) + object.featureSpec = "multiclusteringress"; + } + return object; + }; - /** - * History enum. - * @name google.api.ResourceDescriptor.History - * @enum {number} - * @property {number} HISTORY_UNSPECIFIED=0 HISTORY_UNSPECIFIED value - * @property {number} ORIGINALLY_SINGLE_PATTERN=1 ORIGINALLY_SINGLE_PATTERN value - * @property {number} FUTURE_MULTI_PATTERN=2 FUTURE_MULTI_PATTERN value - */ - ResourceDescriptor.History = (function() { - var valuesById = {}, values = Object.create(valuesById); - values[valuesById[0] = "HISTORY_UNSPECIFIED"] = 0; - values[valuesById[1] = "ORIGINALLY_SINGLE_PATTERN"] = 1; - values[valuesById[2] = "FUTURE_MULTI_PATTERN"] = 2; - return values; - })(); + /** + * Converts this CommonFeatureSpec to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.v1beta.CommonFeatureSpec + * @instance + * @returns {Object.} JSON object + */ + CommonFeatureSpec.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; - /** - * Style enum. - * @name google.api.ResourceDescriptor.Style - * @enum {number} - * @property {number} STYLE_UNSPECIFIED=0 STYLE_UNSPECIFIED value - * @property {number} DECLARATIVE_FRIENDLY=1 DECLARATIVE_FRIENDLY value - */ - ResourceDescriptor.Style = (function() { - var valuesById = {}, values = Object.create(valuesById); - values[valuesById[0] = "STYLE_UNSPECIFIED"] = 0; - values[valuesById[1] = "DECLARATIVE_FRIENDLY"] = 1; - return values; - })(); + return CommonFeatureSpec; + })(); - return ResourceDescriptor; - })(); + v1beta.CommonFeatureState = (function() { - api.ResourceReference = (function() { + /** + * Properties of a CommonFeatureState. + * @memberof google.cloud.gkehub.v1beta + * @interface ICommonFeatureState + * @property {google.cloud.gkehub.v1beta.IFeatureState|null} [state] CommonFeatureState state + */ + + /** + * Constructs a new CommonFeatureState. + * @memberof google.cloud.gkehub.v1beta + * @classdesc Represents a CommonFeatureState. + * @implements ICommonFeatureState + * @constructor + * @param {google.cloud.gkehub.v1beta.ICommonFeatureState=} [properties] Properties to set + */ + function CommonFeatureState(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]]; + } + + /** + * CommonFeatureState state. + * @member {google.cloud.gkehub.v1beta.IFeatureState|null|undefined} state + * @memberof google.cloud.gkehub.v1beta.CommonFeatureState + * @instance + */ + CommonFeatureState.prototype.state = null; + + /** + * Creates a new CommonFeatureState instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.v1beta.CommonFeatureState + * @static + * @param {google.cloud.gkehub.v1beta.ICommonFeatureState=} [properties] Properties to set + * @returns {google.cloud.gkehub.v1beta.CommonFeatureState} CommonFeatureState instance + */ + CommonFeatureState.create = function create(properties) { + return new CommonFeatureState(properties); + }; + + /** + * Encodes the specified CommonFeatureState message. Does not implicitly {@link google.cloud.gkehub.v1beta.CommonFeatureState.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.v1beta.CommonFeatureState + * @static + * @param {google.cloud.gkehub.v1beta.ICommonFeatureState} message CommonFeatureState message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + CommonFeatureState.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.state != null && Object.hasOwnProperty.call(message, "state")) + $root.google.cloud.gkehub.v1beta.FeatureState.encode(message.state, writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim(); + return writer; + }; + + /** + * Encodes the specified CommonFeatureState message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta.CommonFeatureState.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.v1beta.CommonFeatureState + * @static + * @param {google.cloud.gkehub.v1beta.ICommonFeatureState} message CommonFeatureState message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + CommonFeatureState.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a CommonFeatureState message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.v1beta.CommonFeatureState + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.v1beta.CommonFeatureState} CommonFeatureState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + CommonFeatureState.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.v1beta.CommonFeatureState(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.state = $root.google.cloud.gkehub.v1beta.FeatureState.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a CommonFeatureState message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.v1beta.CommonFeatureState + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.v1beta.CommonFeatureState} CommonFeatureState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + CommonFeatureState.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a CommonFeatureState message. + * @function verify + * @memberof google.cloud.gkehub.v1beta.CommonFeatureState + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + CommonFeatureState.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.state != null && message.hasOwnProperty("state")) { + var error = $root.google.cloud.gkehub.v1beta.FeatureState.verify(message.state); + if (error) + return "state." + error; + } + return null; + }; + + /** + * Creates a CommonFeatureState message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.v1beta.CommonFeatureState + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.v1beta.CommonFeatureState} CommonFeatureState + */ + CommonFeatureState.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.v1beta.CommonFeatureState) + return object; + var message = new $root.google.cloud.gkehub.v1beta.CommonFeatureState(); + if (object.state != null) { + if (typeof object.state !== "object") + throw TypeError(".google.cloud.gkehub.v1beta.CommonFeatureState.state: object expected"); + message.state = $root.google.cloud.gkehub.v1beta.FeatureState.fromObject(object.state); + } + return message; + }; + + /** + * Creates a plain object from a CommonFeatureState message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.v1beta.CommonFeatureState + * @static + * @param {google.cloud.gkehub.v1beta.CommonFeatureState} message CommonFeatureState + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + CommonFeatureState.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) + object.state = null; + if (message.state != null && message.hasOwnProperty("state")) + object.state = $root.google.cloud.gkehub.v1beta.FeatureState.toObject(message.state, options); + return object; + }; - /** - * Properties of a ResourceReference. - * @memberof google.api - * @interface IResourceReference - * @property {string|null} [type] ResourceReference type - * @property {string|null} [childType] ResourceReference childType - */ + /** + * Converts this CommonFeatureState to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.v1beta.CommonFeatureState + * @instance + * @returns {Object.} JSON object + */ + CommonFeatureState.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; - /** - * Constructs a new ResourceReference. - * @memberof google.api - * @classdesc Represents a ResourceReference. - * @implements IResourceReference - * @constructor - * @param {google.api.IResourceReference=} [properties] Properties to set - */ - function ResourceReference(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]]; - } + return CommonFeatureState; + })(); - /** - * ResourceReference type. - * @member {string} type - * @memberof google.api.ResourceReference - * @instance - */ - ResourceReference.prototype.type = ""; + v1beta.MembershipFeatureSpec = (function() { - /** - * ResourceReference childType. - * @member {string} childType - * @memberof google.api.ResourceReference - * @instance - */ - ResourceReference.prototype.childType = ""; + /** + * Properties of a MembershipFeatureSpec. + * @memberof google.cloud.gkehub.v1beta + * @interface IMembershipFeatureSpec + * @property {google.cloud.gkehub.configmanagement.v1beta.IMembershipSpec|null} [configmanagement] MembershipFeatureSpec configmanagement + */ - /** - * Creates a new ResourceReference instance using the specified properties. - * @function create - * @memberof google.api.ResourceReference - * @static - * @param {google.api.IResourceReference=} [properties] Properties to set - * @returns {google.api.ResourceReference} ResourceReference instance - */ - ResourceReference.create = function create(properties) { - return new ResourceReference(properties); - }; + /** + * Constructs a new MembershipFeatureSpec. + * @memberof google.cloud.gkehub.v1beta + * @classdesc Represents a MembershipFeatureSpec. + * @implements IMembershipFeatureSpec + * @constructor + * @param {google.cloud.gkehub.v1beta.IMembershipFeatureSpec=} [properties] Properties to set + */ + function MembershipFeatureSpec(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]]; + } - /** - * Encodes the specified ResourceReference message. Does not implicitly {@link google.api.ResourceReference.verify|verify} messages. - * @function encode - * @memberof google.api.ResourceReference - * @static - * @param {google.api.IResourceReference} message ResourceReference message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - ResourceReference.encode = function encode(message, writer) { - if (!writer) - writer = $Writer.create(); - if (message.type != null && Object.hasOwnProperty.call(message, "type")) - writer.uint32(/* id 1, wireType 2 =*/10).string(message.type); - if (message.childType != null && Object.hasOwnProperty.call(message, "childType")) - writer.uint32(/* id 2, wireType 2 =*/18).string(message.childType); - return writer; - }; + /** + * MembershipFeatureSpec configmanagement. + * @member {google.cloud.gkehub.configmanagement.v1beta.IMembershipSpec|null|undefined} configmanagement + * @memberof google.cloud.gkehub.v1beta.MembershipFeatureSpec + * @instance + */ + MembershipFeatureSpec.prototype.configmanagement = null; - /** - * Encodes the specified ResourceReference message, length delimited. Does not implicitly {@link google.api.ResourceReference.verify|verify} messages. - * @function encodeDelimited - * @memberof google.api.ResourceReference - * @static - * @param {google.api.IResourceReference} message ResourceReference message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - ResourceReference.encodeDelimited = function encodeDelimited(message, writer) { - return this.encode(message, writer).ldelim(); - }; + // OneOf field names bound to virtual getters and setters + var $oneOfFields; - /** - * Decodes a ResourceReference message from the specified reader or buffer. - * @function decode - * @memberof google.api.ResourceReference - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @param {number} [length] Message length if known beforehand - * @returns {google.api.ResourceReference} ResourceReference - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - ResourceReference.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.api.ResourceReference(); - while (reader.pos < end) { - var tag = reader.uint32(); - switch (tag >>> 3) { - case 1: - message.type = reader.string(); - break; - case 2: - message.childType = reader.string(); - break; - default: - reader.skipType(tag & 7); - break; - } - } - return message; - }; + /** + * MembershipFeatureSpec featureSpec. + * @member {"configmanagement"|undefined} featureSpec + * @memberof google.cloud.gkehub.v1beta.MembershipFeatureSpec + * @instance + */ + Object.defineProperty(MembershipFeatureSpec.prototype, "featureSpec", { + get: $util.oneOfGetter($oneOfFields = ["configmanagement"]), + set: $util.oneOfSetter($oneOfFields) + }); - /** - * Decodes a ResourceReference message from the specified reader or buffer, length delimited. - * @function decodeDelimited - * @memberof google.api.ResourceReference - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {google.api.ResourceReference} ResourceReference - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - ResourceReference.decodeDelimited = function decodeDelimited(reader) { - if (!(reader instanceof $Reader)) - reader = new $Reader(reader); - return this.decode(reader, reader.uint32()); - }; + /** + * Creates a new MembershipFeatureSpec instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.v1beta.MembershipFeatureSpec + * @static + * @param {google.cloud.gkehub.v1beta.IMembershipFeatureSpec=} [properties] Properties to set + * @returns {google.cloud.gkehub.v1beta.MembershipFeatureSpec} MembershipFeatureSpec instance + */ + MembershipFeatureSpec.create = function create(properties) { + return new MembershipFeatureSpec(properties); + }; - /** - * Verifies a ResourceReference message. - * @function verify - * @memberof google.api.ResourceReference - * @static - * @param {Object.} message Plain object to verify - * @returns {string|null} `null` if valid, otherwise the reason why it is not - */ - ResourceReference.verify = function verify(message) { - if (typeof message !== "object" || message === null) - return "object expected"; - if (message.type != null && message.hasOwnProperty("type")) - if (!$util.isString(message.type)) - return "type: string expected"; - if (message.childType != null && message.hasOwnProperty("childType")) - if (!$util.isString(message.childType)) - return "childType: string expected"; - return null; - }; + /** + * Encodes the specified MembershipFeatureSpec message. Does not implicitly {@link google.cloud.gkehub.v1beta.MembershipFeatureSpec.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.v1beta.MembershipFeatureSpec + * @static + * @param {google.cloud.gkehub.v1beta.IMembershipFeatureSpec} message MembershipFeatureSpec message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + MembershipFeatureSpec.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.configmanagement != null && Object.hasOwnProperty.call(message, "configmanagement")) + $root.google.cloud.gkehub.configmanagement.v1beta.MembershipSpec.encode(message.configmanagement, writer.uint32(/* id 106, wireType 2 =*/850).fork()).ldelim(); + return writer; + }; - /** - * Creates a ResourceReference message from a plain object. Also converts values to their respective internal types. - * @function fromObject - * @memberof google.api.ResourceReference - * @static - * @param {Object.} object Plain object - * @returns {google.api.ResourceReference} ResourceReference - */ - ResourceReference.fromObject = function fromObject(object) { - if (object instanceof $root.google.api.ResourceReference) - return object; - var message = new $root.google.api.ResourceReference(); - if (object.type != null) - message.type = String(object.type); - if (object.childType != null) - message.childType = String(object.childType); - return message; - }; + /** + * Encodes the specified MembershipFeatureSpec message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta.MembershipFeatureSpec.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.v1beta.MembershipFeatureSpec + * @static + * @param {google.cloud.gkehub.v1beta.IMembershipFeatureSpec} message MembershipFeatureSpec message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + MembershipFeatureSpec.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; - /** - * Creates a plain object from a ResourceReference message. Also converts values to other types if specified. - * @function toObject - * @memberof google.api.ResourceReference - * @static - * @param {google.api.ResourceReference} message ResourceReference - * @param {$protobuf.IConversionOptions} [options] Conversion options - * @returns {Object.} Plain object - */ - ResourceReference.toObject = function toObject(message, options) { - if (!options) - options = {}; - var object = {}; - if (options.defaults) { - object.type = ""; - object.childType = ""; - } - if (message.type != null && message.hasOwnProperty("type")) - object.type = message.type; - if (message.childType != null && message.hasOwnProperty("childType")) - object.childType = message.childType; - return object; - }; + /** + * Decodes a MembershipFeatureSpec message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.v1beta.MembershipFeatureSpec + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.v1beta.MembershipFeatureSpec} MembershipFeatureSpec + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + MembershipFeatureSpec.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.v1beta.MembershipFeatureSpec(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 106: + message.configmanagement = $root.google.cloud.gkehub.configmanagement.v1beta.MembershipSpec.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; - /** - * Converts this ResourceReference to JSON. - * @function toJSON - * @memberof google.api.ResourceReference - * @instance - * @returns {Object.} JSON object - */ - ResourceReference.prototype.toJSON = function toJSON() { - return this.constructor.toObject(this, $protobuf.util.toJSONOptions); - }; + /** + * Decodes a MembershipFeatureSpec message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.v1beta.MembershipFeatureSpec + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.v1beta.MembershipFeatureSpec} MembershipFeatureSpec + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + MembershipFeatureSpec.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; - return ResourceReference; - })(); + /** + * Verifies a MembershipFeatureSpec message. + * @function verify + * @memberof google.cloud.gkehub.v1beta.MembershipFeatureSpec + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + MembershipFeatureSpec.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + var properties = {}; + if (message.configmanagement != null && message.hasOwnProperty("configmanagement")) { + properties.featureSpec = 1; + { + var error = $root.google.cloud.gkehub.configmanagement.v1beta.MembershipSpec.verify(message.configmanagement); + if (error) + return "configmanagement." + error; + } + } + return null; + }; - return api; - })(); + /** + * Creates a MembershipFeatureSpec message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.v1beta.MembershipFeatureSpec + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.v1beta.MembershipFeatureSpec} MembershipFeatureSpec + */ + MembershipFeatureSpec.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.v1beta.MembershipFeatureSpec) + return object; + var message = new $root.google.cloud.gkehub.v1beta.MembershipFeatureSpec(); + if (object.configmanagement != null) { + if (typeof object.configmanagement !== "object") + throw TypeError(".google.cloud.gkehub.v1beta.MembershipFeatureSpec.configmanagement: object expected"); + message.configmanagement = $root.google.cloud.gkehub.configmanagement.v1beta.MembershipSpec.fromObject(object.configmanagement); + } + return message; + }; - google.protobuf = (function() { + /** + * Creates a plain object from a MembershipFeatureSpec message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.v1beta.MembershipFeatureSpec + * @static + * @param {google.cloud.gkehub.v1beta.MembershipFeatureSpec} message MembershipFeatureSpec + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + MembershipFeatureSpec.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (message.configmanagement != null && message.hasOwnProperty("configmanagement")) { + object.configmanagement = $root.google.cloud.gkehub.configmanagement.v1beta.MembershipSpec.toObject(message.configmanagement, options); + if (options.oneofs) + object.featureSpec = "configmanagement"; + } + return object; + }; - /** - * Namespace protobuf. - * @memberof google - * @namespace - */ - var protobuf = {}; + /** + * Converts this MembershipFeatureSpec to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.v1beta.MembershipFeatureSpec + * @instance + * @returns {Object.} JSON object + */ + MembershipFeatureSpec.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; - protobuf.FileDescriptorSet = (function() { + return MembershipFeatureSpec; + })(); - /** - * Properties of a FileDescriptorSet. - * @memberof google.protobuf - * @interface IFileDescriptorSet - * @property {Array.|null} [file] FileDescriptorSet file - */ + v1beta.MembershipFeatureState = (function() { - /** - * Constructs a new FileDescriptorSet. - * @memberof google.protobuf - * @classdesc Represents a FileDescriptorSet. - * @implements IFileDescriptorSet - * @constructor - * @param {google.protobuf.IFileDescriptorSet=} [properties] Properties to set - */ - function FileDescriptorSet(properties) { - this.file = []; - 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]]; - } + /** + * Properties of a MembershipFeatureState. + * @memberof google.cloud.gkehub.v1beta + * @interface IMembershipFeatureState + * @property {google.cloud.gkehub.metering.v1beta.IMembershipState|null} [metering] MembershipFeatureState metering + * @property {google.cloud.gkehub.configmanagement.v1beta.IMembershipState|null} [configmanagement] MembershipFeatureState configmanagement + * @property {google.cloud.gkehub.v1beta.IFeatureState|null} [state] MembershipFeatureState state + */ - /** - * FileDescriptorSet file. - * @member {Array.} file - * @memberof google.protobuf.FileDescriptorSet - * @instance - */ - FileDescriptorSet.prototype.file = $util.emptyArray; + /** + * Constructs a new MembershipFeatureState. + * @memberof google.cloud.gkehub.v1beta + * @classdesc Represents a MembershipFeatureState. + * @implements IMembershipFeatureState + * @constructor + * @param {google.cloud.gkehub.v1beta.IMembershipFeatureState=} [properties] Properties to set + */ + function MembershipFeatureState(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]]; + } - /** - * Creates a new FileDescriptorSet instance using the specified properties. - * @function create - * @memberof google.protobuf.FileDescriptorSet - * @static - * @param {google.protobuf.IFileDescriptorSet=} [properties] Properties to set - * @returns {google.protobuf.FileDescriptorSet} FileDescriptorSet instance - */ - FileDescriptorSet.create = function create(properties) { - return new FileDescriptorSet(properties); - }; + /** + * MembershipFeatureState metering. + * @member {google.cloud.gkehub.metering.v1beta.IMembershipState|null|undefined} metering + * @memberof google.cloud.gkehub.v1beta.MembershipFeatureState + * @instance + */ + MembershipFeatureState.prototype.metering = null; - /** - * Encodes the specified FileDescriptorSet message. Does not implicitly {@link google.protobuf.FileDescriptorSet.verify|verify} messages. - * @function encode - * @memberof google.protobuf.FileDescriptorSet - * @static - * @param {google.protobuf.IFileDescriptorSet} message FileDescriptorSet message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - FileDescriptorSet.encode = function encode(message, writer) { - if (!writer) - writer = $Writer.create(); - if (message.file != null && message.file.length) - for (var i = 0; i < message.file.length; ++i) - $root.google.protobuf.FileDescriptorProto.encode(message.file[i], writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim(); - return writer; - }; + /** + * MembershipFeatureState configmanagement. + * @member {google.cloud.gkehub.configmanagement.v1beta.IMembershipState|null|undefined} configmanagement + * @memberof google.cloud.gkehub.v1beta.MembershipFeatureState + * @instance + */ + MembershipFeatureState.prototype.configmanagement = null; - /** - * Encodes the specified FileDescriptorSet message, length delimited. Does not implicitly {@link google.protobuf.FileDescriptorSet.verify|verify} messages. - * @function encodeDelimited - * @memberof google.protobuf.FileDescriptorSet - * @static - * @param {google.protobuf.IFileDescriptorSet} message FileDescriptorSet message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - FileDescriptorSet.encodeDelimited = function encodeDelimited(message, writer) { - return this.encode(message, writer).ldelim(); - }; + /** + * MembershipFeatureState state. + * @member {google.cloud.gkehub.v1beta.IFeatureState|null|undefined} state + * @memberof google.cloud.gkehub.v1beta.MembershipFeatureState + * @instance + */ + MembershipFeatureState.prototype.state = null; - /** - * Decodes a FileDescriptorSet message from the specified reader or buffer. - * @function decode - * @memberof google.protobuf.FileDescriptorSet - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @param {number} [length] Message length if known beforehand - * @returns {google.protobuf.FileDescriptorSet} FileDescriptorSet - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - FileDescriptorSet.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.protobuf.FileDescriptorSet(); - while (reader.pos < end) { - var tag = reader.uint32(); - switch (tag >>> 3) { - case 1: - if (!(message.file && message.file.length)) - message.file = []; - message.file.push($root.google.protobuf.FileDescriptorProto.decode(reader, reader.uint32())); - break; - default: - reader.skipType(tag & 7); - break; - } - } - return message; - }; + // OneOf field names bound to virtual getters and setters + var $oneOfFields; - /** - * Decodes a FileDescriptorSet message from the specified reader or buffer, length delimited. - * @function decodeDelimited - * @memberof google.protobuf.FileDescriptorSet - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {google.protobuf.FileDescriptorSet} FileDescriptorSet - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - FileDescriptorSet.decodeDelimited = function decodeDelimited(reader) { - if (!(reader instanceof $Reader)) - reader = new $Reader(reader); - return this.decode(reader, reader.uint32()); - }; + /** + * MembershipFeatureState featureState. + * @member {"metering"|"configmanagement"|undefined} featureState + * @memberof google.cloud.gkehub.v1beta.MembershipFeatureState + * @instance + */ + Object.defineProperty(MembershipFeatureState.prototype, "featureState", { + get: $util.oneOfGetter($oneOfFields = ["metering", "configmanagement"]), + set: $util.oneOfSetter($oneOfFields) + }); - /** - * Verifies a FileDescriptorSet message. - * @function verify - * @memberof google.protobuf.FileDescriptorSet - * @static - * @param {Object.} message Plain object to verify - * @returns {string|null} `null` if valid, otherwise the reason why it is not - */ - FileDescriptorSet.verify = function verify(message) { - if (typeof message !== "object" || message === null) - return "object expected"; - if (message.file != null && message.hasOwnProperty("file")) { - if (!Array.isArray(message.file)) - return "file: array expected"; - for (var i = 0; i < message.file.length; ++i) { - var error = $root.google.protobuf.FileDescriptorProto.verify(message.file[i]); - if (error) - return "file." + error; - } - } - return null; - }; + /** + * Creates a new MembershipFeatureState instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.v1beta.MembershipFeatureState + * @static + * @param {google.cloud.gkehub.v1beta.IMembershipFeatureState=} [properties] Properties to set + * @returns {google.cloud.gkehub.v1beta.MembershipFeatureState} MembershipFeatureState instance + */ + MembershipFeatureState.create = function create(properties) { + return new MembershipFeatureState(properties); + }; + + /** + * Encodes the specified MembershipFeatureState message. Does not implicitly {@link google.cloud.gkehub.v1beta.MembershipFeatureState.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.v1beta.MembershipFeatureState + * @static + * @param {google.cloud.gkehub.v1beta.IMembershipFeatureState} message MembershipFeatureState message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + MembershipFeatureState.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.state != null && Object.hasOwnProperty.call(message, "state")) + $root.google.cloud.gkehub.v1beta.FeatureState.encode(message.state, writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim(); + if (message.metering != null && Object.hasOwnProperty.call(message, "metering")) + $root.google.cloud.gkehub.metering.v1beta.MembershipState.encode(message.metering, writer.uint32(/* id 104, wireType 2 =*/834).fork()).ldelim(); + if (message.configmanagement != null && Object.hasOwnProperty.call(message, "configmanagement")) + $root.google.cloud.gkehub.configmanagement.v1beta.MembershipState.encode(message.configmanagement, writer.uint32(/* id 106, wireType 2 =*/850).fork()).ldelim(); + return writer; + }; - /** - * Creates a FileDescriptorSet message from a plain object. Also converts values to their respective internal types. - * @function fromObject - * @memberof google.protobuf.FileDescriptorSet - * @static - * @param {Object.} object Plain object - * @returns {google.protobuf.FileDescriptorSet} FileDescriptorSet - */ - FileDescriptorSet.fromObject = function fromObject(object) { - if (object instanceof $root.google.protobuf.FileDescriptorSet) - return object; - var message = new $root.google.protobuf.FileDescriptorSet(); - if (object.file) { - if (!Array.isArray(object.file)) - throw TypeError(".google.protobuf.FileDescriptorSet.file: array expected"); - message.file = []; - for (var i = 0; i < object.file.length; ++i) { - if (typeof object.file[i] !== "object") - throw TypeError(".google.protobuf.FileDescriptorSet.file: object expected"); - message.file[i] = $root.google.protobuf.FileDescriptorProto.fromObject(object.file[i]); - } - } - return message; - }; + /** + * Encodes the specified MembershipFeatureState message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta.MembershipFeatureState.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.v1beta.MembershipFeatureState + * @static + * @param {google.cloud.gkehub.v1beta.IMembershipFeatureState} message MembershipFeatureState message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + MembershipFeatureState.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; - /** - * Creates a plain object from a FileDescriptorSet message. Also converts values to other types if specified. - * @function toObject - * @memberof google.protobuf.FileDescriptorSet - * @static - * @param {google.protobuf.FileDescriptorSet} message FileDescriptorSet - * @param {$protobuf.IConversionOptions} [options] Conversion options - * @returns {Object.} Plain object - */ - FileDescriptorSet.toObject = function toObject(message, options) { - if (!options) - options = {}; - var object = {}; - if (options.arrays || options.defaults) - object.file = []; - if (message.file && message.file.length) { - object.file = []; - for (var j = 0; j < message.file.length; ++j) - object.file[j] = $root.google.protobuf.FileDescriptorProto.toObject(message.file[j], options); - } - return object; - }; + /** + * Decodes a MembershipFeatureState message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.v1beta.MembershipFeatureState + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.v1beta.MembershipFeatureState} MembershipFeatureState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + MembershipFeatureState.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.v1beta.MembershipFeatureState(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 104: + message.metering = $root.google.cloud.gkehub.metering.v1beta.MembershipState.decode(reader, reader.uint32()); + break; + case 106: + message.configmanagement = $root.google.cloud.gkehub.configmanagement.v1beta.MembershipState.decode(reader, reader.uint32()); + break; + case 1: + message.state = $root.google.cloud.gkehub.v1beta.FeatureState.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; - /** - * Converts this FileDescriptorSet to JSON. - * @function toJSON - * @memberof google.protobuf.FileDescriptorSet - * @instance - * @returns {Object.} JSON object - */ - FileDescriptorSet.prototype.toJSON = function toJSON() { - return this.constructor.toObject(this, $protobuf.util.toJSONOptions); - }; + /** + * Decodes a MembershipFeatureState message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.v1beta.MembershipFeatureState + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.v1beta.MembershipFeatureState} MembershipFeatureState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + MembershipFeatureState.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; - return FileDescriptorSet; - })(); + /** + * Verifies a MembershipFeatureState message. + * @function verify + * @memberof google.cloud.gkehub.v1beta.MembershipFeatureState + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + MembershipFeatureState.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + var properties = {}; + if (message.metering != null && message.hasOwnProperty("metering")) { + properties.featureState = 1; + { + var error = $root.google.cloud.gkehub.metering.v1beta.MembershipState.verify(message.metering); + if (error) + return "metering." + error; + } + } + if (message.configmanagement != null && message.hasOwnProperty("configmanagement")) { + if (properties.featureState === 1) + return "featureState: multiple values"; + properties.featureState = 1; + { + var error = $root.google.cloud.gkehub.configmanagement.v1beta.MembershipState.verify(message.configmanagement); + if (error) + return "configmanagement." + error; + } + } + if (message.state != null && message.hasOwnProperty("state")) { + var error = $root.google.cloud.gkehub.v1beta.FeatureState.verify(message.state); + if (error) + return "state." + error; + } + return null; + }; - protobuf.FileDescriptorProto = (function() { + /** + * Creates a MembershipFeatureState message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.v1beta.MembershipFeatureState + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.v1beta.MembershipFeatureState} MembershipFeatureState + */ + MembershipFeatureState.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.v1beta.MembershipFeatureState) + return object; + var message = new $root.google.cloud.gkehub.v1beta.MembershipFeatureState(); + if (object.metering != null) { + if (typeof object.metering !== "object") + throw TypeError(".google.cloud.gkehub.v1beta.MembershipFeatureState.metering: object expected"); + message.metering = $root.google.cloud.gkehub.metering.v1beta.MembershipState.fromObject(object.metering); + } + if (object.configmanagement != null) { + if (typeof object.configmanagement !== "object") + throw TypeError(".google.cloud.gkehub.v1beta.MembershipFeatureState.configmanagement: object expected"); + message.configmanagement = $root.google.cloud.gkehub.configmanagement.v1beta.MembershipState.fromObject(object.configmanagement); + } + if (object.state != null) { + if (typeof object.state !== "object") + throw TypeError(".google.cloud.gkehub.v1beta.MembershipFeatureState.state: object expected"); + message.state = $root.google.cloud.gkehub.v1beta.FeatureState.fromObject(object.state); + } + return message; + }; - /** - * Properties of a FileDescriptorProto. - * @memberof google.protobuf - * @interface IFileDescriptorProto - * @property {string|null} [name] FileDescriptorProto name - * @property {string|null} ["package"] FileDescriptorProto package - * @property {Array.|null} [dependency] FileDescriptorProto dependency - * @property {Array.|null} [publicDependency] FileDescriptorProto publicDependency - * @property {Array.|null} [weakDependency] FileDescriptorProto weakDependency - * @property {Array.|null} [messageType] FileDescriptorProto messageType - * @property {Array.|null} [enumType] FileDescriptorProto enumType - * @property {Array.|null} [service] FileDescriptorProto service - * @property {Array.|null} [extension] FileDescriptorProto extension - * @property {google.protobuf.IFileOptions|null} [options] FileDescriptorProto options - * @property {google.protobuf.ISourceCodeInfo|null} [sourceCodeInfo] FileDescriptorProto sourceCodeInfo - * @property {string|null} [syntax] FileDescriptorProto syntax - */ + /** + * Creates a plain object from a MembershipFeatureState message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.v1beta.MembershipFeatureState + * @static + * @param {google.cloud.gkehub.v1beta.MembershipFeatureState} message MembershipFeatureState + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + MembershipFeatureState.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) + object.state = null; + if (message.state != null && message.hasOwnProperty("state")) + object.state = $root.google.cloud.gkehub.v1beta.FeatureState.toObject(message.state, options); + if (message.metering != null && message.hasOwnProperty("metering")) { + object.metering = $root.google.cloud.gkehub.metering.v1beta.MembershipState.toObject(message.metering, options); + if (options.oneofs) + object.featureState = "metering"; + } + if (message.configmanagement != null && message.hasOwnProperty("configmanagement")) { + object.configmanagement = $root.google.cloud.gkehub.configmanagement.v1beta.MembershipState.toObject(message.configmanagement, options); + if (options.oneofs) + object.featureState = "configmanagement"; + } + return object; + }; - /** - * Constructs a new FileDescriptorProto. - * @memberof google.protobuf - * @classdesc Represents a FileDescriptorProto. - * @implements IFileDescriptorProto - * @constructor - * @param {google.protobuf.IFileDescriptorProto=} [properties] Properties to set - */ - function FileDescriptorProto(properties) { - this.dependency = []; - this.publicDependency = []; - this.weakDependency = []; - this.messageType = []; - this.enumType = []; - this.service = []; - this.extension = []; - 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]]; - } + /** + * Converts this MembershipFeatureState to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.v1beta.MembershipFeatureState + * @instance + * @returns {Object.} JSON object + */ + MembershipFeatureState.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; - /** - * FileDescriptorProto name. - * @member {string} name - * @memberof google.protobuf.FileDescriptorProto - * @instance - */ - FileDescriptorProto.prototype.name = ""; + return MembershipFeatureState; + })(); - /** - * FileDescriptorProto package. - * @member {string} package - * @memberof google.protobuf.FileDescriptorProto - * @instance - */ - FileDescriptorProto.prototype["package"] = ""; + v1beta.GkeHub = (function() { - /** - * FileDescriptorProto dependency. - * @member {Array.} dependency - * @memberof google.protobuf.FileDescriptorProto - * @instance - */ - FileDescriptorProto.prototype.dependency = $util.emptyArray; + /** + * Constructs a new GkeHub service. + * @memberof google.cloud.gkehub.v1beta + * @classdesc Represents a GkeHub + * @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 GkeHub(rpcImpl, requestDelimited, responseDelimited) { + $protobuf.rpc.Service.call(this, rpcImpl, requestDelimited, responseDelimited); + } - /** - * FileDescriptorProto publicDependency. - * @member {Array.} publicDependency - * @memberof google.protobuf.FileDescriptorProto - * @instance - */ - FileDescriptorProto.prototype.publicDependency = $util.emptyArray; + (GkeHub.prototype = Object.create($protobuf.rpc.Service.prototype)).constructor = GkeHub; - /** - * FileDescriptorProto weakDependency. - * @member {Array.} weakDependency - * @memberof google.protobuf.FileDescriptorProto - * @instance - */ - FileDescriptorProto.prototype.weakDependency = $util.emptyArray; + /** + * Creates new GkeHub service using the specified rpc implementation. + * @function create + * @memberof google.cloud.gkehub.v1beta.GkeHub + * @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 {GkeHub} RPC service. Useful where requests and/or responses are streamed. + */ + GkeHub.create = function create(rpcImpl, requestDelimited, responseDelimited) { + return new this(rpcImpl, requestDelimited, responseDelimited); + }; - /** - * FileDescriptorProto messageType. - * @member {Array.} messageType - * @memberof google.protobuf.FileDescriptorProto - * @instance - */ - FileDescriptorProto.prototype.messageType = $util.emptyArray; + /** + * Callback as used by {@link google.cloud.gkehub.v1beta.GkeHub#listFeatures}. + * @memberof google.cloud.gkehub.v1beta.GkeHub + * @typedef ListFeaturesCallback + * @type {function} + * @param {Error|null} error Error, if any + * @param {google.cloud.gkehub.v1beta.ListFeaturesResponse} [response] ListFeaturesResponse + */ - /** - * FileDescriptorProto enumType. - * @member {Array.} enumType - * @memberof google.protobuf.FileDescriptorProto - * @instance - */ - FileDescriptorProto.prototype.enumType = $util.emptyArray; + /** + * Calls ListFeatures. + * @function listFeatures + * @memberof google.cloud.gkehub.v1beta.GkeHub + * @instance + * @param {google.cloud.gkehub.v1beta.IListFeaturesRequest} request ListFeaturesRequest message or plain object + * @param {google.cloud.gkehub.v1beta.GkeHub.ListFeaturesCallback} callback Node-style callback called with the error, if any, and ListFeaturesResponse + * @returns {undefined} + * @variation 1 + */ + Object.defineProperty(GkeHub.prototype.listFeatures = function listFeatures(request, callback) { + return this.rpcCall(listFeatures, $root.google.cloud.gkehub.v1beta.ListFeaturesRequest, $root.google.cloud.gkehub.v1beta.ListFeaturesResponse, request, callback); + }, "name", { value: "ListFeatures" }); - /** - * FileDescriptorProto service. - * @member {Array.} service - * @memberof google.protobuf.FileDescriptorProto - * @instance - */ - FileDescriptorProto.prototype.service = $util.emptyArray; + /** + * Calls ListFeatures. + * @function listFeatures + * @memberof google.cloud.gkehub.v1beta.GkeHub + * @instance + * @param {google.cloud.gkehub.v1beta.IListFeaturesRequest} request ListFeaturesRequest message or plain object + * @returns {Promise} Promise + * @variation 2 + */ - /** - * FileDescriptorProto extension. - * @member {Array.} extension - * @memberof google.protobuf.FileDescriptorProto - * @instance - */ - FileDescriptorProto.prototype.extension = $util.emptyArray; + /** + * Callback as used by {@link google.cloud.gkehub.v1beta.GkeHub#getFeature}. + * @memberof google.cloud.gkehub.v1beta.GkeHub + * @typedef GetFeatureCallback + * @type {function} + * @param {Error|null} error Error, if any + * @param {google.cloud.gkehub.v1beta.Feature} [response] Feature + */ - /** - * FileDescriptorProto options. - * @member {google.protobuf.IFileOptions|null|undefined} options - * @memberof google.protobuf.FileDescriptorProto - * @instance - */ - FileDescriptorProto.prototype.options = null; + /** + * Calls GetFeature. + * @function getFeature + * @memberof google.cloud.gkehub.v1beta.GkeHub + * @instance + * @param {google.cloud.gkehub.v1beta.IGetFeatureRequest} request GetFeatureRequest message or plain object + * @param {google.cloud.gkehub.v1beta.GkeHub.GetFeatureCallback} callback Node-style callback called with the error, if any, and Feature + * @returns {undefined} + * @variation 1 + */ + Object.defineProperty(GkeHub.prototype.getFeature = function getFeature(request, callback) { + return this.rpcCall(getFeature, $root.google.cloud.gkehub.v1beta.GetFeatureRequest, $root.google.cloud.gkehub.v1beta.Feature, request, callback); + }, "name", { value: "GetFeature" }); - /** - * FileDescriptorProto sourceCodeInfo. - * @member {google.protobuf.ISourceCodeInfo|null|undefined} sourceCodeInfo - * @memberof google.protobuf.FileDescriptorProto - * @instance - */ - FileDescriptorProto.prototype.sourceCodeInfo = null; + /** + * Calls GetFeature. + * @function getFeature + * @memberof google.cloud.gkehub.v1beta.GkeHub + * @instance + * @param {google.cloud.gkehub.v1beta.IGetFeatureRequest} request GetFeatureRequest message or plain object + * @returns {Promise} Promise + * @variation 2 + */ - /** - * FileDescriptorProto syntax. - * @member {string} syntax - * @memberof google.protobuf.FileDescriptorProto - * @instance - */ - FileDescriptorProto.prototype.syntax = ""; + /** + * Callback as used by {@link google.cloud.gkehub.v1beta.GkeHub#createFeature}. + * @memberof google.cloud.gkehub.v1beta.GkeHub + * @typedef CreateFeatureCallback + * @type {function} + * @param {Error|null} error Error, if any + * @param {google.longrunning.Operation} [response] Operation + */ - /** - * Creates a new FileDescriptorProto instance using the specified properties. - * @function create - * @memberof google.protobuf.FileDescriptorProto - * @static - * @param {google.protobuf.IFileDescriptorProto=} [properties] Properties to set - * @returns {google.protobuf.FileDescriptorProto} FileDescriptorProto instance - */ - FileDescriptorProto.create = function create(properties) { - return new FileDescriptorProto(properties); - }; + /** + * Calls CreateFeature. + * @function createFeature + * @memberof google.cloud.gkehub.v1beta.GkeHub + * @instance + * @param {google.cloud.gkehub.v1beta.ICreateFeatureRequest} request CreateFeatureRequest message or plain object + * @param {google.cloud.gkehub.v1beta.GkeHub.CreateFeatureCallback} callback Node-style callback called with the error, if any, and Operation + * @returns {undefined} + * @variation 1 + */ + Object.defineProperty(GkeHub.prototype.createFeature = function createFeature(request, callback) { + return this.rpcCall(createFeature, $root.google.cloud.gkehub.v1beta.CreateFeatureRequest, $root.google.longrunning.Operation, request, callback); + }, "name", { value: "CreateFeature" }); - /** - * Encodes the specified FileDescriptorProto message. Does not implicitly {@link google.protobuf.FileDescriptorProto.verify|verify} messages. - * @function encode - * @memberof google.protobuf.FileDescriptorProto - * @static - * @param {google.protobuf.IFileDescriptorProto} message FileDescriptorProto message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - FileDescriptorProto.encode = function encode(message, writer) { - if (!writer) - writer = $Writer.create(); - if (message.name != null && Object.hasOwnProperty.call(message, "name")) - writer.uint32(/* id 1, wireType 2 =*/10).string(message.name); - if (message["package"] != null && Object.hasOwnProperty.call(message, "package")) - writer.uint32(/* id 2, wireType 2 =*/18).string(message["package"]); - if (message.dependency != null && message.dependency.length) - for (var i = 0; i < message.dependency.length; ++i) - writer.uint32(/* id 3, wireType 2 =*/26).string(message.dependency[i]); - if (message.messageType != null && message.messageType.length) - for (var i = 0; i < message.messageType.length; ++i) - $root.google.protobuf.DescriptorProto.encode(message.messageType[i], writer.uint32(/* id 4, wireType 2 =*/34).fork()).ldelim(); - if (message.enumType != null && message.enumType.length) - for (var i = 0; i < message.enumType.length; ++i) - $root.google.protobuf.EnumDescriptorProto.encode(message.enumType[i], writer.uint32(/* id 5, wireType 2 =*/42).fork()).ldelim(); - if (message.service != null && message.service.length) - for (var i = 0; i < message.service.length; ++i) - $root.google.protobuf.ServiceDescriptorProto.encode(message.service[i], writer.uint32(/* id 6, wireType 2 =*/50).fork()).ldelim(); - if (message.extension != null && message.extension.length) - for (var i = 0; i < message.extension.length; ++i) - $root.google.protobuf.FieldDescriptorProto.encode(message.extension[i], writer.uint32(/* id 7, wireType 2 =*/58).fork()).ldelim(); - if (message.options != null && Object.hasOwnProperty.call(message, "options")) - $root.google.protobuf.FileOptions.encode(message.options, writer.uint32(/* id 8, wireType 2 =*/66).fork()).ldelim(); - if (message.sourceCodeInfo != null && Object.hasOwnProperty.call(message, "sourceCodeInfo")) - $root.google.protobuf.SourceCodeInfo.encode(message.sourceCodeInfo, writer.uint32(/* id 9, wireType 2 =*/74).fork()).ldelim(); - if (message.publicDependency != null && message.publicDependency.length) - for (var i = 0; i < message.publicDependency.length; ++i) - writer.uint32(/* id 10, wireType 0 =*/80).int32(message.publicDependency[i]); - if (message.weakDependency != null && message.weakDependency.length) - for (var i = 0; i < message.weakDependency.length; ++i) - writer.uint32(/* id 11, wireType 0 =*/88).int32(message.weakDependency[i]); - if (message.syntax != null && Object.hasOwnProperty.call(message, "syntax")) - writer.uint32(/* id 12, wireType 2 =*/98).string(message.syntax); - return writer; - }; + /** + * Calls CreateFeature. + * @function createFeature + * @memberof google.cloud.gkehub.v1beta.GkeHub + * @instance + * @param {google.cloud.gkehub.v1beta.ICreateFeatureRequest} request CreateFeatureRequest message or plain object + * @returns {Promise} Promise + * @variation 2 + */ - /** - * Encodes the specified FileDescriptorProto message, length delimited. Does not implicitly {@link google.protobuf.FileDescriptorProto.verify|verify} messages. - * @function encodeDelimited - * @memberof google.protobuf.FileDescriptorProto - * @static - * @param {google.protobuf.IFileDescriptorProto} message FileDescriptorProto message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - FileDescriptorProto.encodeDelimited = function encodeDelimited(message, writer) { - return this.encode(message, writer).ldelim(); - }; + /** + * Callback as used by {@link google.cloud.gkehub.v1beta.GkeHub#deleteFeature}. + * @memberof google.cloud.gkehub.v1beta.GkeHub + * @typedef DeleteFeatureCallback + * @type {function} + * @param {Error|null} error Error, if any + * @param {google.longrunning.Operation} [response] Operation + */ - /** - * Decodes a FileDescriptorProto message from the specified reader or buffer. - * @function decode - * @memberof google.protobuf.FileDescriptorProto - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @param {number} [length] Message length if known beforehand - * @returns {google.protobuf.FileDescriptorProto} FileDescriptorProto - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - FileDescriptorProto.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.protobuf.FileDescriptorProto(); - while (reader.pos < end) { - var tag = reader.uint32(); - switch (tag >>> 3) { - case 1: - message.name = reader.string(); - break; - case 2: - message["package"] = reader.string(); - break; - case 3: - if (!(message.dependency && message.dependency.length)) - message.dependency = []; - message.dependency.push(reader.string()); - break; - case 10: - if (!(message.publicDependency && message.publicDependency.length)) - message.publicDependency = []; - if ((tag & 7) === 2) { - var end2 = reader.uint32() + reader.pos; - while (reader.pos < end2) - message.publicDependency.push(reader.int32()); - } else - message.publicDependency.push(reader.int32()); - break; - case 11: - if (!(message.weakDependency && message.weakDependency.length)) - message.weakDependency = []; - if ((tag & 7) === 2) { - var end2 = reader.uint32() + reader.pos; - while (reader.pos < end2) - message.weakDependency.push(reader.int32()); - } else - message.weakDependency.push(reader.int32()); - break; - case 4: - if (!(message.messageType && message.messageType.length)) - message.messageType = []; - message.messageType.push($root.google.protobuf.DescriptorProto.decode(reader, reader.uint32())); - break; - case 5: - if (!(message.enumType && message.enumType.length)) - message.enumType = []; - message.enumType.push($root.google.protobuf.EnumDescriptorProto.decode(reader, reader.uint32())); - break; - case 6: - if (!(message.service && message.service.length)) - message.service = []; - message.service.push($root.google.protobuf.ServiceDescriptorProto.decode(reader, reader.uint32())); - break; - case 7: - if (!(message.extension && message.extension.length)) - message.extension = []; - message.extension.push($root.google.protobuf.FieldDescriptorProto.decode(reader, reader.uint32())); - break; - case 8: - message.options = $root.google.protobuf.FileOptions.decode(reader, reader.uint32()); - break; - case 9: - message.sourceCodeInfo = $root.google.protobuf.SourceCodeInfo.decode(reader, reader.uint32()); - break; - case 12: - message.syntax = reader.string(); - break; - default: - reader.skipType(tag & 7); - break; - } - } - return message; - }; + /** + * Calls DeleteFeature. + * @function deleteFeature + * @memberof google.cloud.gkehub.v1beta.GkeHub + * @instance + * @param {google.cloud.gkehub.v1beta.IDeleteFeatureRequest} request DeleteFeatureRequest message or plain object + * @param {google.cloud.gkehub.v1beta.GkeHub.DeleteFeatureCallback} callback Node-style callback called with the error, if any, and Operation + * @returns {undefined} + * @variation 1 + */ + Object.defineProperty(GkeHub.prototype.deleteFeature = function deleteFeature(request, callback) { + return this.rpcCall(deleteFeature, $root.google.cloud.gkehub.v1beta.DeleteFeatureRequest, $root.google.longrunning.Operation, request, callback); + }, "name", { value: "DeleteFeature" }); - /** - * Decodes a FileDescriptorProto message from the specified reader or buffer, length delimited. - * @function decodeDelimited - * @memberof google.protobuf.FileDescriptorProto - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {google.protobuf.FileDescriptorProto} FileDescriptorProto - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - FileDescriptorProto.decodeDelimited = function decodeDelimited(reader) { - if (!(reader instanceof $Reader)) - reader = new $Reader(reader); - return this.decode(reader, reader.uint32()); - }; + /** + * Calls DeleteFeature. + * @function deleteFeature + * @memberof google.cloud.gkehub.v1beta.GkeHub + * @instance + * @param {google.cloud.gkehub.v1beta.IDeleteFeatureRequest} request DeleteFeatureRequest message or plain object + * @returns {Promise} Promise + * @variation 2 + */ - /** - * Verifies a FileDescriptorProto message. - * @function verify - * @memberof google.protobuf.FileDescriptorProto - * @static - * @param {Object.} message Plain object to verify - * @returns {string|null} `null` if valid, otherwise the reason why it is not - */ - FileDescriptorProto.verify = function verify(message) { - if (typeof message !== "object" || message === null) - return "object expected"; - if (message.name != null && message.hasOwnProperty("name")) - if (!$util.isString(message.name)) - return "name: string expected"; - if (message["package"] != null && message.hasOwnProperty("package")) - if (!$util.isString(message["package"])) - return "package: string expected"; - if (message.dependency != null && message.hasOwnProperty("dependency")) { - if (!Array.isArray(message.dependency)) - return "dependency: array expected"; - for (var i = 0; i < message.dependency.length; ++i) - if (!$util.isString(message.dependency[i])) - return "dependency: string[] expected"; - } - if (message.publicDependency != null && message.hasOwnProperty("publicDependency")) { - if (!Array.isArray(message.publicDependency)) - return "publicDependency: array expected"; - for (var i = 0; i < message.publicDependency.length; ++i) - if (!$util.isInteger(message.publicDependency[i])) - return "publicDependency: integer[] expected"; - } - if (message.weakDependency != null && message.hasOwnProperty("weakDependency")) { - if (!Array.isArray(message.weakDependency)) - return "weakDependency: array expected"; - for (var i = 0; i < message.weakDependency.length; ++i) - if (!$util.isInteger(message.weakDependency[i])) - return "weakDependency: integer[] expected"; - } - if (message.messageType != null && message.hasOwnProperty("messageType")) { - if (!Array.isArray(message.messageType)) - return "messageType: array expected"; - for (var i = 0; i < message.messageType.length; ++i) { - var error = $root.google.protobuf.DescriptorProto.verify(message.messageType[i]); - if (error) - return "messageType." + error; - } - } - if (message.enumType != null && message.hasOwnProperty("enumType")) { - if (!Array.isArray(message.enumType)) - return "enumType: array expected"; - for (var i = 0; i < message.enumType.length; ++i) { - var error = $root.google.protobuf.EnumDescriptorProto.verify(message.enumType[i]); - if (error) - return "enumType." + error; - } - } - if (message.service != null && message.hasOwnProperty("service")) { - if (!Array.isArray(message.service)) - return "service: array expected"; - for (var i = 0; i < message.service.length; ++i) { - var error = $root.google.protobuf.ServiceDescriptorProto.verify(message.service[i]); - if (error) - return "service." + error; - } - } - if (message.extension != null && message.hasOwnProperty("extension")) { - if (!Array.isArray(message.extension)) - return "extension: array expected"; - for (var i = 0; i < message.extension.length; ++i) { - var error = $root.google.protobuf.FieldDescriptorProto.verify(message.extension[i]); - if (error) - return "extension." + error; + /** + * Callback as used by {@link google.cloud.gkehub.v1beta.GkeHub#updateFeature}. + * @memberof google.cloud.gkehub.v1beta.GkeHub + * @typedef UpdateFeatureCallback + * @type {function} + * @param {Error|null} error Error, if any + * @param {google.longrunning.Operation} [response] Operation + */ + + /** + * Calls UpdateFeature. + * @function updateFeature + * @memberof google.cloud.gkehub.v1beta.GkeHub + * @instance + * @param {google.cloud.gkehub.v1beta.IUpdateFeatureRequest} request UpdateFeatureRequest message or plain object + * @param {google.cloud.gkehub.v1beta.GkeHub.UpdateFeatureCallback} callback Node-style callback called with the error, if any, and Operation + * @returns {undefined} + * @variation 1 + */ + Object.defineProperty(GkeHub.prototype.updateFeature = function updateFeature(request, callback) { + return this.rpcCall(updateFeature, $root.google.cloud.gkehub.v1beta.UpdateFeatureRequest, $root.google.longrunning.Operation, request, callback); + }, "name", { value: "UpdateFeature" }); + + /** + * Calls UpdateFeature. + * @function updateFeature + * @memberof google.cloud.gkehub.v1beta.GkeHub + * @instance + * @param {google.cloud.gkehub.v1beta.IUpdateFeatureRequest} request UpdateFeatureRequest message or plain object + * @returns {Promise} Promise + * @variation 2 + */ + + return GkeHub; + })(); + + v1beta.ListFeaturesRequest = (function() { + + /** + * Properties of a ListFeaturesRequest. + * @memberof google.cloud.gkehub.v1beta + * @interface IListFeaturesRequest + * @property {string|null} [parent] ListFeaturesRequest parent + * @property {number|null} [pageSize] ListFeaturesRequest pageSize + * @property {string|null} [pageToken] ListFeaturesRequest pageToken + * @property {string|null} [filter] ListFeaturesRequest filter + * @property {string|null} [orderBy] ListFeaturesRequest orderBy + */ + + /** + * Constructs a new ListFeaturesRequest. + * @memberof google.cloud.gkehub.v1beta + * @classdesc Represents a ListFeaturesRequest. + * @implements IListFeaturesRequest + * @constructor + * @param {google.cloud.gkehub.v1beta.IListFeaturesRequest=} [properties] Properties to set + */ + function ListFeaturesRequest(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]]; } - } - if (message.options != null && message.hasOwnProperty("options")) { - var error = $root.google.protobuf.FileOptions.verify(message.options); - if (error) - return "options." + error; - } - if (message.sourceCodeInfo != null && message.hasOwnProperty("sourceCodeInfo")) { - var error = $root.google.protobuf.SourceCodeInfo.verify(message.sourceCodeInfo); - if (error) - return "sourceCodeInfo." + error; - } - if (message.syntax != null && message.hasOwnProperty("syntax")) - if (!$util.isString(message.syntax)) - return "syntax: string expected"; - return null; - }; - /** - * Creates a FileDescriptorProto message from a plain object. Also converts values to their respective internal types. - * @function fromObject - * @memberof google.protobuf.FileDescriptorProto - * @static - * @param {Object.} object Plain object - * @returns {google.protobuf.FileDescriptorProto} FileDescriptorProto - */ - FileDescriptorProto.fromObject = function fromObject(object) { - if (object instanceof $root.google.protobuf.FileDescriptorProto) - return object; - var message = new $root.google.protobuf.FileDescriptorProto(); - if (object.name != null) - message.name = String(object.name); - if (object["package"] != null) - message["package"] = String(object["package"]); - if (object.dependency) { - if (!Array.isArray(object.dependency)) - throw TypeError(".google.protobuf.FileDescriptorProto.dependency: array expected"); - message.dependency = []; - for (var i = 0; i < object.dependency.length; ++i) - message.dependency[i] = String(object.dependency[i]); - } - if (object.publicDependency) { - if (!Array.isArray(object.publicDependency)) - throw TypeError(".google.protobuf.FileDescriptorProto.publicDependency: array expected"); - message.publicDependency = []; - for (var i = 0; i < object.publicDependency.length; ++i) - message.publicDependency[i] = object.publicDependency[i] | 0; - } - if (object.weakDependency) { - if (!Array.isArray(object.weakDependency)) - throw TypeError(".google.protobuf.FileDescriptorProto.weakDependency: array expected"); - message.weakDependency = []; - for (var i = 0; i < object.weakDependency.length; ++i) - message.weakDependency[i] = object.weakDependency[i] | 0; - } - if (object.messageType) { - if (!Array.isArray(object.messageType)) - throw TypeError(".google.protobuf.FileDescriptorProto.messageType: array expected"); - message.messageType = []; - for (var i = 0; i < object.messageType.length; ++i) { - if (typeof object.messageType[i] !== "object") - throw TypeError(".google.protobuf.FileDescriptorProto.messageType: object expected"); - message.messageType[i] = $root.google.protobuf.DescriptorProto.fromObject(object.messageType[i]); - } - } - if (object.enumType) { - if (!Array.isArray(object.enumType)) - throw TypeError(".google.protobuf.FileDescriptorProto.enumType: array expected"); - message.enumType = []; - for (var i = 0; i < object.enumType.length; ++i) { - if (typeof object.enumType[i] !== "object") - throw TypeError(".google.protobuf.FileDescriptorProto.enumType: object expected"); - message.enumType[i] = $root.google.protobuf.EnumDescriptorProto.fromObject(object.enumType[i]); - } - } - if (object.service) { - if (!Array.isArray(object.service)) - throw TypeError(".google.protobuf.FileDescriptorProto.service: array expected"); - message.service = []; - for (var i = 0; i < object.service.length; ++i) { - if (typeof object.service[i] !== "object") - throw TypeError(".google.protobuf.FileDescriptorProto.service: object expected"); - message.service[i] = $root.google.protobuf.ServiceDescriptorProto.fromObject(object.service[i]); - } - } - if (object.extension) { - if (!Array.isArray(object.extension)) - throw TypeError(".google.protobuf.FileDescriptorProto.extension: array expected"); - message.extension = []; - for (var i = 0; i < object.extension.length; ++i) { - if (typeof object.extension[i] !== "object") - throw TypeError(".google.protobuf.FileDescriptorProto.extension: object expected"); - message.extension[i] = $root.google.protobuf.FieldDescriptorProto.fromObject(object.extension[i]); - } - } - if (object.options != null) { - if (typeof object.options !== "object") - throw TypeError(".google.protobuf.FileDescriptorProto.options: object expected"); - message.options = $root.google.protobuf.FileOptions.fromObject(object.options); - } - if (object.sourceCodeInfo != null) { - if (typeof object.sourceCodeInfo !== "object") - throw TypeError(".google.protobuf.FileDescriptorProto.sourceCodeInfo: object expected"); - message.sourceCodeInfo = $root.google.protobuf.SourceCodeInfo.fromObject(object.sourceCodeInfo); - } - if (object.syntax != null) - message.syntax = String(object.syntax); - return message; - }; + /** + * ListFeaturesRequest parent. + * @member {string} parent + * @memberof google.cloud.gkehub.v1beta.ListFeaturesRequest + * @instance + */ + ListFeaturesRequest.prototype.parent = ""; + + /** + * ListFeaturesRequest pageSize. + * @member {number} pageSize + * @memberof google.cloud.gkehub.v1beta.ListFeaturesRequest + * @instance + */ + ListFeaturesRequest.prototype.pageSize = 0; + + /** + * ListFeaturesRequest pageToken. + * @member {string} pageToken + * @memberof google.cloud.gkehub.v1beta.ListFeaturesRequest + * @instance + */ + ListFeaturesRequest.prototype.pageToken = ""; + + /** + * ListFeaturesRequest filter. + * @member {string} filter + * @memberof google.cloud.gkehub.v1beta.ListFeaturesRequest + * @instance + */ + ListFeaturesRequest.prototype.filter = ""; + + /** + * ListFeaturesRequest orderBy. + * @member {string} orderBy + * @memberof google.cloud.gkehub.v1beta.ListFeaturesRequest + * @instance + */ + ListFeaturesRequest.prototype.orderBy = ""; + + /** + * Creates a new ListFeaturesRequest instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.v1beta.ListFeaturesRequest + * @static + * @param {google.cloud.gkehub.v1beta.IListFeaturesRequest=} [properties] Properties to set + * @returns {google.cloud.gkehub.v1beta.ListFeaturesRequest} ListFeaturesRequest instance + */ + ListFeaturesRequest.create = function create(properties) { + return new ListFeaturesRequest(properties); + }; + + /** + * Encodes the specified ListFeaturesRequest message. Does not implicitly {@link google.cloud.gkehub.v1beta.ListFeaturesRequest.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.v1beta.ListFeaturesRequest + * @static + * @param {google.cloud.gkehub.v1beta.IListFeaturesRequest} message ListFeaturesRequest message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + ListFeaturesRequest.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.parent != null && Object.hasOwnProperty.call(message, "parent")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.parent); + if (message.pageSize != null && Object.hasOwnProperty.call(message, "pageSize")) + writer.uint32(/* id 2, wireType 0 =*/16).int32(message.pageSize); + if (message.pageToken != null && Object.hasOwnProperty.call(message, "pageToken")) + writer.uint32(/* id 3, wireType 2 =*/26).string(message.pageToken); + if (message.filter != null && Object.hasOwnProperty.call(message, "filter")) + writer.uint32(/* id 4, wireType 2 =*/34).string(message.filter); + if (message.orderBy != null && Object.hasOwnProperty.call(message, "orderBy")) + writer.uint32(/* id 5, wireType 2 =*/42).string(message.orderBy); + return writer; + }; + + /** + * Encodes the specified ListFeaturesRequest message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta.ListFeaturesRequest.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.v1beta.ListFeaturesRequest + * @static + * @param {google.cloud.gkehub.v1beta.IListFeaturesRequest} message ListFeaturesRequest message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + ListFeaturesRequest.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a ListFeaturesRequest message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.v1beta.ListFeaturesRequest + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.v1beta.ListFeaturesRequest} ListFeaturesRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + ListFeaturesRequest.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.v1beta.ListFeaturesRequest(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.parent = reader.string(); + break; + case 2: + message.pageSize = reader.int32(); + break; + case 3: + message.pageToken = reader.string(); + break; + case 4: + message.filter = reader.string(); + break; + case 5: + message.orderBy = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a ListFeaturesRequest message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.v1beta.ListFeaturesRequest + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.v1beta.ListFeaturesRequest} ListFeaturesRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + ListFeaturesRequest.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a ListFeaturesRequest message. + * @function verify + * @memberof google.cloud.gkehub.v1beta.ListFeaturesRequest + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + ListFeaturesRequest.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.parent != null && message.hasOwnProperty("parent")) + if (!$util.isString(message.parent)) + return "parent: string expected"; + if (message.pageSize != null && message.hasOwnProperty("pageSize")) + if (!$util.isInteger(message.pageSize)) + return "pageSize: integer expected"; + if (message.pageToken != null && message.hasOwnProperty("pageToken")) + if (!$util.isString(message.pageToken)) + return "pageToken: string expected"; + if (message.filter != null && message.hasOwnProperty("filter")) + if (!$util.isString(message.filter)) + return "filter: string expected"; + if (message.orderBy != null && message.hasOwnProperty("orderBy")) + if (!$util.isString(message.orderBy)) + return "orderBy: string expected"; + return null; + }; + + /** + * Creates a ListFeaturesRequest message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.v1beta.ListFeaturesRequest + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.v1beta.ListFeaturesRequest} ListFeaturesRequest + */ + ListFeaturesRequest.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.v1beta.ListFeaturesRequest) + return object; + var message = new $root.google.cloud.gkehub.v1beta.ListFeaturesRequest(); + if (object.parent != null) + message.parent = String(object.parent); + if (object.pageSize != null) + message.pageSize = object.pageSize | 0; + if (object.pageToken != null) + message.pageToken = String(object.pageToken); + if (object.filter != null) + message.filter = String(object.filter); + if (object.orderBy != null) + message.orderBy = String(object.orderBy); + return message; + }; - /** - * Creates a plain object from a FileDescriptorProto message. Also converts values to other types if specified. - * @function toObject - * @memberof google.protobuf.FileDescriptorProto - * @static - * @param {google.protobuf.FileDescriptorProto} message FileDescriptorProto - * @param {$protobuf.IConversionOptions} [options] Conversion options - * @returns {Object.} Plain object - */ - FileDescriptorProto.toObject = function toObject(message, options) { - if (!options) - options = {}; - var object = {}; - if (options.arrays || options.defaults) { - object.dependency = []; - object.messageType = []; - object.enumType = []; - object.service = []; - object.extension = []; - object.publicDependency = []; - object.weakDependency = []; - } - if (options.defaults) { - object.name = ""; - object["package"] = ""; - object.options = null; - object.sourceCodeInfo = null; - object.syntax = ""; - } - if (message.name != null && message.hasOwnProperty("name")) - object.name = message.name; - if (message["package"] != null && message.hasOwnProperty("package")) - object["package"] = message["package"]; - if (message.dependency && message.dependency.length) { - object.dependency = []; - for (var j = 0; j < message.dependency.length; ++j) - object.dependency[j] = message.dependency[j]; - } - if (message.messageType && message.messageType.length) { - object.messageType = []; - for (var j = 0; j < message.messageType.length; ++j) - object.messageType[j] = $root.google.protobuf.DescriptorProto.toObject(message.messageType[j], options); - } - if (message.enumType && message.enumType.length) { - object.enumType = []; - for (var j = 0; j < message.enumType.length; ++j) - object.enumType[j] = $root.google.protobuf.EnumDescriptorProto.toObject(message.enumType[j], options); - } - if (message.service && message.service.length) { - object.service = []; - for (var j = 0; j < message.service.length; ++j) - object.service[j] = $root.google.protobuf.ServiceDescriptorProto.toObject(message.service[j], options); - } - if (message.extension && message.extension.length) { - object.extension = []; - for (var j = 0; j < message.extension.length; ++j) - object.extension[j] = $root.google.protobuf.FieldDescriptorProto.toObject(message.extension[j], options); - } - if (message.options != null && message.hasOwnProperty("options")) - object.options = $root.google.protobuf.FileOptions.toObject(message.options, options); - if (message.sourceCodeInfo != null && message.hasOwnProperty("sourceCodeInfo")) - object.sourceCodeInfo = $root.google.protobuf.SourceCodeInfo.toObject(message.sourceCodeInfo, options); - if (message.publicDependency && message.publicDependency.length) { - object.publicDependency = []; - for (var j = 0; j < message.publicDependency.length; ++j) - object.publicDependency[j] = message.publicDependency[j]; - } - if (message.weakDependency && message.weakDependency.length) { - object.weakDependency = []; - for (var j = 0; j < message.weakDependency.length; ++j) - object.weakDependency[j] = message.weakDependency[j]; - } - if (message.syntax != null && message.hasOwnProperty("syntax")) - object.syntax = message.syntax; - return object; - }; + /** + * Creates a plain object from a ListFeaturesRequest message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.v1beta.ListFeaturesRequest + * @static + * @param {google.cloud.gkehub.v1beta.ListFeaturesRequest} message ListFeaturesRequest + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + ListFeaturesRequest.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.parent = ""; + object.pageSize = 0; + object.pageToken = ""; + object.filter = ""; + object.orderBy = ""; + } + if (message.parent != null && message.hasOwnProperty("parent")) + object.parent = message.parent; + if (message.pageSize != null && message.hasOwnProperty("pageSize")) + object.pageSize = message.pageSize; + if (message.pageToken != null && message.hasOwnProperty("pageToken")) + object.pageToken = message.pageToken; + if (message.filter != null && message.hasOwnProperty("filter")) + object.filter = message.filter; + if (message.orderBy != null && message.hasOwnProperty("orderBy")) + object.orderBy = message.orderBy; + return object; + }; + + /** + * Converts this ListFeaturesRequest to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.v1beta.ListFeaturesRequest + * @instance + * @returns {Object.} JSON object + */ + ListFeaturesRequest.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return ListFeaturesRequest; + })(); + + v1beta.ListFeaturesResponse = (function() { + + /** + * Properties of a ListFeaturesResponse. + * @memberof google.cloud.gkehub.v1beta + * @interface IListFeaturesResponse + * @property {Array.|null} [resources] ListFeaturesResponse resources + * @property {string|null} [nextPageToken] ListFeaturesResponse nextPageToken + */ + + /** + * Constructs a new ListFeaturesResponse. + * @memberof google.cloud.gkehub.v1beta + * @classdesc Represents a ListFeaturesResponse. + * @implements IListFeaturesResponse + * @constructor + * @param {google.cloud.gkehub.v1beta.IListFeaturesResponse=} [properties] Properties to set + */ + function ListFeaturesResponse(properties) { + this.resources = []; + 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]]; + } - /** - * Converts this FileDescriptorProto to JSON. - * @function toJSON - * @memberof google.protobuf.FileDescriptorProto - * @instance - * @returns {Object.} JSON object - */ - FileDescriptorProto.prototype.toJSON = function toJSON() { - return this.constructor.toObject(this, $protobuf.util.toJSONOptions); - }; + /** + * ListFeaturesResponse resources. + * @member {Array.} resources + * @memberof google.cloud.gkehub.v1beta.ListFeaturesResponse + * @instance + */ + ListFeaturesResponse.prototype.resources = $util.emptyArray; - return FileDescriptorProto; - })(); + /** + * ListFeaturesResponse nextPageToken. + * @member {string} nextPageToken + * @memberof google.cloud.gkehub.v1beta.ListFeaturesResponse + * @instance + */ + ListFeaturesResponse.prototype.nextPageToken = ""; - protobuf.DescriptorProto = (function() { + /** + * Creates a new ListFeaturesResponse instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.v1beta.ListFeaturesResponse + * @static + * @param {google.cloud.gkehub.v1beta.IListFeaturesResponse=} [properties] Properties to set + * @returns {google.cloud.gkehub.v1beta.ListFeaturesResponse} ListFeaturesResponse instance + */ + ListFeaturesResponse.create = function create(properties) { + return new ListFeaturesResponse(properties); + }; - /** - * Properties of a DescriptorProto. - * @memberof google.protobuf - * @interface IDescriptorProto - * @property {string|null} [name] DescriptorProto name - * @property {Array.|null} [field] DescriptorProto field - * @property {Array.|null} [extension] DescriptorProto extension - * @property {Array.|null} [nestedType] DescriptorProto nestedType - * @property {Array.|null} [enumType] DescriptorProto enumType - * @property {Array.|null} [extensionRange] DescriptorProto extensionRange - * @property {Array.|null} [oneofDecl] DescriptorProto oneofDecl - * @property {google.protobuf.IMessageOptions|null} [options] DescriptorProto options - * @property {Array.|null} [reservedRange] DescriptorProto reservedRange - * @property {Array.|null} [reservedName] DescriptorProto reservedName - */ + /** + * Encodes the specified ListFeaturesResponse message. Does not implicitly {@link google.cloud.gkehub.v1beta.ListFeaturesResponse.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.v1beta.ListFeaturesResponse + * @static + * @param {google.cloud.gkehub.v1beta.IListFeaturesResponse} message ListFeaturesResponse message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + ListFeaturesResponse.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.resources != null && message.resources.length) + for (var i = 0; i < message.resources.length; ++i) + $root.google.cloud.gkehub.v1beta.Feature.encode(message.resources[i], writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim(); + if (message.nextPageToken != null && Object.hasOwnProperty.call(message, "nextPageToken")) + writer.uint32(/* id 2, wireType 2 =*/18).string(message.nextPageToken); + return writer; + }; - /** - * Constructs a new DescriptorProto. - * @memberof google.protobuf - * @classdesc Represents a DescriptorProto. - * @implements IDescriptorProto - * @constructor - * @param {google.protobuf.IDescriptorProto=} [properties] Properties to set - */ - function DescriptorProto(properties) { - this.field = []; - this.extension = []; - this.nestedType = []; - this.enumType = []; - this.extensionRange = []; - this.oneofDecl = []; - this.reservedRange = []; - this.reservedName = []; - 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]]; - } + /** + * Encodes the specified ListFeaturesResponse message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta.ListFeaturesResponse.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.v1beta.ListFeaturesResponse + * @static + * @param {google.cloud.gkehub.v1beta.IListFeaturesResponse} message ListFeaturesResponse message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + ListFeaturesResponse.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; - /** - * DescriptorProto name. - * @member {string} name - * @memberof google.protobuf.DescriptorProto - * @instance - */ - DescriptorProto.prototype.name = ""; + /** + * Decodes a ListFeaturesResponse message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.v1beta.ListFeaturesResponse + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.v1beta.ListFeaturesResponse} ListFeaturesResponse + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + ListFeaturesResponse.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.v1beta.ListFeaturesResponse(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + if (!(message.resources && message.resources.length)) + message.resources = []; + message.resources.push($root.google.cloud.gkehub.v1beta.Feature.decode(reader, reader.uint32())); + break; + case 2: + message.nextPageToken = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; - /** - * DescriptorProto field. - * @member {Array.} field - * @memberof google.protobuf.DescriptorProto - * @instance - */ - DescriptorProto.prototype.field = $util.emptyArray; + /** + * Decodes a ListFeaturesResponse message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.v1beta.ListFeaturesResponse + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.v1beta.ListFeaturesResponse} ListFeaturesResponse + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + ListFeaturesResponse.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; - /** - * DescriptorProto extension. - * @member {Array.} extension - * @memberof google.protobuf.DescriptorProto - * @instance - */ - DescriptorProto.prototype.extension = $util.emptyArray; + /** + * Verifies a ListFeaturesResponse message. + * @function verify + * @memberof google.cloud.gkehub.v1beta.ListFeaturesResponse + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + ListFeaturesResponse.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.resources != null && message.hasOwnProperty("resources")) { + if (!Array.isArray(message.resources)) + return "resources: array expected"; + for (var i = 0; i < message.resources.length; ++i) { + var error = $root.google.cloud.gkehub.v1beta.Feature.verify(message.resources[i]); + if (error) + return "resources." + error; + } + } + if (message.nextPageToken != null && message.hasOwnProperty("nextPageToken")) + if (!$util.isString(message.nextPageToken)) + return "nextPageToken: string expected"; + return null; + }; - /** - * DescriptorProto nestedType. - * @member {Array.} nestedType - * @memberof google.protobuf.DescriptorProto - * @instance - */ - DescriptorProto.prototype.nestedType = $util.emptyArray; + /** + * Creates a ListFeaturesResponse message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.v1beta.ListFeaturesResponse + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.v1beta.ListFeaturesResponse} ListFeaturesResponse + */ + ListFeaturesResponse.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.v1beta.ListFeaturesResponse) + return object; + var message = new $root.google.cloud.gkehub.v1beta.ListFeaturesResponse(); + if (object.resources) { + if (!Array.isArray(object.resources)) + throw TypeError(".google.cloud.gkehub.v1beta.ListFeaturesResponse.resources: array expected"); + message.resources = []; + for (var i = 0; i < object.resources.length; ++i) { + if (typeof object.resources[i] !== "object") + throw TypeError(".google.cloud.gkehub.v1beta.ListFeaturesResponse.resources: object expected"); + message.resources[i] = $root.google.cloud.gkehub.v1beta.Feature.fromObject(object.resources[i]); + } + } + if (object.nextPageToken != null) + message.nextPageToken = String(object.nextPageToken); + return message; + }; - /** - * DescriptorProto enumType. - * @member {Array.} enumType - * @memberof google.protobuf.DescriptorProto - * @instance - */ - DescriptorProto.prototype.enumType = $util.emptyArray; + /** + * Creates a plain object from a ListFeaturesResponse message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.v1beta.ListFeaturesResponse + * @static + * @param {google.cloud.gkehub.v1beta.ListFeaturesResponse} message ListFeaturesResponse + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + ListFeaturesResponse.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.arrays || options.defaults) + object.resources = []; + if (options.defaults) + object.nextPageToken = ""; + if (message.resources && message.resources.length) { + object.resources = []; + for (var j = 0; j < message.resources.length; ++j) + object.resources[j] = $root.google.cloud.gkehub.v1beta.Feature.toObject(message.resources[j], options); + } + if (message.nextPageToken != null && message.hasOwnProperty("nextPageToken")) + object.nextPageToken = message.nextPageToken; + return object; + }; - /** - * DescriptorProto extensionRange. - * @member {Array.} extensionRange - * @memberof google.protobuf.DescriptorProto - * @instance - */ - DescriptorProto.prototype.extensionRange = $util.emptyArray; + /** + * Converts this ListFeaturesResponse to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.v1beta.ListFeaturesResponse + * @instance + * @returns {Object.} JSON object + */ + ListFeaturesResponse.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return ListFeaturesResponse; + })(); + + v1beta.GetFeatureRequest = (function() { + + /** + * Properties of a GetFeatureRequest. + * @memberof google.cloud.gkehub.v1beta + * @interface IGetFeatureRequest + * @property {string|null} [name] GetFeatureRequest name + */ + + /** + * Constructs a new GetFeatureRequest. + * @memberof google.cloud.gkehub.v1beta + * @classdesc Represents a GetFeatureRequest. + * @implements IGetFeatureRequest + * @constructor + * @param {google.cloud.gkehub.v1beta.IGetFeatureRequest=} [properties] Properties to set + */ + function GetFeatureRequest(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]]; + } + + /** + * GetFeatureRequest name. + * @member {string} name + * @memberof google.cloud.gkehub.v1beta.GetFeatureRequest + * @instance + */ + GetFeatureRequest.prototype.name = ""; + + /** + * Creates a new GetFeatureRequest instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.v1beta.GetFeatureRequest + * @static + * @param {google.cloud.gkehub.v1beta.IGetFeatureRequest=} [properties] Properties to set + * @returns {google.cloud.gkehub.v1beta.GetFeatureRequest} GetFeatureRequest instance + */ + GetFeatureRequest.create = function create(properties) { + return new GetFeatureRequest(properties); + }; - /** - * DescriptorProto oneofDecl. - * @member {Array.} oneofDecl - * @memberof google.protobuf.DescriptorProto - * @instance - */ - DescriptorProto.prototype.oneofDecl = $util.emptyArray; + /** + * Encodes the specified GetFeatureRequest message. Does not implicitly {@link google.cloud.gkehub.v1beta.GetFeatureRequest.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.v1beta.GetFeatureRequest + * @static + * @param {google.cloud.gkehub.v1beta.IGetFeatureRequest} message GetFeatureRequest message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + GetFeatureRequest.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.name != null && Object.hasOwnProperty.call(message, "name")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.name); + return writer; + }; - /** - * DescriptorProto options. - * @member {google.protobuf.IMessageOptions|null|undefined} options - * @memberof google.protobuf.DescriptorProto - * @instance - */ - DescriptorProto.prototype.options = null; + /** + * Encodes the specified GetFeatureRequest message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta.GetFeatureRequest.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.v1beta.GetFeatureRequest + * @static + * @param {google.cloud.gkehub.v1beta.IGetFeatureRequest} message GetFeatureRequest message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + GetFeatureRequest.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; - /** - * DescriptorProto reservedRange. - * @member {Array.} reservedRange - * @memberof google.protobuf.DescriptorProto - * @instance - */ - DescriptorProto.prototype.reservedRange = $util.emptyArray; + /** + * Decodes a GetFeatureRequest message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.v1beta.GetFeatureRequest + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.v1beta.GetFeatureRequest} GetFeatureRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + GetFeatureRequest.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.v1beta.GetFeatureRequest(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.name = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; - /** - * DescriptorProto reservedName. - * @member {Array.} reservedName - * @memberof google.protobuf.DescriptorProto - * @instance - */ - DescriptorProto.prototype.reservedName = $util.emptyArray; + /** + * Decodes a GetFeatureRequest message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.v1beta.GetFeatureRequest + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.v1beta.GetFeatureRequest} GetFeatureRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + GetFeatureRequest.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; - /** - * Creates a new DescriptorProto instance using the specified properties. - * @function create - * @memberof google.protobuf.DescriptorProto - * @static - * @param {google.protobuf.IDescriptorProto=} [properties] Properties to set - * @returns {google.protobuf.DescriptorProto} DescriptorProto instance - */ - DescriptorProto.create = function create(properties) { - return new DescriptorProto(properties); - }; + /** + * Verifies a GetFeatureRequest message. + * @function verify + * @memberof google.cloud.gkehub.v1beta.GetFeatureRequest + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + GetFeatureRequest.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.name != null && message.hasOwnProperty("name")) + if (!$util.isString(message.name)) + return "name: string expected"; + return null; + }; - /** - * Encodes the specified DescriptorProto message. Does not implicitly {@link google.protobuf.DescriptorProto.verify|verify} messages. - * @function encode - * @memberof google.protobuf.DescriptorProto - * @static - * @param {google.protobuf.IDescriptorProto} message DescriptorProto message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - DescriptorProto.encode = function encode(message, writer) { - if (!writer) - writer = $Writer.create(); - if (message.name != null && Object.hasOwnProperty.call(message, "name")) - writer.uint32(/* id 1, wireType 2 =*/10).string(message.name); - if (message.field != null && message.field.length) - for (var i = 0; i < message.field.length; ++i) - $root.google.protobuf.FieldDescriptorProto.encode(message.field[i], writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim(); - if (message.nestedType != null && message.nestedType.length) - for (var i = 0; i < message.nestedType.length; ++i) - $root.google.protobuf.DescriptorProto.encode(message.nestedType[i], writer.uint32(/* id 3, wireType 2 =*/26).fork()).ldelim(); - if (message.enumType != null && message.enumType.length) - for (var i = 0; i < message.enumType.length; ++i) - $root.google.protobuf.EnumDescriptorProto.encode(message.enumType[i], writer.uint32(/* id 4, wireType 2 =*/34).fork()).ldelim(); - if (message.extensionRange != null && message.extensionRange.length) - for (var i = 0; i < message.extensionRange.length; ++i) - $root.google.protobuf.DescriptorProto.ExtensionRange.encode(message.extensionRange[i], writer.uint32(/* id 5, wireType 2 =*/42).fork()).ldelim(); - if (message.extension != null && message.extension.length) - for (var i = 0; i < message.extension.length; ++i) - $root.google.protobuf.FieldDescriptorProto.encode(message.extension[i], writer.uint32(/* id 6, wireType 2 =*/50).fork()).ldelim(); - if (message.options != null && Object.hasOwnProperty.call(message, "options")) - $root.google.protobuf.MessageOptions.encode(message.options, writer.uint32(/* id 7, wireType 2 =*/58).fork()).ldelim(); - if (message.oneofDecl != null && message.oneofDecl.length) - for (var i = 0; i < message.oneofDecl.length; ++i) - $root.google.protobuf.OneofDescriptorProto.encode(message.oneofDecl[i], writer.uint32(/* id 8, wireType 2 =*/66).fork()).ldelim(); - if (message.reservedRange != null && message.reservedRange.length) - for (var i = 0; i < message.reservedRange.length; ++i) - $root.google.protobuf.DescriptorProto.ReservedRange.encode(message.reservedRange[i], writer.uint32(/* id 9, wireType 2 =*/74).fork()).ldelim(); - if (message.reservedName != null && message.reservedName.length) - for (var i = 0; i < message.reservedName.length; ++i) - writer.uint32(/* id 10, wireType 2 =*/82).string(message.reservedName[i]); - return writer; - }; + /** + * Creates a GetFeatureRequest message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.v1beta.GetFeatureRequest + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.v1beta.GetFeatureRequest} GetFeatureRequest + */ + GetFeatureRequest.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.v1beta.GetFeatureRequest) + return object; + var message = new $root.google.cloud.gkehub.v1beta.GetFeatureRequest(); + if (object.name != null) + message.name = String(object.name); + return message; + }; - /** - * Encodes the specified DescriptorProto message, length delimited. Does not implicitly {@link google.protobuf.DescriptorProto.verify|verify} messages. - * @function encodeDelimited - * @memberof google.protobuf.DescriptorProto - * @static - * @param {google.protobuf.IDescriptorProto} message DescriptorProto message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - DescriptorProto.encodeDelimited = function encodeDelimited(message, writer) { - return this.encode(message, writer).ldelim(); - }; + /** + * Creates a plain object from a GetFeatureRequest message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.v1beta.GetFeatureRequest + * @static + * @param {google.cloud.gkehub.v1beta.GetFeatureRequest} message GetFeatureRequest + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + GetFeatureRequest.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) + object.name = ""; + if (message.name != null && message.hasOwnProperty("name")) + object.name = message.name; + return object; + }; - /** - * Decodes a DescriptorProto message from the specified reader or buffer. - * @function decode - * @memberof google.protobuf.DescriptorProto - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @param {number} [length] Message length if known beforehand - * @returns {google.protobuf.DescriptorProto} DescriptorProto - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - DescriptorProto.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.protobuf.DescriptorProto(); - while (reader.pos < end) { - var tag = reader.uint32(); - switch (tag >>> 3) { - case 1: - message.name = reader.string(); - break; - case 2: - if (!(message.field && message.field.length)) - message.field = []; - message.field.push($root.google.protobuf.FieldDescriptorProto.decode(reader, reader.uint32())); - break; - case 6: - if (!(message.extension && message.extension.length)) - message.extension = []; - message.extension.push($root.google.protobuf.FieldDescriptorProto.decode(reader, reader.uint32())); - break; - case 3: - if (!(message.nestedType && message.nestedType.length)) - message.nestedType = []; - message.nestedType.push($root.google.protobuf.DescriptorProto.decode(reader, reader.uint32())); - break; - case 4: - if (!(message.enumType && message.enumType.length)) - message.enumType = []; - message.enumType.push($root.google.protobuf.EnumDescriptorProto.decode(reader, reader.uint32())); - break; - case 5: - if (!(message.extensionRange && message.extensionRange.length)) - message.extensionRange = []; - message.extensionRange.push($root.google.protobuf.DescriptorProto.ExtensionRange.decode(reader, reader.uint32())); - break; - case 8: - if (!(message.oneofDecl && message.oneofDecl.length)) - message.oneofDecl = []; - message.oneofDecl.push($root.google.protobuf.OneofDescriptorProto.decode(reader, reader.uint32())); - break; - case 7: - message.options = $root.google.protobuf.MessageOptions.decode(reader, reader.uint32()); - break; - case 9: - if (!(message.reservedRange && message.reservedRange.length)) - message.reservedRange = []; - message.reservedRange.push($root.google.protobuf.DescriptorProto.ReservedRange.decode(reader, reader.uint32())); - break; - case 10: - if (!(message.reservedName && message.reservedName.length)) - message.reservedName = []; - message.reservedName.push(reader.string()); - break; - default: - reader.skipType(tag & 7); - break; - } - } - return message; - }; + /** + * Converts this GetFeatureRequest to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.v1beta.GetFeatureRequest + * @instance + * @returns {Object.} JSON object + */ + GetFeatureRequest.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; - /** - * Decodes a DescriptorProto message from the specified reader or buffer, length delimited. - * @function decodeDelimited - * @memberof google.protobuf.DescriptorProto - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {google.protobuf.DescriptorProto} DescriptorProto - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - DescriptorProto.decodeDelimited = function decodeDelimited(reader) { - if (!(reader instanceof $Reader)) - reader = new $Reader(reader); - return this.decode(reader, reader.uint32()); - }; + return GetFeatureRequest; + })(); - /** - * Verifies a DescriptorProto message. - * @function verify - * @memberof google.protobuf.DescriptorProto - * @static - * @param {Object.} message Plain object to verify - * @returns {string|null} `null` if valid, otherwise the reason why it is not - */ - DescriptorProto.verify = function verify(message) { - if (typeof message !== "object" || message === null) - return "object expected"; - if (message.name != null && message.hasOwnProperty("name")) - if (!$util.isString(message.name)) - return "name: string expected"; - if (message.field != null && message.hasOwnProperty("field")) { - if (!Array.isArray(message.field)) - return "field: array expected"; - for (var i = 0; i < message.field.length; ++i) { - var error = $root.google.protobuf.FieldDescriptorProto.verify(message.field[i]); - if (error) - return "field." + error; - } - } - if (message.extension != null && message.hasOwnProperty("extension")) { - if (!Array.isArray(message.extension)) - return "extension: array expected"; - for (var i = 0; i < message.extension.length; ++i) { - var error = $root.google.protobuf.FieldDescriptorProto.verify(message.extension[i]); - if (error) - return "extension." + error; - } - } - if (message.nestedType != null && message.hasOwnProperty("nestedType")) { - if (!Array.isArray(message.nestedType)) - return "nestedType: array expected"; - for (var i = 0; i < message.nestedType.length; ++i) { - var error = $root.google.protobuf.DescriptorProto.verify(message.nestedType[i]); - if (error) - return "nestedType." + error; - } - } - if (message.enumType != null && message.hasOwnProperty("enumType")) { - if (!Array.isArray(message.enumType)) - return "enumType: array expected"; - for (var i = 0; i < message.enumType.length; ++i) { - var error = $root.google.protobuf.EnumDescriptorProto.verify(message.enumType[i]); - if (error) - return "enumType." + error; - } - } - if (message.extensionRange != null && message.hasOwnProperty("extensionRange")) { - if (!Array.isArray(message.extensionRange)) - return "extensionRange: array expected"; - for (var i = 0; i < message.extensionRange.length; ++i) { - var error = $root.google.protobuf.DescriptorProto.ExtensionRange.verify(message.extensionRange[i]); - if (error) - return "extensionRange." + error; - } - } - if (message.oneofDecl != null && message.hasOwnProperty("oneofDecl")) { - if (!Array.isArray(message.oneofDecl)) - return "oneofDecl: array expected"; - for (var i = 0; i < message.oneofDecl.length; ++i) { - var error = $root.google.protobuf.OneofDescriptorProto.verify(message.oneofDecl[i]); - if (error) - return "oneofDecl." + error; - } - } - if (message.options != null && message.hasOwnProperty("options")) { - var error = $root.google.protobuf.MessageOptions.verify(message.options); - if (error) - return "options." + error; - } - if (message.reservedRange != null && message.hasOwnProperty("reservedRange")) { - if (!Array.isArray(message.reservedRange)) - return "reservedRange: array expected"; - for (var i = 0; i < message.reservedRange.length; ++i) { - var error = $root.google.protobuf.DescriptorProto.ReservedRange.verify(message.reservedRange[i]); - if (error) - return "reservedRange." + error; - } - } - if (message.reservedName != null && message.hasOwnProperty("reservedName")) { - if (!Array.isArray(message.reservedName)) - return "reservedName: array expected"; - for (var i = 0; i < message.reservedName.length; ++i) - if (!$util.isString(message.reservedName[i])) - return "reservedName: string[] expected"; - } - return null; - }; + v1beta.CreateFeatureRequest = (function() { - /** - * Creates a DescriptorProto message from a plain object. Also converts values to their respective internal types. - * @function fromObject - * @memberof google.protobuf.DescriptorProto - * @static - * @param {Object.} object Plain object - * @returns {google.protobuf.DescriptorProto} DescriptorProto - */ - DescriptorProto.fromObject = function fromObject(object) { - if (object instanceof $root.google.protobuf.DescriptorProto) - return object; - var message = new $root.google.protobuf.DescriptorProto(); - if (object.name != null) - message.name = String(object.name); - if (object.field) { - if (!Array.isArray(object.field)) - throw TypeError(".google.protobuf.DescriptorProto.field: array expected"); - message.field = []; - for (var i = 0; i < object.field.length; ++i) { - if (typeof object.field[i] !== "object") - throw TypeError(".google.protobuf.DescriptorProto.field: object expected"); - message.field[i] = $root.google.protobuf.FieldDescriptorProto.fromObject(object.field[i]); - } - } - if (object.extension) { - if (!Array.isArray(object.extension)) - throw TypeError(".google.protobuf.DescriptorProto.extension: array expected"); - message.extension = []; - for (var i = 0; i < object.extension.length; ++i) { - if (typeof object.extension[i] !== "object") - throw TypeError(".google.protobuf.DescriptorProto.extension: object expected"); - message.extension[i] = $root.google.protobuf.FieldDescriptorProto.fromObject(object.extension[i]); - } - } - if (object.nestedType) { - if (!Array.isArray(object.nestedType)) - throw TypeError(".google.protobuf.DescriptorProto.nestedType: array expected"); - message.nestedType = []; - for (var i = 0; i < object.nestedType.length; ++i) { - if (typeof object.nestedType[i] !== "object") - throw TypeError(".google.protobuf.DescriptorProto.nestedType: object expected"); - message.nestedType[i] = $root.google.protobuf.DescriptorProto.fromObject(object.nestedType[i]); - } - } - if (object.enumType) { - if (!Array.isArray(object.enumType)) - throw TypeError(".google.protobuf.DescriptorProto.enumType: array expected"); - message.enumType = []; - for (var i = 0; i < object.enumType.length; ++i) { - if (typeof object.enumType[i] !== "object") - throw TypeError(".google.protobuf.DescriptorProto.enumType: object expected"); - message.enumType[i] = $root.google.protobuf.EnumDescriptorProto.fromObject(object.enumType[i]); - } - } - if (object.extensionRange) { - if (!Array.isArray(object.extensionRange)) - throw TypeError(".google.protobuf.DescriptorProto.extensionRange: array expected"); - message.extensionRange = []; - for (var i = 0; i < object.extensionRange.length; ++i) { - if (typeof object.extensionRange[i] !== "object") - throw TypeError(".google.protobuf.DescriptorProto.extensionRange: object expected"); - message.extensionRange[i] = $root.google.protobuf.DescriptorProto.ExtensionRange.fromObject(object.extensionRange[i]); - } - } - if (object.oneofDecl) { - if (!Array.isArray(object.oneofDecl)) - throw TypeError(".google.protobuf.DescriptorProto.oneofDecl: array expected"); - message.oneofDecl = []; - for (var i = 0; i < object.oneofDecl.length; ++i) { - if (typeof object.oneofDecl[i] !== "object") - throw TypeError(".google.protobuf.DescriptorProto.oneofDecl: object expected"); - message.oneofDecl[i] = $root.google.protobuf.OneofDescriptorProto.fromObject(object.oneofDecl[i]); - } - } - if (object.options != null) { - if (typeof object.options !== "object") - throw TypeError(".google.protobuf.DescriptorProto.options: object expected"); - message.options = $root.google.protobuf.MessageOptions.fromObject(object.options); - } - if (object.reservedRange) { - if (!Array.isArray(object.reservedRange)) - throw TypeError(".google.protobuf.DescriptorProto.reservedRange: array expected"); - message.reservedRange = []; - for (var i = 0; i < object.reservedRange.length; ++i) { - if (typeof object.reservedRange[i] !== "object") - throw TypeError(".google.protobuf.DescriptorProto.reservedRange: object expected"); - message.reservedRange[i] = $root.google.protobuf.DescriptorProto.ReservedRange.fromObject(object.reservedRange[i]); + /** + * Properties of a CreateFeatureRequest. + * @memberof google.cloud.gkehub.v1beta + * @interface ICreateFeatureRequest + * @property {string|null} [parent] CreateFeatureRequest parent + * @property {string|null} [featureId] CreateFeatureRequest featureId + * @property {google.cloud.gkehub.v1beta.IFeature|null} [resource] CreateFeatureRequest resource + * @property {string|null} [requestId] CreateFeatureRequest requestId + */ + + /** + * Constructs a new CreateFeatureRequest. + * @memberof google.cloud.gkehub.v1beta + * @classdesc Represents a CreateFeatureRequest. + * @implements ICreateFeatureRequest + * @constructor + * @param {google.cloud.gkehub.v1beta.ICreateFeatureRequest=} [properties] Properties to set + */ + function CreateFeatureRequest(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]]; } - } - if (object.reservedName) { - if (!Array.isArray(object.reservedName)) - throw TypeError(".google.protobuf.DescriptorProto.reservedName: array expected"); - message.reservedName = []; - for (var i = 0; i < object.reservedName.length; ++i) - message.reservedName[i] = String(object.reservedName[i]); - } - return message; - }; - /** - * Creates a plain object from a DescriptorProto message. Also converts values to other types if specified. - * @function toObject - * @memberof google.protobuf.DescriptorProto - * @static - * @param {google.protobuf.DescriptorProto} message DescriptorProto - * @param {$protobuf.IConversionOptions} [options] Conversion options - * @returns {Object.} Plain object - */ - DescriptorProto.toObject = function toObject(message, options) { - if (!options) - options = {}; - var object = {}; - if (options.arrays || options.defaults) { - object.field = []; - object.nestedType = []; - object.enumType = []; - object.extensionRange = []; - object.extension = []; - object.oneofDecl = []; - object.reservedRange = []; - object.reservedName = []; - } - if (options.defaults) { - object.name = ""; - object.options = null; - } - if (message.name != null && message.hasOwnProperty("name")) - object.name = message.name; - if (message.field && message.field.length) { - object.field = []; - for (var j = 0; j < message.field.length; ++j) - object.field[j] = $root.google.protobuf.FieldDescriptorProto.toObject(message.field[j], options); - } - if (message.nestedType && message.nestedType.length) { - object.nestedType = []; - for (var j = 0; j < message.nestedType.length; ++j) - object.nestedType[j] = $root.google.protobuf.DescriptorProto.toObject(message.nestedType[j], options); - } - if (message.enumType && message.enumType.length) { - object.enumType = []; - for (var j = 0; j < message.enumType.length; ++j) - object.enumType[j] = $root.google.protobuf.EnumDescriptorProto.toObject(message.enumType[j], options); - } - if (message.extensionRange && message.extensionRange.length) { - object.extensionRange = []; - for (var j = 0; j < message.extensionRange.length; ++j) - object.extensionRange[j] = $root.google.protobuf.DescriptorProto.ExtensionRange.toObject(message.extensionRange[j], options); - } - if (message.extension && message.extension.length) { - object.extension = []; - for (var j = 0; j < message.extension.length; ++j) - object.extension[j] = $root.google.protobuf.FieldDescriptorProto.toObject(message.extension[j], options); - } - if (message.options != null && message.hasOwnProperty("options")) - object.options = $root.google.protobuf.MessageOptions.toObject(message.options, options); - if (message.oneofDecl && message.oneofDecl.length) { - object.oneofDecl = []; - for (var j = 0; j < message.oneofDecl.length; ++j) - object.oneofDecl[j] = $root.google.protobuf.OneofDescriptorProto.toObject(message.oneofDecl[j], options); - } - if (message.reservedRange && message.reservedRange.length) { - object.reservedRange = []; - for (var j = 0; j < message.reservedRange.length; ++j) - object.reservedRange[j] = $root.google.protobuf.DescriptorProto.ReservedRange.toObject(message.reservedRange[j], options); - } - if (message.reservedName && message.reservedName.length) { - object.reservedName = []; - for (var j = 0; j < message.reservedName.length; ++j) - object.reservedName[j] = message.reservedName[j]; - } - return object; - }; + /** + * CreateFeatureRequest parent. + * @member {string} parent + * @memberof google.cloud.gkehub.v1beta.CreateFeatureRequest + * @instance + */ + CreateFeatureRequest.prototype.parent = ""; + + /** + * CreateFeatureRequest featureId. + * @member {string} featureId + * @memberof google.cloud.gkehub.v1beta.CreateFeatureRequest + * @instance + */ + CreateFeatureRequest.prototype.featureId = ""; + + /** + * CreateFeatureRequest resource. + * @member {google.cloud.gkehub.v1beta.IFeature|null|undefined} resource + * @memberof google.cloud.gkehub.v1beta.CreateFeatureRequest + * @instance + */ + CreateFeatureRequest.prototype.resource = null; + + /** + * CreateFeatureRequest requestId. + * @member {string} requestId + * @memberof google.cloud.gkehub.v1beta.CreateFeatureRequest + * @instance + */ + CreateFeatureRequest.prototype.requestId = ""; + + /** + * Creates a new CreateFeatureRequest instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.v1beta.CreateFeatureRequest + * @static + * @param {google.cloud.gkehub.v1beta.ICreateFeatureRequest=} [properties] Properties to set + * @returns {google.cloud.gkehub.v1beta.CreateFeatureRequest} CreateFeatureRequest instance + */ + CreateFeatureRequest.create = function create(properties) { + return new CreateFeatureRequest(properties); + }; + + /** + * Encodes the specified CreateFeatureRequest message. Does not implicitly {@link google.cloud.gkehub.v1beta.CreateFeatureRequest.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.v1beta.CreateFeatureRequest + * @static + * @param {google.cloud.gkehub.v1beta.ICreateFeatureRequest} message CreateFeatureRequest message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + CreateFeatureRequest.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.parent != null && Object.hasOwnProperty.call(message, "parent")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.parent); + if (message.featureId != null && Object.hasOwnProperty.call(message, "featureId")) + writer.uint32(/* id 2, wireType 2 =*/18).string(message.featureId); + if (message.resource != null && Object.hasOwnProperty.call(message, "resource")) + $root.google.cloud.gkehub.v1beta.Feature.encode(message.resource, writer.uint32(/* id 3, wireType 2 =*/26).fork()).ldelim(); + if (message.requestId != null && Object.hasOwnProperty.call(message, "requestId")) + writer.uint32(/* id 4, wireType 2 =*/34).string(message.requestId); + return writer; + }; + + /** + * Encodes the specified CreateFeatureRequest message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta.CreateFeatureRequest.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.v1beta.CreateFeatureRequest + * @static + * @param {google.cloud.gkehub.v1beta.ICreateFeatureRequest} message CreateFeatureRequest message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + CreateFeatureRequest.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; - /** - * Converts this DescriptorProto to JSON. - * @function toJSON - * @memberof google.protobuf.DescriptorProto - * @instance - * @returns {Object.} JSON object - */ - DescriptorProto.prototype.toJSON = function toJSON() { - return this.constructor.toObject(this, $protobuf.util.toJSONOptions); - }; + /** + * Decodes a CreateFeatureRequest message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.v1beta.CreateFeatureRequest + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.v1beta.CreateFeatureRequest} CreateFeatureRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + CreateFeatureRequest.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.v1beta.CreateFeatureRequest(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.parent = reader.string(); + break; + case 2: + message.featureId = reader.string(); + break; + case 3: + message.resource = $root.google.cloud.gkehub.v1beta.Feature.decode(reader, reader.uint32()); + break; + case 4: + message.requestId = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; - DescriptorProto.ExtensionRange = (function() { + /** + * Decodes a CreateFeatureRequest message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.v1beta.CreateFeatureRequest + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.v1beta.CreateFeatureRequest} CreateFeatureRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + CreateFeatureRequest.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; - /** - * Properties of an ExtensionRange. - * @memberof google.protobuf.DescriptorProto - * @interface IExtensionRange - * @property {number|null} [start] ExtensionRange start - * @property {number|null} [end] ExtensionRange end - * @property {google.protobuf.IExtensionRangeOptions|null} [options] ExtensionRange options - */ + /** + * Verifies a CreateFeatureRequest message. + * @function verify + * @memberof google.cloud.gkehub.v1beta.CreateFeatureRequest + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + CreateFeatureRequest.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.parent != null && message.hasOwnProperty("parent")) + if (!$util.isString(message.parent)) + return "parent: string expected"; + if (message.featureId != null && message.hasOwnProperty("featureId")) + if (!$util.isString(message.featureId)) + return "featureId: string expected"; + if (message.resource != null && message.hasOwnProperty("resource")) { + var error = $root.google.cloud.gkehub.v1beta.Feature.verify(message.resource); + if (error) + return "resource." + error; + } + if (message.requestId != null && message.hasOwnProperty("requestId")) + if (!$util.isString(message.requestId)) + return "requestId: string expected"; + return null; + }; - /** - * Constructs a new ExtensionRange. - * @memberof google.protobuf.DescriptorProto - * @classdesc Represents an ExtensionRange. - * @implements IExtensionRange - * @constructor - * @param {google.protobuf.DescriptorProto.IExtensionRange=} [properties] Properties to set - */ - function ExtensionRange(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]]; - } + /** + * Creates a CreateFeatureRequest message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.v1beta.CreateFeatureRequest + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.v1beta.CreateFeatureRequest} CreateFeatureRequest + */ + CreateFeatureRequest.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.v1beta.CreateFeatureRequest) + return object; + var message = new $root.google.cloud.gkehub.v1beta.CreateFeatureRequest(); + if (object.parent != null) + message.parent = String(object.parent); + if (object.featureId != null) + message.featureId = String(object.featureId); + if (object.resource != null) { + if (typeof object.resource !== "object") + throw TypeError(".google.cloud.gkehub.v1beta.CreateFeatureRequest.resource: object expected"); + message.resource = $root.google.cloud.gkehub.v1beta.Feature.fromObject(object.resource); + } + if (object.requestId != null) + message.requestId = String(object.requestId); + return message; + }; - /** - * ExtensionRange start. - * @member {number} start - * @memberof google.protobuf.DescriptorProto.ExtensionRange - * @instance - */ - ExtensionRange.prototype.start = 0; + /** + * Creates a plain object from a CreateFeatureRequest message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.v1beta.CreateFeatureRequest + * @static + * @param {google.cloud.gkehub.v1beta.CreateFeatureRequest} message CreateFeatureRequest + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + CreateFeatureRequest.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.parent = ""; + object.featureId = ""; + object.resource = null; + object.requestId = ""; + } + if (message.parent != null && message.hasOwnProperty("parent")) + object.parent = message.parent; + if (message.featureId != null && message.hasOwnProperty("featureId")) + object.featureId = message.featureId; + if (message.resource != null && message.hasOwnProperty("resource")) + object.resource = $root.google.cloud.gkehub.v1beta.Feature.toObject(message.resource, options); + if (message.requestId != null && message.hasOwnProperty("requestId")) + object.requestId = message.requestId; + return object; + }; - /** - * ExtensionRange end. - * @member {number} end - * @memberof google.protobuf.DescriptorProto.ExtensionRange - * @instance - */ - ExtensionRange.prototype.end = 0; + /** + * Converts this CreateFeatureRequest to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.v1beta.CreateFeatureRequest + * @instance + * @returns {Object.} JSON object + */ + CreateFeatureRequest.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; - /** - * ExtensionRange options. - * @member {google.protobuf.IExtensionRangeOptions|null|undefined} options - * @memberof google.protobuf.DescriptorProto.ExtensionRange - * @instance - */ - ExtensionRange.prototype.options = null; + return CreateFeatureRequest; + })(); + + v1beta.DeleteFeatureRequest = (function() { + + /** + * Properties of a DeleteFeatureRequest. + * @memberof google.cloud.gkehub.v1beta + * @interface IDeleteFeatureRequest + * @property {string|null} [name] DeleteFeatureRequest name + * @property {boolean|null} [force] DeleteFeatureRequest force + * @property {string|null} [requestId] DeleteFeatureRequest requestId + */ + + /** + * Constructs a new DeleteFeatureRequest. + * @memberof google.cloud.gkehub.v1beta + * @classdesc Represents a DeleteFeatureRequest. + * @implements IDeleteFeatureRequest + * @constructor + * @param {google.cloud.gkehub.v1beta.IDeleteFeatureRequest=} [properties] Properties to set + */ + function DeleteFeatureRequest(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]]; + } + + /** + * DeleteFeatureRequest name. + * @member {string} name + * @memberof google.cloud.gkehub.v1beta.DeleteFeatureRequest + * @instance + */ + DeleteFeatureRequest.prototype.name = ""; + + /** + * DeleteFeatureRequest force. + * @member {boolean} force + * @memberof google.cloud.gkehub.v1beta.DeleteFeatureRequest + * @instance + */ + DeleteFeatureRequest.prototype.force = false; + + /** + * DeleteFeatureRequest requestId. + * @member {string} requestId + * @memberof google.cloud.gkehub.v1beta.DeleteFeatureRequest + * @instance + */ + DeleteFeatureRequest.prototype.requestId = ""; - /** - * Creates a new ExtensionRange instance using the specified properties. - * @function create - * @memberof google.protobuf.DescriptorProto.ExtensionRange - * @static - * @param {google.protobuf.DescriptorProto.IExtensionRange=} [properties] Properties to set - * @returns {google.protobuf.DescriptorProto.ExtensionRange} ExtensionRange instance - */ - ExtensionRange.create = function create(properties) { - return new ExtensionRange(properties); - }; + /** + * Creates a new DeleteFeatureRequest instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.v1beta.DeleteFeatureRequest + * @static + * @param {google.cloud.gkehub.v1beta.IDeleteFeatureRequest=} [properties] Properties to set + * @returns {google.cloud.gkehub.v1beta.DeleteFeatureRequest} DeleteFeatureRequest instance + */ + DeleteFeatureRequest.create = function create(properties) { + return new DeleteFeatureRequest(properties); + }; - /** - * Encodes the specified ExtensionRange message. Does not implicitly {@link google.protobuf.DescriptorProto.ExtensionRange.verify|verify} messages. - * @function encode - * @memberof google.protobuf.DescriptorProto.ExtensionRange - * @static - * @param {google.protobuf.DescriptorProto.IExtensionRange} message ExtensionRange message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - ExtensionRange.encode = function encode(message, writer) { - if (!writer) - writer = $Writer.create(); - if (message.start != null && Object.hasOwnProperty.call(message, "start")) - writer.uint32(/* id 1, wireType 0 =*/8).int32(message.start); - if (message.end != null && Object.hasOwnProperty.call(message, "end")) - writer.uint32(/* id 2, wireType 0 =*/16).int32(message.end); - if (message.options != null && Object.hasOwnProperty.call(message, "options")) - $root.google.protobuf.ExtensionRangeOptions.encode(message.options, writer.uint32(/* id 3, wireType 2 =*/26).fork()).ldelim(); - return writer; - }; + /** + * Encodes the specified DeleteFeatureRequest message. Does not implicitly {@link google.cloud.gkehub.v1beta.DeleteFeatureRequest.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.v1beta.DeleteFeatureRequest + * @static + * @param {google.cloud.gkehub.v1beta.IDeleteFeatureRequest} message DeleteFeatureRequest message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + DeleteFeatureRequest.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.name != null && Object.hasOwnProperty.call(message, "name")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.name); + if (message.force != null && Object.hasOwnProperty.call(message, "force")) + writer.uint32(/* id 2, wireType 0 =*/16).bool(message.force); + if (message.requestId != null && Object.hasOwnProperty.call(message, "requestId")) + writer.uint32(/* id 3, wireType 2 =*/26).string(message.requestId); + return writer; + }; - /** - * Encodes the specified ExtensionRange message, length delimited. Does not implicitly {@link google.protobuf.DescriptorProto.ExtensionRange.verify|verify} messages. - * @function encodeDelimited - * @memberof google.protobuf.DescriptorProto.ExtensionRange - * @static - * @param {google.protobuf.DescriptorProto.IExtensionRange} message ExtensionRange message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - ExtensionRange.encodeDelimited = function encodeDelimited(message, writer) { - return this.encode(message, writer).ldelim(); - }; + /** + * Encodes the specified DeleteFeatureRequest message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta.DeleteFeatureRequest.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.v1beta.DeleteFeatureRequest + * @static + * @param {google.cloud.gkehub.v1beta.IDeleteFeatureRequest} message DeleteFeatureRequest message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + DeleteFeatureRequest.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; - /** - * Decodes an ExtensionRange message from the specified reader or buffer. - * @function decode - * @memberof google.protobuf.DescriptorProto.ExtensionRange - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @param {number} [length] Message length if known beforehand - * @returns {google.protobuf.DescriptorProto.ExtensionRange} ExtensionRange - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - ExtensionRange.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.protobuf.DescriptorProto.ExtensionRange(); - while (reader.pos < end) { - var tag = reader.uint32(); - switch (tag >>> 3) { - case 1: - message.start = reader.int32(); - break; - case 2: - message.end = reader.int32(); - break; - case 3: - message.options = $root.google.protobuf.ExtensionRangeOptions.decode(reader, reader.uint32()); - break; - default: - reader.skipType(tag & 7); - break; + /** + * Decodes a DeleteFeatureRequest message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.v1beta.DeleteFeatureRequest + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.v1beta.DeleteFeatureRequest} DeleteFeatureRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + DeleteFeatureRequest.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.v1beta.DeleteFeatureRequest(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.name = reader.string(); + break; + case 2: + message.force = reader.bool(); + break; + case 3: + message.requestId = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } } - } - return message; - }; + return message; + }; - /** - * Decodes an ExtensionRange message from the specified reader or buffer, length delimited. - * @function decodeDelimited - * @memberof google.protobuf.DescriptorProto.ExtensionRange - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {google.protobuf.DescriptorProto.ExtensionRange} ExtensionRange - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - ExtensionRange.decodeDelimited = function decodeDelimited(reader) { - if (!(reader instanceof $Reader)) - reader = new $Reader(reader); - return this.decode(reader, reader.uint32()); - }; + /** + * Decodes a DeleteFeatureRequest message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.v1beta.DeleteFeatureRequest + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.v1beta.DeleteFeatureRequest} DeleteFeatureRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + DeleteFeatureRequest.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; - /** - * Verifies an ExtensionRange message. - * @function verify - * @memberof google.protobuf.DescriptorProto.ExtensionRange - * @static - * @param {Object.} message Plain object to verify - * @returns {string|null} `null` if valid, otherwise the reason why it is not - */ - ExtensionRange.verify = function verify(message) { - if (typeof message !== "object" || message === null) - return "object expected"; - if (message.start != null && message.hasOwnProperty("start")) - if (!$util.isInteger(message.start)) - return "start: integer expected"; - if (message.end != null && message.hasOwnProperty("end")) - if (!$util.isInteger(message.end)) - return "end: integer expected"; - if (message.options != null && message.hasOwnProperty("options")) { - var error = $root.google.protobuf.ExtensionRangeOptions.verify(message.options); - if (error) - return "options." + error; - } - return null; - }; + /** + * Verifies a DeleteFeatureRequest message. + * @function verify + * @memberof google.cloud.gkehub.v1beta.DeleteFeatureRequest + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + DeleteFeatureRequest.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.name != null && message.hasOwnProperty("name")) + if (!$util.isString(message.name)) + return "name: string expected"; + if (message.force != null && message.hasOwnProperty("force")) + if (typeof message.force !== "boolean") + return "force: boolean expected"; + if (message.requestId != null && message.hasOwnProperty("requestId")) + if (!$util.isString(message.requestId)) + return "requestId: string expected"; + return null; + }; - /** - * Creates an ExtensionRange message from a plain object. Also converts values to their respective internal types. - * @function fromObject - * @memberof google.protobuf.DescriptorProto.ExtensionRange - * @static - * @param {Object.} object Plain object - * @returns {google.protobuf.DescriptorProto.ExtensionRange} ExtensionRange - */ - ExtensionRange.fromObject = function fromObject(object) { - if (object instanceof $root.google.protobuf.DescriptorProto.ExtensionRange) - return object; - var message = new $root.google.protobuf.DescriptorProto.ExtensionRange(); - if (object.start != null) - message.start = object.start | 0; - if (object.end != null) - message.end = object.end | 0; - if (object.options != null) { - if (typeof object.options !== "object") - throw TypeError(".google.protobuf.DescriptorProto.ExtensionRange.options: object expected"); - message.options = $root.google.protobuf.ExtensionRangeOptions.fromObject(object.options); - } - return message; - }; + /** + * Creates a DeleteFeatureRequest message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.v1beta.DeleteFeatureRequest + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.v1beta.DeleteFeatureRequest} DeleteFeatureRequest + */ + DeleteFeatureRequest.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.v1beta.DeleteFeatureRequest) + return object; + var message = new $root.google.cloud.gkehub.v1beta.DeleteFeatureRequest(); + if (object.name != null) + message.name = String(object.name); + if (object.force != null) + message.force = Boolean(object.force); + if (object.requestId != null) + message.requestId = String(object.requestId); + return message; + }; - /** - * Creates a plain object from an ExtensionRange message. Also converts values to other types if specified. - * @function toObject - * @memberof google.protobuf.DescriptorProto.ExtensionRange - * @static - * @param {google.protobuf.DescriptorProto.ExtensionRange} message ExtensionRange - * @param {$protobuf.IConversionOptions} [options] Conversion options - * @returns {Object.} Plain object - */ - ExtensionRange.toObject = function toObject(message, options) { - if (!options) - options = {}; - var object = {}; - if (options.defaults) { - object.start = 0; - object.end = 0; - object.options = null; - } - if (message.start != null && message.hasOwnProperty("start")) - object.start = message.start; - if (message.end != null && message.hasOwnProperty("end")) - object.end = message.end; - if (message.options != null && message.hasOwnProperty("options")) - object.options = $root.google.protobuf.ExtensionRangeOptions.toObject(message.options, options); - return object; - }; + /** + * Creates a plain object from a DeleteFeatureRequest message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.v1beta.DeleteFeatureRequest + * @static + * @param {google.cloud.gkehub.v1beta.DeleteFeatureRequest} message DeleteFeatureRequest + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + DeleteFeatureRequest.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.name = ""; + object.force = false; + object.requestId = ""; + } + if (message.name != null && message.hasOwnProperty("name")) + object.name = message.name; + if (message.force != null && message.hasOwnProperty("force")) + object.force = message.force; + if (message.requestId != null && message.hasOwnProperty("requestId")) + object.requestId = message.requestId; + return object; + }; - /** - * Converts this ExtensionRange to JSON. - * @function toJSON - * @memberof google.protobuf.DescriptorProto.ExtensionRange - * @instance - * @returns {Object.} JSON object - */ - ExtensionRange.prototype.toJSON = function toJSON() { - return this.constructor.toObject(this, $protobuf.util.toJSONOptions); - }; + /** + * Converts this DeleteFeatureRequest to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.v1beta.DeleteFeatureRequest + * @instance + * @returns {Object.} JSON object + */ + DeleteFeatureRequest.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; - return ExtensionRange; - })(); + return DeleteFeatureRequest; + })(); - DescriptorProto.ReservedRange = (function() { + v1beta.UpdateFeatureRequest = (function() { - /** - * Properties of a ReservedRange. - * @memberof google.protobuf.DescriptorProto - * @interface IReservedRange - * @property {number|null} [start] ReservedRange start - * @property {number|null} [end] ReservedRange end - */ + /** + * Properties of an UpdateFeatureRequest. + * @memberof google.cloud.gkehub.v1beta + * @interface IUpdateFeatureRequest + * @property {string|null} [name] UpdateFeatureRequest name + * @property {google.protobuf.IFieldMask|null} [updateMask] UpdateFeatureRequest updateMask + * @property {google.cloud.gkehub.v1beta.IFeature|null} [resource] UpdateFeatureRequest resource + * @property {string|null} [requestId] UpdateFeatureRequest requestId + */ - /** - * Constructs a new ReservedRange. - * @memberof google.protobuf.DescriptorProto - * @classdesc Represents a ReservedRange. - * @implements IReservedRange - * @constructor - * @param {google.protobuf.DescriptorProto.IReservedRange=} [properties] Properties to set - */ - function ReservedRange(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]]; - } + /** + * Constructs a new UpdateFeatureRequest. + * @memberof google.cloud.gkehub.v1beta + * @classdesc Represents an UpdateFeatureRequest. + * @implements IUpdateFeatureRequest + * @constructor + * @param {google.cloud.gkehub.v1beta.IUpdateFeatureRequest=} [properties] Properties to set + */ + function UpdateFeatureRequest(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]]; + } - /** - * ReservedRange start. - * @member {number} start - * @memberof google.protobuf.DescriptorProto.ReservedRange - * @instance - */ - ReservedRange.prototype.start = 0; + /** + * UpdateFeatureRequest name. + * @member {string} name + * @memberof google.cloud.gkehub.v1beta.UpdateFeatureRequest + * @instance + */ + UpdateFeatureRequest.prototype.name = ""; - /** - * ReservedRange end. - * @member {number} end - * @memberof google.protobuf.DescriptorProto.ReservedRange - * @instance - */ - ReservedRange.prototype.end = 0; + /** + * UpdateFeatureRequest updateMask. + * @member {google.protobuf.IFieldMask|null|undefined} updateMask + * @memberof google.cloud.gkehub.v1beta.UpdateFeatureRequest + * @instance + */ + UpdateFeatureRequest.prototype.updateMask = null; - /** - * Creates a new ReservedRange instance using the specified properties. - * @function create - * @memberof google.protobuf.DescriptorProto.ReservedRange - * @static - * @param {google.protobuf.DescriptorProto.IReservedRange=} [properties] Properties to set - * @returns {google.protobuf.DescriptorProto.ReservedRange} ReservedRange instance - */ - ReservedRange.create = function create(properties) { - return new ReservedRange(properties); - }; + /** + * UpdateFeatureRequest resource. + * @member {google.cloud.gkehub.v1beta.IFeature|null|undefined} resource + * @memberof google.cloud.gkehub.v1beta.UpdateFeatureRequest + * @instance + */ + UpdateFeatureRequest.prototype.resource = null; - /** - * Encodes the specified ReservedRange message. Does not implicitly {@link google.protobuf.DescriptorProto.ReservedRange.verify|verify} messages. - * @function encode - * @memberof google.protobuf.DescriptorProto.ReservedRange - * @static - * @param {google.protobuf.DescriptorProto.IReservedRange} message ReservedRange message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - ReservedRange.encode = function encode(message, writer) { - if (!writer) - writer = $Writer.create(); - if (message.start != null && Object.hasOwnProperty.call(message, "start")) - writer.uint32(/* id 1, wireType 0 =*/8).int32(message.start); - if (message.end != null && Object.hasOwnProperty.call(message, "end")) - writer.uint32(/* id 2, wireType 0 =*/16).int32(message.end); - return writer; - }; + /** + * UpdateFeatureRequest requestId. + * @member {string} requestId + * @memberof google.cloud.gkehub.v1beta.UpdateFeatureRequest + * @instance + */ + UpdateFeatureRequest.prototype.requestId = ""; - /** - * Encodes the specified ReservedRange message, length delimited. Does not implicitly {@link google.protobuf.DescriptorProto.ReservedRange.verify|verify} messages. - * @function encodeDelimited - * @memberof google.protobuf.DescriptorProto.ReservedRange - * @static - * @param {google.protobuf.DescriptorProto.IReservedRange} message ReservedRange message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - ReservedRange.encodeDelimited = function encodeDelimited(message, writer) { - return this.encode(message, writer).ldelim(); - }; + /** + * Creates a new UpdateFeatureRequest instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.v1beta.UpdateFeatureRequest + * @static + * @param {google.cloud.gkehub.v1beta.IUpdateFeatureRequest=} [properties] Properties to set + * @returns {google.cloud.gkehub.v1beta.UpdateFeatureRequest} UpdateFeatureRequest instance + */ + UpdateFeatureRequest.create = function create(properties) { + return new UpdateFeatureRequest(properties); + }; - /** - * Decodes a ReservedRange message from the specified reader or buffer. - * @function decode - * @memberof google.protobuf.DescriptorProto.ReservedRange - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @param {number} [length] Message length if known beforehand - * @returns {google.protobuf.DescriptorProto.ReservedRange} ReservedRange - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - ReservedRange.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.protobuf.DescriptorProto.ReservedRange(); - while (reader.pos < end) { - var tag = reader.uint32(); - switch (tag >>> 3) { - case 1: - message.start = reader.int32(); - break; - case 2: - message.end = reader.int32(); - break; - default: - reader.skipType(tag & 7); - break; + /** + * Encodes the specified UpdateFeatureRequest message. Does not implicitly {@link google.cloud.gkehub.v1beta.UpdateFeatureRequest.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.v1beta.UpdateFeatureRequest + * @static + * @param {google.cloud.gkehub.v1beta.IUpdateFeatureRequest} message UpdateFeatureRequest message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + UpdateFeatureRequest.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.name != null && Object.hasOwnProperty.call(message, "name")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.name); + if (message.updateMask != null && Object.hasOwnProperty.call(message, "updateMask")) + $root.google.protobuf.FieldMask.encode(message.updateMask, writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim(); + if (message.resource != null && Object.hasOwnProperty.call(message, "resource")) + $root.google.cloud.gkehub.v1beta.Feature.encode(message.resource, writer.uint32(/* id 3, wireType 2 =*/26).fork()).ldelim(); + if (message.requestId != null && Object.hasOwnProperty.call(message, "requestId")) + writer.uint32(/* id 4, wireType 2 =*/34).string(message.requestId); + return writer; + }; + + /** + * Encodes the specified UpdateFeatureRequest message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta.UpdateFeatureRequest.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.v1beta.UpdateFeatureRequest + * @static + * @param {google.cloud.gkehub.v1beta.IUpdateFeatureRequest} message UpdateFeatureRequest message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + UpdateFeatureRequest.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes an UpdateFeatureRequest message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.v1beta.UpdateFeatureRequest + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.v1beta.UpdateFeatureRequest} UpdateFeatureRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + UpdateFeatureRequest.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.v1beta.UpdateFeatureRequest(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.name = reader.string(); + break; + case 2: + message.updateMask = $root.google.protobuf.FieldMask.decode(reader, reader.uint32()); + break; + case 3: + message.resource = $root.google.cloud.gkehub.v1beta.Feature.decode(reader, reader.uint32()); + break; + case 4: + message.requestId = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } } - } - return message; - }; + return message; + }; - /** - * Decodes a ReservedRange message from the specified reader or buffer, length delimited. - * @function decodeDelimited - * @memberof google.protobuf.DescriptorProto.ReservedRange - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {google.protobuf.DescriptorProto.ReservedRange} ReservedRange - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - ReservedRange.decodeDelimited = function decodeDelimited(reader) { - if (!(reader instanceof $Reader)) - reader = new $Reader(reader); - return this.decode(reader, reader.uint32()); - }; + /** + * Decodes an UpdateFeatureRequest message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.v1beta.UpdateFeatureRequest + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.v1beta.UpdateFeatureRequest} UpdateFeatureRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + UpdateFeatureRequest.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies an UpdateFeatureRequest message. + * @function verify + * @memberof google.cloud.gkehub.v1beta.UpdateFeatureRequest + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + UpdateFeatureRequest.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.name != null && message.hasOwnProperty("name")) + if (!$util.isString(message.name)) + return "name: string expected"; + if (message.updateMask != null && message.hasOwnProperty("updateMask")) { + var error = $root.google.protobuf.FieldMask.verify(message.updateMask); + if (error) + return "updateMask." + error; + } + if (message.resource != null && message.hasOwnProperty("resource")) { + var error = $root.google.cloud.gkehub.v1beta.Feature.verify(message.resource); + if (error) + return "resource." + error; + } + if (message.requestId != null && message.hasOwnProperty("requestId")) + if (!$util.isString(message.requestId)) + return "requestId: string expected"; + return null; + }; - /** - * Verifies a ReservedRange message. - * @function verify - * @memberof google.protobuf.DescriptorProto.ReservedRange - * @static - * @param {Object.} message Plain object to verify - * @returns {string|null} `null` if valid, otherwise the reason why it is not - */ - ReservedRange.verify = function verify(message) { - if (typeof message !== "object" || message === null) - return "object expected"; - if (message.start != null && message.hasOwnProperty("start")) - if (!$util.isInteger(message.start)) - return "start: integer expected"; - if (message.end != null && message.hasOwnProperty("end")) - if (!$util.isInteger(message.end)) - return "end: integer expected"; - return null; - }; + /** + * Creates an UpdateFeatureRequest message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.v1beta.UpdateFeatureRequest + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.v1beta.UpdateFeatureRequest} UpdateFeatureRequest + */ + UpdateFeatureRequest.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.v1beta.UpdateFeatureRequest) + return object; + var message = new $root.google.cloud.gkehub.v1beta.UpdateFeatureRequest(); + if (object.name != null) + message.name = String(object.name); + if (object.updateMask != null) { + if (typeof object.updateMask !== "object") + throw TypeError(".google.cloud.gkehub.v1beta.UpdateFeatureRequest.updateMask: object expected"); + message.updateMask = $root.google.protobuf.FieldMask.fromObject(object.updateMask); + } + if (object.resource != null) { + if (typeof object.resource !== "object") + throw TypeError(".google.cloud.gkehub.v1beta.UpdateFeatureRequest.resource: object expected"); + message.resource = $root.google.cloud.gkehub.v1beta.Feature.fromObject(object.resource); + } + if (object.requestId != null) + message.requestId = String(object.requestId); + return message; + }; - /** - * Creates a ReservedRange message from a plain object. Also converts values to their respective internal types. - * @function fromObject - * @memberof google.protobuf.DescriptorProto.ReservedRange - * @static - * @param {Object.} object Plain object - * @returns {google.protobuf.DescriptorProto.ReservedRange} ReservedRange - */ - ReservedRange.fromObject = function fromObject(object) { - if (object instanceof $root.google.protobuf.DescriptorProto.ReservedRange) + /** + * Creates a plain object from an UpdateFeatureRequest message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.v1beta.UpdateFeatureRequest + * @static + * @param {google.cloud.gkehub.v1beta.UpdateFeatureRequest} message UpdateFeatureRequest + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + UpdateFeatureRequest.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.name = ""; + object.updateMask = null; + object.resource = null; + object.requestId = ""; + } + if (message.name != null && message.hasOwnProperty("name")) + object.name = message.name; + if (message.updateMask != null && message.hasOwnProperty("updateMask")) + object.updateMask = $root.google.protobuf.FieldMask.toObject(message.updateMask, options); + if (message.resource != null && message.hasOwnProperty("resource")) + object.resource = $root.google.cloud.gkehub.v1beta.Feature.toObject(message.resource, options); + if (message.requestId != null && message.hasOwnProperty("requestId")) + object.requestId = message.requestId; return object; - var message = new $root.google.protobuf.DescriptorProto.ReservedRange(); - if (object.start != null) - message.start = object.start | 0; - if (object.end != null) - message.end = object.end | 0; - return message; - }; - - /** - * Creates a plain object from a ReservedRange message. Also converts values to other types if specified. - * @function toObject - * @memberof google.protobuf.DescriptorProto.ReservedRange - * @static - * @param {google.protobuf.DescriptorProto.ReservedRange} message ReservedRange - * @param {$protobuf.IConversionOptions} [options] Conversion options - * @returns {Object.} Plain object - */ - ReservedRange.toObject = function toObject(message, options) { - if (!options) - options = {}; - var object = {}; - if (options.defaults) { - object.start = 0; - object.end = 0; - } - if (message.start != null && message.hasOwnProperty("start")) - object.start = message.start; - if (message.end != null && message.hasOwnProperty("end")) - object.end = message.end; - return object; - }; + }; - /** - * Converts this ReservedRange to JSON. - * @function toJSON - * @memberof google.protobuf.DescriptorProto.ReservedRange - * @instance - * @returns {Object.} JSON object - */ - ReservedRange.prototype.toJSON = function toJSON() { - return this.constructor.toObject(this, $protobuf.util.toJSONOptions); - }; + /** + * Converts this UpdateFeatureRequest to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.v1beta.UpdateFeatureRequest + * @instance + * @returns {Object.} JSON object + */ + UpdateFeatureRequest.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; - return ReservedRange; - })(); + return UpdateFeatureRequest; + })(); - return DescriptorProto; - })(); + v1beta.OperationMetadata = (function() { - protobuf.ExtensionRangeOptions = (function() { + /** + * Properties of an OperationMetadata. + * @memberof google.cloud.gkehub.v1beta + * @interface IOperationMetadata + * @property {google.protobuf.ITimestamp|null} [createTime] OperationMetadata createTime + * @property {google.protobuf.ITimestamp|null} [endTime] OperationMetadata endTime + * @property {string|null} [target] OperationMetadata target + * @property {string|null} [verb] OperationMetadata verb + * @property {string|null} [statusDetail] OperationMetadata statusDetail + * @property {boolean|null} [cancelRequested] OperationMetadata cancelRequested + * @property {string|null} [apiVersion] OperationMetadata apiVersion + */ - /** - * Properties of an ExtensionRangeOptions. - * @memberof google.protobuf - * @interface IExtensionRangeOptions - * @property {Array.|null} [uninterpretedOption] ExtensionRangeOptions uninterpretedOption - */ + /** + * Constructs a new OperationMetadata. + * @memberof google.cloud.gkehub.v1beta + * @classdesc Represents an OperationMetadata. + * @implements IOperationMetadata + * @constructor + * @param {google.cloud.gkehub.v1beta.IOperationMetadata=} [properties] Properties to set + */ + function OperationMetadata(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]]; + } - /** - * Constructs a new ExtensionRangeOptions. - * @memberof google.protobuf - * @classdesc Represents an ExtensionRangeOptions. - * @implements IExtensionRangeOptions - * @constructor - * @param {google.protobuf.IExtensionRangeOptions=} [properties] Properties to set - */ - function ExtensionRangeOptions(properties) { - this.uninterpretedOption = []; - 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]]; - } + /** + * OperationMetadata createTime. + * @member {google.protobuf.ITimestamp|null|undefined} createTime + * @memberof google.cloud.gkehub.v1beta.OperationMetadata + * @instance + */ + OperationMetadata.prototype.createTime = null; - /** - * ExtensionRangeOptions uninterpretedOption. - * @member {Array.} uninterpretedOption - * @memberof google.protobuf.ExtensionRangeOptions - * @instance - */ - ExtensionRangeOptions.prototype.uninterpretedOption = $util.emptyArray; + /** + * OperationMetadata endTime. + * @member {google.protobuf.ITimestamp|null|undefined} endTime + * @memberof google.cloud.gkehub.v1beta.OperationMetadata + * @instance + */ + OperationMetadata.prototype.endTime = null; - /** - * Creates a new ExtensionRangeOptions instance using the specified properties. - * @function create - * @memberof google.protobuf.ExtensionRangeOptions - * @static - * @param {google.protobuf.IExtensionRangeOptions=} [properties] Properties to set - * @returns {google.protobuf.ExtensionRangeOptions} ExtensionRangeOptions instance - */ - ExtensionRangeOptions.create = function create(properties) { - return new ExtensionRangeOptions(properties); - }; + /** + * OperationMetadata target. + * @member {string} target + * @memberof google.cloud.gkehub.v1beta.OperationMetadata + * @instance + */ + OperationMetadata.prototype.target = ""; - /** - * Encodes the specified ExtensionRangeOptions message. Does not implicitly {@link google.protobuf.ExtensionRangeOptions.verify|verify} messages. - * @function encode - * @memberof google.protobuf.ExtensionRangeOptions - * @static - * @param {google.protobuf.IExtensionRangeOptions} message ExtensionRangeOptions message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - ExtensionRangeOptions.encode = function encode(message, writer) { - if (!writer) - writer = $Writer.create(); - if (message.uninterpretedOption != null && message.uninterpretedOption.length) - for (var i = 0; i < message.uninterpretedOption.length; ++i) - $root.google.protobuf.UninterpretedOption.encode(message.uninterpretedOption[i], writer.uint32(/* id 999, wireType 2 =*/7994).fork()).ldelim(); - return writer; - }; + /** + * OperationMetadata verb. + * @member {string} verb + * @memberof google.cloud.gkehub.v1beta.OperationMetadata + * @instance + */ + OperationMetadata.prototype.verb = ""; - /** - * Encodes the specified ExtensionRangeOptions message, length delimited. Does not implicitly {@link google.protobuf.ExtensionRangeOptions.verify|verify} messages. - * @function encodeDelimited - * @memberof google.protobuf.ExtensionRangeOptions - * @static - * @param {google.protobuf.IExtensionRangeOptions} message ExtensionRangeOptions message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - ExtensionRangeOptions.encodeDelimited = function encodeDelimited(message, writer) { - return this.encode(message, writer).ldelim(); - }; + /** + * OperationMetadata statusDetail. + * @member {string} statusDetail + * @memberof google.cloud.gkehub.v1beta.OperationMetadata + * @instance + */ + OperationMetadata.prototype.statusDetail = ""; - /** - * Decodes an ExtensionRangeOptions message from the specified reader or buffer. - * @function decode - * @memberof google.protobuf.ExtensionRangeOptions - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @param {number} [length] Message length if known beforehand - * @returns {google.protobuf.ExtensionRangeOptions} ExtensionRangeOptions - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - ExtensionRangeOptions.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.protobuf.ExtensionRangeOptions(); - while (reader.pos < end) { - var tag = reader.uint32(); - switch (tag >>> 3) { - case 999: - if (!(message.uninterpretedOption && message.uninterpretedOption.length)) - message.uninterpretedOption = []; - message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32())); - break; - default: - reader.skipType(tag & 7); - break; - } - } - return message; - }; + /** + * OperationMetadata cancelRequested. + * @member {boolean} cancelRequested + * @memberof google.cloud.gkehub.v1beta.OperationMetadata + * @instance + */ + OperationMetadata.prototype.cancelRequested = false; - /** - * Decodes an ExtensionRangeOptions message from the specified reader or buffer, length delimited. - * @function decodeDelimited - * @memberof google.protobuf.ExtensionRangeOptions - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {google.protobuf.ExtensionRangeOptions} ExtensionRangeOptions - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - ExtensionRangeOptions.decodeDelimited = function decodeDelimited(reader) { - if (!(reader instanceof $Reader)) - reader = new $Reader(reader); - return this.decode(reader, reader.uint32()); - }; + /** + * OperationMetadata apiVersion. + * @member {string} apiVersion + * @memberof google.cloud.gkehub.v1beta.OperationMetadata + * @instance + */ + OperationMetadata.prototype.apiVersion = ""; - /** - * Verifies an ExtensionRangeOptions message. - * @function verify - * @memberof google.protobuf.ExtensionRangeOptions - * @static - * @param {Object.} message Plain object to verify - * @returns {string|null} `null` if valid, otherwise the reason why it is not - */ - ExtensionRangeOptions.verify = function verify(message) { - if (typeof message !== "object" || message === null) - return "object expected"; - if (message.uninterpretedOption != null && message.hasOwnProperty("uninterpretedOption")) { - if (!Array.isArray(message.uninterpretedOption)) - return "uninterpretedOption: array expected"; - for (var i = 0; i < message.uninterpretedOption.length; ++i) { - var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i]); - if (error) - return "uninterpretedOption." + error; - } - } - return null; - }; + /** + * Creates a new OperationMetadata instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.v1beta.OperationMetadata + * @static + * @param {google.cloud.gkehub.v1beta.IOperationMetadata=} [properties] Properties to set + * @returns {google.cloud.gkehub.v1beta.OperationMetadata} OperationMetadata instance + */ + OperationMetadata.create = function create(properties) { + return new OperationMetadata(properties); + }; - /** - * Creates an ExtensionRangeOptions message from a plain object. Also converts values to their respective internal types. - * @function fromObject - * @memberof google.protobuf.ExtensionRangeOptions - * @static - * @param {Object.} object Plain object - * @returns {google.protobuf.ExtensionRangeOptions} ExtensionRangeOptions - */ - ExtensionRangeOptions.fromObject = function fromObject(object) { - if (object instanceof $root.google.protobuf.ExtensionRangeOptions) - return object; - var message = new $root.google.protobuf.ExtensionRangeOptions(); - if (object.uninterpretedOption) { - if (!Array.isArray(object.uninterpretedOption)) - throw TypeError(".google.protobuf.ExtensionRangeOptions.uninterpretedOption: array expected"); - message.uninterpretedOption = []; - for (var i = 0; i < object.uninterpretedOption.length; ++i) { - if (typeof object.uninterpretedOption[i] !== "object") - throw TypeError(".google.protobuf.ExtensionRangeOptions.uninterpretedOption: object expected"); - message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i]); - } - } - return message; - }; + /** + * Encodes the specified OperationMetadata message. Does not implicitly {@link google.cloud.gkehub.v1beta.OperationMetadata.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.v1beta.OperationMetadata + * @static + * @param {google.cloud.gkehub.v1beta.IOperationMetadata} message OperationMetadata message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + OperationMetadata.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.createTime != null && Object.hasOwnProperty.call(message, "createTime")) + $root.google.protobuf.Timestamp.encode(message.createTime, writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim(); + if (message.endTime != null && Object.hasOwnProperty.call(message, "endTime")) + $root.google.protobuf.Timestamp.encode(message.endTime, writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim(); + if (message.target != null && Object.hasOwnProperty.call(message, "target")) + writer.uint32(/* id 3, wireType 2 =*/26).string(message.target); + if (message.verb != null && Object.hasOwnProperty.call(message, "verb")) + writer.uint32(/* id 4, wireType 2 =*/34).string(message.verb); + if (message.statusDetail != null && Object.hasOwnProperty.call(message, "statusDetail")) + writer.uint32(/* id 5, wireType 2 =*/42).string(message.statusDetail); + if (message.cancelRequested != null && Object.hasOwnProperty.call(message, "cancelRequested")) + writer.uint32(/* id 6, wireType 0 =*/48).bool(message.cancelRequested); + if (message.apiVersion != null && Object.hasOwnProperty.call(message, "apiVersion")) + writer.uint32(/* id 7, wireType 2 =*/58).string(message.apiVersion); + return writer; + }; - /** - * Creates a plain object from an ExtensionRangeOptions message. Also converts values to other types if specified. - * @function toObject - * @memberof google.protobuf.ExtensionRangeOptions - * @static - * @param {google.protobuf.ExtensionRangeOptions} message ExtensionRangeOptions - * @param {$protobuf.IConversionOptions} [options] Conversion options - * @returns {Object.} Plain object - */ - ExtensionRangeOptions.toObject = function toObject(message, options) { - if (!options) - options = {}; - var object = {}; - if (options.arrays || options.defaults) - object.uninterpretedOption = []; - if (message.uninterpretedOption && message.uninterpretedOption.length) { - object.uninterpretedOption = []; - for (var j = 0; j < message.uninterpretedOption.length; ++j) - object.uninterpretedOption[j] = $root.google.protobuf.UninterpretedOption.toObject(message.uninterpretedOption[j], options); - } - return object; - }; + /** + * Encodes the specified OperationMetadata message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta.OperationMetadata.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.v1beta.OperationMetadata + * @static + * @param {google.cloud.gkehub.v1beta.IOperationMetadata} message OperationMetadata message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + OperationMetadata.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; - /** - * Converts this ExtensionRangeOptions to JSON. - * @function toJSON - * @memberof google.protobuf.ExtensionRangeOptions - * @instance - * @returns {Object.} JSON object - */ - ExtensionRangeOptions.prototype.toJSON = function toJSON() { - return this.constructor.toObject(this, $protobuf.util.toJSONOptions); - }; + /** + * Decodes an OperationMetadata message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.v1beta.OperationMetadata + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.v1beta.OperationMetadata} OperationMetadata + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + OperationMetadata.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.v1beta.OperationMetadata(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.createTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + break; + case 2: + message.endTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + break; + case 3: + message.target = reader.string(); + break; + case 4: + message.verb = reader.string(); + break; + case 5: + message.statusDetail = reader.string(); + break; + case 6: + message.cancelRequested = reader.bool(); + break; + case 7: + message.apiVersion = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; - return ExtensionRangeOptions; - })(); + /** + * Decodes an OperationMetadata message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.v1beta.OperationMetadata + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.v1beta.OperationMetadata} OperationMetadata + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + OperationMetadata.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; - protobuf.FieldDescriptorProto = (function() { + /** + * Verifies an OperationMetadata message. + * @function verify + * @memberof google.cloud.gkehub.v1beta.OperationMetadata + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + OperationMetadata.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.createTime != null && message.hasOwnProperty("createTime")) { + var error = $root.google.protobuf.Timestamp.verify(message.createTime); + if (error) + return "createTime." + error; + } + if (message.endTime != null && message.hasOwnProperty("endTime")) { + var error = $root.google.protobuf.Timestamp.verify(message.endTime); + if (error) + return "endTime." + error; + } + if (message.target != null && message.hasOwnProperty("target")) + if (!$util.isString(message.target)) + return "target: string expected"; + if (message.verb != null && message.hasOwnProperty("verb")) + if (!$util.isString(message.verb)) + return "verb: string expected"; + if (message.statusDetail != null && message.hasOwnProperty("statusDetail")) + if (!$util.isString(message.statusDetail)) + return "statusDetail: string expected"; + if (message.cancelRequested != null && message.hasOwnProperty("cancelRequested")) + if (typeof message.cancelRequested !== "boolean") + return "cancelRequested: boolean expected"; + if (message.apiVersion != null && message.hasOwnProperty("apiVersion")) + if (!$util.isString(message.apiVersion)) + return "apiVersion: string expected"; + return null; + }; - /** - * Properties of a FieldDescriptorProto. - * @memberof google.protobuf - * @interface IFieldDescriptorProto - * @property {string|null} [name] FieldDescriptorProto name - * @property {number|null} [number] FieldDescriptorProto number - * @property {google.protobuf.FieldDescriptorProto.Label|null} [label] FieldDescriptorProto label - * @property {google.protobuf.FieldDescriptorProto.Type|null} [type] FieldDescriptorProto type - * @property {string|null} [typeName] FieldDescriptorProto typeName - * @property {string|null} [extendee] FieldDescriptorProto extendee - * @property {string|null} [defaultValue] FieldDescriptorProto defaultValue - * @property {number|null} [oneofIndex] FieldDescriptorProto oneofIndex - * @property {string|null} [jsonName] FieldDescriptorProto jsonName - * @property {google.protobuf.IFieldOptions|null} [options] FieldDescriptorProto options - * @property {boolean|null} [proto3Optional] FieldDescriptorProto proto3Optional - */ + /** + * Creates an OperationMetadata message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.v1beta.OperationMetadata + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.v1beta.OperationMetadata} OperationMetadata + */ + OperationMetadata.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.v1beta.OperationMetadata) + return object; + var message = new $root.google.cloud.gkehub.v1beta.OperationMetadata(); + if (object.createTime != null) { + if (typeof object.createTime !== "object") + throw TypeError(".google.cloud.gkehub.v1beta.OperationMetadata.createTime: object expected"); + message.createTime = $root.google.protobuf.Timestamp.fromObject(object.createTime); + } + if (object.endTime != null) { + if (typeof object.endTime !== "object") + throw TypeError(".google.cloud.gkehub.v1beta.OperationMetadata.endTime: object expected"); + message.endTime = $root.google.protobuf.Timestamp.fromObject(object.endTime); + } + if (object.target != null) + message.target = String(object.target); + if (object.verb != null) + message.verb = String(object.verb); + if (object.statusDetail != null) + message.statusDetail = String(object.statusDetail); + if (object.cancelRequested != null) + message.cancelRequested = Boolean(object.cancelRequested); + if (object.apiVersion != null) + message.apiVersion = String(object.apiVersion); + return message; + }; - /** - * Constructs a new FieldDescriptorProto. - * @memberof google.protobuf - * @classdesc Represents a FieldDescriptorProto. - * @implements IFieldDescriptorProto - * @constructor - * @param {google.protobuf.IFieldDescriptorProto=} [properties] Properties to set - */ - function FieldDescriptorProto(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]]; - } + /** + * Creates a plain object from an OperationMetadata message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.v1beta.OperationMetadata + * @static + * @param {google.cloud.gkehub.v1beta.OperationMetadata} message OperationMetadata + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + OperationMetadata.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.createTime = null; + object.endTime = null; + object.target = ""; + object.verb = ""; + object.statusDetail = ""; + object.cancelRequested = false; + object.apiVersion = ""; + } + if (message.createTime != null && message.hasOwnProperty("createTime")) + object.createTime = $root.google.protobuf.Timestamp.toObject(message.createTime, options); + if (message.endTime != null && message.hasOwnProperty("endTime")) + object.endTime = $root.google.protobuf.Timestamp.toObject(message.endTime, options); + if (message.target != null && message.hasOwnProperty("target")) + object.target = message.target; + if (message.verb != null && message.hasOwnProperty("verb")) + object.verb = message.verb; + if (message.statusDetail != null && message.hasOwnProperty("statusDetail")) + object.statusDetail = message.statusDetail; + if (message.cancelRequested != null && message.hasOwnProperty("cancelRequested")) + object.cancelRequested = message.cancelRequested; + if (message.apiVersion != null && message.hasOwnProperty("apiVersion")) + object.apiVersion = message.apiVersion; + return object; + }; - /** - * FieldDescriptorProto name. - * @member {string} name - * @memberof google.protobuf.FieldDescriptorProto - * @instance - */ - FieldDescriptorProto.prototype.name = ""; + /** + * Converts this OperationMetadata to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.v1beta.OperationMetadata + * @instance + * @returns {Object.} JSON object + */ + OperationMetadata.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; - /** - * FieldDescriptorProto number. - * @member {number} number - * @memberof google.protobuf.FieldDescriptorProto - * @instance - */ - FieldDescriptorProto.prototype.number = 0; + return OperationMetadata; + })(); - /** - * FieldDescriptorProto label. - * @member {google.protobuf.FieldDescriptorProto.Label} label - * @memberof google.protobuf.FieldDescriptorProto - * @instance - */ - FieldDescriptorProto.prototype.label = 1; + return v1beta; + })(); - /** - * FieldDescriptorProto type. - * @member {google.protobuf.FieldDescriptorProto.Type} type - * @memberof google.protobuf.FieldDescriptorProto - * @instance - */ - FieldDescriptorProto.prototype.type = 1; + gkehub.v1beta1 = (function() { - /** - * FieldDescriptorProto typeName. - * @member {string} typeName - * @memberof google.protobuf.FieldDescriptorProto - * @instance - */ - FieldDescriptorProto.prototype.typeName = ""; + /** + * Namespace v1beta1. + * @memberof google.cloud.gkehub + * @namespace + */ + var v1beta1 = {}; - /** - * FieldDescriptorProto extendee. - * @member {string} extendee - * @memberof google.protobuf.FieldDescriptorProto - * @instance - */ - FieldDescriptorProto.prototype.extendee = ""; + v1beta1.GkeHubMembershipService = (function() { - /** - * FieldDescriptorProto defaultValue. - * @member {string} defaultValue - * @memberof google.protobuf.FieldDescriptorProto - * @instance - */ - FieldDescriptorProto.prototype.defaultValue = ""; + /** + * Constructs a new GkeHubMembershipService service. + * @memberof google.cloud.gkehub.v1beta1 + * @classdesc Represents a GkeHubMembershipService + * @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 GkeHubMembershipService(rpcImpl, requestDelimited, responseDelimited) { + $protobuf.rpc.Service.call(this, rpcImpl, requestDelimited, responseDelimited); + } - /** - * FieldDescriptorProto oneofIndex. - * @member {number} oneofIndex - * @memberof google.protobuf.FieldDescriptorProto - * @instance - */ - FieldDescriptorProto.prototype.oneofIndex = 0; + (GkeHubMembershipService.prototype = Object.create($protobuf.rpc.Service.prototype)).constructor = GkeHubMembershipService; - /** - * FieldDescriptorProto jsonName. - * @member {string} jsonName - * @memberof google.protobuf.FieldDescriptorProto - * @instance - */ - FieldDescriptorProto.prototype.jsonName = ""; + /** + * Creates new GkeHubMembershipService service using the specified rpc implementation. + * @function create + * @memberof google.cloud.gkehub.v1beta1.GkeHubMembershipService + * @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 {GkeHubMembershipService} RPC service. Useful where requests and/or responses are streamed. + */ + GkeHubMembershipService.create = function create(rpcImpl, requestDelimited, responseDelimited) { + return new this(rpcImpl, requestDelimited, responseDelimited); + }; - /** - * FieldDescriptorProto options. - * @member {google.protobuf.IFieldOptions|null|undefined} options - * @memberof google.protobuf.FieldDescriptorProto - * @instance - */ - FieldDescriptorProto.prototype.options = null; + /** + * Callback as used by {@link google.cloud.gkehub.v1beta1.GkeHubMembershipService#listMemberships}. + * @memberof google.cloud.gkehub.v1beta1.GkeHubMembershipService + * @typedef ListMembershipsCallback + * @type {function} + * @param {Error|null} error Error, if any + * @param {google.cloud.gkehub.v1beta1.ListMembershipsResponse} [response] ListMembershipsResponse + */ - /** - * FieldDescriptorProto proto3Optional. - * @member {boolean} proto3Optional - * @memberof google.protobuf.FieldDescriptorProto - * @instance - */ - FieldDescriptorProto.prototype.proto3Optional = false; + /** + * Calls ListMemberships. + * @function listMemberships + * @memberof google.cloud.gkehub.v1beta1.GkeHubMembershipService + * @instance + * @param {google.cloud.gkehub.v1beta1.IListMembershipsRequest} request ListMembershipsRequest message or plain object + * @param {google.cloud.gkehub.v1beta1.GkeHubMembershipService.ListMembershipsCallback} callback Node-style callback called with the error, if any, and ListMembershipsResponse + * @returns {undefined} + * @variation 1 + */ + Object.defineProperty(GkeHubMembershipService.prototype.listMemberships = function listMemberships(request, callback) { + return this.rpcCall(listMemberships, $root.google.cloud.gkehub.v1beta1.ListMembershipsRequest, $root.google.cloud.gkehub.v1beta1.ListMembershipsResponse, request, callback); + }, "name", { value: "ListMemberships" }); - /** - * Creates a new FieldDescriptorProto instance using the specified properties. - * @function create - * @memberof google.protobuf.FieldDescriptorProto - * @static - * @param {google.protobuf.IFieldDescriptorProto=} [properties] Properties to set - * @returns {google.protobuf.FieldDescriptorProto} FieldDescriptorProto instance - */ - FieldDescriptorProto.create = function create(properties) { - return new FieldDescriptorProto(properties); - }; + /** + * Calls ListMemberships. + * @function listMemberships + * @memberof google.cloud.gkehub.v1beta1.GkeHubMembershipService + * @instance + * @param {google.cloud.gkehub.v1beta1.IListMembershipsRequest} request ListMembershipsRequest message or plain object + * @returns {Promise} Promise + * @variation 2 + */ - /** - * Encodes the specified FieldDescriptorProto message. Does not implicitly {@link google.protobuf.FieldDescriptorProto.verify|verify} messages. - * @function encode - * @memberof google.protobuf.FieldDescriptorProto - * @static - * @param {google.protobuf.IFieldDescriptorProto} message FieldDescriptorProto message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - FieldDescriptorProto.encode = function encode(message, writer) { - if (!writer) - writer = $Writer.create(); - if (message.name != null && Object.hasOwnProperty.call(message, "name")) - writer.uint32(/* id 1, wireType 2 =*/10).string(message.name); - if (message.extendee != null && Object.hasOwnProperty.call(message, "extendee")) - writer.uint32(/* id 2, wireType 2 =*/18).string(message.extendee); - if (message.number != null && Object.hasOwnProperty.call(message, "number")) - writer.uint32(/* id 3, wireType 0 =*/24).int32(message.number); - if (message.label != null && Object.hasOwnProperty.call(message, "label")) - writer.uint32(/* id 4, wireType 0 =*/32).int32(message.label); - if (message.type != null && Object.hasOwnProperty.call(message, "type")) - writer.uint32(/* id 5, wireType 0 =*/40).int32(message.type); - if (message.typeName != null && Object.hasOwnProperty.call(message, "typeName")) - writer.uint32(/* id 6, wireType 2 =*/50).string(message.typeName); - if (message.defaultValue != null && Object.hasOwnProperty.call(message, "defaultValue")) - writer.uint32(/* id 7, wireType 2 =*/58).string(message.defaultValue); - if (message.options != null && Object.hasOwnProperty.call(message, "options")) - $root.google.protobuf.FieldOptions.encode(message.options, writer.uint32(/* id 8, wireType 2 =*/66).fork()).ldelim(); - if (message.oneofIndex != null && Object.hasOwnProperty.call(message, "oneofIndex")) - writer.uint32(/* id 9, wireType 0 =*/72).int32(message.oneofIndex); - if (message.jsonName != null && Object.hasOwnProperty.call(message, "jsonName")) - writer.uint32(/* id 10, wireType 2 =*/82).string(message.jsonName); - if (message.proto3Optional != null && Object.hasOwnProperty.call(message, "proto3Optional")) - writer.uint32(/* id 17, wireType 0 =*/136).bool(message.proto3Optional); - return writer; - }; + /** + * Callback as used by {@link google.cloud.gkehub.v1beta1.GkeHubMembershipService#getMembership}. + * @memberof google.cloud.gkehub.v1beta1.GkeHubMembershipService + * @typedef GetMembershipCallback + * @type {function} + * @param {Error|null} error Error, if any + * @param {google.cloud.gkehub.v1beta1.Membership} [response] Membership + */ - /** - * Encodes the specified FieldDescriptorProto message, length delimited. Does not implicitly {@link google.protobuf.FieldDescriptorProto.verify|verify} messages. - * @function encodeDelimited - * @memberof google.protobuf.FieldDescriptorProto - * @static - * @param {google.protobuf.IFieldDescriptorProto} message FieldDescriptorProto message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - FieldDescriptorProto.encodeDelimited = function encodeDelimited(message, writer) { - return this.encode(message, writer).ldelim(); - }; + /** + * Calls GetMembership. + * @function getMembership + * @memberof google.cloud.gkehub.v1beta1.GkeHubMembershipService + * @instance + * @param {google.cloud.gkehub.v1beta1.IGetMembershipRequest} request GetMembershipRequest message or plain object + * @param {google.cloud.gkehub.v1beta1.GkeHubMembershipService.GetMembershipCallback} callback Node-style callback called with the error, if any, and Membership + * @returns {undefined} + * @variation 1 + */ + Object.defineProperty(GkeHubMembershipService.prototype.getMembership = function getMembership(request, callback) { + return this.rpcCall(getMembership, $root.google.cloud.gkehub.v1beta1.GetMembershipRequest, $root.google.cloud.gkehub.v1beta1.Membership, request, callback); + }, "name", { value: "GetMembership" }); - /** - * Decodes a FieldDescriptorProto message from the specified reader or buffer. - * @function decode - * @memberof google.protobuf.FieldDescriptorProto - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @param {number} [length] Message length if known beforehand - * @returns {google.protobuf.FieldDescriptorProto} FieldDescriptorProto - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - FieldDescriptorProto.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.protobuf.FieldDescriptorProto(); - while (reader.pos < end) { - var tag = reader.uint32(); - switch (tag >>> 3) { - case 1: - message.name = reader.string(); - break; - case 3: - message.number = reader.int32(); - break; - case 4: - message.label = reader.int32(); - break; - case 5: - message.type = reader.int32(); - break; - case 6: - message.typeName = reader.string(); - break; - case 2: - message.extendee = reader.string(); - break; - case 7: - message.defaultValue = reader.string(); - break; - case 9: - message.oneofIndex = reader.int32(); - break; - case 10: - message.jsonName = reader.string(); - break; - case 8: - message.options = $root.google.protobuf.FieldOptions.decode(reader, reader.uint32()); - break; - case 17: - message.proto3Optional = reader.bool(); - break; - default: - reader.skipType(tag & 7); - break; - } - } - return message; - }; + /** + * Calls GetMembership. + * @function getMembership + * @memberof google.cloud.gkehub.v1beta1.GkeHubMembershipService + * @instance + * @param {google.cloud.gkehub.v1beta1.IGetMembershipRequest} request GetMembershipRequest message or plain object + * @returns {Promise} Promise + * @variation 2 + */ - /** - * Decodes a FieldDescriptorProto message from the specified reader or buffer, length delimited. - * @function decodeDelimited - * @memberof google.protobuf.FieldDescriptorProto - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {google.protobuf.FieldDescriptorProto} FieldDescriptorProto - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - FieldDescriptorProto.decodeDelimited = function decodeDelimited(reader) { - if (!(reader instanceof $Reader)) - reader = new $Reader(reader); - return this.decode(reader, reader.uint32()); - }; + /** + * Callback as used by {@link google.cloud.gkehub.v1beta1.GkeHubMembershipService#createMembership}. + * @memberof google.cloud.gkehub.v1beta1.GkeHubMembershipService + * @typedef CreateMembershipCallback + * @type {function} + * @param {Error|null} error Error, if any + * @param {google.longrunning.Operation} [response] Operation + */ - /** - * Verifies a FieldDescriptorProto message. - * @function verify - * @memberof google.protobuf.FieldDescriptorProto - * @static - * @param {Object.} message Plain object to verify - * @returns {string|null} `null` if valid, otherwise the reason why it is not - */ - FieldDescriptorProto.verify = function verify(message) { - if (typeof message !== "object" || message === null) - return "object expected"; - if (message.name != null && message.hasOwnProperty("name")) - if (!$util.isString(message.name)) - return "name: string expected"; - if (message.number != null && message.hasOwnProperty("number")) - if (!$util.isInteger(message.number)) - return "number: integer expected"; - if (message.label != null && message.hasOwnProperty("label")) - switch (message.label) { - default: - return "label: enum value expected"; - case 1: - case 2: - case 3: - break; - } - if (message.type != null && message.hasOwnProperty("type")) - switch (message.type) { - default: - return "type: enum value expected"; - case 1: - case 2: - case 3: - case 4: - case 5: - case 6: - case 7: - case 8: - case 9: - case 10: - case 11: - case 12: - case 13: - case 14: - case 15: - case 16: - case 17: - case 18: - break; - } - if (message.typeName != null && message.hasOwnProperty("typeName")) - if (!$util.isString(message.typeName)) - return "typeName: string expected"; - if (message.extendee != null && message.hasOwnProperty("extendee")) - if (!$util.isString(message.extendee)) - return "extendee: string expected"; - if (message.defaultValue != null && message.hasOwnProperty("defaultValue")) - if (!$util.isString(message.defaultValue)) - return "defaultValue: string expected"; - if (message.oneofIndex != null && message.hasOwnProperty("oneofIndex")) - if (!$util.isInteger(message.oneofIndex)) - return "oneofIndex: integer expected"; - if (message.jsonName != null && message.hasOwnProperty("jsonName")) - if (!$util.isString(message.jsonName)) - return "jsonName: string expected"; - if (message.options != null && message.hasOwnProperty("options")) { - var error = $root.google.protobuf.FieldOptions.verify(message.options); - if (error) - return "options." + error; - } - if (message.proto3Optional != null && message.hasOwnProperty("proto3Optional")) - if (typeof message.proto3Optional !== "boolean") - return "proto3Optional: boolean expected"; - return null; - }; + /** + * Calls CreateMembership. + * @function createMembership + * @memberof google.cloud.gkehub.v1beta1.GkeHubMembershipService + * @instance + * @param {google.cloud.gkehub.v1beta1.ICreateMembershipRequest} request CreateMembershipRequest message or plain object + * @param {google.cloud.gkehub.v1beta1.GkeHubMembershipService.CreateMembershipCallback} callback Node-style callback called with the error, if any, and Operation + * @returns {undefined} + * @variation 1 + */ + Object.defineProperty(GkeHubMembershipService.prototype.createMembership = function createMembership(request, callback) { + return this.rpcCall(createMembership, $root.google.cloud.gkehub.v1beta1.CreateMembershipRequest, $root.google.longrunning.Operation, request, callback); + }, "name", { value: "CreateMembership" }); - /** - * Creates a FieldDescriptorProto message from a plain object. Also converts values to their respective internal types. - * @function fromObject - * @memberof google.protobuf.FieldDescriptorProto - * @static - * @param {Object.} object Plain object - * @returns {google.protobuf.FieldDescriptorProto} FieldDescriptorProto - */ - FieldDescriptorProto.fromObject = function fromObject(object) { - if (object instanceof $root.google.protobuf.FieldDescriptorProto) - return object; - var message = new $root.google.protobuf.FieldDescriptorProto(); - if (object.name != null) - message.name = String(object.name); - if (object.number != null) - message.number = object.number | 0; - switch (object.label) { - case "LABEL_OPTIONAL": - case 1: - message.label = 1; - break; - case "LABEL_REQUIRED": - case 2: - message.label = 2; - break; - case "LABEL_REPEATED": - case 3: - message.label = 3; - break; - } - switch (object.type) { - case "TYPE_DOUBLE": - case 1: - message.type = 1; - break; - case "TYPE_FLOAT": - case 2: - message.type = 2; - break; - case "TYPE_INT64": - case 3: - message.type = 3; - break; - case "TYPE_UINT64": - case 4: - message.type = 4; - break; - case "TYPE_INT32": - case 5: - message.type = 5; - break; - case "TYPE_FIXED64": - case 6: - message.type = 6; - break; - case "TYPE_FIXED32": - case 7: - message.type = 7; - break; - case "TYPE_BOOL": - case 8: - message.type = 8; - break; - case "TYPE_STRING": - case 9: - message.type = 9; - break; - case "TYPE_GROUP": - case 10: - message.type = 10; - break; - case "TYPE_MESSAGE": - case 11: - message.type = 11; - break; - case "TYPE_BYTES": - case 12: - message.type = 12; - break; - case "TYPE_UINT32": - case 13: - message.type = 13; - break; - case "TYPE_ENUM": - case 14: - message.type = 14; - break; - case "TYPE_SFIXED32": - case 15: - message.type = 15; - break; - case "TYPE_SFIXED64": - case 16: - message.type = 16; - break; - case "TYPE_SINT32": - case 17: - message.type = 17; - break; - case "TYPE_SINT64": - case 18: - message.type = 18; - break; - } - if (object.typeName != null) - message.typeName = String(object.typeName); - if (object.extendee != null) - message.extendee = String(object.extendee); - if (object.defaultValue != null) - message.defaultValue = String(object.defaultValue); - if (object.oneofIndex != null) - message.oneofIndex = object.oneofIndex | 0; - if (object.jsonName != null) - message.jsonName = String(object.jsonName); - if (object.options != null) { - if (typeof object.options !== "object") - throw TypeError(".google.protobuf.FieldDescriptorProto.options: object expected"); - message.options = $root.google.protobuf.FieldOptions.fromObject(object.options); - } - if (object.proto3Optional != null) - message.proto3Optional = Boolean(object.proto3Optional); - return message; - }; + /** + * Calls CreateMembership. + * @function createMembership + * @memberof google.cloud.gkehub.v1beta1.GkeHubMembershipService + * @instance + * @param {google.cloud.gkehub.v1beta1.ICreateMembershipRequest} request CreateMembershipRequest message or plain object + * @returns {Promise} Promise + * @variation 2 + */ - /** - * Creates a plain object from a FieldDescriptorProto message. Also converts values to other types if specified. - * @function toObject - * @memberof google.protobuf.FieldDescriptorProto - * @static - * @param {google.protobuf.FieldDescriptorProto} message FieldDescriptorProto - * @param {$protobuf.IConversionOptions} [options] Conversion options - * @returns {Object.} Plain object - */ - FieldDescriptorProto.toObject = function toObject(message, options) { - if (!options) - options = {}; - var object = {}; - if (options.defaults) { - object.name = ""; - object.extendee = ""; - object.number = 0; - object.label = options.enums === String ? "LABEL_OPTIONAL" : 1; - object.type = options.enums === String ? "TYPE_DOUBLE" : 1; - object.typeName = ""; - object.defaultValue = ""; - object.options = null; - object.oneofIndex = 0; - object.jsonName = ""; - object.proto3Optional = false; - } - if (message.name != null && message.hasOwnProperty("name")) - object.name = message.name; - if (message.extendee != null && message.hasOwnProperty("extendee")) - object.extendee = message.extendee; - if (message.number != null && message.hasOwnProperty("number")) - object.number = message.number; - if (message.label != null && message.hasOwnProperty("label")) - object.label = options.enums === String ? $root.google.protobuf.FieldDescriptorProto.Label[message.label] : message.label; - if (message.type != null && message.hasOwnProperty("type")) - object.type = options.enums === String ? $root.google.protobuf.FieldDescriptorProto.Type[message.type] : message.type; - if (message.typeName != null && message.hasOwnProperty("typeName")) - object.typeName = message.typeName; - if (message.defaultValue != null && message.hasOwnProperty("defaultValue")) - object.defaultValue = message.defaultValue; - if (message.options != null && message.hasOwnProperty("options")) - object.options = $root.google.protobuf.FieldOptions.toObject(message.options, options); - if (message.oneofIndex != null && message.hasOwnProperty("oneofIndex")) - object.oneofIndex = message.oneofIndex; - if (message.jsonName != null && message.hasOwnProperty("jsonName")) - object.jsonName = message.jsonName; - if (message.proto3Optional != null && message.hasOwnProperty("proto3Optional")) - object.proto3Optional = message.proto3Optional; - return object; - }; + /** + * Callback as used by {@link google.cloud.gkehub.v1beta1.GkeHubMembershipService#deleteMembership}. + * @memberof google.cloud.gkehub.v1beta1.GkeHubMembershipService + * @typedef DeleteMembershipCallback + * @type {function} + * @param {Error|null} error Error, if any + * @param {google.longrunning.Operation} [response] Operation + */ + + /** + * Calls DeleteMembership. + * @function deleteMembership + * @memberof google.cloud.gkehub.v1beta1.GkeHubMembershipService + * @instance + * @param {google.cloud.gkehub.v1beta1.IDeleteMembershipRequest} request DeleteMembershipRequest message or plain object + * @param {google.cloud.gkehub.v1beta1.GkeHubMembershipService.DeleteMembershipCallback} callback Node-style callback called with the error, if any, and Operation + * @returns {undefined} + * @variation 1 + */ + Object.defineProperty(GkeHubMembershipService.prototype.deleteMembership = function deleteMembership(request, callback) { + return this.rpcCall(deleteMembership, $root.google.cloud.gkehub.v1beta1.DeleteMembershipRequest, $root.google.longrunning.Operation, request, callback); + }, "name", { value: "DeleteMembership" }); + + /** + * Calls DeleteMembership. + * @function deleteMembership + * @memberof google.cloud.gkehub.v1beta1.GkeHubMembershipService + * @instance + * @param {google.cloud.gkehub.v1beta1.IDeleteMembershipRequest} request DeleteMembershipRequest message or plain object + * @returns {Promise} Promise + * @variation 2 + */ + + /** + * Callback as used by {@link google.cloud.gkehub.v1beta1.GkeHubMembershipService#updateMembership}. + * @memberof google.cloud.gkehub.v1beta1.GkeHubMembershipService + * @typedef UpdateMembershipCallback + * @type {function} + * @param {Error|null} error Error, if any + * @param {google.longrunning.Operation} [response] Operation + */ + + /** + * Calls UpdateMembership. + * @function updateMembership + * @memberof google.cloud.gkehub.v1beta1.GkeHubMembershipService + * @instance + * @param {google.cloud.gkehub.v1beta1.IUpdateMembershipRequest} request UpdateMembershipRequest message or plain object + * @param {google.cloud.gkehub.v1beta1.GkeHubMembershipService.UpdateMembershipCallback} callback Node-style callback called with the error, if any, and Operation + * @returns {undefined} + * @variation 1 + */ + Object.defineProperty(GkeHubMembershipService.prototype.updateMembership = function updateMembership(request, callback) { + return this.rpcCall(updateMembership, $root.google.cloud.gkehub.v1beta1.UpdateMembershipRequest, $root.google.longrunning.Operation, request, callback); + }, "name", { value: "UpdateMembership" }); + + /** + * Calls UpdateMembership. + * @function updateMembership + * @memberof google.cloud.gkehub.v1beta1.GkeHubMembershipService + * @instance + * @param {google.cloud.gkehub.v1beta1.IUpdateMembershipRequest} request UpdateMembershipRequest message or plain object + * @returns {Promise} Promise + * @variation 2 + */ - /** - * Converts this FieldDescriptorProto to JSON. - * @function toJSON - * @memberof google.protobuf.FieldDescriptorProto - * @instance - * @returns {Object.} JSON object - */ - FieldDescriptorProto.prototype.toJSON = function toJSON() { - return this.constructor.toObject(this, $protobuf.util.toJSONOptions); - }; + /** + * Callback as used by {@link google.cloud.gkehub.v1beta1.GkeHubMembershipService#generateConnectManifest}. + * @memberof google.cloud.gkehub.v1beta1.GkeHubMembershipService + * @typedef GenerateConnectManifestCallback + * @type {function} + * @param {Error|null} error Error, if any + * @param {google.cloud.gkehub.v1beta1.GenerateConnectManifestResponse} [response] GenerateConnectManifestResponse + */ - /** - * Type enum. - * @name google.protobuf.FieldDescriptorProto.Type - * @enum {number} - * @property {number} TYPE_DOUBLE=1 TYPE_DOUBLE value - * @property {number} TYPE_FLOAT=2 TYPE_FLOAT value - * @property {number} TYPE_INT64=3 TYPE_INT64 value - * @property {number} TYPE_UINT64=4 TYPE_UINT64 value - * @property {number} TYPE_INT32=5 TYPE_INT32 value - * @property {number} TYPE_FIXED64=6 TYPE_FIXED64 value - * @property {number} TYPE_FIXED32=7 TYPE_FIXED32 value - * @property {number} TYPE_BOOL=8 TYPE_BOOL value - * @property {number} TYPE_STRING=9 TYPE_STRING value - * @property {number} TYPE_GROUP=10 TYPE_GROUP value - * @property {number} TYPE_MESSAGE=11 TYPE_MESSAGE value - * @property {number} TYPE_BYTES=12 TYPE_BYTES value - * @property {number} TYPE_UINT32=13 TYPE_UINT32 value - * @property {number} TYPE_ENUM=14 TYPE_ENUM value - * @property {number} TYPE_SFIXED32=15 TYPE_SFIXED32 value - * @property {number} TYPE_SFIXED64=16 TYPE_SFIXED64 value - * @property {number} TYPE_SINT32=17 TYPE_SINT32 value - * @property {number} TYPE_SINT64=18 TYPE_SINT64 value - */ - FieldDescriptorProto.Type = (function() { - var valuesById = {}, values = Object.create(valuesById); - values[valuesById[1] = "TYPE_DOUBLE"] = 1; - values[valuesById[2] = "TYPE_FLOAT"] = 2; - values[valuesById[3] = "TYPE_INT64"] = 3; - values[valuesById[4] = "TYPE_UINT64"] = 4; - values[valuesById[5] = "TYPE_INT32"] = 5; - values[valuesById[6] = "TYPE_FIXED64"] = 6; - values[valuesById[7] = "TYPE_FIXED32"] = 7; - values[valuesById[8] = "TYPE_BOOL"] = 8; - values[valuesById[9] = "TYPE_STRING"] = 9; - values[valuesById[10] = "TYPE_GROUP"] = 10; - values[valuesById[11] = "TYPE_MESSAGE"] = 11; - values[valuesById[12] = "TYPE_BYTES"] = 12; - values[valuesById[13] = "TYPE_UINT32"] = 13; - values[valuesById[14] = "TYPE_ENUM"] = 14; - values[valuesById[15] = "TYPE_SFIXED32"] = 15; - values[valuesById[16] = "TYPE_SFIXED64"] = 16; - values[valuesById[17] = "TYPE_SINT32"] = 17; - values[valuesById[18] = "TYPE_SINT64"] = 18; - return values; - })(); + /** + * Calls GenerateConnectManifest. + * @function generateConnectManifest + * @memberof google.cloud.gkehub.v1beta1.GkeHubMembershipService + * @instance + * @param {google.cloud.gkehub.v1beta1.IGenerateConnectManifestRequest} request GenerateConnectManifestRequest message or plain object + * @param {google.cloud.gkehub.v1beta1.GkeHubMembershipService.GenerateConnectManifestCallback} callback Node-style callback called with the error, if any, and GenerateConnectManifestResponse + * @returns {undefined} + * @variation 1 + */ + Object.defineProperty(GkeHubMembershipService.prototype.generateConnectManifest = function generateConnectManifest(request, callback) { + return this.rpcCall(generateConnectManifest, $root.google.cloud.gkehub.v1beta1.GenerateConnectManifestRequest, $root.google.cloud.gkehub.v1beta1.GenerateConnectManifestResponse, request, callback); + }, "name", { value: "GenerateConnectManifest" }); - /** - * Label enum. - * @name google.protobuf.FieldDescriptorProto.Label - * @enum {number} - * @property {number} LABEL_OPTIONAL=1 LABEL_OPTIONAL value - * @property {number} LABEL_REQUIRED=2 LABEL_REQUIRED value - * @property {number} LABEL_REPEATED=3 LABEL_REPEATED value - */ - FieldDescriptorProto.Label = (function() { - var valuesById = {}, values = Object.create(valuesById); - values[valuesById[1] = "LABEL_OPTIONAL"] = 1; - values[valuesById[2] = "LABEL_REQUIRED"] = 2; - values[valuesById[3] = "LABEL_REPEATED"] = 3; - return values; - })(); + /** + * Calls GenerateConnectManifest. + * @function generateConnectManifest + * @memberof google.cloud.gkehub.v1beta1.GkeHubMembershipService + * @instance + * @param {google.cloud.gkehub.v1beta1.IGenerateConnectManifestRequest} request GenerateConnectManifestRequest message or plain object + * @returns {Promise} Promise + * @variation 2 + */ - return FieldDescriptorProto; - })(); + /** + * Callback as used by {@link google.cloud.gkehub.v1beta1.GkeHubMembershipService#validateExclusivity}. + * @memberof google.cloud.gkehub.v1beta1.GkeHubMembershipService + * @typedef ValidateExclusivityCallback + * @type {function} + * @param {Error|null} error Error, if any + * @param {google.cloud.gkehub.v1beta1.ValidateExclusivityResponse} [response] ValidateExclusivityResponse + */ - protobuf.OneofDescriptorProto = (function() { + /** + * Calls ValidateExclusivity. + * @function validateExclusivity + * @memberof google.cloud.gkehub.v1beta1.GkeHubMembershipService + * @instance + * @param {google.cloud.gkehub.v1beta1.IValidateExclusivityRequest} request ValidateExclusivityRequest message or plain object + * @param {google.cloud.gkehub.v1beta1.GkeHubMembershipService.ValidateExclusivityCallback} callback Node-style callback called with the error, if any, and ValidateExclusivityResponse + * @returns {undefined} + * @variation 1 + */ + Object.defineProperty(GkeHubMembershipService.prototype.validateExclusivity = function validateExclusivity(request, callback) { + return this.rpcCall(validateExclusivity, $root.google.cloud.gkehub.v1beta1.ValidateExclusivityRequest, $root.google.cloud.gkehub.v1beta1.ValidateExclusivityResponse, request, callback); + }, "name", { value: "ValidateExclusivity" }); - /** - * Properties of an OneofDescriptorProto. - * @memberof google.protobuf - * @interface IOneofDescriptorProto - * @property {string|null} [name] OneofDescriptorProto name - * @property {google.protobuf.IOneofOptions|null} [options] OneofDescriptorProto options - */ + /** + * Calls ValidateExclusivity. + * @function validateExclusivity + * @memberof google.cloud.gkehub.v1beta1.GkeHubMembershipService + * @instance + * @param {google.cloud.gkehub.v1beta1.IValidateExclusivityRequest} request ValidateExclusivityRequest message or plain object + * @returns {Promise} Promise + * @variation 2 + */ - /** - * Constructs a new OneofDescriptorProto. - * @memberof google.protobuf - * @classdesc Represents an OneofDescriptorProto. - * @implements IOneofDescriptorProto - * @constructor - * @param {google.protobuf.IOneofDescriptorProto=} [properties] Properties to set - */ - function OneofDescriptorProto(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]]; - } + /** + * Callback as used by {@link google.cloud.gkehub.v1beta1.GkeHubMembershipService#generateExclusivityManifest}. + * @memberof google.cloud.gkehub.v1beta1.GkeHubMembershipService + * @typedef GenerateExclusivityManifestCallback + * @type {function} + * @param {Error|null} error Error, if any + * @param {google.cloud.gkehub.v1beta1.GenerateExclusivityManifestResponse} [response] GenerateExclusivityManifestResponse + */ - /** - * OneofDescriptorProto name. - * @member {string} name - * @memberof google.protobuf.OneofDescriptorProto - * @instance - */ - OneofDescriptorProto.prototype.name = ""; + /** + * Calls GenerateExclusivityManifest. + * @function generateExclusivityManifest + * @memberof google.cloud.gkehub.v1beta1.GkeHubMembershipService + * @instance + * @param {google.cloud.gkehub.v1beta1.IGenerateExclusivityManifestRequest} request GenerateExclusivityManifestRequest message or plain object + * @param {google.cloud.gkehub.v1beta1.GkeHubMembershipService.GenerateExclusivityManifestCallback} callback Node-style callback called with the error, if any, and GenerateExclusivityManifestResponse + * @returns {undefined} + * @variation 1 + */ + Object.defineProperty(GkeHubMembershipService.prototype.generateExclusivityManifest = function generateExclusivityManifest(request, callback) { + return this.rpcCall(generateExclusivityManifest, $root.google.cloud.gkehub.v1beta1.GenerateExclusivityManifestRequest, $root.google.cloud.gkehub.v1beta1.GenerateExclusivityManifestResponse, request, callback); + }, "name", { value: "GenerateExclusivityManifest" }); - /** - * OneofDescriptorProto options. - * @member {google.protobuf.IOneofOptions|null|undefined} options - * @memberof google.protobuf.OneofDescriptorProto - * @instance - */ - OneofDescriptorProto.prototype.options = null; + /** + * Calls GenerateExclusivityManifest. + * @function generateExclusivityManifest + * @memberof google.cloud.gkehub.v1beta1.GkeHubMembershipService + * @instance + * @param {google.cloud.gkehub.v1beta1.IGenerateExclusivityManifestRequest} request GenerateExclusivityManifestRequest message or plain object + * @returns {Promise} Promise + * @variation 2 + */ - /** - * Creates a new OneofDescriptorProto instance using the specified properties. - * @function create - * @memberof google.protobuf.OneofDescriptorProto - * @static - * @param {google.protobuf.IOneofDescriptorProto=} [properties] Properties to set - * @returns {google.protobuf.OneofDescriptorProto} OneofDescriptorProto instance - */ - OneofDescriptorProto.create = function create(properties) { - return new OneofDescriptorProto(properties); - }; + return GkeHubMembershipService; + })(); - /** - * Encodes the specified OneofDescriptorProto message. Does not implicitly {@link google.protobuf.OneofDescriptorProto.verify|verify} messages. - * @function encode - * @memberof google.protobuf.OneofDescriptorProto - * @static - * @param {google.protobuf.IOneofDescriptorProto} message OneofDescriptorProto message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - OneofDescriptorProto.encode = function encode(message, writer) { - if (!writer) - writer = $Writer.create(); - if (message.name != null && Object.hasOwnProperty.call(message, "name")) - writer.uint32(/* id 1, wireType 2 =*/10).string(message.name); - if (message.options != null && Object.hasOwnProperty.call(message, "options")) - $root.google.protobuf.OneofOptions.encode(message.options, writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim(); - return writer; - }; + v1beta1.Membership = (function() { - /** - * Encodes the specified OneofDescriptorProto message, length delimited. Does not implicitly {@link google.protobuf.OneofDescriptorProto.verify|verify} messages. - * @function encodeDelimited - * @memberof google.protobuf.OneofDescriptorProto - * @static - * @param {google.protobuf.IOneofDescriptorProto} message OneofDescriptorProto message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - OneofDescriptorProto.encodeDelimited = function encodeDelimited(message, writer) { - return this.encode(message, writer).ldelim(); - }; + /** + * Properties of a Membership. + * @memberof google.cloud.gkehub.v1beta1 + * @interface IMembership + * @property {string|null} [name] Membership name + * @property {Object.|null} [labels] Membership labels + * @property {string|null} [description] Membership description + * @property {google.cloud.gkehub.v1beta1.IMembershipEndpoint|null} [endpoint] Membership endpoint + * @property {google.cloud.gkehub.v1beta1.IMembershipState|null} [state] Membership state + * @property {google.cloud.gkehub.v1beta1.IAuthority|null} [authority] Membership authority + * @property {google.protobuf.ITimestamp|null} [createTime] Membership createTime + * @property {google.protobuf.ITimestamp|null} [updateTime] Membership updateTime + * @property {google.protobuf.ITimestamp|null} [deleteTime] Membership deleteTime + * @property {string|null} [externalId] Membership externalId + * @property {google.protobuf.ITimestamp|null} [lastConnectionTime] Membership lastConnectionTime + * @property {string|null} [uniqueId] Membership uniqueId + * @property {google.cloud.gkehub.v1beta1.Membership.InfrastructureType|null} [infrastructureType] Membership infrastructureType + */ - /** - * Decodes an OneofDescriptorProto message from the specified reader or buffer. - * @function decode - * @memberof google.protobuf.OneofDescriptorProto - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @param {number} [length] Message length if known beforehand - * @returns {google.protobuf.OneofDescriptorProto} OneofDescriptorProto - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - OneofDescriptorProto.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.protobuf.OneofDescriptorProto(); - while (reader.pos < end) { - var tag = reader.uint32(); - switch (tag >>> 3) { - case 1: - message.name = reader.string(); - break; - case 2: - message.options = $root.google.protobuf.OneofOptions.decode(reader, reader.uint32()); - break; - default: - reader.skipType(tag & 7); - break; + /** + * Constructs a new Membership. + * @memberof google.cloud.gkehub.v1beta1 + * @classdesc Represents a Membership. + * @implements IMembership + * @constructor + * @param {google.cloud.gkehub.v1beta1.IMembership=} [properties] Properties to set + */ + function Membership(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]]; } - } - return message; - }; - /** - * Decodes an OneofDescriptorProto message from the specified reader or buffer, length delimited. - * @function decodeDelimited - * @memberof google.protobuf.OneofDescriptorProto - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {google.protobuf.OneofDescriptorProto} OneofDescriptorProto - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - OneofDescriptorProto.decodeDelimited = function decodeDelimited(reader) { - if (!(reader instanceof $Reader)) - reader = new $Reader(reader); - return this.decode(reader, reader.uint32()); - }; + /** + * Membership name. + * @member {string} name + * @memberof google.cloud.gkehub.v1beta1.Membership + * @instance + */ + Membership.prototype.name = ""; - /** - * Verifies an OneofDescriptorProto message. - * @function verify - * @memberof google.protobuf.OneofDescriptorProto - * @static - * @param {Object.} message Plain object to verify - * @returns {string|null} `null` if valid, otherwise the reason why it is not - */ - OneofDescriptorProto.verify = function verify(message) { - if (typeof message !== "object" || message === null) - return "object expected"; - if (message.name != null && message.hasOwnProperty("name")) - if (!$util.isString(message.name)) - return "name: string expected"; - if (message.options != null && message.hasOwnProperty("options")) { - var error = $root.google.protobuf.OneofOptions.verify(message.options); - if (error) - return "options." + error; - } - return null; - }; + /** + * Membership labels. + * @member {Object.} labels + * @memberof google.cloud.gkehub.v1beta1.Membership + * @instance + */ + Membership.prototype.labels = $util.emptyObject; - /** - * Creates an OneofDescriptorProto message from a plain object. Also converts values to their respective internal types. - * @function fromObject - * @memberof google.protobuf.OneofDescriptorProto - * @static - * @param {Object.} object Plain object - * @returns {google.protobuf.OneofDescriptorProto} OneofDescriptorProto - */ - OneofDescriptorProto.fromObject = function fromObject(object) { - if (object instanceof $root.google.protobuf.OneofDescriptorProto) - return object; - var message = new $root.google.protobuf.OneofDescriptorProto(); - if (object.name != null) - message.name = String(object.name); - if (object.options != null) { - if (typeof object.options !== "object") - throw TypeError(".google.protobuf.OneofDescriptorProto.options: object expected"); - message.options = $root.google.protobuf.OneofOptions.fromObject(object.options); - } - return message; - }; + /** + * Membership description. + * @member {string} description + * @memberof google.cloud.gkehub.v1beta1.Membership + * @instance + */ + Membership.prototype.description = ""; - /** - * Creates a plain object from an OneofDescriptorProto message. Also converts values to other types if specified. - * @function toObject - * @memberof google.protobuf.OneofDescriptorProto - * @static - * @param {google.protobuf.OneofDescriptorProto} message OneofDescriptorProto - * @param {$protobuf.IConversionOptions} [options] Conversion options - * @returns {Object.} Plain object - */ - OneofDescriptorProto.toObject = function toObject(message, options) { - if (!options) - options = {}; - var object = {}; - if (options.defaults) { - object.name = ""; - object.options = null; - } - if (message.name != null && message.hasOwnProperty("name")) - object.name = message.name; - if (message.options != null && message.hasOwnProperty("options")) - object.options = $root.google.protobuf.OneofOptions.toObject(message.options, options); - return object; - }; + /** + * Membership endpoint. + * @member {google.cloud.gkehub.v1beta1.IMembershipEndpoint|null|undefined} endpoint + * @memberof google.cloud.gkehub.v1beta1.Membership + * @instance + */ + Membership.prototype.endpoint = null; - /** - * Converts this OneofDescriptorProto to JSON. - * @function toJSON - * @memberof google.protobuf.OneofDescriptorProto - * @instance - * @returns {Object.} JSON object - */ - OneofDescriptorProto.prototype.toJSON = function toJSON() { - return this.constructor.toObject(this, $protobuf.util.toJSONOptions); - }; + /** + * Membership state. + * @member {google.cloud.gkehub.v1beta1.IMembershipState|null|undefined} state + * @memberof google.cloud.gkehub.v1beta1.Membership + * @instance + */ + Membership.prototype.state = null; - return OneofDescriptorProto; - })(); + /** + * Membership authority. + * @member {google.cloud.gkehub.v1beta1.IAuthority|null|undefined} authority + * @memberof google.cloud.gkehub.v1beta1.Membership + * @instance + */ + Membership.prototype.authority = null; - protobuf.EnumDescriptorProto = (function() { + /** + * Membership createTime. + * @member {google.protobuf.ITimestamp|null|undefined} createTime + * @memberof google.cloud.gkehub.v1beta1.Membership + * @instance + */ + Membership.prototype.createTime = null; - /** - * Properties of an EnumDescriptorProto. - * @memberof google.protobuf - * @interface IEnumDescriptorProto - * @property {string|null} [name] EnumDescriptorProto name - * @property {Array.|null} [value] EnumDescriptorProto value - * @property {google.protobuf.IEnumOptions|null} [options] EnumDescriptorProto options - * @property {Array.|null} [reservedRange] EnumDescriptorProto reservedRange - * @property {Array.|null} [reservedName] EnumDescriptorProto reservedName - */ + /** + * Membership updateTime. + * @member {google.protobuf.ITimestamp|null|undefined} updateTime + * @memberof google.cloud.gkehub.v1beta1.Membership + * @instance + */ + Membership.prototype.updateTime = null; - /** - * Constructs a new EnumDescriptorProto. - * @memberof google.protobuf - * @classdesc Represents an EnumDescriptorProto. - * @implements IEnumDescriptorProto - * @constructor - * @param {google.protobuf.IEnumDescriptorProto=} [properties] Properties to set - */ - function EnumDescriptorProto(properties) { - this.value = []; - this.reservedRange = []; - this.reservedName = []; - 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]]; - } + /** + * Membership deleteTime. + * @member {google.protobuf.ITimestamp|null|undefined} deleteTime + * @memberof google.cloud.gkehub.v1beta1.Membership + * @instance + */ + Membership.prototype.deleteTime = null; + + /** + * Membership externalId. + * @member {string} externalId + * @memberof google.cloud.gkehub.v1beta1.Membership + * @instance + */ + Membership.prototype.externalId = ""; + + /** + * Membership lastConnectionTime. + * @member {google.protobuf.ITimestamp|null|undefined} lastConnectionTime + * @memberof google.cloud.gkehub.v1beta1.Membership + * @instance + */ + Membership.prototype.lastConnectionTime = null; + + /** + * Membership uniqueId. + * @member {string} uniqueId + * @memberof google.cloud.gkehub.v1beta1.Membership + * @instance + */ + Membership.prototype.uniqueId = ""; - /** - * EnumDescriptorProto name. - * @member {string} name - * @memberof google.protobuf.EnumDescriptorProto - * @instance - */ - EnumDescriptorProto.prototype.name = ""; + /** + * Membership infrastructureType. + * @member {google.cloud.gkehub.v1beta1.Membership.InfrastructureType} infrastructureType + * @memberof google.cloud.gkehub.v1beta1.Membership + * @instance + */ + Membership.prototype.infrastructureType = 0; - /** - * EnumDescriptorProto value. - * @member {Array.} value - * @memberof google.protobuf.EnumDescriptorProto - * @instance - */ - EnumDescriptorProto.prototype.value = $util.emptyArray; + // OneOf field names bound to virtual getters and setters + var $oneOfFields; - /** - * EnumDescriptorProto options. - * @member {google.protobuf.IEnumOptions|null|undefined} options - * @memberof google.protobuf.EnumDescriptorProto - * @instance - */ - EnumDescriptorProto.prototype.options = null; + /** + * Membership type. + * @member {"endpoint"|undefined} type + * @memberof google.cloud.gkehub.v1beta1.Membership + * @instance + */ + Object.defineProperty(Membership.prototype, "type", { + get: $util.oneOfGetter($oneOfFields = ["endpoint"]), + set: $util.oneOfSetter($oneOfFields) + }); - /** - * EnumDescriptorProto reservedRange. - * @member {Array.} reservedRange - * @memberof google.protobuf.EnumDescriptorProto - * @instance - */ - EnumDescriptorProto.prototype.reservedRange = $util.emptyArray; + /** + * Creates a new Membership instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.v1beta1.Membership + * @static + * @param {google.cloud.gkehub.v1beta1.IMembership=} [properties] Properties to set + * @returns {google.cloud.gkehub.v1beta1.Membership} Membership instance + */ + Membership.create = function create(properties) { + return new Membership(properties); + }; - /** - * EnumDescriptorProto reservedName. - * @member {Array.} reservedName - * @memberof google.protobuf.EnumDescriptorProto - * @instance - */ - EnumDescriptorProto.prototype.reservedName = $util.emptyArray; + /** + * Encodes the specified Membership message. Does not implicitly {@link google.cloud.gkehub.v1beta1.Membership.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.v1beta1.Membership + * @static + * @param {google.cloud.gkehub.v1beta1.IMembership} message Membership message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + Membership.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.name != null && Object.hasOwnProperty.call(message, "name")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.name); + if (message.labels != null && Object.hasOwnProperty.call(message, "labels")) + for (var keys = Object.keys(message.labels), i = 0; i < keys.length; ++i) + writer.uint32(/* id 2, wireType 2 =*/18).fork().uint32(/* id 1, wireType 2 =*/10).string(keys[i]).uint32(/* id 2, wireType 2 =*/18).string(message.labels[keys[i]]).ldelim(); + if (message.description != null && Object.hasOwnProperty.call(message, "description")) + writer.uint32(/* id 3, wireType 2 =*/26).string(message.description); + if (message.endpoint != null && Object.hasOwnProperty.call(message, "endpoint")) + $root.google.cloud.gkehub.v1beta1.MembershipEndpoint.encode(message.endpoint, writer.uint32(/* id 4, wireType 2 =*/34).fork()).ldelim(); + if (message.state != null && Object.hasOwnProperty.call(message, "state")) + $root.google.cloud.gkehub.v1beta1.MembershipState.encode(message.state, writer.uint32(/* id 5, wireType 2 =*/42).fork()).ldelim(); + if (message.createTime != null && Object.hasOwnProperty.call(message, "createTime")) + $root.google.protobuf.Timestamp.encode(message.createTime, writer.uint32(/* id 6, wireType 2 =*/50).fork()).ldelim(); + if (message.updateTime != null && Object.hasOwnProperty.call(message, "updateTime")) + $root.google.protobuf.Timestamp.encode(message.updateTime, writer.uint32(/* id 7, wireType 2 =*/58).fork()).ldelim(); + if (message.deleteTime != null && Object.hasOwnProperty.call(message, "deleteTime")) + $root.google.protobuf.Timestamp.encode(message.deleteTime, writer.uint32(/* id 8, wireType 2 =*/66).fork()).ldelim(); + if (message.authority != null && Object.hasOwnProperty.call(message, "authority")) + $root.google.cloud.gkehub.v1beta1.Authority.encode(message.authority, writer.uint32(/* id 9, wireType 2 =*/74).fork()).ldelim(); + if (message.externalId != null && Object.hasOwnProperty.call(message, "externalId")) + writer.uint32(/* id 10, wireType 2 =*/82).string(message.externalId); + if (message.lastConnectionTime != null && Object.hasOwnProperty.call(message, "lastConnectionTime")) + $root.google.protobuf.Timestamp.encode(message.lastConnectionTime, writer.uint32(/* id 11, wireType 2 =*/90).fork()).ldelim(); + if (message.uniqueId != null && Object.hasOwnProperty.call(message, "uniqueId")) + writer.uint32(/* id 12, wireType 2 =*/98).string(message.uniqueId); + if (message.infrastructureType != null && Object.hasOwnProperty.call(message, "infrastructureType")) + writer.uint32(/* id 13, wireType 0 =*/104).int32(message.infrastructureType); + return writer; + }; - /** - * Creates a new EnumDescriptorProto instance using the specified properties. - * @function create - * @memberof google.protobuf.EnumDescriptorProto - * @static - * @param {google.protobuf.IEnumDescriptorProto=} [properties] Properties to set - * @returns {google.protobuf.EnumDescriptorProto} EnumDescriptorProto instance - */ - EnumDescriptorProto.create = function create(properties) { - return new EnumDescriptorProto(properties); - }; + /** + * Encodes the specified Membership message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta1.Membership.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.v1beta1.Membership + * @static + * @param {google.cloud.gkehub.v1beta1.IMembership} message Membership message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + Membership.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; - /** - * Encodes the specified EnumDescriptorProto message. Does not implicitly {@link google.protobuf.EnumDescriptorProto.verify|verify} messages. - * @function encode - * @memberof google.protobuf.EnumDescriptorProto - * @static - * @param {google.protobuf.IEnumDescriptorProto} message EnumDescriptorProto message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - EnumDescriptorProto.encode = function encode(message, writer) { - if (!writer) - writer = $Writer.create(); - if (message.name != null && Object.hasOwnProperty.call(message, "name")) - writer.uint32(/* id 1, wireType 2 =*/10).string(message.name); - if (message.value != null && message.value.length) - for (var i = 0; i < message.value.length; ++i) - $root.google.protobuf.EnumValueDescriptorProto.encode(message.value[i], writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim(); - if (message.options != null && Object.hasOwnProperty.call(message, "options")) - $root.google.protobuf.EnumOptions.encode(message.options, writer.uint32(/* id 3, wireType 2 =*/26).fork()).ldelim(); - if (message.reservedRange != null && message.reservedRange.length) - for (var i = 0; i < message.reservedRange.length; ++i) - $root.google.protobuf.EnumDescriptorProto.EnumReservedRange.encode(message.reservedRange[i], writer.uint32(/* id 4, wireType 2 =*/34).fork()).ldelim(); - if (message.reservedName != null && message.reservedName.length) - for (var i = 0; i < message.reservedName.length; ++i) - writer.uint32(/* id 5, wireType 2 =*/42).string(message.reservedName[i]); - return writer; - }; + /** + * Decodes a Membership message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.v1beta1.Membership + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.v1beta1.Membership} Membership + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + Membership.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.v1beta1.Membership(), key, value; + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.name = reader.string(); + break; + case 2: + 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 3: + message.description = reader.string(); + break; + case 4: + message.endpoint = $root.google.cloud.gkehub.v1beta1.MembershipEndpoint.decode(reader, reader.uint32()); + break; + case 5: + message.state = $root.google.cloud.gkehub.v1beta1.MembershipState.decode(reader, reader.uint32()); + break; + case 9: + message.authority = $root.google.cloud.gkehub.v1beta1.Authority.decode(reader, reader.uint32()); + break; + case 6: + message.createTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + break; + case 7: + message.updateTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + break; + case 8: + message.deleteTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + break; + case 10: + message.externalId = reader.string(); + break; + case 11: + message.lastConnectionTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + break; + case 12: + message.uniqueId = reader.string(); + break; + case 13: + message.infrastructureType = reader.int32(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a Membership message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.v1beta1.Membership + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.v1beta1.Membership} Membership + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + Membership.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; - /** - * Encodes the specified EnumDescriptorProto message, length delimited. Does not implicitly {@link google.protobuf.EnumDescriptorProto.verify|verify} messages. - * @function encodeDelimited - * @memberof google.protobuf.EnumDescriptorProto - * @static - * @param {google.protobuf.IEnumDescriptorProto} message EnumDescriptorProto message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - EnumDescriptorProto.encodeDelimited = function encodeDelimited(message, writer) { - return this.encode(message, writer).ldelim(); - }; + /** + * Verifies a Membership message. + * @function verify + * @memberof google.cloud.gkehub.v1beta1.Membership + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + Membership.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + var properties = {}; + if (message.name != null && message.hasOwnProperty("name")) + if (!$util.isString(message.name)) + return "name: 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.description != null && message.hasOwnProperty("description")) + if (!$util.isString(message.description)) + return "description: string expected"; + if (message.endpoint != null && message.hasOwnProperty("endpoint")) { + properties.type = 1; + { + var error = $root.google.cloud.gkehub.v1beta1.MembershipEndpoint.verify(message.endpoint); + if (error) + return "endpoint." + error; + } + } + if (message.state != null && message.hasOwnProperty("state")) { + var error = $root.google.cloud.gkehub.v1beta1.MembershipState.verify(message.state); + if (error) + return "state." + error; + } + if (message.authority != null && message.hasOwnProperty("authority")) { + var error = $root.google.cloud.gkehub.v1beta1.Authority.verify(message.authority); + if (error) + return "authority." + error; + } + if (message.createTime != null && message.hasOwnProperty("createTime")) { + var error = $root.google.protobuf.Timestamp.verify(message.createTime); + if (error) + return "createTime." + error; + } + if (message.updateTime != null && message.hasOwnProperty("updateTime")) { + var error = $root.google.protobuf.Timestamp.verify(message.updateTime); + if (error) + return "updateTime." + error; + } + if (message.deleteTime != null && message.hasOwnProperty("deleteTime")) { + var error = $root.google.protobuf.Timestamp.verify(message.deleteTime); + if (error) + return "deleteTime." + error; + } + if (message.externalId != null && message.hasOwnProperty("externalId")) + if (!$util.isString(message.externalId)) + return "externalId: string expected"; + if (message.lastConnectionTime != null && message.hasOwnProperty("lastConnectionTime")) { + var error = $root.google.protobuf.Timestamp.verify(message.lastConnectionTime); + if (error) + return "lastConnectionTime." + error; + } + if (message.uniqueId != null && message.hasOwnProperty("uniqueId")) + if (!$util.isString(message.uniqueId)) + return "uniqueId: string expected"; + if (message.infrastructureType != null && message.hasOwnProperty("infrastructureType")) + switch (message.infrastructureType) { + default: + return "infrastructureType: enum value expected"; + case 0: + case 1: + case 2: + break; + } + return null; + }; - /** - * Decodes an EnumDescriptorProto message from the specified reader or buffer. - * @function decode - * @memberof google.protobuf.EnumDescriptorProto - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @param {number} [length] Message length if known beforehand - * @returns {google.protobuf.EnumDescriptorProto} EnumDescriptorProto - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - EnumDescriptorProto.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.protobuf.EnumDescriptorProto(); - while (reader.pos < end) { - var tag = reader.uint32(); - switch (tag >>> 3) { - case 1: - message.name = reader.string(); - break; - case 2: - if (!(message.value && message.value.length)) - message.value = []; - message.value.push($root.google.protobuf.EnumValueDescriptorProto.decode(reader, reader.uint32())); - break; - case 3: - message.options = $root.google.protobuf.EnumOptions.decode(reader, reader.uint32()); - break; - case 4: - if (!(message.reservedRange && message.reservedRange.length)) - message.reservedRange = []; - message.reservedRange.push($root.google.protobuf.EnumDescriptorProto.EnumReservedRange.decode(reader, reader.uint32())); - break; - case 5: - if (!(message.reservedName && message.reservedName.length)) - message.reservedName = []; - message.reservedName.push(reader.string()); - break; - default: - reader.skipType(tag & 7); - break; - } - } - return message; - }; + /** + * Creates a Membership message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.v1beta1.Membership + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.v1beta1.Membership} Membership + */ + Membership.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.v1beta1.Membership) + return object; + var message = new $root.google.cloud.gkehub.v1beta1.Membership(); + if (object.name != null) + message.name = String(object.name); + if (object.labels) { + if (typeof object.labels !== "object") + throw TypeError(".google.cloud.gkehub.v1beta1.Membership.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.description != null) + message.description = String(object.description); + if (object.endpoint != null) { + if (typeof object.endpoint !== "object") + throw TypeError(".google.cloud.gkehub.v1beta1.Membership.endpoint: object expected"); + message.endpoint = $root.google.cloud.gkehub.v1beta1.MembershipEndpoint.fromObject(object.endpoint); + } + if (object.state != null) { + if (typeof object.state !== "object") + throw TypeError(".google.cloud.gkehub.v1beta1.Membership.state: object expected"); + message.state = $root.google.cloud.gkehub.v1beta1.MembershipState.fromObject(object.state); + } + if (object.authority != null) { + if (typeof object.authority !== "object") + throw TypeError(".google.cloud.gkehub.v1beta1.Membership.authority: object expected"); + message.authority = $root.google.cloud.gkehub.v1beta1.Authority.fromObject(object.authority); + } + if (object.createTime != null) { + if (typeof object.createTime !== "object") + throw TypeError(".google.cloud.gkehub.v1beta1.Membership.createTime: object expected"); + message.createTime = $root.google.protobuf.Timestamp.fromObject(object.createTime); + } + if (object.updateTime != null) { + if (typeof object.updateTime !== "object") + throw TypeError(".google.cloud.gkehub.v1beta1.Membership.updateTime: object expected"); + message.updateTime = $root.google.protobuf.Timestamp.fromObject(object.updateTime); + } + if (object.deleteTime != null) { + if (typeof object.deleteTime !== "object") + throw TypeError(".google.cloud.gkehub.v1beta1.Membership.deleteTime: object expected"); + message.deleteTime = $root.google.protobuf.Timestamp.fromObject(object.deleteTime); + } + if (object.externalId != null) + message.externalId = String(object.externalId); + if (object.lastConnectionTime != null) { + if (typeof object.lastConnectionTime !== "object") + throw TypeError(".google.cloud.gkehub.v1beta1.Membership.lastConnectionTime: object expected"); + message.lastConnectionTime = $root.google.protobuf.Timestamp.fromObject(object.lastConnectionTime); + } + if (object.uniqueId != null) + message.uniqueId = String(object.uniqueId); + switch (object.infrastructureType) { + case "INFRASTRUCTURE_TYPE_UNSPECIFIED": + case 0: + message.infrastructureType = 0; + break; + case "ON_PREM": + case 1: + message.infrastructureType = 1; + break; + case "MULTI_CLOUD": + case 2: + message.infrastructureType = 2; + break; + } + return message; + }; + + /** + * Creates a plain object from a Membership message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.v1beta1.Membership + * @static + * @param {google.cloud.gkehub.v1beta1.Membership} message Membership + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + Membership.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.objects || options.defaults) + object.labels = {}; + if (options.defaults) { + object.name = ""; + object.description = ""; + object.state = null; + object.createTime = null; + object.updateTime = null; + object.deleteTime = null; + object.authority = null; + object.externalId = ""; + object.lastConnectionTime = null; + object.uniqueId = ""; + object.infrastructureType = options.enums === String ? "INFRASTRUCTURE_TYPE_UNSPECIFIED" : 0; + } + if (message.name != null && message.hasOwnProperty("name")) + object.name = message.name; + 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]]; + } + if (message.description != null && message.hasOwnProperty("description")) + object.description = message.description; + if (message.endpoint != null && message.hasOwnProperty("endpoint")) { + object.endpoint = $root.google.cloud.gkehub.v1beta1.MembershipEndpoint.toObject(message.endpoint, options); + if (options.oneofs) + object.type = "endpoint"; + } + if (message.state != null && message.hasOwnProperty("state")) + object.state = $root.google.cloud.gkehub.v1beta1.MembershipState.toObject(message.state, options); + if (message.createTime != null && message.hasOwnProperty("createTime")) + object.createTime = $root.google.protobuf.Timestamp.toObject(message.createTime, options); + if (message.updateTime != null && message.hasOwnProperty("updateTime")) + object.updateTime = $root.google.protobuf.Timestamp.toObject(message.updateTime, options); + if (message.deleteTime != null && message.hasOwnProperty("deleteTime")) + object.deleteTime = $root.google.protobuf.Timestamp.toObject(message.deleteTime, options); + if (message.authority != null && message.hasOwnProperty("authority")) + object.authority = $root.google.cloud.gkehub.v1beta1.Authority.toObject(message.authority, options); + if (message.externalId != null && message.hasOwnProperty("externalId")) + object.externalId = message.externalId; + if (message.lastConnectionTime != null && message.hasOwnProperty("lastConnectionTime")) + object.lastConnectionTime = $root.google.protobuf.Timestamp.toObject(message.lastConnectionTime, options); + if (message.uniqueId != null && message.hasOwnProperty("uniqueId")) + object.uniqueId = message.uniqueId; + if (message.infrastructureType != null && message.hasOwnProperty("infrastructureType")) + object.infrastructureType = options.enums === String ? $root.google.cloud.gkehub.v1beta1.Membership.InfrastructureType[message.infrastructureType] : message.infrastructureType; + return object; + }; - /** - * Decodes an EnumDescriptorProto message from the specified reader or buffer, length delimited. - * @function decodeDelimited - * @memberof google.protobuf.EnumDescriptorProto - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {google.protobuf.EnumDescriptorProto} EnumDescriptorProto - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - EnumDescriptorProto.decodeDelimited = function decodeDelimited(reader) { - if (!(reader instanceof $Reader)) - reader = new $Reader(reader); - return this.decode(reader, reader.uint32()); - }; + /** + * Converts this Membership to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.v1beta1.Membership + * @instance + * @returns {Object.} JSON object + */ + Membership.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; - /** - * Verifies an EnumDescriptorProto message. - * @function verify - * @memberof google.protobuf.EnumDescriptorProto - * @static - * @param {Object.} message Plain object to verify - * @returns {string|null} `null` if valid, otherwise the reason why it is not - */ - EnumDescriptorProto.verify = function verify(message) { - if (typeof message !== "object" || message === null) - return "object expected"; - if (message.name != null && message.hasOwnProperty("name")) - if (!$util.isString(message.name)) - return "name: string expected"; - if (message.value != null && message.hasOwnProperty("value")) { - if (!Array.isArray(message.value)) - return "value: array expected"; - for (var i = 0; i < message.value.length; ++i) { - var error = $root.google.protobuf.EnumValueDescriptorProto.verify(message.value[i]); - if (error) - return "value." + error; - } - } - if (message.options != null && message.hasOwnProperty("options")) { - var error = $root.google.protobuf.EnumOptions.verify(message.options); - if (error) - return "options." + error; - } - if (message.reservedRange != null && message.hasOwnProperty("reservedRange")) { - if (!Array.isArray(message.reservedRange)) - return "reservedRange: array expected"; - for (var i = 0; i < message.reservedRange.length; ++i) { - var error = $root.google.protobuf.EnumDescriptorProto.EnumReservedRange.verify(message.reservedRange[i]); - if (error) - return "reservedRange." + error; - } - } - if (message.reservedName != null && message.hasOwnProperty("reservedName")) { - if (!Array.isArray(message.reservedName)) - return "reservedName: array expected"; - for (var i = 0; i < message.reservedName.length; ++i) - if (!$util.isString(message.reservedName[i])) - return "reservedName: string[] expected"; - } - return null; - }; + /** + * InfrastructureType enum. + * @name google.cloud.gkehub.v1beta1.Membership.InfrastructureType + * @enum {number} + * @property {number} INFRASTRUCTURE_TYPE_UNSPECIFIED=0 INFRASTRUCTURE_TYPE_UNSPECIFIED value + * @property {number} ON_PREM=1 ON_PREM value + * @property {number} MULTI_CLOUD=2 MULTI_CLOUD value + */ + Membership.InfrastructureType = (function() { + var valuesById = {}, values = Object.create(valuesById); + values[valuesById[0] = "INFRASTRUCTURE_TYPE_UNSPECIFIED"] = 0; + values[valuesById[1] = "ON_PREM"] = 1; + values[valuesById[2] = "MULTI_CLOUD"] = 2; + return values; + })(); - /** - * Creates an EnumDescriptorProto message from a plain object. Also converts values to their respective internal types. - * @function fromObject - * @memberof google.protobuf.EnumDescriptorProto - * @static - * @param {Object.} object Plain object - * @returns {google.protobuf.EnumDescriptorProto} EnumDescriptorProto - */ - EnumDescriptorProto.fromObject = function fromObject(object) { - if (object instanceof $root.google.protobuf.EnumDescriptorProto) - return object; - var message = new $root.google.protobuf.EnumDescriptorProto(); - if (object.name != null) - message.name = String(object.name); - if (object.value) { - if (!Array.isArray(object.value)) - throw TypeError(".google.protobuf.EnumDescriptorProto.value: array expected"); - message.value = []; - for (var i = 0; i < object.value.length; ++i) { - if (typeof object.value[i] !== "object") - throw TypeError(".google.protobuf.EnumDescriptorProto.value: object expected"); - message.value[i] = $root.google.protobuf.EnumValueDescriptorProto.fromObject(object.value[i]); - } - } - if (object.options != null) { - if (typeof object.options !== "object") - throw TypeError(".google.protobuf.EnumDescriptorProto.options: object expected"); - message.options = $root.google.protobuf.EnumOptions.fromObject(object.options); - } - if (object.reservedRange) { - if (!Array.isArray(object.reservedRange)) - throw TypeError(".google.protobuf.EnumDescriptorProto.reservedRange: array expected"); - message.reservedRange = []; - for (var i = 0; i < object.reservedRange.length; ++i) { - if (typeof object.reservedRange[i] !== "object") - throw TypeError(".google.protobuf.EnumDescriptorProto.reservedRange: object expected"); - message.reservedRange[i] = $root.google.protobuf.EnumDescriptorProto.EnumReservedRange.fromObject(object.reservedRange[i]); - } - } - if (object.reservedName) { - if (!Array.isArray(object.reservedName)) - throw TypeError(".google.protobuf.EnumDescriptorProto.reservedName: array expected"); - message.reservedName = []; - for (var i = 0; i < object.reservedName.length; ++i) - message.reservedName[i] = String(object.reservedName[i]); - } - return message; - }; + return Membership; + })(); - /** - * Creates a plain object from an EnumDescriptorProto message. Also converts values to other types if specified. - * @function toObject - * @memberof google.protobuf.EnumDescriptorProto - * @static - * @param {google.protobuf.EnumDescriptorProto} message EnumDescriptorProto - * @param {$protobuf.IConversionOptions} [options] Conversion options - * @returns {Object.} Plain object - */ - EnumDescriptorProto.toObject = function toObject(message, options) { - if (!options) - options = {}; - var object = {}; - if (options.arrays || options.defaults) { - object.value = []; - object.reservedRange = []; - object.reservedName = []; - } - if (options.defaults) { - object.name = ""; - object.options = null; - } - if (message.name != null && message.hasOwnProperty("name")) - object.name = message.name; - if (message.value && message.value.length) { - object.value = []; - for (var j = 0; j < message.value.length; ++j) - object.value[j] = $root.google.protobuf.EnumValueDescriptorProto.toObject(message.value[j], options); - } - if (message.options != null && message.hasOwnProperty("options")) - object.options = $root.google.protobuf.EnumOptions.toObject(message.options, options); - if (message.reservedRange && message.reservedRange.length) { - object.reservedRange = []; - for (var j = 0; j < message.reservedRange.length; ++j) - object.reservedRange[j] = $root.google.protobuf.EnumDescriptorProto.EnumReservedRange.toObject(message.reservedRange[j], options); - } - if (message.reservedName && message.reservedName.length) { - object.reservedName = []; - for (var j = 0; j < message.reservedName.length; ++j) - object.reservedName[j] = message.reservedName[j]; - } - return object; - }; + v1beta1.MembershipEndpoint = (function() { - /** - * Converts this EnumDescriptorProto to JSON. - * @function toJSON - * @memberof google.protobuf.EnumDescriptorProto - * @instance - * @returns {Object.} JSON object - */ - EnumDescriptorProto.prototype.toJSON = function toJSON() { - return this.constructor.toObject(this, $protobuf.util.toJSONOptions); - }; + /** + * Properties of a MembershipEndpoint. + * @memberof google.cloud.gkehub.v1beta1 + * @interface IMembershipEndpoint + * @property {google.cloud.gkehub.v1beta1.IGkeCluster|null} [gkeCluster] MembershipEndpoint gkeCluster + * @property {google.cloud.gkehub.v1beta1.IKubernetesMetadata|null} [kubernetesMetadata] MembershipEndpoint kubernetesMetadata + * @property {google.cloud.gkehub.v1beta1.IKubernetesResource|null} [kubernetesResource] MembershipEndpoint kubernetesResource + */ - EnumDescriptorProto.EnumReservedRange = (function() { + /** + * Constructs a new MembershipEndpoint. + * @memberof google.cloud.gkehub.v1beta1 + * @classdesc Represents a MembershipEndpoint. + * @implements IMembershipEndpoint + * @constructor + * @param {google.cloud.gkehub.v1beta1.IMembershipEndpoint=} [properties] Properties to set + */ + function MembershipEndpoint(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]]; + } - /** - * Properties of an EnumReservedRange. - * @memberof google.protobuf.EnumDescriptorProto - * @interface IEnumReservedRange - * @property {number|null} [start] EnumReservedRange start - * @property {number|null} [end] EnumReservedRange end - */ + /** + * MembershipEndpoint gkeCluster. + * @member {google.cloud.gkehub.v1beta1.IGkeCluster|null|undefined} gkeCluster + * @memberof google.cloud.gkehub.v1beta1.MembershipEndpoint + * @instance + */ + MembershipEndpoint.prototype.gkeCluster = null; + + /** + * MembershipEndpoint kubernetesMetadata. + * @member {google.cloud.gkehub.v1beta1.IKubernetesMetadata|null|undefined} kubernetesMetadata + * @memberof google.cloud.gkehub.v1beta1.MembershipEndpoint + * @instance + */ + MembershipEndpoint.prototype.kubernetesMetadata = null; - /** - * Constructs a new EnumReservedRange. - * @memberof google.protobuf.EnumDescriptorProto - * @classdesc Represents an EnumReservedRange. - * @implements IEnumReservedRange - * @constructor - * @param {google.protobuf.EnumDescriptorProto.IEnumReservedRange=} [properties] Properties to set - */ - function EnumReservedRange(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]]; - } + /** + * MembershipEndpoint kubernetesResource. + * @member {google.cloud.gkehub.v1beta1.IKubernetesResource|null|undefined} kubernetesResource + * @memberof google.cloud.gkehub.v1beta1.MembershipEndpoint + * @instance + */ + MembershipEndpoint.prototype.kubernetesResource = null; - /** - * EnumReservedRange start. - * @member {number} start - * @memberof google.protobuf.EnumDescriptorProto.EnumReservedRange - * @instance - */ - EnumReservedRange.prototype.start = 0; + /** + * Creates a new MembershipEndpoint instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.v1beta1.MembershipEndpoint + * @static + * @param {google.cloud.gkehub.v1beta1.IMembershipEndpoint=} [properties] Properties to set + * @returns {google.cloud.gkehub.v1beta1.MembershipEndpoint} MembershipEndpoint instance + */ + MembershipEndpoint.create = function create(properties) { + return new MembershipEndpoint(properties); + }; - /** - * EnumReservedRange end. - * @member {number} end - * @memberof google.protobuf.EnumDescriptorProto.EnumReservedRange - * @instance - */ - EnumReservedRange.prototype.end = 0; + /** + * Encodes the specified MembershipEndpoint message. Does not implicitly {@link google.cloud.gkehub.v1beta1.MembershipEndpoint.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.v1beta1.MembershipEndpoint + * @static + * @param {google.cloud.gkehub.v1beta1.IMembershipEndpoint} message MembershipEndpoint message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + MembershipEndpoint.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.gkeCluster != null && Object.hasOwnProperty.call(message, "gkeCluster")) + $root.google.cloud.gkehub.v1beta1.GkeCluster.encode(message.gkeCluster, writer.uint32(/* id 4, wireType 2 =*/34).fork()).ldelim(); + if (message.kubernetesMetadata != null && Object.hasOwnProperty.call(message, "kubernetesMetadata")) + $root.google.cloud.gkehub.v1beta1.KubernetesMetadata.encode(message.kubernetesMetadata, writer.uint32(/* id 5, wireType 2 =*/42).fork()).ldelim(); + if (message.kubernetesResource != null && Object.hasOwnProperty.call(message, "kubernetesResource")) + $root.google.cloud.gkehub.v1beta1.KubernetesResource.encode(message.kubernetesResource, writer.uint32(/* id 6, wireType 2 =*/50).fork()).ldelim(); + return writer; + }; - /** - * Creates a new EnumReservedRange instance using the specified properties. - * @function create - * @memberof google.protobuf.EnumDescriptorProto.EnumReservedRange - * @static - * @param {google.protobuf.EnumDescriptorProto.IEnumReservedRange=} [properties] Properties to set - * @returns {google.protobuf.EnumDescriptorProto.EnumReservedRange} EnumReservedRange instance - */ - EnumReservedRange.create = function create(properties) { - return new EnumReservedRange(properties); - }; + /** + * Encodes the specified MembershipEndpoint message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta1.MembershipEndpoint.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.v1beta1.MembershipEndpoint + * @static + * @param {google.cloud.gkehub.v1beta1.IMembershipEndpoint} message MembershipEndpoint message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + MembershipEndpoint.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; - /** - * Encodes the specified EnumReservedRange message. Does not implicitly {@link google.protobuf.EnumDescriptorProto.EnumReservedRange.verify|verify} messages. - * @function encode - * @memberof google.protobuf.EnumDescriptorProto.EnumReservedRange - * @static - * @param {google.protobuf.EnumDescriptorProto.IEnumReservedRange} message EnumReservedRange message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - EnumReservedRange.encode = function encode(message, writer) { - if (!writer) - writer = $Writer.create(); - if (message.start != null && Object.hasOwnProperty.call(message, "start")) - writer.uint32(/* id 1, wireType 0 =*/8).int32(message.start); - if (message.end != null && Object.hasOwnProperty.call(message, "end")) - writer.uint32(/* id 2, wireType 0 =*/16).int32(message.end); - return writer; - }; + /** + * Decodes a MembershipEndpoint message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.v1beta1.MembershipEndpoint + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.v1beta1.MembershipEndpoint} MembershipEndpoint + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + MembershipEndpoint.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.v1beta1.MembershipEndpoint(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 4: + message.gkeCluster = $root.google.cloud.gkehub.v1beta1.GkeCluster.decode(reader, reader.uint32()); + break; + case 5: + message.kubernetesMetadata = $root.google.cloud.gkehub.v1beta1.KubernetesMetadata.decode(reader, reader.uint32()); + break; + case 6: + message.kubernetesResource = $root.google.cloud.gkehub.v1beta1.KubernetesResource.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; - /** - * Encodes the specified EnumReservedRange message, length delimited. Does not implicitly {@link google.protobuf.EnumDescriptorProto.EnumReservedRange.verify|verify} messages. - * @function encodeDelimited - * @memberof google.protobuf.EnumDescriptorProto.EnumReservedRange - * @static - * @param {google.protobuf.EnumDescriptorProto.IEnumReservedRange} message EnumReservedRange message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - EnumReservedRange.encodeDelimited = function encodeDelimited(message, writer) { - return this.encode(message, writer).ldelim(); - }; + /** + * Decodes a MembershipEndpoint message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.v1beta1.MembershipEndpoint + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.v1beta1.MembershipEndpoint} MembershipEndpoint + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + MembershipEndpoint.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; - /** - * Decodes an EnumReservedRange message from the specified reader or buffer. - * @function decode - * @memberof google.protobuf.EnumDescriptorProto.EnumReservedRange - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @param {number} [length] Message length if known beforehand - * @returns {google.protobuf.EnumDescriptorProto.EnumReservedRange} EnumReservedRange - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - EnumReservedRange.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.protobuf.EnumDescriptorProto.EnumReservedRange(); - while (reader.pos < end) { - var tag = reader.uint32(); - switch (tag >>> 3) { - case 1: - message.start = reader.int32(); - break; - case 2: - message.end = reader.int32(); - break; - default: - reader.skipType(tag & 7); - break; + /** + * Verifies a MembershipEndpoint message. + * @function verify + * @memberof google.cloud.gkehub.v1beta1.MembershipEndpoint + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + MembershipEndpoint.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.gkeCluster != null && message.hasOwnProperty("gkeCluster")) { + var error = $root.google.cloud.gkehub.v1beta1.GkeCluster.verify(message.gkeCluster); + if (error) + return "gkeCluster." + error; } - } - return message; - }; + if (message.kubernetesMetadata != null && message.hasOwnProperty("kubernetesMetadata")) { + var error = $root.google.cloud.gkehub.v1beta1.KubernetesMetadata.verify(message.kubernetesMetadata); + if (error) + return "kubernetesMetadata." + error; + } + if (message.kubernetesResource != null && message.hasOwnProperty("kubernetesResource")) { + var error = $root.google.cloud.gkehub.v1beta1.KubernetesResource.verify(message.kubernetesResource); + if (error) + return "kubernetesResource." + error; + } + return null; + }; + + /** + * Creates a MembershipEndpoint message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.v1beta1.MembershipEndpoint + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.v1beta1.MembershipEndpoint} MembershipEndpoint + */ + MembershipEndpoint.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.v1beta1.MembershipEndpoint) + return object; + var message = new $root.google.cloud.gkehub.v1beta1.MembershipEndpoint(); + if (object.gkeCluster != null) { + if (typeof object.gkeCluster !== "object") + throw TypeError(".google.cloud.gkehub.v1beta1.MembershipEndpoint.gkeCluster: object expected"); + message.gkeCluster = $root.google.cloud.gkehub.v1beta1.GkeCluster.fromObject(object.gkeCluster); + } + if (object.kubernetesMetadata != null) { + if (typeof object.kubernetesMetadata !== "object") + throw TypeError(".google.cloud.gkehub.v1beta1.MembershipEndpoint.kubernetesMetadata: object expected"); + message.kubernetesMetadata = $root.google.cloud.gkehub.v1beta1.KubernetesMetadata.fromObject(object.kubernetesMetadata); + } + if (object.kubernetesResource != null) { + if (typeof object.kubernetesResource !== "object") + throw TypeError(".google.cloud.gkehub.v1beta1.MembershipEndpoint.kubernetesResource: object expected"); + message.kubernetesResource = $root.google.cloud.gkehub.v1beta1.KubernetesResource.fromObject(object.kubernetesResource); + } + return message; + }; - /** - * Decodes an EnumReservedRange message from the specified reader or buffer, length delimited. - * @function decodeDelimited - * @memberof google.protobuf.EnumDescriptorProto.EnumReservedRange - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {google.protobuf.EnumDescriptorProto.EnumReservedRange} EnumReservedRange - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - EnumReservedRange.decodeDelimited = function decodeDelimited(reader) { - if (!(reader instanceof $Reader)) - reader = new $Reader(reader); - return this.decode(reader, reader.uint32()); - }; + /** + * Creates a plain object from a MembershipEndpoint message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.v1beta1.MembershipEndpoint + * @static + * @param {google.cloud.gkehub.v1beta1.MembershipEndpoint} message MembershipEndpoint + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + MembershipEndpoint.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.gkeCluster = null; + object.kubernetesMetadata = null; + object.kubernetesResource = null; + } + if (message.gkeCluster != null && message.hasOwnProperty("gkeCluster")) + object.gkeCluster = $root.google.cloud.gkehub.v1beta1.GkeCluster.toObject(message.gkeCluster, options); + if (message.kubernetesMetadata != null && message.hasOwnProperty("kubernetesMetadata")) + object.kubernetesMetadata = $root.google.cloud.gkehub.v1beta1.KubernetesMetadata.toObject(message.kubernetesMetadata, options); + if (message.kubernetesResource != null && message.hasOwnProperty("kubernetesResource")) + object.kubernetesResource = $root.google.cloud.gkehub.v1beta1.KubernetesResource.toObject(message.kubernetesResource, options); + return object; + }; - /** - * Verifies an EnumReservedRange message. - * @function verify - * @memberof google.protobuf.EnumDescriptorProto.EnumReservedRange - * @static - * @param {Object.} message Plain object to verify - * @returns {string|null} `null` if valid, otherwise the reason why it is not - */ - EnumReservedRange.verify = function verify(message) { - if (typeof message !== "object" || message === null) - return "object expected"; - if (message.start != null && message.hasOwnProperty("start")) - if (!$util.isInteger(message.start)) - return "start: integer expected"; - if (message.end != null && message.hasOwnProperty("end")) - if (!$util.isInteger(message.end)) - return "end: integer expected"; - return null; - }; + /** + * Converts this MembershipEndpoint to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.v1beta1.MembershipEndpoint + * @instance + * @returns {Object.} JSON object + */ + MembershipEndpoint.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; - /** - * Creates an EnumReservedRange message from a plain object. Also converts values to their respective internal types. - * @function fromObject - * @memberof google.protobuf.EnumDescriptorProto.EnumReservedRange - * @static - * @param {Object.} object Plain object - * @returns {google.protobuf.EnumDescriptorProto.EnumReservedRange} EnumReservedRange - */ - EnumReservedRange.fromObject = function fromObject(object) { - if (object instanceof $root.google.protobuf.EnumDescriptorProto.EnumReservedRange) - return object; - var message = new $root.google.protobuf.EnumDescriptorProto.EnumReservedRange(); - if (object.start != null) - message.start = object.start | 0; - if (object.end != null) - message.end = object.end | 0; - return message; - }; + return MembershipEndpoint; + })(); - /** - * Creates a plain object from an EnumReservedRange message. Also converts values to other types if specified. - * @function toObject - * @memberof google.protobuf.EnumDescriptorProto.EnumReservedRange - * @static - * @param {google.protobuf.EnumDescriptorProto.EnumReservedRange} message EnumReservedRange - * @param {$protobuf.IConversionOptions} [options] Conversion options - * @returns {Object.} Plain object - */ - EnumReservedRange.toObject = function toObject(message, options) { - if (!options) - options = {}; - var object = {}; - if (options.defaults) { - object.start = 0; - object.end = 0; - } - if (message.start != null && message.hasOwnProperty("start")) - object.start = message.start; - if (message.end != null && message.hasOwnProperty("end")) - object.end = message.end; - return object; - }; + v1beta1.KubernetesResource = (function() { - /** - * Converts this EnumReservedRange to JSON. - * @function toJSON - * @memberof google.protobuf.EnumDescriptorProto.EnumReservedRange - * @instance - * @returns {Object.} JSON object - */ - EnumReservedRange.prototype.toJSON = function toJSON() { - return this.constructor.toObject(this, $protobuf.util.toJSONOptions); - }; + /** + * Properties of a KubernetesResource. + * @memberof google.cloud.gkehub.v1beta1 + * @interface IKubernetesResource + * @property {string|null} [membershipCrManifest] KubernetesResource membershipCrManifest + * @property {Array.|null} [membershipResources] KubernetesResource membershipResources + * @property {Array.|null} [connectResources] KubernetesResource connectResources + * @property {google.cloud.gkehub.v1beta1.IResourceOptions|null} [resourceOptions] KubernetesResource resourceOptions + */ - return EnumReservedRange; - })(); + /** + * Constructs a new KubernetesResource. + * @memberof google.cloud.gkehub.v1beta1 + * @classdesc Represents a KubernetesResource. + * @implements IKubernetesResource + * @constructor + * @param {google.cloud.gkehub.v1beta1.IKubernetesResource=} [properties] Properties to set + */ + function KubernetesResource(properties) { + this.membershipResources = []; + this.connectResources = []; + 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]]; + } - return EnumDescriptorProto; - })(); + /** + * KubernetesResource membershipCrManifest. + * @member {string} membershipCrManifest + * @memberof google.cloud.gkehub.v1beta1.KubernetesResource + * @instance + */ + KubernetesResource.prototype.membershipCrManifest = ""; - protobuf.EnumValueDescriptorProto = (function() { + /** + * KubernetesResource membershipResources. + * @member {Array.} membershipResources + * @memberof google.cloud.gkehub.v1beta1.KubernetesResource + * @instance + */ + KubernetesResource.prototype.membershipResources = $util.emptyArray; - /** - * Properties of an EnumValueDescriptorProto. - * @memberof google.protobuf - * @interface IEnumValueDescriptorProto - * @property {string|null} [name] EnumValueDescriptorProto name - * @property {number|null} [number] EnumValueDescriptorProto number - * @property {google.protobuf.IEnumValueOptions|null} [options] EnumValueDescriptorProto options - */ + /** + * KubernetesResource connectResources. + * @member {Array.} connectResources + * @memberof google.cloud.gkehub.v1beta1.KubernetesResource + * @instance + */ + KubernetesResource.prototype.connectResources = $util.emptyArray; - /** - * Constructs a new EnumValueDescriptorProto. - * @memberof google.protobuf - * @classdesc Represents an EnumValueDescriptorProto. - * @implements IEnumValueDescriptorProto - * @constructor - * @param {google.protobuf.IEnumValueDescriptorProto=} [properties] Properties to set - */ - function EnumValueDescriptorProto(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]]; - } + /** + * KubernetesResource resourceOptions. + * @member {google.cloud.gkehub.v1beta1.IResourceOptions|null|undefined} resourceOptions + * @memberof google.cloud.gkehub.v1beta1.KubernetesResource + * @instance + */ + KubernetesResource.prototype.resourceOptions = null; - /** - * EnumValueDescriptorProto name. - * @member {string} name - * @memberof google.protobuf.EnumValueDescriptorProto - * @instance - */ - EnumValueDescriptorProto.prototype.name = ""; + /** + * Creates a new KubernetesResource instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.v1beta1.KubernetesResource + * @static + * @param {google.cloud.gkehub.v1beta1.IKubernetesResource=} [properties] Properties to set + * @returns {google.cloud.gkehub.v1beta1.KubernetesResource} KubernetesResource instance + */ + KubernetesResource.create = function create(properties) { + return new KubernetesResource(properties); + }; - /** - * EnumValueDescriptorProto number. - * @member {number} number - * @memberof google.protobuf.EnumValueDescriptorProto - * @instance - */ - EnumValueDescriptorProto.prototype.number = 0; + /** + * Encodes the specified KubernetesResource message. Does not implicitly {@link google.cloud.gkehub.v1beta1.KubernetesResource.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.v1beta1.KubernetesResource + * @static + * @param {google.cloud.gkehub.v1beta1.IKubernetesResource} message KubernetesResource message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + KubernetesResource.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.membershipCrManifest != null && Object.hasOwnProperty.call(message, "membershipCrManifest")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.membershipCrManifest); + if (message.membershipResources != null && message.membershipResources.length) + for (var i = 0; i < message.membershipResources.length; ++i) + $root.google.cloud.gkehub.v1beta1.ResourceManifest.encode(message.membershipResources[i], writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim(); + if (message.connectResources != null && message.connectResources.length) + for (var i = 0; i < message.connectResources.length; ++i) + $root.google.cloud.gkehub.v1beta1.ResourceManifest.encode(message.connectResources[i], writer.uint32(/* id 3, wireType 2 =*/26).fork()).ldelim(); + if (message.resourceOptions != null && Object.hasOwnProperty.call(message, "resourceOptions")) + $root.google.cloud.gkehub.v1beta1.ResourceOptions.encode(message.resourceOptions, writer.uint32(/* id 4, wireType 2 =*/34).fork()).ldelim(); + return writer; + }; - /** - * EnumValueDescriptorProto options. - * @member {google.protobuf.IEnumValueOptions|null|undefined} options - * @memberof google.protobuf.EnumValueDescriptorProto - * @instance - */ - EnumValueDescriptorProto.prototype.options = null; + /** + * Encodes the specified KubernetesResource message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta1.KubernetesResource.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.v1beta1.KubernetesResource + * @static + * @param {google.cloud.gkehub.v1beta1.IKubernetesResource} message KubernetesResource message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + KubernetesResource.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; - /** - * Creates a new EnumValueDescriptorProto instance using the specified properties. - * @function create - * @memberof google.protobuf.EnumValueDescriptorProto - * @static - * @param {google.protobuf.IEnumValueDescriptorProto=} [properties] Properties to set - * @returns {google.protobuf.EnumValueDescriptorProto} EnumValueDescriptorProto instance - */ - EnumValueDescriptorProto.create = function create(properties) { - return new EnumValueDescriptorProto(properties); - }; + /** + * Decodes a KubernetesResource message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.v1beta1.KubernetesResource + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.v1beta1.KubernetesResource} KubernetesResource + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + KubernetesResource.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.v1beta1.KubernetesResource(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.membershipCrManifest = reader.string(); + break; + case 2: + if (!(message.membershipResources && message.membershipResources.length)) + message.membershipResources = []; + message.membershipResources.push($root.google.cloud.gkehub.v1beta1.ResourceManifest.decode(reader, reader.uint32())); + break; + case 3: + if (!(message.connectResources && message.connectResources.length)) + message.connectResources = []; + message.connectResources.push($root.google.cloud.gkehub.v1beta1.ResourceManifest.decode(reader, reader.uint32())); + break; + case 4: + message.resourceOptions = $root.google.cloud.gkehub.v1beta1.ResourceOptions.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; - /** - * Encodes the specified EnumValueDescriptorProto message. Does not implicitly {@link google.protobuf.EnumValueDescriptorProto.verify|verify} messages. - * @function encode - * @memberof google.protobuf.EnumValueDescriptorProto - * @static - * @param {google.protobuf.IEnumValueDescriptorProto} message EnumValueDescriptorProto message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - EnumValueDescriptorProto.encode = function encode(message, writer) { - if (!writer) - writer = $Writer.create(); - if (message.name != null && Object.hasOwnProperty.call(message, "name")) - writer.uint32(/* id 1, wireType 2 =*/10).string(message.name); - if (message.number != null && Object.hasOwnProperty.call(message, "number")) - writer.uint32(/* id 2, wireType 0 =*/16).int32(message.number); - if (message.options != null && Object.hasOwnProperty.call(message, "options")) - $root.google.protobuf.EnumValueOptions.encode(message.options, writer.uint32(/* id 3, wireType 2 =*/26).fork()).ldelim(); - return writer; - }; + /** + * Decodes a KubernetesResource message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.v1beta1.KubernetesResource + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.v1beta1.KubernetesResource} KubernetesResource + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + KubernetesResource.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; - /** - * Encodes the specified EnumValueDescriptorProto message, length delimited. Does not implicitly {@link google.protobuf.EnumValueDescriptorProto.verify|verify} messages. - * @function encodeDelimited - * @memberof google.protobuf.EnumValueDescriptorProto - * @static - * @param {google.protobuf.IEnumValueDescriptorProto} message EnumValueDescriptorProto message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - EnumValueDescriptorProto.encodeDelimited = function encodeDelimited(message, writer) { - return this.encode(message, writer).ldelim(); - }; + /** + * Verifies a KubernetesResource message. + * @function verify + * @memberof google.cloud.gkehub.v1beta1.KubernetesResource + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + KubernetesResource.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.membershipCrManifest != null && message.hasOwnProperty("membershipCrManifest")) + if (!$util.isString(message.membershipCrManifest)) + return "membershipCrManifest: string expected"; + if (message.membershipResources != null && message.hasOwnProperty("membershipResources")) { + if (!Array.isArray(message.membershipResources)) + return "membershipResources: array expected"; + for (var i = 0; i < message.membershipResources.length; ++i) { + var error = $root.google.cloud.gkehub.v1beta1.ResourceManifest.verify(message.membershipResources[i]); + if (error) + return "membershipResources." + error; + } + } + if (message.connectResources != null && message.hasOwnProperty("connectResources")) { + if (!Array.isArray(message.connectResources)) + return "connectResources: array expected"; + for (var i = 0; i < message.connectResources.length; ++i) { + var error = $root.google.cloud.gkehub.v1beta1.ResourceManifest.verify(message.connectResources[i]); + if (error) + return "connectResources." + error; + } + } + if (message.resourceOptions != null && message.hasOwnProperty("resourceOptions")) { + var error = $root.google.cloud.gkehub.v1beta1.ResourceOptions.verify(message.resourceOptions); + if (error) + return "resourceOptions." + error; + } + return null; + }; - /** - * Decodes an EnumValueDescriptorProto message from the specified reader or buffer. - * @function decode - * @memberof google.protobuf.EnumValueDescriptorProto - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @param {number} [length] Message length if known beforehand - * @returns {google.protobuf.EnumValueDescriptorProto} EnumValueDescriptorProto - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - EnumValueDescriptorProto.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.protobuf.EnumValueDescriptorProto(); - while (reader.pos < end) { - var tag = reader.uint32(); - switch (tag >>> 3) { - case 1: - message.name = reader.string(); - break; - case 2: - message.number = reader.int32(); - break; - case 3: - message.options = $root.google.protobuf.EnumValueOptions.decode(reader, reader.uint32()); - break; - default: - reader.skipType(tag & 7); - break; - } - } - return message; - }; + /** + * Creates a KubernetesResource message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.v1beta1.KubernetesResource + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.v1beta1.KubernetesResource} KubernetesResource + */ + KubernetesResource.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.v1beta1.KubernetesResource) + return object; + var message = new $root.google.cloud.gkehub.v1beta1.KubernetesResource(); + if (object.membershipCrManifest != null) + message.membershipCrManifest = String(object.membershipCrManifest); + if (object.membershipResources) { + if (!Array.isArray(object.membershipResources)) + throw TypeError(".google.cloud.gkehub.v1beta1.KubernetesResource.membershipResources: array expected"); + message.membershipResources = []; + for (var i = 0; i < object.membershipResources.length; ++i) { + if (typeof object.membershipResources[i] !== "object") + throw TypeError(".google.cloud.gkehub.v1beta1.KubernetesResource.membershipResources: object expected"); + message.membershipResources[i] = $root.google.cloud.gkehub.v1beta1.ResourceManifest.fromObject(object.membershipResources[i]); + } + } + if (object.connectResources) { + if (!Array.isArray(object.connectResources)) + throw TypeError(".google.cloud.gkehub.v1beta1.KubernetesResource.connectResources: array expected"); + message.connectResources = []; + for (var i = 0; i < object.connectResources.length; ++i) { + if (typeof object.connectResources[i] !== "object") + throw TypeError(".google.cloud.gkehub.v1beta1.KubernetesResource.connectResources: object expected"); + message.connectResources[i] = $root.google.cloud.gkehub.v1beta1.ResourceManifest.fromObject(object.connectResources[i]); + } + } + if (object.resourceOptions != null) { + if (typeof object.resourceOptions !== "object") + throw TypeError(".google.cloud.gkehub.v1beta1.KubernetesResource.resourceOptions: object expected"); + message.resourceOptions = $root.google.cloud.gkehub.v1beta1.ResourceOptions.fromObject(object.resourceOptions); + } + return message; + }; - /** - * Decodes an EnumValueDescriptorProto message from the specified reader or buffer, length delimited. - * @function decodeDelimited - * @memberof google.protobuf.EnumValueDescriptorProto - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {google.protobuf.EnumValueDescriptorProto} EnumValueDescriptorProto - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - EnumValueDescriptorProto.decodeDelimited = function decodeDelimited(reader) { - if (!(reader instanceof $Reader)) - reader = new $Reader(reader); - return this.decode(reader, reader.uint32()); - }; + /** + * Creates a plain object from a KubernetesResource message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.v1beta1.KubernetesResource + * @static + * @param {google.cloud.gkehub.v1beta1.KubernetesResource} message KubernetesResource + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + KubernetesResource.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.arrays || options.defaults) { + object.membershipResources = []; + object.connectResources = []; + } + if (options.defaults) { + object.membershipCrManifest = ""; + object.resourceOptions = null; + } + if (message.membershipCrManifest != null && message.hasOwnProperty("membershipCrManifest")) + object.membershipCrManifest = message.membershipCrManifest; + if (message.membershipResources && message.membershipResources.length) { + object.membershipResources = []; + for (var j = 0; j < message.membershipResources.length; ++j) + object.membershipResources[j] = $root.google.cloud.gkehub.v1beta1.ResourceManifest.toObject(message.membershipResources[j], options); + } + if (message.connectResources && message.connectResources.length) { + object.connectResources = []; + for (var j = 0; j < message.connectResources.length; ++j) + object.connectResources[j] = $root.google.cloud.gkehub.v1beta1.ResourceManifest.toObject(message.connectResources[j], options); + } + if (message.resourceOptions != null && message.hasOwnProperty("resourceOptions")) + object.resourceOptions = $root.google.cloud.gkehub.v1beta1.ResourceOptions.toObject(message.resourceOptions, options); + return object; + }; - /** - * Verifies an EnumValueDescriptorProto message. - * @function verify - * @memberof google.protobuf.EnumValueDescriptorProto - * @static - * @param {Object.} message Plain object to verify - * @returns {string|null} `null` if valid, otherwise the reason why it is not - */ - EnumValueDescriptorProto.verify = function verify(message) { - if (typeof message !== "object" || message === null) - return "object expected"; - if (message.name != null && message.hasOwnProperty("name")) - if (!$util.isString(message.name)) - return "name: string expected"; - if (message.number != null && message.hasOwnProperty("number")) - if (!$util.isInteger(message.number)) - return "number: integer expected"; - if (message.options != null && message.hasOwnProperty("options")) { - var error = $root.google.protobuf.EnumValueOptions.verify(message.options); - if (error) - return "options." + error; - } - return null; - }; + /** + * Converts this KubernetesResource to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.v1beta1.KubernetesResource + * @instance + * @returns {Object.} JSON object + */ + KubernetesResource.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; - /** - * Creates an EnumValueDescriptorProto message from a plain object. Also converts values to their respective internal types. - * @function fromObject - * @memberof google.protobuf.EnumValueDescriptorProto - * @static - * @param {Object.} object Plain object - * @returns {google.protobuf.EnumValueDescriptorProto} EnumValueDescriptorProto - */ - EnumValueDescriptorProto.fromObject = function fromObject(object) { - if (object instanceof $root.google.protobuf.EnumValueDescriptorProto) - return object; - var message = new $root.google.protobuf.EnumValueDescriptorProto(); - if (object.name != null) - message.name = String(object.name); - if (object.number != null) - message.number = object.number | 0; - if (object.options != null) { - if (typeof object.options !== "object") - throw TypeError(".google.protobuf.EnumValueDescriptorProto.options: object expected"); - message.options = $root.google.protobuf.EnumValueOptions.fromObject(object.options); - } - return message; - }; + return KubernetesResource; + })(); - /** - * Creates a plain object from an EnumValueDescriptorProto message. Also converts values to other types if specified. - * @function toObject - * @memberof google.protobuf.EnumValueDescriptorProto - * @static - * @param {google.protobuf.EnumValueDescriptorProto} message EnumValueDescriptorProto - * @param {$protobuf.IConversionOptions} [options] Conversion options - * @returns {Object.} Plain object - */ - EnumValueDescriptorProto.toObject = function toObject(message, options) { - if (!options) - options = {}; - var object = {}; - if (options.defaults) { - object.name = ""; - object.number = 0; - object.options = null; - } - if (message.name != null && message.hasOwnProperty("name")) - object.name = message.name; - if (message.number != null && message.hasOwnProperty("number")) - object.number = message.number; - if (message.options != null && message.hasOwnProperty("options")) - object.options = $root.google.protobuf.EnumValueOptions.toObject(message.options, options); - return object; - }; + v1beta1.ResourceOptions = (function() { - /** - * Converts this EnumValueDescriptorProto to JSON. - * @function toJSON - * @memberof google.protobuf.EnumValueDescriptorProto - * @instance - * @returns {Object.} JSON object - */ - EnumValueDescriptorProto.prototype.toJSON = function toJSON() { - return this.constructor.toObject(this, $protobuf.util.toJSONOptions); - }; + /** + * Properties of a ResourceOptions. + * @memberof google.cloud.gkehub.v1beta1 + * @interface IResourceOptions + * @property {string|null} [connectVersion] ResourceOptions connectVersion + * @property {boolean|null} [v1beta1Crd] ResourceOptions v1beta1Crd + */ - return EnumValueDescriptorProto; - })(); + /** + * Constructs a new ResourceOptions. + * @memberof google.cloud.gkehub.v1beta1 + * @classdesc Represents a ResourceOptions. + * @implements IResourceOptions + * @constructor + * @param {google.cloud.gkehub.v1beta1.IResourceOptions=} [properties] Properties to set + */ + function ResourceOptions(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]]; + } - protobuf.ServiceDescriptorProto = (function() { + /** + * ResourceOptions connectVersion. + * @member {string} connectVersion + * @memberof google.cloud.gkehub.v1beta1.ResourceOptions + * @instance + */ + ResourceOptions.prototype.connectVersion = ""; - /** - * Properties of a ServiceDescriptorProto. - * @memberof google.protobuf - * @interface IServiceDescriptorProto - * @property {string|null} [name] ServiceDescriptorProto name - * @property {Array.|null} [method] ServiceDescriptorProto method - * @property {google.protobuf.IServiceOptions|null} [options] ServiceDescriptorProto options - */ + /** + * ResourceOptions v1beta1Crd. + * @member {boolean} v1beta1Crd + * @memberof google.cloud.gkehub.v1beta1.ResourceOptions + * @instance + */ + ResourceOptions.prototype.v1beta1Crd = false; - /** - * Constructs a new ServiceDescriptorProto. - * @memberof google.protobuf - * @classdesc Represents a ServiceDescriptorProto. - * @implements IServiceDescriptorProto - * @constructor - * @param {google.protobuf.IServiceDescriptorProto=} [properties] Properties to set - */ - function ServiceDescriptorProto(properties) { - this.method = []; - 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]]; - } + /** + * Creates a new ResourceOptions instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.v1beta1.ResourceOptions + * @static + * @param {google.cloud.gkehub.v1beta1.IResourceOptions=} [properties] Properties to set + * @returns {google.cloud.gkehub.v1beta1.ResourceOptions} ResourceOptions instance + */ + ResourceOptions.create = function create(properties) { + return new ResourceOptions(properties); + }; - /** - * ServiceDescriptorProto name. - * @member {string} name - * @memberof google.protobuf.ServiceDescriptorProto - * @instance - */ - ServiceDescriptorProto.prototype.name = ""; + /** + * Encodes the specified ResourceOptions message. Does not implicitly {@link google.cloud.gkehub.v1beta1.ResourceOptions.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.v1beta1.ResourceOptions + * @static + * @param {google.cloud.gkehub.v1beta1.IResourceOptions} message ResourceOptions message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + ResourceOptions.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.connectVersion != null && Object.hasOwnProperty.call(message, "connectVersion")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.connectVersion); + if (message.v1beta1Crd != null && Object.hasOwnProperty.call(message, "v1beta1Crd")) + writer.uint32(/* id 2, wireType 0 =*/16).bool(message.v1beta1Crd); + return writer; + }; - /** - * ServiceDescriptorProto method. - * @member {Array.} method - * @memberof google.protobuf.ServiceDescriptorProto - * @instance - */ - ServiceDescriptorProto.prototype.method = $util.emptyArray; + /** + * Encodes the specified ResourceOptions message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta1.ResourceOptions.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.v1beta1.ResourceOptions + * @static + * @param {google.cloud.gkehub.v1beta1.IResourceOptions} message ResourceOptions message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + ResourceOptions.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; - /** - * ServiceDescriptorProto options. - * @member {google.protobuf.IServiceOptions|null|undefined} options - * @memberof google.protobuf.ServiceDescriptorProto - * @instance - */ - ServiceDescriptorProto.prototype.options = null; + /** + * Decodes a ResourceOptions message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.v1beta1.ResourceOptions + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.v1beta1.ResourceOptions} ResourceOptions + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + ResourceOptions.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.v1beta1.ResourceOptions(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.connectVersion = reader.string(); + break; + case 2: + message.v1beta1Crd = reader.bool(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; - /** - * Creates a new ServiceDescriptorProto instance using the specified properties. - * @function create - * @memberof google.protobuf.ServiceDescriptorProto - * @static - * @param {google.protobuf.IServiceDescriptorProto=} [properties] Properties to set - * @returns {google.protobuf.ServiceDescriptorProto} ServiceDescriptorProto instance - */ - ServiceDescriptorProto.create = function create(properties) { - return new ServiceDescriptorProto(properties); - }; + /** + * Decodes a ResourceOptions message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.v1beta1.ResourceOptions + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.v1beta1.ResourceOptions} ResourceOptions + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + ResourceOptions.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; - /** - * Encodes the specified ServiceDescriptorProto message. Does not implicitly {@link google.protobuf.ServiceDescriptorProto.verify|verify} messages. - * @function encode - * @memberof google.protobuf.ServiceDescriptorProto - * @static - * @param {google.protobuf.IServiceDescriptorProto} message ServiceDescriptorProto message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - ServiceDescriptorProto.encode = function encode(message, writer) { - if (!writer) - writer = $Writer.create(); - if (message.name != null && Object.hasOwnProperty.call(message, "name")) - writer.uint32(/* id 1, wireType 2 =*/10).string(message.name); - if (message.method != null && message.method.length) - for (var i = 0; i < message.method.length; ++i) - $root.google.protobuf.MethodDescriptorProto.encode(message.method[i], writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim(); - if (message.options != null && Object.hasOwnProperty.call(message, "options")) - $root.google.protobuf.ServiceOptions.encode(message.options, writer.uint32(/* id 3, wireType 2 =*/26).fork()).ldelim(); - return writer; - }; + /** + * Verifies a ResourceOptions message. + * @function verify + * @memberof google.cloud.gkehub.v1beta1.ResourceOptions + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + ResourceOptions.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.connectVersion != null && message.hasOwnProperty("connectVersion")) + if (!$util.isString(message.connectVersion)) + return "connectVersion: string expected"; + if (message.v1beta1Crd != null && message.hasOwnProperty("v1beta1Crd")) + if (typeof message.v1beta1Crd !== "boolean") + return "v1beta1Crd: boolean expected"; + return null; + }; - /** - * Encodes the specified ServiceDescriptorProto message, length delimited. Does not implicitly {@link google.protobuf.ServiceDescriptorProto.verify|verify} messages. - * @function encodeDelimited - * @memberof google.protobuf.ServiceDescriptorProto - * @static - * @param {google.protobuf.IServiceDescriptorProto} message ServiceDescriptorProto message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - ServiceDescriptorProto.encodeDelimited = function encodeDelimited(message, writer) { - return this.encode(message, writer).ldelim(); - }; + /** + * Creates a ResourceOptions message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.v1beta1.ResourceOptions + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.v1beta1.ResourceOptions} ResourceOptions + */ + ResourceOptions.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.v1beta1.ResourceOptions) + return object; + var message = new $root.google.cloud.gkehub.v1beta1.ResourceOptions(); + if (object.connectVersion != null) + message.connectVersion = String(object.connectVersion); + if (object.v1beta1Crd != null) + message.v1beta1Crd = Boolean(object.v1beta1Crd); + return message; + }; - /** - * Decodes a ServiceDescriptorProto message from the specified reader or buffer. - * @function decode - * @memberof google.protobuf.ServiceDescriptorProto - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @param {number} [length] Message length if known beforehand - * @returns {google.protobuf.ServiceDescriptorProto} ServiceDescriptorProto - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - ServiceDescriptorProto.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.protobuf.ServiceDescriptorProto(); - while (reader.pos < end) { - var tag = reader.uint32(); - switch (tag >>> 3) { - case 1: - message.name = reader.string(); - break; - case 2: - if (!(message.method && message.method.length)) - message.method = []; - message.method.push($root.google.protobuf.MethodDescriptorProto.decode(reader, reader.uint32())); - break; - case 3: - message.options = $root.google.protobuf.ServiceOptions.decode(reader, reader.uint32()); - break; - default: - reader.skipType(tag & 7); - break; - } - } - return message; - }; + /** + * Creates a plain object from a ResourceOptions message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.v1beta1.ResourceOptions + * @static + * @param {google.cloud.gkehub.v1beta1.ResourceOptions} message ResourceOptions + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + ResourceOptions.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.connectVersion = ""; + object.v1beta1Crd = false; + } + if (message.connectVersion != null && message.hasOwnProperty("connectVersion")) + object.connectVersion = message.connectVersion; + if (message.v1beta1Crd != null && message.hasOwnProperty("v1beta1Crd")) + object.v1beta1Crd = message.v1beta1Crd; + return object; + }; - /** - * Decodes a ServiceDescriptorProto message from the specified reader or buffer, length delimited. - * @function decodeDelimited - * @memberof google.protobuf.ServiceDescriptorProto - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {google.protobuf.ServiceDescriptorProto} ServiceDescriptorProto - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - ServiceDescriptorProto.decodeDelimited = function decodeDelimited(reader) { - if (!(reader instanceof $Reader)) - reader = new $Reader(reader); - return this.decode(reader, reader.uint32()); - }; + /** + * Converts this ResourceOptions to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.v1beta1.ResourceOptions + * @instance + * @returns {Object.} JSON object + */ + ResourceOptions.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; - /** - * Verifies a ServiceDescriptorProto message. - * @function verify - * @memberof google.protobuf.ServiceDescriptorProto - * @static - * @param {Object.} message Plain object to verify - * @returns {string|null} `null` if valid, otherwise the reason why it is not - */ - ServiceDescriptorProto.verify = function verify(message) { - if (typeof message !== "object" || message === null) - return "object expected"; - if (message.name != null && message.hasOwnProperty("name")) - if (!$util.isString(message.name)) - return "name: string expected"; - if (message.method != null && message.hasOwnProperty("method")) { - if (!Array.isArray(message.method)) - return "method: array expected"; - for (var i = 0; i < message.method.length; ++i) { - var error = $root.google.protobuf.MethodDescriptorProto.verify(message.method[i]); - if (error) - return "method." + error; - } - } - if (message.options != null && message.hasOwnProperty("options")) { - var error = $root.google.protobuf.ServiceOptions.verify(message.options); - if (error) - return "options." + error; - } - return null; - }; + return ResourceOptions; + })(); - /** - * Creates a ServiceDescriptorProto message from a plain object. Also converts values to their respective internal types. - * @function fromObject - * @memberof google.protobuf.ServiceDescriptorProto - * @static - * @param {Object.} object Plain object - * @returns {google.protobuf.ServiceDescriptorProto} ServiceDescriptorProto - */ - ServiceDescriptorProto.fromObject = function fromObject(object) { - if (object instanceof $root.google.protobuf.ServiceDescriptorProto) - return object; - var message = new $root.google.protobuf.ServiceDescriptorProto(); - if (object.name != null) - message.name = String(object.name); - if (object.method) { - if (!Array.isArray(object.method)) - throw TypeError(".google.protobuf.ServiceDescriptorProto.method: array expected"); - message.method = []; - for (var i = 0; i < object.method.length; ++i) { - if (typeof object.method[i] !== "object") - throw TypeError(".google.protobuf.ServiceDescriptorProto.method: object expected"); - message.method[i] = $root.google.protobuf.MethodDescriptorProto.fromObject(object.method[i]); + v1beta1.ResourceManifest = (function() { + + /** + * Properties of a ResourceManifest. + * @memberof google.cloud.gkehub.v1beta1 + * @interface IResourceManifest + * @property {string|null} [manifest] ResourceManifest manifest + * @property {boolean|null} [clusterScoped] ResourceManifest clusterScoped + */ + + /** + * Constructs a new ResourceManifest. + * @memberof google.cloud.gkehub.v1beta1 + * @classdesc Represents a ResourceManifest. + * @implements IResourceManifest + * @constructor + * @param {google.cloud.gkehub.v1beta1.IResourceManifest=} [properties] Properties to set + */ + function ResourceManifest(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]]; } - } - if (object.options != null) { - if (typeof object.options !== "object") - throw TypeError(".google.protobuf.ServiceDescriptorProto.options: object expected"); - message.options = $root.google.protobuf.ServiceOptions.fromObject(object.options); - } - return message; - }; - /** - * Creates a plain object from a ServiceDescriptorProto message. Also converts values to other types if specified. - * @function toObject - * @memberof google.protobuf.ServiceDescriptorProto - * @static - * @param {google.protobuf.ServiceDescriptorProto} message ServiceDescriptorProto - * @param {$protobuf.IConversionOptions} [options] Conversion options - * @returns {Object.} Plain object - */ - ServiceDescriptorProto.toObject = function toObject(message, options) { - if (!options) - options = {}; - var object = {}; - if (options.arrays || options.defaults) - object.method = []; - if (options.defaults) { - object.name = ""; - object.options = null; - } - if (message.name != null && message.hasOwnProperty("name")) - object.name = message.name; - if (message.method && message.method.length) { - object.method = []; - for (var j = 0; j < message.method.length; ++j) - object.method[j] = $root.google.protobuf.MethodDescriptorProto.toObject(message.method[j], options); - } - if (message.options != null && message.hasOwnProperty("options")) - object.options = $root.google.protobuf.ServiceOptions.toObject(message.options, options); - return object; - }; + /** + * ResourceManifest manifest. + * @member {string} manifest + * @memberof google.cloud.gkehub.v1beta1.ResourceManifest + * @instance + */ + ResourceManifest.prototype.manifest = ""; - /** - * Converts this ServiceDescriptorProto to JSON. - * @function toJSON - * @memberof google.protobuf.ServiceDescriptorProto - * @instance - * @returns {Object.} JSON object - */ - ServiceDescriptorProto.prototype.toJSON = function toJSON() { - return this.constructor.toObject(this, $protobuf.util.toJSONOptions); - }; + /** + * ResourceManifest clusterScoped. + * @member {boolean} clusterScoped + * @memberof google.cloud.gkehub.v1beta1.ResourceManifest + * @instance + */ + ResourceManifest.prototype.clusterScoped = false; - return ServiceDescriptorProto; - })(); + /** + * Creates a new ResourceManifest instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.v1beta1.ResourceManifest + * @static + * @param {google.cloud.gkehub.v1beta1.IResourceManifest=} [properties] Properties to set + * @returns {google.cloud.gkehub.v1beta1.ResourceManifest} ResourceManifest instance + */ + ResourceManifest.create = function create(properties) { + return new ResourceManifest(properties); + }; - protobuf.MethodDescriptorProto = (function() { + /** + * Encodes the specified ResourceManifest message. Does not implicitly {@link google.cloud.gkehub.v1beta1.ResourceManifest.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.v1beta1.ResourceManifest + * @static + * @param {google.cloud.gkehub.v1beta1.IResourceManifest} message ResourceManifest message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + ResourceManifest.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.manifest != null && Object.hasOwnProperty.call(message, "manifest")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.manifest); + if (message.clusterScoped != null && Object.hasOwnProperty.call(message, "clusterScoped")) + writer.uint32(/* id 2, wireType 0 =*/16).bool(message.clusterScoped); + return writer; + }; - /** - * Properties of a MethodDescriptorProto. - * @memberof google.protobuf - * @interface IMethodDescriptorProto - * @property {string|null} [name] MethodDescriptorProto name - * @property {string|null} [inputType] MethodDescriptorProto inputType - * @property {string|null} [outputType] MethodDescriptorProto outputType - * @property {google.protobuf.IMethodOptions|null} [options] MethodDescriptorProto options - * @property {boolean|null} [clientStreaming] MethodDescriptorProto clientStreaming - * @property {boolean|null} [serverStreaming] MethodDescriptorProto serverStreaming - */ + /** + * Encodes the specified ResourceManifest message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta1.ResourceManifest.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.v1beta1.ResourceManifest + * @static + * @param {google.cloud.gkehub.v1beta1.IResourceManifest} message ResourceManifest message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + ResourceManifest.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; - /** - * Constructs a new MethodDescriptorProto. - * @memberof google.protobuf - * @classdesc Represents a MethodDescriptorProto. - * @implements IMethodDescriptorProto - * @constructor - * @param {google.protobuf.IMethodDescriptorProto=} [properties] Properties to set - */ - function MethodDescriptorProto(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]]; - } + /** + * Decodes a ResourceManifest message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.v1beta1.ResourceManifest + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.v1beta1.ResourceManifest} ResourceManifest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + ResourceManifest.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.v1beta1.ResourceManifest(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.manifest = reader.string(); + break; + case 2: + message.clusterScoped = reader.bool(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a ResourceManifest message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.v1beta1.ResourceManifest + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.v1beta1.ResourceManifest} ResourceManifest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + ResourceManifest.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a ResourceManifest message. + * @function verify + * @memberof google.cloud.gkehub.v1beta1.ResourceManifest + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + ResourceManifest.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.manifest != null && message.hasOwnProperty("manifest")) + if (!$util.isString(message.manifest)) + return "manifest: string expected"; + if (message.clusterScoped != null && message.hasOwnProperty("clusterScoped")) + if (typeof message.clusterScoped !== "boolean") + return "clusterScoped: boolean expected"; + return null; + }; + + /** + * Creates a ResourceManifest message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.v1beta1.ResourceManifest + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.v1beta1.ResourceManifest} ResourceManifest + */ + ResourceManifest.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.v1beta1.ResourceManifest) + return object; + var message = new $root.google.cloud.gkehub.v1beta1.ResourceManifest(); + if (object.manifest != null) + message.manifest = String(object.manifest); + if (object.clusterScoped != null) + message.clusterScoped = Boolean(object.clusterScoped); + return message; + }; + + /** + * Creates a plain object from a ResourceManifest message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.v1beta1.ResourceManifest + * @static + * @param {google.cloud.gkehub.v1beta1.ResourceManifest} message ResourceManifest + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + ResourceManifest.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.manifest = ""; + object.clusterScoped = false; + } + if (message.manifest != null && message.hasOwnProperty("manifest")) + object.manifest = message.manifest; + if (message.clusterScoped != null && message.hasOwnProperty("clusterScoped")) + object.clusterScoped = message.clusterScoped; + return object; + }; - /** - * MethodDescriptorProto name. - * @member {string} name - * @memberof google.protobuf.MethodDescriptorProto - * @instance - */ - MethodDescriptorProto.prototype.name = ""; + /** + * Converts this ResourceManifest to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.v1beta1.ResourceManifest + * @instance + * @returns {Object.} JSON object + */ + ResourceManifest.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; - /** - * MethodDescriptorProto inputType. - * @member {string} inputType - * @memberof google.protobuf.MethodDescriptorProto - * @instance - */ - MethodDescriptorProto.prototype.inputType = ""; + return ResourceManifest; + })(); - /** - * MethodDescriptorProto outputType. - * @member {string} outputType - * @memberof google.protobuf.MethodDescriptorProto - * @instance - */ - MethodDescriptorProto.prototype.outputType = ""; + v1beta1.GkeCluster = (function() { - /** - * MethodDescriptorProto options. - * @member {google.protobuf.IMethodOptions|null|undefined} options - * @memberof google.protobuf.MethodDescriptorProto - * @instance - */ - MethodDescriptorProto.prototype.options = null; + /** + * Properties of a GkeCluster. + * @memberof google.cloud.gkehub.v1beta1 + * @interface IGkeCluster + * @property {string|null} [resourceLink] GkeCluster resourceLink + */ - /** - * MethodDescriptorProto clientStreaming. - * @member {boolean} clientStreaming - * @memberof google.protobuf.MethodDescriptorProto - * @instance - */ - MethodDescriptorProto.prototype.clientStreaming = false; + /** + * Constructs a new GkeCluster. + * @memberof google.cloud.gkehub.v1beta1 + * @classdesc Represents a GkeCluster. + * @implements IGkeCluster + * @constructor + * @param {google.cloud.gkehub.v1beta1.IGkeCluster=} [properties] Properties to set + */ + function GkeCluster(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]]; + } - /** - * MethodDescriptorProto serverStreaming. - * @member {boolean} serverStreaming - * @memberof google.protobuf.MethodDescriptorProto - * @instance - */ - MethodDescriptorProto.prototype.serverStreaming = false; + /** + * GkeCluster resourceLink. + * @member {string} resourceLink + * @memberof google.cloud.gkehub.v1beta1.GkeCluster + * @instance + */ + GkeCluster.prototype.resourceLink = ""; - /** - * Creates a new MethodDescriptorProto instance using the specified properties. - * @function create - * @memberof google.protobuf.MethodDescriptorProto - * @static - * @param {google.protobuf.IMethodDescriptorProto=} [properties] Properties to set - * @returns {google.protobuf.MethodDescriptorProto} MethodDescriptorProto instance - */ - MethodDescriptorProto.create = function create(properties) { - return new MethodDescriptorProto(properties); - }; + /** + * Creates a new GkeCluster instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.v1beta1.GkeCluster + * @static + * @param {google.cloud.gkehub.v1beta1.IGkeCluster=} [properties] Properties to set + * @returns {google.cloud.gkehub.v1beta1.GkeCluster} GkeCluster instance + */ + GkeCluster.create = function create(properties) { + return new GkeCluster(properties); + }; - /** - * Encodes the specified MethodDescriptorProto message. Does not implicitly {@link google.protobuf.MethodDescriptorProto.verify|verify} messages. - * @function encode - * @memberof google.protobuf.MethodDescriptorProto - * @static - * @param {google.protobuf.IMethodDescriptorProto} message MethodDescriptorProto message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - MethodDescriptorProto.encode = function encode(message, writer) { - if (!writer) - writer = $Writer.create(); - if (message.name != null && Object.hasOwnProperty.call(message, "name")) - writer.uint32(/* id 1, wireType 2 =*/10).string(message.name); - if (message.inputType != null && Object.hasOwnProperty.call(message, "inputType")) - writer.uint32(/* id 2, wireType 2 =*/18).string(message.inputType); - if (message.outputType != null && Object.hasOwnProperty.call(message, "outputType")) - writer.uint32(/* id 3, wireType 2 =*/26).string(message.outputType); - if (message.options != null && Object.hasOwnProperty.call(message, "options")) - $root.google.protobuf.MethodOptions.encode(message.options, writer.uint32(/* id 4, wireType 2 =*/34).fork()).ldelim(); - if (message.clientStreaming != null && Object.hasOwnProperty.call(message, "clientStreaming")) - writer.uint32(/* id 5, wireType 0 =*/40).bool(message.clientStreaming); - if (message.serverStreaming != null && Object.hasOwnProperty.call(message, "serverStreaming")) - writer.uint32(/* id 6, wireType 0 =*/48).bool(message.serverStreaming); - return writer; - }; + /** + * Encodes the specified GkeCluster message. Does not implicitly {@link google.cloud.gkehub.v1beta1.GkeCluster.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.v1beta1.GkeCluster + * @static + * @param {google.cloud.gkehub.v1beta1.IGkeCluster} message GkeCluster message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + GkeCluster.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.resourceLink != null && Object.hasOwnProperty.call(message, "resourceLink")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.resourceLink); + return writer; + }; - /** - * Encodes the specified MethodDescriptorProto message, length delimited. Does not implicitly {@link google.protobuf.MethodDescriptorProto.verify|verify} messages. - * @function encodeDelimited - * @memberof google.protobuf.MethodDescriptorProto - * @static - * @param {google.protobuf.IMethodDescriptorProto} message MethodDescriptorProto message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - MethodDescriptorProto.encodeDelimited = function encodeDelimited(message, writer) { - return this.encode(message, writer).ldelim(); - }; + /** + * Encodes the specified GkeCluster message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta1.GkeCluster.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.v1beta1.GkeCluster + * @static + * @param {google.cloud.gkehub.v1beta1.IGkeCluster} message GkeCluster message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + GkeCluster.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; - /** - * Decodes a MethodDescriptorProto message from the specified reader or buffer. - * @function decode - * @memberof google.protobuf.MethodDescriptorProto - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @param {number} [length] Message length if known beforehand - * @returns {google.protobuf.MethodDescriptorProto} MethodDescriptorProto - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - MethodDescriptorProto.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.protobuf.MethodDescriptorProto(); - while (reader.pos < end) { - var tag = reader.uint32(); - switch (tag >>> 3) { - case 1: - message.name = reader.string(); - break; - case 2: - message.inputType = reader.string(); - break; - case 3: - message.outputType = reader.string(); - break; - case 4: - message.options = $root.google.protobuf.MethodOptions.decode(reader, reader.uint32()); - break; - case 5: - message.clientStreaming = reader.bool(); - break; - case 6: - message.serverStreaming = reader.bool(); - break; - default: - reader.skipType(tag & 7); - break; - } - } - return message; - }; + /** + * Decodes a GkeCluster message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.v1beta1.GkeCluster + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.v1beta1.GkeCluster} GkeCluster + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + GkeCluster.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.v1beta1.GkeCluster(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.resourceLink = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a GkeCluster message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.v1beta1.GkeCluster + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.v1beta1.GkeCluster} GkeCluster + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + GkeCluster.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; - /** - * Decodes a MethodDescriptorProto message from the specified reader or buffer, length delimited. - * @function decodeDelimited - * @memberof google.protobuf.MethodDescriptorProto - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {google.protobuf.MethodDescriptorProto} MethodDescriptorProto - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - MethodDescriptorProto.decodeDelimited = function decodeDelimited(reader) { - if (!(reader instanceof $Reader)) - reader = new $Reader(reader); - return this.decode(reader, reader.uint32()); - }; + /** + * Verifies a GkeCluster message. + * @function verify + * @memberof google.cloud.gkehub.v1beta1.GkeCluster + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + GkeCluster.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.resourceLink != null && message.hasOwnProperty("resourceLink")) + if (!$util.isString(message.resourceLink)) + return "resourceLink: string expected"; + return null; + }; - /** - * Verifies a MethodDescriptorProto message. - * @function verify - * @memberof google.protobuf.MethodDescriptorProto - * @static - * @param {Object.} message Plain object to verify - * @returns {string|null} `null` if valid, otherwise the reason why it is not - */ - MethodDescriptorProto.verify = function verify(message) { - if (typeof message !== "object" || message === null) - return "object expected"; - if (message.name != null && message.hasOwnProperty("name")) - if (!$util.isString(message.name)) - return "name: string expected"; - if (message.inputType != null && message.hasOwnProperty("inputType")) - if (!$util.isString(message.inputType)) - return "inputType: string expected"; - if (message.outputType != null && message.hasOwnProperty("outputType")) - if (!$util.isString(message.outputType)) - return "outputType: string expected"; - if (message.options != null && message.hasOwnProperty("options")) { - var error = $root.google.protobuf.MethodOptions.verify(message.options); - if (error) - return "options." + error; - } - if (message.clientStreaming != null && message.hasOwnProperty("clientStreaming")) - if (typeof message.clientStreaming !== "boolean") - return "clientStreaming: boolean expected"; - if (message.serverStreaming != null && message.hasOwnProperty("serverStreaming")) - if (typeof message.serverStreaming !== "boolean") - return "serverStreaming: boolean expected"; - return null; - }; + /** + * Creates a GkeCluster message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.v1beta1.GkeCluster + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.v1beta1.GkeCluster} GkeCluster + */ + GkeCluster.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.v1beta1.GkeCluster) + return object; + var message = new $root.google.cloud.gkehub.v1beta1.GkeCluster(); + if (object.resourceLink != null) + message.resourceLink = String(object.resourceLink); + return message; + }; - /** - * Creates a MethodDescriptorProto message from a plain object. Also converts values to their respective internal types. - * @function fromObject - * @memberof google.protobuf.MethodDescriptorProto - * @static - * @param {Object.} object Plain object - * @returns {google.protobuf.MethodDescriptorProto} MethodDescriptorProto - */ - MethodDescriptorProto.fromObject = function fromObject(object) { - if (object instanceof $root.google.protobuf.MethodDescriptorProto) - return object; - var message = new $root.google.protobuf.MethodDescriptorProto(); - if (object.name != null) - message.name = String(object.name); - if (object.inputType != null) - message.inputType = String(object.inputType); - if (object.outputType != null) - message.outputType = String(object.outputType); - if (object.options != null) { - if (typeof object.options !== "object") - throw TypeError(".google.protobuf.MethodDescriptorProto.options: object expected"); - message.options = $root.google.protobuf.MethodOptions.fromObject(object.options); - } - if (object.clientStreaming != null) - message.clientStreaming = Boolean(object.clientStreaming); - if (object.serverStreaming != null) - message.serverStreaming = Boolean(object.serverStreaming); - return message; - }; + /** + * Creates a plain object from a GkeCluster message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.v1beta1.GkeCluster + * @static + * @param {google.cloud.gkehub.v1beta1.GkeCluster} message GkeCluster + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + GkeCluster.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) + object.resourceLink = ""; + if (message.resourceLink != null && message.hasOwnProperty("resourceLink")) + object.resourceLink = message.resourceLink; + return object; + }; - /** - * Creates a plain object from a MethodDescriptorProto message. Also converts values to other types if specified. - * @function toObject - * @memberof google.protobuf.MethodDescriptorProto - * @static - * @param {google.protobuf.MethodDescriptorProto} message MethodDescriptorProto - * @param {$protobuf.IConversionOptions} [options] Conversion options - * @returns {Object.} Plain object - */ - MethodDescriptorProto.toObject = function toObject(message, options) { - if (!options) - options = {}; - var object = {}; - if (options.defaults) { - object.name = ""; - object.inputType = ""; - object.outputType = ""; - object.options = null; - object.clientStreaming = false; - object.serverStreaming = false; - } - if (message.name != null && message.hasOwnProperty("name")) - object.name = message.name; - if (message.inputType != null && message.hasOwnProperty("inputType")) - object.inputType = message.inputType; - if (message.outputType != null && message.hasOwnProperty("outputType")) - object.outputType = message.outputType; - if (message.options != null && message.hasOwnProperty("options")) - object.options = $root.google.protobuf.MethodOptions.toObject(message.options, options); - if (message.clientStreaming != null && message.hasOwnProperty("clientStreaming")) - object.clientStreaming = message.clientStreaming; - if (message.serverStreaming != null && message.hasOwnProperty("serverStreaming")) - object.serverStreaming = message.serverStreaming; - return object; - }; + /** + * Converts this GkeCluster to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.v1beta1.GkeCluster + * @instance + * @returns {Object.} JSON object + */ + GkeCluster.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; - /** - * Converts this MethodDescriptorProto to JSON. - * @function toJSON - * @memberof google.protobuf.MethodDescriptorProto - * @instance - * @returns {Object.} JSON object - */ - MethodDescriptorProto.prototype.toJSON = function toJSON() { - return this.constructor.toObject(this, $protobuf.util.toJSONOptions); - }; + return GkeCluster; + })(); - return MethodDescriptorProto; - })(); + v1beta1.KubernetesMetadata = (function() { - protobuf.FileOptions = (function() { + /** + * Properties of a KubernetesMetadata. + * @memberof google.cloud.gkehub.v1beta1 + * @interface IKubernetesMetadata + * @property {string|null} [kubernetesApiServerVersion] KubernetesMetadata kubernetesApiServerVersion + * @property {string|null} [nodeProviderId] KubernetesMetadata nodeProviderId + * @property {number|null} [nodeCount] KubernetesMetadata nodeCount + * @property {number|null} [vcpuCount] KubernetesMetadata vcpuCount + * @property {number|null} [memoryMb] KubernetesMetadata memoryMb + * @property {google.protobuf.ITimestamp|null} [updateTime] KubernetesMetadata updateTime + */ - /** - * Properties of a FileOptions. - * @memberof google.protobuf - * @interface IFileOptions - * @property {string|null} [javaPackage] FileOptions javaPackage - * @property {string|null} [javaOuterClassname] FileOptions javaOuterClassname - * @property {boolean|null} [javaMultipleFiles] FileOptions javaMultipleFiles - * @property {boolean|null} [javaGenerateEqualsAndHash] FileOptions javaGenerateEqualsAndHash - * @property {boolean|null} [javaStringCheckUtf8] FileOptions javaStringCheckUtf8 - * @property {google.protobuf.FileOptions.OptimizeMode|null} [optimizeFor] FileOptions optimizeFor - * @property {string|null} [goPackage] FileOptions goPackage - * @property {boolean|null} [ccGenericServices] FileOptions ccGenericServices - * @property {boolean|null} [javaGenericServices] FileOptions javaGenericServices - * @property {boolean|null} [pyGenericServices] FileOptions pyGenericServices - * @property {boolean|null} [phpGenericServices] FileOptions phpGenericServices - * @property {boolean|null} [deprecated] FileOptions deprecated - * @property {boolean|null} [ccEnableArenas] FileOptions ccEnableArenas - * @property {string|null} [objcClassPrefix] FileOptions objcClassPrefix - * @property {string|null} [csharpNamespace] FileOptions csharpNamespace - * @property {string|null} [swiftPrefix] FileOptions swiftPrefix - * @property {string|null} [phpClassPrefix] FileOptions phpClassPrefix - * @property {string|null} [phpNamespace] FileOptions phpNamespace - * @property {string|null} [phpMetadataNamespace] FileOptions phpMetadataNamespace - * @property {string|null} [rubyPackage] FileOptions rubyPackage - * @property {Array.|null} [uninterpretedOption] FileOptions uninterpretedOption - * @property {Array.|null} [".google.api.resourceDefinition"] FileOptions .google.api.resourceDefinition - */ + /** + * Constructs a new KubernetesMetadata. + * @memberof google.cloud.gkehub.v1beta1 + * @classdesc Represents a KubernetesMetadata. + * @implements IKubernetesMetadata + * @constructor + * @param {google.cloud.gkehub.v1beta1.IKubernetesMetadata=} [properties] Properties to set + */ + function KubernetesMetadata(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]]; + } + + /** + * KubernetesMetadata kubernetesApiServerVersion. + * @member {string} kubernetesApiServerVersion + * @memberof google.cloud.gkehub.v1beta1.KubernetesMetadata + * @instance + */ + KubernetesMetadata.prototype.kubernetesApiServerVersion = ""; - /** - * Constructs a new FileOptions. - * @memberof google.protobuf - * @classdesc Represents a FileOptions. - * @implements IFileOptions - * @constructor - * @param {google.protobuf.IFileOptions=} [properties] Properties to set - */ - function FileOptions(properties) { - this.uninterpretedOption = []; - this[".google.api.resourceDefinition"] = []; - 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]]; - } + /** + * KubernetesMetadata nodeProviderId. + * @member {string} nodeProviderId + * @memberof google.cloud.gkehub.v1beta1.KubernetesMetadata + * @instance + */ + KubernetesMetadata.prototype.nodeProviderId = ""; - /** - * FileOptions javaPackage. - * @member {string} javaPackage - * @memberof google.protobuf.FileOptions - * @instance - */ - FileOptions.prototype.javaPackage = ""; + /** + * KubernetesMetadata nodeCount. + * @member {number} nodeCount + * @memberof google.cloud.gkehub.v1beta1.KubernetesMetadata + * @instance + */ + KubernetesMetadata.prototype.nodeCount = 0; - /** - * FileOptions javaOuterClassname. - * @member {string} javaOuterClassname - * @memberof google.protobuf.FileOptions - * @instance - */ - FileOptions.prototype.javaOuterClassname = ""; + /** + * KubernetesMetadata vcpuCount. + * @member {number} vcpuCount + * @memberof google.cloud.gkehub.v1beta1.KubernetesMetadata + * @instance + */ + KubernetesMetadata.prototype.vcpuCount = 0; - /** - * FileOptions javaMultipleFiles. - * @member {boolean} javaMultipleFiles - * @memberof google.protobuf.FileOptions - * @instance - */ - FileOptions.prototype.javaMultipleFiles = false; + /** + * KubernetesMetadata memoryMb. + * @member {number} memoryMb + * @memberof google.cloud.gkehub.v1beta1.KubernetesMetadata + * @instance + */ + KubernetesMetadata.prototype.memoryMb = 0; - /** - * FileOptions javaGenerateEqualsAndHash. - * @member {boolean} javaGenerateEqualsAndHash - * @memberof google.protobuf.FileOptions - * @instance - */ - FileOptions.prototype.javaGenerateEqualsAndHash = false; + /** + * KubernetesMetadata updateTime. + * @member {google.protobuf.ITimestamp|null|undefined} updateTime + * @memberof google.cloud.gkehub.v1beta1.KubernetesMetadata + * @instance + */ + KubernetesMetadata.prototype.updateTime = null; - /** - * FileOptions javaStringCheckUtf8. - * @member {boolean} javaStringCheckUtf8 - * @memberof google.protobuf.FileOptions - * @instance - */ - FileOptions.prototype.javaStringCheckUtf8 = false; + /** + * Creates a new KubernetesMetadata instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.v1beta1.KubernetesMetadata + * @static + * @param {google.cloud.gkehub.v1beta1.IKubernetesMetadata=} [properties] Properties to set + * @returns {google.cloud.gkehub.v1beta1.KubernetesMetadata} KubernetesMetadata instance + */ + KubernetesMetadata.create = function create(properties) { + return new KubernetesMetadata(properties); + }; - /** - * FileOptions optimizeFor. - * @member {google.protobuf.FileOptions.OptimizeMode} optimizeFor - * @memberof google.protobuf.FileOptions - * @instance - */ - FileOptions.prototype.optimizeFor = 1; + /** + * Encodes the specified KubernetesMetadata message. Does not implicitly {@link google.cloud.gkehub.v1beta1.KubernetesMetadata.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.v1beta1.KubernetesMetadata + * @static + * @param {google.cloud.gkehub.v1beta1.IKubernetesMetadata} message KubernetesMetadata message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + KubernetesMetadata.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.kubernetesApiServerVersion != null && Object.hasOwnProperty.call(message, "kubernetesApiServerVersion")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.kubernetesApiServerVersion); + if (message.nodeProviderId != null && Object.hasOwnProperty.call(message, "nodeProviderId")) + writer.uint32(/* id 2, wireType 2 =*/18).string(message.nodeProviderId); + if (message.nodeCount != null && Object.hasOwnProperty.call(message, "nodeCount")) + writer.uint32(/* id 3, wireType 0 =*/24).int32(message.nodeCount); + if (message.vcpuCount != null && Object.hasOwnProperty.call(message, "vcpuCount")) + writer.uint32(/* id 4, wireType 0 =*/32).int32(message.vcpuCount); + if (message.memoryMb != null && Object.hasOwnProperty.call(message, "memoryMb")) + writer.uint32(/* id 5, wireType 0 =*/40).int32(message.memoryMb); + if (message.updateTime != null && Object.hasOwnProperty.call(message, "updateTime")) + $root.google.protobuf.Timestamp.encode(message.updateTime, writer.uint32(/* id 100, wireType 2 =*/802).fork()).ldelim(); + return writer; + }; - /** - * FileOptions goPackage. - * @member {string} goPackage - * @memberof google.protobuf.FileOptions - * @instance - */ - FileOptions.prototype.goPackage = ""; + /** + * Encodes the specified KubernetesMetadata message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta1.KubernetesMetadata.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.v1beta1.KubernetesMetadata + * @static + * @param {google.cloud.gkehub.v1beta1.IKubernetesMetadata} message KubernetesMetadata message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + KubernetesMetadata.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; - /** - * FileOptions ccGenericServices. - * @member {boolean} ccGenericServices - * @memberof google.protobuf.FileOptions - * @instance - */ - FileOptions.prototype.ccGenericServices = false; + /** + * Decodes a KubernetesMetadata message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.v1beta1.KubernetesMetadata + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.v1beta1.KubernetesMetadata} KubernetesMetadata + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + KubernetesMetadata.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.v1beta1.KubernetesMetadata(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.kubernetesApiServerVersion = reader.string(); + break; + case 2: + message.nodeProviderId = reader.string(); + break; + case 3: + message.nodeCount = reader.int32(); + break; + case 4: + message.vcpuCount = reader.int32(); + break; + case 5: + message.memoryMb = reader.int32(); + break; + case 100: + message.updateTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; - /** - * FileOptions javaGenericServices. - * @member {boolean} javaGenericServices - * @memberof google.protobuf.FileOptions - * @instance - */ - FileOptions.prototype.javaGenericServices = false; + /** + * Decodes a KubernetesMetadata message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.v1beta1.KubernetesMetadata + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.v1beta1.KubernetesMetadata} KubernetesMetadata + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + KubernetesMetadata.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; - /** - * FileOptions pyGenericServices. - * @member {boolean} pyGenericServices - * @memberof google.protobuf.FileOptions - * @instance - */ - FileOptions.prototype.pyGenericServices = false; + /** + * Verifies a KubernetesMetadata message. + * @function verify + * @memberof google.cloud.gkehub.v1beta1.KubernetesMetadata + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + KubernetesMetadata.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.kubernetesApiServerVersion != null && message.hasOwnProperty("kubernetesApiServerVersion")) + if (!$util.isString(message.kubernetesApiServerVersion)) + return "kubernetesApiServerVersion: string expected"; + if (message.nodeProviderId != null && message.hasOwnProperty("nodeProviderId")) + if (!$util.isString(message.nodeProviderId)) + return "nodeProviderId: string expected"; + if (message.nodeCount != null && message.hasOwnProperty("nodeCount")) + if (!$util.isInteger(message.nodeCount)) + return "nodeCount: integer expected"; + if (message.vcpuCount != null && message.hasOwnProperty("vcpuCount")) + if (!$util.isInteger(message.vcpuCount)) + return "vcpuCount: integer expected"; + if (message.memoryMb != null && message.hasOwnProperty("memoryMb")) + if (!$util.isInteger(message.memoryMb)) + return "memoryMb: integer expected"; + if (message.updateTime != null && message.hasOwnProperty("updateTime")) { + var error = $root.google.protobuf.Timestamp.verify(message.updateTime); + if (error) + return "updateTime." + error; + } + return null; + }; - /** - * FileOptions phpGenericServices. - * @member {boolean} phpGenericServices - * @memberof google.protobuf.FileOptions - * @instance - */ - FileOptions.prototype.phpGenericServices = false; + /** + * Creates a KubernetesMetadata message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.v1beta1.KubernetesMetadata + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.v1beta1.KubernetesMetadata} KubernetesMetadata + */ + KubernetesMetadata.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.v1beta1.KubernetesMetadata) + return object; + var message = new $root.google.cloud.gkehub.v1beta1.KubernetesMetadata(); + if (object.kubernetesApiServerVersion != null) + message.kubernetesApiServerVersion = String(object.kubernetesApiServerVersion); + if (object.nodeProviderId != null) + message.nodeProviderId = String(object.nodeProviderId); + if (object.nodeCount != null) + message.nodeCount = object.nodeCount | 0; + if (object.vcpuCount != null) + message.vcpuCount = object.vcpuCount | 0; + if (object.memoryMb != null) + message.memoryMb = object.memoryMb | 0; + if (object.updateTime != null) { + if (typeof object.updateTime !== "object") + throw TypeError(".google.cloud.gkehub.v1beta1.KubernetesMetadata.updateTime: object expected"); + message.updateTime = $root.google.protobuf.Timestamp.fromObject(object.updateTime); + } + return message; + }; - /** - * FileOptions deprecated. - * @member {boolean} deprecated - * @memberof google.protobuf.FileOptions - * @instance - */ - FileOptions.prototype.deprecated = false; + /** + * Creates a plain object from a KubernetesMetadata message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.v1beta1.KubernetesMetadata + * @static + * @param {google.cloud.gkehub.v1beta1.KubernetesMetadata} message KubernetesMetadata + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + KubernetesMetadata.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.kubernetesApiServerVersion = ""; + object.nodeProviderId = ""; + object.nodeCount = 0; + object.vcpuCount = 0; + object.memoryMb = 0; + object.updateTime = null; + } + if (message.kubernetesApiServerVersion != null && message.hasOwnProperty("kubernetesApiServerVersion")) + object.kubernetesApiServerVersion = message.kubernetesApiServerVersion; + if (message.nodeProviderId != null && message.hasOwnProperty("nodeProviderId")) + object.nodeProviderId = message.nodeProviderId; + if (message.nodeCount != null && message.hasOwnProperty("nodeCount")) + object.nodeCount = message.nodeCount; + if (message.vcpuCount != null && message.hasOwnProperty("vcpuCount")) + object.vcpuCount = message.vcpuCount; + if (message.memoryMb != null && message.hasOwnProperty("memoryMb")) + object.memoryMb = message.memoryMb; + if (message.updateTime != null && message.hasOwnProperty("updateTime")) + object.updateTime = $root.google.protobuf.Timestamp.toObject(message.updateTime, options); + return object; + }; - /** - * FileOptions ccEnableArenas. - * @member {boolean} ccEnableArenas - * @memberof google.protobuf.FileOptions - * @instance - */ - FileOptions.prototype.ccEnableArenas = true; + /** + * Converts this KubernetesMetadata to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.v1beta1.KubernetesMetadata + * @instance + * @returns {Object.} JSON object + */ + KubernetesMetadata.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; - /** - * FileOptions objcClassPrefix. - * @member {string} objcClassPrefix - * @memberof google.protobuf.FileOptions - * @instance - */ - FileOptions.prototype.objcClassPrefix = ""; + return KubernetesMetadata; + })(); - /** - * FileOptions csharpNamespace. - * @member {string} csharpNamespace - * @memberof google.protobuf.FileOptions - * @instance - */ - FileOptions.prototype.csharpNamespace = ""; + v1beta1.Authority = (function() { - /** - * FileOptions swiftPrefix. - * @member {string} swiftPrefix - * @memberof google.protobuf.FileOptions - * @instance - */ - FileOptions.prototype.swiftPrefix = ""; + /** + * Properties of an Authority. + * @memberof google.cloud.gkehub.v1beta1 + * @interface IAuthority + * @property {string|null} [issuer] Authority issuer + * @property {string|null} [workloadIdentityPool] Authority workloadIdentityPool + * @property {string|null} [identityProvider] Authority identityProvider + * @property {Uint8Array|null} [oidcJwks] Authority oidcJwks + */ - /** - * FileOptions phpClassPrefix. - * @member {string} phpClassPrefix - * @memberof google.protobuf.FileOptions - * @instance - */ - FileOptions.prototype.phpClassPrefix = ""; + /** + * Constructs a new Authority. + * @memberof google.cloud.gkehub.v1beta1 + * @classdesc Represents an Authority. + * @implements IAuthority + * @constructor + * @param {google.cloud.gkehub.v1beta1.IAuthority=} [properties] Properties to set + */ + function Authority(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]]; + } - /** - * FileOptions phpNamespace. - * @member {string} phpNamespace - * @memberof google.protobuf.FileOptions - * @instance - */ - FileOptions.prototype.phpNamespace = ""; + /** + * Authority issuer. + * @member {string} issuer + * @memberof google.cloud.gkehub.v1beta1.Authority + * @instance + */ + Authority.prototype.issuer = ""; - /** - * FileOptions phpMetadataNamespace. - * @member {string} phpMetadataNamespace - * @memberof google.protobuf.FileOptions - * @instance - */ - FileOptions.prototype.phpMetadataNamespace = ""; + /** + * Authority workloadIdentityPool. + * @member {string} workloadIdentityPool + * @memberof google.cloud.gkehub.v1beta1.Authority + * @instance + */ + Authority.prototype.workloadIdentityPool = ""; - /** - * FileOptions rubyPackage. - * @member {string} rubyPackage - * @memberof google.protobuf.FileOptions - * @instance - */ - FileOptions.prototype.rubyPackage = ""; + /** + * Authority identityProvider. + * @member {string} identityProvider + * @memberof google.cloud.gkehub.v1beta1.Authority + * @instance + */ + Authority.prototype.identityProvider = ""; - /** - * FileOptions uninterpretedOption. - * @member {Array.} uninterpretedOption - * @memberof google.protobuf.FileOptions - * @instance - */ - FileOptions.prototype.uninterpretedOption = $util.emptyArray; + /** + * Authority oidcJwks. + * @member {Uint8Array} oidcJwks + * @memberof google.cloud.gkehub.v1beta1.Authority + * @instance + */ + Authority.prototype.oidcJwks = $util.newBuffer([]); - /** - * FileOptions .google.api.resourceDefinition. - * @member {Array.} .google.api.resourceDefinition - * @memberof google.protobuf.FileOptions - * @instance - */ - FileOptions.prototype[".google.api.resourceDefinition"] = $util.emptyArray; + /** + * Creates a new Authority instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.v1beta1.Authority + * @static + * @param {google.cloud.gkehub.v1beta1.IAuthority=} [properties] Properties to set + * @returns {google.cloud.gkehub.v1beta1.Authority} Authority instance + */ + Authority.create = function create(properties) { + return new Authority(properties); + }; - /** - * Creates a new FileOptions instance using the specified properties. - * @function create - * @memberof google.protobuf.FileOptions - * @static - * @param {google.protobuf.IFileOptions=} [properties] Properties to set - * @returns {google.protobuf.FileOptions} FileOptions instance - */ - FileOptions.create = function create(properties) { - return new FileOptions(properties); - }; + /** + * Encodes the specified Authority message. Does not implicitly {@link google.cloud.gkehub.v1beta1.Authority.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.v1beta1.Authority + * @static + * @param {google.cloud.gkehub.v1beta1.IAuthority} message Authority message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + Authority.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.issuer != null && Object.hasOwnProperty.call(message, "issuer")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.issuer); + if (message.workloadIdentityPool != null && Object.hasOwnProperty.call(message, "workloadIdentityPool")) + writer.uint32(/* id 2, wireType 2 =*/18).string(message.workloadIdentityPool); + if (message.identityProvider != null && Object.hasOwnProperty.call(message, "identityProvider")) + writer.uint32(/* id 3, wireType 2 =*/26).string(message.identityProvider); + if (message.oidcJwks != null && Object.hasOwnProperty.call(message, "oidcJwks")) + writer.uint32(/* id 4, wireType 2 =*/34).bytes(message.oidcJwks); + return writer; + }; - /** - * Encodes the specified FileOptions message. Does not implicitly {@link google.protobuf.FileOptions.verify|verify} messages. - * @function encode - * @memberof google.protobuf.FileOptions - * @static - * @param {google.protobuf.IFileOptions} message FileOptions message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - FileOptions.encode = function encode(message, writer) { - if (!writer) - writer = $Writer.create(); - if (message.javaPackage != null && Object.hasOwnProperty.call(message, "javaPackage")) - writer.uint32(/* id 1, wireType 2 =*/10).string(message.javaPackage); - if (message.javaOuterClassname != null && Object.hasOwnProperty.call(message, "javaOuterClassname")) - writer.uint32(/* id 8, wireType 2 =*/66).string(message.javaOuterClassname); - if (message.optimizeFor != null && Object.hasOwnProperty.call(message, "optimizeFor")) - writer.uint32(/* id 9, wireType 0 =*/72).int32(message.optimizeFor); - if (message.javaMultipleFiles != null && Object.hasOwnProperty.call(message, "javaMultipleFiles")) - writer.uint32(/* id 10, wireType 0 =*/80).bool(message.javaMultipleFiles); - if (message.goPackage != null && Object.hasOwnProperty.call(message, "goPackage")) - writer.uint32(/* id 11, wireType 2 =*/90).string(message.goPackage); - if (message.ccGenericServices != null && Object.hasOwnProperty.call(message, "ccGenericServices")) - writer.uint32(/* id 16, wireType 0 =*/128).bool(message.ccGenericServices); - if (message.javaGenericServices != null && Object.hasOwnProperty.call(message, "javaGenericServices")) - writer.uint32(/* id 17, wireType 0 =*/136).bool(message.javaGenericServices); - if (message.pyGenericServices != null && Object.hasOwnProperty.call(message, "pyGenericServices")) - writer.uint32(/* id 18, wireType 0 =*/144).bool(message.pyGenericServices); - if (message.javaGenerateEqualsAndHash != null && Object.hasOwnProperty.call(message, "javaGenerateEqualsAndHash")) - writer.uint32(/* id 20, wireType 0 =*/160).bool(message.javaGenerateEqualsAndHash); - if (message.deprecated != null && Object.hasOwnProperty.call(message, "deprecated")) - writer.uint32(/* id 23, wireType 0 =*/184).bool(message.deprecated); - if (message.javaStringCheckUtf8 != null && Object.hasOwnProperty.call(message, "javaStringCheckUtf8")) - writer.uint32(/* id 27, wireType 0 =*/216).bool(message.javaStringCheckUtf8); - if (message.ccEnableArenas != null && Object.hasOwnProperty.call(message, "ccEnableArenas")) - writer.uint32(/* id 31, wireType 0 =*/248).bool(message.ccEnableArenas); - if (message.objcClassPrefix != null && Object.hasOwnProperty.call(message, "objcClassPrefix")) - writer.uint32(/* id 36, wireType 2 =*/290).string(message.objcClassPrefix); - if (message.csharpNamespace != null && Object.hasOwnProperty.call(message, "csharpNamespace")) - writer.uint32(/* id 37, wireType 2 =*/298).string(message.csharpNamespace); - if (message.swiftPrefix != null && Object.hasOwnProperty.call(message, "swiftPrefix")) - writer.uint32(/* id 39, wireType 2 =*/314).string(message.swiftPrefix); - if (message.phpClassPrefix != null && Object.hasOwnProperty.call(message, "phpClassPrefix")) - writer.uint32(/* id 40, wireType 2 =*/322).string(message.phpClassPrefix); - if (message.phpNamespace != null && Object.hasOwnProperty.call(message, "phpNamespace")) - writer.uint32(/* id 41, wireType 2 =*/330).string(message.phpNamespace); - if (message.phpGenericServices != null && Object.hasOwnProperty.call(message, "phpGenericServices")) - writer.uint32(/* id 42, wireType 0 =*/336).bool(message.phpGenericServices); - if (message.phpMetadataNamespace != null && Object.hasOwnProperty.call(message, "phpMetadataNamespace")) - writer.uint32(/* id 44, wireType 2 =*/354).string(message.phpMetadataNamespace); - if (message.rubyPackage != null && Object.hasOwnProperty.call(message, "rubyPackage")) - writer.uint32(/* id 45, wireType 2 =*/362).string(message.rubyPackage); - if (message.uninterpretedOption != null && message.uninterpretedOption.length) - for (var i = 0; i < message.uninterpretedOption.length; ++i) - $root.google.protobuf.UninterpretedOption.encode(message.uninterpretedOption[i], writer.uint32(/* id 999, wireType 2 =*/7994).fork()).ldelim(); - if (message[".google.api.resourceDefinition"] != null && message[".google.api.resourceDefinition"].length) - for (var i = 0; i < message[".google.api.resourceDefinition"].length; ++i) - $root.google.api.ResourceDescriptor.encode(message[".google.api.resourceDefinition"][i], writer.uint32(/* id 1053, wireType 2 =*/8426).fork()).ldelim(); - return writer; - }; + /** + * Encodes the specified Authority message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta1.Authority.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.v1beta1.Authority + * @static + * @param {google.cloud.gkehub.v1beta1.IAuthority} message Authority message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + Authority.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; - /** - * Encodes the specified FileOptions message, length delimited. Does not implicitly {@link google.protobuf.FileOptions.verify|verify} messages. - * @function encodeDelimited - * @memberof google.protobuf.FileOptions - * @static - * @param {google.protobuf.IFileOptions} message FileOptions message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - FileOptions.encodeDelimited = function encodeDelimited(message, writer) { - return this.encode(message, writer).ldelim(); - }; + /** + * Decodes an Authority message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.v1beta1.Authority + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.v1beta1.Authority} Authority + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + Authority.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.v1beta1.Authority(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.issuer = reader.string(); + break; + case 2: + message.workloadIdentityPool = reader.string(); + break; + case 3: + message.identityProvider = reader.string(); + break; + case 4: + message.oidcJwks = reader.bytes(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; - /** - * Decodes a FileOptions message from the specified reader or buffer. - * @function decode - * @memberof google.protobuf.FileOptions - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @param {number} [length] Message length if known beforehand - * @returns {google.protobuf.FileOptions} FileOptions - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - FileOptions.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.protobuf.FileOptions(); - while (reader.pos < end) { - var tag = reader.uint32(); - switch (tag >>> 3) { - case 1: - message.javaPackage = reader.string(); - break; - case 8: - message.javaOuterClassname = reader.string(); - break; - case 10: - message.javaMultipleFiles = reader.bool(); - break; - case 20: - message.javaGenerateEqualsAndHash = reader.bool(); - break; - case 27: - message.javaStringCheckUtf8 = reader.bool(); - break; - case 9: - message.optimizeFor = reader.int32(); - break; - case 11: - message.goPackage = reader.string(); - break; - case 16: - message.ccGenericServices = reader.bool(); - break; - case 17: - message.javaGenericServices = reader.bool(); - break; - case 18: - message.pyGenericServices = reader.bool(); - break; - case 42: - message.phpGenericServices = reader.bool(); - break; - case 23: - message.deprecated = reader.bool(); - break; - case 31: - message.ccEnableArenas = reader.bool(); - break; - case 36: - message.objcClassPrefix = reader.string(); - break; - case 37: - message.csharpNamespace = reader.string(); - break; - case 39: - message.swiftPrefix = reader.string(); - break; - case 40: - message.phpClassPrefix = reader.string(); - break; - case 41: - message.phpNamespace = reader.string(); - break; - case 44: - message.phpMetadataNamespace = reader.string(); - break; - case 45: - message.rubyPackage = reader.string(); - break; - case 999: - if (!(message.uninterpretedOption && message.uninterpretedOption.length)) - message.uninterpretedOption = []; - message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32())); - break; - case 1053: - if (!(message[".google.api.resourceDefinition"] && message[".google.api.resourceDefinition"].length)) - message[".google.api.resourceDefinition"] = []; - message[".google.api.resourceDefinition"].push($root.google.api.ResourceDescriptor.decode(reader, reader.uint32())); - break; - default: - reader.skipType(tag & 7); - break; - } - } - return message; - }; + /** + * Decodes an Authority message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.v1beta1.Authority + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.v1beta1.Authority} Authority + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + Authority.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; - /** - * Decodes a FileOptions message from the specified reader or buffer, length delimited. - * @function decodeDelimited - * @memberof google.protobuf.FileOptions - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {google.protobuf.FileOptions} FileOptions - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - FileOptions.decodeDelimited = function decodeDelimited(reader) { - if (!(reader instanceof $Reader)) - reader = new $Reader(reader); - return this.decode(reader, reader.uint32()); - }; + /** + * Verifies an Authority message. + * @function verify + * @memberof google.cloud.gkehub.v1beta1.Authority + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + Authority.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.issuer != null && message.hasOwnProperty("issuer")) + if (!$util.isString(message.issuer)) + return "issuer: string expected"; + if (message.workloadIdentityPool != null && message.hasOwnProperty("workloadIdentityPool")) + if (!$util.isString(message.workloadIdentityPool)) + return "workloadIdentityPool: string expected"; + if (message.identityProvider != null && message.hasOwnProperty("identityProvider")) + if (!$util.isString(message.identityProvider)) + return "identityProvider: string expected"; + if (message.oidcJwks != null && message.hasOwnProperty("oidcJwks")) + if (!(message.oidcJwks && typeof message.oidcJwks.length === "number" || $util.isString(message.oidcJwks))) + return "oidcJwks: buffer expected"; + return null; + }; - /** - * Verifies a FileOptions message. - * @function verify - * @memberof google.protobuf.FileOptions - * @static - * @param {Object.} message Plain object to verify - * @returns {string|null} `null` if valid, otherwise the reason why it is not - */ - FileOptions.verify = function verify(message) { - if (typeof message !== "object" || message === null) - return "object expected"; - if (message.javaPackage != null && message.hasOwnProperty("javaPackage")) - if (!$util.isString(message.javaPackage)) - return "javaPackage: string expected"; - if (message.javaOuterClassname != null && message.hasOwnProperty("javaOuterClassname")) - if (!$util.isString(message.javaOuterClassname)) - return "javaOuterClassname: string expected"; - if (message.javaMultipleFiles != null && message.hasOwnProperty("javaMultipleFiles")) - if (typeof message.javaMultipleFiles !== "boolean") - return "javaMultipleFiles: boolean expected"; - if (message.javaGenerateEqualsAndHash != null && message.hasOwnProperty("javaGenerateEqualsAndHash")) - if (typeof message.javaGenerateEqualsAndHash !== "boolean") - return "javaGenerateEqualsAndHash: boolean expected"; - if (message.javaStringCheckUtf8 != null && message.hasOwnProperty("javaStringCheckUtf8")) - if (typeof message.javaStringCheckUtf8 !== "boolean") - return "javaStringCheckUtf8: boolean expected"; - if (message.optimizeFor != null && message.hasOwnProperty("optimizeFor")) - switch (message.optimizeFor) { - default: - return "optimizeFor: enum value expected"; - case 1: - case 2: - case 3: - break; - } - if (message.goPackage != null && message.hasOwnProperty("goPackage")) - if (!$util.isString(message.goPackage)) - return "goPackage: string expected"; - if (message.ccGenericServices != null && message.hasOwnProperty("ccGenericServices")) - if (typeof message.ccGenericServices !== "boolean") - return "ccGenericServices: boolean expected"; - if (message.javaGenericServices != null && message.hasOwnProperty("javaGenericServices")) - if (typeof message.javaGenericServices !== "boolean") - return "javaGenericServices: boolean expected"; - if (message.pyGenericServices != null && message.hasOwnProperty("pyGenericServices")) - if (typeof message.pyGenericServices !== "boolean") - return "pyGenericServices: boolean expected"; - if (message.phpGenericServices != null && message.hasOwnProperty("phpGenericServices")) - if (typeof message.phpGenericServices !== "boolean") - return "phpGenericServices: boolean expected"; - if (message.deprecated != null && message.hasOwnProperty("deprecated")) - if (typeof message.deprecated !== "boolean") - return "deprecated: boolean expected"; - if (message.ccEnableArenas != null && message.hasOwnProperty("ccEnableArenas")) - if (typeof message.ccEnableArenas !== "boolean") - return "ccEnableArenas: boolean expected"; - if (message.objcClassPrefix != null && message.hasOwnProperty("objcClassPrefix")) - if (!$util.isString(message.objcClassPrefix)) - return "objcClassPrefix: string expected"; - if (message.csharpNamespace != null && message.hasOwnProperty("csharpNamespace")) - if (!$util.isString(message.csharpNamespace)) - return "csharpNamespace: string expected"; - if (message.swiftPrefix != null && message.hasOwnProperty("swiftPrefix")) - if (!$util.isString(message.swiftPrefix)) - return "swiftPrefix: string expected"; - if (message.phpClassPrefix != null && message.hasOwnProperty("phpClassPrefix")) - if (!$util.isString(message.phpClassPrefix)) - return "phpClassPrefix: string expected"; - if (message.phpNamespace != null && message.hasOwnProperty("phpNamespace")) - if (!$util.isString(message.phpNamespace)) - return "phpNamespace: string expected"; - if (message.phpMetadataNamespace != null && message.hasOwnProperty("phpMetadataNamespace")) - if (!$util.isString(message.phpMetadataNamespace)) - return "phpMetadataNamespace: string expected"; - if (message.rubyPackage != null && message.hasOwnProperty("rubyPackage")) - if (!$util.isString(message.rubyPackage)) - return "rubyPackage: string expected"; - if (message.uninterpretedOption != null && message.hasOwnProperty("uninterpretedOption")) { - if (!Array.isArray(message.uninterpretedOption)) - return "uninterpretedOption: array expected"; - for (var i = 0; i < message.uninterpretedOption.length; ++i) { - var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i]); - if (error) - return "uninterpretedOption." + error; - } - } - if (message[".google.api.resourceDefinition"] != null && message.hasOwnProperty(".google.api.resourceDefinition")) { - if (!Array.isArray(message[".google.api.resourceDefinition"])) - return ".google.api.resourceDefinition: array expected"; - for (var i = 0; i < message[".google.api.resourceDefinition"].length; ++i) { - var error = $root.google.api.ResourceDescriptor.verify(message[".google.api.resourceDefinition"][i]); - if (error) - return ".google.api.resourceDefinition." + error; - } - } - return null; - }; + /** + * Creates an Authority message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.v1beta1.Authority + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.v1beta1.Authority} Authority + */ + Authority.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.v1beta1.Authority) + return object; + var message = new $root.google.cloud.gkehub.v1beta1.Authority(); + if (object.issuer != null) + message.issuer = String(object.issuer); + if (object.workloadIdentityPool != null) + message.workloadIdentityPool = String(object.workloadIdentityPool); + if (object.identityProvider != null) + message.identityProvider = String(object.identityProvider); + if (object.oidcJwks != null) + if (typeof object.oidcJwks === "string") + $util.base64.decode(object.oidcJwks, message.oidcJwks = $util.newBuffer($util.base64.length(object.oidcJwks)), 0); + else if (object.oidcJwks.length) + message.oidcJwks = object.oidcJwks; + return message; + }; - /** - * Creates a FileOptions message from a plain object. Also converts values to their respective internal types. - * @function fromObject - * @memberof google.protobuf.FileOptions - * @static - * @param {Object.} object Plain object - * @returns {google.protobuf.FileOptions} FileOptions - */ - FileOptions.fromObject = function fromObject(object) { - if (object instanceof $root.google.protobuf.FileOptions) - return object; - var message = new $root.google.protobuf.FileOptions(); - if (object.javaPackage != null) - message.javaPackage = String(object.javaPackage); - if (object.javaOuterClassname != null) - message.javaOuterClassname = String(object.javaOuterClassname); - if (object.javaMultipleFiles != null) - message.javaMultipleFiles = Boolean(object.javaMultipleFiles); - if (object.javaGenerateEqualsAndHash != null) - message.javaGenerateEqualsAndHash = Boolean(object.javaGenerateEqualsAndHash); - if (object.javaStringCheckUtf8 != null) - message.javaStringCheckUtf8 = Boolean(object.javaStringCheckUtf8); - switch (object.optimizeFor) { - case "SPEED": - case 1: - message.optimizeFor = 1; - break; - case "CODE_SIZE": - case 2: - message.optimizeFor = 2; - break; - case "LITE_RUNTIME": - case 3: - message.optimizeFor = 3; - break; - } - if (object.goPackage != null) - message.goPackage = String(object.goPackage); - if (object.ccGenericServices != null) - message.ccGenericServices = Boolean(object.ccGenericServices); - if (object.javaGenericServices != null) - message.javaGenericServices = Boolean(object.javaGenericServices); - if (object.pyGenericServices != null) - message.pyGenericServices = Boolean(object.pyGenericServices); - if (object.phpGenericServices != null) - message.phpGenericServices = Boolean(object.phpGenericServices); - if (object.deprecated != null) - message.deprecated = Boolean(object.deprecated); - if (object.ccEnableArenas != null) - message.ccEnableArenas = Boolean(object.ccEnableArenas); - if (object.objcClassPrefix != null) - message.objcClassPrefix = String(object.objcClassPrefix); - if (object.csharpNamespace != null) - message.csharpNamespace = String(object.csharpNamespace); - if (object.swiftPrefix != null) - message.swiftPrefix = String(object.swiftPrefix); - if (object.phpClassPrefix != null) - message.phpClassPrefix = String(object.phpClassPrefix); - if (object.phpNamespace != null) - message.phpNamespace = String(object.phpNamespace); - if (object.phpMetadataNamespace != null) - message.phpMetadataNamespace = String(object.phpMetadataNamespace); - if (object.rubyPackage != null) - message.rubyPackage = String(object.rubyPackage); - if (object.uninterpretedOption) { - if (!Array.isArray(object.uninterpretedOption)) - throw TypeError(".google.protobuf.FileOptions.uninterpretedOption: array expected"); - message.uninterpretedOption = []; - for (var i = 0; i < object.uninterpretedOption.length; ++i) { - if (typeof object.uninterpretedOption[i] !== "object") - throw TypeError(".google.protobuf.FileOptions.uninterpretedOption: object expected"); - message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i]); - } - } - if (object[".google.api.resourceDefinition"]) { - if (!Array.isArray(object[".google.api.resourceDefinition"])) - throw TypeError(".google.protobuf.FileOptions..google.api.resourceDefinition: array expected"); - message[".google.api.resourceDefinition"] = []; - for (var i = 0; i < object[".google.api.resourceDefinition"].length; ++i) { - if (typeof object[".google.api.resourceDefinition"][i] !== "object") - throw TypeError(".google.protobuf.FileOptions..google.api.resourceDefinition: object expected"); - message[".google.api.resourceDefinition"][i] = $root.google.api.ResourceDescriptor.fromObject(object[".google.api.resourceDefinition"][i]); - } - } - return message; - }; + /** + * Creates a plain object from an Authority message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.v1beta1.Authority + * @static + * @param {google.cloud.gkehub.v1beta1.Authority} message Authority + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + Authority.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.issuer = ""; + object.workloadIdentityPool = ""; + object.identityProvider = ""; + if (options.bytes === String) + object.oidcJwks = ""; + else { + object.oidcJwks = []; + if (options.bytes !== Array) + object.oidcJwks = $util.newBuffer(object.oidcJwks); + } + } + if (message.issuer != null && message.hasOwnProperty("issuer")) + object.issuer = message.issuer; + if (message.workloadIdentityPool != null && message.hasOwnProperty("workloadIdentityPool")) + object.workloadIdentityPool = message.workloadIdentityPool; + if (message.identityProvider != null && message.hasOwnProperty("identityProvider")) + object.identityProvider = message.identityProvider; + if (message.oidcJwks != null && message.hasOwnProperty("oidcJwks")) + object.oidcJwks = options.bytes === String ? $util.base64.encode(message.oidcJwks, 0, message.oidcJwks.length) : options.bytes === Array ? Array.prototype.slice.call(message.oidcJwks) : message.oidcJwks; + return object; + }; - /** - * Creates a plain object from a FileOptions message. Also converts values to other types if specified. - * @function toObject - * @memberof google.protobuf.FileOptions - * @static - * @param {google.protobuf.FileOptions} message FileOptions - * @param {$protobuf.IConversionOptions} [options] Conversion options - * @returns {Object.} Plain object - */ - FileOptions.toObject = function toObject(message, options) { - if (!options) - options = {}; - var object = {}; - if (options.arrays || options.defaults) { - object.uninterpretedOption = []; - object[".google.api.resourceDefinition"] = []; - } - if (options.defaults) { - object.javaPackage = ""; - object.javaOuterClassname = ""; - object.optimizeFor = options.enums === String ? "SPEED" : 1; - object.javaMultipleFiles = false; - object.goPackage = ""; - object.ccGenericServices = false; - object.javaGenericServices = false; - object.pyGenericServices = false; - object.javaGenerateEqualsAndHash = false; - object.deprecated = false; - object.javaStringCheckUtf8 = false; - object.ccEnableArenas = true; - object.objcClassPrefix = ""; - object.csharpNamespace = ""; - object.swiftPrefix = ""; - object.phpClassPrefix = ""; - object.phpNamespace = ""; - object.phpGenericServices = false; - object.phpMetadataNamespace = ""; - object.rubyPackage = ""; - } - if (message.javaPackage != null && message.hasOwnProperty("javaPackage")) - object.javaPackage = message.javaPackage; - if (message.javaOuterClassname != null && message.hasOwnProperty("javaOuterClassname")) - object.javaOuterClassname = message.javaOuterClassname; - if (message.optimizeFor != null && message.hasOwnProperty("optimizeFor")) - object.optimizeFor = options.enums === String ? $root.google.protobuf.FileOptions.OptimizeMode[message.optimizeFor] : message.optimizeFor; - if (message.javaMultipleFiles != null && message.hasOwnProperty("javaMultipleFiles")) - object.javaMultipleFiles = message.javaMultipleFiles; - if (message.goPackage != null && message.hasOwnProperty("goPackage")) - object.goPackage = message.goPackage; - if (message.ccGenericServices != null && message.hasOwnProperty("ccGenericServices")) - object.ccGenericServices = message.ccGenericServices; - if (message.javaGenericServices != null && message.hasOwnProperty("javaGenericServices")) - object.javaGenericServices = message.javaGenericServices; - if (message.pyGenericServices != null && message.hasOwnProperty("pyGenericServices")) - object.pyGenericServices = message.pyGenericServices; - if (message.javaGenerateEqualsAndHash != null && message.hasOwnProperty("javaGenerateEqualsAndHash")) - object.javaGenerateEqualsAndHash = message.javaGenerateEqualsAndHash; - if (message.deprecated != null && message.hasOwnProperty("deprecated")) - object.deprecated = message.deprecated; - if (message.javaStringCheckUtf8 != null && message.hasOwnProperty("javaStringCheckUtf8")) - object.javaStringCheckUtf8 = message.javaStringCheckUtf8; - if (message.ccEnableArenas != null && message.hasOwnProperty("ccEnableArenas")) - object.ccEnableArenas = message.ccEnableArenas; - if (message.objcClassPrefix != null && message.hasOwnProperty("objcClassPrefix")) - object.objcClassPrefix = message.objcClassPrefix; - if (message.csharpNamespace != null && message.hasOwnProperty("csharpNamespace")) - object.csharpNamespace = message.csharpNamespace; - if (message.swiftPrefix != null && message.hasOwnProperty("swiftPrefix")) - object.swiftPrefix = message.swiftPrefix; - if (message.phpClassPrefix != null && message.hasOwnProperty("phpClassPrefix")) - object.phpClassPrefix = message.phpClassPrefix; - if (message.phpNamespace != null && message.hasOwnProperty("phpNamespace")) - object.phpNamespace = message.phpNamespace; - if (message.phpGenericServices != null && message.hasOwnProperty("phpGenericServices")) - object.phpGenericServices = message.phpGenericServices; - if (message.phpMetadataNamespace != null && message.hasOwnProperty("phpMetadataNamespace")) - object.phpMetadataNamespace = message.phpMetadataNamespace; - if (message.rubyPackage != null && message.hasOwnProperty("rubyPackage")) - object.rubyPackage = message.rubyPackage; - if (message.uninterpretedOption && message.uninterpretedOption.length) { - object.uninterpretedOption = []; - for (var j = 0; j < message.uninterpretedOption.length; ++j) - object.uninterpretedOption[j] = $root.google.protobuf.UninterpretedOption.toObject(message.uninterpretedOption[j], options); - } - if (message[".google.api.resourceDefinition"] && message[".google.api.resourceDefinition"].length) { - object[".google.api.resourceDefinition"] = []; - for (var j = 0; j < message[".google.api.resourceDefinition"].length; ++j) - object[".google.api.resourceDefinition"][j] = $root.google.api.ResourceDescriptor.toObject(message[".google.api.resourceDefinition"][j], options); - } - return object; - }; + /** + * Converts this Authority to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.v1beta1.Authority + * @instance + * @returns {Object.} JSON object + */ + Authority.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; - /** - * Converts this FileOptions to JSON. - * @function toJSON - * @memberof google.protobuf.FileOptions - * @instance - * @returns {Object.} JSON object - */ - FileOptions.prototype.toJSON = function toJSON() { - return this.constructor.toObject(this, $protobuf.util.toJSONOptions); - }; + return Authority; + })(); - /** - * OptimizeMode enum. - * @name google.protobuf.FileOptions.OptimizeMode - * @enum {number} - * @property {number} SPEED=1 SPEED value - * @property {number} CODE_SIZE=2 CODE_SIZE value - * @property {number} LITE_RUNTIME=3 LITE_RUNTIME value - */ - FileOptions.OptimizeMode = (function() { - var valuesById = {}, values = Object.create(valuesById); - values[valuesById[1] = "SPEED"] = 1; - values[valuesById[2] = "CODE_SIZE"] = 2; - values[valuesById[3] = "LITE_RUNTIME"] = 3; - return values; - })(); + v1beta1.MembershipState = (function() { - return FileOptions; - })(); + /** + * Properties of a MembershipState. + * @memberof google.cloud.gkehub.v1beta1 + * @interface IMembershipState + * @property {google.cloud.gkehub.v1beta1.MembershipState.Code|null} [code] MembershipState code + * @property {string|null} [description] MembershipState description + * @property {google.protobuf.ITimestamp|null} [updateTime] MembershipState updateTime + */ - protobuf.MessageOptions = (function() { + /** + * Constructs a new MembershipState. + * @memberof google.cloud.gkehub.v1beta1 + * @classdesc Represents a MembershipState. + * @implements IMembershipState + * @constructor + * @param {google.cloud.gkehub.v1beta1.IMembershipState=} [properties] Properties to set + */ + function MembershipState(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]]; + } - /** - * Properties of a MessageOptions. - * @memberof google.protobuf - * @interface IMessageOptions - * @property {boolean|null} [messageSetWireFormat] MessageOptions messageSetWireFormat - * @property {boolean|null} [noStandardDescriptorAccessor] MessageOptions noStandardDescriptorAccessor - * @property {boolean|null} [deprecated] MessageOptions deprecated - * @property {boolean|null} [mapEntry] MessageOptions mapEntry - * @property {Array.|null} [uninterpretedOption] MessageOptions uninterpretedOption - * @property {google.api.IResourceDescriptor|null} [".google.api.resource"] MessageOptions .google.api.resource - */ + /** + * MembershipState code. + * @member {google.cloud.gkehub.v1beta1.MembershipState.Code} code + * @memberof google.cloud.gkehub.v1beta1.MembershipState + * @instance + */ + MembershipState.prototype.code = 0; - /** - * Constructs a new MessageOptions. - * @memberof google.protobuf - * @classdesc Represents a MessageOptions. - * @implements IMessageOptions - * @constructor - * @param {google.protobuf.IMessageOptions=} [properties] Properties to set - */ - function MessageOptions(properties) { - this.uninterpretedOption = []; - 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]]; - } + /** + * MembershipState description. + * @member {string} description + * @memberof google.cloud.gkehub.v1beta1.MembershipState + * @instance + */ + MembershipState.prototype.description = ""; - /** - * MessageOptions messageSetWireFormat. - * @member {boolean} messageSetWireFormat - * @memberof google.protobuf.MessageOptions - * @instance - */ - MessageOptions.prototype.messageSetWireFormat = false; + /** + * MembershipState updateTime. + * @member {google.protobuf.ITimestamp|null|undefined} updateTime + * @memberof google.cloud.gkehub.v1beta1.MembershipState + * @instance + */ + MembershipState.prototype.updateTime = null; + + /** + * Creates a new MembershipState instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.v1beta1.MembershipState + * @static + * @param {google.cloud.gkehub.v1beta1.IMembershipState=} [properties] Properties to set + * @returns {google.cloud.gkehub.v1beta1.MembershipState} MembershipState instance + */ + MembershipState.create = function create(properties) { + return new MembershipState(properties); + }; + + /** + * Encodes the specified MembershipState message. Does not implicitly {@link google.cloud.gkehub.v1beta1.MembershipState.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.v1beta1.MembershipState + * @static + * @param {google.cloud.gkehub.v1beta1.IMembershipState} message MembershipState message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + MembershipState.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.code != null && Object.hasOwnProperty.call(message, "code")) + writer.uint32(/* id 1, wireType 0 =*/8).int32(message.code); + if (message.description != null && Object.hasOwnProperty.call(message, "description")) + writer.uint32(/* id 2, wireType 2 =*/18).string(message.description); + if (message.updateTime != null && Object.hasOwnProperty.call(message, "updateTime")) + $root.google.protobuf.Timestamp.encode(message.updateTime, writer.uint32(/* id 3, wireType 2 =*/26).fork()).ldelim(); + return writer; + }; + + /** + * Encodes the specified MembershipState message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta1.MembershipState.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.v1beta1.MembershipState + * @static + * @param {google.cloud.gkehub.v1beta1.IMembershipState} message MembershipState message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + MembershipState.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; - /** - * MessageOptions noStandardDescriptorAccessor. - * @member {boolean} noStandardDescriptorAccessor - * @memberof google.protobuf.MessageOptions - * @instance - */ - MessageOptions.prototype.noStandardDescriptorAccessor = false; + /** + * Decodes a MembershipState message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.v1beta1.MembershipState + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.v1beta1.MembershipState} MembershipState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + MembershipState.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.v1beta1.MembershipState(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.code = reader.int32(); + break; + case 2: + message.description = reader.string(); + break; + case 3: + message.updateTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; - /** - * MessageOptions deprecated. - * @member {boolean} deprecated - * @memberof google.protobuf.MessageOptions - * @instance - */ - MessageOptions.prototype.deprecated = false; + /** + * Decodes a MembershipState message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.v1beta1.MembershipState + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.v1beta1.MembershipState} MembershipState + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + MembershipState.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; - /** - * MessageOptions mapEntry. - * @member {boolean} mapEntry - * @memberof google.protobuf.MessageOptions - * @instance - */ - MessageOptions.prototype.mapEntry = false; + /** + * Verifies a MembershipState message. + * @function verify + * @memberof google.cloud.gkehub.v1beta1.MembershipState + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + MembershipState.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.code != null && message.hasOwnProperty("code")) + switch (message.code) { + default: + return "code: enum value expected"; + case 0: + case 1: + case 2: + case 3: + case 4: + case 5: + break; + } + if (message.description != null && message.hasOwnProperty("description")) + if (!$util.isString(message.description)) + return "description: string expected"; + if (message.updateTime != null && message.hasOwnProperty("updateTime")) { + var error = $root.google.protobuf.Timestamp.verify(message.updateTime); + if (error) + return "updateTime." + error; + } + return null; + }; - /** - * MessageOptions uninterpretedOption. - * @member {Array.} uninterpretedOption - * @memberof google.protobuf.MessageOptions - * @instance - */ - MessageOptions.prototype.uninterpretedOption = $util.emptyArray; + /** + * Creates a MembershipState message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.v1beta1.MembershipState + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.v1beta1.MembershipState} MembershipState + */ + MembershipState.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.v1beta1.MembershipState) + return object; + var message = new $root.google.cloud.gkehub.v1beta1.MembershipState(); + switch (object.code) { + case "CODE_UNSPECIFIED": + case 0: + message.code = 0; + break; + case "CREATING": + case 1: + message.code = 1; + break; + case "READY": + case 2: + message.code = 2; + break; + case "DELETING": + case 3: + message.code = 3; + break; + case "UPDATING": + case 4: + message.code = 4; + break; + case "SERVICE_UPDATING": + case 5: + message.code = 5; + break; + } + if (object.description != null) + message.description = String(object.description); + if (object.updateTime != null) { + if (typeof object.updateTime !== "object") + throw TypeError(".google.cloud.gkehub.v1beta1.MembershipState.updateTime: object expected"); + message.updateTime = $root.google.protobuf.Timestamp.fromObject(object.updateTime); + } + return message; + }; - /** - * MessageOptions .google.api.resource. - * @member {google.api.IResourceDescriptor|null|undefined} .google.api.resource - * @memberof google.protobuf.MessageOptions - * @instance - */ - MessageOptions.prototype[".google.api.resource"] = null; + /** + * Creates a plain object from a MembershipState message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.v1beta1.MembershipState + * @static + * @param {google.cloud.gkehub.v1beta1.MembershipState} message MembershipState + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + MembershipState.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.code = options.enums === String ? "CODE_UNSPECIFIED" : 0; + object.description = ""; + object.updateTime = null; + } + if (message.code != null && message.hasOwnProperty("code")) + object.code = options.enums === String ? $root.google.cloud.gkehub.v1beta1.MembershipState.Code[message.code] : message.code; + if (message.description != null && message.hasOwnProperty("description")) + object.description = message.description; + if (message.updateTime != null && message.hasOwnProperty("updateTime")) + object.updateTime = $root.google.protobuf.Timestamp.toObject(message.updateTime, options); + return object; + }; - /** - * Creates a new MessageOptions instance using the specified properties. - * @function create - * @memberof google.protobuf.MessageOptions - * @static - * @param {google.protobuf.IMessageOptions=} [properties] Properties to set - * @returns {google.protobuf.MessageOptions} MessageOptions instance - */ - MessageOptions.create = function create(properties) { - return new MessageOptions(properties); - }; + /** + * Converts this MembershipState to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.v1beta1.MembershipState + * @instance + * @returns {Object.} JSON object + */ + MembershipState.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; - /** - * Encodes the specified MessageOptions message. Does not implicitly {@link google.protobuf.MessageOptions.verify|verify} messages. - * @function encode - * @memberof google.protobuf.MessageOptions - * @static - * @param {google.protobuf.IMessageOptions} message MessageOptions message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - MessageOptions.encode = function encode(message, writer) { - if (!writer) - writer = $Writer.create(); - if (message.messageSetWireFormat != null && Object.hasOwnProperty.call(message, "messageSetWireFormat")) - writer.uint32(/* id 1, wireType 0 =*/8).bool(message.messageSetWireFormat); - if (message.noStandardDescriptorAccessor != null && Object.hasOwnProperty.call(message, "noStandardDescriptorAccessor")) - writer.uint32(/* id 2, wireType 0 =*/16).bool(message.noStandardDescriptorAccessor); - if (message.deprecated != null && Object.hasOwnProperty.call(message, "deprecated")) - writer.uint32(/* id 3, wireType 0 =*/24).bool(message.deprecated); - if (message.mapEntry != null && Object.hasOwnProperty.call(message, "mapEntry")) - writer.uint32(/* id 7, wireType 0 =*/56).bool(message.mapEntry); - if (message.uninterpretedOption != null && message.uninterpretedOption.length) - for (var i = 0; i < message.uninterpretedOption.length; ++i) - $root.google.protobuf.UninterpretedOption.encode(message.uninterpretedOption[i], writer.uint32(/* id 999, wireType 2 =*/7994).fork()).ldelim(); - if (message[".google.api.resource"] != null && Object.hasOwnProperty.call(message, ".google.api.resource")) - $root.google.api.ResourceDescriptor.encode(message[".google.api.resource"], writer.uint32(/* id 1053, wireType 2 =*/8426).fork()).ldelim(); - return writer; - }; + /** + * Code enum. + * @name google.cloud.gkehub.v1beta1.MembershipState.Code + * @enum {number} + * @property {number} CODE_UNSPECIFIED=0 CODE_UNSPECIFIED value + * @property {number} CREATING=1 CREATING value + * @property {number} READY=2 READY value + * @property {number} DELETING=3 DELETING value + * @property {number} UPDATING=4 UPDATING value + * @property {number} SERVICE_UPDATING=5 SERVICE_UPDATING value + */ + MembershipState.Code = (function() { + var valuesById = {}, values = Object.create(valuesById); + values[valuesById[0] = "CODE_UNSPECIFIED"] = 0; + values[valuesById[1] = "CREATING"] = 1; + values[valuesById[2] = "READY"] = 2; + values[valuesById[3] = "DELETING"] = 3; + values[valuesById[4] = "UPDATING"] = 4; + values[valuesById[5] = "SERVICE_UPDATING"] = 5; + return values; + })(); - /** - * Encodes the specified MessageOptions message, length delimited. Does not implicitly {@link google.protobuf.MessageOptions.verify|verify} messages. - * @function encodeDelimited - * @memberof google.protobuf.MessageOptions - * @static - * @param {google.protobuf.IMessageOptions} message MessageOptions message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - MessageOptions.encodeDelimited = function encodeDelimited(message, writer) { - return this.encode(message, writer).ldelim(); - }; + return MembershipState; + })(); - /** - * Decodes a MessageOptions message from the specified reader or buffer. - * @function decode - * @memberof google.protobuf.MessageOptions - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @param {number} [length] Message length if known beforehand - * @returns {google.protobuf.MessageOptions} MessageOptions - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - MessageOptions.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.protobuf.MessageOptions(); - while (reader.pos < end) { - var tag = reader.uint32(); - switch (tag >>> 3) { - case 1: - message.messageSetWireFormat = reader.bool(); - break; - case 2: - message.noStandardDescriptorAccessor = reader.bool(); - break; - case 3: - message.deprecated = reader.bool(); - break; - case 7: - message.mapEntry = reader.bool(); - break; - case 999: - if (!(message.uninterpretedOption && message.uninterpretedOption.length)) - message.uninterpretedOption = []; - message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32())); - break; - case 1053: - message[".google.api.resource"] = $root.google.api.ResourceDescriptor.decode(reader, reader.uint32()); - break; - default: - reader.skipType(tag & 7); - break; - } - } - return message; - }; + v1beta1.ListMembershipsRequest = (function() { - /** - * Decodes a MessageOptions message from the specified reader or buffer, length delimited. - * @function decodeDelimited - * @memberof google.protobuf.MessageOptions - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {google.protobuf.MessageOptions} MessageOptions - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - MessageOptions.decodeDelimited = function decodeDelimited(reader) { - if (!(reader instanceof $Reader)) - reader = new $Reader(reader); - return this.decode(reader, reader.uint32()); - }; + /** + * Properties of a ListMembershipsRequest. + * @memberof google.cloud.gkehub.v1beta1 + * @interface IListMembershipsRequest + * @property {string|null} [parent] ListMembershipsRequest parent + * @property {number|null} [pageSize] ListMembershipsRequest pageSize + * @property {string|null} [pageToken] ListMembershipsRequest pageToken + * @property {string|null} [filter] ListMembershipsRequest filter + * @property {string|null} [orderBy] ListMembershipsRequest orderBy + */ - /** - * Verifies a MessageOptions message. - * @function verify - * @memberof google.protobuf.MessageOptions - * @static - * @param {Object.} message Plain object to verify - * @returns {string|null} `null` if valid, otherwise the reason why it is not - */ - MessageOptions.verify = function verify(message) { - if (typeof message !== "object" || message === null) - return "object expected"; - if (message.messageSetWireFormat != null && message.hasOwnProperty("messageSetWireFormat")) - if (typeof message.messageSetWireFormat !== "boolean") - return "messageSetWireFormat: boolean expected"; - if (message.noStandardDescriptorAccessor != null && message.hasOwnProperty("noStandardDescriptorAccessor")) - if (typeof message.noStandardDescriptorAccessor !== "boolean") - return "noStandardDescriptorAccessor: boolean expected"; - if (message.deprecated != null && message.hasOwnProperty("deprecated")) - if (typeof message.deprecated !== "boolean") - return "deprecated: boolean expected"; - if (message.mapEntry != null && message.hasOwnProperty("mapEntry")) - if (typeof message.mapEntry !== "boolean") - return "mapEntry: boolean expected"; - if (message.uninterpretedOption != null && message.hasOwnProperty("uninterpretedOption")) { - if (!Array.isArray(message.uninterpretedOption)) - return "uninterpretedOption: array expected"; - for (var i = 0; i < message.uninterpretedOption.length; ++i) { - var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i]); - if (error) - return "uninterpretedOption." + error; + /** + * Constructs a new ListMembershipsRequest. + * @memberof google.cloud.gkehub.v1beta1 + * @classdesc Represents a ListMembershipsRequest. + * @implements IListMembershipsRequest + * @constructor + * @param {google.cloud.gkehub.v1beta1.IListMembershipsRequest=} [properties] Properties to set + */ + function ListMembershipsRequest(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]]; } - } - if (message[".google.api.resource"] != null && message.hasOwnProperty(".google.api.resource")) { - var error = $root.google.api.ResourceDescriptor.verify(message[".google.api.resource"]); - if (error) - return ".google.api.resource." + error; - } - return null; - }; - /** - * Creates a MessageOptions message from a plain object. Also converts values to their respective internal types. - * @function fromObject - * @memberof google.protobuf.MessageOptions - * @static - * @param {Object.} object Plain object - * @returns {google.protobuf.MessageOptions} MessageOptions - */ - MessageOptions.fromObject = function fromObject(object) { - if (object instanceof $root.google.protobuf.MessageOptions) - return object; - var message = new $root.google.protobuf.MessageOptions(); - if (object.messageSetWireFormat != null) - message.messageSetWireFormat = Boolean(object.messageSetWireFormat); - if (object.noStandardDescriptorAccessor != null) - message.noStandardDescriptorAccessor = Boolean(object.noStandardDescriptorAccessor); - if (object.deprecated != null) - message.deprecated = Boolean(object.deprecated); - if (object.mapEntry != null) - message.mapEntry = Boolean(object.mapEntry); - if (object.uninterpretedOption) { - if (!Array.isArray(object.uninterpretedOption)) - throw TypeError(".google.protobuf.MessageOptions.uninterpretedOption: array expected"); - message.uninterpretedOption = []; - for (var i = 0; i < object.uninterpretedOption.length; ++i) { - if (typeof object.uninterpretedOption[i] !== "object") - throw TypeError(".google.protobuf.MessageOptions.uninterpretedOption: object expected"); - message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i]); - } - } - if (object[".google.api.resource"] != null) { - if (typeof object[".google.api.resource"] !== "object") - throw TypeError(".google.protobuf.MessageOptions..google.api.resource: object expected"); - message[".google.api.resource"] = $root.google.api.ResourceDescriptor.fromObject(object[".google.api.resource"]); - } - return message; - }; + /** + * ListMembershipsRequest parent. + * @member {string} parent + * @memberof google.cloud.gkehub.v1beta1.ListMembershipsRequest + * @instance + */ + ListMembershipsRequest.prototype.parent = ""; - /** - * Creates a plain object from a MessageOptions message. Also converts values to other types if specified. - * @function toObject - * @memberof google.protobuf.MessageOptions - * @static - * @param {google.protobuf.MessageOptions} message MessageOptions - * @param {$protobuf.IConversionOptions} [options] Conversion options - * @returns {Object.} Plain object - */ - MessageOptions.toObject = function toObject(message, options) { - if (!options) - options = {}; - var object = {}; - if (options.arrays || options.defaults) - object.uninterpretedOption = []; - if (options.defaults) { - object.messageSetWireFormat = false; - object.noStandardDescriptorAccessor = false; - object.deprecated = false; - object.mapEntry = false; - object[".google.api.resource"] = null; - } - if (message.messageSetWireFormat != null && message.hasOwnProperty("messageSetWireFormat")) - object.messageSetWireFormat = message.messageSetWireFormat; - if (message.noStandardDescriptorAccessor != null && message.hasOwnProperty("noStandardDescriptorAccessor")) - object.noStandardDescriptorAccessor = message.noStandardDescriptorAccessor; - if (message.deprecated != null && message.hasOwnProperty("deprecated")) - object.deprecated = message.deprecated; - if (message.mapEntry != null && message.hasOwnProperty("mapEntry")) - object.mapEntry = message.mapEntry; - if (message.uninterpretedOption && message.uninterpretedOption.length) { - object.uninterpretedOption = []; - for (var j = 0; j < message.uninterpretedOption.length; ++j) - object.uninterpretedOption[j] = $root.google.protobuf.UninterpretedOption.toObject(message.uninterpretedOption[j], options); - } - if (message[".google.api.resource"] != null && message.hasOwnProperty(".google.api.resource")) - object[".google.api.resource"] = $root.google.api.ResourceDescriptor.toObject(message[".google.api.resource"], options); - return object; - }; + /** + * ListMembershipsRequest pageSize. + * @member {number} pageSize + * @memberof google.cloud.gkehub.v1beta1.ListMembershipsRequest + * @instance + */ + ListMembershipsRequest.prototype.pageSize = 0; - /** - * Converts this MessageOptions to JSON. - * @function toJSON - * @memberof google.protobuf.MessageOptions - * @instance - * @returns {Object.} JSON object - */ - MessageOptions.prototype.toJSON = function toJSON() { - return this.constructor.toObject(this, $protobuf.util.toJSONOptions); - }; + /** + * ListMembershipsRequest pageToken. + * @member {string} pageToken + * @memberof google.cloud.gkehub.v1beta1.ListMembershipsRequest + * @instance + */ + ListMembershipsRequest.prototype.pageToken = ""; + + /** + * ListMembershipsRequest filter. + * @member {string} filter + * @memberof google.cloud.gkehub.v1beta1.ListMembershipsRequest + * @instance + */ + ListMembershipsRequest.prototype.filter = ""; - return MessageOptions; - })(); + /** + * ListMembershipsRequest orderBy. + * @member {string} orderBy + * @memberof google.cloud.gkehub.v1beta1.ListMembershipsRequest + * @instance + */ + ListMembershipsRequest.prototype.orderBy = ""; - protobuf.FieldOptions = (function() { + /** + * Creates a new ListMembershipsRequest instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.v1beta1.ListMembershipsRequest + * @static + * @param {google.cloud.gkehub.v1beta1.IListMembershipsRequest=} [properties] Properties to set + * @returns {google.cloud.gkehub.v1beta1.ListMembershipsRequest} ListMembershipsRequest instance + */ + ListMembershipsRequest.create = function create(properties) { + return new ListMembershipsRequest(properties); + }; - /** - * Properties of a FieldOptions. - * @memberof google.protobuf - * @interface IFieldOptions - * @property {google.protobuf.FieldOptions.CType|null} [ctype] FieldOptions ctype - * @property {boolean|null} [packed] FieldOptions packed - * @property {google.protobuf.FieldOptions.JSType|null} [jstype] FieldOptions jstype - * @property {boolean|null} [lazy] FieldOptions lazy - * @property {boolean|null} [deprecated] FieldOptions deprecated - * @property {boolean|null} [weak] FieldOptions weak - * @property {Array.|null} [uninterpretedOption] FieldOptions uninterpretedOption - * @property {Array.|null} [".google.api.fieldBehavior"] FieldOptions .google.api.fieldBehavior - * @property {google.api.IResourceReference|null} [".google.api.resourceReference"] FieldOptions .google.api.resourceReference - */ + /** + * Encodes the specified ListMembershipsRequest message. Does not implicitly {@link google.cloud.gkehub.v1beta1.ListMembershipsRequest.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.v1beta1.ListMembershipsRequest + * @static + * @param {google.cloud.gkehub.v1beta1.IListMembershipsRequest} message ListMembershipsRequest message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + ListMembershipsRequest.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.parent != null && Object.hasOwnProperty.call(message, "parent")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.parent); + if (message.pageSize != null && Object.hasOwnProperty.call(message, "pageSize")) + writer.uint32(/* id 2, wireType 0 =*/16).int32(message.pageSize); + if (message.pageToken != null && Object.hasOwnProperty.call(message, "pageToken")) + writer.uint32(/* id 3, wireType 2 =*/26).string(message.pageToken); + if (message.filter != null && Object.hasOwnProperty.call(message, "filter")) + writer.uint32(/* id 4, wireType 2 =*/34).string(message.filter); + if (message.orderBy != null && Object.hasOwnProperty.call(message, "orderBy")) + writer.uint32(/* id 5, wireType 2 =*/42).string(message.orderBy); + return writer; + }; - /** - * Constructs a new FieldOptions. - * @memberof google.protobuf - * @classdesc Represents a FieldOptions. - * @implements IFieldOptions - * @constructor - * @param {google.protobuf.IFieldOptions=} [properties] Properties to set - */ - function FieldOptions(properties) { - this.uninterpretedOption = []; - this[".google.api.fieldBehavior"] = []; - 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]]; - } + /** + * Encodes the specified ListMembershipsRequest message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta1.ListMembershipsRequest.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.v1beta1.ListMembershipsRequest + * @static + * @param {google.cloud.gkehub.v1beta1.IListMembershipsRequest} message ListMembershipsRequest message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + ListMembershipsRequest.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; - /** - * FieldOptions ctype. - * @member {google.protobuf.FieldOptions.CType} ctype - * @memberof google.protobuf.FieldOptions - * @instance - */ - FieldOptions.prototype.ctype = 0; + /** + * Decodes a ListMembershipsRequest message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.v1beta1.ListMembershipsRequest + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.v1beta1.ListMembershipsRequest} ListMembershipsRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + ListMembershipsRequest.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.v1beta1.ListMembershipsRequest(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.parent = reader.string(); + break; + case 2: + message.pageSize = reader.int32(); + break; + case 3: + message.pageToken = reader.string(); + break; + case 4: + message.filter = reader.string(); + break; + case 5: + message.orderBy = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; - /** - * FieldOptions packed. - * @member {boolean} packed - * @memberof google.protobuf.FieldOptions - * @instance - */ - FieldOptions.prototype.packed = false; + /** + * Decodes a ListMembershipsRequest message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.v1beta1.ListMembershipsRequest + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.v1beta1.ListMembershipsRequest} ListMembershipsRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + ListMembershipsRequest.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; - /** - * FieldOptions jstype. - * @member {google.protobuf.FieldOptions.JSType} jstype - * @memberof google.protobuf.FieldOptions - * @instance - */ - FieldOptions.prototype.jstype = 0; + /** + * Verifies a ListMembershipsRequest message. + * @function verify + * @memberof google.cloud.gkehub.v1beta1.ListMembershipsRequest + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + ListMembershipsRequest.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.parent != null && message.hasOwnProperty("parent")) + if (!$util.isString(message.parent)) + return "parent: string expected"; + if (message.pageSize != null && message.hasOwnProperty("pageSize")) + if (!$util.isInteger(message.pageSize)) + return "pageSize: integer expected"; + if (message.pageToken != null && message.hasOwnProperty("pageToken")) + if (!$util.isString(message.pageToken)) + return "pageToken: string expected"; + if (message.filter != null && message.hasOwnProperty("filter")) + if (!$util.isString(message.filter)) + return "filter: string expected"; + if (message.orderBy != null && message.hasOwnProperty("orderBy")) + if (!$util.isString(message.orderBy)) + return "orderBy: string expected"; + return null; + }; - /** - * FieldOptions lazy. - * @member {boolean} lazy - * @memberof google.protobuf.FieldOptions - * @instance - */ - FieldOptions.prototype.lazy = false; + /** + * Creates a ListMembershipsRequest message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.v1beta1.ListMembershipsRequest + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.v1beta1.ListMembershipsRequest} ListMembershipsRequest + */ + ListMembershipsRequest.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.v1beta1.ListMembershipsRequest) + return object; + var message = new $root.google.cloud.gkehub.v1beta1.ListMembershipsRequest(); + if (object.parent != null) + message.parent = String(object.parent); + if (object.pageSize != null) + message.pageSize = object.pageSize | 0; + if (object.pageToken != null) + message.pageToken = String(object.pageToken); + if (object.filter != null) + message.filter = String(object.filter); + if (object.orderBy != null) + message.orderBy = String(object.orderBy); + return message; + }; + + /** + * Creates a plain object from a ListMembershipsRequest message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.v1beta1.ListMembershipsRequest + * @static + * @param {google.cloud.gkehub.v1beta1.ListMembershipsRequest} message ListMembershipsRequest + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + ListMembershipsRequest.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.parent = ""; + object.pageSize = 0; + object.pageToken = ""; + object.filter = ""; + object.orderBy = ""; + } + if (message.parent != null && message.hasOwnProperty("parent")) + object.parent = message.parent; + if (message.pageSize != null && message.hasOwnProperty("pageSize")) + object.pageSize = message.pageSize; + if (message.pageToken != null && message.hasOwnProperty("pageToken")) + object.pageToken = message.pageToken; + if (message.filter != null && message.hasOwnProperty("filter")) + object.filter = message.filter; + if (message.orderBy != null && message.hasOwnProperty("orderBy")) + object.orderBy = message.orderBy; + return object; + }; - /** - * FieldOptions deprecated. - * @member {boolean} deprecated - * @memberof google.protobuf.FieldOptions - * @instance - */ - FieldOptions.prototype.deprecated = false; + /** + * Converts this ListMembershipsRequest to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.v1beta1.ListMembershipsRequest + * @instance + * @returns {Object.} JSON object + */ + ListMembershipsRequest.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; - /** - * FieldOptions weak. - * @member {boolean} weak - * @memberof google.protobuf.FieldOptions - * @instance - */ - FieldOptions.prototype.weak = false; + return ListMembershipsRequest; + })(); - /** - * FieldOptions uninterpretedOption. - * @member {Array.} uninterpretedOption - * @memberof google.protobuf.FieldOptions - * @instance - */ - FieldOptions.prototype.uninterpretedOption = $util.emptyArray; + v1beta1.ListMembershipsResponse = (function() { - /** - * FieldOptions .google.api.fieldBehavior. - * @member {Array.} .google.api.fieldBehavior - * @memberof google.protobuf.FieldOptions - * @instance - */ - FieldOptions.prototype[".google.api.fieldBehavior"] = $util.emptyArray; + /** + * Properties of a ListMembershipsResponse. + * @memberof google.cloud.gkehub.v1beta1 + * @interface IListMembershipsResponse + * @property {Array.|null} [resources] ListMembershipsResponse resources + * @property {string|null} [nextPageToken] ListMembershipsResponse nextPageToken + * @property {Array.|null} [unreachable] ListMembershipsResponse unreachable + */ - /** - * FieldOptions .google.api.resourceReference. - * @member {google.api.IResourceReference|null|undefined} .google.api.resourceReference - * @memberof google.protobuf.FieldOptions - * @instance - */ - FieldOptions.prototype[".google.api.resourceReference"] = null; + /** + * Constructs a new ListMembershipsResponse. + * @memberof google.cloud.gkehub.v1beta1 + * @classdesc Represents a ListMembershipsResponse. + * @implements IListMembershipsResponse + * @constructor + * @param {google.cloud.gkehub.v1beta1.IListMembershipsResponse=} [properties] Properties to set + */ + function ListMembershipsResponse(properties) { + this.resources = []; + this.unreachable = []; + 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]]; + } - /** - * Creates a new FieldOptions instance using the specified properties. - * @function create - * @memberof google.protobuf.FieldOptions - * @static - * @param {google.protobuf.IFieldOptions=} [properties] Properties to set - * @returns {google.protobuf.FieldOptions} FieldOptions instance - */ - FieldOptions.create = function create(properties) { - return new FieldOptions(properties); - }; + /** + * ListMembershipsResponse resources. + * @member {Array.} resources + * @memberof google.cloud.gkehub.v1beta1.ListMembershipsResponse + * @instance + */ + ListMembershipsResponse.prototype.resources = $util.emptyArray; - /** - * Encodes the specified FieldOptions message. Does not implicitly {@link google.protobuf.FieldOptions.verify|verify} messages. - * @function encode - * @memberof google.protobuf.FieldOptions - * @static - * @param {google.protobuf.IFieldOptions} message FieldOptions message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - FieldOptions.encode = function encode(message, writer) { - if (!writer) - writer = $Writer.create(); - if (message.ctype != null && Object.hasOwnProperty.call(message, "ctype")) - writer.uint32(/* id 1, wireType 0 =*/8).int32(message.ctype); - if (message.packed != null && Object.hasOwnProperty.call(message, "packed")) - writer.uint32(/* id 2, wireType 0 =*/16).bool(message.packed); - if (message.deprecated != null && Object.hasOwnProperty.call(message, "deprecated")) - writer.uint32(/* id 3, wireType 0 =*/24).bool(message.deprecated); - if (message.lazy != null && Object.hasOwnProperty.call(message, "lazy")) - writer.uint32(/* id 5, wireType 0 =*/40).bool(message.lazy); - if (message.jstype != null && Object.hasOwnProperty.call(message, "jstype")) - writer.uint32(/* id 6, wireType 0 =*/48).int32(message.jstype); - if (message.weak != null && Object.hasOwnProperty.call(message, "weak")) - writer.uint32(/* id 10, wireType 0 =*/80).bool(message.weak); - if (message.uninterpretedOption != null && message.uninterpretedOption.length) - for (var i = 0; i < message.uninterpretedOption.length; ++i) - $root.google.protobuf.UninterpretedOption.encode(message.uninterpretedOption[i], writer.uint32(/* id 999, wireType 2 =*/7994).fork()).ldelim(); - if (message[".google.api.fieldBehavior"] != null && message[".google.api.fieldBehavior"].length) { - writer.uint32(/* id 1052, wireType 2 =*/8418).fork(); - for (var i = 0; i < message[".google.api.fieldBehavior"].length; ++i) - writer.int32(message[".google.api.fieldBehavior"][i]); - writer.ldelim(); - } - if (message[".google.api.resourceReference"] != null && Object.hasOwnProperty.call(message, ".google.api.resourceReference")) - $root.google.api.ResourceReference.encode(message[".google.api.resourceReference"], writer.uint32(/* id 1055, wireType 2 =*/8442).fork()).ldelim(); - return writer; - }; + /** + * ListMembershipsResponse nextPageToken. + * @member {string} nextPageToken + * @memberof google.cloud.gkehub.v1beta1.ListMembershipsResponse + * @instance + */ + ListMembershipsResponse.prototype.nextPageToken = ""; - /** - * Encodes the specified FieldOptions message, length delimited. Does not implicitly {@link google.protobuf.FieldOptions.verify|verify} messages. - * @function encodeDelimited - * @memberof google.protobuf.FieldOptions - * @static - * @param {google.protobuf.IFieldOptions} message FieldOptions message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - FieldOptions.encodeDelimited = function encodeDelimited(message, writer) { - return this.encode(message, writer).ldelim(); - }; + /** + * ListMembershipsResponse unreachable. + * @member {Array.} unreachable + * @memberof google.cloud.gkehub.v1beta1.ListMembershipsResponse + * @instance + */ + ListMembershipsResponse.prototype.unreachable = $util.emptyArray; - /** - * Decodes a FieldOptions message from the specified reader or buffer. - * @function decode - * @memberof google.protobuf.FieldOptions - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @param {number} [length] Message length if known beforehand - * @returns {google.protobuf.FieldOptions} FieldOptions - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - FieldOptions.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.protobuf.FieldOptions(); - while (reader.pos < end) { - var tag = reader.uint32(); - switch (tag >>> 3) { - case 1: - message.ctype = reader.int32(); - break; - case 2: - message.packed = reader.bool(); - break; - case 6: - message.jstype = reader.int32(); - break; - case 5: - message.lazy = reader.bool(); - break; - case 3: - message.deprecated = reader.bool(); - break; - case 10: - message.weak = reader.bool(); - break; - case 999: - if (!(message.uninterpretedOption && message.uninterpretedOption.length)) - message.uninterpretedOption = []; - message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32())); - break; - case 1052: - if (!(message[".google.api.fieldBehavior"] && message[".google.api.fieldBehavior"].length)) - message[".google.api.fieldBehavior"] = []; - if ((tag & 7) === 2) { - var end2 = reader.uint32() + reader.pos; - while (reader.pos < end2) - message[".google.api.fieldBehavior"].push(reader.int32()); - } else - message[".google.api.fieldBehavior"].push(reader.int32()); - break; - case 1055: - message[".google.api.resourceReference"] = $root.google.api.ResourceReference.decode(reader, reader.uint32()); - break; - default: - reader.skipType(tag & 7); - break; - } - } - return message; - }; + /** + * Creates a new ListMembershipsResponse instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.v1beta1.ListMembershipsResponse + * @static + * @param {google.cloud.gkehub.v1beta1.IListMembershipsResponse=} [properties] Properties to set + * @returns {google.cloud.gkehub.v1beta1.ListMembershipsResponse} ListMembershipsResponse instance + */ + ListMembershipsResponse.create = function create(properties) { + return new ListMembershipsResponse(properties); + }; - /** - * Decodes a FieldOptions message from the specified reader or buffer, length delimited. - * @function decodeDelimited - * @memberof google.protobuf.FieldOptions - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {google.protobuf.FieldOptions} FieldOptions - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - FieldOptions.decodeDelimited = function decodeDelimited(reader) { - if (!(reader instanceof $Reader)) - reader = new $Reader(reader); - return this.decode(reader, reader.uint32()); - }; + /** + * Encodes the specified ListMembershipsResponse message. Does not implicitly {@link google.cloud.gkehub.v1beta1.ListMembershipsResponse.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.v1beta1.ListMembershipsResponse + * @static + * @param {google.cloud.gkehub.v1beta1.IListMembershipsResponse} message ListMembershipsResponse message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + ListMembershipsResponse.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.resources != null && message.resources.length) + for (var i = 0; i < message.resources.length; ++i) + $root.google.cloud.gkehub.v1beta1.Membership.encode(message.resources[i], writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim(); + if (message.nextPageToken != null && Object.hasOwnProperty.call(message, "nextPageToken")) + writer.uint32(/* id 2, wireType 2 =*/18).string(message.nextPageToken); + if (message.unreachable != null && message.unreachable.length) + for (var i = 0; i < message.unreachable.length; ++i) + writer.uint32(/* id 3, wireType 2 =*/26).string(message.unreachable[i]); + return writer; + }; - /** - * Verifies a FieldOptions message. - * @function verify - * @memberof google.protobuf.FieldOptions - * @static - * @param {Object.} message Plain object to verify - * @returns {string|null} `null` if valid, otherwise the reason why it is not - */ - FieldOptions.verify = function verify(message) { - if (typeof message !== "object" || message === null) - return "object expected"; - if (message.ctype != null && message.hasOwnProperty("ctype")) - switch (message.ctype) { - default: - return "ctype: enum value expected"; - case 0: - case 1: - case 2: - break; - } - if (message.packed != null && message.hasOwnProperty("packed")) - if (typeof message.packed !== "boolean") - return "packed: boolean expected"; - if (message.jstype != null && message.hasOwnProperty("jstype")) - switch (message.jstype) { - default: - return "jstype: enum value expected"; - case 0: - case 1: - case 2: - break; - } - if (message.lazy != null && message.hasOwnProperty("lazy")) - if (typeof message.lazy !== "boolean") - return "lazy: boolean expected"; - if (message.deprecated != null && message.hasOwnProperty("deprecated")) - if (typeof message.deprecated !== "boolean") - return "deprecated: boolean expected"; - if (message.weak != null && message.hasOwnProperty("weak")) - if (typeof message.weak !== "boolean") - return "weak: boolean expected"; - if (message.uninterpretedOption != null && message.hasOwnProperty("uninterpretedOption")) { - if (!Array.isArray(message.uninterpretedOption)) - return "uninterpretedOption: array expected"; - for (var i = 0; i < message.uninterpretedOption.length; ++i) { - var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i]); - if (error) - return "uninterpretedOption." + error; - } - } - if (message[".google.api.fieldBehavior"] != null && message.hasOwnProperty(".google.api.fieldBehavior")) { - if (!Array.isArray(message[".google.api.fieldBehavior"])) - return ".google.api.fieldBehavior: array expected"; - for (var i = 0; i < message[".google.api.fieldBehavior"].length; ++i) - switch (message[".google.api.fieldBehavior"][i]) { - default: - return ".google.api.fieldBehavior: enum value[] expected"; - case 0: - case 1: - case 2: - case 3: - case 4: - case 5: - case 6: - break; + /** + * Encodes the specified ListMembershipsResponse message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta1.ListMembershipsResponse.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.v1beta1.ListMembershipsResponse + * @static + * @param {google.cloud.gkehub.v1beta1.IListMembershipsResponse} message ListMembershipsResponse message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + ListMembershipsResponse.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a ListMembershipsResponse message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.v1beta1.ListMembershipsResponse + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.v1beta1.ListMembershipsResponse} ListMembershipsResponse + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + ListMembershipsResponse.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.v1beta1.ListMembershipsResponse(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + if (!(message.resources && message.resources.length)) + message.resources = []; + message.resources.push($root.google.cloud.gkehub.v1beta1.Membership.decode(reader, reader.uint32())); + break; + case 2: + message.nextPageToken = reader.string(); + break; + case 3: + if (!(message.unreachable && message.unreachable.length)) + message.unreachable = []; + message.unreachable.push(reader.string()); + break; + default: + reader.skipType(tag & 7); + break; + } } - } - if (message[".google.api.resourceReference"] != null && message.hasOwnProperty(".google.api.resourceReference")) { - var error = $root.google.api.ResourceReference.verify(message[".google.api.resourceReference"]); - if (error) - return ".google.api.resourceReference." + error; - } - return null; - }; + return message; + }; - /** - * Creates a FieldOptions message from a plain object. Also converts values to their respective internal types. - * @function fromObject - * @memberof google.protobuf.FieldOptions - * @static - * @param {Object.} object Plain object - * @returns {google.protobuf.FieldOptions} FieldOptions - */ - FieldOptions.fromObject = function fromObject(object) { - if (object instanceof $root.google.protobuf.FieldOptions) - return object; - var message = new $root.google.protobuf.FieldOptions(); - switch (object.ctype) { - case "STRING": - case 0: - message.ctype = 0; - break; - case "CORD": - case 1: - message.ctype = 1; - break; - case "STRING_PIECE": - case 2: - message.ctype = 2; - break; - } - if (object.packed != null) - message.packed = Boolean(object.packed); - switch (object.jstype) { - case "JS_NORMAL": - case 0: - message.jstype = 0; - break; - case "JS_STRING": - case 1: - message.jstype = 1; - break; - case "JS_NUMBER": - case 2: - message.jstype = 2; - break; - } - if (object.lazy != null) - message.lazy = Boolean(object.lazy); - if (object.deprecated != null) - message.deprecated = Boolean(object.deprecated); - if (object.weak != null) - message.weak = Boolean(object.weak); - if (object.uninterpretedOption) { - if (!Array.isArray(object.uninterpretedOption)) - throw TypeError(".google.protobuf.FieldOptions.uninterpretedOption: array expected"); - message.uninterpretedOption = []; - for (var i = 0; i < object.uninterpretedOption.length; ++i) { - if (typeof object.uninterpretedOption[i] !== "object") - throw TypeError(".google.protobuf.FieldOptions.uninterpretedOption: object expected"); - message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i]); - } - } - if (object[".google.api.fieldBehavior"]) { - if (!Array.isArray(object[".google.api.fieldBehavior"])) - throw TypeError(".google.protobuf.FieldOptions..google.api.fieldBehavior: array expected"); - message[".google.api.fieldBehavior"] = []; - for (var i = 0; i < object[".google.api.fieldBehavior"].length; ++i) - switch (object[".google.api.fieldBehavior"][i]) { - default: - case "FIELD_BEHAVIOR_UNSPECIFIED": - case 0: - message[".google.api.fieldBehavior"][i] = 0; - break; - case "OPTIONAL": - case 1: - message[".google.api.fieldBehavior"][i] = 1; - break; - case "REQUIRED": - case 2: - message[".google.api.fieldBehavior"][i] = 2; - break; - case "OUTPUT_ONLY": - case 3: - message[".google.api.fieldBehavior"][i] = 3; - break; - case "INPUT_ONLY": - case 4: - message[".google.api.fieldBehavior"][i] = 4; - break; - case "IMMUTABLE": - case 5: - message[".google.api.fieldBehavior"][i] = 5; - break; - case "UNORDERED_LIST": - case 6: - message[".google.api.fieldBehavior"][i] = 6; - break; + /** + * Decodes a ListMembershipsResponse message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.v1beta1.ListMembershipsResponse + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.v1beta1.ListMembershipsResponse} ListMembershipsResponse + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + ListMembershipsResponse.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a ListMembershipsResponse message. + * @function verify + * @memberof google.cloud.gkehub.v1beta1.ListMembershipsResponse + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + ListMembershipsResponse.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.resources != null && message.hasOwnProperty("resources")) { + if (!Array.isArray(message.resources)) + return "resources: array expected"; + for (var i = 0; i < message.resources.length; ++i) { + var error = $root.google.cloud.gkehub.v1beta1.Membership.verify(message.resources[i]); + if (error) + return "resources." + error; + } } - } - if (object[".google.api.resourceReference"] != null) { - if (typeof object[".google.api.resourceReference"] !== "object") - throw TypeError(".google.protobuf.FieldOptions..google.api.resourceReference: object expected"); - message[".google.api.resourceReference"] = $root.google.api.ResourceReference.fromObject(object[".google.api.resourceReference"]); - } - return message; - }; + if (message.nextPageToken != null && message.hasOwnProperty("nextPageToken")) + if (!$util.isString(message.nextPageToken)) + return "nextPageToken: string expected"; + if (message.unreachable != null && message.hasOwnProperty("unreachable")) { + if (!Array.isArray(message.unreachable)) + return "unreachable: array expected"; + for (var i = 0; i < message.unreachable.length; ++i) + if (!$util.isString(message.unreachable[i])) + return "unreachable: string[] expected"; + } + return null; + }; - /** - * Creates a plain object from a FieldOptions message. Also converts values to other types if specified. - * @function toObject - * @memberof google.protobuf.FieldOptions - * @static - * @param {google.protobuf.FieldOptions} message FieldOptions - * @param {$protobuf.IConversionOptions} [options] Conversion options - * @returns {Object.} Plain object - */ - FieldOptions.toObject = function toObject(message, options) { - if (!options) - options = {}; - var object = {}; - if (options.arrays || options.defaults) { - object.uninterpretedOption = []; - object[".google.api.fieldBehavior"] = []; - } - if (options.defaults) { - object.ctype = options.enums === String ? "STRING" : 0; - object.packed = false; - object.deprecated = false; - object.lazy = false; - object.jstype = options.enums === String ? "JS_NORMAL" : 0; - object.weak = false; - object[".google.api.resourceReference"] = null; - } - if (message.ctype != null && message.hasOwnProperty("ctype")) - object.ctype = options.enums === String ? $root.google.protobuf.FieldOptions.CType[message.ctype] : message.ctype; - if (message.packed != null && message.hasOwnProperty("packed")) - object.packed = message.packed; - if (message.deprecated != null && message.hasOwnProperty("deprecated")) - object.deprecated = message.deprecated; - if (message.lazy != null && message.hasOwnProperty("lazy")) - object.lazy = message.lazy; - if (message.jstype != null && message.hasOwnProperty("jstype")) - object.jstype = options.enums === String ? $root.google.protobuf.FieldOptions.JSType[message.jstype] : message.jstype; - if (message.weak != null && message.hasOwnProperty("weak")) - object.weak = message.weak; - if (message.uninterpretedOption && message.uninterpretedOption.length) { - object.uninterpretedOption = []; - for (var j = 0; j < message.uninterpretedOption.length; ++j) - object.uninterpretedOption[j] = $root.google.protobuf.UninterpretedOption.toObject(message.uninterpretedOption[j], options); - } - if (message[".google.api.fieldBehavior"] && message[".google.api.fieldBehavior"].length) { - object[".google.api.fieldBehavior"] = []; - for (var j = 0; j < message[".google.api.fieldBehavior"].length; ++j) - object[".google.api.fieldBehavior"][j] = options.enums === String ? $root.google.api.FieldBehavior[message[".google.api.fieldBehavior"][j]] : message[".google.api.fieldBehavior"][j]; - } - if (message[".google.api.resourceReference"] != null && message.hasOwnProperty(".google.api.resourceReference")) - object[".google.api.resourceReference"] = $root.google.api.ResourceReference.toObject(message[".google.api.resourceReference"], options); - return object; - }; + /** + * Creates a ListMembershipsResponse message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.v1beta1.ListMembershipsResponse + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.v1beta1.ListMembershipsResponse} ListMembershipsResponse + */ + ListMembershipsResponse.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.v1beta1.ListMembershipsResponse) + return object; + var message = new $root.google.cloud.gkehub.v1beta1.ListMembershipsResponse(); + if (object.resources) { + if (!Array.isArray(object.resources)) + throw TypeError(".google.cloud.gkehub.v1beta1.ListMembershipsResponse.resources: array expected"); + message.resources = []; + for (var i = 0; i < object.resources.length; ++i) { + if (typeof object.resources[i] !== "object") + throw TypeError(".google.cloud.gkehub.v1beta1.ListMembershipsResponse.resources: object expected"); + message.resources[i] = $root.google.cloud.gkehub.v1beta1.Membership.fromObject(object.resources[i]); + } + } + if (object.nextPageToken != null) + message.nextPageToken = String(object.nextPageToken); + if (object.unreachable) { + if (!Array.isArray(object.unreachable)) + throw TypeError(".google.cloud.gkehub.v1beta1.ListMembershipsResponse.unreachable: array expected"); + message.unreachable = []; + for (var i = 0; i < object.unreachable.length; ++i) + message.unreachable[i] = String(object.unreachable[i]); + } + return message; + }; - /** - * Converts this FieldOptions to JSON. - * @function toJSON - * @memberof google.protobuf.FieldOptions - * @instance - * @returns {Object.} JSON object - */ - FieldOptions.prototype.toJSON = function toJSON() { - return this.constructor.toObject(this, $protobuf.util.toJSONOptions); - }; + /** + * Creates a plain object from a ListMembershipsResponse message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.v1beta1.ListMembershipsResponse + * @static + * @param {google.cloud.gkehub.v1beta1.ListMembershipsResponse} message ListMembershipsResponse + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + ListMembershipsResponse.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.arrays || options.defaults) { + object.resources = []; + object.unreachable = []; + } + if (options.defaults) + object.nextPageToken = ""; + if (message.resources && message.resources.length) { + object.resources = []; + for (var j = 0; j < message.resources.length; ++j) + object.resources[j] = $root.google.cloud.gkehub.v1beta1.Membership.toObject(message.resources[j], options); + } + if (message.nextPageToken != null && message.hasOwnProperty("nextPageToken")) + object.nextPageToken = message.nextPageToken; + if (message.unreachable && message.unreachable.length) { + object.unreachable = []; + for (var j = 0; j < message.unreachable.length; ++j) + object.unreachable[j] = message.unreachable[j]; + } + return object; + }; - /** - * CType enum. - * @name google.protobuf.FieldOptions.CType - * @enum {number} - * @property {number} STRING=0 STRING value - * @property {number} CORD=1 CORD value - * @property {number} STRING_PIECE=2 STRING_PIECE value - */ - FieldOptions.CType = (function() { - var valuesById = {}, values = Object.create(valuesById); - values[valuesById[0] = "STRING"] = 0; - values[valuesById[1] = "CORD"] = 1; - values[valuesById[2] = "STRING_PIECE"] = 2; - return values; - })(); + /** + * Converts this ListMembershipsResponse to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.v1beta1.ListMembershipsResponse + * @instance + * @returns {Object.} JSON object + */ + ListMembershipsResponse.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; - /** - * JSType enum. - * @name google.protobuf.FieldOptions.JSType - * @enum {number} - * @property {number} JS_NORMAL=0 JS_NORMAL value - * @property {number} JS_STRING=1 JS_STRING value - * @property {number} JS_NUMBER=2 JS_NUMBER value - */ - FieldOptions.JSType = (function() { - var valuesById = {}, values = Object.create(valuesById); - values[valuesById[0] = "JS_NORMAL"] = 0; - values[valuesById[1] = "JS_STRING"] = 1; - values[valuesById[2] = "JS_NUMBER"] = 2; - return values; - })(); + return ListMembershipsResponse; + })(); - return FieldOptions; - })(); + v1beta1.GetMembershipRequest = (function() { + + /** + * Properties of a GetMembershipRequest. + * @memberof google.cloud.gkehub.v1beta1 + * @interface IGetMembershipRequest + * @property {string|null} [name] GetMembershipRequest name + */ + + /** + * Constructs a new GetMembershipRequest. + * @memberof google.cloud.gkehub.v1beta1 + * @classdesc Represents a GetMembershipRequest. + * @implements IGetMembershipRequest + * @constructor + * @param {google.cloud.gkehub.v1beta1.IGetMembershipRequest=} [properties] Properties to set + */ + function GetMembershipRequest(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]]; + } + + /** + * GetMembershipRequest name. + * @member {string} name + * @memberof google.cloud.gkehub.v1beta1.GetMembershipRequest + * @instance + */ + GetMembershipRequest.prototype.name = ""; + + /** + * Creates a new GetMembershipRequest instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.v1beta1.GetMembershipRequest + * @static + * @param {google.cloud.gkehub.v1beta1.IGetMembershipRequest=} [properties] Properties to set + * @returns {google.cloud.gkehub.v1beta1.GetMembershipRequest} GetMembershipRequest instance + */ + GetMembershipRequest.create = function create(properties) { + return new GetMembershipRequest(properties); + }; + + /** + * Encodes the specified GetMembershipRequest message. Does not implicitly {@link google.cloud.gkehub.v1beta1.GetMembershipRequest.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.v1beta1.GetMembershipRequest + * @static + * @param {google.cloud.gkehub.v1beta1.IGetMembershipRequest} message GetMembershipRequest message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + GetMembershipRequest.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.name != null && Object.hasOwnProperty.call(message, "name")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.name); + return writer; + }; - protobuf.OneofOptions = (function() { + /** + * Encodes the specified GetMembershipRequest message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta1.GetMembershipRequest.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.v1beta1.GetMembershipRequest + * @static + * @param {google.cloud.gkehub.v1beta1.IGetMembershipRequest} message GetMembershipRequest message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + GetMembershipRequest.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; - /** - * Properties of an OneofOptions. - * @memberof google.protobuf - * @interface IOneofOptions - * @property {Array.|null} [uninterpretedOption] OneofOptions uninterpretedOption - */ + /** + * Decodes a GetMembershipRequest message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.v1beta1.GetMembershipRequest + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.v1beta1.GetMembershipRequest} GetMembershipRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + GetMembershipRequest.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.v1beta1.GetMembershipRequest(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.name = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; - /** - * Constructs a new OneofOptions. - * @memberof google.protobuf - * @classdesc Represents an OneofOptions. - * @implements IOneofOptions - * @constructor - * @param {google.protobuf.IOneofOptions=} [properties] Properties to set - */ - function OneofOptions(properties) { - this.uninterpretedOption = []; - 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]]; - } + /** + * Decodes a GetMembershipRequest message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.v1beta1.GetMembershipRequest + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.v1beta1.GetMembershipRequest} GetMembershipRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + GetMembershipRequest.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; - /** - * OneofOptions uninterpretedOption. - * @member {Array.} uninterpretedOption - * @memberof google.protobuf.OneofOptions - * @instance - */ - OneofOptions.prototype.uninterpretedOption = $util.emptyArray; + /** + * Verifies a GetMembershipRequest message. + * @function verify + * @memberof google.cloud.gkehub.v1beta1.GetMembershipRequest + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + GetMembershipRequest.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.name != null && message.hasOwnProperty("name")) + if (!$util.isString(message.name)) + return "name: string expected"; + return null; + }; - /** - * Creates a new OneofOptions instance using the specified properties. - * @function create - * @memberof google.protobuf.OneofOptions - * @static - * @param {google.protobuf.IOneofOptions=} [properties] Properties to set - * @returns {google.protobuf.OneofOptions} OneofOptions instance - */ - OneofOptions.create = function create(properties) { - return new OneofOptions(properties); - }; + /** + * Creates a GetMembershipRequest message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.v1beta1.GetMembershipRequest + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.v1beta1.GetMembershipRequest} GetMembershipRequest + */ + GetMembershipRequest.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.v1beta1.GetMembershipRequest) + return object; + var message = new $root.google.cloud.gkehub.v1beta1.GetMembershipRequest(); + if (object.name != null) + message.name = String(object.name); + return message; + }; - /** - * Encodes the specified OneofOptions message. Does not implicitly {@link google.protobuf.OneofOptions.verify|verify} messages. - * @function encode - * @memberof google.protobuf.OneofOptions - * @static - * @param {google.protobuf.IOneofOptions} message OneofOptions message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - OneofOptions.encode = function encode(message, writer) { - if (!writer) - writer = $Writer.create(); - if (message.uninterpretedOption != null && message.uninterpretedOption.length) - for (var i = 0; i < message.uninterpretedOption.length; ++i) - $root.google.protobuf.UninterpretedOption.encode(message.uninterpretedOption[i], writer.uint32(/* id 999, wireType 2 =*/7994).fork()).ldelim(); - return writer; - }; + /** + * Creates a plain object from a GetMembershipRequest message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.v1beta1.GetMembershipRequest + * @static + * @param {google.cloud.gkehub.v1beta1.GetMembershipRequest} message GetMembershipRequest + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + GetMembershipRequest.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) + object.name = ""; + if (message.name != null && message.hasOwnProperty("name")) + object.name = message.name; + return object; + }; - /** - * Encodes the specified OneofOptions message, length delimited. Does not implicitly {@link google.protobuf.OneofOptions.verify|verify} messages. - * @function encodeDelimited - * @memberof google.protobuf.OneofOptions - * @static - * @param {google.protobuf.IOneofOptions} message OneofOptions message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - OneofOptions.encodeDelimited = function encodeDelimited(message, writer) { - return this.encode(message, writer).ldelim(); - }; + /** + * Converts this GetMembershipRequest to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.v1beta1.GetMembershipRequest + * @instance + * @returns {Object.} JSON object + */ + GetMembershipRequest.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; - /** - * Decodes an OneofOptions message from the specified reader or buffer. - * @function decode - * @memberof google.protobuf.OneofOptions - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @param {number} [length] Message length if known beforehand - * @returns {google.protobuf.OneofOptions} OneofOptions - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - OneofOptions.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.protobuf.OneofOptions(); - while (reader.pos < end) { - var tag = reader.uint32(); - switch (tag >>> 3) { - case 999: - if (!(message.uninterpretedOption && message.uninterpretedOption.length)) - message.uninterpretedOption = []; - message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32())); - break; - default: - reader.skipType(tag & 7); - break; - } - } - return message; - }; + return GetMembershipRequest; + })(); - /** - * Decodes an OneofOptions message from the specified reader or buffer, length delimited. - * @function decodeDelimited - * @memberof google.protobuf.OneofOptions - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {google.protobuf.OneofOptions} OneofOptions - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - OneofOptions.decodeDelimited = function decodeDelimited(reader) { - if (!(reader instanceof $Reader)) - reader = new $Reader(reader); - return this.decode(reader, reader.uint32()); - }; + v1beta1.CreateMembershipRequest = (function() { - /** - * Verifies an OneofOptions message. - * @function verify - * @memberof google.protobuf.OneofOptions - * @static - * @param {Object.} message Plain object to verify - * @returns {string|null} `null` if valid, otherwise the reason why it is not - */ - OneofOptions.verify = function verify(message) { - if (typeof message !== "object" || message === null) - return "object expected"; - if (message.uninterpretedOption != null && message.hasOwnProperty("uninterpretedOption")) { - if (!Array.isArray(message.uninterpretedOption)) - return "uninterpretedOption: array expected"; - for (var i = 0; i < message.uninterpretedOption.length; ++i) { - var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i]); - if (error) - return "uninterpretedOption." + error; - } - } - return null; - }; + /** + * Properties of a CreateMembershipRequest. + * @memberof google.cloud.gkehub.v1beta1 + * @interface ICreateMembershipRequest + * @property {string|null} [parent] CreateMembershipRequest parent + * @property {string|null} [membershipId] CreateMembershipRequest membershipId + * @property {google.cloud.gkehub.v1beta1.IMembership|null} [resource] CreateMembershipRequest resource + */ - /** - * Creates an OneofOptions message from a plain object. Also converts values to their respective internal types. - * @function fromObject - * @memberof google.protobuf.OneofOptions - * @static - * @param {Object.} object Plain object - * @returns {google.protobuf.OneofOptions} OneofOptions - */ - OneofOptions.fromObject = function fromObject(object) { - if (object instanceof $root.google.protobuf.OneofOptions) - return object; - var message = new $root.google.protobuf.OneofOptions(); - if (object.uninterpretedOption) { - if (!Array.isArray(object.uninterpretedOption)) - throw TypeError(".google.protobuf.OneofOptions.uninterpretedOption: array expected"); - message.uninterpretedOption = []; - for (var i = 0; i < object.uninterpretedOption.length; ++i) { - if (typeof object.uninterpretedOption[i] !== "object") - throw TypeError(".google.protobuf.OneofOptions.uninterpretedOption: object expected"); - message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i]); + /** + * Constructs a new CreateMembershipRequest. + * @memberof google.cloud.gkehub.v1beta1 + * @classdesc Represents a CreateMembershipRequest. + * @implements ICreateMembershipRequest + * @constructor + * @param {google.cloud.gkehub.v1beta1.ICreateMembershipRequest=} [properties] Properties to set + */ + function CreateMembershipRequest(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]]; } - } - return message; - }; - /** - * Creates a plain object from an OneofOptions message. Also converts values to other types if specified. - * @function toObject - * @memberof google.protobuf.OneofOptions - * @static - * @param {google.protobuf.OneofOptions} message OneofOptions - * @param {$protobuf.IConversionOptions} [options] Conversion options - * @returns {Object.} Plain object - */ - OneofOptions.toObject = function toObject(message, options) { - if (!options) - options = {}; - var object = {}; - if (options.arrays || options.defaults) - object.uninterpretedOption = []; - if (message.uninterpretedOption && message.uninterpretedOption.length) { - object.uninterpretedOption = []; - for (var j = 0; j < message.uninterpretedOption.length; ++j) - object.uninterpretedOption[j] = $root.google.protobuf.UninterpretedOption.toObject(message.uninterpretedOption[j], options); - } - return object; - }; + /** + * CreateMembershipRequest parent. + * @member {string} parent + * @memberof google.cloud.gkehub.v1beta1.CreateMembershipRequest + * @instance + */ + CreateMembershipRequest.prototype.parent = ""; - /** - * Converts this OneofOptions to JSON. - * @function toJSON - * @memberof google.protobuf.OneofOptions - * @instance - * @returns {Object.} JSON object - */ - OneofOptions.prototype.toJSON = function toJSON() { - return this.constructor.toObject(this, $protobuf.util.toJSONOptions); - }; + /** + * CreateMembershipRequest membershipId. + * @member {string} membershipId + * @memberof google.cloud.gkehub.v1beta1.CreateMembershipRequest + * @instance + */ + CreateMembershipRequest.prototype.membershipId = ""; - return OneofOptions; - })(); + /** + * CreateMembershipRequest resource. + * @member {google.cloud.gkehub.v1beta1.IMembership|null|undefined} resource + * @memberof google.cloud.gkehub.v1beta1.CreateMembershipRequest + * @instance + */ + CreateMembershipRequest.prototype.resource = null; - protobuf.EnumOptions = (function() { + /** + * Creates a new CreateMembershipRequest instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.v1beta1.CreateMembershipRequest + * @static + * @param {google.cloud.gkehub.v1beta1.ICreateMembershipRequest=} [properties] Properties to set + * @returns {google.cloud.gkehub.v1beta1.CreateMembershipRequest} CreateMembershipRequest instance + */ + CreateMembershipRequest.create = function create(properties) { + return new CreateMembershipRequest(properties); + }; - /** - * Properties of an EnumOptions. - * @memberof google.protobuf - * @interface IEnumOptions - * @property {boolean|null} [allowAlias] EnumOptions allowAlias - * @property {boolean|null} [deprecated] EnumOptions deprecated - * @property {Array.|null} [uninterpretedOption] EnumOptions uninterpretedOption - */ + /** + * Encodes the specified CreateMembershipRequest message. Does not implicitly {@link google.cloud.gkehub.v1beta1.CreateMembershipRequest.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.v1beta1.CreateMembershipRequest + * @static + * @param {google.cloud.gkehub.v1beta1.ICreateMembershipRequest} message CreateMembershipRequest message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + CreateMembershipRequest.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.parent != null && Object.hasOwnProperty.call(message, "parent")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.parent); + if (message.membershipId != null && Object.hasOwnProperty.call(message, "membershipId")) + writer.uint32(/* id 2, wireType 2 =*/18).string(message.membershipId); + if (message.resource != null && Object.hasOwnProperty.call(message, "resource")) + $root.google.cloud.gkehub.v1beta1.Membership.encode(message.resource, writer.uint32(/* id 3, wireType 2 =*/26).fork()).ldelim(); + return writer; + }; - /** - * Constructs a new EnumOptions. - * @memberof google.protobuf - * @classdesc Represents an EnumOptions. - * @implements IEnumOptions - * @constructor - * @param {google.protobuf.IEnumOptions=} [properties] Properties to set - */ - function EnumOptions(properties) { - this.uninterpretedOption = []; - 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]]; - } + /** + * Encodes the specified CreateMembershipRequest message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta1.CreateMembershipRequest.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.v1beta1.CreateMembershipRequest + * @static + * @param {google.cloud.gkehub.v1beta1.ICreateMembershipRequest} message CreateMembershipRequest message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + CreateMembershipRequest.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; - /** - * EnumOptions allowAlias. - * @member {boolean} allowAlias - * @memberof google.protobuf.EnumOptions - * @instance - */ - EnumOptions.prototype.allowAlias = false; + /** + * Decodes a CreateMembershipRequest message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.v1beta1.CreateMembershipRequest + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.v1beta1.CreateMembershipRequest} CreateMembershipRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + CreateMembershipRequest.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.v1beta1.CreateMembershipRequest(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.parent = reader.string(); + break; + case 2: + message.membershipId = reader.string(); + break; + case 3: + message.resource = $root.google.cloud.gkehub.v1beta1.Membership.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a CreateMembershipRequest message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.v1beta1.CreateMembershipRequest + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.v1beta1.CreateMembershipRequest} CreateMembershipRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + CreateMembershipRequest.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a CreateMembershipRequest message. + * @function verify + * @memberof google.cloud.gkehub.v1beta1.CreateMembershipRequest + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + CreateMembershipRequest.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.parent != null && message.hasOwnProperty("parent")) + if (!$util.isString(message.parent)) + return "parent: string expected"; + if (message.membershipId != null && message.hasOwnProperty("membershipId")) + if (!$util.isString(message.membershipId)) + return "membershipId: string expected"; + if (message.resource != null && message.hasOwnProperty("resource")) { + var error = $root.google.cloud.gkehub.v1beta1.Membership.verify(message.resource); + if (error) + return "resource." + error; + } + return null; + }; + + /** + * Creates a CreateMembershipRequest message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.v1beta1.CreateMembershipRequest + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.v1beta1.CreateMembershipRequest} CreateMembershipRequest + */ + CreateMembershipRequest.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.v1beta1.CreateMembershipRequest) + return object; + var message = new $root.google.cloud.gkehub.v1beta1.CreateMembershipRequest(); + if (object.parent != null) + message.parent = String(object.parent); + if (object.membershipId != null) + message.membershipId = String(object.membershipId); + if (object.resource != null) { + if (typeof object.resource !== "object") + throw TypeError(".google.cloud.gkehub.v1beta1.CreateMembershipRequest.resource: object expected"); + message.resource = $root.google.cloud.gkehub.v1beta1.Membership.fromObject(object.resource); + } + return message; + }; - /** - * EnumOptions deprecated. - * @member {boolean} deprecated - * @memberof google.protobuf.EnumOptions - * @instance - */ - EnumOptions.prototype.deprecated = false; + /** + * Creates a plain object from a CreateMembershipRequest message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.v1beta1.CreateMembershipRequest + * @static + * @param {google.cloud.gkehub.v1beta1.CreateMembershipRequest} message CreateMembershipRequest + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + CreateMembershipRequest.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.parent = ""; + object.membershipId = ""; + object.resource = null; + } + if (message.parent != null && message.hasOwnProperty("parent")) + object.parent = message.parent; + if (message.membershipId != null && message.hasOwnProperty("membershipId")) + object.membershipId = message.membershipId; + if (message.resource != null && message.hasOwnProperty("resource")) + object.resource = $root.google.cloud.gkehub.v1beta1.Membership.toObject(message.resource, options); + return object; + }; - /** - * EnumOptions uninterpretedOption. - * @member {Array.} uninterpretedOption - * @memberof google.protobuf.EnumOptions - * @instance - */ - EnumOptions.prototype.uninterpretedOption = $util.emptyArray; + /** + * Converts this CreateMembershipRequest to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.v1beta1.CreateMembershipRequest + * @instance + * @returns {Object.} JSON object + */ + CreateMembershipRequest.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; - /** - * Creates a new EnumOptions instance using the specified properties. - * @function create - * @memberof google.protobuf.EnumOptions - * @static - * @param {google.protobuf.IEnumOptions=} [properties] Properties to set - * @returns {google.protobuf.EnumOptions} EnumOptions instance - */ - EnumOptions.create = function create(properties) { - return new EnumOptions(properties); - }; + return CreateMembershipRequest; + })(); - /** - * Encodes the specified EnumOptions message. Does not implicitly {@link google.protobuf.EnumOptions.verify|verify} messages. - * @function encode - * @memberof google.protobuf.EnumOptions - * @static - * @param {google.protobuf.IEnumOptions} message EnumOptions message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - EnumOptions.encode = function encode(message, writer) { - if (!writer) - writer = $Writer.create(); - if (message.allowAlias != null && Object.hasOwnProperty.call(message, "allowAlias")) - writer.uint32(/* id 2, wireType 0 =*/16).bool(message.allowAlias); - if (message.deprecated != null && Object.hasOwnProperty.call(message, "deprecated")) - writer.uint32(/* id 3, wireType 0 =*/24).bool(message.deprecated); - if (message.uninterpretedOption != null && message.uninterpretedOption.length) - for (var i = 0; i < message.uninterpretedOption.length; ++i) - $root.google.protobuf.UninterpretedOption.encode(message.uninterpretedOption[i], writer.uint32(/* id 999, wireType 2 =*/7994).fork()).ldelim(); - return writer; - }; + v1beta1.DeleteMembershipRequest = (function() { - /** - * Encodes the specified EnumOptions message, length delimited. Does not implicitly {@link google.protobuf.EnumOptions.verify|verify} messages. - * @function encodeDelimited - * @memberof google.protobuf.EnumOptions - * @static - * @param {google.protobuf.IEnumOptions} message EnumOptions message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - EnumOptions.encodeDelimited = function encodeDelimited(message, writer) { - return this.encode(message, writer).ldelim(); - }; + /** + * Properties of a DeleteMembershipRequest. + * @memberof google.cloud.gkehub.v1beta1 + * @interface IDeleteMembershipRequest + * @property {string|null} [name] DeleteMembershipRequest name + */ - /** - * Decodes an EnumOptions message from the specified reader or buffer. - * @function decode - * @memberof google.protobuf.EnumOptions - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @param {number} [length] Message length if known beforehand - * @returns {google.protobuf.EnumOptions} EnumOptions - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - EnumOptions.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.protobuf.EnumOptions(); - while (reader.pos < end) { - var tag = reader.uint32(); - switch (tag >>> 3) { - case 2: - message.allowAlias = reader.bool(); - break; - case 3: - message.deprecated = reader.bool(); - break; - case 999: - if (!(message.uninterpretedOption && message.uninterpretedOption.length)) - message.uninterpretedOption = []; - message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32())); - break; - default: - reader.skipType(tag & 7); - break; + /** + * Constructs a new DeleteMembershipRequest. + * @memberof google.cloud.gkehub.v1beta1 + * @classdesc Represents a DeleteMembershipRequest. + * @implements IDeleteMembershipRequest + * @constructor + * @param {google.cloud.gkehub.v1beta1.IDeleteMembershipRequest=} [properties] Properties to set + */ + function DeleteMembershipRequest(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]]; } - } - return message; - }; - /** - * Decodes an EnumOptions message from the specified reader or buffer, length delimited. - * @function decodeDelimited - * @memberof google.protobuf.EnumOptions - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {google.protobuf.EnumOptions} EnumOptions - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - EnumOptions.decodeDelimited = function decodeDelimited(reader) { - if (!(reader instanceof $Reader)) - reader = new $Reader(reader); - return this.decode(reader, reader.uint32()); - }; + /** + * DeleteMembershipRequest name. + * @member {string} name + * @memberof google.cloud.gkehub.v1beta1.DeleteMembershipRequest + * @instance + */ + DeleteMembershipRequest.prototype.name = ""; - /** - * Verifies an EnumOptions message. - * @function verify - * @memberof google.protobuf.EnumOptions - * @static - * @param {Object.} message Plain object to verify - * @returns {string|null} `null` if valid, otherwise the reason why it is not - */ - EnumOptions.verify = function verify(message) { - if (typeof message !== "object" || message === null) - return "object expected"; - if (message.allowAlias != null && message.hasOwnProperty("allowAlias")) - if (typeof message.allowAlias !== "boolean") - return "allowAlias: boolean expected"; - if (message.deprecated != null && message.hasOwnProperty("deprecated")) - if (typeof message.deprecated !== "boolean") - return "deprecated: boolean expected"; - if (message.uninterpretedOption != null && message.hasOwnProperty("uninterpretedOption")) { - if (!Array.isArray(message.uninterpretedOption)) - return "uninterpretedOption: array expected"; - for (var i = 0; i < message.uninterpretedOption.length; ++i) { - var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i]); - if (error) - return "uninterpretedOption." + error; - } - } - return null; - }; + /** + * Creates a new DeleteMembershipRequest instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.v1beta1.DeleteMembershipRequest + * @static + * @param {google.cloud.gkehub.v1beta1.IDeleteMembershipRequest=} [properties] Properties to set + * @returns {google.cloud.gkehub.v1beta1.DeleteMembershipRequest} DeleteMembershipRequest instance + */ + DeleteMembershipRequest.create = function create(properties) { + return new DeleteMembershipRequest(properties); + }; + + /** + * Encodes the specified DeleteMembershipRequest message. Does not implicitly {@link google.cloud.gkehub.v1beta1.DeleteMembershipRequest.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.v1beta1.DeleteMembershipRequest + * @static + * @param {google.cloud.gkehub.v1beta1.IDeleteMembershipRequest} message DeleteMembershipRequest message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + DeleteMembershipRequest.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.name != null && Object.hasOwnProperty.call(message, "name")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.name); + return writer; + }; + + /** + * Encodes the specified DeleteMembershipRequest message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta1.DeleteMembershipRequest.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.v1beta1.DeleteMembershipRequest + * @static + * @param {google.cloud.gkehub.v1beta1.IDeleteMembershipRequest} message DeleteMembershipRequest message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + DeleteMembershipRequest.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; - /** - * Creates an EnumOptions message from a plain object. Also converts values to their respective internal types. - * @function fromObject - * @memberof google.protobuf.EnumOptions - * @static - * @param {Object.} object Plain object - * @returns {google.protobuf.EnumOptions} EnumOptions - */ - EnumOptions.fromObject = function fromObject(object) { - if (object instanceof $root.google.protobuf.EnumOptions) - return object; - var message = new $root.google.protobuf.EnumOptions(); - if (object.allowAlias != null) - message.allowAlias = Boolean(object.allowAlias); - if (object.deprecated != null) - message.deprecated = Boolean(object.deprecated); - if (object.uninterpretedOption) { - if (!Array.isArray(object.uninterpretedOption)) - throw TypeError(".google.protobuf.EnumOptions.uninterpretedOption: array expected"); - message.uninterpretedOption = []; - for (var i = 0; i < object.uninterpretedOption.length; ++i) { - if (typeof object.uninterpretedOption[i] !== "object") - throw TypeError(".google.protobuf.EnumOptions.uninterpretedOption: object expected"); - message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i]); - } - } - return message; - }; + /** + * Decodes a DeleteMembershipRequest message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.v1beta1.DeleteMembershipRequest + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.v1beta1.DeleteMembershipRequest} DeleteMembershipRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + DeleteMembershipRequest.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.v1beta1.DeleteMembershipRequest(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.name = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; - /** - * Creates a plain object from an EnumOptions message. Also converts values to other types if specified. - * @function toObject - * @memberof google.protobuf.EnumOptions - * @static - * @param {google.protobuf.EnumOptions} message EnumOptions - * @param {$protobuf.IConversionOptions} [options] Conversion options - * @returns {Object.} Plain object - */ - EnumOptions.toObject = function toObject(message, options) { - if (!options) - options = {}; - var object = {}; - if (options.arrays || options.defaults) - object.uninterpretedOption = []; - if (options.defaults) { - object.allowAlias = false; - object.deprecated = false; - } - if (message.allowAlias != null && message.hasOwnProperty("allowAlias")) - object.allowAlias = message.allowAlias; - if (message.deprecated != null && message.hasOwnProperty("deprecated")) - object.deprecated = message.deprecated; - if (message.uninterpretedOption && message.uninterpretedOption.length) { - object.uninterpretedOption = []; - for (var j = 0; j < message.uninterpretedOption.length; ++j) - object.uninterpretedOption[j] = $root.google.protobuf.UninterpretedOption.toObject(message.uninterpretedOption[j], options); - } - return object; - }; + /** + * Decodes a DeleteMembershipRequest message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.v1beta1.DeleteMembershipRequest + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.v1beta1.DeleteMembershipRequest} DeleteMembershipRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + DeleteMembershipRequest.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; - /** - * Converts this EnumOptions to JSON. - * @function toJSON - * @memberof google.protobuf.EnumOptions - * @instance - * @returns {Object.} JSON object - */ - EnumOptions.prototype.toJSON = function toJSON() { - return this.constructor.toObject(this, $protobuf.util.toJSONOptions); - }; + /** + * Verifies a DeleteMembershipRequest message. + * @function verify + * @memberof google.cloud.gkehub.v1beta1.DeleteMembershipRequest + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + DeleteMembershipRequest.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.name != null && message.hasOwnProperty("name")) + if (!$util.isString(message.name)) + return "name: string expected"; + return null; + }; - return EnumOptions; - })(); + /** + * Creates a DeleteMembershipRequest message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.v1beta1.DeleteMembershipRequest + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.v1beta1.DeleteMembershipRequest} DeleteMembershipRequest + */ + DeleteMembershipRequest.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.v1beta1.DeleteMembershipRequest) + return object; + var message = new $root.google.cloud.gkehub.v1beta1.DeleteMembershipRequest(); + if (object.name != null) + message.name = String(object.name); + return message; + }; - protobuf.EnumValueOptions = (function() { + /** + * Creates a plain object from a DeleteMembershipRequest message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.v1beta1.DeleteMembershipRequest + * @static + * @param {google.cloud.gkehub.v1beta1.DeleteMembershipRequest} message DeleteMembershipRequest + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + DeleteMembershipRequest.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) + object.name = ""; + if (message.name != null && message.hasOwnProperty("name")) + object.name = message.name; + return object; + }; - /** - * Properties of an EnumValueOptions. - * @memberof google.protobuf - * @interface IEnumValueOptions - * @property {boolean|null} [deprecated] EnumValueOptions deprecated - * @property {Array.|null} [uninterpretedOption] EnumValueOptions uninterpretedOption - */ + /** + * Converts this DeleteMembershipRequest to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.v1beta1.DeleteMembershipRequest + * @instance + * @returns {Object.} JSON object + */ + DeleteMembershipRequest.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; - /** - * Constructs a new EnumValueOptions. - * @memberof google.protobuf - * @classdesc Represents an EnumValueOptions. - * @implements IEnumValueOptions - * @constructor - * @param {google.protobuf.IEnumValueOptions=} [properties] Properties to set - */ - function EnumValueOptions(properties) { - this.uninterpretedOption = []; - 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]]; - } + return DeleteMembershipRequest; + })(); - /** - * EnumValueOptions deprecated. - * @member {boolean} deprecated - * @memberof google.protobuf.EnumValueOptions - * @instance - */ - EnumValueOptions.prototype.deprecated = false; + v1beta1.UpdateMembershipRequest = (function() { - /** - * EnumValueOptions uninterpretedOption. - * @member {Array.} uninterpretedOption - * @memberof google.protobuf.EnumValueOptions - * @instance - */ - EnumValueOptions.prototype.uninterpretedOption = $util.emptyArray; + /** + * Properties of an UpdateMembershipRequest. + * @memberof google.cloud.gkehub.v1beta1 + * @interface IUpdateMembershipRequest + * @property {string|null} [name] UpdateMembershipRequest name + * @property {google.protobuf.IFieldMask|null} [updateMask] UpdateMembershipRequest updateMask + * @property {google.cloud.gkehub.v1beta1.IMembership|null} [resource] UpdateMembershipRequest resource + */ - /** - * Creates a new EnumValueOptions instance using the specified properties. - * @function create - * @memberof google.protobuf.EnumValueOptions - * @static - * @param {google.protobuf.IEnumValueOptions=} [properties] Properties to set - * @returns {google.protobuf.EnumValueOptions} EnumValueOptions instance - */ - EnumValueOptions.create = function create(properties) { - return new EnumValueOptions(properties); - }; + /** + * Constructs a new UpdateMembershipRequest. + * @memberof google.cloud.gkehub.v1beta1 + * @classdesc Represents an UpdateMembershipRequest. + * @implements IUpdateMembershipRequest + * @constructor + * @param {google.cloud.gkehub.v1beta1.IUpdateMembershipRequest=} [properties] Properties to set + */ + function UpdateMembershipRequest(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]]; + } + + /** + * UpdateMembershipRequest name. + * @member {string} name + * @memberof google.cloud.gkehub.v1beta1.UpdateMembershipRequest + * @instance + */ + UpdateMembershipRequest.prototype.name = ""; - /** - * Encodes the specified EnumValueOptions message. Does not implicitly {@link google.protobuf.EnumValueOptions.verify|verify} messages. - * @function encode - * @memberof google.protobuf.EnumValueOptions - * @static - * @param {google.protobuf.IEnumValueOptions} message EnumValueOptions message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - EnumValueOptions.encode = function encode(message, writer) { - if (!writer) - writer = $Writer.create(); - if (message.deprecated != null && Object.hasOwnProperty.call(message, "deprecated")) - writer.uint32(/* id 1, wireType 0 =*/8).bool(message.deprecated); - if (message.uninterpretedOption != null && message.uninterpretedOption.length) - for (var i = 0; i < message.uninterpretedOption.length; ++i) - $root.google.protobuf.UninterpretedOption.encode(message.uninterpretedOption[i], writer.uint32(/* id 999, wireType 2 =*/7994).fork()).ldelim(); - return writer; - }; + /** + * UpdateMembershipRequest updateMask. + * @member {google.protobuf.IFieldMask|null|undefined} updateMask + * @memberof google.cloud.gkehub.v1beta1.UpdateMembershipRequest + * @instance + */ + UpdateMembershipRequest.prototype.updateMask = null; - /** - * Encodes the specified EnumValueOptions message, length delimited. Does not implicitly {@link google.protobuf.EnumValueOptions.verify|verify} messages. - * @function encodeDelimited - * @memberof google.protobuf.EnumValueOptions - * @static - * @param {google.protobuf.IEnumValueOptions} message EnumValueOptions message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - EnumValueOptions.encodeDelimited = function encodeDelimited(message, writer) { - return this.encode(message, writer).ldelim(); - }; + /** + * UpdateMembershipRequest resource. + * @member {google.cloud.gkehub.v1beta1.IMembership|null|undefined} resource + * @memberof google.cloud.gkehub.v1beta1.UpdateMembershipRequest + * @instance + */ + UpdateMembershipRequest.prototype.resource = null; - /** - * Decodes an EnumValueOptions message from the specified reader or buffer. - * @function decode - * @memberof google.protobuf.EnumValueOptions - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @param {number} [length] Message length if known beforehand - * @returns {google.protobuf.EnumValueOptions} EnumValueOptions - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - EnumValueOptions.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.protobuf.EnumValueOptions(); - while (reader.pos < end) { - var tag = reader.uint32(); - switch (tag >>> 3) { - case 1: - message.deprecated = reader.bool(); - break; - case 999: - if (!(message.uninterpretedOption && message.uninterpretedOption.length)) - message.uninterpretedOption = []; - message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32())); - break; - default: - reader.skipType(tag & 7); - break; - } - } - return message; - }; + /** + * Creates a new UpdateMembershipRequest instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.v1beta1.UpdateMembershipRequest + * @static + * @param {google.cloud.gkehub.v1beta1.IUpdateMembershipRequest=} [properties] Properties to set + * @returns {google.cloud.gkehub.v1beta1.UpdateMembershipRequest} UpdateMembershipRequest instance + */ + UpdateMembershipRequest.create = function create(properties) { + return new UpdateMembershipRequest(properties); + }; - /** - * Decodes an EnumValueOptions message from the specified reader or buffer, length delimited. - * @function decodeDelimited - * @memberof google.protobuf.EnumValueOptions - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {google.protobuf.EnumValueOptions} EnumValueOptions - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - EnumValueOptions.decodeDelimited = function decodeDelimited(reader) { - if (!(reader instanceof $Reader)) - reader = new $Reader(reader); - return this.decode(reader, reader.uint32()); - }; + /** + * Encodes the specified UpdateMembershipRequest message. Does not implicitly {@link google.cloud.gkehub.v1beta1.UpdateMembershipRequest.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.v1beta1.UpdateMembershipRequest + * @static + * @param {google.cloud.gkehub.v1beta1.IUpdateMembershipRequest} message UpdateMembershipRequest message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + UpdateMembershipRequest.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.name != null && Object.hasOwnProperty.call(message, "name")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.name); + if (message.updateMask != null && Object.hasOwnProperty.call(message, "updateMask")) + $root.google.protobuf.FieldMask.encode(message.updateMask, writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim(); + if (message.resource != null && Object.hasOwnProperty.call(message, "resource")) + $root.google.cloud.gkehub.v1beta1.Membership.encode(message.resource, writer.uint32(/* id 3, wireType 2 =*/26).fork()).ldelim(); + return writer; + }; - /** - * Verifies an EnumValueOptions message. - * @function verify - * @memberof google.protobuf.EnumValueOptions - * @static - * @param {Object.} message Plain object to verify - * @returns {string|null} `null` if valid, otherwise the reason why it is not - */ - EnumValueOptions.verify = function verify(message) { - if (typeof message !== "object" || message === null) - return "object expected"; - if (message.deprecated != null && message.hasOwnProperty("deprecated")) - if (typeof message.deprecated !== "boolean") - return "deprecated: boolean expected"; - if (message.uninterpretedOption != null && message.hasOwnProperty("uninterpretedOption")) { - if (!Array.isArray(message.uninterpretedOption)) - return "uninterpretedOption: array expected"; - for (var i = 0; i < message.uninterpretedOption.length; ++i) { - var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i]); - if (error) - return "uninterpretedOption." + error; - } - } - return null; - }; + /** + * Encodes the specified UpdateMembershipRequest message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta1.UpdateMembershipRequest.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.v1beta1.UpdateMembershipRequest + * @static + * @param {google.cloud.gkehub.v1beta1.IUpdateMembershipRequest} message UpdateMembershipRequest message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + UpdateMembershipRequest.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; - /** - * Creates an EnumValueOptions message from a plain object. Also converts values to their respective internal types. - * @function fromObject - * @memberof google.protobuf.EnumValueOptions - * @static - * @param {Object.} object Plain object - * @returns {google.protobuf.EnumValueOptions} EnumValueOptions - */ - EnumValueOptions.fromObject = function fromObject(object) { - if (object instanceof $root.google.protobuf.EnumValueOptions) - return object; - var message = new $root.google.protobuf.EnumValueOptions(); - if (object.deprecated != null) - message.deprecated = Boolean(object.deprecated); - if (object.uninterpretedOption) { - if (!Array.isArray(object.uninterpretedOption)) - throw TypeError(".google.protobuf.EnumValueOptions.uninterpretedOption: array expected"); - message.uninterpretedOption = []; - for (var i = 0; i < object.uninterpretedOption.length; ++i) { - if (typeof object.uninterpretedOption[i] !== "object") - throw TypeError(".google.protobuf.EnumValueOptions.uninterpretedOption: object expected"); - message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i]); - } - } - return message; - }; + /** + * Decodes an UpdateMembershipRequest message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.v1beta1.UpdateMembershipRequest + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.v1beta1.UpdateMembershipRequest} UpdateMembershipRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + UpdateMembershipRequest.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.v1beta1.UpdateMembershipRequest(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.name = reader.string(); + break; + case 2: + message.updateMask = $root.google.protobuf.FieldMask.decode(reader, reader.uint32()); + break; + case 3: + message.resource = $root.google.cloud.gkehub.v1beta1.Membership.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes an UpdateMembershipRequest message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.v1beta1.UpdateMembershipRequest + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.v1beta1.UpdateMembershipRequest} UpdateMembershipRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + UpdateMembershipRequest.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies an UpdateMembershipRequest message. + * @function verify + * @memberof google.cloud.gkehub.v1beta1.UpdateMembershipRequest + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + UpdateMembershipRequest.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.name != null && message.hasOwnProperty("name")) + if (!$util.isString(message.name)) + return "name: string expected"; + if (message.updateMask != null && message.hasOwnProperty("updateMask")) { + var error = $root.google.protobuf.FieldMask.verify(message.updateMask); + if (error) + return "updateMask." + error; + } + if (message.resource != null && message.hasOwnProperty("resource")) { + var error = $root.google.cloud.gkehub.v1beta1.Membership.verify(message.resource); + if (error) + return "resource." + error; + } + return null; + }; - /** - * Creates a plain object from an EnumValueOptions message. Also converts values to other types if specified. - * @function toObject - * @memberof google.protobuf.EnumValueOptions - * @static - * @param {google.protobuf.EnumValueOptions} message EnumValueOptions - * @param {$protobuf.IConversionOptions} [options] Conversion options - * @returns {Object.} Plain object - */ - EnumValueOptions.toObject = function toObject(message, options) { - if (!options) - options = {}; - var object = {}; - if (options.arrays || options.defaults) - object.uninterpretedOption = []; - if (options.defaults) - object.deprecated = false; - if (message.deprecated != null && message.hasOwnProperty("deprecated")) - object.deprecated = message.deprecated; - if (message.uninterpretedOption && message.uninterpretedOption.length) { - object.uninterpretedOption = []; - for (var j = 0; j < message.uninterpretedOption.length; ++j) - object.uninterpretedOption[j] = $root.google.protobuf.UninterpretedOption.toObject(message.uninterpretedOption[j], options); - } - return object; - }; + /** + * Creates an UpdateMembershipRequest message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.v1beta1.UpdateMembershipRequest + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.v1beta1.UpdateMembershipRequest} UpdateMembershipRequest + */ + UpdateMembershipRequest.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.v1beta1.UpdateMembershipRequest) + return object; + var message = new $root.google.cloud.gkehub.v1beta1.UpdateMembershipRequest(); + if (object.name != null) + message.name = String(object.name); + if (object.updateMask != null) { + if (typeof object.updateMask !== "object") + throw TypeError(".google.cloud.gkehub.v1beta1.UpdateMembershipRequest.updateMask: object expected"); + message.updateMask = $root.google.protobuf.FieldMask.fromObject(object.updateMask); + } + if (object.resource != null) { + if (typeof object.resource !== "object") + throw TypeError(".google.cloud.gkehub.v1beta1.UpdateMembershipRequest.resource: object expected"); + message.resource = $root.google.cloud.gkehub.v1beta1.Membership.fromObject(object.resource); + } + return message; + }; - /** - * Converts this EnumValueOptions to JSON. - * @function toJSON - * @memberof google.protobuf.EnumValueOptions - * @instance - * @returns {Object.} JSON object - */ - EnumValueOptions.prototype.toJSON = function toJSON() { - return this.constructor.toObject(this, $protobuf.util.toJSONOptions); - }; + /** + * Creates a plain object from an UpdateMembershipRequest message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.v1beta1.UpdateMembershipRequest + * @static + * @param {google.cloud.gkehub.v1beta1.UpdateMembershipRequest} message UpdateMembershipRequest + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + UpdateMembershipRequest.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.name = ""; + object.updateMask = null; + object.resource = null; + } + if (message.name != null && message.hasOwnProperty("name")) + object.name = message.name; + if (message.updateMask != null && message.hasOwnProperty("updateMask")) + object.updateMask = $root.google.protobuf.FieldMask.toObject(message.updateMask, options); + if (message.resource != null && message.hasOwnProperty("resource")) + object.resource = $root.google.cloud.gkehub.v1beta1.Membership.toObject(message.resource, options); + return object; + }; - return EnumValueOptions; - })(); + /** + * Converts this UpdateMembershipRequest to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.v1beta1.UpdateMembershipRequest + * @instance + * @returns {Object.} JSON object + */ + UpdateMembershipRequest.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; - protobuf.ServiceOptions = (function() { + return UpdateMembershipRequest; + })(); - /** - * Properties of a ServiceOptions. - * @memberof google.protobuf - * @interface IServiceOptions - * @property {boolean|null} [deprecated] ServiceOptions deprecated - * @property {Array.|null} [uninterpretedOption] ServiceOptions uninterpretedOption - * @property {string|null} [".google.api.defaultHost"] ServiceOptions .google.api.defaultHost - * @property {string|null} [".google.api.oauthScopes"] ServiceOptions .google.api.oauthScopes - */ + v1beta1.GenerateConnectManifestRequest = (function() { - /** - * Constructs a new ServiceOptions. - * @memberof google.protobuf - * @classdesc Represents a ServiceOptions. - * @implements IServiceOptions - * @constructor - * @param {google.protobuf.IServiceOptions=} [properties] Properties to set - */ - function ServiceOptions(properties) { - this.uninterpretedOption = []; - 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]]; - } + /** + * Properties of a GenerateConnectManifestRequest. + * @memberof google.cloud.gkehub.v1beta1 + * @interface IGenerateConnectManifestRequest + * @property {string|null} [name] GenerateConnectManifestRequest name + * @property {google.cloud.gkehub.v1beta1.IConnectAgent|null} [connectAgent] GenerateConnectManifestRequest connectAgent + * @property {string|null} [version] GenerateConnectManifestRequest version + * @property {boolean|null} [isUpgrade] GenerateConnectManifestRequest isUpgrade + * @property {string|null} [registry] GenerateConnectManifestRequest registry + * @property {Uint8Array|null} [imagePullSecretContent] GenerateConnectManifestRequest imagePullSecretContent + */ - /** - * ServiceOptions deprecated. - * @member {boolean} deprecated - * @memberof google.protobuf.ServiceOptions - * @instance - */ - ServiceOptions.prototype.deprecated = false; + /** + * Constructs a new GenerateConnectManifestRequest. + * @memberof google.cloud.gkehub.v1beta1 + * @classdesc Represents a GenerateConnectManifestRequest. + * @implements IGenerateConnectManifestRequest + * @constructor + * @param {google.cloud.gkehub.v1beta1.IGenerateConnectManifestRequest=} [properties] Properties to set + */ + function GenerateConnectManifestRequest(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]]; + } - /** - * ServiceOptions uninterpretedOption. - * @member {Array.} uninterpretedOption - * @memberof google.protobuf.ServiceOptions - * @instance - */ - ServiceOptions.prototype.uninterpretedOption = $util.emptyArray; + /** + * GenerateConnectManifestRequest name. + * @member {string} name + * @memberof google.cloud.gkehub.v1beta1.GenerateConnectManifestRequest + * @instance + */ + GenerateConnectManifestRequest.prototype.name = ""; - /** - * ServiceOptions .google.api.defaultHost. - * @member {string} .google.api.defaultHost - * @memberof google.protobuf.ServiceOptions - * @instance - */ - ServiceOptions.prototype[".google.api.defaultHost"] = ""; + /** + * GenerateConnectManifestRequest connectAgent. + * @member {google.cloud.gkehub.v1beta1.IConnectAgent|null|undefined} connectAgent + * @memberof google.cloud.gkehub.v1beta1.GenerateConnectManifestRequest + * @instance + */ + GenerateConnectManifestRequest.prototype.connectAgent = null; - /** - * ServiceOptions .google.api.oauthScopes. - * @member {string} .google.api.oauthScopes - * @memberof google.protobuf.ServiceOptions - * @instance - */ - ServiceOptions.prototype[".google.api.oauthScopes"] = ""; + /** + * GenerateConnectManifestRequest version. + * @member {string} version + * @memberof google.cloud.gkehub.v1beta1.GenerateConnectManifestRequest + * @instance + */ + GenerateConnectManifestRequest.prototype.version = ""; - /** - * Creates a new ServiceOptions instance using the specified properties. - * @function create - * @memberof google.protobuf.ServiceOptions - * @static - * @param {google.protobuf.IServiceOptions=} [properties] Properties to set - * @returns {google.protobuf.ServiceOptions} ServiceOptions instance - */ - ServiceOptions.create = function create(properties) { - return new ServiceOptions(properties); - }; + /** + * GenerateConnectManifestRequest isUpgrade. + * @member {boolean} isUpgrade + * @memberof google.cloud.gkehub.v1beta1.GenerateConnectManifestRequest + * @instance + */ + GenerateConnectManifestRequest.prototype.isUpgrade = false; - /** - * Encodes the specified ServiceOptions message. Does not implicitly {@link google.protobuf.ServiceOptions.verify|verify} messages. - * @function encode - * @memberof google.protobuf.ServiceOptions - * @static - * @param {google.protobuf.IServiceOptions} message ServiceOptions message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - ServiceOptions.encode = function encode(message, writer) { - if (!writer) - writer = $Writer.create(); - if (message.deprecated != null && Object.hasOwnProperty.call(message, "deprecated")) - writer.uint32(/* id 33, wireType 0 =*/264).bool(message.deprecated); - if (message.uninterpretedOption != null && message.uninterpretedOption.length) - for (var i = 0; i < message.uninterpretedOption.length; ++i) - $root.google.protobuf.UninterpretedOption.encode(message.uninterpretedOption[i], writer.uint32(/* id 999, wireType 2 =*/7994).fork()).ldelim(); - if (message[".google.api.defaultHost"] != null && Object.hasOwnProperty.call(message, ".google.api.defaultHost")) - writer.uint32(/* id 1049, wireType 2 =*/8394).string(message[".google.api.defaultHost"]); - if (message[".google.api.oauthScopes"] != null && Object.hasOwnProperty.call(message, ".google.api.oauthScopes")) - writer.uint32(/* id 1050, wireType 2 =*/8402).string(message[".google.api.oauthScopes"]); - return writer; - }; + /** + * GenerateConnectManifestRequest registry. + * @member {string} registry + * @memberof google.cloud.gkehub.v1beta1.GenerateConnectManifestRequest + * @instance + */ + GenerateConnectManifestRequest.prototype.registry = ""; - /** - * Encodes the specified ServiceOptions message, length delimited. Does not implicitly {@link google.protobuf.ServiceOptions.verify|verify} messages. - * @function encodeDelimited - * @memberof google.protobuf.ServiceOptions - * @static - * @param {google.protobuf.IServiceOptions} message ServiceOptions message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - ServiceOptions.encodeDelimited = function encodeDelimited(message, writer) { - return this.encode(message, writer).ldelim(); - }; + /** + * GenerateConnectManifestRequest imagePullSecretContent. + * @member {Uint8Array} imagePullSecretContent + * @memberof google.cloud.gkehub.v1beta1.GenerateConnectManifestRequest + * @instance + */ + GenerateConnectManifestRequest.prototype.imagePullSecretContent = $util.newBuffer([]); - /** - * Decodes a ServiceOptions message from the specified reader or buffer. - * @function decode - * @memberof google.protobuf.ServiceOptions - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @param {number} [length] Message length if known beforehand - * @returns {google.protobuf.ServiceOptions} ServiceOptions - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - ServiceOptions.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.protobuf.ServiceOptions(); - while (reader.pos < end) { - var tag = reader.uint32(); - switch (tag >>> 3) { - case 33: - message.deprecated = reader.bool(); - break; - case 999: - if (!(message.uninterpretedOption && message.uninterpretedOption.length)) - message.uninterpretedOption = []; - message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32())); - break; - case 1049: - message[".google.api.defaultHost"] = reader.string(); - break; - case 1050: - message[".google.api.oauthScopes"] = reader.string(); - break; - default: - reader.skipType(tag & 7); - break; - } - } - return message; - }; + /** + * Creates a new GenerateConnectManifestRequest instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.v1beta1.GenerateConnectManifestRequest + * @static + * @param {google.cloud.gkehub.v1beta1.IGenerateConnectManifestRequest=} [properties] Properties to set + * @returns {google.cloud.gkehub.v1beta1.GenerateConnectManifestRequest} GenerateConnectManifestRequest instance + */ + GenerateConnectManifestRequest.create = function create(properties) { + return new GenerateConnectManifestRequest(properties); + }; - /** - * Decodes a ServiceOptions message from the specified reader or buffer, length delimited. - * @function decodeDelimited - * @memberof google.protobuf.ServiceOptions - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {google.protobuf.ServiceOptions} ServiceOptions - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - ServiceOptions.decodeDelimited = function decodeDelimited(reader) { - if (!(reader instanceof $Reader)) - reader = new $Reader(reader); - return this.decode(reader, reader.uint32()); - }; + /** + * Encodes the specified GenerateConnectManifestRequest message. Does not implicitly {@link google.cloud.gkehub.v1beta1.GenerateConnectManifestRequest.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.v1beta1.GenerateConnectManifestRequest + * @static + * @param {google.cloud.gkehub.v1beta1.IGenerateConnectManifestRequest} message GenerateConnectManifestRequest message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + GenerateConnectManifestRequest.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.name != null && Object.hasOwnProperty.call(message, "name")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.name); + if (message.connectAgent != null && Object.hasOwnProperty.call(message, "connectAgent")) + $root.google.cloud.gkehub.v1beta1.ConnectAgent.encode(message.connectAgent, writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim(); + if (message.version != null && Object.hasOwnProperty.call(message, "version")) + writer.uint32(/* id 3, wireType 2 =*/26).string(message.version); + if (message.isUpgrade != null && Object.hasOwnProperty.call(message, "isUpgrade")) + writer.uint32(/* id 4, wireType 0 =*/32).bool(message.isUpgrade); + if (message.registry != null && Object.hasOwnProperty.call(message, "registry")) + writer.uint32(/* id 5, wireType 2 =*/42).string(message.registry); + if (message.imagePullSecretContent != null && Object.hasOwnProperty.call(message, "imagePullSecretContent")) + writer.uint32(/* id 6, wireType 2 =*/50).bytes(message.imagePullSecretContent); + return writer; + }; - /** - * Verifies a ServiceOptions message. - * @function verify - * @memberof google.protobuf.ServiceOptions - * @static - * @param {Object.} message Plain object to verify - * @returns {string|null} `null` if valid, otherwise the reason why it is not - */ - ServiceOptions.verify = function verify(message) { - if (typeof message !== "object" || message === null) - return "object expected"; - if (message.deprecated != null && message.hasOwnProperty("deprecated")) - if (typeof message.deprecated !== "boolean") - return "deprecated: boolean expected"; - if (message.uninterpretedOption != null && message.hasOwnProperty("uninterpretedOption")) { - if (!Array.isArray(message.uninterpretedOption)) - return "uninterpretedOption: array expected"; - for (var i = 0; i < message.uninterpretedOption.length; ++i) { - var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i]); - if (error) - return "uninterpretedOption." + error; - } - } - if (message[".google.api.defaultHost"] != null && message.hasOwnProperty(".google.api.defaultHost")) - if (!$util.isString(message[".google.api.defaultHost"])) - return ".google.api.defaultHost: string expected"; - if (message[".google.api.oauthScopes"] != null && message.hasOwnProperty(".google.api.oauthScopes")) - if (!$util.isString(message[".google.api.oauthScopes"])) - return ".google.api.oauthScopes: string expected"; - return null; - }; + /** + * Encodes the specified GenerateConnectManifestRequest message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta1.GenerateConnectManifestRequest.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.v1beta1.GenerateConnectManifestRequest + * @static + * @param {google.cloud.gkehub.v1beta1.IGenerateConnectManifestRequest} message GenerateConnectManifestRequest message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + GenerateConnectManifestRequest.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; - /** - * Creates a ServiceOptions message from a plain object. Also converts values to their respective internal types. - * @function fromObject - * @memberof google.protobuf.ServiceOptions - * @static - * @param {Object.} object Plain object - * @returns {google.protobuf.ServiceOptions} ServiceOptions - */ - ServiceOptions.fromObject = function fromObject(object) { - if (object instanceof $root.google.protobuf.ServiceOptions) - return object; - var message = new $root.google.protobuf.ServiceOptions(); - if (object.deprecated != null) - message.deprecated = Boolean(object.deprecated); - if (object.uninterpretedOption) { - if (!Array.isArray(object.uninterpretedOption)) - throw TypeError(".google.protobuf.ServiceOptions.uninterpretedOption: array expected"); - message.uninterpretedOption = []; - for (var i = 0; i < object.uninterpretedOption.length; ++i) { - if (typeof object.uninterpretedOption[i] !== "object") - throw TypeError(".google.protobuf.ServiceOptions.uninterpretedOption: object expected"); - message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i]); - } - } - if (object[".google.api.defaultHost"] != null) - message[".google.api.defaultHost"] = String(object[".google.api.defaultHost"]); - if (object[".google.api.oauthScopes"] != null) - message[".google.api.oauthScopes"] = String(object[".google.api.oauthScopes"]); - return message; - }; + /** + * Decodes a GenerateConnectManifestRequest message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.v1beta1.GenerateConnectManifestRequest + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.v1beta1.GenerateConnectManifestRequest} GenerateConnectManifestRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + GenerateConnectManifestRequest.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.v1beta1.GenerateConnectManifestRequest(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.name = reader.string(); + break; + case 2: + message.connectAgent = $root.google.cloud.gkehub.v1beta1.ConnectAgent.decode(reader, reader.uint32()); + break; + case 3: + message.version = reader.string(); + break; + case 4: + message.isUpgrade = reader.bool(); + break; + case 5: + message.registry = reader.string(); + break; + case 6: + message.imagePullSecretContent = reader.bytes(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a GenerateConnectManifestRequest message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.v1beta1.GenerateConnectManifestRequest + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.v1beta1.GenerateConnectManifestRequest} GenerateConnectManifestRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + GenerateConnectManifestRequest.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a GenerateConnectManifestRequest message. + * @function verify + * @memberof google.cloud.gkehub.v1beta1.GenerateConnectManifestRequest + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + GenerateConnectManifestRequest.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.name != null && message.hasOwnProperty("name")) + if (!$util.isString(message.name)) + return "name: string expected"; + if (message.connectAgent != null && message.hasOwnProperty("connectAgent")) { + var error = $root.google.cloud.gkehub.v1beta1.ConnectAgent.verify(message.connectAgent); + if (error) + return "connectAgent." + error; + } + if (message.version != null && message.hasOwnProperty("version")) + if (!$util.isString(message.version)) + return "version: string expected"; + if (message.isUpgrade != null && message.hasOwnProperty("isUpgrade")) + if (typeof message.isUpgrade !== "boolean") + return "isUpgrade: boolean expected"; + if (message.registry != null && message.hasOwnProperty("registry")) + if (!$util.isString(message.registry)) + return "registry: string expected"; + if (message.imagePullSecretContent != null && message.hasOwnProperty("imagePullSecretContent")) + if (!(message.imagePullSecretContent && typeof message.imagePullSecretContent.length === "number" || $util.isString(message.imagePullSecretContent))) + return "imagePullSecretContent: buffer expected"; + return null; + }; - /** - * Creates a plain object from a ServiceOptions message. Also converts values to other types if specified. - * @function toObject - * @memberof google.protobuf.ServiceOptions - * @static - * @param {google.protobuf.ServiceOptions} message ServiceOptions - * @param {$protobuf.IConversionOptions} [options] Conversion options - * @returns {Object.} Plain object - */ - ServiceOptions.toObject = function toObject(message, options) { - if (!options) - options = {}; - var object = {}; - if (options.arrays || options.defaults) - object.uninterpretedOption = []; - if (options.defaults) { - object.deprecated = false; - object[".google.api.defaultHost"] = ""; - object[".google.api.oauthScopes"] = ""; - } - if (message.deprecated != null && message.hasOwnProperty("deprecated")) - object.deprecated = message.deprecated; - if (message.uninterpretedOption && message.uninterpretedOption.length) { - object.uninterpretedOption = []; - for (var j = 0; j < message.uninterpretedOption.length; ++j) - object.uninterpretedOption[j] = $root.google.protobuf.UninterpretedOption.toObject(message.uninterpretedOption[j], options); - } - if (message[".google.api.defaultHost"] != null && message.hasOwnProperty(".google.api.defaultHost")) - object[".google.api.defaultHost"] = message[".google.api.defaultHost"]; - if (message[".google.api.oauthScopes"] != null && message.hasOwnProperty(".google.api.oauthScopes")) - object[".google.api.oauthScopes"] = message[".google.api.oauthScopes"]; - return object; - }; + /** + * Creates a GenerateConnectManifestRequest message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.v1beta1.GenerateConnectManifestRequest + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.v1beta1.GenerateConnectManifestRequest} GenerateConnectManifestRequest + */ + GenerateConnectManifestRequest.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.v1beta1.GenerateConnectManifestRequest) + return object; + var message = new $root.google.cloud.gkehub.v1beta1.GenerateConnectManifestRequest(); + if (object.name != null) + message.name = String(object.name); + if (object.connectAgent != null) { + if (typeof object.connectAgent !== "object") + throw TypeError(".google.cloud.gkehub.v1beta1.GenerateConnectManifestRequest.connectAgent: object expected"); + message.connectAgent = $root.google.cloud.gkehub.v1beta1.ConnectAgent.fromObject(object.connectAgent); + } + if (object.version != null) + message.version = String(object.version); + if (object.isUpgrade != null) + message.isUpgrade = Boolean(object.isUpgrade); + if (object.registry != null) + message.registry = String(object.registry); + if (object.imagePullSecretContent != null) + if (typeof object.imagePullSecretContent === "string") + $util.base64.decode(object.imagePullSecretContent, message.imagePullSecretContent = $util.newBuffer($util.base64.length(object.imagePullSecretContent)), 0); + else if (object.imagePullSecretContent.length) + message.imagePullSecretContent = object.imagePullSecretContent; + return message; + }; - /** - * Converts this ServiceOptions to JSON. - * @function toJSON - * @memberof google.protobuf.ServiceOptions - * @instance - * @returns {Object.} JSON object - */ - ServiceOptions.prototype.toJSON = function toJSON() { - return this.constructor.toObject(this, $protobuf.util.toJSONOptions); - }; + /** + * Creates a plain object from a GenerateConnectManifestRequest message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.v1beta1.GenerateConnectManifestRequest + * @static + * @param {google.cloud.gkehub.v1beta1.GenerateConnectManifestRequest} message GenerateConnectManifestRequest + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + GenerateConnectManifestRequest.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.name = ""; + object.connectAgent = null; + object.version = ""; + object.isUpgrade = false; + object.registry = ""; + if (options.bytes === String) + object.imagePullSecretContent = ""; + else { + object.imagePullSecretContent = []; + if (options.bytes !== Array) + object.imagePullSecretContent = $util.newBuffer(object.imagePullSecretContent); + } + } + if (message.name != null && message.hasOwnProperty("name")) + object.name = message.name; + if (message.connectAgent != null && message.hasOwnProperty("connectAgent")) + object.connectAgent = $root.google.cloud.gkehub.v1beta1.ConnectAgent.toObject(message.connectAgent, options); + if (message.version != null && message.hasOwnProperty("version")) + object.version = message.version; + if (message.isUpgrade != null && message.hasOwnProperty("isUpgrade")) + object.isUpgrade = message.isUpgrade; + if (message.registry != null && message.hasOwnProperty("registry")) + object.registry = message.registry; + if (message.imagePullSecretContent != null && message.hasOwnProperty("imagePullSecretContent")) + object.imagePullSecretContent = options.bytes === String ? $util.base64.encode(message.imagePullSecretContent, 0, message.imagePullSecretContent.length) : options.bytes === Array ? Array.prototype.slice.call(message.imagePullSecretContent) : message.imagePullSecretContent; + return object; + }; - return ServiceOptions; - })(); + /** + * Converts this GenerateConnectManifestRequest to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.v1beta1.GenerateConnectManifestRequest + * @instance + * @returns {Object.} JSON object + */ + GenerateConnectManifestRequest.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; - protobuf.MethodOptions = (function() { + return GenerateConnectManifestRequest; + })(); - /** - * Properties of a MethodOptions. - * @memberof google.protobuf - * @interface IMethodOptions - * @property {boolean|null} [deprecated] MethodOptions deprecated - * @property {google.protobuf.MethodOptions.IdempotencyLevel|null} [idempotencyLevel] MethodOptions idempotencyLevel - * @property {Array.|null} [uninterpretedOption] MethodOptions uninterpretedOption - * @property {google.api.IHttpRule|null} [".google.api.http"] MethodOptions .google.api.http - * @property {Array.|null} [".google.api.methodSignature"] MethodOptions .google.api.methodSignature - * @property {google.longrunning.IOperationInfo|null} [".google.longrunning.operationInfo"] MethodOptions .google.longrunning.operationInfo - */ + v1beta1.GenerateConnectManifestResponse = (function() { - /** - * Constructs a new MethodOptions. - * @memberof google.protobuf - * @classdesc Represents a MethodOptions. - * @implements IMethodOptions - * @constructor - * @param {google.protobuf.IMethodOptions=} [properties] Properties to set - */ - function MethodOptions(properties) { - this.uninterpretedOption = []; - this[".google.api.methodSignature"] = []; - 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]]; - } + /** + * Properties of a GenerateConnectManifestResponse. + * @memberof google.cloud.gkehub.v1beta1 + * @interface IGenerateConnectManifestResponse + * @property {Array.|null} [manifest] GenerateConnectManifestResponse manifest + */ - /** - * MethodOptions deprecated. - * @member {boolean} deprecated - * @memberof google.protobuf.MethodOptions - * @instance - */ - MethodOptions.prototype.deprecated = false; + /** + * Constructs a new GenerateConnectManifestResponse. + * @memberof google.cloud.gkehub.v1beta1 + * @classdesc Represents a GenerateConnectManifestResponse. + * @implements IGenerateConnectManifestResponse + * @constructor + * @param {google.cloud.gkehub.v1beta1.IGenerateConnectManifestResponse=} [properties] Properties to set + */ + function GenerateConnectManifestResponse(properties) { + this.manifest = []; + 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]]; + } - /** - * MethodOptions idempotencyLevel. - * @member {google.protobuf.MethodOptions.IdempotencyLevel} idempotencyLevel - * @memberof google.protobuf.MethodOptions - * @instance - */ - MethodOptions.prototype.idempotencyLevel = 0; + /** + * GenerateConnectManifestResponse manifest. + * @member {Array.} manifest + * @memberof google.cloud.gkehub.v1beta1.GenerateConnectManifestResponse + * @instance + */ + GenerateConnectManifestResponse.prototype.manifest = $util.emptyArray; - /** - * MethodOptions uninterpretedOption. - * @member {Array.} uninterpretedOption - * @memberof google.protobuf.MethodOptions - * @instance - */ - MethodOptions.prototype.uninterpretedOption = $util.emptyArray; + /** + * Creates a new GenerateConnectManifestResponse instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.v1beta1.GenerateConnectManifestResponse + * @static + * @param {google.cloud.gkehub.v1beta1.IGenerateConnectManifestResponse=} [properties] Properties to set + * @returns {google.cloud.gkehub.v1beta1.GenerateConnectManifestResponse} GenerateConnectManifestResponse instance + */ + GenerateConnectManifestResponse.create = function create(properties) { + return new GenerateConnectManifestResponse(properties); + }; + + /** + * Encodes the specified GenerateConnectManifestResponse message. Does not implicitly {@link google.cloud.gkehub.v1beta1.GenerateConnectManifestResponse.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.v1beta1.GenerateConnectManifestResponse + * @static + * @param {google.cloud.gkehub.v1beta1.IGenerateConnectManifestResponse} message GenerateConnectManifestResponse message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + GenerateConnectManifestResponse.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.manifest != null && message.manifest.length) + for (var i = 0; i < message.manifest.length; ++i) + $root.google.cloud.gkehub.v1beta1.ConnectAgentResource.encode(message.manifest[i], writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim(); + return writer; + }; - /** - * MethodOptions .google.api.http. - * @member {google.api.IHttpRule|null|undefined} .google.api.http - * @memberof google.protobuf.MethodOptions - * @instance - */ - MethodOptions.prototype[".google.api.http"] = null; + /** + * Encodes the specified GenerateConnectManifestResponse message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta1.GenerateConnectManifestResponse.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.v1beta1.GenerateConnectManifestResponse + * @static + * @param {google.cloud.gkehub.v1beta1.IGenerateConnectManifestResponse} message GenerateConnectManifestResponse message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + GenerateConnectManifestResponse.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; - /** - * MethodOptions .google.api.methodSignature. - * @member {Array.} .google.api.methodSignature - * @memberof google.protobuf.MethodOptions - * @instance - */ - MethodOptions.prototype[".google.api.methodSignature"] = $util.emptyArray; + /** + * Decodes a GenerateConnectManifestResponse message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.v1beta1.GenerateConnectManifestResponse + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.v1beta1.GenerateConnectManifestResponse} GenerateConnectManifestResponse + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + GenerateConnectManifestResponse.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.v1beta1.GenerateConnectManifestResponse(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + if (!(message.manifest && message.manifest.length)) + message.manifest = []; + message.manifest.push($root.google.cloud.gkehub.v1beta1.ConnectAgentResource.decode(reader, reader.uint32())); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; - /** - * MethodOptions .google.longrunning.operationInfo. - * @member {google.longrunning.IOperationInfo|null|undefined} .google.longrunning.operationInfo - * @memberof google.protobuf.MethodOptions - * @instance - */ - MethodOptions.prototype[".google.longrunning.operationInfo"] = null; + /** + * Decodes a GenerateConnectManifestResponse message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.v1beta1.GenerateConnectManifestResponse + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.v1beta1.GenerateConnectManifestResponse} GenerateConnectManifestResponse + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + GenerateConnectManifestResponse.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; - /** - * Creates a new MethodOptions instance using the specified properties. - * @function create - * @memberof google.protobuf.MethodOptions - * @static - * @param {google.protobuf.IMethodOptions=} [properties] Properties to set - * @returns {google.protobuf.MethodOptions} MethodOptions instance - */ - MethodOptions.create = function create(properties) { - return new MethodOptions(properties); - }; + /** + * Verifies a GenerateConnectManifestResponse message. + * @function verify + * @memberof google.cloud.gkehub.v1beta1.GenerateConnectManifestResponse + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + GenerateConnectManifestResponse.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.manifest != null && message.hasOwnProperty("manifest")) { + if (!Array.isArray(message.manifest)) + return "manifest: array expected"; + for (var i = 0; i < message.manifest.length; ++i) { + var error = $root.google.cloud.gkehub.v1beta1.ConnectAgentResource.verify(message.manifest[i]); + if (error) + return "manifest." + error; + } + } + return null; + }; - /** - * Encodes the specified MethodOptions message. Does not implicitly {@link google.protobuf.MethodOptions.verify|verify} messages. - * @function encode - * @memberof google.protobuf.MethodOptions - * @static - * @param {google.protobuf.IMethodOptions} message MethodOptions message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - MethodOptions.encode = function encode(message, writer) { - if (!writer) - writer = $Writer.create(); - if (message.deprecated != null && Object.hasOwnProperty.call(message, "deprecated")) - writer.uint32(/* id 33, wireType 0 =*/264).bool(message.deprecated); - if (message.idempotencyLevel != null && Object.hasOwnProperty.call(message, "idempotencyLevel")) - writer.uint32(/* id 34, wireType 0 =*/272).int32(message.idempotencyLevel); - if (message.uninterpretedOption != null && message.uninterpretedOption.length) - for (var i = 0; i < message.uninterpretedOption.length; ++i) - $root.google.protobuf.UninterpretedOption.encode(message.uninterpretedOption[i], writer.uint32(/* id 999, wireType 2 =*/7994).fork()).ldelim(); - if (message[".google.longrunning.operationInfo"] != null && Object.hasOwnProperty.call(message, ".google.longrunning.operationInfo")) - $root.google.longrunning.OperationInfo.encode(message[".google.longrunning.operationInfo"], writer.uint32(/* id 1049, wireType 2 =*/8394).fork()).ldelim(); - if (message[".google.api.methodSignature"] != null && message[".google.api.methodSignature"].length) - for (var i = 0; i < message[".google.api.methodSignature"].length; ++i) - writer.uint32(/* id 1051, wireType 2 =*/8410).string(message[".google.api.methodSignature"][i]); - if (message[".google.api.http"] != null && Object.hasOwnProperty.call(message, ".google.api.http")) - $root.google.api.HttpRule.encode(message[".google.api.http"], writer.uint32(/* id 72295728, wireType 2 =*/578365826).fork()).ldelim(); - return writer; - }; + /** + * Creates a GenerateConnectManifestResponse message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.v1beta1.GenerateConnectManifestResponse + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.v1beta1.GenerateConnectManifestResponse} GenerateConnectManifestResponse + */ + GenerateConnectManifestResponse.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.v1beta1.GenerateConnectManifestResponse) + return object; + var message = new $root.google.cloud.gkehub.v1beta1.GenerateConnectManifestResponse(); + if (object.manifest) { + if (!Array.isArray(object.manifest)) + throw TypeError(".google.cloud.gkehub.v1beta1.GenerateConnectManifestResponse.manifest: array expected"); + message.manifest = []; + for (var i = 0; i < object.manifest.length; ++i) { + if (typeof object.manifest[i] !== "object") + throw TypeError(".google.cloud.gkehub.v1beta1.GenerateConnectManifestResponse.manifest: object expected"); + message.manifest[i] = $root.google.cloud.gkehub.v1beta1.ConnectAgentResource.fromObject(object.manifest[i]); + } + } + return message; + }; - /** - * Encodes the specified MethodOptions message, length delimited. Does not implicitly {@link google.protobuf.MethodOptions.verify|verify} messages. - * @function encodeDelimited - * @memberof google.protobuf.MethodOptions - * @static - * @param {google.protobuf.IMethodOptions} message MethodOptions message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - MethodOptions.encodeDelimited = function encodeDelimited(message, writer) { - return this.encode(message, writer).ldelim(); - }; + /** + * Creates a plain object from a GenerateConnectManifestResponse message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.v1beta1.GenerateConnectManifestResponse + * @static + * @param {google.cloud.gkehub.v1beta1.GenerateConnectManifestResponse} message GenerateConnectManifestResponse + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + GenerateConnectManifestResponse.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.arrays || options.defaults) + object.manifest = []; + if (message.manifest && message.manifest.length) { + object.manifest = []; + for (var j = 0; j < message.manifest.length; ++j) + object.manifest[j] = $root.google.cloud.gkehub.v1beta1.ConnectAgentResource.toObject(message.manifest[j], options); + } + return object; + }; - /** - * Decodes a MethodOptions message from the specified reader or buffer. - * @function decode - * @memberof google.protobuf.MethodOptions - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @param {number} [length] Message length if known beforehand - * @returns {google.protobuf.MethodOptions} MethodOptions - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - MethodOptions.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.protobuf.MethodOptions(); - while (reader.pos < end) { - var tag = reader.uint32(); - switch (tag >>> 3) { - case 33: - message.deprecated = reader.bool(); - break; - case 34: - message.idempotencyLevel = reader.int32(); - break; - case 999: - if (!(message.uninterpretedOption && message.uninterpretedOption.length)) - message.uninterpretedOption = []; - message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32())); - break; - case 72295728: - message[".google.api.http"] = $root.google.api.HttpRule.decode(reader, reader.uint32()); - break; - case 1051: - if (!(message[".google.api.methodSignature"] && message[".google.api.methodSignature"].length)) - message[".google.api.methodSignature"] = []; - message[".google.api.methodSignature"].push(reader.string()); - break; - case 1049: - message[".google.longrunning.operationInfo"] = $root.google.longrunning.OperationInfo.decode(reader, reader.uint32()); - break; - default: - reader.skipType(tag & 7); - break; - } - } - return message; - }; + /** + * Converts this GenerateConnectManifestResponse to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.v1beta1.GenerateConnectManifestResponse + * @instance + * @returns {Object.} JSON object + */ + GenerateConnectManifestResponse.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; - /** - * Decodes a MethodOptions message from the specified reader or buffer, length delimited. - * @function decodeDelimited - * @memberof google.protobuf.MethodOptions - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {google.protobuf.MethodOptions} MethodOptions - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - MethodOptions.decodeDelimited = function decodeDelimited(reader) { - if (!(reader instanceof $Reader)) - reader = new $Reader(reader); - return this.decode(reader, reader.uint32()); - }; + return GenerateConnectManifestResponse; + })(); - /** - * Verifies a MethodOptions message. - * @function verify - * @memberof google.protobuf.MethodOptions - * @static - * @param {Object.} message Plain object to verify - * @returns {string|null} `null` if valid, otherwise the reason why it is not - */ - MethodOptions.verify = function verify(message) { - if (typeof message !== "object" || message === null) - return "object expected"; - if (message.deprecated != null && message.hasOwnProperty("deprecated")) - if (typeof message.deprecated !== "boolean") - return "deprecated: boolean expected"; - if (message.idempotencyLevel != null && message.hasOwnProperty("idempotencyLevel")) - switch (message.idempotencyLevel) { - default: - return "idempotencyLevel: enum value expected"; - case 0: - case 1: - case 2: - break; - } - if (message.uninterpretedOption != null && message.hasOwnProperty("uninterpretedOption")) { - if (!Array.isArray(message.uninterpretedOption)) - return "uninterpretedOption: array expected"; - for (var i = 0; i < message.uninterpretedOption.length; ++i) { - var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i]); - if (error) - return "uninterpretedOption." + error; - } - } - if (message[".google.api.http"] != null && message.hasOwnProperty(".google.api.http")) { - var error = $root.google.api.HttpRule.verify(message[".google.api.http"]); - if (error) - return ".google.api.http." + error; - } - if (message[".google.api.methodSignature"] != null && message.hasOwnProperty(".google.api.methodSignature")) { - if (!Array.isArray(message[".google.api.methodSignature"])) - return ".google.api.methodSignature: array expected"; - for (var i = 0; i < message[".google.api.methodSignature"].length; ++i) - if (!$util.isString(message[".google.api.methodSignature"][i])) - return ".google.api.methodSignature: string[] expected"; - } - if (message[".google.longrunning.operationInfo"] != null && message.hasOwnProperty(".google.longrunning.operationInfo")) { - var error = $root.google.longrunning.OperationInfo.verify(message[".google.longrunning.operationInfo"]); - if (error) - return ".google.longrunning.operationInfo." + error; - } - return null; - }; + v1beta1.ConnectAgentResource = (function() { - /** - * Creates a MethodOptions message from a plain object. Also converts values to their respective internal types. - * @function fromObject - * @memberof google.protobuf.MethodOptions - * @static - * @param {Object.} object Plain object - * @returns {google.protobuf.MethodOptions} MethodOptions - */ - MethodOptions.fromObject = function fromObject(object) { - if (object instanceof $root.google.protobuf.MethodOptions) - return object; - var message = new $root.google.protobuf.MethodOptions(); - if (object.deprecated != null) - message.deprecated = Boolean(object.deprecated); - switch (object.idempotencyLevel) { - case "IDEMPOTENCY_UNKNOWN": - case 0: - message.idempotencyLevel = 0; - break; - case "NO_SIDE_EFFECTS": - case 1: - message.idempotencyLevel = 1; - break; - case "IDEMPOTENT": - case 2: - message.idempotencyLevel = 2; - break; - } - if (object.uninterpretedOption) { - if (!Array.isArray(object.uninterpretedOption)) - throw TypeError(".google.protobuf.MethodOptions.uninterpretedOption: array expected"); - message.uninterpretedOption = []; - for (var i = 0; i < object.uninterpretedOption.length; ++i) { - if (typeof object.uninterpretedOption[i] !== "object") - throw TypeError(".google.protobuf.MethodOptions.uninterpretedOption: object expected"); - message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i]); + /** + * Properties of a ConnectAgentResource. + * @memberof google.cloud.gkehub.v1beta1 + * @interface IConnectAgentResource + * @property {google.cloud.gkehub.v1beta1.ITypeMeta|null} [type] ConnectAgentResource type + * @property {string|null} [manifest] ConnectAgentResource manifest + */ + + /** + * Constructs a new ConnectAgentResource. + * @memberof google.cloud.gkehub.v1beta1 + * @classdesc Represents a ConnectAgentResource. + * @implements IConnectAgentResource + * @constructor + * @param {google.cloud.gkehub.v1beta1.IConnectAgentResource=} [properties] Properties to set + */ + function ConnectAgentResource(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]]; } - } - if (object[".google.api.http"] != null) { - if (typeof object[".google.api.http"] !== "object") - throw TypeError(".google.protobuf.MethodOptions..google.api.http: object expected"); - message[".google.api.http"] = $root.google.api.HttpRule.fromObject(object[".google.api.http"]); - } - if (object[".google.api.methodSignature"]) { - if (!Array.isArray(object[".google.api.methodSignature"])) - throw TypeError(".google.protobuf.MethodOptions..google.api.methodSignature: array expected"); - message[".google.api.methodSignature"] = []; - for (var i = 0; i < object[".google.api.methodSignature"].length; ++i) - message[".google.api.methodSignature"][i] = String(object[".google.api.methodSignature"][i]); - } - if (object[".google.longrunning.operationInfo"] != null) { - if (typeof object[".google.longrunning.operationInfo"] !== "object") - throw TypeError(".google.protobuf.MethodOptions..google.longrunning.operationInfo: object expected"); - message[".google.longrunning.operationInfo"] = $root.google.longrunning.OperationInfo.fromObject(object[".google.longrunning.operationInfo"]); - } - return message; - }; - /** - * Creates a plain object from a MethodOptions message. Also converts values to other types if specified. - * @function toObject - * @memberof google.protobuf.MethodOptions - * @static - * @param {google.protobuf.MethodOptions} message MethodOptions - * @param {$protobuf.IConversionOptions} [options] Conversion options - * @returns {Object.} Plain object - */ - MethodOptions.toObject = function toObject(message, options) { - if (!options) - options = {}; - var object = {}; - if (options.arrays || options.defaults) { - object.uninterpretedOption = []; - object[".google.api.methodSignature"] = []; - } - if (options.defaults) { - object.deprecated = false; - object.idempotencyLevel = options.enums === String ? "IDEMPOTENCY_UNKNOWN" : 0; - object[".google.longrunning.operationInfo"] = null; - object[".google.api.http"] = null; - } - if (message.deprecated != null && message.hasOwnProperty("deprecated")) - object.deprecated = message.deprecated; - if (message.idempotencyLevel != null && message.hasOwnProperty("idempotencyLevel")) - object.idempotencyLevel = options.enums === String ? $root.google.protobuf.MethodOptions.IdempotencyLevel[message.idempotencyLevel] : message.idempotencyLevel; - if (message.uninterpretedOption && message.uninterpretedOption.length) { - object.uninterpretedOption = []; - for (var j = 0; j < message.uninterpretedOption.length; ++j) - object.uninterpretedOption[j] = $root.google.protobuf.UninterpretedOption.toObject(message.uninterpretedOption[j], options); - } - if (message[".google.longrunning.operationInfo"] != null && message.hasOwnProperty(".google.longrunning.operationInfo")) - object[".google.longrunning.operationInfo"] = $root.google.longrunning.OperationInfo.toObject(message[".google.longrunning.operationInfo"], options); - if (message[".google.api.methodSignature"] && message[".google.api.methodSignature"].length) { - object[".google.api.methodSignature"] = []; - for (var j = 0; j < message[".google.api.methodSignature"].length; ++j) - object[".google.api.methodSignature"][j] = message[".google.api.methodSignature"][j]; - } - if (message[".google.api.http"] != null && message.hasOwnProperty(".google.api.http")) - object[".google.api.http"] = $root.google.api.HttpRule.toObject(message[".google.api.http"], options); - return object; - }; + /** + * ConnectAgentResource type. + * @member {google.cloud.gkehub.v1beta1.ITypeMeta|null|undefined} type + * @memberof google.cloud.gkehub.v1beta1.ConnectAgentResource + * @instance + */ + ConnectAgentResource.prototype.type = null; + + /** + * ConnectAgentResource manifest. + * @member {string} manifest + * @memberof google.cloud.gkehub.v1beta1.ConnectAgentResource + * @instance + */ + ConnectAgentResource.prototype.manifest = ""; + + /** + * Creates a new ConnectAgentResource instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.v1beta1.ConnectAgentResource + * @static + * @param {google.cloud.gkehub.v1beta1.IConnectAgentResource=} [properties] Properties to set + * @returns {google.cloud.gkehub.v1beta1.ConnectAgentResource} ConnectAgentResource instance + */ + ConnectAgentResource.create = function create(properties) { + return new ConnectAgentResource(properties); + }; + + /** + * Encodes the specified ConnectAgentResource message. Does not implicitly {@link google.cloud.gkehub.v1beta1.ConnectAgentResource.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.v1beta1.ConnectAgentResource + * @static + * @param {google.cloud.gkehub.v1beta1.IConnectAgentResource} message ConnectAgentResource message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + ConnectAgentResource.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.type != null && Object.hasOwnProperty.call(message, "type")) + $root.google.cloud.gkehub.v1beta1.TypeMeta.encode(message.type, writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim(); + if (message.manifest != null && Object.hasOwnProperty.call(message, "manifest")) + writer.uint32(/* id 2, wireType 2 =*/18).string(message.manifest); + return writer; + }; + + /** + * Encodes the specified ConnectAgentResource message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta1.ConnectAgentResource.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.v1beta1.ConnectAgentResource + * @static + * @param {google.cloud.gkehub.v1beta1.IConnectAgentResource} message ConnectAgentResource message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + ConnectAgentResource.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a ConnectAgentResource message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.v1beta1.ConnectAgentResource + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.v1beta1.ConnectAgentResource} ConnectAgentResource + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + ConnectAgentResource.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.v1beta1.ConnectAgentResource(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.type = $root.google.cloud.gkehub.v1beta1.TypeMeta.decode(reader, reader.uint32()); + break; + case 2: + message.manifest = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a ConnectAgentResource message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.v1beta1.ConnectAgentResource + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.v1beta1.ConnectAgentResource} ConnectAgentResource + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + ConnectAgentResource.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a ConnectAgentResource message. + * @function verify + * @memberof google.cloud.gkehub.v1beta1.ConnectAgentResource + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + ConnectAgentResource.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.type != null && message.hasOwnProperty("type")) { + var error = $root.google.cloud.gkehub.v1beta1.TypeMeta.verify(message.type); + if (error) + return "type." + error; + } + if (message.manifest != null && message.hasOwnProperty("manifest")) + if (!$util.isString(message.manifest)) + return "manifest: string expected"; + return null; + }; - /** - * Converts this MethodOptions to JSON. - * @function toJSON - * @memberof google.protobuf.MethodOptions - * @instance - * @returns {Object.} JSON object - */ - MethodOptions.prototype.toJSON = function toJSON() { - return this.constructor.toObject(this, $protobuf.util.toJSONOptions); - }; + /** + * Creates a ConnectAgentResource message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.v1beta1.ConnectAgentResource + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.v1beta1.ConnectAgentResource} ConnectAgentResource + */ + ConnectAgentResource.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.v1beta1.ConnectAgentResource) + return object; + var message = new $root.google.cloud.gkehub.v1beta1.ConnectAgentResource(); + if (object.type != null) { + if (typeof object.type !== "object") + throw TypeError(".google.cloud.gkehub.v1beta1.ConnectAgentResource.type: object expected"); + message.type = $root.google.cloud.gkehub.v1beta1.TypeMeta.fromObject(object.type); + } + if (object.manifest != null) + message.manifest = String(object.manifest); + return message; + }; - /** - * IdempotencyLevel enum. - * @name google.protobuf.MethodOptions.IdempotencyLevel - * @enum {number} - * @property {number} IDEMPOTENCY_UNKNOWN=0 IDEMPOTENCY_UNKNOWN value - * @property {number} NO_SIDE_EFFECTS=1 NO_SIDE_EFFECTS value - * @property {number} IDEMPOTENT=2 IDEMPOTENT value - */ - MethodOptions.IdempotencyLevel = (function() { - var valuesById = {}, values = Object.create(valuesById); - values[valuesById[0] = "IDEMPOTENCY_UNKNOWN"] = 0; - values[valuesById[1] = "NO_SIDE_EFFECTS"] = 1; - values[valuesById[2] = "IDEMPOTENT"] = 2; - return values; - })(); + /** + * Creates a plain object from a ConnectAgentResource message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.v1beta1.ConnectAgentResource + * @static + * @param {google.cloud.gkehub.v1beta1.ConnectAgentResource} message ConnectAgentResource + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + ConnectAgentResource.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.type = null; + object.manifest = ""; + } + if (message.type != null && message.hasOwnProperty("type")) + object.type = $root.google.cloud.gkehub.v1beta1.TypeMeta.toObject(message.type, options); + if (message.manifest != null && message.hasOwnProperty("manifest")) + object.manifest = message.manifest; + return object; + }; - return MethodOptions; - })(); + /** + * Converts this ConnectAgentResource to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.v1beta1.ConnectAgentResource + * @instance + * @returns {Object.} JSON object + */ + ConnectAgentResource.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; - protobuf.UninterpretedOption = (function() { + return ConnectAgentResource; + })(); - /** - * Properties of an UninterpretedOption. - * @memberof google.protobuf - * @interface IUninterpretedOption - * @property {Array.|null} [name] UninterpretedOption name - * @property {string|null} [identifierValue] UninterpretedOption identifierValue - * @property {number|Long|null} [positiveIntValue] UninterpretedOption positiveIntValue - * @property {number|Long|null} [negativeIntValue] UninterpretedOption negativeIntValue - * @property {number|null} [doubleValue] UninterpretedOption doubleValue - * @property {Uint8Array|null} [stringValue] UninterpretedOption stringValue - * @property {string|null} [aggregateValue] UninterpretedOption aggregateValue - */ + v1beta1.TypeMeta = (function() { - /** - * Constructs a new UninterpretedOption. - * @memberof google.protobuf - * @classdesc Represents an UninterpretedOption. - * @implements IUninterpretedOption - * @constructor - * @param {google.protobuf.IUninterpretedOption=} [properties] Properties to set - */ - function UninterpretedOption(properties) { - this.name = []; - 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]]; - } + /** + * Properties of a TypeMeta. + * @memberof google.cloud.gkehub.v1beta1 + * @interface ITypeMeta + * @property {string|null} [kind] TypeMeta kind + * @property {string|null} [apiVersion] TypeMeta apiVersion + */ - /** - * UninterpretedOption name. - * @member {Array.} name - * @memberof google.protobuf.UninterpretedOption - * @instance - */ - UninterpretedOption.prototype.name = $util.emptyArray; + /** + * Constructs a new TypeMeta. + * @memberof google.cloud.gkehub.v1beta1 + * @classdesc Represents a TypeMeta. + * @implements ITypeMeta + * @constructor + * @param {google.cloud.gkehub.v1beta1.ITypeMeta=} [properties] Properties to set + */ + function TypeMeta(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]]; + } - /** - * UninterpretedOption identifierValue. - * @member {string} identifierValue - * @memberof google.protobuf.UninterpretedOption - * @instance - */ - UninterpretedOption.prototype.identifierValue = ""; + /** + * TypeMeta kind. + * @member {string} kind + * @memberof google.cloud.gkehub.v1beta1.TypeMeta + * @instance + */ + TypeMeta.prototype.kind = ""; - /** - * UninterpretedOption positiveIntValue. - * @member {number|Long} positiveIntValue - * @memberof google.protobuf.UninterpretedOption - * @instance - */ - UninterpretedOption.prototype.positiveIntValue = $util.Long ? $util.Long.fromBits(0,0,true) : 0; + /** + * TypeMeta apiVersion. + * @member {string} apiVersion + * @memberof google.cloud.gkehub.v1beta1.TypeMeta + * @instance + */ + TypeMeta.prototype.apiVersion = ""; - /** - * UninterpretedOption negativeIntValue. - * @member {number|Long} negativeIntValue - * @memberof google.protobuf.UninterpretedOption - * @instance - */ - UninterpretedOption.prototype.negativeIntValue = $util.Long ? $util.Long.fromBits(0,0,false) : 0; + /** + * Creates a new TypeMeta instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.v1beta1.TypeMeta + * @static + * @param {google.cloud.gkehub.v1beta1.ITypeMeta=} [properties] Properties to set + * @returns {google.cloud.gkehub.v1beta1.TypeMeta} TypeMeta instance + */ + TypeMeta.create = function create(properties) { + return new TypeMeta(properties); + }; + + /** + * Encodes the specified TypeMeta message. Does not implicitly {@link google.cloud.gkehub.v1beta1.TypeMeta.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.v1beta1.TypeMeta + * @static + * @param {google.cloud.gkehub.v1beta1.ITypeMeta} message TypeMeta message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + TypeMeta.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.kind != null && Object.hasOwnProperty.call(message, "kind")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.kind); + if (message.apiVersion != null && Object.hasOwnProperty.call(message, "apiVersion")) + writer.uint32(/* id 2, wireType 2 =*/18).string(message.apiVersion); + return writer; + }; - /** - * UninterpretedOption doubleValue. - * @member {number} doubleValue - * @memberof google.protobuf.UninterpretedOption - * @instance - */ - UninterpretedOption.prototype.doubleValue = 0; + /** + * Encodes the specified TypeMeta message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta1.TypeMeta.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.v1beta1.TypeMeta + * @static + * @param {google.cloud.gkehub.v1beta1.ITypeMeta} message TypeMeta message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + TypeMeta.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; - /** - * UninterpretedOption stringValue. - * @member {Uint8Array} stringValue - * @memberof google.protobuf.UninterpretedOption - * @instance - */ - UninterpretedOption.prototype.stringValue = $util.newBuffer([]); + /** + * Decodes a TypeMeta message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.v1beta1.TypeMeta + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.v1beta1.TypeMeta} TypeMeta + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + TypeMeta.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.v1beta1.TypeMeta(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.kind = reader.string(); + break; + case 2: + message.apiVersion = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; - /** - * UninterpretedOption aggregateValue. - * @member {string} aggregateValue - * @memberof google.protobuf.UninterpretedOption - * @instance - */ - UninterpretedOption.prototype.aggregateValue = ""; + /** + * Decodes a TypeMeta message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.v1beta1.TypeMeta + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.v1beta1.TypeMeta} TypeMeta + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + TypeMeta.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; - /** - * Creates a new UninterpretedOption instance using the specified properties. - * @function create - * @memberof google.protobuf.UninterpretedOption - * @static - * @param {google.protobuf.IUninterpretedOption=} [properties] Properties to set - * @returns {google.protobuf.UninterpretedOption} UninterpretedOption instance - */ - UninterpretedOption.create = function create(properties) { - return new UninterpretedOption(properties); - }; + /** + * Verifies a TypeMeta message. + * @function verify + * @memberof google.cloud.gkehub.v1beta1.TypeMeta + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + TypeMeta.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.kind != null && message.hasOwnProperty("kind")) + if (!$util.isString(message.kind)) + return "kind: string expected"; + if (message.apiVersion != null && message.hasOwnProperty("apiVersion")) + if (!$util.isString(message.apiVersion)) + return "apiVersion: string expected"; + return null; + }; - /** - * Encodes the specified UninterpretedOption message. Does not implicitly {@link google.protobuf.UninterpretedOption.verify|verify} messages. - * @function encode - * @memberof google.protobuf.UninterpretedOption - * @static - * @param {google.protobuf.IUninterpretedOption} message UninterpretedOption message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - UninterpretedOption.encode = function encode(message, writer) { - if (!writer) - writer = $Writer.create(); - if (message.name != null && message.name.length) - for (var i = 0; i < message.name.length; ++i) - $root.google.protobuf.UninterpretedOption.NamePart.encode(message.name[i], writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim(); - if (message.identifierValue != null && Object.hasOwnProperty.call(message, "identifierValue")) - writer.uint32(/* id 3, wireType 2 =*/26).string(message.identifierValue); - if (message.positiveIntValue != null && Object.hasOwnProperty.call(message, "positiveIntValue")) - writer.uint32(/* id 4, wireType 0 =*/32).uint64(message.positiveIntValue); - if (message.negativeIntValue != null && Object.hasOwnProperty.call(message, "negativeIntValue")) - writer.uint32(/* id 5, wireType 0 =*/40).int64(message.negativeIntValue); - if (message.doubleValue != null && Object.hasOwnProperty.call(message, "doubleValue")) - writer.uint32(/* id 6, wireType 1 =*/49).double(message.doubleValue); - if (message.stringValue != null && Object.hasOwnProperty.call(message, "stringValue")) - writer.uint32(/* id 7, wireType 2 =*/58).bytes(message.stringValue); - if (message.aggregateValue != null && Object.hasOwnProperty.call(message, "aggregateValue")) - writer.uint32(/* id 8, wireType 2 =*/66).string(message.aggregateValue); - return writer; - }; + /** + * Creates a TypeMeta message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.v1beta1.TypeMeta + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.v1beta1.TypeMeta} TypeMeta + */ + TypeMeta.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.v1beta1.TypeMeta) + return object; + var message = new $root.google.cloud.gkehub.v1beta1.TypeMeta(); + if (object.kind != null) + message.kind = String(object.kind); + if (object.apiVersion != null) + message.apiVersion = String(object.apiVersion); + return message; + }; - /** - * Encodes the specified UninterpretedOption message, length delimited. Does not implicitly {@link google.protobuf.UninterpretedOption.verify|verify} messages. - * @function encodeDelimited - * @memberof google.protobuf.UninterpretedOption - * @static - * @param {google.protobuf.IUninterpretedOption} message UninterpretedOption message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - UninterpretedOption.encodeDelimited = function encodeDelimited(message, writer) { - return this.encode(message, writer).ldelim(); - }; + /** + * Creates a plain object from a TypeMeta message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.v1beta1.TypeMeta + * @static + * @param {google.cloud.gkehub.v1beta1.TypeMeta} message TypeMeta + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + TypeMeta.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.kind = ""; + object.apiVersion = ""; + } + if (message.kind != null && message.hasOwnProperty("kind")) + object.kind = message.kind; + if (message.apiVersion != null && message.hasOwnProperty("apiVersion")) + object.apiVersion = message.apiVersion; + return object; + }; - /** - * Decodes an UninterpretedOption message from the specified reader or buffer. - * @function decode - * @memberof google.protobuf.UninterpretedOption - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @param {number} [length] Message length if known beforehand - * @returns {google.protobuf.UninterpretedOption} UninterpretedOption - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - UninterpretedOption.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.protobuf.UninterpretedOption(); - while (reader.pos < end) { - var tag = reader.uint32(); - switch (tag >>> 3) { - case 2: - if (!(message.name && message.name.length)) - message.name = []; - message.name.push($root.google.protobuf.UninterpretedOption.NamePart.decode(reader, reader.uint32())); - break; - case 3: - message.identifierValue = reader.string(); - break; - case 4: - message.positiveIntValue = reader.uint64(); - break; - case 5: - message.negativeIntValue = reader.int64(); - break; - case 6: - message.doubleValue = reader.double(); - break; - case 7: - message.stringValue = reader.bytes(); - break; - case 8: - message.aggregateValue = reader.string(); - break; - default: - reader.skipType(tag & 7); - break; - } - } - return message; - }; + /** + * Converts this TypeMeta to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.v1beta1.TypeMeta + * @instance + * @returns {Object.} JSON object + */ + TypeMeta.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; - /** - * Decodes an UninterpretedOption message from the specified reader or buffer, length delimited. - * @function decodeDelimited - * @memberof google.protobuf.UninterpretedOption - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {google.protobuf.UninterpretedOption} UninterpretedOption - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - UninterpretedOption.decodeDelimited = function decodeDelimited(reader) { - if (!(reader instanceof $Reader)) - reader = new $Reader(reader); - return this.decode(reader, reader.uint32()); - }; + return TypeMeta; + })(); - /** - * Verifies an UninterpretedOption message. - * @function verify - * @memberof google.protobuf.UninterpretedOption - * @static - * @param {Object.} message Plain object to verify - * @returns {string|null} `null` if valid, otherwise the reason why it is not - */ - UninterpretedOption.verify = function verify(message) { - if (typeof message !== "object" || message === null) - return "object expected"; - if (message.name != null && message.hasOwnProperty("name")) { - if (!Array.isArray(message.name)) - return "name: array expected"; - for (var i = 0; i < message.name.length; ++i) { - var error = $root.google.protobuf.UninterpretedOption.NamePart.verify(message.name[i]); - if (error) - return "name." + error; - } - } - if (message.identifierValue != null && message.hasOwnProperty("identifierValue")) - if (!$util.isString(message.identifierValue)) - return "identifierValue: string expected"; - if (message.positiveIntValue != null && message.hasOwnProperty("positiveIntValue")) - if (!$util.isInteger(message.positiveIntValue) && !(message.positiveIntValue && $util.isInteger(message.positiveIntValue.low) && $util.isInteger(message.positiveIntValue.high))) - return "positiveIntValue: integer|Long expected"; - if (message.negativeIntValue != null && message.hasOwnProperty("negativeIntValue")) - if (!$util.isInteger(message.negativeIntValue) && !(message.negativeIntValue && $util.isInteger(message.negativeIntValue.low) && $util.isInteger(message.negativeIntValue.high))) - return "negativeIntValue: integer|Long expected"; - if (message.doubleValue != null && message.hasOwnProperty("doubleValue")) - if (typeof message.doubleValue !== "number") - return "doubleValue: number expected"; - if (message.stringValue != null && message.hasOwnProperty("stringValue")) - if (!(message.stringValue && typeof message.stringValue.length === "number" || $util.isString(message.stringValue))) - return "stringValue: buffer expected"; - if (message.aggregateValue != null && message.hasOwnProperty("aggregateValue")) - if (!$util.isString(message.aggregateValue)) - return "aggregateValue: string expected"; - return null; - }; + v1beta1.ConnectAgent = (function() { - /** - * Creates an UninterpretedOption message from a plain object. Also converts values to their respective internal types. - * @function fromObject - * @memberof google.protobuf.UninterpretedOption - * @static - * @param {Object.} object Plain object - * @returns {google.protobuf.UninterpretedOption} UninterpretedOption - */ - UninterpretedOption.fromObject = function fromObject(object) { - if (object instanceof $root.google.protobuf.UninterpretedOption) - return object; - var message = new $root.google.protobuf.UninterpretedOption(); - if (object.name) { - if (!Array.isArray(object.name)) - throw TypeError(".google.protobuf.UninterpretedOption.name: array expected"); - message.name = []; - for (var i = 0; i < object.name.length; ++i) { - if (typeof object.name[i] !== "object") - throw TypeError(".google.protobuf.UninterpretedOption.name: object expected"); - message.name[i] = $root.google.protobuf.UninterpretedOption.NamePart.fromObject(object.name[i]); + /** + * Properties of a ConnectAgent. + * @memberof google.cloud.gkehub.v1beta1 + * @interface IConnectAgent + * @property {string|null} [name] ConnectAgent name + * @property {Uint8Array|null} [proxy] ConnectAgent proxy + * @property {string|null} [namespace] ConnectAgent namespace + */ + + /** + * Constructs a new ConnectAgent. + * @memberof google.cloud.gkehub.v1beta1 + * @classdesc Represents a ConnectAgent. + * @implements IConnectAgent + * @constructor + * @param {google.cloud.gkehub.v1beta1.IConnectAgent=} [properties] Properties to set + */ + function ConnectAgent(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]]; } - } - if (object.identifierValue != null) - message.identifierValue = String(object.identifierValue); - if (object.positiveIntValue != null) - if ($util.Long) - (message.positiveIntValue = $util.Long.fromValue(object.positiveIntValue)).unsigned = true; - else if (typeof object.positiveIntValue === "string") - message.positiveIntValue = parseInt(object.positiveIntValue, 10); - else if (typeof object.positiveIntValue === "number") - message.positiveIntValue = object.positiveIntValue; - else if (typeof object.positiveIntValue === "object") - message.positiveIntValue = new $util.LongBits(object.positiveIntValue.low >>> 0, object.positiveIntValue.high >>> 0).toNumber(true); - if (object.negativeIntValue != null) - if ($util.Long) - (message.negativeIntValue = $util.Long.fromValue(object.negativeIntValue)).unsigned = false; - else if (typeof object.negativeIntValue === "string") - message.negativeIntValue = parseInt(object.negativeIntValue, 10); - else if (typeof object.negativeIntValue === "number") - message.negativeIntValue = object.negativeIntValue; - else if (typeof object.negativeIntValue === "object") - message.negativeIntValue = new $util.LongBits(object.negativeIntValue.low >>> 0, object.negativeIntValue.high >>> 0).toNumber(); - if (object.doubleValue != null) - message.doubleValue = Number(object.doubleValue); - if (object.stringValue != null) - if (typeof object.stringValue === "string") - $util.base64.decode(object.stringValue, message.stringValue = $util.newBuffer($util.base64.length(object.stringValue)), 0); - else if (object.stringValue.length) - message.stringValue = object.stringValue; - if (object.aggregateValue != null) - message.aggregateValue = String(object.aggregateValue); - return message; - }; - /** - * Creates a plain object from an UninterpretedOption message. Also converts values to other types if specified. - * @function toObject - * @memberof google.protobuf.UninterpretedOption - * @static - * @param {google.protobuf.UninterpretedOption} message UninterpretedOption - * @param {$protobuf.IConversionOptions} [options] Conversion options - * @returns {Object.} Plain object - */ - UninterpretedOption.toObject = function toObject(message, options) { - if (!options) - options = {}; - var object = {}; - if (options.arrays || options.defaults) - object.name = []; - if (options.defaults) { - object.identifierValue = ""; - if ($util.Long) { - var long = new $util.Long(0, 0, true); - object.positiveIntValue = options.longs === String ? long.toString() : options.longs === Number ? long.toNumber() : long; - } else - object.positiveIntValue = options.longs === String ? "0" : 0; - if ($util.Long) { - var long = new $util.Long(0, 0, false); - object.negativeIntValue = options.longs === String ? long.toString() : options.longs === Number ? long.toNumber() : long; - } else - object.negativeIntValue = options.longs === String ? "0" : 0; - object.doubleValue = 0; - if (options.bytes === String) - object.stringValue = ""; - else { - object.stringValue = []; - if (options.bytes !== Array) - object.stringValue = $util.newBuffer(object.stringValue); - } - object.aggregateValue = ""; - } - if (message.name && message.name.length) { - object.name = []; - for (var j = 0; j < message.name.length; ++j) - object.name[j] = $root.google.protobuf.UninterpretedOption.NamePart.toObject(message.name[j], options); - } - if (message.identifierValue != null && message.hasOwnProperty("identifierValue")) - object.identifierValue = message.identifierValue; - if (message.positiveIntValue != null && message.hasOwnProperty("positiveIntValue")) - if (typeof message.positiveIntValue === "number") - object.positiveIntValue = options.longs === String ? String(message.positiveIntValue) : message.positiveIntValue; - else - object.positiveIntValue = options.longs === String ? $util.Long.prototype.toString.call(message.positiveIntValue) : options.longs === Number ? new $util.LongBits(message.positiveIntValue.low >>> 0, message.positiveIntValue.high >>> 0).toNumber(true) : message.positiveIntValue; - if (message.negativeIntValue != null && message.hasOwnProperty("negativeIntValue")) - if (typeof message.negativeIntValue === "number") - object.negativeIntValue = options.longs === String ? String(message.negativeIntValue) : message.negativeIntValue; - else - object.negativeIntValue = options.longs === String ? $util.Long.prototype.toString.call(message.negativeIntValue) : options.longs === Number ? new $util.LongBits(message.negativeIntValue.low >>> 0, message.negativeIntValue.high >>> 0).toNumber() : message.negativeIntValue; - if (message.doubleValue != null && message.hasOwnProperty("doubleValue")) - object.doubleValue = options.json && !isFinite(message.doubleValue) ? String(message.doubleValue) : message.doubleValue; - if (message.stringValue != null && message.hasOwnProperty("stringValue")) - object.stringValue = options.bytes === String ? $util.base64.encode(message.stringValue, 0, message.stringValue.length) : options.bytes === Array ? Array.prototype.slice.call(message.stringValue) : message.stringValue; - if (message.aggregateValue != null && message.hasOwnProperty("aggregateValue")) - object.aggregateValue = message.aggregateValue; - return object; - }; + /** + * ConnectAgent name. + * @member {string} name + * @memberof google.cloud.gkehub.v1beta1.ConnectAgent + * @instance + */ + ConnectAgent.prototype.name = ""; + + /** + * ConnectAgent proxy. + * @member {Uint8Array} proxy + * @memberof google.cloud.gkehub.v1beta1.ConnectAgent + * @instance + */ + ConnectAgent.prototype.proxy = $util.newBuffer([]); + + /** + * ConnectAgent namespace. + * @member {string} namespace + * @memberof google.cloud.gkehub.v1beta1.ConnectAgent + * @instance + */ + ConnectAgent.prototype.namespace = ""; + + /** + * Creates a new ConnectAgent instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.v1beta1.ConnectAgent + * @static + * @param {google.cloud.gkehub.v1beta1.IConnectAgent=} [properties] Properties to set + * @returns {google.cloud.gkehub.v1beta1.ConnectAgent} ConnectAgent instance + */ + ConnectAgent.create = function create(properties) { + return new ConnectAgent(properties); + }; + + /** + * Encodes the specified ConnectAgent message. Does not implicitly {@link google.cloud.gkehub.v1beta1.ConnectAgent.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.v1beta1.ConnectAgent + * @static + * @param {google.cloud.gkehub.v1beta1.IConnectAgent} message ConnectAgent message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + ConnectAgent.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.name != null && Object.hasOwnProperty.call(message, "name")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.name); + if (message.proxy != null && Object.hasOwnProperty.call(message, "proxy")) + writer.uint32(/* id 2, wireType 2 =*/18).bytes(message.proxy); + if (message.namespace != null && Object.hasOwnProperty.call(message, "namespace")) + writer.uint32(/* id 3, wireType 2 =*/26).string(message.namespace); + return writer; + }; + + /** + * Encodes the specified ConnectAgent message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta1.ConnectAgent.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.v1beta1.ConnectAgent + * @static + * @param {google.cloud.gkehub.v1beta1.IConnectAgent} message ConnectAgent message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + ConnectAgent.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a ConnectAgent message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.v1beta1.ConnectAgent + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.v1beta1.ConnectAgent} ConnectAgent + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + ConnectAgent.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.v1beta1.ConnectAgent(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.name = reader.string(); + break; + case 2: + message.proxy = reader.bytes(); + break; + case 3: + message.namespace = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a ConnectAgent message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.v1beta1.ConnectAgent + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.v1beta1.ConnectAgent} ConnectAgent + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + ConnectAgent.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a ConnectAgent message. + * @function verify + * @memberof google.cloud.gkehub.v1beta1.ConnectAgent + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + ConnectAgent.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.name != null && message.hasOwnProperty("name")) + if (!$util.isString(message.name)) + return "name: string expected"; + if (message.proxy != null && message.hasOwnProperty("proxy")) + if (!(message.proxy && typeof message.proxy.length === "number" || $util.isString(message.proxy))) + return "proxy: buffer expected"; + if (message.namespace != null && message.hasOwnProperty("namespace")) + if (!$util.isString(message.namespace)) + return "namespace: string expected"; + return null; + }; - /** - * Converts this UninterpretedOption to JSON. - * @function toJSON - * @memberof google.protobuf.UninterpretedOption - * @instance - * @returns {Object.} JSON object - */ - UninterpretedOption.prototype.toJSON = function toJSON() { - return this.constructor.toObject(this, $protobuf.util.toJSONOptions); - }; + /** + * Creates a ConnectAgent message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.v1beta1.ConnectAgent + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.v1beta1.ConnectAgent} ConnectAgent + */ + ConnectAgent.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.v1beta1.ConnectAgent) + return object; + var message = new $root.google.cloud.gkehub.v1beta1.ConnectAgent(); + if (object.name != null) + message.name = String(object.name); + if (object.proxy != null) + if (typeof object.proxy === "string") + $util.base64.decode(object.proxy, message.proxy = $util.newBuffer($util.base64.length(object.proxy)), 0); + else if (object.proxy.length) + message.proxy = object.proxy; + if (object.namespace != null) + message.namespace = String(object.namespace); + return message; + }; - UninterpretedOption.NamePart = (function() { + /** + * Creates a plain object from a ConnectAgent message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.v1beta1.ConnectAgent + * @static + * @param {google.cloud.gkehub.v1beta1.ConnectAgent} message ConnectAgent + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + ConnectAgent.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.name = ""; + if (options.bytes === String) + object.proxy = ""; + else { + object.proxy = []; + if (options.bytes !== Array) + object.proxy = $util.newBuffer(object.proxy); + } + object.namespace = ""; + } + if (message.name != null && message.hasOwnProperty("name")) + object.name = message.name; + if (message.proxy != null && message.hasOwnProperty("proxy")) + object.proxy = options.bytes === String ? $util.base64.encode(message.proxy, 0, message.proxy.length) : options.bytes === Array ? Array.prototype.slice.call(message.proxy) : message.proxy; + if (message.namespace != null && message.hasOwnProperty("namespace")) + object.namespace = message.namespace; + return object; + }; - /** - * Properties of a NamePart. - * @memberof google.protobuf.UninterpretedOption - * @interface INamePart - * @property {string} namePart NamePart namePart - * @property {boolean} isExtension NamePart isExtension - */ + /** + * Converts this ConnectAgent to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.v1beta1.ConnectAgent + * @instance + * @returns {Object.} JSON object + */ + ConnectAgent.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; - /** - * Constructs a new NamePart. - * @memberof google.protobuf.UninterpretedOption - * @classdesc Represents a NamePart. - * @implements INamePart - * @constructor - * @param {google.protobuf.UninterpretedOption.INamePart=} [properties] Properties to set - */ - function NamePart(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]]; - } + return ConnectAgent; + })(); - /** - * NamePart namePart. - * @member {string} namePart - * @memberof google.protobuf.UninterpretedOption.NamePart - * @instance - */ - NamePart.prototype.namePart = ""; + v1beta1.ValidateExclusivityRequest = (function() { - /** - * NamePart isExtension. - * @member {boolean} isExtension - * @memberof google.protobuf.UninterpretedOption.NamePart - * @instance - */ - NamePart.prototype.isExtension = false; + /** + * Properties of a ValidateExclusivityRequest. + * @memberof google.cloud.gkehub.v1beta1 + * @interface IValidateExclusivityRequest + * @property {string|null} [parent] ValidateExclusivityRequest parent + * @property {string|null} [crManifest] ValidateExclusivityRequest crManifest + * @property {string|null} [intendedMembership] ValidateExclusivityRequest intendedMembership + */ - /** - * Creates a new NamePart instance using the specified properties. - * @function create - * @memberof google.protobuf.UninterpretedOption.NamePart - * @static - * @param {google.protobuf.UninterpretedOption.INamePart=} [properties] Properties to set - * @returns {google.protobuf.UninterpretedOption.NamePart} NamePart instance - */ - NamePart.create = function create(properties) { - return new NamePart(properties); - }; + /** + * Constructs a new ValidateExclusivityRequest. + * @memberof google.cloud.gkehub.v1beta1 + * @classdesc Represents a ValidateExclusivityRequest. + * @implements IValidateExclusivityRequest + * @constructor + * @param {google.cloud.gkehub.v1beta1.IValidateExclusivityRequest=} [properties] Properties to set + */ + function ValidateExclusivityRequest(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]]; + } + + /** + * ValidateExclusivityRequest parent. + * @member {string} parent + * @memberof google.cloud.gkehub.v1beta1.ValidateExclusivityRequest + * @instance + */ + ValidateExclusivityRequest.prototype.parent = ""; + + /** + * ValidateExclusivityRequest crManifest. + * @member {string} crManifest + * @memberof google.cloud.gkehub.v1beta1.ValidateExclusivityRequest + * @instance + */ + ValidateExclusivityRequest.prototype.crManifest = ""; + + /** + * ValidateExclusivityRequest intendedMembership. + * @member {string} intendedMembership + * @memberof google.cloud.gkehub.v1beta1.ValidateExclusivityRequest + * @instance + */ + ValidateExclusivityRequest.prototype.intendedMembership = ""; - /** - * Encodes the specified NamePart message. Does not implicitly {@link google.protobuf.UninterpretedOption.NamePart.verify|verify} messages. - * @function encode - * @memberof google.protobuf.UninterpretedOption.NamePart - * @static - * @param {google.protobuf.UninterpretedOption.INamePart} message NamePart message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - NamePart.encode = function encode(message, writer) { - if (!writer) - writer = $Writer.create(); - writer.uint32(/* id 1, wireType 2 =*/10).string(message.namePart); - writer.uint32(/* id 2, wireType 0 =*/16).bool(message.isExtension); - return writer; - }; + /** + * Creates a new ValidateExclusivityRequest instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.v1beta1.ValidateExclusivityRequest + * @static + * @param {google.cloud.gkehub.v1beta1.IValidateExclusivityRequest=} [properties] Properties to set + * @returns {google.cloud.gkehub.v1beta1.ValidateExclusivityRequest} ValidateExclusivityRequest instance + */ + ValidateExclusivityRequest.create = function create(properties) { + return new ValidateExclusivityRequest(properties); + }; - /** - * Encodes the specified NamePart message, length delimited. Does not implicitly {@link google.protobuf.UninterpretedOption.NamePart.verify|verify} messages. - * @function encodeDelimited - * @memberof google.protobuf.UninterpretedOption.NamePart - * @static - * @param {google.protobuf.UninterpretedOption.INamePart} message NamePart message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - NamePart.encodeDelimited = function encodeDelimited(message, writer) { - return this.encode(message, writer).ldelim(); - }; + /** + * Encodes the specified ValidateExclusivityRequest message. Does not implicitly {@link google.cloud.gkehub.v1beta1.ValidateExclusivityRequest.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.v1beta1.ValidateExclusivityRequest + * @static + * @param {google.cloud.gkehub.v1beta1.IValidateExclusivityRequest} message ValidateExclusivityRequest message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + ValidateExclusivityRequest.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.parent != null && Object.hasOwnProperty.call(message, "parent")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.parent); + if (message.crManifest != null && Object.hasOwnProperty.call(message, "crManifest")) + writer.uint32(/* id 2, wireType 2 =*/18).string(message.crManifest); + if (message.intendedMembership != null && Object.hasOwnProperty.call(message, "intendedMembership")) + writer.uint32(/* id 3, wireType 2 =*/26).string(message.intendedMembership); + return writer; + }; - /** - * Decodes a NamePart message from the specified reader or buffer. - * @function decode - * @memberof google.protobuf.UninterpretedOption.NamePart - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @param {number} [length] Message length if known beforehand - * @returns {google.protobuf.UninterpretedOption.NamePart} NamePart - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - NamePart.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.protobuf.UninterpretedOption.NamePart(); - while (reader.pos < end) { - var tag = reader.uint32(); - switch (tag >>> 3) { - case 1: - message.namePart = reader.string(); - break; - case 2: - message.isExtension = reader.bool(); - break; - default: - reader.skipType(tag & 7); - break; - } - } - if (!message.hasOwnProperty("namePart")) - throw $util.ProtocolError("missing required 'namePart'", { instance: message }); - if (!message.hasOwnProperty("isExtension")) - throw $util.ProtocolError("missing required 'isExtension'", { instance: message }); - return message; - }; + /** + * Encodes the specified ValidateExclusivityRequest message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta1.ValidateExclusivityRequest.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.v1beta1.ValidateExclusivityRequest + * @static + * @param {google.cloud.gkehub.v1beta1.IValidateExclusivityRequest} message ValidateExclusivityRequest message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + ValidateExclusivityRequest.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; - /** - * Decodes a NamePart message from the specified reader or buffer, length delimited. - * @function decodeDelimited - * @memberof google.protobuf.UninterpretedOption.NamePart - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {google.protobuf.UninterpretedOption.NamePart} NamePart - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - NamePart.decodeDelimited = function decodeDelimited(reader) { - if (!(reader instanceof $Reader)) - reader = new $Reader(reader); - return this.decode(reader, reader.uint32()); - }; + /** + * Decodes a ValidateExclusivityRequest message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.v1beta1.ValidateExclusivityRequest + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.v1beta1.ValidateExclusivityRequest} ValidateExclusivityRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + ValidateExclusivityRequest.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.v1beta1.ValidateExclusivityRequest(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.parent = reader.string(); + break; + case 2: + message.crManifest = reader.string(); + break; + case 3: + message.intendedMembership = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; - /** - * Verifies a NamePart message. - * @function verify - * @memberof google.protobuf.UninterpretedOption.NamePart - * @static - * @param {Object.} message Plain object to verify - * @returns {string|null} `null` if valid, otherwise the reason why it is not - */ - NamePart.verify = function verify(message) { - if (typeof message !== "object" || message === null) - return "object expected"; - if (!$util.isString(message.namePart)) - return "namePart: string expected"; - if (typeof message.isExtension !== "boolean") - return "isExtension: boolean expected"; - return null; - }; + /** + * Decodes a ValidateExclusivityRequest message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.v1beta1.ValidateExclusivityRequest + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.v1beta1.ValidateExclusivityRequest} ValidateExclusivityRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + ValidateExclusivityRequest.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; - /** - * Creates a NamePart message from a plain object. Also converts values to their respective internal types. - * @function fromObject - * @memberof google.protobuf.UninterpretedOption.NamePart - * @static - * @param {Object.} object Plain object - * @returns {google.protobuf.UninterpretedOption.NamePart} NamePart - */ - NamePart.fromObject = function fromObject(object) { - if (object instanceof $root.google.protobuf.UninterpretedOption.NamePart) - return object; - var message = new $root.google.protobuf.UninterpretedOption.NamePart(); - if (object.namePart != null) - message.namePart = String(object.namePart); - if (object.isExtension != null) - message.isExtension = Boolean(object.isExtension); - return message; - }; + /** + * Verifies a ValidateExclusivityRequest message. + * @function verify + * @memberof google.cloud.gkehub.v1beta1.ValidateExclusivityRequest + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + ValidateExclusivityRequest.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.parent != null && message.hasOwnProperty("parent")) + if (!$util.isString(message.parent)) + return "parent: string expected"; + if (message.crManifest != null && message.hasOwnProperty("crManifest")) + if (!$util.isString(message.crManifest)) + return "crManifest: string expected"; + if (message.intendedMembership != null && message.hasOwnProperty("intendedMembership")) + if (!$util.isString(message.intendedMembership)) + return "intendedMembership: string expected"; + return null; + }; - /** - * Creates a plain object from a NamePart message. Also converts values to other types if specified. - * @function toObject - * @memberof google.protobuf.UninterpretedOption.NamePart - * @static - * @param {google.protobuf.UninterpretedOption.NamePart} message NamePart - * @param {$protobuf.IConversionOptions} [options] Conversion options - * @returns {Object.} Plain object - */ - NamePart.toObject = function toObject(message, options) { - if (!options) - options = {}; - var object = {}; - if (options.defaults) { - object.namePart = ""; - object.isExtension = false; - } - if (message.namePart != null && message.hasOwnProperty("namePart")) - object.namePart = message.namePart; - if (message.isExtension != null && message.hasOwnProperty("isExtension")) - object.isExtension = message.isExtension; - return object; - }; + /** + * Creates a ValidateExclusivityRequest message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.v1beta1.ValidateExclusivityRequest + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.v1beta1.ValidateExclusivityRequest} ValidateExclusivityRequest + */ + ValidateExclusivityRequest.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.v1beta1.ValidateExclusivityRequest) + return object; + var message = new $root.google.cloud.gkehub.v1beta1.ValidateExclusivityRequest(); + if (object.parent != null) + message.parent = String(object.parent); + if (object.crManifest != null) + message.crManifest = String(object.crManifest); + if (object.intendedMembership != null) + message.intendedMembership = String(object.intendedMembership); + return message; + }; - /** - * Converts this NamePart to JSON. - * @function toJSON - * @memberof google.protobuf.UninterpretedOption.NamePart - * @instance - * @returns {Object.} JSON object - */ - NamePart.prototype.toJSON = function toJSON() { - return this.constructor.toObject(this, $protobuf.util.toJSONOptions); - }; + /** + * Creates a plain object from a ValidateExclusivityRequest message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.v1beta1.ValidateExclusivityRequest + * @static + * @param {google.cloud.gkehub.v1beta1.ValidateExclusivityRequest} message ValidateExclusivityRequest + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + ValidateExclusivityRequest.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.parent = ""; + object.crManifest = ""; + object.intendedMembership = ""; + } + if (message.parent != null && message.hasOwnProperty("parent")) + object.parent = message.parent; + if (message.crManifest != null && message.hasOwnProperty("crManifest")) + object.crManifest = message.crManifest; + if (message.intendedMembership != null && message.hasOwnProperty("intendedMembership")) + object.intendedMembership = message.intendedMembership; + return object; + }; - return NamePart; - })(); + /** + * Converts this ValidateExclusivityRequest to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.v1beta1.ValidateExclusivityRequest + * @instance + * @returns {Object.} JSON object + */ + ValidateExclusivityRequest.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; - return UninterpretedOption; - })(); + return ValidateExclusivityRequest; + })(); - protobuf.SourceCodeInfo = (function() { + v1beta1.ValidateExclusivityResponse = (function() { - /** - * Properties of a SourceCodeInfo. - * @memberof google.protobuf - * @interface ISourceCodeInfo - * @property {Array.|null} [location] SourceCodeInfo location - */ + /** + * Properties of a ValidateExclusivityResponse. + * @memberof google.cloud.gkehub.v1beta1 + * @interface IValidateExclusivityResponse + * @property {google.rpc.IStatus|null} [status] ValidateExclusivityResponse status + */ - /** - * Constructs a new SourceCodeInfo. - * @memberof google.protobuf - * @classdesc Represents a SourceCodeInfo. - * @implements ISourceCodeInfo - * @constructor - * @param {google.protobuf.ISourceCodeInfo=} [properties] Properties to set - */ - function SourceCodeInfo(properties) { - this.location = []; - 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]]; - } + /** + * Constructs a new ValidateExclusivityResponse. + * @memberof google.cloud.gkehub.v1beta1 + * @classdesc Represents a ValidateExclusivityResponse. + * @implements IValidateExclusivityResponse + * @constructor + * @param {google.cloud.gkehub.v1beta1.IValidateExclusivityResponse=} [properties] Properties to set + */ + function ValidateExclusivityResponse(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]]; + } - /** - * SourceCodeInfo location. - * @member {Array.} location - * @memberof google.protobuf.SourceCodeInfo - * @instance - */ - SourceCodeInfo.prototype.location = $util.emptyArray; + /** + * ValidateExclusivityResponse status. + * @member {google.rpc.IStatus|null|undefined} status + * @memberof google.cloud.gkehub.v1beta1.ValidateExclusivityResponse + * @instance + */ + ValidateExclusivityResponse.prototype.status = null; - /** - * Creates a new SourceCodeInfo instance using the specified properties. - * @function create - * @memberof google.protobuf.SourceCodeInfo - * @static - * @param {google.protobuf.ISourceCodeInfo=} [properties] Properties to set - * @returns {google.protobuf.SourceCodeInfo} SourceCodeInfo instance - */ - SourceCodeInfo.create = function create(properties) { - return new SourceCodeInfo(properties); - }; + /** + * Creates a new ValidateExclusivityResponse instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.v1beta1.ValidateExclusivityResponse + * @static + * @param {google.cloud.gkehub.v1beta1.IValidateExclusivityResponse=} [properties] Properties to set + * @returns {google.cloud.gkehub.v1beta1.ValidateExclusivityResponse} ValidateExclusivityResponse instance + */ + ValidateExclusivityResponse.create = function create(properties) { + return new ValidateExclusivityResponse(properties); + }; - /** - * Encodes the specified SourceCodeInfo message. Does not implicitly {@link google.protobuf.SourceCodeInfo.verify|verify} messages. - * @function encode - * @memberof google.protobuf.SourceCodeInfo - * @static - * @param {google.protobuf.ISourceCodeInfo} message SourceCodeInfo message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - SourceCodeInfo.encode = function encode(message, writer) { - if (!writer) - writer = $Writer.create(); - if (message.location != null && message.location.length) - for (var i = 0; i < message.location.length; ++i) - $root.google.protobuf.SourceCodeInfo.Location.encode(message.location[i], writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim(); - return writer; - }; + /** + * Encodes the specified ValidateExclusivityResponse message. Does not implicitly {@link google.cloud.gkehub.v1beta1.ValidateExclusivityResponse.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.v1beta1.ValidateExclusivityResponse + * @static + * @param {google.cloud.gkehub.v1beta1.IValidateExclusivityResponse} message ValidateExclusivityResponse message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + ValidateExclusivityResponse.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.status != null && Object.hasOwnProperty.call(message, "status")) + $root.google.rpc.Status.encode(message.status, writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim(); + return writer; + }; - /** - * Encodes the specified SourceCodeInfo message, length delimited. Does not implicitly {@link google.protobuf.SourceCodeInfo.verify|verify} messages. - * @function encodeDelimited - * @memberof google.protobuf.SourceCodeInfo - * @static - * @param {google.protobuf.ISourceCodeInfo} message SourceCodeInfo message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - SourceCodeInfo.encodeDelimited = function encodeDelimited(message, writer) { - return this.encode(message, writer).ldelim(); - }; + /** + * Encodes the specified ValidateExclusivityResponse message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta1.ValidateExclusivityResponse.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.v1beta1.ValidateExclusivityResponse + * @static + * @param {google.cloud.gkehub.v1beta1.IValidateExclusivityResponse} message ValidateExclusivityResponse message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + ValidateExclusivityResponse.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; - /** - * Decodes a SourceCodeInfo message from the specified reader or buffer. - * @function decode - * @memberof google.protobuf.SourceCodeInfo - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @param {number} [length] Message length if known beforehand - * @returns {google.protobuf.SourceCodeInfo} SourceCodeInfo - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - SourceCodeInfo.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.protobuf.SourceCodeInfo(); - while (reader.pos < end) { - var tag = reader.uint32(); - switch (tag >>> 3) { - case 1: - if (!(message.location && message.location.length)) - message.location = []; - message.location.push($root.google.protobuf.SourceCodeInfo.Location.decode(reader, reader.uint32())); - break; - default: - reader.skipType(tag & 7); - break; - } - } - return message; - }; + /** + * Decodes a ValidateExclusivityResponse message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.v1beta1.ValidateExclusivityResponse + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.v1beta1.ValidateExclusivityResponse} ValidateExclusivityResponse + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + ValidateExclusivityResponse.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.v1beta1.ValidateExclusivityResponse(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.status = $root.google.rpc.Status.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; - /** - * Decodes a SourceCodeInfo message from the specified reader or buffer, length delimited. - * @function decodeDelimited - * @memberof google.protobuf.SourceCodeInfo - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {google.protobuf.SourceCodeInfo} SourceCodeInfo - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - SourceCodeInfo.decodeDelimited = function decodeDelimited(reader) { - if (!(reader instanceof $Reader)) - reader = new $Reader(reader); - return this.decode(reader, reader.uint32()); - }; + /** + * Decodes a ValidateExclusivityResponse message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.v1beta1.ValidateExclusivityResponse + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.v1beta1.ValidateExclusivityResponse} ValidateExclusivityResponse + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + ValidateExclusivityResponse.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; - /** - * Verifies a SourceCodeInfo message. - * @function verify - * @memberof google.protobuf.SourceCodeInfo - * @static - * @param {Object.} message Plain object to verify - * @returns {string|null} `null` if valid, otherwise the reason why it is not - */ - SourceCodeInfo.verify = function verify(message) { - if (typeof message !== "object" || message === null) - return "object expected"; - if (message.location != null && message.hasOwnProperty("location")) { - if (!Array.isArray(message.location)) - return "location: array expected"; - for (var i = 0; i < message.location.length; ++i) { - var error = $root.google.protobuf.SourceCodeInfo.Location.verify(message.location[i]); - if (error) - return "location." + error; - } - } - return null; - }; + /** + * Verifies a ValidateExclusivityResponse message. + * @function verify + * @memberof google.cloud.gkehub.v1beta1.ValidateExclusivityResponse + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + ValidateExclusivityResponse.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.status != null && message.hasOwnProperty("status")) { + var error = $root.google.rpc.Status.verify(message.status); + if (error) + return "status." + error; + } + return null; + }; - /** - * Creates a SourceCodeInfo message from a plain object. Also converts values to their respective internal types. - * @function fromObject - * @memberof google.protobuf.SourceCodeInfo - * @static - * @param {Object.} object Plain object - * @returns {google.protobuf.SourceCodeInfo} SourceCodeInfo - */ - SourceCodeInfo.fromObject = function fromObject(object) { - if (object instanceof $root.google.protobuf.SourceCodeInfo) - return object; - var message = new $root.google.protobuf.SourceCodeInfo(); - if (object.location) { - if (!Array.isArray(object.location)) - throw TypeError(".google.protobuf.SourceCodeInfo.location: array expected"); - message.location = []; - for (var i = 0; i < object.location.length; ++i) { - if (typeof object.location[i] !== "object") - throw TypeError(".google.protobuf.SourceCodeInfo.location: object expected"); - message.location[i] = $root.google.protobuf.SourceCodeInfo.Location.fromObject(object.location[i]); - } - } - return message; - }; + /** + * Creates a ValidateExclusivityResponse message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.v1beta1.ValidateExclusivityResponse + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.v1beta1.ValidateExclusivityResponse} ValidateExclusivityResponse + */ + ValidateExclusivityResponse.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.v1beta1.ValidateExclusivityResponse) + return object; + var message = new $root.google.cloud.gkehub.v1beta1.ValidateExclusivityResponse(); + if (object.status != null) { + if (typeof object.status !== "object") + throw TypeError(".google.cloud.gkehub.v1beta1.ValidateExclusivityResponse.status: object expected"); + message.status = $root.google.rpc.Status.fromObject(object.status); + } + return message; + }; - /** - * Creates a plain object from a SourceCodeInfo message. Also converts values to other types if specified. - * @function toObject - * @memberof google.protobuf.SourceCodeInfo - * @static - * @param {google.protobuf.SourceCodeInfo} message SourceCodeInfo - * @param {$protobuf.IConversionOptions} [options] Conversion options - * @returns {Object.} Plain object - */ - SourceCodeInfo.toObject = function toObject(message, options) { - if (!options) - options = {}; - var object = {}; - if (options.arrays || options.defaults) - object.location = []; - if (message.location && message.location.length) { - object.location = []; - for (var j = 0; j < message.location.length; ++j) - object.location[j] = $root.google.protobuf.SourceCodeInfo.Location.toObject(message.location[j], options); - } - return object; - }; + /** + * Creates a plain object from a ValidateExclusivityResponse message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.v1beta1.ValidateExclusivityResponse + * @static + * @param {google.cloud.gkehub.v1beta1.ValidateExclusivityResponse} message ValidateExclusivityResponse + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + ValidateExclusivityResponse.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) + object.status = null; + if (message.status != null && message.hasOwnProperty("status")) + object.status = $root.google.rpc.Status.toObject(message.status, options); + return object; + }; - /** - * Converts this SourceCodeInfo to JSON. - * @function toJSON - * @memberof google.protobuf.SourceCodeInfo - * @instance - * @returns {Object.} JSON object - */ - SourceCodeInfo.prototype.toJSON = function toJSON() { - return this.constructor.toObject(this, $protobuf.util.toJSONOptions); - }; + /** + * Converts this ValidateExclusivityResponse to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.v1beta1.ValidateExclusivityResponse + * @instance + * @returns {Object.} JSON object + */ + ValidateExclusivityResponse.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; - SourceCodeInfo.Location = (function() { + return ValidateExclusivityResponse; + })(); - /** - * Properties of a Location. - * @memberof google.protobuf.SourceCodeInfo - * @interface ILocation - * @property {Array.|null} [path] Location path - * @property {Array.|null} [span] Location span - * @property {string|null} [leadingComments] Location leadingComments - * @property {string|null} [trailingComments] Location trailingComments - * @property {Array.|null} [leadingDetachedComments] Location leadingDetachedComments - */ + v1beta1.GenerateExclusivityManifestRequest = (function() { - /** - * Constructs a new Location. - * @memberof google.protobuf.SourceCodeInfo - * @classdesc Represents a Location. - * @implements ILocation - * @constructor - * @param {google.protobuf.SourceCodeInfo.ILocation=} [properties] Properties to set - */ - function Location(properties) { - this.path = []; - this.span = []; - this.leadingDetachedComments = []; - 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]]; - } + /** + * Properties of a GenerateExclusivityManifestRequest. + * @memberof google.cloud.gkehub.v1beta1 + * @interface IGenerateExclusivityManifestRequest + * @property {string|null} [name] GenerateExclusivityManifestRequest name + * @property {string|null} [crdManifest] GenerateExclusivityManifestRequest crdManifest + * @property {string|null} [crManifest] GenerateExclusivityManifestRequest crManifest + */ - /** - * Location path. - * @member {Array.} path - * @memberof google.protobuf.SourceCodeInfo.Location - * @instance - */ - Location.prototype.path = $util.emptyArray; + /** + * Constructs a new GenerateExclusivityManifestRequest. + * @memberof google.cloud.gkehub.v1beta1 + * @classdesc Represents a GenerateExclusivityManifestRequest. + * @implements IGenerateExclusivityManifestRequest + * @constructor + * @param {google.cloud.gkehub.v1beta1.IGenerateExclusivityManifestRequest=} [properties] Properties to set + */ + function GenerateExclusivityManifestRequest(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]]; + } - /** - * Location span. - * @member {Array.} span - * @memberof google.protobuf.SourceCodeInfo.Location - * @instance - */ - Location.prototype.span = $util.emptyArray; + /** + * GenerateExclusivityManifestRequest name. + * @member {string} name + * @memberof google.cloud.gkehub.v1beta1.GenerateExclusivityManifestRequest + * @instance + */ + GenerateExclusivityManifestRequest.prototype.name = ""; + + /** + * GenerateExclusivityManifestRequest crdManifest. + * @member {string} crdManifest + * @memberof google.cloud.gkehub.v1beta1.GenerateExclusivityManifestRequest + * @instance + */ + GenerateExclusivityManifestRequest.prototype.crdManifest = ""; - /** - * Location leadingComments. - * @member {string} leadingComments - * @memberof google.protobuf.SourceCodeInfo.Location - * @instance - */ - Location.prototype.leadingComments = ""; + /** + * GenerateExclusivityManifestRequest crManifest. + * @member {string} crManifest + * @memberof google.cloud.gkehub.v1beta1.GenerateExclusivityManifestRequest + * @instance + */ + GenerateExclusivityManifestRequest.prototype.crManifest = ""; - /** - * Location trailingComments. - * @member {string} trailingComments - * @memberof google.protobuf.SourceCodeInfo.Location - * @instance - */ - Location.prototype.trailingComments = ""; + /** + * Creates a new GenerateExclusivityManifestRequest instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.v1beta1.GenerateExclusivityManifestRequest + * @static + * @param {google.cloud.gkehub.v1beta1.IGenerateExclusivityManifestRequest=} [properties] Properties to set + * @returns {google.cloud.gkehub.v1beta1.GenerateExclusivityManifestRequest} GenerateExclusivityManifestRequest instance + */ + GenerateExclusivityManifestRequest.create = function create(properties) { + return new GenerateExclusivityManifestRequest(properties); + }; - /** - * Location leadingDetachedComments. - * @member {Array.} leadingDetachedComments - * @memberof google.protobuf.SourceCodeInfo.Location - * @instance - */ - Location.prototype.leadingDetachedComments = $util.emptyArray; + /** + * Encodes the specified GenerateExclusivityManifestRequest message. Does not implicitly {@link google.cloud.gkehub.v1beta1.GenerateExclusivityManifestRequest.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.v1beta1.GenerateExclusivityManifestRequest + * @static + * @param {google.cloud.gkehub.v1beta1.IGenerateExclusivityManifestRequest} message GenerateExclusivityManifestRequest message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + GenerateExclusivityManifestRequest.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.name != null && Object.hasOwnProperty.call(message, "name")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.name); + if (message.crdManifest != null && Object.hasOwnProperty.call(message, "crdManifest")) + writer.uint32(/* id 2, wireType 2 =*/18).string(message.crdManifest); + if (message.crManifest != null && Object.hasOwnProperty.call(message, "crManifest")) + writer.uint32(/* id 3, wireType 2 =*/26).string(message.crManifest); + return writer; + }; - /** - * Creates a new Location instance using the specified properties. - * @function create - * @memberof google.protobuf.SourceCodeInfo.Location - * @static - * @param {google.protobuf.SourceCodeInfo.ILocation=} [properties] Properties to set - * @returns {google.protobuf.SourceCodeInfo.Location} Location instance - */ - Location.create = function create(properties) { - return new Location(properties); - }; + /** + * Encodes the specified GenerateExclusivityManifestRequest message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta1.GenerateExclusivityManifestRequest.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.v1beta1.GenerateExclusivityManifestRequest + * @static + * @param {google.cloud.gkehub.v1beta1.IGenerateExclusivityManifestRequest} message GenerateExclusivityManifestRequest message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + GenerateExclusivityManifestRequest.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; - /** - * Encodes the specified Location message. Does not implicitly {@link google.protobuf.SourceCodeInfo.Location.verify|verify} messages. - * @function encode - * @memberof google.protobuf.SourceCodeInfo.Location - * @static - * @param {google.protobuf.SourceCodeInfo.ILocation} message Location message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - Location.encode = function encode(message, writer) { - if (!writer) - writer = $Writer.create(); - if (message.path != null && message.path.length) { - writer.uint32(/* id 1, wireType 2 =*/10).fork(); - for (var i = 0; i < message.path.length; ++i) - writer.int32(message.path[i]); - writer.ldelim(); - } - if (message.span != null && message.span.length) { - writer.uint32(/* id 2, wireType 2 =*/18).fork(); - for (var i = 0; i < message.span.length; ++i) - writer.int32(message.span[i]); - writer.ldelim(); - } - if (message.leadingComments != null && Object.hasOwnProperty.call(message, "leadingComments")) - writer.uint32(/* id 3, wireType 2 =*/26).string(message.leadingComments); - if (message.trailingComments != null && Object.hasOwnProperty.call(message, "trailingComments")) - writer.uint32(/* id 4, wireType 2 =*/34).string(message.trailingComments); - if (message.leadingDetachedComments != null && message.leadingDetachedComments.length) - for (var i = 0; i < message.leadingDetachedComments.length; ++i) - writer.uint32(/* id 6, wireType 2 =*/50).string(message.leadingDetachedComments[i]); - return writer; - }; + /** + * Decodes a GenerateExclusivityManifestRequest message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.v1beta1.GenerateExclusivityManifestRequest + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.v1beta1.GenerateExclusivityManifestRequest} GenerateExclusivityManifestRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + GenerateExclusivityManifestRequest.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.v1beta1.GenerateExclusivityManifestRequest(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.name = reader.string(); + break; + case 2: + message.crdManifest = reader.string(); + break; + case 3: + message.crManifest = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; - /** - * Encodes the specified Location message, length delimited. Does not implicitly {@link google.protobuf.SourceCodeInfo.Location.verify|verify} messages. - * @function encodeDelimited - * @memberof google.protobuf.SourceCodeInfo.Location - * @static - * @param {google.protobuf.SourceCodeInfo.ILocation} message Location message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - Location.encodeDelimited = function encodeDelimited(message, writer) { - return this.encode(message, writer).ldelim(); - }; + /** + * Decodes a GenerateExclusivityManifestRequest message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.v1beta1.GenerateExclusivityManifestRequest + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.v1beta1.GenerateExclusivityManifestRequest} GenerateExclusivityManifestRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + GenerateExclusivityManifestRequest.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; - /** - * Decodes a Location message from the specified reader or buffer. - * @function decode - * @memberof google.protobuf.SourceCodeInfo.Location - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @param {number} [length] Message length if known beforehand - * @returns {google.protobuf.SourceCodeInfo.Location} Location - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - Location.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.protobuf.SourceCodeInfo.Location(); - while (reader.pos < end) { - var tag = reader.uint32(); - switch (tag >>> 3) { - case 1: - if (!(message.path && message.path.length)) - message.path = []; - if ((tag & 7) === 2) { - var end2 = reader.uint32() + reader.pos; - while (reader.pos < end2) - message.path.push(reader.int32()); - } else - message.path.push(reader.int32()); - break; - case 2: - if (!(message.span && message.span.length)) - message.span = []; - if ((tag & 7) === 2) { - var end2 = reader.uint32() + reader.pos; - while (reader.pos < end2) - message.span.push(reader.int32()); - } else - message.span.push(reader.int32()); - break; - case 3: - message.leadingComments = reader.string(); - break; - case 4: - message.trailingComments = reader.string(); - break; - case 6: - if (!(message.leadingDetachedComments && message.leadingDetachedComments.length)) - message.leadingDetachedComments = []; - message.leadingDetachedComments.push(reader.string()); - break; - default: - reader.skipType(tag & 7); - break; + /** + * Verifies a GenerateExclusivityManifestRequest message. + * @function verify + * @memberof google.cloud.gkehub.v1beta1.GenerateExclusivityManifestRequest + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + GenerateExclusivityManifestRequest.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.name != null && message.hasOwnProperty("name")) + if (!$util.isString(message.name)) + return "name: string expected"; + if (message.crdManifest != null && message.hasOwnProperty("crdManifest")) + if (!$util.isString(message.crdManifest)) + return "crdManifest: string expected"; + if (message.crManifest != null && message.hasOwnProperty("crManifest")) + if (!$util.isString(message.crManifest)) + return "crManifest: string expected"; + return null; + }; + + /** + * Creates a GenerateExclusivityManifestRequest message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.v1beta1.GenerateExclusivityManifestRequest + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.v1beta1.GenerateExclusivityManifestRequest} GenerateExclusivityManifestRequest + */ + GenerateExclusivityManifestRequest.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.v1beta1.GenerateExclusivityManifestRequest) + return object; + var message = new $root.google.cloud.gkehub.v1beta1.GenerateExclusivityManifestRequest(); + if (object.name != null) + message.name = String(object.name); + if (object.crdManifest != null) + message.crdManifest = String(object.crdManifest); + if (object.crManifest != null) + message.crManifest = String(object.crManifest); + return message; + }; + + /** + * Creates a plain object from a GenerateExclusivityManifestRequest message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.v1beta1.GenerateExclusivityManifestRequest + * @static + * @param {google.cloud.gkehub.v1beta1.GenerateExclusivityManifestRequest} message GenerateExclusivityManifestRequest + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + GenerateExclusivityManifestRequest.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.name = ""; + object.crdManifest = ""; + object.crManifest = ""; } - } - return message; - }; + if (message.name != null && message.hasOwnProperty("name")) + object.name = message.name; + if (message.crdManifest != null && message.hasOwnProperty("crdManifest")) + object.crdManifest = message.crdManifest; + if (message.crManifest != null && message.hasOwnProperty("crManifest")) + object.crManifest = message.crManifest; + return object; + }; - /** - * Decodes a Location message from the specified reader or buffer, length delimited. - * @function decodeDelimited - * @memberof google.protobuf.SourceCodeInfo.Location - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {google.protobuf.SourceCodeInfo.Location} Location - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - Location.decodeDelimited = function decodeDelimited(reader) { - if (!(reader instanceof $Reader)) - reader = new $Reader(reader); - return this.decode(reader, reader.uint32()); - }; + /** + * Converts this GenerateExclusivityManifestRequest to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.v1beta1.GenerateExclusivityManifestRequest + * @instance + * @returns {Object.} JSON object + */ + GenerateExclusivityManifestRequest.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; - /** - * Verifies a Location message. - * @function verify - * @memberof google.protobuf.SourceCodeInfo.Location - * @static - * @param {Object.} message Plain object to verify - * @returns {string|null} `null` if valid, otherwise the reason why it is not - */ - Location.verify = function verify(message) { - if (typeof message !== "object" || message === null) - return "object expected"; - if (message.path != null && message.hasOwnProperty("path")) { - if (!Array.isArray(message.path)) - return "path: array expected"; - for (var i = 0; i < message.path.length; ++i) - if (!$util.isInteger(message.path[i])) - return "path: integer[] expected"; - } - if (message.span != null && message.hasOwnProperty("span")) { - if (!Array.isArray(message.span)) - return "span: array expected"; - for (var i = 0; i < message.span.length; ++i) - if (!$util.isInteger(message.span[i])) - return "span: integer[] expected"; - } - if (message.leadingComments != null && message.hasOwnProperty("leadingComments")) - if (!$util.isString(message.leadingComments)) - return "leadingComments: string expected"; - if (message.trailingComments != null && message.hasOwnProperty("trailingComments")) - if (!$util.isString(message.trailingComments)) - return "trailingComments: string expected"; - if (message.leadingDetachedComments != null && message.hasOwnProperty("leadingDetachedComments")) { - if (!Array.isArray(message.leadingDetachedComments)) - return "leadingDetachedComments: array expected"; - for (var i = 0; i < message.leadingDetachedComments.length; ++i) - if (!$util.isString(message.leadingDetachedComments[i])) - return "leadingDetachedComments: string[] expected"; - } - return null; - }; + return GenerateExclusivityManifestRequest; + })(); - /** - * Creates a Location message from a plain object. Also converts values to their respective internal types. - * @function fromObject - * @memberof google.protobuf.SourceCodeInfo.Location - * @static - * @param {Object.} object Plain object - * @returns {google.protobuf.SourceCodeInfo.Location} Location - */ - Location.fromObject = function fromObject(object) { - if (object instanceof $root.google.protobuf.SourceCodeInfo.Location) - return object; - var message = new $root.google.protobuf.SourceCodeInfo.Location(); - if (object.path) { - if (!Array.isArray(object.path)) - throw TypeError(".google.protobuf.SourceCodeInfo.Location.path: array expected"); - message.path = []; - for (var i = 0; i < object.path.length; ++i) - message.path[i] = object.path[i] | 0; - } - if (object.span) { - if (!Array.isArray(object.span)) - throw TypeError(".google.protobuf.SourceCodeInfo.Location.span: array expected"); - message.span = []; - for (var i = 0; i < object.span.length; ++i) - message.span[i] = object.span[i] | 0; - } - if (object.leadingComments != null) - message.leadingComments = String(object.leadingComments); - if (object.trailingComments != null) - message.trailingComments = String(object.trailingComments); - if (object.leadingDetachedComments) { - if (!Array.isArray(object.leadingDetachedComments)) - throw TypeError(".google.protobuf.SourceCodeInfo.Location.leadingDetachedComments: array expected"); - message.leadingDetachedComments = []; - for (var i = 0; i < object.leadingDetachedComments.length; ++i) - message.leadingDetachedComments[i] = String(object.leadingDetachedComments[i]); - } - return message; - }; + v1beta1.GenerateExclusivityManifestResponse = (function() { - /** - * Creates a plain object from a Location message. Also converts values to other types if specified. - * @function toObject - * @memberof google.protobuf.SourceCodeInfo.Location - * @static - * @param {google.protobuf.SourceCodeInfo.Location} message Location - * @param {$protobuf.IConversionOptions} [options] Conversion options - * @returns {Object.} Plain object - */ - Location.toObject = function toObject(message, options) { - if (!options) - options = {}; - var object = {}; - if (options.arrays || options.defaults) { - object.path = []; - object.span = []; - object.leadingDetachedComments = []; - } - if (options.defaults) { - object.leadingComments = ""; - object.trailingComments = ""; - } - if (message.path && message.path.length) { - object.path = []; - for (var j = 0; j < message.path.length; ++j) - object.path[j] = message.path[j]; - } - if (message.span && message.span.length) { - object.span = []; - for (var j = 0; j < message.span.length; ++j) - object.span[j] = message.span[j]; - } - if (message.leadingComments != null && message.hasOwnProperty("leadingComments")) - object.leadingComments = message.leadingComments; - if (message.trailingComments != null && message.hasOwnProperty("trailingComments")) - object.trailingComments = message.trailingComments; - if (message.leadingDetachedComments && message.leadingDetachedComments.length) { - object.leadingDetachedComments = []; - for (var j = 0; j < message.leadingDetachedComments.length; ++j) - object.leadingDetachedComments[j] = message.leadingDetachedComments[j]; - } - return object; - }; + /** + * Properties of a GenerateExclusivityManifestResponse. + * @memberof google.cloud.gkehub.v1beta1 + * @interface IGenerateExclusivityManifestResponse + * @property {string|null} [crdManifest] GenerateExclusivityManifestResponse crdManifest + * @property {string|null} [crManifest] GenerateExclusivityManifestResponse crManifest + */ - /** - * Converts this Location to JSON. - * @function toJSON - * @memberof google.protobuf.SourceCodeInfo.Location - * @instance - * @returns {Object.} JSON object - */ - Location.prototype.toJSON = function toJSON() { - return this.constructor.toObject(this, $protobuf.util.toJSONOptions); - }; + /** + * Constructs a new GenerateExclusivityManifestResponse. + * @memberof google.cloud.gkehub.v1beta1 + * @classdesc Represents a GenerateExclusivityManifestResponse. + * @implements IGenerateExclusivityManifestResponse + * @constructor + * @param {google.cloud.gkehub.v1beta1.IGenerateExclusivityManifestResponse=} [properties] Properties to set + */ + function GenerateExclusivityManifestResponse(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]]; + } - return Location; - })(); + /** + * GenerateExclusivityManifestResponse crdManifest. + * @member {string} crdManifest + * @memberof google.cloud.gkehub.v1beta1.GenerateExclusivityManifestResponse + * @instance + */ + GenerateExclusivityManifestResponse.prototype.crdManifest = ""; - return SourceCodeInfo; - })(); + /** + * GenerateExclusivityManifestResponse crManifest. + * @member {string} crManifest + * @memberof google.cloud.gkehub.v1beta1.GenerateExclusivityManifestResponse + * @instance + */ + GenerateExclusivityManifestResponse.prototype.crManifest = ""; - protobuf.GeneratedCodeInfo = (function() { + /** + * Creates a new GenerateExclusivityManifestResponse instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.v1beta1.GenerateExclusivityManifestResponse + * @static + * @param {google.cloud.gkehub.v1beta1.IGenerateExclusivityManifestResponse=} [properties] Properties to set + * @returns {google.cloud.gkehub.v1beta1.GenerateExclusivityManifestResponse} GenerateExclusivityManifestResponse instance + */ + GenerateExclusivityManifestResponse.create = function create(properties) { + return new GenerateExclusivityManifestResponse(properties); + }; - /** - * Properties of a GeneratedCodeInfo. - * @memberof google.protobuf - * @interface IGeneratedCodeInfo - * @property {Array.|null} [annotation] GeneratedCodeInfo annotation - */ + /** + * Encodes the specified GenerateExclusivityManifestResponse message. Does not implicitly {@link google.cloud.gkehub.v1beta1.GenerateExclusivityManifestResponse.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.v1beta1.GenerateExclusivityManifestResponse + * @static + * @param {google.cloud.gkehub.v1beta1.IGenerateExclusivityManifestResponse} message GenerateExclusivityManifestResponse message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + GenerateExclusivityManifestResponse.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.crdManifest != null && Object.hasOwnProperty.call(message, "crdManifest")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.crdManifest); + if (message.crManifest != null && Object.hasOwnProperty.call(message, "crManifest")) + writer.uint32(/* id 2, wireType 2 =*/18).string(message.crManifest); + return writer; + }; - /** - * Constructs a new GeneratedCodeInfo. - * @memberof google.protobuf - * @classdesc Represents a GeneratedCodeInfo. - * @implements IGeneratedCodeInfo - * @constructor - * @param {google.protobuf.IGeneratedCodeInfo=} [properties] Properties to set - */ - function GeneratedCodeInfo(properties) { - this.annotation = []; - 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]]; - } + /** + * Encodes the specified GenerateExclusivityManifestResponse message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta1.GenerateExclusivityManifestResponse.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.v1beta1.GenerateExclusivityManifestResponse + * @static + * @param {google.cloud.gkehub.v1beta1.IGenerateExclusivityManifestResponse} message GenerateExclusivityManifestResponse message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + GenerateExclusivityManifestResponse.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; - /** - * GeneratedCodeInfo annotation. - * @member {Array.} annotation - * @memberof google.protobuf.GeneratedCodeInfo - * @instance - */ - GeneratedCodeInfo.prototype.annotation = $util.emptyArray; + /** + * Decodes a GenerateExclusivityManifestResponse message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.v1beta1.GenerateExclusivityManifestResponse + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.v1beta1.GenerateExclusivityManifestResponse} GenerateExclusivityManifestResponse + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + GenerateExclusivityManifestResponse.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.v1beta1.GenerateExclusivityManifestResponse(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.crdManifest = reader.string(); + break; + case 2: + message.crManifest = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; - /** - * Creates a new GeneratedCodeInfo instance using the specified properties. - * @function create - * @memberof google.protobuf.GeneratedCodeInfo - * @static - * @param {google.protobuf.IGeneratedCodeInfo=} [properties] Properties to set - * @returns {google.protobuf.GeneratedCodeInfo} GeneratedCodeInfo instance - */ - GeneratedCodeInfo.create = function create(properties) { - return new GeneratedCodeInfo(properties); - }; + /** + * Decodes a GenerateExclusivityManifestResponse message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.v1beta1.GenerateExclusivityManifestResponse + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.v1beta1.GenerateExclusivityManifestResponse} GenerateExclusivityManifestResponse + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + GenerateExclusivityManifestResponse.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; - /** - * Encodes the specified GeneratedCodeInfo message. Does not implicitly {@link google.protobuf.GeneratedCodeInfo.verify|verify} messages. - * @function encode - * @memberof google.protobuf.GeneratedCodeInfo - * @static - * @param {google.protobuf.IGeneratedCodeInfo} message GeneratedCodeInfo message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - GeneratedCodeInfo.encode = function encode(message, writer) { - if (!writer) - writer = $Writer.create(); - if (message.annotation != null && message.annotation.length) - for (var i = 0; i < message.annotation.length; ++i) - $root.google.protobuf.GeneratedCodeInfo.Annotation.encode(message.annotation[i], writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim(); - return writer; - }; + /** + * Verifies a GenerateExclusivityManifestResponse message. + * @function verify + * @memberof google.cloud.gkehub.v1beta1.GenerateExclusivityManifestResponse + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + GenerateExclusivityManifestResponse.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.crdManifest != null && message.hasOwnProperty("crdManifest")) + if (!$util.isString(message.crdManifest)) + return "crdManifest: string expected"; + if (message.crManifest != null && message.hasOwnProperty("crManifest")) + if (!$util.isString(message.crManifest)) + return "crManifest: string expected"; + return null; + }; - /** - * Encodes the specified GeneratedCodeInfo message, length delimited. Does not implicitly {@link google.protobuf.GeneratedCodeInfo.verify|verify} messages. - * @function encodeDelimited - * @memberof google.protobuf.GeneratedCodeInfo - * @static - * @param {google.protobuf.IGeneratedCodeInfo} message GeneratedCodeInfo message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - GeneratedCodeInfo.encodeDelimited = function encodeDelimited(message, writer) { - return this.encode(message, writer).ldelim(); - }; + /** + * Creates a GenerateExclusivityManifestResponse message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.v1beta1.GenerateExclusivityManifestResponse + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.v1beta1.GenerateExclusivityManifestResponse} GenerateExclusivityManifestResponse + */ + GenerateExclusivityManifestResponse.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.v1beta1.GenerateExclusivityManifestResponse) + return object; + var message = new $root.google.cloud.gkehub.v1beta1.GenerateExclusivityManifestResponse(); + if (object.crdManifest != null) + message.crdManifest = String(object.crdManifest); + if (object.crManifest != null) + message.crManifest = String(object.crManifest); + return message; + }; - /** - * Decodes a GeneratedCodeInfo message from the specified reader or buffer. - * @function decode - * @memberof google.protobuf.GeneratedCodeInfo - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @param {number} [length] Message length if known beforehand - * @returns {google.protobuf.GeneratedCodeInfo} GeneratedCodeInfo - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - GeneratedCodeInfo.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.protobuf.GeneratedCodeInfo(); - while (reader.pos < end) { - var tag = reader.uint32(); - switch (tag >>> 3) { - case 1: - if (!(message.annotation && message.annotation.length)) - message.annotation = []; - message.annotation.push($root.google.protobuf.GeneratedCodeInfo.Annotation.decode(reader, reader.uint32())); - break; - default: - reader.skipType(tag & 7); - break; - } - } - return message; - }; + /** + * Creates a plain object from a GenerateExclusivityManifestResponse message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.v1beta1.GenerateExclusivityManifestResponse + * @static + * @param {google.cloud.gkehub.v1beta1.GenerateExclusivityManifestResponse} message GenerateExclusivityManifestResponse + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + GenerateExclusivityManifestResponse.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.crdManifest = ""; + object.crManifest = ""; + } + if (message.crdManifest != null && message.hasOwnProperty("crdManifest")) + object.crdManifest = message.crdManifest; + if (message.crManifest != null && message.hasOwnProperty("crManifest")) + object.crManifest = message.crManifest; + return object; + }; - /** - * Decodes a GeneratedCodeInfo message from the specified reader or buffer, length delimited. - * @function decodeDelimited - * @memberof google.protobuf.GeneratedCodeInfo - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {google.protobuf.GeneratedCodeInfo} GeneratedCodeInfo - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - GeneratedCodeInfo.decodeDelimited = function decodeDelimited(reader) { - if (!(reader instanceof $Reader)) - reader = new $Reader(reader); - return this.decode(reader, reader.uint32()); - }; + /** + * Converts this GenerateExclusivityManifestResponse to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.v1beta1.GenerateExclusivityManifestResponse + * @instance + * @returns {Object.} JSON object + */ + GenerateExclusivityManifestResponse.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; - /** - * Verifies a GeneratedCodeInfo message. - * @function verify - * @memberof google.protobuf.GeneratedCodeInfo - * @static - * @param {Object.} message Plain object to verify - * @returns {string|null} `null` if valid, otherwise the reason why it is not - */ - GeneratedCodeInfo.verify = function verify(message) { - if (typeof message !== "object" || message === null) - return "object expected"; - if (message.annotation != null && message.hasOwnProperty("annotation")) { - if (!Array.isArray(message.annotation)) - return "annotation: array expected"; - for (var i = 0; i < message.annotation.length; ++i) { - var error = $root.google.protobuf.GeneratedCodeInfo.Annotation.verify(message.annotation[i]); - if (error) - return "annotation." + error; - } - } - return null; - }; + return GenerateExclusivityManifestResponse; + })(); - /** - * Creates a GeneratedCodeInfo message from a plain object. Also converts values to their respective internal types. - * @function fromObject - * @memberof google.protobuf.GeneratedCodeInfo - * @static - * @param {Object.} object Plain object - * @returns {google.protobuf.GeneratedCodeInfo} GeneratedCodeInfo - */ - GeneratedCodeInfo.fromObject = function fromObject(object) { - if (object instanceof $root.google.protobuf.GeneratedCodeInfo) - return object; - var message = new $root.google.protobuf.GeneratedCodeInfo(); - if (object.annotation) { - if (!Array.isArray(object.annotation)) - throw TypeError(".google.protobuf.GeneratedCodeInfo.annotation: array expected"); - message.annotation = []; - for (var i = 0; i < object.annotation.length; ++i) { - if (typeof object.annotation[i] !== "object") - throw TypeError(".google.protobuf.GeneratedCodeInfo.annotation: object expected"); - message.annotation[i] = $root.google.protobuf.GeneratedCodeInfo.Annotation.fromObject(object.annotation[i]); + v1beta1.OperationMetadata = (function() { + + /** + * Properties of an OperationMetadata. + * @memberof google.cloud.gkehub.v1beta1 + * @interface IOperationMetadata + * @property {google.protobuf.ITimestamp|null} [createTime] OperationMetadata createTime + * @property {google.protobuf.ITimestamp|null} [endTime] OperationMetadata endTime + * @property {string|null} [target] OperationMetadata target + * @property {string|null} [verb] OperationMetadata verb + * @property {string|null} [statusDetail] OperationMetadata statusDetail + * @property {boolean|null} [cancelRequested] OperationMetadata cancelRequested + * @property {string|null} [apiVersion] OperationMetadata apiVersion + */ + + /** + * Constructs a new OperationMetadata. + * @memberof google.cloud.gkehub.v1beta1 + * @classdesc Represents an OperationMetadata. + * @implements IOperationMetadata + * @constructor + * @param {google.cloud.gkehub.v1beta1.IOperationMetadata=} [properties] Properties to set + */ + function OperationMetadata(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]]; } - } - return message; - }; - /** - * Creates a plain object from a GeneratedCodeInfo message. Also converts values to other types if specified. - * @function toObject - * @memberof google.protobuf.GeneratedCodeInfo - * @static - * @param {google.protobuf.GeneratedCodeInfo} message GeneratedCodeInfo - * @param {$protobuf.IConversionOptions} [options] Conversion options - * @returns {Object.} Plain object - */ - GeneratedCodeInfo.toObject = function toObject(message, options) { - if (!options) - options = {}; - var object = {}; - if (options.arrays || options.defaults) - object.annotation = []; - if (message.annotation && message.annotation.length) { - object.annotation = []; - for (var j = 0; j < message.annotation.length; ++j) - object.annotation[j] = $root.google.protobuf.GeneratedCodeInfo.Annotation.toObject(message.annotation[j], options); - } - return object; - }; + /** + * OperationMetadata createTime. + * @member {google.protobuf.ITimestamp|null|undefined} createTime + * @memberof google.cloud.gkehub.v1beta1.OperationMetadata + * @instance + */ + OperationMetadata.prototype.createTime = null; - /** - * Converts this GeneratedCodeInfo to JSON. - * @function toJSON - * @memberof google.protobuf.GeneratedCodeInfo - * @instance - * @returns {Object.} JSON object - */ - GeneratedCodeInfo.prototype.toJSON = function toJSON() { - return this.constructor.toObject(this, $protobuf.util.toJSONOptions); - }; + /** + * OperationMetadata endTime. + * @member {google.protobuf.ITimestamp|null|undefined} endTime + * @memberof google.cloud.gkehub.v1beta1.OperationMetadata + * @instance + */ + OperationMetadata.prototype.endTime = null; - GeneratedCodeInfo.Annotation = (function() { + /** + * OperationMetadata target. + * @member {string} target + * @memberof google.cloud.gkehub.v1beta1.OperationMetadata + * @instance + */ + OperationMetadata.prototype.target = ""; - /** - * Properties of an Annotation. - * @memberof google.protobuf.GeneratedCodeInfo - * @interface IAnnotation - * @property {Array.|null} [path] Annotation path - * @property {string|null} [sourceFile] Annotation sourceFile - * @property {number|null} [begin] Annotation begin - * @property {number|null} [end] Annotation end - */ + /** + * OperationMetadata verb. + * @member {string} verb + * @memberof google.cloud.gkehub.v1beta1.OperationMetadata + * @instance + */ + OperationMetadata.prototype.verb = ""; - /** - * Constructs a new Annotation. - * @memberof google.protobuf.GeneratedCodeInfo - * @classdesc Represents an Annotation. - * @implements IAnnotation - * @constructor - * @param {google.protobuf.GeneratedCodeInfo.IAnnotation=} [properties] Properties to set - */ - function Annotation(properties) { - this.path = []; - 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]]; - } + /** + * OperationMetadata statusDetail. + * @member {string} statusDetail + * @memberof google.cloud.gkehub.v1beta1.OperationMetadata + * @instance + */ + OperationMetadata.prototype.statusDetail = ""; - /** - * Annotation path. - * @member {Array.} path - * @memberof google.protobuf.GeneratedCodeInfo.Annotation - * @instance - */ - Annotation.prototype.path = $util.emptyArray; + /** + * OperationMetadata cancelRequested. + * @member {boolean} cancelRequested + * @memberof google.cloud.gkehub.v1beta1.OperationMetadata + * @instance + */ + OperationMetadata.prototype.cancelRequested = false; - /** - * Annotation sourceFile. - * @member {string} sourceFile - * @memberof google.protobuf.GeneratedCodeInfo.Annotation - * @instance - */ - Annotation.prototype.sourceFile = ""; + /** + * OperationMetadata apiVersion. + * @member {string} apiVersion + * @memberof google.cloud.gkehub.v1beta1.OperationMetadata + * @instance + */ + OperationMetadata.prototype.apiVersion = ""; - /** - * Annotation begin. - * @member {number} begin - * @memberof google.protobuf.GeneratedCodeInfo.Annotation - * @instance - */ - Annotation.prototype.begin = 0; + /** + * Creates a new OperationMetadata instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.v1beta1.OperationMetadata + * @static + * @param {google.cloud.gkehub.v1beta1.IOperationMetadata=} [properties] Properties to set + * @returns {google.cloud.gkehub.v1beta1.OperationMetadata} OperationMetadata instance + */ + OperationMetadata.create = function create(properties) { + return new OperationMetadata(properties); + }; - /** - * Annotation end. - * @member {number} end - * @memberof google.protobuf.GeneratedCodeInfo.Annotation - * @instance - */ - Annotation.prototype.end = 0; + /** + * Encodes the specified OperationMetadata message. Does not implicitly {@link google.cloud.gkehub.v1beta1.OperationMetadata.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.v1beta1.OperationMetadata + * @static + * @param {google.cloud.gkehub.v1beta1.IOperationMetadata} message OperationMetadata message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + OperationMetadata.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.createTime != null && Object.hasOwnProperty.call(message, "createTime")) + $root.google.protobuf.Timestamp.encode(message.createTime, writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim(); + if (message.endTime != null && Object.hasOwnProperty.call(message, "endTime")) + $root.google.protobuf.Timestamp.encode(message.endTime, writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim(); + if (message.target != null && Object.hasOwnProperty.call(message, "target")) + writer.uint32(/* id 3, wireType 2 =*/26).string(message.target); + if (message.verb != null && Object.hasOwnProperty.call(message, "verb")) + writer.uint32(/* id 4, wireType 2 =*/34).string(message.verb); + if (message.statusDetail != null && Object.hasOwnProperty.call(message, "statusDetail")) + writer.uint32(/* id 5, wireType 2 =*/42).string(message.statusDetail); + if (message.cancelRequested != null && Object.hasOwnProperty.call(message, "cancelRequested")) + writer.uint32(/* id 6, wireType 0 =*/48).bool(message.cancelRequested); + if (message.apiVersion != null && Object.hasOwnProperty.call(message, "apiVersion")) + writer.uint32(/* id 7, wireType 2 =*/58).string(message.apiVersion); + return writer; + }; - /** - * Creates a new Annotation instance using the specified properties. - * @function create - * @memberof google.protobuf.GeneratedCodeInfo.Annotation - * @static - * @param {google.protobuf.GeneratedCodeInfo.IAnnotation=} [properties] Properties to set - * @returns {google.protobuf.GeneratedCodeInfo.Annotation} Annotation instance - */ - Annotation.create = function create(properties) { - return new Annotation(properties); - }; + /** + * Encodes the specified OperationMetadata message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta1.OperationMetadata.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.v1beta1.OperationMetadata + * @static + * @param {google.cloud.gkehub.v1beta1.IOperationMetadata} message OperationMetadata message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + OperationMetadata.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; - /** - * Encodes the specified Annotation message. Does not implicitly {@link google.protobuf.GeneratedCodeInfo.Annotation.verify|verify} messages. - * @function encode - * @memberof google.protobuf.GeneratedCodeInfo.Annotation - * @static - * @param {google.protobuf.GeneratedCodeInfo.IAnnotation} message Annotation message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - Annotation.encode = function encode(message, writer) { - if (!writer) - writer = $Writer.create(); - if (message.path != null && message.path.length) { - writer.uint32(/* id 1, wireType 2 =*/10).fork(); - for (var i = 0; i < message.path.length; ++i) - writer.int32(message.path[i]); - writer.ldelim(); - } - if (message.sourceFile != null && Object.hasOwnProperty.call(message, "sourceFile")) - writer.uint32(/* id 2, wireType 2 =*/18).string(message.sourceFile); - if (message.begin != null && Object.hasOwnProperty.call(message, "begin")) - writer.uint32(/* id 3, wireType 0 =*/24).int32(message.begin); - if (message.end != null && Object.hasOwnProperty.call(message, "end")) - writer.uint32(/* id 4, wireType 0 =*/32).int32(message.end); - return writer; - }; + /** + * Decodes an OperationMetadata message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.v1beta1.OperationMetadata + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.v1beta1.OperationMetadata} OperationMetadata + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + OperationMetadata.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.v1beta1.OperationMetadata(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.createTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + break; + case 2: + message.endTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + break; + case 3: + message.target = reader.string(); + break; + case 4: + message.verb = reader.string(); + break; + case 5: + message.statusDetail = reader.string(); + break; + case 6: + message.cancelRequested = reader.bool(); + break; + case 7: + message.apiVersion = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; - /** - * Encodes the specified Annotation message, length delimited. Does not implicitly {@link google.protobuf.GeneratedCodeInfo.Annotation.verify|verify} messages. - * @function encodeDelimited - * @memberof google.protobuf.GeneratedCodeInfo.Annotation - * @static - * @param {google.protobuf.GeneratedCodeInfo.IAnnotation} message Annotation message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - Annotation.encodeDelimited = function encodeDelimited(message, writer) { - return this.encode(message, writer).ldelim(); - }; + /** + * Decodes an OperationMetadata message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.v1beta1.OperationMetadata + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.v1beta1.OperationMetadata} OperationMetadata + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + OperationMetadata.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; - /** - * Decodes an Annotation message from the specified reader or buffer. - * @function decode - * @memberof google.protobuf.GeneratedCodeInfo.Annotation - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @param {number} [length] Message length if known beforehand - * @returns {google.protobuf.GeneratedCodeInfo.Annotation} Annotation - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - Annotation.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.protobuf.GeneratedCodeInfo.Annotation(); - while (reader.pos < end) { - var tag = reader.uint32(); - switch (tag >>> 3) { - case 1: - if (!(message.path && message.path.length)) - message.path = []; - if ((tag & 7) === 2) { - var end2 = reader.uint32() + reader.pos; - while (reader.pos < end2) - message.path.push(reader.int32()); - } else - message.path.push(reader.int32()); - break; - case 2: - message.sourceFile = reader.string(); - break; - case 3: - message.begin = reader.int32(); - break; - case 4: - message.end = reader.int32(); - break; - default: - reader.skipType(tag & 7); - break; + /** + * Verifies an OperationMetadata message. + * @function verify + * @memberof google.cloud.gkehub.v1beta1.OperationMetadata + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + OperationMetadata.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.createTime != null && message.hasOwnProperty("createTime")) { + var error = $root.google.protobuf.Timestamp.verify(message.createTime); + if (error) + return "createTime." + error; } - } - return message; - }; - - /** - * Decodes an Annotation message from the specified reader or buffer, length delimited. - * @function decodeDelimited - * @memberof google.protobuf.GeneratedCodeInfo.Annotation - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {google.protobuf.GeneratedCodeInfo.Annotation} Annotation - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - Annotation.decodeDelimited = function decodeDelimited(reader) { - if (!(reader instanceof $Reader)) - reader = new $Reader(reader); - return this.decode(reader, reader.uint32()); - }; + if (message.endTime != null && message.hasOwnProperty("endTime")) { + var error = $root.google.protobuf.Timestamp.verify(message.endTime); + if (error) + return "endTime." + error; + } + if (message.target != null && message.hasOwnProperty("target")) + if (!$util.isString(message.target)) + return "target: string expected"; + if (message.verb != null && message.hasOwnProperty("verb")) + if (!$util.isString(message.verb)) + return "verb: string expected"; + if (message.statusDetail != null && message.hasOwnProperty("statusDetail")) + if (!$util.isString(message.statusDetail)) + return "statusDetail: string expected"; + if (message.cancelRequested != null && message.hasOwnProperty("cancelRequested")) + if (typeof message.cancelRequested !== "boolean") + return "cancelRequested: boolean expected"; + if (message.apiVersion != null && message.hasOwnProperty("apiVersion")) + if (!$util.isString(message.apiVersion)) + return "apiVersion: string expected"; + return null; + }; - /** - * Verifies an Annotation message. - * @function verify - * @memberof google.protobuf.GeneratedCodeInfo.Annotation - * @static - * @param {Object.} message Plain object to verify - * @returns {string|null} `null` if valid, otherwise the reason why it is not - */ - Annotation.verify = function verify(message) { - if (typeof message !== "object" || message === null) - return "object expected"; - if (message.path != null && message.hasOwnProperty("path")) { - if (!Array.isArray(message.path)) - return "path: array expected"; - for (var i = 0; i < message.path.length; ++i) - if (!$util.isInteger(message.path[i])) - return "path: integer[] expected"; - } - if (message.sourceFile != null && message.hasOwnProperty("sourceFile")) - if (!$util.isString(message.sourceFile)) - return "sourceFile: string expected"; - if (message.begin != null && message.hasOwnProperty("begin")) - if (!$util.isInteger(message.begin)) - return "begin: integer expected"; - if (message.end != null && message.hasOwnProperty("end")) - if (!$util.isInteger(message.end)) - return "end: integer expected"; - return null; - }; + /** + * Creates an OperationMetadata message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.v1beta1.OperationMetadata + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.v1beta1.OperationMetadata} OperationMetadata + */ + OperationMetadata.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.v1beta1.OperationMetadata) + return object; + var message = new $root.google.cloud.gkehub.v1beta1.OperationMetadata(); + if (object.createTime != null) { + if (typeof object.createTime !== "object") + throw TypeError(".google.cloud.gkehub.v1beta1.OperationMetadata.createTime: object expected"); + message.createTime = $root.google.protobuf.Timestamp.fromObject(object.createTime); + } + if (object.endTime != null) { + if (typeof object.endTime !== "object") + throw TypeError(".google.cloud.gkehub.v1beta1.OperationMetadata.endTime: object expected"); + message.endTime = $root.google.protobuf.Timestamp.fromObject(object.endTime); + } + if (object.target != null) + message.target = String(object.target); + if (object.verb != null) + message.verb = String(object.verb); + if (object.statusDetail != null) + message.statusDetail = String(object.statusDetail); + if (object.cancelRequested != null) + message.cancelRequested = Boolean(object.cancelRequested); + if (object.apiVersion != null) + message.apiVersion = String(object.apiVersion); + return message; + }; - /** - * Creates an Annotation message from a plain object. Also converts values to their respective internal types. - * @function fromObject - * @memberof google.protobuf.GeneratedCodeInfo.Annotation - * @static - * @param {Object.} object Plain object - * @returns {google.protobuf.GeneratedCodeInfo.Annotation} Annotation - */ - Annotation.fromObject = function fromObject(object) { - if (object instanceof $root.google.protobuf.GeneratedCodeInfo.Annotation) + /** + * Creates a plain object from an OperationMetadata message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.v1beta1.OperationMetadata + * @static + * @param {google.cloud.gkehub.v1beta1.OperationMetadata} message OperationMetadata + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + OperationMetadata.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.createTime = null; + object.endTime = null; + object.target = ""; + object.verb = ""; + object.statusDetail = ""; + object.cancelRequested = false; + object.apiVersion = ""; + } + if (message.createTime != null && message.hasOwnProperty("createTime")) + object.createTime = $root.google.protobuf.Timestamp.toObject(message.createTime, options); + if (message.endTime != null && message.hasOwnProperty("endTime")) + object.endTime = $root.google.protobuf.Timestamp.toObject(message.endTime, options); + if (message.target != null && message.hasOwnProperty("target")) + object.target = message.target; + if (message.verb != null && message.hasOwnProperty("verb")) + object.verb = message.verb; + if (message.statusDetail != null && message.hasOwnProperty("statusDetail")) + object.statusDetail = message.statusDetail; + if (message.cancelRequested != null && message.hasOwnProperty("cancelRequested")) + object.cancelRequested = message.cancelRequested; + if (message.apiVersion != null && message.hasOwnProperty("apiVersion")) + object.apiVersion = message.apiVersion; return object; - var message = new $root.google.protobuf.GeneratedCodeInfo.Annotation(); - if (object.path) { - if (!Array.isArray(object.path)) - throw TypeError(".google.protobuf.GeneratedCodeInfo.Annotation.path: array expected"); - message.path = []; - for (var i = 0; i < object.path.length; ++i) - message.path[i] = object.path[i] | 0; - } - if (object.sourceFile != null) - message.sourceFile = String(object.sourceFile); - if (object.begin != null) - message.begin = object.begin | 0; - if (object.end != null) - message.end = object.end | 0; - return message; - }; + }; - /** - * Creates a plain object from an Annotation message. Also converts values to other types if specified. - * @function toObject - * @memberof google.protobuf.GeneratedCodeInfo.Annotation - * @static - * @param {google.protobuf.GeneratedCodeInfo.Annotation} message Annotation - * @param {$protobuf.IConversionOptions} [options] Conversion options - * @returns {Object.} Plain object - */ - Annotation.toObject = function toObject(message, options) { - if (!options) - options = {}; - var object = {}; - if (options.arrays || options.defaults) - object.path = []; - if (options.defaults) { - object.sourceFile = ""; - object.begin = 0; - object.end = 0; - } - if (message.path && message.path.length) { - object.path = []; - for (var j = 0; j < message.path.length; ++j) - object.path[j] = message.path[j]; - } - if (message.sourceFile != null && message.hasOwnProperty("sourceFile")) - object.sourceFile = message.sourceFile; - if (message.begin != null && message.hasOwnProperty("begin")) - object.begin = message.begin; - if (message.end != null && message.hasOwnProperty("end")) - object.end = message.end; - return object; - }; + /** + * Converts this OperationMetadata to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.v1beta1.OperationMetadata + * @instance + * @returns {Object.} JSON object + */ + OperationMetadata.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; - /** - * Converts this Annotation to JSON. - * @function toJSON - * @memberof google.protobuf.GeneratedCodeInfo.Annotation - * @instance - * @returns {Object.} JSON object - */ - Annotation.prototype.toJSON = function toJSON() { - return this.constructor.toObject(this, $protobuf.util.toJSONOptions); - }; + return OperationMetadata; + })(); - return Annotation; + return v1beta1; })(); - return GeneratedCodeInfo; + return gkehub; })(); - protobuf.Any = (function() { + return cloud; + })(); + + google.api = (function() { + + /** + * Namespace api. + * @memberof google + * @namespace + */ + var api = {}; + + api.Http = (function() { /** - * Properties of an Any. - * @memberof google.protobuf - * @interface IAny - * @property {string|null} [type_url] Any type_url - * @property {Uint8Array|null} [value] Any value + * Properties of a Http. + * @memberof google.api + * @interface IHttp + * @property {Array.|null} [rules] Http rules + * @property {boolean|null} [fullyDecodeReservedExpansion] Http fullyDecodeReservedExpansion */ /** - * Constructs a new Any. - * @memberof google.protobuf - * @classdesc Represents an Any. - * @implements IAny + * Constructs a new Http. + * @memberof google.api + * @classdesc Represents a Http. + * @implements IHttp * @constructor - * @param {google.protobuf.IAny=} [properties] Properties to set + * @param {google.api.IHttp=} [properties] Properties to set */ - function Any(properties) { + function Http(properties) { + this.rules = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) if (properties[keys[i]] != null) @@ -17064,88 +60767,91 @@ } /** - * Any type_url. - * @member {string} type_url - * @memberof google.protobuf.Any + * Http rules. + * @member {Array.} rules + * @memberof google.api.Http * @instance */ - Any.prototype.type_url = ""; + Http.prototype.rules = $util.emptyArray; /** - * Any value. - * @member {Uint8Array} value - * @memberof google.protobuf.Any + * Http fullyDecodeReservedExpansion. + * @member {boolean} fullyDecodeReservedExpansion + * @memberof google.api.Http * @instance */ - Any.prototype.value = $util.newBuffer([]); + Http.prototype.fullyDecodeReservedExpansion = false; /** - * Creates a new Any instance using the specified properties. + * Creates a new Http instance using the specified properties. * @function create - * @memberof google.protobuf.Any + * @memberof google.api.Http * @static - * @param {google.protobuf.IAny=} [properties] Properties to set - * @returns {google.protobuf.Any} Any instance + * @param {google.api.IHttp=} [properties] Properties to set + * @returns {google.api.Http} Http instance */ - Any.create = function create(properties) { - return new Any(properties); + Http.create = function create(properties) { + return new Http(properties); }; /** - * Encodes the specified Any message. Does not implicitly {@link google.protobuf.Any.verify|verify} messages. + * Encodes the specified Http message. Does not implicitly {@link google.api.Http.verify|verify} messages. * @function encode - * @memberof google.protobuf.Any + * @memberof google.api.Http * @static - * @param {google.protobuf.IAny} message Any message or plain object to encode + * @param {google.api.IHttp} message Http message or plain object to encode * @param {$protobuf.Writer} [writer] Writer to encode to * @returns {$protobuf.Writer} Writer */ - Any.encode = function encode(message, writer) { + Http.encode = function encode(message, writer) { if (!writer) writer = $Writer.create(); - if (message.type_url != null && Object.hasOwnProperty.call(message, "type_url")) - writer.uint32(/* id 1, wireType 2 =*/10).string(message.type_url); - if (message.value != null && Object.hasOwnProperty.call(message, "value")) - writer.uint32(/* id 2, wireType 2 =*/18).bytes(message.value); + if (message.rules != null && message.rules.length) + for (var i = 0; i < message.rules.length; ++i) + $root.google.api.HttpRule.encode(message.rules[i], writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim(); + if (message.fullyDecodeReservedExpansion != null && Object.hasOwnProperty.call(message, "fullyDecodeReservedExpansion")) + writer.uint32(/* id 2, wireType 0 =*/16).bool(message.fullyDecodeReservedExpansion); return writer; }; /** - * Encodes the specified Any message, length delimited. Does not implicitly {@link google.protobuf.Any.verify|verify} messages. + * Encodes the specified Http message, length delimited. Does not implicitly {@link google.api.Http.verify|verify} messages. * @function encodeDelimited - * @memberof google.protobuf.Any + * @memberof google.api.Http * @static - * @param {google.protobuf.IAny} message Any message or plain object to encode + * @param {google.api.IHttp} message Http message or plain object to encode * @param {$protobuf.Writer} [writer] Writer to encode to * @returns {$protobuf.Writer} Writer */ - Any.encodeDelimited = function encodeDelimited(message, writer) { + Http.encodeDelimited = function encodeDelimited(message, writer) { return this.encode(message, writer).ldelim(); }; /** - * Decodes an Any message from the specified reader or buffer. + * Decodes a Http message from the specified reader or buffer. * @function decode - * @memberof google.protobuf.Any + * @memberof google.api.Http * @static * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from * @param {number} [length] Message length if known beforehand - * @returns {google.protobuf.Any} Any + * @returns {google.api.Http} Http * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Any.decode = function decode(reader, length) { + Http.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.protobuf.Any(); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.api.Http(); while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { case 1: - message.type_url = reader.string(); + if (!(message.rules && message.rules.length)) + message.rules = []; + message.rules.push($root.google.api.HttpRule.decode(reader, reader.uint32())); break; case 2: - message.value = reader.bytes(); + message.fullyDecodeReservedExpansion = reader.bool(); break; default: reader.skipType(tag & 7); @@ -17156,126 +60862,143 @@ }; /** - * Decodes an Any message from the specified reader or buffer, length delimited. + * Decodes a Http message from the specified reader or buffer, length delimited. * @function decodeDelimited - * @memberof google.protobuf.Any + * @memberof google.api.Http * @static * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {google.protobuf.Any} Any + * @returns {google.api.Http} Http * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Any.decodeDelimited = function decodeDelimited(reader) { + Http.decodeDelimited = function decodeDelimited(reader) { if (!(reader instanceof $Reader)) reader = new $Reader(reader); return this.decode(reader, reader.uint32()); }; /** - * Verifies an Any message. + * Verifies a Http message. * @function verify - * @memberof google.protobuf.Any + * @memberof google.api.Http * @static * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Any.verify = function verify(message) { + Http.verify = function verify(message) { if (typeof message !== "object" || message === null) return "object expected"; - if (message.type_url != null && message.hasOwnProperty("type_url")) - if (!$util.isString(message.type_url)) - return "type_url: string expected"; - if (message.value != null && message.hasOwnProperty("value")) - if (!(message.value && typeof message.value.length === "number" || $util.isString(message.value))) - return "value: buffer expected"; + if (message.rules != null && message.hasOwnProperty("rules")) { + if (!Array.isArray(message.rules)) + return "rules: array expected"; + for (var i = 0; i < message.rules.length; ++i) { + var error = $root.google.api.HttpRule.verify(message.rules[i]); + if (error) + return "rules." + error; + } + } + if (message.fullyDecodeReservedExpansion != null && message.hasOwnProperty("fullyDecodeReservedExpansion")) + if (typeof message.fullyDecodeReservedExpansion !== "boolean") + return "fullyDecodeReservedExpansion: boolean expected"; return null; }; /** - * Creates an Any message from a plain object. Also converts values to their respective internal types. + * Creates a Http message from a plain object. Also converts values to their respective internal types. * @function fromObject - * @memberof google.protobuf.Any + * @memberof google.api.Http * @static * @param {Object.} object Plain object - * @returns {google.protobuf.Any} Any + * @returns {google.api.Http} Http */ - Any.fromObject = function fromObject(object) { - if (object instanceof $root.google.protobuf.Any) + Http.fromObject = function fromObject(object) { + if (object instanceof $root.google.api.Http) return object; - var message = new $root.google.protobuf.Any(); - if (object.type_url != null) - message.type_url = String(object.type_url); - if (object.value != null) - if (typeof object.value === "string") - $util.base64.decode(object.value, message.value = $util.newBuffer($util.base64.length(object.value)), 0); - else if (object.value.length) - message.value = object.value; + var message = new $root.google.api.Http(); + if (object.rules) { + if (!Array.isArray(object.rules)) + throw TypeError(".google.api.Http.rules: array expected"); + message.rules = []; + for (var i = 0; i < object.rules.length; ++i) { + if (typeof object.rules[i] !== "object") + throw TypeError(".google.api.Http.rules: object expected"); + message.rules[i] = $root.google.api.HttpRule.fromObject(object.rules[i]); + } + } + if (object.fullyDecodeReservedExpansion != null) + message.fullyDecodeReservedExpansion = Boolean(object.fullyDecodeReservedExpansion); return message; }; /** - * Creates a plain object from an Any message. Also converts values to other types if specified. + * Creates a plain object from a Http message. Also converts values to other types if specified. * @function toObject - * @memberof google.protobuf.Any + * @memberof google.api.Http * @static - * @param {google.protobuf.Any} message Any + * @param {google.api.Http} message Http * @param {$protobuf.IConversionOptions} [options] Conversion options * @returns {Object.} Plain object */ - Any.toObject = function toObject(message, options) { + Http.toObject = function toObject(message, options) { if (!options) options = {}; var object = {}; - if (options.defaults) { - object.type_url = ""; - if (options.bytes === String) - object.value = ""; - else { - object.value = []; - if (options.bytes !== Array) - object.value = $util.newBuffer(object.value); - } + if (options.arrays || options.defaults) + object.rules = []; + if (options.defaults) + object.fullyDecodeReservedExpansion = false; + if (message.rules && message.rules.length) { + object.rules = []; + for (var j = 0; j < message.rules.length; ++j) + object.rules[j] = $root.google.api.HttpRule.toObject(message.rules[j], options); } - if (message.type_url != null && message.hasOwnProperty("type_url")) - object.type_url = message.type_url; - if (message.value != null && message.hasOwnProperty("value")) - object.value = options.bytes === String ? $util.base64.encode(message.value, 0, message.value.length) : options.bytes === Array ? Array.prototype.slice.call(message.value) : message.value; + if (message.fullyDecodeReservedExpansion != null && message.hasOwnProperty("fullyDecodeReservedExpansion")) + object.fullyDecodeReservedExpansion = message.fullyDecodeReservedExpansion; return object; }; /** - * Converts this Any to JSON. + * Converts this Http to JSON. * @function toJSON - * @memberof google.protobuf.Any + * @memberof google.api.Http * @instance * @returns {Object.} JSON object */ - Any.prototype.toJSON = function toJSON() { + Http.prototype.toJSON = function toJSON() { return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; - return Any; + return Http; })(); - protobuf.Duration = (function() { + api.HttpRule = (function() { /** - * Properties of a Duration. - * @memberof google.protobuf - * @interface IDuration - * @property {number|Long|null} [seconds] Duration seconds - * @property {number|null} [nanos] Duration nanos + * Properties of a HttpRule. + * @memberof google.api + * @interface IHttpRule + * @property {string|null} [selector] HttpRule selector + * @property {string|null} [get] HttpRule get + * @property {string|null} [put] HttpRule put + * @property {string|null} [post] HttpRule post + * @property {string|null} ["delete"] HttpRule delete + * @property {string|null} [patch] HttpRule patch + * @property {google.api.ICustomHttpPattern|null} [custom] HttpRule custom + * @property {string|null} [body] HttpRule body + * @property {string|null} [responseBody] HttpRule responseBody + * @property {Array.|null} [additionalBindings] HttpRule additionalBindings */ /** - * Constructs a new Duration. - * @memberof google.protobuf - * @classdesc Represents a Duration. - * @implements IDuration + * Constructs a new HttpRule. + * @memberof google.api + * @classdesc Represents a HttpRule. + * @implements IHttpRule * @constructor - * @param {google.protobuf.IDuration=} [properties] Properties to set + * @param {google.api.IHttpRule=} [properties] Properties to set */ - function Duration(properties) { + function HttpRule(properties) { + this.additionalBindings = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) if (properties[keys[i]] != null) @@ -17283,88 +61006,209 @@ } /** - * Duration seconds. - * @member {number|Long} seconds - * @memberof google.protobuf.Duration + * HttpRule selector. + * @member {string} selector + * @memberof google.api.HttpRule * @instance */ - Duration.prototype.seconds = $util.Long ? $util.Long.fromBits(0,0,false) : 0; + HttpRule.prototype.selector = ""; /** - * Duration nanos. - * @member {number} nanos - * @memberof google.protobuf.Duration + * HttpRule get. + * @member {string|null|undefined} get + * @memberof google.api.HttpRule * @instance */ - Duration.prototype.nanos = 0; + HttpRule.prototype.get = null; /** - * Creates a new Duration instance using the specified properties. + * HttpRule put. + * @member {string|null|undefined} put + * @memberof google.api.HttpRule + * @instance + */ + HttpRule.prototype.put = null; + + /** + * HttpRule post. + * @member {string|null|undefined} post + * @memberof google.api.HttpRule + * @instance + */ + HttpRule.prototype.post = null; + + /** + * HttpRule delete. + * @member {string|null|undefined} delete + * @memberof google.api.HttpRule + * @instance + */ + HttpRule.prototype["delete"] = null; + + /** + * HttpRule patch. + * @member {string|null|undefined} patch + * @memberof google.api.HttpRule + * @instance + */ + HttpRule.prototype.patch = null; + + /** + * HttpRule custom. + * @member {google.api.ICustomHttpPattern|null|undefined} custom + * @memberof google.api.HttpRule + * @instance + */ + HttpRule.prototype.custom = null; + + /** + * HttpRule body. + * @member {string} body + * @memberof google.api.HttpRule + * @instance + */ + HttpRule.prototype.body = ""; + + /** + * HttpRule responseBody. + * @member {string} responseBody + * @memberof google.api.HttpRule + * @instance + */ + HttpRule.prototype.responseBody = ""; + + /** + * HttpRule additionalBindings. + * @member {Array.} additionalBindings + * @memberof google.api.HttpRule + * @instance + */ + HttpRule.prototype.additionalBindings = $util.emptyArray; + + // OneOf field names bound to virtual getters and setters + var $oneOfFields; + + /** + * HttpRule pattern. + * @member {"get"|"put"|"post"|"delete"|"patch"|"custom"|undefined} pattern + * @memberof google.api.HttpRule + * @instance + */ + Object.defineProperty(HttpRule.prototype, "pattern", { + get: $util.oneOfGetter($oneOfFields = ["get", "put", "post", "delete", "patch", "custom"]), + set: $util.oneOfSetter($oneOfFields) + }); + + /** + * Creates a new HttpRule instance using the specified properties. * @function create - * @memberof google.protobuf.Duration + * @memberof google.api.HttpRule * @static - * @param {google.protobuf.IDuration=} [properties] Properties to set - * @returns {google.protobuf.Duration} Duration instance + * @param {google.api.IHttpRule=} [properties] Properties to set + * @returns {google.api.HttpRule} HttpRule instance */ - Duration.create = function create(properties) { - return new Duration(properties); + HttpRule.create = function create(properties) { + return new HttpRule(properties); }; /** - * Encodes the specified Duration message. Does not implicitly {@link google.protobuf.Duration.verify|verify} messages. + * Encodes the specified HttpRule message. Does not implicitly {@link google.api.HttpRule.verify|verify} messages. * @function encode - * @memberof google.protobuf.Duration + * @memberof google.api.HttpRule * @static - * @param {google.protobuf.IDuration} message Duration message or plain object to encode + * @param {google.api.IHttpRule} message HttpRule message or plain object to encode * @param {$protobuf.Writer} [writer] Writer to encode to * @returns {$protobuf.Writer} Writer */ - Duration.encode = function encode(message, writer) { + HttpRule.encode = function encode(message, writer) { if (!writer) writer = $Writer.create(); - if (message.seconds != null && Object.hasOwnProperty.call(message, "seconds")) - writer.uint32(/* id 1, wireType 0 =*/8).int64(message.seconds); - if (message.nanos != null && Object.hasOwnProperty.call(message, "nanos")) - writer.uint32(/* id 2, wireType 0 =*/16).int32(message.nanos); + if (message.selector != null && Object.hasOwnProperty.call(message, "selector")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.selector); + if (message.get != null && Object.hasOwnProperty.call(message, "get")) + writer.uint32(/* id 2, wireType 2 =*/18).string(message.get); + if (message.put != null && Object.hasOwnProperty.call(message, "put")) + writer.uint32(/* id 3, wireType 2 =*/26).string(message.put); + if (message.post != null && Object.hasOwnProperty.call(message, "post")) + writer.uint32(/* id 4, wireType 2 =*/34).string(message.post); + if (message["delete"] != null && Object.hasOwnProperty.call(message, "delete")) + writer.uint32(/* id 5, wireType 2 =*/42).string(message["delete"]); + if (message.patch != null && Object.hasOwnProperty.call(message, "patch")) + writer.uint32(/* id 6, wireType 2 =*/50).string(message.patch); + if (message.body != null && Object.hasOwnProperty.call(message, "body")) + writer.uint32(/* id 7, wireType 2 =*/58).string(message.body); + if (message.custom != null && Object.hasOwnProperty.call(message, "custom")) + $root.google.api.CustomHttpPattern.encode(message.custom, writer.uint32(/* id 8, wireType 2 =*/66).fork()).ldelim(); + if (message.additionalBindings != null && message.additionalBindings.length) + for (var i = 0; i < message.additionalBindings.length; ++i) + $root.google.api.HttpRule.encode(message.additionalBindings[i], writer.uint32(/* id 11, wireType 2 =*/90).fork()).ldelim(); + if (message.responseBody != null && Object.hasOwnProperty.call(message, "responseBody")) + writer.uint32(/* id 12, wireType 2 =*/98).string(message.responseBody); return writer; }; /** - * Encodes the specified Duration message, length delimited. Does not implicitly {@link google.protobuf.Duration.verify|verify} messages. + * Encodes the specified HttpRule message, length delimited. Does not implicitly {@link google.api.HttpRule.verify|verify} messages. * @function encodeDelimited - * @memberof google.protobuf.Duration + * @memberof google.api.HttpRule * @static - * @param {google.protobuf.IDuration} message Duration message or plain object to encode + * @param {google.api.IHttpRule} message HttpRule message or plain object to encode * @param {$protobuf.Writer} [writer] Writer to encode to * @returns {$protobuf.Writer} Writer */ - Duration.encodeDelimited = function encodeDelimited(message, writer) { + HttpRule.encodeDelimited = function encodeDelimited(message, writer) { return this.encode(message, writer).ldelim(); }; /** - * Decodes a Duration message from the specified reader or buffer. + * Decodes a HttpRule message from the specified reader or buffer. * @function decode - * @memberof google.protobuf.Duration + * @memberof google.api.HttpRule * @static * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from * @param {number} [length] Message length if known beforehand - * @returns {google.protobuf.Duration} Duration + * @returns {google.api.HttpRule} HttpRule * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Duration.decode = function decode(reader, length) { + HttpRule.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.protobuf.Duration(); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.api.HttpRule(); while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { case 1: - message.seconds = reader.int64(); + message.selector = reader.string(); break; case 2: - message.nanos = reader.int32(); + message.get = reader.string(); + break; + case 3: + message.put = reader.string(); + break; + case 4: + message.post = reader.string(); + break; + case 5: + message["delete"] = reader.string(); + break; + case 6: + message.patch = reader.string(); + break; + case 8: + message.custom = $root.google.api.CustomHttpPattern.decode(reader, reader.uint32()); + break; + case 7: + message.body = reader.string(); + break; + case 12: + message.responseBody = reader.string(); + break; + case 11: + if (!(message.additionalBindings && message.additionalBindings.length)) + message.additionalBindings = []; + message.additionalBindings.push($root.google.api.HttpRule.decode(reader, reader.uint32())); break; default: reader.skipType(tag & 7); @@ -17375,129 +61219,240 @@ }; /** - * Decodes a Duration message from the specified reader or buffer, length delimited. + * Decodes a HttpRule message from the specified reader or buffer, length delimited. * @function decodeDelimited - * @memberof google.protobuf.Duration + * @memberof google.api.HttpRule * @static * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {google.protobuf.Duration} Duration + * @returns {google.api.HttpRule} HttpRule * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Duration.decodeDelimited = function decodeDelimited(reader) { + HttpRule.decodeDelimited = function decodeDelimited(reader) { if (!(reader instanceof $Reader)) reader = new $Reader(reader); return this.decode(reader, reader.uint32()); }; /** - * Verifies a Duration message. + * Verifies a HttpRule message. * @function verify - * @memberof google.protobuf.Duration + * @memberof google.api.HttpRule * @static * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Duration.verify = function verify(message) { + HttpRule.verify = function verify(message) { if (typeof message !== "object" || message === null) return "object expected"; - if (message.seconds != null && message.hasOwnProperty("seconds")) - if (!$util.isInteger(message.seconds) && !(message.seconds && $util.isInteger(message.seconds.low) && $util.isInteger(message.seconds.high))) - return "seconds: integer|Long expected"; - if (message.nanos != null && message.hasOwnProperty("nanos")) - if (!$util.isInteger(message.nanos)) - return "nanos: integer expected"; + var properties = {}; + if (message.selector != null && message.hasOwnProperty("selector")) + if (!$util.isString(message.selector)) + return "selector: string expected"; + if (message.get != null && message.hasOwnProperty("get")) { + properties.pattern = 1; + if (!$util.isString(message.get)) + return "get: string expected"; + } + if (message.put != null && message.hasOwnProperty("put")) { + if (properties.pattern === 1) + return "pattern: multiple values"; + properties.pattern = 1; + if (!$util.isString(message.put)) + return "put: string expected"; + } + if (message.post != null && message.hasOwnProperty("post")) { + if (properties.pattern === 1) + return "pattern: multiple values"; + properties.pattern = 1; + if (!$util.isString(message.post)) + return "post: string expected"; + } + if (message["delete"] != null && message.hasOwnProperty("delete")) { + if (properties.pattern === 1) + return "pattern: multiple values"; + properties.pattern = 1; + if (!$util.isString(message["delete"])) + return "delete: string expected"; + } + if (message.patch != null && message.hasOwnProperty("patch")) { + if (properties.pattern === 1) + return "pattern: multiple values"; + properties.pattern = 1; + if (!$util.isString(message.patch)) + return "patch: string expected"; + } + if (message.custom != null && message.hasOwnProperty("custom")) { + if (properties.pattern === 1) + return "pattern: multiple values"; + properties.pattern = 1; + { + var error = $root.google.api.CustomHttpPattern.verify(message.custom); + if (error) + return "custom." + error; + } + } + if (message.body != null && message.hasOwnProperty("body")) + if (!$util.isString(message.body)) + return "body: string expected"; + if (message.responseBody != null && message.hasOwnProperty("responseBody")) + if (!$util.isString(message.responseBody)) + return "responseBody: string expected"; + if (message.additionalBindings != null && message.hasOwnProperty("additionalBindings")) { + if (!Array.isArray(message.additionalBindings)) + return "additionalBindings: array expected"; + for (var i = 0; i < message.additionalBindings.length; ++i) { + var error = $root.google.api.HttpRule.verify(message.additionalBindings[i]); + if (error) + return "additionalBindings." + error; + } + } return null; }; /** - * Creates a Duration message from a plain object. Also converts values to their respective internal types. + * Creates a HttpRule message from a plain object. Also converts values to their respective internal types. * @function fromObject - * @memberof google.protobuf.Duration + * @memberof google.api.HttpRule * @static * @param {Object.} object Plain object - * @returns {google.protobuf.Duration} Duration + * @returns {google.api.HttpRule} HttpRule */ - Duration.fromObject = function fromObject(object) { - if (object instanceof $root.google.protobuf.Duration) + HttpRule.fromObject = function fromObject(object) { + if (object instanceof $root.google.api.HttpRule) return object; - var message = new $root.google.protobuf.Duration(); - if (object.seconds != null) - if ($util.Long) - (message.seconds = $util.Long.fromValue(object.seconds)).unsigned = false; - else if (typeof object.seconds === "string") - message.seconds = parseInt(object.seconds, 10); - else if (typeof object.seconds === "number") - message.seconds = object.seconds; - else if (typeof object.seconds === "object") - message.seconds = new $util.LongBits(object.seconds.low >>> 0, object.seconds.high >>> 0).toNumber(); - if (object.nanos != null) - message.nanos = object.nanos | 0; + var message = new $root.google.api.HttpRule(); + if (object.selector != null) + message.selector = String(object.selector); + if (object.get != null) + message.get = String(object.get); + if (object.put != null) + message.put = String(object.put); + if (object.post != null) + message.post = String(object.post); + if (object["delete"] != null) + message["delete"] = String(object["delete"]); + if (object.patch != null) + message.patch = String(object.patch); + if (object.custom != null) { + if (typeof object.custom !== "object") + throw TypeError(".google.api.HttpRule.custom: object expected"); + message.custom = $root.google.api.CustomHttpPattern.fromObject(object.custom); + } + if (object.body != null) + message.body = String(object.body); + if (object.responseBody != null) + message.responseBody = String(object.responseBody); + if (object.additionalBindings) { + if (!Array.isArray(object.additionalBindings)) + throw TypeError(".google.api.HttpRule.additionalBindings: array expected"); + message.additionalBindings = []; + for (var i = 0; i < object.additionalBindings.length; ++i) { + if (typeof object.additionalBindings[i] !== "object") + throw TypeError(".google.api.HttpRule.additionalBindings: object expected"); + message.additionalBindings[i] = $root.google.api.HttpRule.fromObject(object.additionalBindings[i]); + } + } return message; }; /** - * Creates a plain object from a Duration message. Also converts values to other types if specified. + * Creates a plain object from a HttpRule message. Also converts values to other types if specified. * @function toObject - * @memberof google.protobuf.Duration + * @memberof google.api.HttpRule * @static - * @param {google.protobuf.Duration} message Duration + * @param {google.api.HttpRule} message HttpRule * @param {$protobuf.IConversionOptions} [options] Conversion options * @returns {Object.} Plain object */ - Duration.toObject = function toObject(message, options) { + HttpRule.toObject = function toObject(message, options) { if (!options) options = {}; var object = {}; + if (options.arrays || options.defaults) + object.additionalBindings = []; if (options.defaults) { - if ($util.Long) { - var long = new $util.Long(0, 0, false); - object.seconds = options.longs === String ? long.toString() : options.longs === Number ? long.toNumber() : long; - } else - object.seconds = options.longs === String ? "0" : 0; - object.nanos = 0; + object.selector = ""; + object.body = ""; + object.responseBody = ""; + } + if (message.selector != null && message.hasOwnProperty("selector")) + object.selector = message.selector; + if (message.get != null && message.hasOwnProperty("get")) { + object.get = message.get; + if (options.oneofs) + object.pattern = "get"; + } + if (message.put != null && message.hasOwnProperty("put")) { + object.put = message.put; + if (options.oneofs) + object.pattern = "put"; + } + if (message.post != null && message.hasOwnProperty("post")) { + object.post = message.post; + if (options.oneofs) + object.pattern = "post"; + } + if (message["delete"] != null && message.hasOwnProperty("delete")) { + object["delete"] = message["delete"]; + if (options.oneofs) + object.pattern = "delete"; + } + if (message.patch != null && message.hasOwnProperty("patch")) { + object.patch = message.patch; + if (options.oneofs) + object.pattern = "patch"; + } + if (message.body != null && message.hasOwnProperty("body")) + object.body = message.body; + if (message.custom != null && message.hasOwnProperty("custom")) { + object.custom = $root.google.api.CustomHttpPattern.toObject(message.custom, options); + if (options.oneofs) + object.pattern = "custom"; + } + if (message.additionalBindings && message.additionalBindings.length) { + object.additionalBindings = []; + for (var j = 0; j < message.additionalBindings.length; ++j) + object.additionalBindings[j] = $root.google.api.HttpRule.toObject(message.additionalBindings[j], options); } - if (message.seconds != null && message.hasOwnProperty("seconds")) - if (typeof message.seconds === "number") - object.seconds = options.longs === String ? String(message.seconds) : message.seconds; - else - object.seconds = options.longs === String ? $util.Long.prototype.toString.call(message.seconds) : options.longs === Number ? new $util.LongBits(message.seconds.low >>> 0, message.seconds.high >>> 0).toNumber() : message.seconds; - if (message.nanos != null && message.hasOwnProperty("nanos")) - object.nanos = message.nanos; + if (message.responseBody != null && message.hasOwnProperty("responseBody")) + object.responseBody = message.responseBody; return object; }; /** - * Converts this Duration to JSON. + * Converts this HttpRule to JSON. * @function toJSON - * @memberof google.protobuf.Duration + * @memberof google.api.HttpRule * @instance * @returns {Object.} JSON object */ - Duration.prototype.toJSON = function toJSON() { + HttpRule.prototype.toJSON = function toJSON() { return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; - return Duration; + return HttpRule; })(); - protobuf.Empty = (function() { + api.CustomHttpPattern = (function() { /** - * Properties of an Empty. - * @memberof google.protobuf - * @interface IEmpty + * Properties of a CustomHttpPattern. + * @memberof google.api + * @interface ICustomHttpPattern + * @property {string|null} [kind] CustomHttpPattern kind + * @property {string|null} [path] CustomHttpPattern path */ /** - * Constructs a new Empty. - * @memberof google.protobuf - * @classdesc Represents an Empty. - * @implements IEmpty + * Constructs a new CustomHttpPattern. + * @memberof google.api + * @classdesc Represents a CustomHttpPattern. + * @implements ICustomHttpPattern * @constructor - * @param {google.protobuf.IEmpty=} [properties] Properties to set + * @param {google.api.ICustomHttpPattern=} [properties] Properties to set */ - function Empty(properties) { + function CustomHttpPattern(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) if (properties[keys[i]] != null) @@ -17505,63 +61460,89 @@ } /** - * Creates a new Empty instance using the specified properties. + * CustomHttpPattern kind. + * @member {string} kind + * @memberof google.api.CustomHttpPattern + * @instance + */ + CustomHttpPattern.prototype.kind = ""; + + /** + * CustomHttpPattern path. + * @member {string} path + * @memberof google.api.CustomHttpPattern + * @instance + */ + CustomHttpPattern.prototype.path = ""; + + /** + * Creates a new CustomHttpPattern instance using the specified properties. * @function create - * @memberof google.protobuf.Empty + * @memberof google.api.CustomHttpPattern * @static - * @param {google.protobuf.IEmpty=} [properties] Properties to set - * @returns {google.protobuf.Empty} Empty instance + * @param {google.api.ICustomHttpPattern=} [properties] Properties to set + * @returns {google.api.CustomHttpPattern} CustomHttpPattern instance */ - Empty.create = function create(properties) { - return new Empty(properties); + CustomHttpPattern.create = function create(properties) { + return new CustomHttpPattern(properties); }; /** - * Encodes the specified Empty message. Does not implicitly {@link google.protobuf.Empty.verify|verify} messages. + * Encodes the specified CustomHttpPattern message. Does not implicitly {@link google.api.CustomHttpPattern.verify|verify} messages. * @function encode - * @memberof google.protobuf.Empty + * @memberof google.api.CustomHttpPattern * @static - * @param {google.protobuf.IEmpty} message Empty message or plain object to encode + * @param {google.api.ICustomHttpPattern} message CustomHttpPattern message or plain object to encode * @param {$protobuf.Writer} [writer] Writer to encode to * @returns {$protobuf.Writer} Writer */ - Empty.encode = function encode(message, writer) { + CustomHttpPattern.encode = function encode(message, writer) { if (!writer) writer = $Writer.create(); + if (message.kind != null && Object.hasOwnProperty.call(message, "kind")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.kind); + if (message.path != null && Object.hasOwnProperty.call(message, "path")) + writer.uint32(/* id 2, wireType 2 =*/18).string(message.path); return writer; }; /** - * Encodes the specified Empty message, length delimited. Does not implicitly {@link google.protobuf.Empty.verify|verify} messages. + * Encodes the specified CustomHttpPattern message, length delimited. Does not implicitly {@link google.api.CustomHttpPattern.verify|verify} messages. * @function encodeDelimited - * @memberof google.protobuf.Empty + * @memberof google.api.CustomHttpPattern * @static - * @param {google.protobuf.IEmpty} message Empty message or plain object to encode + * @param {google.api.ICustomHttpPattern} message CustomHttpPattern message or plain object to encode * @param {$protobuf.Writer} [writer] Writer to encode to * @returns {$protobuf.Writer} Writer */ - Empty.encodeDelimited = function encodeDelimited(message, writer) { + CustomHttpPattern.encodeDelimited = function encodeDelimited(message, writer) { return this.encode(message, writer).ldelim(); }; /** - * Decodes an Empty message from the specified reader or buffer. + * Decodes a CustomHttpPattern message from the specified reader or buffer. * @function decode - * @memberof google.protobuf.Empty + * @memberof google.api.CustomHttpPattern * @static * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from * @param {number} [length] Message length if known beforehand - * @returns {google.protobuf.Empty} Empty + * @returns {google.api.CustomHttpPattern} CustomHttpPattern * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Empty.decode = function decode(reader, length) { + CustomHttpPattern.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.protobuf.Empty(); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.api.CustomHttpPattern(); while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { + case 1: + message.kind = reader.string(); + break; + case 2: + message.path = reader.string(); + break; default: reader.skipType(tag & 7); break; @@ -17571,174 +61552,316 @@ }; /** - * Decodes an Empty message from the specified reader or buffer, length delimited. + * Decodes a CustomHttpPattern message from the specified reader or buffer, length delimited. * @function decodeDelimited - * @memberof google.protobuf.Empty + * @memberof google.api.CustomHttpPattern * @static * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {google.protobuf.Empty} Empty + * @returns {google.api.CustomHttpPattern} CustomHttpPattern * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Empty.decodeDelimited = function decodeDelimited(reader) { + CustomHttpPattern.decodeDelimited = function decodeDelimited(reader) { if (!(reader instanceof $Reader)) reader = new $Reader(reader); return this.decode(reader, reader.uint32()); }; /** - * Verifies an Empty message. + * Verifies a CustomHttpPattern message. * @function verify - * @memberof google.protobuf.Empty + * @memberof google.api.CustomHttpPattern * @static * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Empty.verify = function verify(message) { + CustomHttpPattern.verify = function verify(message) { if (typeof message !== "object" || message === null) return "object expected"; + if (message.kind != null && message.hasOwnProperty("kind")) + if (!$util.isString(message.kind)) + return "kind: string expected"; + if (message.path != null && message.hasOwnProperty("path")) + if (!$util.isString(message.path)) + return "path: string expected"; return null; }; /** - * Creates an Empty message from a plain object. Also converts values to their respective internal types. + * Creates a CustomHttpPattern message from a plain object. Also converts values to their respective internal types. * @function fromObject - * @memberof google.protobuf.Empty + * @memberof google.api.CustomHttpPattern * @static * @param {Object.} object Plain object - * @returns {google.protobuf.Empty} Empty + * @returns {google.api.CustomHttpPattern} CustomHttpPattern */ - Empty.fromObject = function fromObject(object) { - if (object instanceof $root.google.protobuf.Empty) + CustomHttpPattern.fromObject = function fromObject(object) { + if (object instanceof $root.google.api.CustomHttpPattern) return object; - return new $root.google.protobuf.Empty(); + var message = new $root.google.api.CustomHttpPattern(); + if (object.kind != null) + message.kind = String(object.kind); + if (object.path != null) + message.path = String(object.path); + return message; }; /** - * Creates a plain object from an Empty message. Also converts values to other types if specified. + * Creates a plain object from a CustomHttpPattern message. Also converts values to other types if specified. * @function toObject - * @memberof google.protobuf.Empty + * @memberof google.api.CustomHttpPattern * @static - * @param {google.protobuf.Empty} message Empty + * @param {google.api.CustomHttpPattern} message CustomHttpPattern * @param {$protobuf.IConversionOptions} [options] Conversion options * @returns {Object.} Plain object */ - Empty.toObject = function toObject() { - return {}; + CustomHttpPattern.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.kind = ""; + object.path = ""; + } + if (message.kind != null && message.hasOwnProperty("kind")) + object.kind = message.kind; + if (message.path != null && message.hasOwnProperty("path")) + object.path = message.path; + return object; }; /** - * Converts this Empty to JSON. + * Converts this CustomHttpPattern to JSON. * @function toJSON - * @memberof google.protobuf.Empty + * @memberof google.api.CustomHttpPattern * @instance * @returns {Object.} JSON object */ - Empty.prototype.toJSON = function toJSON() { + CustomHttpPattern.prototype.toJSON = function toJSON() { return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; - return Empty; + return CustomHttpPattern; })(); - protobuf.FieldMask = (function() { + /** + * FieldBehavior enum. + * @name google.api.FieldBehavior + * @enum {number} + * @property {number} FIELD_BEHAVIOR_UNSPECIFIED=0 FIELD_BEHAVIOR_UNSPECIFIED value + * @property {number} OPTIONAL=1 OPTIONAL value + * @property {number} REQUIRED=2 REQUIRED value + * @property {number} OUTPUT_ONLY=3 OUTPUT_ONLY value + * @property {number} INPUT_ONLY=4 INPUT_ONLY value + * @property {number} IMMUTABLE=5 IMMUTABLE value + * @property {number} UNORDERED_LIST=6 UNORDERED_LIST value + */ + api.FieldBehavior = (function() { + var valuesById = {}, values = Object.create(valuesById); + values[valuesById[0] = "FIELD_BEHAVIOR_UNSPECIFIED"] = 0; + values[valuesById[1] = "OPTIONAL"] = 1; + values[valuesById[2] = "REQUIRED"] = 2; + values[valuesById[3] = "OUTPUT_ONLY"] = 3; + values[valuesById[4] = "INPUT_ONLY"] = 4; + values[valuesById[5] = "IMMUTABLE"] = 5; + values[valuesById[6] = "UNORDERED_LIST"] = 6; + return values; + })(); + + api.ResourceDescriptor = (function() { + + /** + * Properties of a ResourceDescriptor. + * @memberof google.api + * @interface IResourceDescriptor + * @property {string|null} [type] ResourceDescriptor type + * @property {Array.|null} [pattern] ResourceDescriptor pattern + * @property {string|null} [nameField] ResourceDescriptor nameField + * @property {google.api.ResourceDescriptor.History|null} [history] ResourceDescriptor history + * @property {string|null} [plural] ResourceDescriptor plural + * @property {string|null} [singular] ResourceDescriptor singular + * @property {Array.|null} [style] ResourceDescriptor style + */ + + /** + * Constructs a new ResourceDescriptor. + * @memberof google.api + * @classdesc Represents a ResourceDescriptor. + * @implements IResourceDescriptor + * @constructor + * @param {google.api.IResourceDescriptor=} [properties] Properties to set + */ + function ResourceDescriptor(properties) { + this.pattern = []; + this.style = []; + 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]]; + } + + /** + * ResourceDescriptor type. + * @member {string} type + * @memberof google.api.ResourceDescriptor + * @instance + */ + ResourceDescriptor.prototype.type = ""; + + /** + * ResourceDescriptor pattern. + * @member {Array.} pattern + * @memberof google.api.ResourceDescriptor + * @instance + */ + ResourceDescriptor.prototype.pattern = $util.emptyArray; + + /** + * ResourceDescriptor nameField. + * @member {string} nameField + * @memberof google.api.ResourceDescriptor + * @instance + */ + ResourceDescriptor.prototype.nameField = ""; + + /** + * ResourceDescriptor history. + * @member {google.api.ResourceDescriptor.History} history + * @memberof google.api.ResourceDescriptor + * @instance + */ + ResourceDescriptor.prototype.history = 0; /** - * Properties of a FieldMask. - * @memberof google.protobuf - * @interface IFieldMask - * @property {Array.|null} [paths] FieldMask paths + * ResourceDescriptor plural. + * @member {string} plural + * @memberof google.api.ResourceDescriptor + * @instance */ + ResourceDescriptor.prototype.plural = ""; /** - * Constructs a new FieldMask. - * @memberof google.protobuf - * @classdesc Represents a FieldMask. - * @implements IFieldMask - * @constructor - * @param {google.protobuf.IFieldMask=} [properties] Properties to set + * ResourceDescriptor singular. + * @member {string} singular + * @memberof google.api.ResourceDescriptor + * @instance */ - function FieldMask(properties) { - this.paths = []; - 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]]; - } + ResourceDescriptor.prototype.singular = ""; /** - * FieldMask paths. - * @member {Array.} paths - * @memberof google.protobuf.FieldMask + * ResourceDescriptor style. + * @member {Array.} style + * @memberof google.api.ResourceDescriptor * @instance */ - FieldMask.prototype.paths = $util.emptyArray; + ResourceDescriptor.prototype.style = $util.emptyArray; /** - * Creates a new FieldMask instance using the specified properties. + * Creates a new ResourceDescriptor instance using the specified properties. * @function create - * @memberof google.protobuf.FieldMask + * @memberof google.api.ResourceDescriptor * @static - * @param {google.protobuf.IFieldMask=} [properties] Properties to set - * @returns {google.protobuf.FieldMask} FieldMask instance + * @param {google.api.IResourceDescriptor=} [properties] Properties to set + * @returns {google.api.ResourceDescriptor} ResourceDescriptor instance */ - FieldMask.create = function create(properties) { - return new FieldMask(properties); + ResourceDescriptor.create = function create(properties) { + return new ResourceDescriptor(properties); }; /** - * Encodes the specified FieldMask message. Does not implicitly {@link google.protobuf.FieldMask.verify|verify} messages. + * Encodes the specified ResourceDescriptor message. Does not implicitly {@link google.api.ResourceDescriptor.verify|verify} messages. * @function encode - * @memberof google.protobuf.FieldMask + * @memberof google.api.ResourceDescriptor * @static - * @param {google.protobuf.IFieldMask} message FieldMask message or plain object to encode + * @param {google.api.IResourceDescriptor} message ResourceDescriptor message or plain object to encode * @param {$protobuf.Writer} [writer] Writer to encode to * @returns {$protobuf.Writer} Writer */ - FieldMask.encode = function encode(message, writer) { + ResourceDescriptor.encode = function encode(message, writer) { if (!writer) writer = $Writer.create(); - if (message.paths != null && message.paths.length) - for (var i = 0; i < message.paths.length; ++i) - writer.uint32(/* id 1, wireType 2 =*/10).string(message.paths[i]); + if (message.type != null && Object.hasOwnProperty.call(message, "type")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.type); + if (message.pattern != null && message.pattern.length) + for (var i = 0; i < message.pattern.length; ++i) + writer.uint32(/* id 2, wireType 2 =*/18).string(message.pattern[i]); + if (message.nameField != null && Object.hasOwnProperty.call(message, "nameField")) + writer.uint32(/* id 3, wireType 2 =*/26).string(message.nameField); + if (message.history != null && Object.hasOwnProperty.call(message, "history")) + writer.uint32(/* id 4, wireType 0 =*/32).int32(message.history); + if (message.plural != null && Object.hasOwnProperty.call(message, "plural")) + writer.uint32(/* id 5, wireType 2 =*/42).string(message.plural); + if (message.singular != null && Object.hasOwnProperty.call(message, "singular")) + writer.uint32(/* id 6, wireType 2 =*/50).string(message.singular); + if (message.style != null && message.style.length) { + writer.uint32(/* id 10, wireType 2 =*/82).fork(); + for (var i = 0; i < message.style.length; ++i) + writer.int32(message.style[i]); + writer.ldelim(); + } return writer; }; /** - * Encodes the specified FieldMask message, length delimited. Does not implicitly {@link google.protobuf.FieldMask.verify|verify} messages. + * Encodes the specified ResourceDescriptor message, length delimited. Does not implicitly {@link google.api.ResourceDescriptor.verify|verify} messages. * @function encodeDelimited - * @memberof google.protobuf.FieldMask + * @memberof google.api.ResourceDescriptor * @static - * @param {google.protobuf.IFieldMask} message FieldMask message or plain object to encode + * @param {google.api.IResourceDescriptor} message ResourceDescriptor message or plain object to encode * @param {$protobuf.Writer} [writer] Writer to encode to * @returns {$protobuf.Writer} Writer */ - FieldMask.encodeDelimited = function encodeDelimited(message, writer) { + ResourceDescriptor.encodeDelimited = function encodeDelimited(message, writer) { return this.encode(message, writer).ldelim(); }; /** - * Decodes a FieldMask message from the specified reader or buffer. + * Decodes a ResourceDescriptor message from the specified reader or buffer. * @function decode - * @memberof google.protobuf.FieldMask + * @memberof google.api.ResourceDescriptor * @static * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from * @param {number} [length] Message length if known beforehand - * @returns {google.protobuf.FieldMask} FieldMask + * @returns {google.api.ResourceDescriptor} ResourceDescriptor * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - FieldMask.decode = function decode(reader, length) { + ResourceDescriptor.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.protobuf.FieldMask(); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.api.ResourceDescriptor(); while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { case 1: - if (!(message.paths && message.paths.length)) - message.paths = []; - message.paths.push(reader.string()); + message.type = reader.string(); + break; + case 2: + if (!(message.pattern && message.pattern.length)) + message.pattern = []; + message.pattern.push(reader.string()); + break; + case 3: + message.nameField = reader.string(); + break; + case 4: + message.history = reader.int32(); + break; + case 5: + message.plural = reader.string(); + break; + case 6: + message.singular = reader.string(); + break; + case 10: + if (!(message.style && message.style.length)) + message.style = []; + if ((tag & 7) === 2) { + var end2 = reader.uint32() + reader.pos; + while (reader.pos < end2) + message.style.push(reader.int32()); + } else + message.style.push(reader.int32()); break; default: reader.skipType(tag & 7); @@ -17749,120 +61872,246 @@ }; /** - * Decodes a FieldMask message from the specified reader or buffer, length delimited. + * Decodes a ResourceDescriptor message from the specified reader or buffer, length delimited. * @function decodeDelimited - * @memberof google.protobuf.FieldMask + * @memberof google.api.ResourceDescriptor * @static * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {google.protobuf.FieldMask} FieldMask + * @returns {google.api.ResourceDescriptor} ResourceDescriptor * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - FieldMask.decodeDelimited = function decodeDelimited(reader) { + ResourceDescriptor.decodeDelimited = function decodeDelimited(reader) { if (!(reader instanceof $Reader)) reader = new $Reader(reader); return this.decode(reader, reader.uint32()); }; /** - * Verifies a FieldMask message. + * Verifies a ResourceDescriptor message. * @function verify - * @memberof google.protobuf.FieldMask + * @memberof google.api.ResourceDescriptor * @static * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - FieldMask.verify = function verify(message) { + ResourceDescriptor.verify = function verify(message) { if (typeof message !== "object" || message === null) return "object expected"; - if (message.paths != null && message.hasOwnProperty("paths")) { - if (!Array.isArray(message.paths)) - return "paths: array expected"; - for (var i = 0; i < message.paths.length; ++i) - if (!$util.isString(message.paths[i])) - return "paths: string[] expected"; + if (message.type != null && message.hasOwnProperty("type")) + if (!$util.isString(message.type)) + return "type: string expected"; + if (message.pattern != null && message.hasOwnProperty("pattern")) { + if (!Array.isArray(message.pattern)) + return "pattern: array expected"; + for (var i = 0; i < message.pattern.length; ++i) + if (!$util.isString(message.pattern[i])) + return "pattern: string[] expected"; + } + if (message.nameField != null && message.hasOwnProperty("nameField")) + if (!$util.isString(message.nameField)) + return "nameField: string expected"; + if (message.history != null && message.hasOwnProperty("history")) + switch (message.history) { + default: + return "history: enum value expected"; + case 0: + case 1: + case 2: + break; + } + if (message.plural != null && message.hasOwnProperty("plural")) + if (!$util.isString(message.plural)) + return "plural: string expected"; + if (message.singular != null && message.hasOwnProperty("singular")) + if (!$util.isString(message.singular)) + return "singular: string expected"; + if (message.style != null && message.hasOwnProperty("style")) { + if (!Array.isArray(message.style)) + return "style: array expected"; + for (var i = 0; i < message.style.length; ++i) + switch (message.style[i]) { + default: + return "style: enum value[] expected"; + case 0: + case 1: + break; + } } return null; }; /** - * Creates a FieldMask message from a plain object. Also converts values to their respective internal types. + * Creates a ResourceDescriptor message from a plain object. Also converts values to their respective internal types. * @function fromObject - * @memberof google.protobuf.FieldMask + * @memberof google.api.ResourceDescriptor * @static * @param {Object.} object Plain object - * @returns {google.protobuf.FieldMask} FieldMask + * @returns {google.api.ResourceDescriptor} ResourceDescriptor */ - FieldMask.fromObject = function fromObject(object) { - if (object instanceof $root.google.protobuf.FieldMask) + ResourceDescriptor.fromObject = function fromObject(object) { + if (object instanceof $root.google.api.ResourceDescriptor) return object; - var message = new $root.google.protobuf.FieldMask(); - if (object.paths) { - if (!Array.isArray(object.paths)) - throw TypeError(".google.protobuf.FieldMask.paths: array expected"); - message.paths = []; - for (var i = 0; i < object.paths.length; ++i) - message.paths[i] = String(object.paths[i]); + var message = new $root.google.api.ResourceDescriptor(); + if (object.type != null) + message.type = String(object.type); + if (object.pattern) { + if (!Array.isArray(object.pattern)) + throw TypeError(".google.api.ResourceDescriptor.pattern: array expected"); + message.pattern = []; + for (var i = 0; i < object.pattern.length; ++i) + message.pattern[i] = String(object.pattern[i]); + } + if (object.nameField != null) + message.nameField = String(object.nameField); + switch (object.history) { + case "HISTORY_UNSPECIFIED": + case 0: + message.history = 0; + break; + case "ORIGINALLY_SINGLE_PATTERN": + case 1: + message.history = 1; + break; + case "FUTURE_MULTI_PATTERN": + case 2: + message.history = 2; + break; + } + if (object.plural != null) + message.plural = String(object.plural); + if (object.singular != null) + message.singular = String(object.singular); + if (object.style) { + if (!Array.isArray(object.style)) + throw TypeError(".google.api.ResourceDescriptor.style: array expected"); + message.style = []; + for (var i = 0; i < object.style.length; ++i) + switch (object.style[i]) { + default: + case "STYLE_UNSPECIFIED": + case 0: + message.style[i] = 0; + break; + case "DECLARATIVE_FRIENDLY": + case 1: + message.style[i] = 1; + break; + } } return message; }; /** - * Creates a plain object from a FieldMask message. Also converts values to other types if specified. + * Creates a plain object from a ResourceDescriptor message. Also converts values to other types if specified. * @function toObject - * @memberof google.protobuf.FieldMask + * @memberof google.api.ResourceDescriptor * @static - * @param {google.protobuf.FieldMask} message FieldMask + * @param {google.api.ResourceDescriptor} message ResourceDescriptor * @param {$protobuf.IConversionOptions} [options] Conversion options * @returns {Object.} Plain object */ - FieldMask.toObject = function toObject(message, options) { + ResourceDescriptor.toObject = function toObject(message, options) { if (!options) options = {}; var object = {}; - if (options.arrays || options.defaults) - object.paths = []; - if (message.paths && message.paths.length) { - object.paths = []; - for (var j = 0; j < message.paths.length; ++j) - object.paths[j] = message.paths[j]; + if (options.arrays || options.defaults) { + object.pattern = []; + object.style = []; + } + if (options.defaults) { + object.type = ""; + object.nameField = ""; + object.history = options.enums === String ? "HISTORY_UNSPECIFIED" : 0; + object.plural = ""; + object.singular = ""; + } + if (message.type != null && message.hasOwnProperty("type")) + object.type = message.type; + if (message.pattern && message.pattern.length) { + object.pattern = []; + for (var j = 0; j < message.pattern.length; ++j) + object.pattern[j] = message.pattern[j]; + } + if (message.nameField != null && message.hasOwnProperty("nameField")) + object.nameField = message.nameField; + if (message.history != null && message.hasOwnProperty("history")) + object.history = options.enums === String ? $root.google.api.ResourceDescriptor.History[message.history] : message.history; + if (message.plural != null && message.hasOwnProperty("plural")) + object.plural = message.plural; + if (message.singular != null && message.hasOwnProperty("singular")) + object.singular = message.singular; + if (message.style && message.style.length) { + object.style = []; + for (var j = 0; j < message.style.length; ++j) + object.style[j] = options.enums === String ? $root.google.api.ResourceDescriptor.Style[message.style[j]] : message.style[j]; } return object; }; /** - * Converts this FieldMask to JSON. + * Converts this ResourceDescriptor to JSON. * @function toJSON - * @memberof google.protobuf.FieldMask + * @memberof google.api.ResourceDescriptor * @instance * @returns {Object.} JSON object */ - FieldMask.prototype.toJSON = function toJSON() { + ResourceDescriptor.prototype.toJSON = function toJSON() { return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; - return FieldMask; + /** + * History enum. + * @name google.api.ResourceDescriptor.History + * @enum {number} + * @property {number} HISTORY_UNSPECIFIED=0 HISTORY_UNSPECIFIED value + * @property {number} ORIGINALLY_SINGLE_PATTERN=1 ORIGINALLY_SINGLE_PATTERN value + * @property {number} FUTURE_MULTI_PATTERN=2 FUTURE_MULTI_PATTERN value + */ + ResourceDescriptor.History = (function() { + var valuesById = {}, values = Object.create(valuesById); + values[valuesById[0] = "HISTORY_UNSPECIFIED"] = 0; + values[valuesById[1] = "ORIGINALLY_SINGLE_PATTERN"] = 1; + values[valuesById[2] = "FUTURE_MULTI_PATTERN"] = 2; + return values; + })(); + + /** + * Style enum. + * @name google.api.ResourceDescriptor.Style + * @enum {number} + * @property {number} STYLE_UNSPECIFIED=0 STYLE_UNSPECIFIED value + * @property {number} DECLARATIVE_FRIENDLY=1 DECLARATIVE_FRIENDLY value + */ + ResourceDescriptor.Style = (function() { + var valuesById = {}, values = Object.create(valuesById); + values[valuesById[0] = "STYLE_UNSPECIFIED"] = 0; + values[valuesById[1] = "DECLARATIVE_FRIENDLY"] = 1; + return values; + })(); + + return ResourceDescriptor; })(); - protobuf.Timestamp = (function() { + api.ResourceReference = (function() { /** - * Properties of a Timestamp. - * @memberof google.protobuf - * @interface ITimestamp - * @property {number|Long|null} [seconds] Timestamp seconds - * @property {number|null} [nanos] Timestamp nanos + * Properties of a ResourceReference. + * @memberof google.api + * @interface IResourceReference + * @property {string|null} [type] ResourceReference type + * @property {string|null} [childType] ResourceReference childType */ /** - * Constructs a new Timestamp. - * @memberof google.protobuf - * @classdesc Represents a Timestamp. - * @implements ITimestamp + * Constructs a new ResourceReference. + * @memberof google.api + * @classdesc Represents a ResourceReference. + * @implements IResourceReference * @constructor - * @param {google.protobuf.ITimestamp=} [properties] Properties to set + * @param {google.api.IResourceReference=} [properties] Properties to set */ - function Timestamp(properties) { + function ResourceReference(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) if (properties[keys[i]] != null) @@ -17870,88 +62119,88 @@ } /** - * Timestamp seconds. - * @member {number|Long} seconds - * @memberof google.protobuf.Timestamp + * ResourceReference type. + * @member {string} type + * @memberof google.api.ResourceReference * @instance */ - Timestamp.prototype.seconds = $util.Long ? $util.Long.fromBits(0,0,false) : 0; + ResourceReference.prototype.type = ""; /** - * Timestamp nanos. - * @member {number} nanos - * @memberof google.protobuf.Timestamp + * ResourceReference childType. + * @member {string} childType + * @memberof google.api.ResourceReference * @instance */ - Timestamp.prototype.nanos = 0; + ResourceReference.prototype.childType = ""; /** - * Creates a new Timestamp instance using the specified properties. + * Creates a new ResourceReference instance using the specified properties. * @function create - * @memberof google.protobuf.Timestamp + * @memberof google.api.ResourceReference * @static - * @param {google.protobuf.ITimestamp=} [properties] Properties to set - * @returns {google.protobuf.Timestamp} Timestamp instance + * @param {google.api.IResourceReference=} [properties] Properties to set + * @returns {google.api.ResourceReference} ResourceReference instance */ - Timestamp.create = function create(properties) { - return new Timestamp(properties); + ResourceReference.create = function create(properties) { + return new ResourceReference(properties); }; /** - * Encodes the specified Timestamp message. Does not implicitly {@link google.protobuf.Timestamp.verify|verify} messages. + * Encodes the specified ResourceReference message. Does not implicitly {@link google.api.ResourceReference.verify|verify} messages. * @function encode - * @memberof google.protobuf.Timestamp + * @memberof google.api.ResourceReference * @static - * @param {google.protobuf.ITimestamp} message Timestamp message or plain object to encode + * @param {google.api.IResourceReference} message ResourceReference message or plain object to encode * @param {$protobuf.Writer} [writer] Writer to encode to * @returns {$protobuf.Writer} Writer */ - Timestamp.encode = function encode(message, writer) { + ResourceReference.encode = function encode(message, writer) { if (!writer) writer = $Writer.create(); - if (message.seconds != null && Object.hasOwnProperty.call(message, "seconds")) - writer.uint32(/* id 1, wireType 0 =*/8).int64(message.seconds); - if (message.nanos != null && Object.hasOwnProperty.call(message, "nanos")) - writer.uint32(/* id 2, wireType 0 =*/16).int32(message.nanos); + if (message.type != null && Object.hasOwnProperty.call(message, "type")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.type); + if (message.childType != null && Object.hasOwnProperty.call(message, "childType")) + writer.uint32(/* id 2, wireType 2 =*/18).string(message.childType); return writer; }; /** - * Encodes the specified Timestamp message, length delimited. Does not implicitly {@link google.protobuf.Timestamp.verify|verify} messages. + * Encodes the specified ResourceReference message, length delimited. Does not implicitly {@link google.api.ResourceReference.verify|verify} messages. * @function encodeDelimited - * @memberof google.protobuf.Timestamp + * @memberof google.api.ResourceReference * @static - * @param {google.protobuf.ITimestamp} message Timestamp message or plain object to encode + * @param {google.api.IResourceReference} message ResourceReference message or plain object to encode * @param {$protobuf.Writer} [writer] Writer to encode to * @returns {$protobuf.Writer} Writer */ - Timestamp.encodeDelimited = function encodeDelimited(message, writer) { + ResourceReference.encodeDelimited = function encodeDelimited(message, writer) { return this.encode(message, writer).ldelim(); }; /** - * Decodes a Timestamp message from the specified reader or buffer. + * Decodes a ResourceReference message from the specified reader or buffer. * @function decode - * @memberof google.protobuf.Timestamp + * @memberof google.api.ResourceReference * @static * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from * @param {number} [length] Message length if known beforehand - * @returns {google.protobuf.Timestamp} Timestamp + * @returns {google.api.ResourceReference} ResourceReference * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Timestamp.decode = function decode(reader, length) { + ResourceReference.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.protobuf.Timestamp(); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.api.ResourceReference(); while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { case 1: - message.seconds = reader.int64(); + message.type = reader.string(); break; case 2: - message.nanos = reader.int32(); + message.childType = reader.string(); break; default: reader.skipType(tag & 7); @@ -17962,113 +62211,99 @@ }; /** - * Decodes a Timestamp message from the specified reader or buffer, length delimited. + * Decodes a ResourceReference message from the specified reader or buffer, length delimited. * @function decodeDelimited - * @memberof google.protobuf.Timestamp + * @memberof google.api.ResourceReference * @static * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {google.protobuf.Timestamp} Timestamp + * @returns {google.api.ResourceReference} ResourceReference * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Timestamp.decodeDelimited = function decodeDelimited(reader) { + ResourceReference.decodeDelimited = function decodeDelimited(reader) { if (!(reader instanceof $Reader)) reader = new $Reader(reader); return this.decode(reader, reader.uint32()); }; /** - * Verifies a Timestamp message. + * Verifies a ResourceReference message. * @function verify - * @memberof google.protobuf.Timestamp + * @memberof google.api.ResourceReference * @static * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Timestamp.verify = function verify(message) { + ResourceReference.verify = function verify(message) { if (typeof message !== "object" || message === null) return "object expected"; - if (message.seconds != null && message.hasOwnProperty("seconds")) - if (!$util.isInteger(message.seconds) && !(message.seconds && $util.isInteger(message.seconds.low) && $util.isInteger(message.seconds.high))) - return "seconds: integer|Long expected"; - if (message.nanos != null && message.hasOwnProperty("nanos")) - if (!$util.isInteger(message.nanos)) - return "nanos: integer expected"; + if (message.type != null && message.hasOwnProperty("type")) + if (!$util.isString(message.type)) + return "type: string expected"; + if (message.childType != null && message.hasOwnProperty("childType")) + if (!$util.isString(message.childType)) + return "childType: string expected"; return null; }; /** - * Creates a Timestamp message from a plain object. Also converts values to their respective internal types. + * Creates a ResourceReference message from a plain object. Also converts values to their respective internal types. * @function fromObject - * @memberof google.protobuf.Timestamp + * @memberof google.api.ResourceReference * @static * @param {Object.} object Plain object - * @returns {google.protobuf.Timestamp} Timestamp + * @returns {google.api.ResourceReference} ResourceReference */ - Timestamp.fromObject = function fromObject(object) { - if (object instanceof $root.google.protobuf.Timestamp) + ResourceReference.fromObject = function fromObject(object) { + if (object instanceof $root.google.api.ResourceReference) return object; - var message = new $root.google.protobuf.Timestamp(); - if (object.seconds != null) - if ($util.Long) - (message.seconds = $util.Long.fromValue(object.seconds)).unsigned = false; - else if (typeof object.seconds === "string") - message.seconds = parseInt(object.seconds, 10); - else if (typeof object.seconds === "number") - message.seconds = object.seconds; - else if (typeof object.seconds === "object") - message.seconds = new $util.LongBits(object.seconds.low >>> 0, object.seconds.high >>> 0).toNumber(); - if (object.nanos != null) - message.nanos = object.nanos | 0; + var message = new $root.google.api.ResourceReference(); + if (object.type != null) + message.type = String(object.type); + if (object.childType != null) + message.childType = String(object.childType); return message; }; /** - * Creates a plain object from a Timestamp message. Also converts values to other types if specified. + * Creates a plain object from a ResourceReference message. Also converts values to other types if specified. * @function toObject - * @memberof google.protobuf.Timestamp + * @memberof google.api.ResourceReference * @static - * @param {google.protobuf.Timestamp} message Timestamp + * @param {google.api.ResourceReference} message ResourceReference * @param {$protobuf.IConversionOptions} [options] Conversion options * @returns {Object.} Plain object */ - Timestamp.toObject = function toObject(message, options) { + ResourceReference.toObject = function toObject(message, options) { if (!options) options = {}; var object = {}; if (options.defaults) { - if ($util.Long) { - var long = new $util.Long(0, 0, false); - object.seconds = options.longs === String ? long.toString() : options.longs === Number ? long.toNumber() : long; - } else - object.seconds = options.longs === String ? "0" : 0; - object.nanos = 0; + object.type = ""; + object.childType = ""; } - if (message.seconds != null && message.hasOwnProperty("seconds")) - if (typeof message.seconds === "number") - object.seconds = options.longs === String ? String(message.seconds) : message.seconds; - else - object.seconds = options.longs === String ? $util.Long.prototype.toString.call(message.seconds) : options.longs === Number ? new $util.LongBits(message.seconds.low >>> 0, message.seconds.high >>> 0).toNumber() : message.seconds; - if (message.nanos != null && message.hasOwnProperty("nanos")) - object.nanos = message.nanos; + if (message.type != null && message.hasOwnProperty("type")) + object.type = message.type; + if (message.childType != null && message.hasOwnProperty("childType")) + object.childType = message.childType; return object; }; /** - * Converts this Timestamp to JSON. + * Converts this ResourceReference to JSON. * @function toJSON - * @memberof google.protobuf.Timestamp + * @memberof google.api.ResourceReference * @instance * @returns {Object.} JSON object */ - Timestamp.prototype.toJSON = function toJSON() { + ResourceReference.prototype.toJSON = function toJSON() { return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; - return Timestamp; + return ResourceReference; })(); - return protobuf; + return api; })(); google.longrunning = (function() { diff --git a/packages/google-cloud-gkehub/protos/protos.json b/packages/google-cloud-gkehub/protos/protos.json index e9d347c5101..f6778d08ce3 100644 --- a/packages/google-cloud-gkehub/protos/protos.json +++ b/packages/google-cloud-gkehub/protos/protos.json @@ -2,2032 +2,6664 @@ "nested": { "google": { "nested": { - "cloud": { + "protobuf": { + "options": { + "go_package": "google.golang.org/protobuf/types/descriptorpb", + "java_package": "com.google.protobuf", + "java_outer_classname": "DescriptorProtos", + "csharp_namespace": "Google.Protobuf.Reflection", + "objc_class_prefix": "GPB", + "cc_enable_arenas": true, + "optimize_for": "SPEED" + }, "nested": { - "gkehub": { - "nested": { - "v1beta1": { + "Timestamp": { + "fields": { + "seconds": { + "type": "int64", + "id": 1 + }, + "nanos": { + "type": "int32", + "id": 2 + } + } + }, + "FileDescriptorSet": { + "fields": { + "file": { + "rule": "repeated", + "type": "FileDescriptorProto", + "id": 1 + } + } + }, + "FileDescriptorProto": { + "fields": { + "name": { + "type": "string", + "id": 1 + }, + "package": { + "type": "string", + "id": 2 + }, + "dependency": { + "rule": "repeated", + "type": "string", + "id": 3 + }, + "publicDependency": { + "rule": "repeated", + "type": "int32", + "id": 10, "options": { - "csharp_namespace": "Google.Cloud.GkeHub.V1Beta1", - "go_package": "google.golang.org/genproto/googleapis/cloud/gkehub/v1beta1;gkehub", - "java_multiple_files": true, - "java_package": "com.google.cloud.gkehub.v1beta1", - "php_namespace": "Google\\Cloud\\GkeHub\\V1beta1", - "ruby_package": "Google::Cloud::GkeHub::V1beta1" - }, - "nested": { - "GkeHubMembershipService": { - "options": { - "(google.api.default_host)": "gkehub.googleapis.com", - "(google.api.oauth_scopes)": "https://www.googleapis.com/auth/cloud-platform" - }, - "methods": { - "ListMemberships": { - "requestType": "ListMembershipsRequest", - "responseType": "ListMembershipsResponse", - "options": { - "(google.api.http).get": "/v1beta1/{parent=projects/*/locations/*}/memberships", - "(google.api.method_signature)": "parent" - }, - "parsedOptions": [ - { - "(google.api.http)": { - "get": "/v1beta1/{parent=projects/*/locations/*}/memberships" - } - }, - { - "(google.api.method_signature)": "parent" - } - ] - }, - "GetMembership": { - "requestType": "GetMembershipRequest", - "responseType": "Membership", - "options": { - "(google.api.http).get": "/v1beta1/{name=projects/*/locations/*/memberships/*}", - "(google.api.method_signature)": "name" - }, - "parsedOptions": [ - { - "(google.api.http)": { - "get": "/v1beta1/{name=projects/*/locations/*/memberships/*}" - } - }, - { - "(google.api.method_signature)": "name" - } - ] - }, - "CreateMembership": { - "requestType": "CreateMembershipRequest", - "responseType": "google.longrunning.Operation", - "options": { - "(google.api.http).post": "/v1beta1/{parent=projects/*/locations/*}/memberships", - "(google.api.http).body": "resource", - "(google.api.method_signature)": "parent,resource,membership_id", - "(google.longrunning.operation_info).response_type": "Membership", - "(google.longrunning.operation_info).metadata_type": "OperationMetadata" - }, - "parsedOptions": [ - { - "(google.api.http)": { - "post": "/v1beta1/{parent=projects/*/locations/*}/memberships", - "body": "resource" - } - }, - { - "(google.api.method_signature)": "parent,resource,membership_id" - }, - { - "(google.longrunning.operation_info)": { - "response_type": "Membership", - "metadata_type": "OperationMetadata" - } - } - ] - }, - "DeleteMembership": { - "requestType": "DeleteMembershipRequest", - "responseType": "google.longrunning.Operation", - "options": { - "(google.api.http).delete": "/v1beta1/{name=projects/*/locations/*/memberships/*}", - "(google.api.method_signature)": "name", - "(google.longrunning.operation_info).response_type": "google.protobuf.Empty", - "(google.longrunning.operation_info).metadata_type": "OperationMetadata" - }, - "parsedOptions": [ - { - "(google.api.http)": { - "delete": "/v1beta1/{name=projects/*/locations/*/memberships/*}" - } - }, - { - "(google.api.method_signature)": "name" - }, - { - "(google.longrunning.operation_info)": { - "response_type": "google.protobuf.Empty", - "metadata_type": "OperationMetadata" - } - } - ] - }, - "UpdateMembership": { - "requestType": "UpdateMembershipRequest", - "responseType": "google.longrunning.Operation", - "options": { - "(google.api.http).patch": "/v1beta1/{name=projects/*/locations/*/memberships/*}", - "(google.api.http).body": "resource", - "(google.api.method_signature)": "name,resource,update_mask", - "(google.longrunning.operation_info).response_type": "Membership", - "(google.longrunning.operation_info).metadata_type": "OperationMetadata" - }, - "parsedOptions": [ - { - "(google.api.http)": { - "patch": "/v1beta1/{name=projects/*/locations/*/memberships/*}", - "body": "resource" - } - }, - { - "(google.api.method_signature)": "name,resource,update_mask" - }, - { - "(google.longrunning.operation_info)": { - "response_type": "Membership", - "metadata_type": "OperationMetadata" - } - } - ] - }, - "GenerateConnectManifest": { - "requestType": "GenerateConnectManifestRequest", - "responseType": "GenerateConnectManifestResponse", - "options": { - "(google.api.http).get": "/v1beta1/{name=projects/*/locations/*/memberships/*}:generateConnectManifest" - }, - "parsedOptions": [ - { - "(google.api.http)": { - "get": "/v1beta1/{name=projects/*/locations/*/memberships/*}:generateConnectManifest" - } - } - ] - }, - "ValidateExclusivity": { - "requestType": "ValidateExclusivityRequest", - "responseType": "ValidateExclusivityResponse", - "options": { - "(google.api.http).get": "/v1beta1/{parent=projects/*/locations/*}/memberships:validateExclusivity" - }, - "parsedOptions": [ - { - "(google.api.http)": { - "get": "/v1beta1/{parent=projects/*/locations/*}/memberships:validateExclusivity" - } - } - ] - }, - "GenerateExclusivityManifest": { - "requestType": "GenerateExclusivityManifestRequest", - "responseType": "GenerateExclusivityManifestResponse", - "options": { - "(google.api.http).get": "/v1beta1/{name=projects/*/locations/*/memberships/*}:generateExclusivityManifest" - }, - "parsedOptions": [ - { - "(google.api.http)": { - "get": "/v1beta1/{name=projects/*/locations/*/memberships/*}:generateExclusivityManifest" - } - } - ] - } - } - }, - "Membership": { - "options": { - "(google.api.resource).type": "gkehub.googleapis.com/Membership", - "(google.api.resource).pattern": "projects/{project}/locations/{location}/memberships/{membership}" - }, - "oneofs": { - "type": { - "oneof": [ - "endpoint" - ] - } - }, - "fields": { - "name": { - "type": "string", - "id": 1, - "options": { - "(google.api.field_behavior)": "OUTPUT_ONLY" - } - }, - "labels": { - "keyType": "string", - "type": "string", - "id": 2, - "options": { - "(google.api.field_behavior)": "OPTIONAL" - } - }, - "description": { - "type": "string", - "id": 3, - "options": { - "(google.api.field_behavior)": "REQUIRED" - } - }, - "endpoint": { - "type": "MembershipEndpoint", - "id": 4, - "options": { - "(google.api.field_behavior)": "OPTIONAL" - } - }, - "state": { - "type": "MembershipState", - "id": 5, - "options": { - "(google.api.field_behavior)": "OUTPUT_ONLY" - } - }, - "authority": { - "type": "Authority", - "id": 9, - "options": { - "(google.api.field_behavior)": "OPTIONAL" - } - }, - "createTime": { - "type": "google.protobuf.Timestamp", - "id": 6, - "options": { - "(google.api.field_behavior)": "OUTPUT_ONLY" - } - }, - "updateTime": { - "type": "google.protobuf.Timestamp", - "id": 7, - "options": { - "(google.api.field_behavior)": "OUTPUT_ONLY" - } - }, - "deleteTime": { - "type": "google.protobuf.Timestamp", - "id": 8, - "options": { - "(google.api.field_behavior)": "OUTPUT_ONLY" - } - }, - "externalId": { - "type": "string", - "id": 10, - "options": { - "(google.api.field_behavior)": "OPTIONAL" - } - }, - "lastConnectionTime": { - "type": "google.protobuf.Timestamp", - "id": 11, - "options": { - "(google.api.field_behavior)": "OUTPUT_ONLY" - } - }, - "uniqueId": { - "type": "string", - "id": 12, - "options": { - "(google.api.field_behavior)": "OUTPUT_ONLY" - } - }, - "infrastructureType": { - "type": "InfrastructureType", - "id": 13, - "options": { - "(google.api.field_behavior)": "OPTIONAL" - } - } - }, - "nested": { - "InfrastructureType": { - "values": { - "INFRASTRUCTURE_TYPE_UNSPECIFIED": 0, - "ON_PREM": 1, - "MULTI_CLOUD": 2 - } - } - } - }, - "MembershipEndpoint": { - "fields": { - "gkeCluster": { - "type": "GkeCluster", - "id": 4, - "options": { - "(google.api.field_behavior)": "OPTIONAL" - } - }, - "kubernetesMetadata": { - "type": "KubernetesMetadata", - "id": 5, - "options": { - "(google.api.field_behavior)": "OUTPUT_ONLY" - } - }, - "kubernetesResource": { - "type": "KubernetesResource", - "id": 6, - "options": { - "(google.api.field_behavior)": "OPTIONAL" - } - } - } + "packed": false + } + }, + "weakDependency": { + "rule": "repeated", + "type": "int32", + "id": 11, + "options": { + "packed": false + } + }, + "messageType": { + "rule": "repeated", + "type": "DescriptorProto", + "id": 4 + }, + "enumType": { + "rule": "repeated", + "type": "EnumDescriptorProto", + "id": 5 + }, + "service": { + "rule": "repeated", + "type": "ServiceDescriptorProto", + "id": 6 + }, + "extension": { + "rule": "repeated", + "type": "FieldDescriptorProto", + "id": 7 + }, + "options": { + "type": "FileOptions", + "id": 8 + }, + "sourceCodeInfo": { + "type": "SourceCodeInfo", + "id": 9 + }, + "syntax": { + "type": "string", + "id": 12 + } + } + }, + "DescriptorProto": { + "fields": { + "name": { + "type": "string", + "id": 1 + }, + "field": { + "rule": "repeated", + "type": "FieldDescriptorProto", + "id": 2 + }, + "extension": { + "rule": "repeated", + "type": "FieldDescriptorProto", + "id": 6 + }, + "nestedType": { + "rule": "repeated", + "type": "DescriptorProto", + "id": 3 + }, + "enumType": { + "rule": "repeated", + "type": "EnumDescriptorProto", + "id": 4 + }, + "extensionRange": { + "rule": "repeated", + "type": "ExtensionRange", + "id": 5 + }, + "oneofDecl": { + "rule": "repeated", + "type": "OneofDescriptorProto", + "id": 8 + }, + "options": { + "type": "MessageOptions", + "id": 7 + }, + "reservedRange": { + "rule": "repeated", + "type": "ReservedRange", + "id": 9 + }, + "reservedName": { + "rule": "repeated", + "type": "string", + "id": 10 + } + }, + "nested": { + "ExtensionRange": { + "fields": { + "start": { + "type": "int32", + "id": 1 }, - "KubernetesResource": { - "fields": { - "membershipCrManifest": { - "type": "string", - "id": 1, - "options": { - "(google.api.field_behavior)": "INPUT_ONLY" - } - }, - "membershipResources": { - "rule": "repeated", - "type": "ResourceManifest", - "id": 2, - "options": { - "(google.api.field_behavior)": "OUTPUT_ONLY" - } - }, - "connectResources": { - "rule": "repeated", - "type": "ResourceManifest", - "id": 3, - "options": { - "(google.api.field_behavior)": "OUTPUT_ONLY" - } - }, - "resourceOptions": { - "type": "ResourceOptions", - "id": 4, - "options": { - "(google.api.field_behavior)": "OPTIONAL" - } - } - } + "end": { + "type": "int32", + "id": 2 }, - "ResourceOptions": { - "fields": { - "connectVersion": { - "type": "string", - "id": 1, - "options": { - "(google.api.field_behavior)": "OPTIONAL" - } - }, - "v1beta1Crd": { - "type": "bool", - "id": 2, - "options": { - "(google.api.field_behavior)": "OPTIONAL" - } - } - } - }, - "ResourceManifest": { - "fields": { - "manifest": { - "type": "string", - "id": 1 - }, - "clusterScoped": { - "type": "bool", - "id": 2 - } - } - }, - "GkeCluster": { - "fields": { - "resourceLink": { - "type": "string", - "id": 1, - "options": { - "(google.api.field_behavior)": "IMMUTABLE" - } - } - } + "options": { + "type": "ExtensionRangeOptions", + "id": 3 + } + } + }, + "ReservedRange": { + "fields": { + "start": { + "type": "int32", + "id": 1 }, - "KubernetesMetadata": { - "fields": { - "kubernetesApiServerVersion": { - "type": "string", - "id": 1, - "options": { - "(google.api.field_behavior)": "OUTPUT_ONLY" - } - }, - "nodeProviderId": { - "type": "string", - "id": 2, - "options": { - "(google.api.field_behavior)": "OUTPUT_ONLY" - } - }, - "nodeCount": { - "type": "int32", - "id": 3, - "options": { - "(google.api.field_behavior)": "OUTPUT_ONLY" - } - }, - "vcpuCount": { - "type": "int32", - "id": 4, - "options": { - "(google.api.field_behavior)": "OUTPUT_ONLY" - } - }, - "memoryMb": { - "type": "int32", - "id": 5, - "options": { - "(google.api.field_behavior)": "OUTPUT_ONLY" - } - }, - "updateTime": { - "type": "google.protobuf.Timestamp", - "id": 100, - "options": { - "(google.api.field_behavior)": "OUTPUT_ONLY" - } - } - } + "end": { + "type": "int32", + "id": 2 + } + } + } + } + }, + "ExtensionRangeOptions": { + "fields": { + "uninterpretedOption": { + "rule": "repeated", + "type": "UninterpretedOption", + "id": 999 + } + }, + "extensions": [ + [ + 1000, + 536870911 + ] + ] + }, + "FieldDescriptorProto": { + "fields": { + "name": { + "type": "string", + "id": 1 + }, + "number": { + "type": "int32", + "id": 3 + }, + "label": { + "type": "Label", + "id": 4 + }, + "type": { + "type": "Type", + "id": 5 + }, + "typeName": { + "type": "string", + "id": 6 + }, + "extendee": { + "type": "string", + "id": 2 + }, + "defaultValue": { + "type": "string", + "id": 7 + }, + "oneofIndex": { + "type": "int32", + "id": 9 + }, + "jsonName": { + "type": "string", + "id": 10 + }, + "options": { + "type": "FieldOptions", + "id": 8 + }, + "proto3Optional": { + "type": "bool", + "id": 17 + } + }, + "nested": { + "Type": { + "values": { + "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": { + "values": { + "LABEL_OPTIONAL": 1, + "LABEL_REQUIRED": 2, + "LABEL_REPEATED": 3 + } + } + } + }, + "OneofDescriptorProto": { + "fields": { + "name": { + "type": "string", + "id": 1 + }, + "options": { + "type": "OneofOptions", + "id": 2 + } + } + }, + "EnumDescriptorProto": { + "fields": { + "name": { + "type": "string", + "id": 1 + }, + "value": { + "rule": "repeated", + "type": "EnumValueDescriptorProto", + "id": 2 + }, + "options": { + "type": "EnumOptions", + "id": 3 + }, + "reservedRange": { + "rule": "repeated", + "type": "EnumReservedRange", + "id": 4 + }, + "reservedName": { + "rule": "repeated", + "type": "string", + "id": 5 + } + }, + "nested": { + "EnumReservedRange": { + "fields": { + "start": { + "type": "int32", + "id": 1 }, - "Authority": { - "fields": { - "issuer": { - "type": "string", - "id": 1, - "options": { - "(google.api.field_behavior)": "OPTIONAL" - } - }, - "workloadIdentityPool": { - "type": "string", - "id": 2, - "options": { - "(google.api.field_behavior)": "OUTPUT_ONLY" - } - }, - "identityProvider": { - "type": "string", - "id": 3, - "options": { - "(google.api.field_behavior)": "OUTPUT_ONLY" - } - }, - "oidcJwks": { - "type": "bytes", - "id": 4, - "options": { - "(google.api.field_behavior)": "OPTIONAL" - } - } - } - }, - "MembershipState": { - "fields": { - "code": { - "type": "Code", - "id": 1, - "options": { - "(google.api.field_behavior)": "OUTPUT_ONLY" - } - }, - "description": { - "type": "string", - "id": 2, - "options": { - "deprecated": true - } - }, - "updateTime": { - "type": "google.protobuf.Timestamp", - "id": 3, - "options": { - "deprecated": true - } - } - }, - "nested": { - "Code": { - "values": { - "CODE_UNSPECIFIED": 0, - "CREATING": 1, - "READY": 2, - "DELETING": 3, - "UPDATING": 4, - "SERVICE_UPDATING": 5 - } - } - } - }, - "ListMembershipsRequest": { - "fields": { - "parent": { - "type": "string", - "id": 1, - "options": { - "(google.api.field_behavior)": "REQUIRED" - } - }, - "pageSize": { - "type": "int32", - "id": 2, - "options": { - "(google.api.field_behavior)": "OPTIONAL" - } - }, - "pageToken": { - "type": "string", - "id": 3, - "options": { - "(google.api.field_behavior)": "OPTIONAL" - } - }, - "filter": { - "type": "string", - "id": 4, - "options": { - "(google.api.field_behavior)": "OPTIONAL" - } - }, - "orderBy": { - "type": "string", - "id": 5, - "options": { - "(google.api.field_behavior)": "OPTIONAL" - } - } - } - }, - "ListMembershipsResponse": { - "fields": { - "resources": { - "rule": "repeated", - "type": "Membership", - "id": 1 - }, - "nextPageToken": { - "type": "string", - "id": 2 - }, - "unreachable": { - "rule": "repeated", - "type": "string", - "id": 3 - } - } - }, - "GetMembershipRequest": { - "fields": { - "name": { - "type": "string", - "id": 1, - "options": { - "(google.api.field_behavior)": "REQUIRED" - } - } - } - }, - "CreateMembershipRequest": { - "fields": { - "parent": { - "type": "string", - "id": 1, - "options": { - "(google.api.field_behavior)": "REQUIRED" - } - }, - "membershipId": { - "type": "string", - "id": 2, - "options": { - "(google.api.field_behavior)": "REQUIRED" - } - }, - "resource": { - "type": "Membership", - "id": 3, - "options": { - "(google.api.field_behavior)": "REQUIRED" - } - } - } - }, - "DeleteMembershipRequest": { - "fields": { - "name": { - "type": "string", - "id": 1, - "options": { - "(google.api.field_behavior)": "REQUIRED" - } - } - } - }, - "UpdateMembershipRequest": { - "fields": { - "name": { - "type": "string", - "id": 1, - "options": { - "(google.api.field_behavior)": "REQUIRED" - } - }, - "updateMask": { - "type": "google.protobuf.FieldMask", - "id": 2, - "options": { - "(google.api.field_behavior)": "REQUIRED" - } - }, - "resource": { - "type": "Membership", - "id": 3, - "options": { - "(google.api.field_behavior)": "REQUIRED" - } - } - } - }, - "GenerateConnectManifestRequest": { - "fields": { - "name": { - "type": "string", - "id": 1, - "options": { - "(google.api.field_behavior)": "REQUIRED" - } - }, - "connectAgent": { - "type": "ConnectAgent", - "id": 2, - "options": { - "(google.api.field_behavior)": "OPTIONAL" - } - }, - "version": { - "type": "string", - "id": 3, - "options": { - "(google.api.field_behavior)": "OPTIONAL" - } - }, - "isUpgrade": { - "type": "bool", - "id": 4, - "options": { - "(google.api.field_behavior)": "OPTIONAL" - } - }, - "registry": { - "type": "string", - "id": 5, - "options": { - "(google.api.field_behavior)": "OPTIONAL" - } - }, - "imagePullSecretContent": { - "type": "bytes", - "id": 6, - "options": { - "(google.api.field_behavior)": "OPTIONAL" - } - } - } - }, - "GenerateConnectManifestResponse": { - "fields": { - "manifest": { - "rule": "repeated", - "type": "ConnectAgentResource", - "id": 1 - } - } - }, - "ConnectAgentResource": { - "fields": { - "type": { - "type": "TypeMeta", - "id": 1 - }, - "manifest": { - "type": "string", - "id": 2 - } - } - }, - "TypeMeta": { - "fields": { - "kind": { - "type": "string", - "id": 1 - }, - "apiVersion": { - "type": "string", - "id": 2 - } - } - }, - "ConnectAgent": { - "fields": { - "name": { - "type": "string", - "id": 1, - "options": { - "deprecated": true - } - }, - "proxy": { - "type": "bytes", - "id": 2, - "options": { - "(google.api.field_behavior)": "OPTIONAL" - } - }, - "namespace": { - "type": "string", - "id": 3, - "options": { - "(google.api.field_behavior)": "OPTIONAL" - } - } - } - }, - "ValidateExclusivityRequest": { - "fields": { - "parent": { - "type": "string", - "id": 1, - "options": { - "(google.api.field_behavior)": "REQUIRED" - } - }, - "crManifest": { - "type": "string", - "id": 2, - "options": { - "(google.api.field_behavior)": "OPTIONAL" - } - }, - "intendedMembership": { - "type": "string", - "id": 3, - "options": { - "(google.api.field_behavior)": "REQUIRED" - } - } - } - }, - "ValidateExclusivityResponse": { - "fields": { - "status": { - "type": "google.rpc.Status", - "id": 1 - } - } - }, - "GenerateExclusivityManifestRequest": { - "fields": { - "name": { - "type": "string", - "id": 1, - "options": { - "(google.api.field_behavior)": "REQUIRED" - } - }, - "crdManifest": { - "type": "string", - "id": 2, - "options": { - "(google.api.field_behavior)": "OPTIONAL" - } - }, - "crManifest": { - "type": "string", - "id": 3, - "options": { - "(google.api.field_behavior)": "OPTIONAL" - } - } - } - }, - "GenerateExclusivityManifestResponse": { - "fields": { - "crdManifest": { - "type": "string", - "id": 1 - }, - "crManifest": { - "type": "string", - "id": 2 - } - } - }, - "OperationMetadata": { - "fields": { - "createTime": { - "type": "google.protobuf.Timestamp", - "id": 1, - "options": { - "(google.api.field_behavior)": "OUTPUT_ONLY" - } - }, - "endTime": { - "type": "google.protobuf.Timestamp", - "id": 2, - "options": { - "(google.api.field_behavior)": "OUTPUT_ONLY" - } - }, - "target": { - "type": "string", - "id": 3, - "options": { - "(google.api.field_behavior)": "OUTPUT_ONLY" - } - }, - "verb": { - "type": "string", - "id": 4, - "options": { - "(google.api.field_behavior)": "OUTPUT_ONLY" - } - }, - "statusDetail": { - "type": "string", - "id": 5, - "options": { - "(google.api.field_behavior)": "OUTPUT_ONLY" - } - }, - "cancelRequested": { - "type": "bool", - "id": 6, - "options": { - "(google.api.field_behavior)": "OUTPUT_ONLY" - } - }, - "apiVersion": { - "type": "string", - "id": 7, - "options": { - "(google.api.field_behavior)": "OUTPUT_ONLY" - } - } - } + "end": { + "type": "int32", + "id": 2 } } } } - } - } - }, - "api": { - "options": { - "go_package": "google.golang.org/genproto/googleapis/api/annotations;annotations", - "java_multiple_files": true, - "java_outer_classname": "ResourceProto", - "java_package": "com.google.api", - "objc_class_prefix": "GAPI", - "cc_enable_arenas": true - }, - "nested": { - "http": { - "type": "HttpRule", - "id": 72295728, - "extend": "google.protobuf.MethodOptions" }, - "Http": { + "EnumValueDescriptorProto": { + "fields": { + "name": { + "type": "string", + "id": 1 + }, + "number": { + "type": "int32", + "id": 2 + }, + "options": { + "type": "EnumValueOptions", + "id": 3 + } + } + }, + "ServiceDescriptorProto": { + "fields": { + "name": { + "type": "string", + "id": 1 + }, + "method": { + "rule": "repeated", + "type": "MethodDescriptorProto", + "id": 2 + }, + "options": { + "type": "ServiceOptions", + "id": 3 + } + } + }, + "MethodDescriptorProto": { + "fields": { + "name": { + "type": "string", + "id": 1 + }, + "inputType": { + "type": "string", + "id": 2 + }, + "outputType": { + "type": "string", + "id": 3 + }, + "options": { + "type": "MethodOptions", + "id": 4 + }, + "clientStreaming": { + "type": "bool", + "id": 5, + "options": { + "default": false + } + }, + "serverStreaming": { + "type": "bool", + "id": 6, + "options": { + "default": false + } + } + } + }, + "FileOptions": { + "fields": { + "javaPackage": { + "type": "string", + "id": 1 + }, + "javaOuterClassname": { + "type": "string", + "id": 8 + }, + "javaMultipleFiles": { + "type": "bool", + "id": 10, + "options": { + "default": false + } + }, + "javaGenerateEqualsAndHash": { + "type": "bool", + "id": 20, + "options": { + "deprecated": true + } + }, + "javaStringCheckUtf8": { + "type": "bool", + "id": 27, + "options": { + "default": false + } + }, + "optimizeFor": { + "type": "OptimizeMode", + "id": 9, + "options": { + "default": "SPEED" + } + }, + "goPackage": { + "type": "string", + "id": 11 + }, + "ccGenericServices": { + "type": "bool", + "id": 16, + "options": { + "default": false + } + }, + "javaGenericServices": { + "type": "bool", + "id": 17, + "options": { + "default": false + } + }, + "pyGenericServices": { + "type": "bool", + "id": 18, + "options": { + "default": false + } + }, + "phpGenericServices": { + "type": "bool", + "id": 42, + "options": { + "default": false + } + }, + "deprecated": { + "type": "bool", + "id": 23, + "options": { + "default": false + } + }, + "ccEnableArenas": { + "type": "bool", + "id": 31, + "options": { + "default": true + } + }, + "objcClassPrefix": { + "type": "string", + "id": 36 + }, + "csharpNamespace": { + "type": "string", + "id": 37 + }, + "swiftPrefix": { + "type": "string", + "id": 39 + }, + "phpClassPrefix": { + "type": "string", + "id": 40 + }, + "phpNamespace": { + "type": "string", + "id": 41 + }, + "phpMetadataNamespace": { + "type": "string", + "id": 44 + }, + "rubyPackage": { + "type": "string", + "id": 45 + }, + "uninterpretedOption": { + "rule": "repeated", + "type": "UninterpretedOption", + "id": 999 + } + }, + "extensions": [ + [ + 1000, + 536870911 + ] + ], + "reserved": [ + [ + 38, + 38 + ] + ], + "nested": { + "OptimizeMode": { + "values": { + "SPEED": 1, + "CODE_SIZE": 2, + "LITE_RUNTIME": 3 + } + } + } + }, + "MessageOptions": { + "fields": { + "messageSetWireFormat": { + "type": "bool", + "id": 1, + "options": { + "default": false + } + }, + "noStandardDescriptorAccessor": { + "type": "bool", + "id": 2, + "options": { + "default": false + } + }, + "deprecated": { + "type": "bool", + "id": 3, + "options": { + "default": false + } + }, + "mapEntry": { + "type": "bool", + "id": 7 + }, + "uninterpretedOption": { + "rule": "repeated", + "type": "UninterpretedOption", + "id": 999 + } + }, + "extensions": [ + [ + 1000, + 536870911 + ] + ], + "reserved": [ + [ + 8, + 8 + ], + [ + 9, + 9 + ] + ] + }, + "FieldOptions": { "fields": { - "rules": { - "rule": "repeated", - "type": "HttpRule", - "id": 1 + "ctype": { + "type": "CType", + "id": 1, + "options": { + "default": "STRING" + } }, - "fullyDecodeReservedExpansion": { + "packed": { "type": "bool", "id": 2 + }, + "jstype": { + "type": "JSType", + "id": 6, + "options": { + "default": "JS_NORMAL" + } + }, + "lazy": { + "type": "bool", + "id": 5, + "options": { + "default": false + } + }, + "deprecated": { + "type": "bool", + "id": 3, + "options": { + "default": false + } + }, + "weak": { + "type": "bool", + "id": 10, + "options": { + "default": false + } + }, + "uninterpretedOption": { + "rule": "repeated", + "type": "UninterpretedOption", + "id": 999 + } + }, + "extensions": [ + [ + 1000, + 536870911 + ] + ], + "reserved": [ + [ + 4, + 4 + ] + ], + "nested": { + "CType": { + "values": { + "STRING": 0, + "CORD": 1, + "STRING_PIECE": 2 + } + }, + "JSType": { + "values": { + "JS_NORMAL": 0, + "JS_STRING": 1, + "JS_NUMBER": 2 + } } } }, - "HttpRule": { - "oneofs": { - "pattern": { - "oneof": [ - "get", - "put", - "post", - "delete", - "patch", - "custom" - ] + "OneofOptions": { + "fields": { + "uninterpretedOption": { + "rule": "repeated", + "type": "UninterpretedOption", + "id": 999 } }, + "extensions": [ + [ + 1000, + 536870911 + ] + ] + }, + "EnumOptions": { "fields": { - "selector": { - "type": "string", - "id": 1 - }, - "get": { - "type": "string", + "allowAlias": { + "type": "bool", "id": 2 }, - "put": { - "type": "string", - "id": 3 - }, - "post": { - "type": "string", - "id": 4 - }, - "delete": { - "type": "string", - "id": 5 - }, - "patch": { - "type": "string", - "id": 6 - }, - "custom": { - "type": "CustomHttpPattern", - "id": 8 + "deprecated": { + "type": "bool", + "id": 3, + "options": { + "default": false + } }, - "body": { - "type": "string", - "id": 7 + "uninterpretedOption": { + "rule": "repeated", + "type": "UninterpretedOption", + "id": 999 + } + }, + "extensions": [ + [ + 1000, + 536870911 + ] + ], + "reserved": [ + [ + 5, + 5 + ] + ] + }, + "EnumValueOptions": { + "fields": { + "deprecated": { + "type": "bool", + "id": 1, + "options": { + "default": false + } }, - "responseBody": { - "type": "string", - "id": 12 + "uninterpretedOption": { + "rule": "repeated", + "type": "UninterpretedOption", + "id": 999 + } + }, + "extensions": [ + [ + 1000, + 536870911 + ] + ] + }, + "ServiceOptions": { + "fields": { + "deprecated": { + "type": "bool", + "id": 33, + "options": { + "default": false + } }, - "additionalBindings": { + "uninterpretedOption": { "rule": "repeated", - "type": "HttpRule", - "id": 11 + "type": "UninterpretedOption", + "id": 999 } - } + }, + "extensions": [ + [ + 1000, + 536870911 + ] + ] }, - "CustomHttpPattern": { + "MethodOptions": { "fields": { - "kind": { - "type": "string", - "id": 1 + "deprecated": { + "type": "bool", + "id": 33, + "options": { + "default": false + } }, - "path": { - "type": "string", - "id": 2 + "idempotencyLevel": { + "type": "IdempotencyLevel", + "id": 34, + "options": { + "default": "IDEMPOTENCY_UNKNOWN" + } + }, + "uninterpretedOption": { + "rule": "repeated", + "type": "UninterpretedOption", + "id": 999 + } + }, + "extensions": [ + [ + 1000, + 536870911 + ] + ], + "nested": { + "IdempotencyLevel": { + "values": { + "IDEMPOTENCY_UNKNOWN": 0, + "NO_SIDE_EFFECTS": 1, + "IDEMPOTENT": 2 + } } } }, - "methodSignature": { - "rule": "repeated", - "type": "string", - "id": 1051, - "extend": "google.protobuf.MethodOptions" - }, - "defaultHost": { - "type": "string", - "id": 1049, - "extend": "google.protobuf.ServiceOptions" - }, - "oauthScopes": { - "type": "string", - "id": 1050, - "extend": "google.protobuf.ServiceOptions" - }, - "fieldBehavior": { - "rule": "repeated", - "type": "google.api.FieldBehavior", - "id": 1052, - "extend": "google.protobuf.FieldOptions" - }, - "FieldBehavior": { - "values": { - "FIELD_BEHAVIOR_UNSPECIFIED": 0, - "OPTIONAL": 1, - "REQUIRED": 2, - "OUTPUT_ONLY": 3, - "INPUT_ONLY": 4, - "IMMUTABLE": 5, - "UNORDERED_LIST": 6 - } - }, - "resourceReference": { - "type": "google.api.ResourceReference", - "id": 1055, - "extend": "google.protobuf.FieldOptions" - }, - "resourceDefinition": { - "rule": "repeated", - "type": "google.api.ResourceDescriptor", - "id": 1053, - "extend": "google.protobuf.FileOptions" - }, - "resource": { - "type": "google.api.ResourceDescriptor", - "id": 1053, - "extend": "google.protobuf.MessageOptions" - }, - "ResourceDescriptor": { + "UninterpretedOption": { "fields": { - "type": { - "type": "string", - "id": 1 - }, - "pattern": { + "name": { "rule": "repeated", - "type": "string", + "type": "NamePart", "id": 2 }, - "nameField": { + "identifierValue": { "type": "string", "id": 3 }, - "history": { - "type": "History", + "positiveIntValue": { + "type": "uint64", "id": 4 }, - "plural": { - "type": "string", + "negativeIntValue": { + "type": "int64", "id": 5 }, - "singular": { - "type": "string", + "doubleValue": { + "type": "double", "id": 6 }, - "style": { - "rule": "repeated", - "type": "Style", - "id": 10 + "stringValue": { + "type": "bytes", + "id": 7 + }, + "aggregateValue": { + "type": "string", + "id": 8 } }, "nested": { - "History": { - "values": { - "HISTORY_UNSPECIFIED": 0, - "ORIGINALLY_SINGLE_PATTERN": 1, - "FUTURE_MULTI_PATTERN": 2 - } - }, - "Style": { - "values": { - "STYLE_UNSPECIFIED": 0, - "DECLARATIVE_FRIENDLY": 1 + "NamePart": { + "fields": { + "namePart": { + "rule": "required", + "type": "string", + "id": 1 + }, + "isExtension": { + "rule": "required", + "type": "bool", + "id": 2 + } } } } }, - "ResourceReference": { - "fields": { - "type": { - "type": "string", - "id": 1 - }, - "childType": { - "type": "string", - "id": 2 - } - } - } - } - }, - "protobuf": { - "options": { - "go_package": "google.golang.org/protobuf/types/descriptorpb", - "java_package": "com.google.protobuf", - "java_outer_classname": "DescriptorProtos", - "csharp_namespace": "Google.Protobuf.Reflection", - "objc_class_prefix": "GPB", - "cc_enable_arenas": true, - "optimize_for": "SPEED" - }, - "nested": { - "FileDescriptorSet": { + "SourceCodeInfo": { "fields": { - "file": { + "location": { "rule": "repeated", - "type": "FileDescriptorProto", + "type": "Location", "id": 1 } + }, + "nested": { + "Location": { + "fields": { + "path": { + "rule": "repeated", + "type": "int32", + "id": 1 + }, + "span": { + "rule": "repeated", + "type": "int32", + "id": 2 + }, + "leadingComments": { + "type": "string", + "id": 3 + }, + "trailingComments": { + "type": "string", + "id": 4 + }, + "leadingDetachedComments": { + "rule": "repeated", + "type": "string", + "id": 6 + } + } + } } }, - "FileDescriptorProto": { + "GeneratedCodeInfo": { "fields": { - "name": { - "type": "string", - "id": 1 - }, - "package": { - "type": "string", - "id": 2 - }, - "dependency": { - "rule": "repeated", - "type": "string", - "id": 3 - }, - "publicDependency": { - "rule": "repeated", - "type": "int32", - "id": 10, - "options": { - "packed": false - } - }, - "weakDependency": { + "annotation": { "rule": "repeated", - "type": "int32", - "id": 11, - "options": { - "packed": false + "type": "Annotation", + "id": 1 + } + }, + "nested": { + "Annotation": { + "fields": { + "path": { + "rule": "repeated", + "type": "int32", + "id": 1 + }, + "sourceFile": { + "type": "string", + "id": 2 + }, + "begin": { + "type": "int32", + "id": 3 + }, + "end": { + "type": "int32", + "id": 4 + } } - }, - "messageType": { - "rule": "repeated", - "type": "DescriptorProto", - "id": 4 - }, - "enumType": { - "rule": "repeated", - "type": "EnumDescriptorProto", - "id": 5 - }, - "service": { - "rule": "repeated", - "type": "ServiceDescriptorProto", - "id": 6 - }, - "extension": { - "rule": "repeated", - "type": "FieldDescriptorProto", - "id": 7 - }, - "options": { - "type": "FileOptions", - "id": 8 - }, - "sourceCodeInfo": { - "type": "SourceCodeInfo", - "id": 9 - }, - "syntax": { - "type": "string", - "id": 12 } } }, - "DescriptorProto": { + "Any": { "fields": { - "name": { + "type_url": { "type": "string", "id": 1 }, - "field": { - "rule": "repeated", - "type": "FieldDescriptorProto", + "value": { + "type": "bytes", "id": 2 + } + } + }, + "Duration": { + "fields": { + "seconds": { + "type": "int64", + "id": 1 }, - "extension": { + "nanos": { + "type": "int32", + "id": 2 + } + } + }, + "Empty": { + "fields": {} + }, + "FieldMask": { + "fields": { + "paths": { "rule": "repeated", - "type": "FieldDescriptorProto", - "id": 6 + "type": "string", + "id": 1 + } + } + }, + "Struct": { + "fields": { + "fields": { + "keyType": "string", + "type": "Value", + "id": 1 + } + } + }, + "Value": { + "oneofs": { + "kind": { + "oneof": [ + "nullValue", + "numberValue", + "stringValue", + "boolValue", + "structValue", + "listValue" + ] + } + }, + "fields": { + "nullValue": { + "type": "NullValue", + "id": 1 }, - "nestedType": { - "rule": "repeated", - "type": "DescriptorProto", + "numberValue": { + "type": "double", + "id": 2 + }, + "stringValue": { + "type": "string", "id": 3 }, - "enumType": { - "rule": "repeated", - "type": "EnumDescriptorProto", + "boolValue": { + "type": "bool", "id": 4 }, - "extensionRange": { - "rule": "repeated", - "type": "ExtensionRange", + "structValue": { + "type": "Struct", "id": 5 }, - "oneofDecl": { - "rule": "repeated", - "type": "OneofDescriptorProto", - "id": 8 - }, - "options": { - "type": "MessageOptions", - "id": 7 - }, - "reservedRange": { + "listValue": { + "type": "ListValue", + "id": 6 + } + } + }, + "NullValue": { + "values": { + "NULL_VALUE": 0 + } + }, + "ListValue": { + "fields": { + "values": { "rule": "repeated", - "type": "ReservedRange", - "id": 9 + "type": "Value", + "id": 1 + } + } + } + } + }, + "cloud": { + "nested": { + "gkehub": { + "nested": { + "configmanagement": { + "nested": { + "v1": { + "options": { + "csharp_namespace": "Google.Cloud.GkeHub.ConfigManagement.V1", + "go_package": "google.golang.org/genproto/googleapis/cloud/gkehub/configmanagement/v1;configmanagement", + "java_multiple_files": true, + "java_outer_classname": "ConfigManagementProto", + "java_package": "com.google.cloud.gkehub.configmanagement.v1", + "php_namespace": "Google\\Cloud\\GkeHub\\ConfigManagement\\V1", + "ruby_package": "Google::Cloud::GkeHub::ConfigManagement::V1" + }, + "nested": { + "DeploymentState": { + "values": { + "DEPLOYMENT_STATE_UNSPECIFIED": 0, + "NOT_INSTALLED": 1, + "INSTALLED": 2, + "ERROR": 3 + } + }, + "MembershipState": { + "fields": { + "clusterName": { + "type": "string", + "id": 1 + }, + "membershipSpec": { + "type": "MembershipSpec", + "id": 2 + }, + "operatorState": { + "type": "OperatorState", + "id": 3 + }, + "configSyncState": { + "type": "ConfigSyncState", + "id": 4 + }, + "policyControllerState": { + "type": "PolicyControllerState", + "id": 5 + }, + "hierarchyControllerState": { + "type": "HierarchyControllerState", + "id": 7 + } + } + }, + "MembershipSpec": { + "fields": { + "configSync": { + "type": "ConfigSync", + "id": 1 + }, + "policyController": { + "type": "PolicyController", + "id": 2 + }, + "hierarchyController": { + "type": "HierarchyControllerConfig", + "id": 4 + }, + "version": { + "type": "string", + "id": 10 + } + } + }, + "ConfigSync": { + "fields": { + "git": { + "type": "GitConfig", + "id": 7 + }, + "sourceFormat": { + "type": "string", + "id": 8 + } + } + }, + "GitConfig": { + "fields": { + "syncRepo": { + "type": "string", + "id": 1 + }, + "syncBranch": { + "type": "string", + "id": 2 + }, + "policyDir": { + "type": "string", + "id": 3 + }, + "syncWaitSecs": { + "type": "int64", + "id": 4 + }, + "syncRev": { + "type": "string", + "id": 5 + }, + "secretType": { + "type": "string", + "id": 6 + }, + "httpsProxy": { + "type": "string", + "id": 7 + }, + "gcpServiceAccountEmail": { + "type": "string", + "id": 8 + } + } + }, + "PolicyController": { + "oneofs": { + "_templateLibraryInstalled": { + "oneof": [ + "templateLibraryInstalled" + ] + }, + "_auditIntervalSeconds": { + "oneof": [ + "auditIntervalSeconds" + ] + } + }, + "fields": { + "enabled": { + "type": "bool", + "id": 1 + }, + "templateLibraryInstalled": { + "type": "bool", + "id": 2, + "options": { + "proto3_optional": true + } + }, + "auditIntervalSeconds": { + "type": "int64", + "id": 3, + "options": { + "proto3_optional": true + } + }, + "exemptableNamespaces": { + "rule": "repeated", + "type": "string", + "id": 4 + }, + "referentialRulesEnabled": { + "type": "bool", + "id": 5 + }, + "logDeniesEnabled": { + "type": "bool", + "id": 6 + } + } + }, + "HierarchyControllerConfig": { + "fields": { + "enabled": { + "type": "bool", + "id": 1 + }, + "enablePodTreeLabels": { + "type": "bool", + "id": 2 + }, + "enableHierarchicalResourceQuota": { + "type": "bool", + "id": 3 + } + } + }, + "HierarchyControllerDeploymentState": { + "fields": { + "hnc": { + "type": "DeploymentState", + "id": 1 + }, + "extension": { + "type": "DeploymentState", + "id": 2 + } + } + }, + "HierarchyControllerVersion": { + "fields": { + "hnc": { + "type": "string", + "id": 1 + }, + "extension": { + "type": "string", + "id": 2 + } + } + }, + "HierarchyControllerState": { + "fields": { + "version": { + "type": "HierarchyControllerVersion", + "id": 1 + }, + "state": { + "type": "HierarchyControllerDeploymentState", + "id": 2 + } + } + }, + "OperatorState": { + "fields": { + "version": { + "type": "string", + "id": 1 + }, + "deploymentState": { + "type": "DeploymentState", + "id": 2 + }, + "errors": { + "rule": "repeated", + "type": "InstallError", + "id": 3 + } + } + }, + "InstallError": { + "fields": { + "errorMessage": { + "type": "string", + "id": 1 + } + } + }, + "ConfigSyncState": { + "fields": { + "version": { + "type": "ConfigSyncVersion", + "id": 1 + }, + "deploymentState": { + "type": "ConfigSyncDeploymentState", + "id": 2 + }, + "syncState": { + "type": "SyncState", + "id": 3 + } + } + }, + "ConfigSyncVersion": { + "fields": { + "importer": { + "type": "string", + "id": 1 + }, + "syncer": { + "type": "string", + "id": 2 + }, + "gitSync": { + "type": "string", + "id": 3 + }, + "monitor": { + "type": "string", + "id": 4 + }, + "reconcilerManager": { + "type": "string", + "id": 5 + }, + "rootReconciler": { + "type": "string", + "id": 6 + } + } + }, + "ConfigSyncDeploymentState": { + "fields": { + "importer": { + "type": "DeploymentState", + "id": 1 + }, + "syncer": { + "type": "DeploymentState", + "id": 2 + }, + "gitSync": { + "type": "DeploymentState", + "id": 3 + }, + "monitor": { + "type": "DeploymentState", + "id": 4 + }, + "reconcilerManager": { + "type": "DeploymentState", + "id": 5 + }, + "rootReconciler": { + "type": "DeploymentState", + "id": 6 + } + } + }, + "SyncState": { + "fields": { + "sourceToken": { + "type": "string", + "id": 1 + }, + "importToken": { + "type": "string", + "id": 2 + }, + "syncToken": { + "type": "string", + "id": 3 + }, + "lastSync": { + "type": "string", + "id": 4, + "options": { + "deprecated": true + } + }, + "lastSyncTime": { + "type": "google.protobuf.Timestamp", + "id": 7 + }, + "code": { + "type": "SyncCode", + "id": 5 + }, + "errors": { + "rule": "repeated", + "type": "SyncError", + "id": 6 + } + }, + "nested": { + "SyncCode": { + "values": { + "SYNC_CODE_UNSPECIFIED": 0, + "SYNCED": 1, + "PENDING": 2, + "ERROR": 3, + "NOT_CONFIGURED": 4, + "NOT_INSTALLED": 5, + "UNAUTHORIZED": 6, + "UNREACHABLE": 7 + } + } + } + }, + "SyncError": { + "fields": { + "code": { + "type": "string", + "id": 1 + }, + "errorMessage": { + "type": "string", + "id": 2 + }, + "errorResources": { + "rule": "repeated", + "type": "ErrorResource", + "id": 3 + } + } + }, + "ErrorResource": { + "fields": { + "sourcePath": { + "type": "string", + "id": 1 + }, + "resourceName": { + "type": "string", + "id": 2 + }, + "resourceNamespace": { + "type": "string", + "id": 3 + }, + "resourceGvk": { + "type": "GroupVersionKind", + "id": 4 + } + } + }, + "GroupVersionKind": { + "fields": { + "group": { + "type": "string", + "id": 1 + }, + "version": { + "type": "string", + "id": 2 + }, + "kind": { + "type": "string", + "id": 3 + } + } + }, + "PolicyControllerState": { + "fields": { + "version": { + "type": "PolicyControllerVersion", + "id": 1 + }, + "deploymentState": { + "type": "GatekeeperDeploymentState", + "id": 2 + } + } + }, + "PolicyControllerVersion": { + "fields": { + "version": { + "type": "string", + "id": 1 + } + } + }, + "GatekeeperDeploymentState": { + "fields": { + "gatekeeperControllerManagerState": { + "type": "DeploymentState", + "id": 1 + }, + "gatekeeperAudit": { + "type": "DeploymentState", + "id": 2 + } + } + } + } + }, + "v1alpha": { + "options": { + "csharp_namespace": "Google.Cloud.GkeHub.ConfigManagement.V1Alpha", + "go_package": "google.golang.org/genproto/googleapis/cloud/gkehub/configmanagement/v1alpha;configmanagement", + "java_multiple_files": true, + "java_outer_classname": "ConfigManagementProto", + "java_package": "com.google.cloud.gkehub.configmanagement.v1alpha", + "php_namespace": "Google\\Cloud\\GkeHub\\ConfigManagement\\V1alpha", + "ruby_package": "Google::Cloud::GkeHub::ConfigManagement::V1alpha" + }, + "nested": { + "DeploymentState": { + "values": { + "DEPLOYMENT_STATE_UNSPECIFIED": 0, + "NOT_INSTALLED": 1, + "INSTALLED": 2, + "ERROR": 3 + } + }, + "MembershipState": { + "fields": { + "clusterName": { + "type": "string", + "id": 1 + }, + "membershipSpec": { + "type": "MembershipSpec", + "id": 2 + }, + "operatorState": { + "type": "OperatorState", + "id": 3 + }, + "configSyncState": { + "type": "ConfigSyncState", + "id": 4 + }, + "policyControllerState": { + "type": "PolicyControllerState", + "id": 5 + }, + "binauthzState": { + "type": "BinauthzState", + "id": 6 + }, + "hierarchyControllerState": { + "type": "HierarchyControllerState", + "id": 7 + } + } + }, + "MembershipSpec": { + "fields": { + "configSync": { + "type": "ConfigSync", + "id": 1 + }, + "policyController": { + "type": "PolicyController", + "id": 2 + }, + "binauthz": { + "type": "BinauthzConfig", + "id": 3 + }, + "hierarchyController": { + "type": "HierarchyControllerConfig", + "id": 4 + }, + "version": { + "type": "string", + "id": 10 + } + } + }, + "ConfigSync": { + "fields": { + "git": { + "type": "GitConfig", + "id": 7 + }, + "sourceFormat": { + "type": "string", + "id": 8 + } + } + }, + "GitConfig": { + "fields": { + "syncRepo": { + "type": "string", + "id": 1 + }, + "syncBranch": { + "type": "string", + "id": 2 + }, + "policyDir": { + "type": "string", + "id": 3 + }, + "syncWaitSecs": { + "type": "int64", + "id": 4 + }, + "syncRev": { + "type": "string", + "id": 5 + }, + "secretType": { + "type": "string", + "id": 6 + }, + "httpsProxy": { + "type": "string", + "id": 7 + }, + "gcpServiceAccountEmail": { + "type": "string", + "id": 8 + } + } + }, + "PolicyController": { + "oneofs": { + "_templateLibraryInstalled": { + "oneof": [ + "templateLibraryInstalled" + ] + }, + "_auditIntervalSeconds": { + "oneof": [ + "auditIntervalSeconds" + ] + } + }, + "fields": { + "enabled": { + "type": "bool", + "id": 1 + }, + "templateLibraryInstalled": { + "type": "bool", + "id": 2, + "options": { + "proto3_optional": true + } + }, + "auditIntervalSeconds": { + "type": "int64", + "id": 3, + "options": { + "proto3_optional": true + } + }, + "exemptableNamespaces": { + "rule": "repeated", + "type": "string", + "id": 4 + }, + "referentialRulesEnabled": { + "type": "bool", + "id": 5 + }, + "logDeniesEnabled": { + "type": "bool", + "id": 6 + }, + "mutationEnabled": { + "type": "bool", + "id": 7 + } + } + }, + "BinauthzConfig": { + "fields": { + "enabled": { + "type": "bool", + "id": 1 + } + } + }, + "HierarchyControllerConfig": { + "fields": { + "enabled": { + "type": "bool", + "id": 1 + }, + "enablePodTreeLabels": { + "type": "bool", + "id": 2 + }, + "enableHierarchicalResourceQuota": { + "type": "bool", + "id": 3 + } + } + }, + "HierarchyControllerDeploymentState": { + "fields": { + "hnc": { + "type": "DeploymentState", + "id": 1 + }, + "extension": { + "type": "DeploymentState", + "id": 2 + } + } + }, + "HierarchyControllerVersion": { + "fields": { + "hnc": { + "type": "string", + "id": 1 + }, + "extension": { + "type": "string", + "id": 2 + } + } + }, + "HierarchyControllerState": { + "fields": { + "version": { + "type": "HierarchyControllerVersion", + "id": 1 + }, + "state": { + "type": "HierarchyControllerDeploymentState", + "id": 2 + } + } + }, + "OperatorState": { + "fields": { + "version": { + "type": "string", + "id": 1 + }, + "deploymentState": { + "type": "DeploymentState", + "id": 2 + }, + "errors": { + "rule": "repeated", + "type": "InstallError", + "id": 3 + } + } + }, + "InstallError": { + "fields": { + "errorMessage": { + "type": "string", + "id": 1 + } + } + }, + "ConfigSyncState": { + "fields": { + "version": { + "type": "ConfigSyncVersion", + "id": 1 + }, + "deploymentState": { + "type": "ConfigSyncDeploymentState", + "id": 2 + }, + "syncState": { + "type": "SyncState", + "id": 3 + } + } + }, + "ConfigSyncVersion": { + "fields": { + "importer": { + "type": "string", + "id": 1 + }, + "syncer": { + "type": "string", + "id": 2 + }, + "gitSync": { + "type": "string", + "id": 3 + }, + "monitor": { + "type": "string", + "id": 4 + }, + "reconcilerManager": { + "type": "string", + "id": 5 + }, + "rootReconciler": { + "type": "string", + "id": 6 + } + } + }, + "ConfigSyncDeploymentState": { + "fields": { + "importer": { + "type": "DeploymentState", + "id": 1 + }, + "syncer": { + "type": "DeploymentState", + "id": 2 + }, + "gitSync": { + "type": "DeploymentState", + "id": 3 + }, + "monitor": { + "type": "DeploymentState", + "id": 4 + }, + "reconcilerManager": { + "type": "DeploymentState", + "id": 5 + }, + "rootReconciler": { + "type": "DeploymentState", + "id": 6 + } + } + }, + "SyncState": { + "fields": { + "sourceToken": { + "type": "string", + "id": 1 + }, + "importToken": { + "type": "string", + "id": 2 + }, + "syncToken": { + "type": "string", + "id": 3 + }, + "lastSync": { + "type": "string", + "id": 4, + "options": { + "deprecated": true + } + }, + "lastSyncTime": { + "type": "google.protobuf.Timestamp", + "id": 7 + }, + "code": { + "type": "SyncCode", + "id": 5 + }, + "errors": { + "rule": "repeated", + "type": "SyncError", + "id": 6 + } + }, + "nested": { + "SyncCode": { + "values": { + "SYNC_CODE_UNSPECIFIED": 0, + "SYNCED": 1, + "PENDING": 2, + "ERROR": 3, + "NOT_CONFIGURED": 4, + "NOT_INSTALLED": 5, + "UNAUTHORIZED": 6, + "UNREACHABLE": 7 + } + } + } + }, + "SyncError": { + "fields": { + "code": { + "type": "string", + "id": 1 + }, + "errorMessage": { + "type": "string", + "id": 2 + }, + "errorResources": { + "rule": "repeated", + "type": "ErrorResource", + "id": 3 + } + } + }, + "ErrorResource": { + "fields": { + "sourcePath": { + "type": "string", + "id": 1 + }, + "resourceName": { + "type": "string", + "id": 2 + }, + "resourceNamespace": { + "type": "string", + "id": 3 + }, + "resourceGvk": { + "type": "GroupVersionKind", + "id": 4 + } + } + }, + "GroupVersionKind": { + "fields": { + "group": { + "type": "string", + "id": 1 + }, + "version": { + "type": "string", + "id": 2 + }, + "kind": { + "type": "string", + "id": 3 + } + } + }, + "PolicyControllerState": { + "fields": { + "version": { + "type": "PolicyControllerVersion", + "id": 1 + }, + "deploymentState": { + "type": "GatekeeperDeploymentState", + "id": 2 + } + } + }, + "PolicyControllerVersion": { + "fields": { + "version": { + "type": "string", + "id": 1 + } + } + }, + "BinauthzState": { + "fields": { + "webhook": { + "type": "DeploymentState", + "id": 1 + }, + "version": { + "type": "BinauthzVersion", + "id": 2 + } + } + }, + "BinauthzVersion": { + "fields": { + "webhookVersion": { + "type": "string", + "id": 1 + } + } + }, + "GatekeeperDeploymentState": { + "fields": { + "gatekeeperControllerManagerState": { + "type": "DeploymentState", + "id": 1 + }, + "gatekeeperAudit": { + "type": "DeploymentState", + "id": 2 + }, + "gatekeeperMutation": { + "type": "DeploymentState", + "id": 3 + } + } + } + } + }, + "v1beta": { + "options": { + "csharp_namespace": "Google.Cloud.GkeHub.ConfigManagement.V1Beta", + "go_package": "google.golang.org/genproto/googleapis/cloud/gkehub/configmanagement/v1beta;configmanagement", + "java_multiple_files": true, + "java_outer_classname": "ConfigManagementProto", + "java_package": "com.google.cloud.gkehub.configmanagement.v1beta", + "php_namespace": "Google\\Cloud\\GkeHub\\ConfigManagement\\V1beta", + "ruby_package": "Google::Cloud::GkeHub::ConfigManagement::V1beta" + }, + "nested": { + "DeploymentState": { + "values": { + "DEPLOYMENT_STATE_UNSPECIFIED": 0, + "NOT_INSTALLED": 1, + "INSTALLED": 2, + "ERROR": 3 + } + }, + "MembershipState": { + "fields": { + "clusterName": { + "type": "string", + "id": 1 + }, + "membershipSpec": { + "type": "MembershipSpec", + "id": 2 + }, + "operatorState": { + "type": "OperatorState", + "id": 3 + }, + "configSyncState": { + "type": "ConfigSyncState", + "id": 4 + }, + "policyControllerState": { + "type": "PolicyControllerState", + "id": 5 + }, + "binauthzState": { + "type": "BinauthzState", + "id": 6 + }, + "hierarchyControllerState": { + "type": "HierarchyControllerState", + "id": 7 + } + } + }, + "MembershipSpec": { + "fields": { + "configSync": { + "type": "ConfigSync", + "id": 1 + }, + "policyController": { + "type": "PolicyController", + "id": 2 + }, + "binauthz": { + "type": "BinauthzConfig", + "id": 3 + }, + "hierarchyController": { + "type": "HierarchyControllerConfig", + "id": 4 + }, + "version": { + "type": "string", + "id": 10 + } + } + }, + "ConfigSync": { + "fields": { + "git": { + "type": "GitConfig", + "id": 7 + }, + "sourceFormat": { + "type": "string", + "id": 8 + } + } + }, + "GitConfig": { + "fields": { + "syncRepo": { + "type": "string", + "id": 1 + }, + "syncBranch": { + "type": "string", + "id": 2 + }, + "policyDir": { + "type": "string", + "id": 3 + }, + "syncWaitSecs": { + "type": "int64", + "id": 4 + }, + "syncRev": { + "type": "string", + "id": 5 + }, + "secretType": { + "type": "string", + "id": 6 + }, + "httpsProxy": { + "type": "string", + "id": 7 + }, + "gcpServiceAccountEmail": { + "type": "string", + "id": 8 + } + } + }, + "PolicyController": { + "oneofs": { + "_templateLibraryInstalled": { + "oneof": [ + "templateLibraryInstalled" + ] + }, + "_auditIntervalSeconds": { + "oneof": [ + "auditIntervalSeconds" + ] + } + }, + "fields": { + "enabled": { + "type": "bool", + "id": 1 + }, + "templateLibraryInstalled": { + "type": "bool", + "id": 2, + "options": { + "proto3_optional": true + } + }, + "auditIntervalSeconds": { + "type": "int64", + "id": 3, + "options": { + "proto3_optional": true + } + }, + "exemptableNamespaces": { + "rule": "repeated", + "type": "string", + "id": 4 + }, + "referentialRulesEnabled": { + "type": "bool", + "id": 5 + }, + "logDeniesEnabled": { + "type": "bool", + "id": 6 + } + } + }, + "BinauthzConfig": { + "fields": { + "enabled": { + "type": "bool", + "id": 1 + } + } + }, + "HierarchyControllerConfig": { + "fields": { + "enabled": { + "type": "bool", + "id": 1 + }, + "enablePodTreeLabels": { + "type": "bool", + "id": 2 + }, + "enableHierarchicalResourceQuota": { + "type": "bool", + "id": 3 + } + } + }, + "HierarchyControllerDeploymentState": { + "fields": { + "hnc": { + "type": "DeploymentState", + "id": 1 + }, + "extension": { + "type": "DeploymentState", + "id": 2 + } + } + }, + "HierarchyControllerVersion": { + "fields": { + "hnc": { + "type": "string", + "id": 1 + }, + "extension": { + "type": "string", + "id": 2 + } + } + }, + "HierarchyControllerState": { + "fields": { + "version": { + "type": "HierarchyControllerVersion", + "id": 1 + }, + "state": { + "type": "HierarchyControllerDeploymentState", + "id": 2 + } + } + }, + "OperatorState": { + "fields": { + "version": { + "type": "string", + "id": 1 + }, + "deploymentState": { + "type": "DeploymentState", + "id": 2 + }, + "errors": { + "rule": "repeated", + "type": "InstallError", + "id": 3 + } + } + }, + "InstallError": { + "fields": { + "errorMessage": { + "type": "string", + "id": 1 + } + } + }, + "ConfigSyncState": { + "fields": { + "version": { + "type": "ConfigSyncVersion", + "id": 1 + }, + "deploymentState": { + "type": "ConfigSyncDeploymentState", + "id": 2 + }, + "syncState": { + "type": "SyncState", + "id": 3 + } + } + }, + "ConfigSyncVersion": { + "fields": { + "importer": { + "type": "string", + "id": 1 + }, + "syncer": { + "type": "string", + "id": 2 + }, + "gitSync": { + "type": "string", + "id": 3 + }, + "monitor": { + "type": "string", + "id": 4 + }, + "reconcilerManager": { + "type": "string", + "id": 5 + }, + "rootReconciler": { + "type": "string", + "id": 6 + } + } + }, + "ConfigSyncDeploymentState": { + "fields": { + "importer": { + "type": "DeploymentState", + "id": 1 + }, + "syncer": { + "type": "DeploymentState", + "id": 2 + }, + "gitSync": { + "type": "DeploymentState", + "id": 3 + }, + "monitor": { + "type": "DeploymentState", + "id": 4 + }, + "reconcilerManager": { + "type": "DeploymentState", + "id": 5 + }, + "rootReconciler": { + "type": "DeploymentState", + "id": 6 + } + } + }, + "SyncState": { + "fields": { + "sourceToken": { + "type": "string", + "id": 1 + }, + "importToken": { + "type": "string", + "id": 2 + }, + "syncToken": { + "type": "string", + "id": 3 + }, + "lastSync": { + "type": "string", + "id": 4, + "options": { + "deprecated": true + } + }, + "lastSyncTime": { + "type": "google.protobuf.Timestamp", + "id": 7 + }, + "code": { + "type": "SyncCode", + "id": 5 + }, + "errors": { + "rule": "repeated", + "type": "SyncError", + "id": 6 + } + }, + "nested": { + "SyncCode": { + "values": { + "SYNC_CODE_UNSPECIFIED": 0, + "SYNCED": 1, + "PENDING": 2, + "ERROR": 3, + "NOT_CONFIGURED": 4, + "NOT_INSTALLED": 5, + "UNAUTHORIZED": 6, + "UNREACHABLE": 7 + } + } + } + }, + "SyncError": { + "fields": { + "code": { + "type": "string", + "id": 1 + }, + "errorMessage": { + "type": "string", + "id": 2 + }, + "errorResources": { + "rule": "repeated", + "type": "ErrorResource", + "id": 3 + } + } + }, + "ErrorResource": { + "fields": { + "sourcePath": { + "type": "string", + "id": 1 + }, + "resourceName": { + "type": "string", + "id": 2 + }, + "resourceNamespace": { + "type": "string", + "id": 3 + }, + "resourceGvk": { + "type": "GroupVersionKind", + "id": 4 + } + } + }, + "GroupVersionKind": { + "fields": { + "group": { + "type": "string", + "id": 1 + }, + "version": { + "type": "string", + "id": 2 + }, + "kind": { + "type": "string", + "id": 3 + } + } + }, + "PolicyControllerState": { + "fields": { + "version": { + "type": "PolicyControllerVersion", + "id": 1 + }, + "deploymentState": { + "type": "GatekeeperDeploymentState", + "id": 2 + } + } + }, + "PolicyControllerVersion": { + "fields": { + "version": { + "type": "string", + "id": 1 + } + } + }, + "BinauthzState": { + "fields": { + "webhook": { + "type": "DeploymentState", + "id": 1 + }, + "version": { + "type": "BinauthzVersion", + "id": 2 + } + } + }, + "BinauthzVersion": { + "fields": { + "webhookVersion": { + "type": "string", + "id": 1 + } + } + }, + "GatekeeperDeploymentState": { + "fields": { + "gatekeeperControllerManagerState": { + "type": "DeploymentState", + "id": 1 + }, + "gatekeeperAudit": { + "type": "DeploymentState", + "id": 2 + } + } + } + } + } + } }, - "reservedName": { - "rule": "repeated", - "type": "string", - "id": 10 - } - }, - "nested": { - "ExtensionRange": { - "fields": { - "start": { - "type": "int32", - "id": 1 + "v1": { + "options": { + "csharp_namespace": "Google.Cloud.GkeHub.V1", + "go_package": "google.golang.org/genproto/googleapis/cloud/gkehub/v1;gkehub", + "java_multiple_files": true, + "java_outer_classname": "ServiceProto", + "java_package": "com.google.cloud.gkehub.v1", + "php_namespace": "Google\\Cloud\\GkeHub\\V1", + "ruby_package": "Google::Cloud::GkeHub::V1" + }, + "nested": { + "Feature": { + "options": { + "(google.api.resource).type": "gkehub.googleapis.com/Feature", + "(google.api.resource).pattern": "projects/{project}/locations/{location}/features/{feature}" + }, + "fields": { + "name": { + "type": "string", + "id": 1, + "options": { + "(google.api.field_behavior)": "OUTPUT_ONLY" + } + }, + "labels": { + "keyType": "string", + "type": "string", + "id": 2 + }, + "resourceState": { + "type": "FeatureResourceState", + "id": 3, + "options": { + "(google.api.field_behavior)": "OUTPUT_ONLY" + } + }, + "spec": { + "type": "CommonFeatureSpec", + "id": 4, + "options": { + "(google.api.field_behavior)": "OPTIONAL" + } + }, + "membershipSpecs": { + "keyType": "string", + "type": "MembershipFeatureSpec", + "id": 5, + "options": { + "(google.api.field_behavior)": "OPTIONAL" + } + }, + "state": { + "type": "CommonFeatureState", + "id": 6, + "options": { + "(google.api.field_behavior)": "OUTPUT_ONLY" + } + }, + "membershipStates": { + "keyType": "string", + "type": "MembershipFeatureState", + "id": 7, + "options": { + "(google.api.field_behavior)": "OUTPUT_ONLY" + } + }, + "createTime": { + "type": "google.protobuf.Timestamp", + "id": 8, + "options": { + "(google.api.field_behavior)": "OUTPUT_ONLY" + } + }, + "updateTime": { + "type": "google.protobuf.Timestamp", + "id": 9, + "options": { + "(google.api.field_behavior)": "OUTPUT_ONLY" + } + }, + "deleteTime": { + "type": "google.protobuf.Timestamp", + "id": 10, + "options": { + "(google.api.field_behavior)": "OUTPUT_ONLY" + } + } + } + }, + "FeatureResourceState": { + "fields": { + "state": { + "type": "State", + "id": 1 + } + }, + "nested": { + "State": { + "values": { + "STATE_UNSPECIFIED": 0, + "ENABLING": 1, + "ACTIVE": 2, + "DISABLING": 3, + "UPDATING": 4, + "SERVICE_UPDATING": 5 + } + } + } + }, + "FeatureState": { + "fields": { + "code": { + "type": "Code", + "id": 1 + }, + "description": { + "type": "string", + "id": 2 + }, + "updateTime": { + "type": "google.protobuf.Timestamp", + "id": 3 + } + }, + "nested": { + "Code": { + "values": { + "CODE_UNSPECIFIED": 0, + "OK": 1, + "WARNING": 2, + "ERROR": 3 + } + } + } + }, + "CommonFeatureSpec": { + "oneofs": { + "featureSpec": { + "oneof": [ + "multiclusteringress" + ] + } + }, + "fields": { + "multiclusteringress": { + "type": "google.cloud.gkehub.multiclusteringress.v1.FeatureSpec", + "id": 102 + } + } + }, + "CommonFeatureState": { + "fields": { + "state": { + "type": "FeatureState", + "id": 1, + "options": { + "(google.api.field_behavior)": "OUTPUT_ONLY" + } + } + } + }, + "MembershipFeatureSpec": { + "oneofs": { + "featureSpec": { + "oneof": [ + "configmanagement" + ] + } + }, + "fields": { + "configmanagement": { + "type": "google.cloud.gkehub.configmanagement.v1.MembershipSpec", + "id": 106 + } + } + }, + "MembershipFeatureState": { + "oneofs": { + "featureState": { + "oneof": [ + "configmanagement" + ] + } + }, + "fields": { + "configmanagement": { + "type": "google.cloud.gkehub.configmanagement.v1.MembershipState", + "id": 106 + }, + "state": { + "type": "FeatureState", + "id": 1 + } + } + }, + "Membership": { + "options": { + "(google.api.resource).type": "gkehub.googleapis.com/Membership", + "(google.api.resource).pattern": "projects/{project}/locations/{location}/memberships/{membership}" + }, + "oneofs": { + "type": { + "oneof": [ + "endpoint" + ] + } + }, + "fields": { + "endpoint": { + "type": "MembershipEndpoint", + "id": 4, + "options": { + "(google.api.field_behavior)": "OPTIONAL" + } + }, + "name": { + "type": "string", + "id": 1, + "options": { + "(google.api.field_behavior)": "OUTPUT_ONLY" + } + }, + "labels": { + "keyType": "string", + "type": "string", + "id": 2, + "options": { + "(google.api.field_behavior)": "OPTIONAL" + } + }, + "description": { + "type": "string", + "id": 3, + "options": { + "(google.api.field_behavior)": "OUTPUT_ONLY" + } + }, + "state": { + "type": "MembershipState", + "id": 5, + "options": { + "(google.api.field_behavior)": "OUTPUT_ONLY" + } + }, + "createTime": { + "type": "google.protobuf.Timestamp", + "id": 6, + "options": { + "(google.api.field_behavior)": "OUTPUT_ONLY" + } + }, + "updateTime": { + "type": "google.protobuf.Timestamp", + "id": 7, + "options": { + "(google.api.field_behavior)": "OUTPUT_ONLY" + } + }, + "deleteTime": { + "type": "google.protobuf.Timestamp", + "id": 8, + "options": { + "(google.api.field_behavior)": "OUTPUT_ONLY" + } + }, + "externalId": { + "type": "string", + "id": 9, + "options": { + "(google.api.field_behavior)": "OPTIONAL" + } + }, + "lastConnectionTime": { + "type": "google.protobuf.Timestamp", + "id": 10, + "options": { + "(google.api.field_behavior)": "OUTPUT_ONLY" + } + }, + "uniqueId": { + "type": "string", + "id": 11, + "options": { + "(google.api.field_behavior)": "OUTPUT_ONLY" + } + }, + "authority": { + "type": "Authority", + "id": 12, + "options": { + "(google.api.field_behavior)": "OPTIONAL" + } + } + } + }, + "MembershipEndpoint": { + "fields": { + "gkeCluster": { + "type": "GkeCluster", + "id": 1, + "options": { + "(google.api.field_behavior)": "OPTIONAL" + } + }, + "kubernetesMetadata": { + "type": "KubernetesMetadata", + "id": 2, + "options": { + "(google.api.field_behavior)": "OUTPUT_ONLY" + } + } + } + }, + "GkeCluster": { + "fields": { + "resourceLink": { + "type": "string", + "id": 1, + "options": { + "(google.api.field_behavior)": "IMMUTABLE" + } + } + } + }, + "KubernetesMetadata": { + "fields": { + "kubernetesApiServerVersion": { + "type": "string", + "id": 1, + "options": { + "(google.api.field_behavior)": "OUTPUT_ONLY" + } + }, + "nodeProviderId": { + "type": "string", + "id": 2, + "options": { + "(google.api.field_behavior)": "OUTPUT_ONLY" + } + }, + "nodeCount": { + "type": "int32", + "id": 3, + "options": { + "(google.api.field_behavior)": "OUTPUT_ONLY" + } + }, + "vcpuCount": { + "type": "int32", + "id": 4, + "options": { + "(google.api.field_behavior)": "OUTPUT_ONLY" + } + }, + "memoryMb": { + "type": "int32", + "id": 5, + "options": { + "(google.api.field_behavior)": "OUTPUT_ONLY" + } + }, + "updateTime": { + "type": "google.protobuf.Timestamp", + "id": 100, + "options": { + "(google.api.field_behavior)": "OUTPUT_ONLY" + } + } + } + }, + "MembershipState": { + "fields": { + "code": { + "type": "Code", + "id": 1, + "options": { + "(google.api.field_behavior)": "OUTPUT_ONLY" + } + } + }, + "nested": { + "Code": { + "values": { + "CODE_UNSPECIFIED": 0, + "CREATING": 1, + "READY": 2, + "DELETING": 3, + "UPDATING": 4, + "SERVICE_UPDATING": 5 + } + } + } + }, + "Authority": { + "fields": { + "issuer": { + "type": "string", + "id": 1, + "options": { + "(google.api.field_behavior)": "OPTIONAL" + } + }, + "workloadIdentityPool": { + "type": "string", + "id": 2, + "options": { + "(google.api.field_behavior)": "OUTPUT_ONLY" + } + }, + "identityProvider": { + "type": "string", + "id": 3, + "options": { + "(google.api.field_behavior)": "OUTPUT_ONLY" + } + }, + "oidcJwks": { + "type": "bytes", + "id": 4, + "options": { + "(google.api.field_behavior)": "OPTIONAL" + } + } + } + }, + "GkeHub": { + "options": { + "(google.api.default_host)": "gkehub.googleapis.com", + "(google.api.oauth_scopes)": "https://www.googleapis.com/auth/cloud-platform" + }, + "methods": { + "ListMemberships": { + "requestType": "ListMembershipsRequest", + "responseType": "ListMembershipsResponse", + "options": { + "(google.api.http).get": "/v1/{parent=projects/*/locations/*}/memberships", + "(google.api.method_signature)": "parent" + }, + "parsedOptions": [ + { + "(google.api.http)": { + "get": "/v1/{parent=projects/*/locations/*}/memberships" + } + }, + { + "(google.api.method_signature)": "parent" + } + ] + }, + "ListFeatures": { + "requestType": "ListFeaturesRequest", + "responseType": "ListFeaturesResponse", + "options": { + "(google.api.http).get": "/v1/{parent=projects/*/locations/*}/features", + "(google.api.method_signature)": "parent" + }, + "parsedOptions": [ + { + "(google.api.http)": { + "get": "/v1/{parent=projects/*/locations/*}/features" + } + }, + { + "(google.api.method_signature)": "parent" + } + ] + }, + "GetMembership": { + "requestType": "GetMembershipRequest", + "responseType": "Membership", + "options": { + "(google.api.http).get": "/v1/{name=projects/*/locations/*/memberships/*}", + "(google.api.method_signature)": "name" + }, + "parsedOptions": [ + { + "(google.api.http)": { + "get": "/v1/{name=projects/*/locations/*/memberships/*}" + } + }, + { + "(google.api.method_signature)": "name" + } + ] + }, + "GetFeature": { + "requestType": "GetFeatureRequest", + "responseType": "Feature", + "options": { + "(google.api.http).get": "/v1/{name=projects/*/locations/*/features/*}", + "(google.api.method_signature)": "name" + }, + "parsedOptions": [ + { + "(google.api.http)": { + "get": "/v1/{name=projects/*/locations/*/features/*}" + } + }, + { + "(google.api.method_signature)": "name" + } + ] + }, + "CreateMembership": { + "requestType": "CreateMembershipRequest", + "responseType": "google.longrunning.Operation", + "options": { + "(google.api.http).post": "/v1/{parent=projects/*/locations/*}/memberships", + "(google.api.http).body": "resource", + "(google.api.method_signature)": "parent,resource,membership_id", + "(google.longrunning.operation_info).response_type": "Membership", + "(google.longrunning.operation_info).metadata_type": "OperationMetadata" + }, + "parsedOptions": [ + { + "(google.api.http)": { + "post": "/v1/{parent=projects/*/locations/*}/memberships", + "body": "resource" + } + }, + { + "(google.api.method_signature)": "parent,resource,membership_id" + }, + { + "(google.longrunning.operation_info)": { + "response_type": "Membership", + "metadata_type": "OperationMetadata" + } + } + ] + }, + "CreateFeature": { + "requestType": "CreateFeatureRequest", + "responseType": "google.longrunning.Operation", + "options": { + "(google.api.http).post": "/v1/{parent=projects/*/locations/*}/features", + "(google.api.http).body": "resource", + "(google.api.method_signature)": "parent,resource,feature_id", + "(google.longrunning.operation_info).response_type": "Feature", + "(google.longrunning.operation_info).metadata_type": "OperationMetadata" + }, + "parsedOptions": [ + { + "(google.api.http)": { + "post": "/v1/{parent=projects/*/locations/*}/features", + "body": "resource" + } + }, + { + "(google.api.method_signature)": "parent,resource,feature_id" + }, + { + "(google.longrunning.operation_info)": { + "response_type": "Feature", + "metadata_type": "OperationMetadata" + } + } + ] + }, + "DeleteMembership": { + "requestType": "DeleteMembershipRequest", + "responseType": "google.longrunning.Operation", + "options": { + "(google.api.http).delete": "/v1/{name=projects/*/locations/*/memberships/*}", + "(google.api.method_signature)": "name", + "(google.longrunning.operation_info).response_type": "google.protobuf.Empty", + "(google.longrunning.operation_info).metadata_type": "OperationMetadata" + }, + "parsedOptions": [ + { + "(google.api.http)": { + "delete": "/v1/{name=projects/*/locations/*/memberships/*}" + } + }, + { + "(google.api.method_signature)": "name" + }, + { + "(google.longrunning.operation_info)": { + "response_type": "google.protobuf.Empty", + "metadata_type": "OperationMetadata" + } + } + ] + }, + "DeleteFeature": { + "requestType": "DeleteFeatureRequest", + "responseType": "google.longrunning.Operation", + "options": { + "(google.api.http).delete": "/v1/{name=projects/*/locations/*/features/*}", + "(google.api.method_signature)": "name", + "(google.longrunning.operation_info).response_type": "google.protobuf.Empty", + "(google.longrunning.operation_info).metadata_type": "OperationMetadata" + }, + "parsedOptions": [ + { + "(google.api.http)": { + "delete": "/v1/{name=projects/*/locations/*/features/*}" + } + }, + { + "(google.api.method_signature)": "name" + }, + { + "(google.longrunning.operation_info)": { + "response_type": "google.protobuf.Empty", + "metadata_type": "OperationMetadata" + } + } + ] + }, + "UpdateMembership": { + "requestType": "UpdateMembershipRequest", + "responseType": "google.longrunning.Operation", + "options": { + "(google.api.http).patch": "/v1/{name=projects/*/locations/*/memberships/*}", + "(google.api.http).body": "resource", + "(google.api.method_signature)": "name,resource,update_mask", + "(google.longrunning.operation_info).response_type": "Membership", + "(google.longrunning.operation_info).metadata_type": "OperationMetadata" + }, + "parsedOptions": [ + { + "(google.api.http)": { + "patch": "/v1/{name=projects/*/locations/*/memberships/*}", + "body": "resource" + } + }, + { + "(google.api.method_signature)": "name,resource,update_mask" + }, + { + "(google.longrunning.operation_info)": { + "response_type": "Membership", + "metadata_type": "OperationMetadata" + } + } + ] + }, + "UpdateFeature": { + "requestType": "UpdateFeatureRequest", + "responseType": "google.longrunning.Operation", + "options": { + "(google.api.http).patch": "/v1/{name=projects/*/locations/*/features/*}", + "(google.api.http).body": "resource", + "(google.api.method_signature)": "name,resource,update_mask", + "(google.longrunning.operation_info).response_type": "Feature", + "(google.longrunning.operation_info).metadata_type": "OperationMetadata" + }, + "parsedOptions": [ + { + "(google.api.http)": { + "patch": "/v1/{name=projects/*/locations/*/features/*}", + "body": "resource" + } + }, + { + "(google.api.method_signature)": "name,resource,update_mask" + }, + { + "(google.longrunning.operation_info)": { + "response_type": "Feature", + "metadata_type": "OperationMetadata" + } + } + ] + }, + "GenerateConnectManifest": { + "requestType": "GenerateConnectManifestRequest", + "responseType": "GenerateConnectManifestResponse", + "options": { + "(google.api.http).get": "/v1/{name=projects/*/locations/*/memberships/*}:generateConnectManifest" + }, + "parsedOptions": [ + { + "(google.api.http)": { + "get": "/v1/{name=projects/*/locations/*/memberships/*}:generateConnectManifest" + } + } + ] + } + } + }, + "ListMembershipsRequest": { + "fields": { + "parent": { + "type": "string", + "id": 1, + "options": { + "(google.api.field_behavior)": "REQUIRED", + "(google.api.resource_reference).child_type": "gkehub.googleapis.com/Membership" + } + }, + "pageSize": { + "type": "int32", + "id": 2, + "options": { + "(google.api.field_behavior)": "OPTIONAL" + } + }, + "pageToken": { + "type": "string", + "id": 3, + "options": { + "(google.api.field_behavior)": "OPTIONAL" + } + }, + "filter": { + "type": "string", + "id": 4, + "options": { + "(google.api.field_behavior)": "OPTIONAL" + } + }, + "orderBy": { + "type": "string", + "id": 5, + "options": { + "(google.api.field_behavior)": "OPTIONAL" + } + } + } + }, + "ListMembershipsResponse": { + "fields": { + "resources": { + "rule": "repeated", + "type": "Membership", + "id": 1 + }, + "nextPageToken": { + "type": "string", + "id": 2 + }, + "unreachable": { + "rule": "repeated", + "type": "string", + "id": 3 + } + } + }, + "GetMembershipRequest": { + "fields": { + "name": { + "type": "string", + "id": 1, + "options": { + "(google.api.field_behavior)": "REQUIRED", + "(google.api.resource_reference).type": "gkehub.googleapis.com/Membership" + } + } + } + }, + "CreateMembershipRequest": { + "fields": { + "parent": { + "type": "string", + "id": 1, + "options": { + "(google.api.field_behavior)": "REQUIRED", + "(google.api.resource_reference).child_type": "gkehub.googleapis.com/Membership" + } + }, + "membershipId": { + "type": "string", + "id": 2, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } + }, + "resource": { + "type": "Membership", + "id": 3, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } + }, + "requestId": { + "type": "string", + "id": 4, + "options": { + "(google.api.field_behavior)": "OPTIONAL" + } + } + } + }, + "DeleteMembershipRequest": { + "fields": { + "name": { + "type": "string", + "id": 1, + "options": { + "(google.api.field_behavior)": "REQUIRED", + "(google.api.resource_reference).type": "gkehub.googleapis.com/Membership" + } + }, + "requestId": { + "type": "string", + "id": 2, + "options": { + "(google.api.field_behavior)": "OPTIONAL" + } + } + } + }, + "UpdateMembershipRequest": { + "fields": { + "name": { + "type": "string", + "id": 1, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } + }, + "updateMask": { + "type": "google.protobuf.FieldMask", + "id": 2, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } + }, + "resource": { + "type": "Membership", + "id": 3, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } + }, + "requestId": { + "type": "string", + "id": 4, + "options": { + "(google.api.field_behavior)": "OPTIONAL" + } + } + } + }, + "GenerateConnectManifestRequest": { + "fields": { + "name": { + "type": "string", + "id": 1, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } + }, + "namespace": { + "type": "string", + "id": 2, + "options": { + "(google.api.field_behavior)": "OPTIONAL" + } + }, + "proxy": { + "type": "bytes", + "id": 3, + "options": { + "(google.api.field_behavior)": "OPTIONAL" + } + }, + "version": { + "type": "string", + "id": 4, + "options": { + "(google.api.field_behavior)": "OPTIONAL" + } + }, + "isUpgrade": { + "type": "bool", + "id": 5, + "options": { + "(google.api.field_behavior)": "OPTIONAL" + } + }, + "registry": { + "type": "string", + "id": 6, + "options": { + "(google.api.field_behavior)": "OPTIONAL" + } + }, + "imagePullSecretContent": { + "type": "bytes", + "id": 7, + "options": { + "(google.api.field_behavior)": "OPTIONAL" + } + } + } }, - "end": { - "type": "int32", - "id": 2 + "GenerateConnectManifestResponse": { + "fields": { + "manifest": { + "rule": "repeated", + "type": "ConnectAgentResource", + "id": 1 + } + } }, - "options": { - "type": "ExtensionRangeOptions", - "id": 3 - } - } - }, - "ReservedRange": { - "fields": { - "start": { - "type": "int32", - "id": 1 + "ConnectAgentResource": { + "fields": { + "type": { + "type": "TypeMeta", + "id": 1 + }, + "manifest": { + "type": "string", + "id": 2 + } + } }, - "end": { - "type": "int32", - "id": 2 - } - } - } - } - }, - "ExtensionRangeOptions": { - "fields": { - "uninterpretedOption": { - "rule": "repeated", - "type": "UninterpretedOption", - "id": 999 - } - }, - "extensions": [ - [ - 1000, - 536870911 - ] - ] - }, - "FieldDescriptorProto": { - "fields": { - "name": { - "type": "string", - "id": 1 - }, - "number": { - "type": "int32", - "id": 3 - }, - "label": { - "type": "Label", - "id": 4 - }, - "type": { - "type": "Type", - "id": 5 - }, - "typeName": { - "type": "string", - "id": 6 - }, - "extendee": { - "type": "string", - "id": 2 - }, - "defaultValue": { - "type": "string", - "id": 7 - }, - "oneofIndex": { - "type": "int32", - "id": 9 - }, - "jsonName": { - "type": "string", - "id": 10 - }, - "options": { - "type": "FieldOptions", - "id": 8 - }, - "proto3Optional": { - "type": "bool", - "id": 17 - } - }, - "nested": { - "Type": { - "values": { - "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": { - "values": { - "LABEL_OPTIONAL": 1, - "LABEL_REQUIRED": 2, - "LABEL_REPEATED": 3 - } - } - } - }, - "OneofDescriptorProto": { - "fields": { - "name": { - "type": "string", - "id": 1 - }, - "options": { - "type": "OneofOptions", - "id": 2 - } - } - }, - "EnumDescriptorProto": { - "fields": { - "name": { - "type": "string", - "id": 1 - }, - "value": { - "rule": "repeated", - "type": "EnumValueDescriptorProto", - "id": 2 - }, - "options": { - "type": "EnumOptions", - "id": 3 - }, - "reservedRange": { - "rule": "repeated", - "type": "EnumReservedRange", - "id": 4 - }, - "reservedName": { - "rule": "repeated", - "type": "string", - "id": 5 - } - }, - "nested": { - "EnumReservedRange": { - "fields": { - "start": { - "type": "int32", - "id": 1 + "TypeMeta": { + "fields": { + "kind": { + "type": "string", + "id": 1 + }, + "apiVersion": { + "type": "string", + "id": 2 + } + } + }, + "ListFeaturesRequest": { + "fields": { + "parent": { + "type": "string", + "id": 1 + }, + "pageSize": { + "type": "int32", + "id": 2 + }, + "pageToken": { + "type": "string", + "id": 3 + }, + "filter": { + "type": "string", + "id": 4 + }, + "orderBy": { + "type": "string", + "id": 5 + } + } }, - "end": { - "type": "int32", - "id": 2 - } - } - } - } - }, - "EnumValueDescriptorProto": { - "fields": { - "name": { - "type": "string", - "id": 1 - }, - "number": { - "type": "int32", - "id": 2 - }, - "options": { - "type": "EnumValueOptions", - "id": 3 - } - } - }, - "ServiceDescriptorProto": { - "fields": { - "name": { - "type": "string", - "id": 1 - }, - "method": { - "rule": "repeated", - "type": "MethodDescriptorProto", - "id": 2 - }, - "options": { - "type": "ServiceOptions", - "id": 3 - } - } - }, - "MethodDescriptorProto": { - "fields": { - "name": { - "type": "string", - "id": 1 - }, - "inputType": { - "type": "string", - "id": 2 - }, - "outputType": { - "type": "string", - "id": 3 - }, - "options": { - "type": "MethodOptions", - "id": 4 - }, - "clientStreaming": { - "type": "bool", - "id": 5, - "options": { - "default": false - } - }, - "serverStreaming": { - "type": "bool", - "id": 6, - "options": { - "default": false - } - } - } - }, - "FileOptions": { - "fields": { - "javaPackage": { - "type": "string", - "id": 1 - }, - "javaOuterClassname": { - "type": "string", - "id": 8 - }, - "javaMultipleFiles": { - "type": "bool", - "id": 10, - "options": { - "default": false - } - }, - "javaGenerateEqualsAndHash": { - "type": "bool", - "id": 20, - "options": { - "deprecated": true - } - }, - "javaStringCheckUtf8": { - "type": "bool", - "id": 27, - "options": { - "default": false - } - }, - "optimizeFor": { - "type": "OptimizeMode", - "id": 9, - "options": { - "default": "SPEED" - } - }, - "goPackage": { - "type": "string", - "id": 11 - }, - "ccGenericServices": { - "type": "bool", - "id": 16, - "options": { - "default": false - } - }, - "javaGenericServices": { - "type": "bool", - "id": 17, - "options": { - "default": false - } - }, - "pyGenericServices": { - "type": "bool", - "id": 18, - "options": { - "default": false - } - }, - "phpGenericServices": { - "type": "bool", - "id": 42, - "options": { - "default": false - } - }, - "deprecated": { - "type": "bool", - "id": 23, - "options": { - "default": false - } - }, - "ccEnableArenas": { - "type": "bool", - "id": 31, - "options": { - "default": true - } - }, - "objcClassPrefix": { - "type": "string", - "id": 36 - }, - "csharpNamespace": { - "type": "string", - "id": 37 - }, - "swiftPrefix": { - "type": "string", - "id": 39 - }, - "phpClassPrefix": { - "type": "string", - "id": 40 - }, - "phpNamespace": { - "type": "string", - "id": 41 - }, - "phpMetadataNamespace": { - "type": "string", - "id": 44 - }, - "rubyPackage": { - "type": "string", - "id": 45 - }, - "uninterpretedOption": { - "rule": "repeated", - "type": "UninterpretedOption", - "id": 999 - } - }, - "extensions": [ - [ - 1000, - 536870911 - ] - ], - "reserved": [ - [ - 38, - 38 - ] - ], - "nested": { - "OptimizeMode": { - "values": { - "SPEED": 1, - "CODE_SIZE": 2, - "LITE_RUNTIME": 3 - } - } - } - }, - "MessageOptions": { - "fields": { - "messageSetWireFormat": { - "type": "bool", - "id": 1, - "options": { - "default": false + "ListFeaturesResponse": { + "fields": { + "resources": { + "rule": "repeated", + "type": "Feature", + "id": 1 + }, + "nextPageToken": { + "type": "string", + "id": 2 + } + } + }, + "GetFeatureRequest": { + "fields": { + "name": { + "type": "string", + "id": 1 + } + } + }, + "CreateFeatureRequest": { + "fields": { + "parent": { + "type": "string", + "id": 1 + }, + "featureId": { + "type": "string", + "id": 2 + }, + "resource": { + "type": "Feature", + "id": 3 + }, + "requestId": { + "type": "string", + "id": 4, + "options": { + "(google.api.field_behavior)": "OPTIONAL" + } + } + } + }, + "DeleteFeatureRequest": { + "fields": { + "name": { + "type": "string", + "id": 1 + }, + "force": { + "type": "bool", + "id": 2 + }, + "requestId": { + "type": "string", + "id": 3, + "options": { + "(google.api.field_behavior)": "OPTIONAL" + } + } + } + }, + "UpdateFeatureRequest": { + "fields": { + "name": { + "type": "string", + "id": 1 + }, + "updateMask": { + "type": "google.protobuf.FieldMask", + "id": 2 + }, + "resource": { + "type": "Feature", + "id": 3 + }, + "requestId": { + "type": "string", + "id": 4, + "options": { + "(google.api.field_behavior)": "OPTIONAL" + } + } + } + }, + "OperationMetadata": { + "fields": { + "createTime": { + "type": "google.protobuf.Timestamp", + "id": 1, + "options": { + "(google.api.field_behavior)": "OUTPUT_ONLY" + } + }, + "endTime": { + "type": "google.protobuf.Timestamp", + "id": 2, + "options": { + "(google.api.field_behavior)": "OUTPUT_ONLY" + } + }, + "target": { + "type": "string", + "id": 3, + "options": { + "(google.api.field_behavior)": "OUTPUT_ONLY" + } + }, + "verb": { + "type": "string", + "id": 4, + "options": { + "(google.api.field_behavior)": "OUTPUT_ONLY" + } + }, + "statusDetail": { + "type": "string", + "id": 5, + "options": { + "(google.api.field_behavior)": "OUTPUT_ONLY" + } + }, + "cancelRequested": { + "type": "bool", + "id": 6, + "options": { + "(google.api.field_behavior)": "OUTPUT_ONLY" + } + }, + "apiVersion": { + "type": "string", + "id": 7, + "options": { + "(google.api.field_behavior)": "OUTPUT_ONLY" + } + } + } + } } }, - "noStandardDescriptorAccessor": { - "type": "bool", - "id": 2, - "options": { - "default": false + "multiclusteringress": { + "nested": { + "v1": { + "options": { + "csharp_namespace": "Google.Cloud.GkeHub.MultiClusterIngress.V1", + "go_package": "google.golang.org/genproto/googleapis/cloud/gkehub/multiclusteringress/v1;multiclusteringress", + "java_multiple_files": true, + "java_outer_classname": "MultiClusterIngressProto", + "java_package": "com.google.cloud.gkehub.multiclusteringress.v1", + "php_namespace": "Google\\Cloud\\GkeHub\\MultiClusterIngress\\V1", + "ruby_package": "Google::Cloud::GkeHub::MultiClusterIngress::V1" + }, + "nested": { + "FeatureSpec": { + "fields": { + "configMembership": { + "type": "string", + "id": 1 + } + } + } + } + }, + "v1alpha": { + "options": { + "csharp_namespace": "Google.Cloud.GkeHub.MultiClusterIngress.V1Alpha", + "go_package": "google.golang.org/genproto/googleapis/cloud/gkehub/multiclusteringress/v1alpha;multiclusteringress", + "java_multiple_files": true, + "java_outer_classname": "MultiClusterIngressProto", + "java_package": "com.google.cloud.gkehub.multiclusteringress.v1alpha", + "php_namespace": "Google\\Cloud\\GkeHub\\MultiClusterIngress\\V1alpha", + "ruby_package": "Google::Cloud::GkeHub::MultiClusterIngress::V1alpha" + }, + "nested": { + "Billing": { + "values": { + "BILLING_UNSPECIFIED": 0, + "PAY_AS_YOU_GO": 1, + "ANTHOS_LICENSE": 2 + } + }, + "FeatureSpec": { + "fields": { + "configMembership": { + "type": "string", + "id": 1 + }, + "billing": { + "type": "Billing", + "id": 2 + } + } + } + } + }, + "v1beta": { + "options": { + "csharp_namespace": "Google.Cloud.GkeHub.MultiClusterIngress.V1Beta", + "go_package": "google.golang.org/genproto/googleapis/cloud/gkehub/multiclusteringress/v1beta;multiclusteringress", + "java_multiple_files": true, + "java_outer_classname": "MultiClusterIngressProto", + "java_package": "com.google.cloud.gkehub.multiclusteringress.v1beta", + "php_namespace": "Google\\Cloud\\GkeHub\\MultiClusterIngress\\V1beta", + "ruby_package": "Google::Cloud::GkeHub::MultiClusterIngress::V1beta" + }, + "nested": { + "Billing": { + "values": { + "BILLING_UNSPECIFIED": 0, + "PAY_AS_YOU_GO": 1, + "ANTHOS_LICENSE": 2 + } + }, + "FeatureSpec": { + "fields": { + "configMembership": { + "type": "string", + "id": 1 + }, + "billing": { + "type": "Billing", + "id": 2 + } + } + } + } + } } }, - "deprecated": { - "type": "bool", - "id": 3, - "options": { - "default": false + "cloudauditlogging": { + "nested": { + "v1alpha": { + "options": { + "csharp_namespace": "Google.Cloud.GkeHub.CloudAuditLogging.V1Alpha", + "go_package": "google.golang.org/genproto/googleapis/cloud/gkehub/cloudauditlogging/v1alpha;cloudauditlogging", + "java_multiple_files": true, + "java_outer_classname": "CloudAuditLoggingProto", + "java_package": "com.google.cloud.gkehub.cloudauditlogging.v1alpha", + "php_namespace": "Google\\Cloud\\GkeHub\\CloudAuditLogging\\V1alpha", + "ruby_package": "Google::Cloud::GkeHub::CloudAuditLogging::V1alpha" + }, + "nested": { + "FeatureSpec": { + "fields": { + "allowlistedServiceAccounts": { + "rule": "repeated", + "type": "string", + "id": 1 + } + } + } + } + } } }, - "mapEntry": { - "type": "bool", - "id": 7 - }, - "uninterpretedOption": { - "rule": "repeated", - "type": "UninterpretedOption", - "id": 999 - } - }, - "extensions": [ - [ - 1000, - 536870911 - ] - ], - "reserved": [ - [ - 8, - 8 - ], - [ - 9, - 9 - ] - ] - }, - "FieldOptions": { - "fields": { - "ctype": { - "type": "CType", - "id": 1, + "v1alpha": { "options": { - "default": "STRING" + "csharp_namespace": "Google.Cloud.GkeHub.V1Alpha", + "go_package": "google.golang.org/genproto/googleapis/cloud/gkehub/v1alpha;gkehub", + "java_multiple_files": true, + "java_outer_classname": "ServiceProto", + "java_package": "com.google.cloud.gkehub.v1alpha", + "php_namespace": "Google\\Cloud\\GkeHub\\V1alpha", + "ruby_package": "Google::Cloud::GkeHub::V1alpha" + }, + "nested": { + "Feature": { + "options": { + "(google.api.resource).type": "gkehub.googleapis.com/Feature", + "(google.api.resource).pattern": "projects/{project}/locations/{location}/features/{feature}" + }, + "fields": { + "name": { + "type": "string", + "id": 1, + "options": { + "(google.api.field_behavior)": "OUTPUT_ONLY" + } + }, + "labels": { + "keyType": "string", + "type": "string", + "id": 2 + }, + "resourceState": { + "type": "FeatureResourceState", + "id": 3, + "options": { + "(google.api.field_behavior)": "OUTPUT_ONLY" + } + }, + "spec": { + "type": "CommonFeatureSpec", + "id": 4, + "options": { + "(google.api.field_behavior)": "OPTIONAL" + } + }, + "membershipSpecs": { + "keyType": "string", + "type": "MembershipFeatureSpec", + "id": 5, + "options": { + "(google.api.field_behavior)": "OPTIONAL" + } + }, + "state": { + "type": "CommonFeatureState", + "id": 6, + "options": { + "(google.api.field_behavior)": "OUTPUT_ONLY" + } + }, + "membershipStates": { + "keyType": "string", + "type": "MembershipFeatureState", + "id": 7, + "options": { + "(google.api.field_behavior)": "OUTPUT_ONLY" + } + }, + "createTime": { + "type": "google.protobuf.Timestamp", + "id": 8, + "options": { + "(google.api.field_behavior)": "OUTPUT_ONLY" + } + }, + "updateTime": { + "type": "google.protobuf.Timestamp", + "id": 9, + "options": { + "(google.api.field_behavior)": "OUTPUT_ONLY" + } + }, + "deleteTime": { + "type": "google.protobuf.Timestamp", + "id": 10, + "options": { + "(google.api.field_behavior)": "OUTPUT_ONLY" + } + } + } + }, + "FeatureResourceState": { + "fields": { + "state": { + "type": "State", + "id": 1 + } + }, + "nested": { + "State": { + "values": { + "STATE_UNSPECIFIED": 0, + "ENABLING": 1, + "ACTIVE": 2, + "DISABLING": 3, + "UPDATING": 4, + "SERVICE_UPDATING": 5 + } + } + } + }, + "FeatureState": { + "fields": { + "code": { + "type": "Code", + "id": 1 + }, + "description": { + "type": "string", + "id": 2 + }, + "updateTime": { + "type": "google.protobuf.Timestamp", + "id": 3 + } + }, + "nested": { + "Code": { + "values": { + "CODE_UNSPECIFIED": 0, + "OK": 1, + "WARNING": 2, + "ERROR": 3 + } + } + } + }, + "CommonFeatureSpec": { + "oneofs": { + "featureSpec": { + "oneof": [ + "multiclusteringress", + "cloudauditlogging" + ] + } + }, + "fields": { + "multiclusteringress": { + "type": "google.cloud.gkehub.multiclusteringress.v1alpha.FeatureSpec", + "id": 102 + }, + "cloudauditlogging": { + "type": "google.cloud.gkehub.cloudauditlogging.v1alpha.FeatureSpec", + "id": 108 + } + } + }, + "CommonFeatureState": { + "oneofs": { + "featureState": { + "oneof": [ + "servicemesh" + ] + } + }, + "fields": { + "servicemesh": { + "type": "google.cloud.gkehub.servicemesh.v1alpha.FeatureState", + "id": 100 + }, + "state": { + "type": "FeatureState", + "id": 1, + "options": { + "(google.api.field_behavior)": "OUTPUT_ONLY" + } + } + } + }, + "MembershipFeatureSpec": { + "oneofs": { + "featureSpec": { + "oneof": [ + "configmanagement" + ] + } + }, + "fields": { + "configmanagement": { + "type": "google.cloud.gkehub.configmanagement.v1alpha.MembershipSpec", + "id": 106 + } + } + }, + "MembershipFeatureState": { + "oneofs": { + "featureState": { + "oneof": [ + "servicemesh", + "metering", + "configmanagement" + ] + } + }, + "fields": { + "servicemesh": { + "type": "google.cloud.gkehub.servicemesh.v1alpha.MembershipState", + "id": 100 + }, + "metering": { + "type": "google.cloud.gkehub.metering.v1alpha.MembershipState", + "id": 104 + }, + "configmanagement": { + "type": "google.cloud.gkehub.configmanagement.v1alpha.MembershipState", + "id": 106 + }, + "state": { + "type": "FeatureState", + "id": 1 + } + } + }, + "GkeHub": { + "options": { + "(google.api.default_host)": "gkehub.googleapis.com", + "(google.api.oauth_scopes)": "https://www.googleapis.com/auth/cloud-platform" + }, + "methods": { + "ListFeatures": { + "requestType": "ListFeaturesRequest", + "responseType": "ListFeaturesResponse", + "options": { + "(google.api.http).get": "/v1alpha/{parent=projects/*/locations/*}/features", + "(google.api.method_signature)": "parent" + }, + "parsedOptions": [ + { + "(google.api.http)": { + "get": "/v1alpha/{parent=projects/*/locations/*}/features" + } + }, + { + "(google.api.method_signature)": "parent" + } + ] + }, + "GetFeature": { + "requestType": "GetFeatureRequest", + "responseType": "Feature", + "options": { + "(google.api.http).get": "/v1alpha/{name=projects/*/locations/*/features/*}", + "(google.api.method_signature)": "name" + }, + "parsedOptions": [ + { + "(google.api.http)": { + "get": "/v1alpha/{name=projects/*/locations/*/features/*}" + } + }, + { + "(google.api.method_signature)": "name" + } + ] + }, + "CreateFeature": { + "requestType": "CreateFeatureRequest", + "responseType": "google.longrunning.Operation", + "options": { + "(google.api.http).post": "/v1alpha/{parent=projects/*/locations/*}/features", + "(google.api.http).body": "resource", + "(google.api.method_signature)": "parent,resource,feature_id", + "(google.longrunning.operation_info).response_type": "Feature", + "(google.longrunning.operation_info).metadata_type": "OperationMetadata" + }, + "parsedOptions": [ + { + "(google.api.http)": { + "post": "/v1alpha/{parent=projects/*/locations/*}/features", + "body": "resource" + } + }, + { + "(google.api.method_signature)": "parent,resource,feature_id" + }, + { + "(google.longrunning.operation_info)": { + "response_type": "Feature", + "metadata_type": "OperationMetadata" + } + } + ] + }, + "DeleteFeature": { + "requestType": "DeleteFeatureRequest", + "responseType": "google.longrunning.Operation", + "options": { + "(google.api.http).delete": "/v1alpha/{name=projects/*/locations/*/features/*}", + "(google.api.method_signature)": "name", + "(google.longrunning.operation_info).response_type": "google.protobuf.Empty", + "(google.longrunning.operation_info).metadata_type": "OperationMetadata" + }, + "parsedOptions": [ + { + "(google.api.http)": { + "delete": "/v1alpha/{name=projects/*/locations/*/features/*}" + } + }, + { + "(google.api.method_signature)": "name" + }, + { + "(google.longrunning.operation_info)": { + "response_type": "google.protobuf.Empty", + "metadata_type": "OperationMetadata" + } + } + ] + }, + "UpdateFeature": { + "requestType": "UpdateFeatureRequest", + "responseType": "google.longrunning.Operation", + "options": { + "(google.api.http).patch": "/v1alpha/{name=projects/*/locations/*/features/*}", + "(google.api.http).body": "resource", + "(google.api.method_signature)": "name,resource,update_mask", + "(google.longrunning.operation_info).response_type": "Feature", + "(google.longrunning.operation_info).metadata_type": "OperationMetadata" + }, + "parsedOptions": [ + { + "(google.api.http)": { + "patch": "/v1alpha/{name=projects/*/locations/*/features/*}", + "body": "resource" + } + }, + { + "(google.api.method_signature)": "name,resource,update_mask" + }, + { + "(google.longrunning.operation_info)": { + "response_type": "Feature", + "metadata_type": "OperationMetadata" + } + } + ] + } + } + }, + "ListFeaturesRequest": { + "fields": { + "parent": { + "type": "string", + "id": 1 + }, + "pageSize": { + "type": "int32", + "id": 2 + }, + "pageToken": { + "type": "string", + "id": 3 + }, + "filter": { + "type": "string", + "id": 4 + }, + "orderBy": { + "type": "string", + "id": 5 + } + } + }, + "ListFeaturesResponse": { + "fields": { + "resources": { + "rule": "repeated", + "type": "Feature", + "id": 1 + }, + "nextPageToken": { + "type": "string", + "id": 2 + } + } + }, + "GetFeatureRequest": { + "fields": { + "name": { + "type": "string", + "id": 1 + } + } + }, + "CreateFeatureRequest": { + "fields": { + "parent": { + "type": "string", + "id": 1 + }, + "featureId": { + "type": "string", + "id": 2 + }, + "resource": { + "type": "Feature", + "id": 3 + }, + "requestId": { + "type": "string", + "id": 4, + "options": { + "(google.api.field_behavior)": "OPTIONAL" + } + } + } + }, + "DeleteFeatureRequest": { + "fields": { + "name": { + "type": "string", + "id": 1 + }, + "force": { + "type": "bool", + "id": 2 + }, + "requestId": { + "type": "string", + "id": 3, + "options": { + "(google.api.field_behavior)": "OPTIONAL" + } + } + } + }, + "UpdateFeatureRequest": { + "fields": { + "name": { + "type": "string", + "id": 1 + }, + "updateMask": { + "type": "google.protobuf.FieldMask", + "id": 2 + }, + "resource": { + "type": "Feature", + "id": 3 + }, + "requestId": { + "type": "string", + "id": 4, + "options": { + "(google.api.field_behavior)": "OPTIONAL" + } + } + } + }, + "OperationMetadata": { + "fields": { + "createTime": { + "type": "google.protobuf.Timestamp", + "id": 1, + "options": { + "(google.api.field_behavior)": "OUTPUT_ONLY" + } + }, + "endTime": { + "type": "google.protobuf.Timestamp", + "id": 2, + "options": { + "(google.api.field_behavior)": "OUTPUT_ONLY" + } + }, + "target": { + "type": "string", + "id": 3, + "options": { + "(google.api.field_behavior)": "OUTPUT_ONLY" + } + }, + "verb": { + "type": "string", + "id": 4, + "options": { + "(google.api.field_behavior)": "OUTPUT_ONLY" + } + }, + "statusDetail": { + "type": "string", + "id": 5, + "options": { + "(google.api.field_behavior)": "OUTPUT_ONLY" + } + }, + "cancelRequested": { + "type": "bool", + "id": 6, + "options": { + "(google.api.field_behavior)": "OUTPUT_ONLY" + } + }, + "apiVersion": { + "type": "string", + "id": 7, + "options": { + "(google.api.field_behavior)": "OUTPUT_ONLY" + } + } + } + } } }, - "packed": { - "type": "bool", - "id": 2 - }, - "jstype": { - "type": "JSType", - "id": 6, - "options": { - "default": "JS_NORMAL" + "metering": { + "nested": { + "v1alpha": { + "options": { + "csharp_namespace": "Google.Cloud.GkeHub.Metering.V1Alpha", + "go_package": "google.golang.org/genproto/googleapis/cloud/gkehub/metering/v1alpha;metering", + "java_multiple_files": true, + "java_outer_classname": "MeteringProto", + "java_package": "com.google.cloud.gkehub.metering.v1alpha", + "php_namespace": "Google\\Cloud\\GkeHub\\Metering\\V1alpha", + "ruby_package": "Google::Cloud::GkeHub::Metering::V1alpha" + }, + "nested": { + "MembershipState": { + "fields": { + "lastMeasurementTime": { + "type": "google.protobuf.Timestamp", + "id": 1 + }, + "preciseLastMeasuredClusterVcpuCapacity": { + "type": "float", + "id": 3 + } + } + } + } + }, + "v1beta": { + "options": { + "csharp_namespace": "Google.Cloud.GkeHub.Metering.V1Beta", + "go_package": "google.golang.org/genproto/googleapis/cloud/gkehub/metering/v1beta;metering", + "java_multiple_files": true, + "java_outer_classname": "MeteringProto", + "java_package": "com.google.cloud.gkehub.metering.v1beta", + "php_namespace": "Google\\Cloud\\GkeHub\\Metering\\V1beta", + "ruby_package": "Google::Cloud::GkeHub::Metering::V1beta" + }, + "nested": { + "MembershipState": { + "fields": { + "lastMeasurementTime": { + "type": "google.protobuf.Timestamp", + "id": 1 + }, + "preciseLastMeasuredClusterVcpuCapacity": { + "type": "float", + "id": 3 + } + } + } + } + } } }, - "lazy": { - "type": "bool", - "id": 5, - "options": { - "default": false + "servicemesh": { + "nested": { + "v1alpha": { + "options": { + "csharp_namespace": "Google.Cloud.GkeHub.ServiceMesh.V1Alpha", + "go_package": "google.golang.org/genproto/googleapis/cloud/gkehub/servicemesh/v1alpha;servicemesh", + "java_multiple_files": true, + "java_outer_classname": "ServiceMeshProto", + "java_package": "com.google.cloud.gkehub.servicemesh.v1alpha", + "php_namespace": "Google\\Cloud\\GkeHub\\ServiceMesh\\V1alpha", + "ruby_package": "Google::Cloud::GkeHub::ServiceMesh::V1alpha" + }, + "nested": { + "FeatureState": { + "fields": { + "analysisMessages": { + "rule": "repeated", + "type": "AnalysisMessage", + "id": 1, + "options": { + "(google.api.field_behavior)": "OUTPUT_ONLY" + } + } + } + }, + "MembershipState": { + "fields": { + "analysisMessages": { + "rule": "repeated", + "type": "AnalysisMessage", + "id": 1, + "options": { + "(google.api.field_behavior)": "OUTPUT_ONLY" + } + } + } + }, + "AnalysisMessageBase": { + "fields": { + "type": { + "type": "Type", + "id": 1 + }, + "level": { + "type": "Level", + "id": 2 + }, + "documentationUrl": { + "type": "string", + "id": 3 + } + }, + "nested": { + "Type": { + "fields": { + "displayName": { + "type": "string", + "id": 1 + }, + "code": { + "type": "string", + "id": 2 + } + } + }, + "Level": { + "values": { + "LEVEL_UNSPECIFIED": 0, + "ERROR": 3, + "WARNING": 8, + "INFO": 12 + } + } + } + }, + "AnalysisMessage": { + "fields": { + "messageBase": { + "type": "AnalysisMessageBase", + "id": 1 + }, + "description": { + "type": "string", + "id": 2 + }, + "resourcePaths": { + "rule": "repeated", + "type": "string", + "id": 3 + }, + "args": { + "type": "google.protobuf.Struct", + "id": 4 + } + } + } + } + } } }, - "deprecated": { - "type": "bool", - "id": 3, + "v1alpha2": { "options": { - "default": false + "csharp_namespace": "Google.Cloud.GkeHub.V1Alpha2", + "go_package": "google.golang.org/genproto/googleapis/cloud/gkehub/v1alpha2;gkehub", + "java_multiple_files": true, + "java_outer_classname": "MembershipProto", + "java_package": "com.google.cloud.gkehub.v1alpha2", + "php_namespace": "Google\\Cloud\\GkeHub\\V1alpha2", + "ruby_package": "Google::Cloud::GkeHub::V1alpha2" + }, + "nested": { + "GkeHub": { + "options": { + "(google.api.default_host)": "gkehub.googleapis.com", + "(google.api.oauth_scopes)": "https://www.googleapis.com/auth/cloud-platform" + }, + "methods": { + "ListMemberships": { + "requestType": "ListMembershipsRequest", + "responseType": "ListMembershipsResponse", + "options": { + "(google.api.http).get": "/v1alpha2/{parent=projects/*/locations/*}/memberships", + "(google.api.method_signature)": "parent" + }, + "parsedOptions": [ + { + "(google.api.http)": { + "get": "/v1alpha2/{parent=projects/*/locations/*}/memberships" + } + }, + { + "(google.api.method_signature)": "parent" + } + ] + }, + "GetMembership": { + "requestType": "GetMembershipRequest", + "responseType": "Membership", + "options": { + "(google.api.http).get": "/v1alpha2/{name=projects/*/locations/*/memberships/*}", + "(google.api.method_signature)": "name" + }, + "parsedOptions": [ + { + "(google.api.http)": { + "get": "/v1alpha2/{name=projects/*/locations/*/memberships/*}" + } + }, + { + "(google.api.method_signature)": "name" + } + ] + }, + "CreateMembership": { + "requestType": "CreateMembershipRequest", + "responseType": "google.longrunning.Operation", + "options": { + "(google.api.http).post": "/v1alpha2/{parent=projects/*/locations/*}/memberships", + "(google.api.http).body": "resource", + "(google.api.method_signature)": "parent,resource,membership_id", + "(google.longrunning.operation_info).response_type": "Membership", + "(google.longrunning.operation_info).metadata_type": "OperationMetadata" + }, + "parsedOptions": [ + { + "(google.api.http)": { + "post": "/v1alpha2/{parent=projects/*/locations/*}/memberships", + "body": "resource" + } + }, + { + "(google.api.method_signature)": "parent,resource,membership_id" + }, + { + "(google.longrunning.operation_info)": { + "response_type": "Membership", + "metadata_type": "OperationMetadata" + } + } + ] + }, + "DeleteMembership": { + "requestType": "DeleteMembershipRequest", + "responseType": "google.longrunning.Operation", + "options": { + "(google.api.http).delete": "/v1alpha2/{name=projects/*/locations/*/memberships/*}", + "(google.api.method_signature)": "name", + "(google.longrunning.operation_info).response_type": "google.protobuf.Empty", + "(google.longrunning.operation_info).metadata_type": "OperationMetadata" + }, + "parsedOptions": [ + { + "(google.api.http)": { + "delete": "/v1alpha2/{name=projects/*/locations/*/memberships/*}" + } + }, + { + "(google.api.method_signature)": "name" + }, + { + "(google.longrunning.operation_info)": { + "response_type": "google.protobuf.Empty", + "metadata_type": "OperationMetadata" + } + } + ] + }, + "UpdateMembership": { + "requestType": "UpdateMembershipRequest", + "responseType": "google.longrunning.Operation", + "options": { + "(google.api.http).patch": "/v1alpha2/{name=projects/*/locations/*/memberships/*}", + "(google.api.http).body": "resource", + "(google.api.method_signature)": "name,resource,update_mask", + "(google.longrunning.operation_info).response_type": "Membership", + "(google.longrunning.operation_info).metadata_type": "OperationMetadata" + }, + "parsedOptions": [ + { + "(google.api.http)": { + "patch": "/v1alpha2/{name=projects/*/locations/*/memberships/*}", + "body": "resource" + } + }, + { + "(google.api.method_signature)": "name,resource,update_mask" + }, + { + "(google.longrunning.operation_info)": { + "response_type": "Membership", + "metadata_type": "OperationMetadata" + } + } + ] + }, + "GenerateConnectManifest": { + "requestType": "GenerateConnectManifestRequest", + "responseType": "GenerateConnectManifestResponse", + "options": { + "(google.api.http).get": "/v1alpha2/{name=projects/*/locations/*/memberships/*}:generateConnectManifest" + }, + "parsedOptions": [ + { + "(google.api.http)": { + "get": "/v1alpha2/{name=projects/*/locations/*/memberships/*}:generateConnectManifest" + } + } + ] + }, + "InitializeHub": { + "requestType": "InitializeHubRequest", + "responseType": "InitializeHubResponse", + "options": { + "(google.api.http).post": "/v1alpha2/{project=projects/*/locations/global/memberships}:initializeHub", + "(google.api.http).body": "*" + }, + "parsedOptions": [ + { + "(google.api.http)": { + "post": "/v1alpha2/{project=projects/*/locations/global/memberships}:initializeHub", + "body": "*" + } + } + ] + } + } + }, + "Membership": { + "options": { + "(google.api.resource).type": "gkehub.googleapis.com/Membership", + "(google.api.resource).pattern": "projects/{project}/locations/{location}/memberships/{membership}" + }, + "oneofs": { + "type": { + "oneof": [ + "endpoint" + ] + } + }, + "fields": { + "name": { + "type": "string", + "id": 1, + "options": { + "(google.api.field_behavior)": "OUTPUT_ONLY" + } + }, + "labels": { + "keyType": "string", + "type": "string", + "id": 2, + "options": { + "(google.api.field_behavior)": "OPTIONAL" + } + }, + "description": { + "type": "string", + "id": 3, + "options": { + "(google.api.field_behavior)": "OUTPUT_ONLY" + } + }, + "endpoint": { + "type": "MembershipEndpoint", + "id": 4, + "options": { + "(google.api.field_behavior)": "OPTIONAL" + } + }, + "state": { + "type": "MembershipState", + "id": 5, + "options": { + "(google.api.field_behavior)": "OUTPUT_ONLY" + } + }, + "createTime": { + "type": "google.protobuf.Timestamp", + "id": 6, + "options": { + "(google.api.field_behavior)": "OUTPUT_ONLY" + } + }, + "updateTime": { + "type": "google.protobuf.Timestamp", + "id": 7, + "options": { + "(google.api.field_behavior)": "OUTPUT_ONLY" + } + }, + "deleteTime": { + "type": "google.protobuf.Timestamp", + "id": 8, + "options": { + "(google.api.field_behavior)": "OUTPUT_ONLY" + } + }, + "externalId": { + "type": "string", + "id": 9, + "options": { + "(google.api.field_behavior)": "OPTIONAL" + } + }, + "authority": { + "type": "Authority", + "id": 10, + "options": { + "(google.api.field_behavior)": "OPTIONAL" + } + }, + "lastConnectionTime": { + "type": "google.protobuf.Timestamp", + "id": 11, + "options": { + "(google.api.field_behavior)": "OUTPUT_ONLY" + } + }, + "uniqueId": { + "type": "string", + "id": 12, + "options": { + "(google.api.field_behavior)": "OUTPUT_ONLY" + } + }, + "infrastructureType": { + "type": "InfrastructureType", + "id": 13, + "options": { + "(google.api.field_behavior)": "OPTIONAL" + } + } + }, + "nested": { + "InfrastructureType": { + "values": { + "INFRASTRUCTURE_TYPE_UNSPECIFIED": 0, + "ON_PREM": 1, + "MULTI_CLOUD": 2 + } + } + } + }, + "MembershipEndpoint": { + "fields": { + "gkeCluster": { + "type": "GkeCluster", + "id": 1, + "options": { + "(google.api.field_behavior)": "OPTIONAL" + } + }, + "kubernetesMetadata": { + "type": "KubernetesMetadata", + "id": 2, + "options": { + "(google.api.field_behavior)": "OUTPUT_ONLY" + } + }, + "kubernetesResource": { + "type": "KubernetesResource", + "id": 3, + "options": { + "(google.api.field_behavior)": "OPTIONAL" + } + } + } + }, + "KubernetesResource": { + "fields": { + "membershipCrManifest": { + "type": "string", + "id": 1, + "options": { + "(google.api.field_behavior)": "INPUT_ONLY" + } + }, + "membershipResources": { + "rule": "repeated", + "type": "ResourceManifest", + "id": 3, + "options": { + "(google.api.field_behavior)": "OUTPUT_ONLY" + } + }, + "connectResources": { + "rule": "repeated", + "type": "ResourceManifest", + "id": 4, + "options": { + "(google.api.field_behavior)": "OUTPUT_ONLY" + } + }, + "resourceOptions": { + "type": "ResourceOptions", + "id": 5, + "options": { + "(google.api.field_behavior)": "OPTIONAL" + } + } + } + }, + "ResourceOptions": { + "fields": { + "connectVersion": { + "type": "string", + "id": 1, + "options": { + "(google.api.field_behavior)": "OPTIONAL" + } + }, + "v1beta1Crd": { + "type": "bool", + "id": 2, + "options": { + "(google.api.field_behavior)": "OPTIONAL" + } + } + } + }, + "GkeCluster": { + "fields": { + "resourceLink": { + "type": "string", + "id": 1, + "options": { + "(google.api.field_behavior)": "IMMUTABLE" + } + } + } + }, + "KubernetesMetadata": { + "fields": { + "kubernetesApiServerVersion": { + "type": "string", + "id": 1, + "options": { + "(google.api.field_behavior)": "OUTPUT_ONLY" + } + }, + "nodeProviderId": { + "type": "string", + "id": 2, + "options": { + "(google.api.field_behavior)": "OUTPUT_ONLY" + } + }, + "nodeCount": { + "type": "int32", + "id": 3, + "options": { + "(google.api.field_behavior)": "OUTPUT_ONLY" + } + }, + "vcpuCount": { + "type": "int32", + "id": 4, + "options": { + "(google.api.field_behavior)": "OUTPUT_ONLY" + } + }, + "memoryMb": { + "type": "int32", + "id": 5, + "options": { + "(google.api.field_behavior)": "OUTPUT_ONLY" + } + }, + "updateTime": { + "type": "google.protobuf.Timestamp", + "id": 100, + "options": { + "(google.api.field_behavior)": "OUTPUT_ONLY" + } + } + } + }, + "Authority": { + "fields": { + "issuer": { + "type": "string", + "id": 1, + "options": { + "(google.api.field_behavior)": "OPTIONAL" + } + }, + "oidcJwks": { + "type": "bytes", + "id": 5, + "options": { + "(google.api.field_behavior)": "OPTIONAL" + } + }, + "identityProvider": { + "type": "string", + "id": 3, + "options": { + "(google.api.field_behavior)": "OUTPUT_ONLY" + } + }, + "workloadIdentityPool": { + "type": "string", + "id": 4, + "options": { + "(google.api.field_behavior)": "OUTPUT_ONLY" + } + } + } + }, + "MembershipState": { + "fields": { + "code": { + "type": "Code", + "id": 1, + "options": { + "(google.api.field_behavior)": "OUTPUT_ONLY" + } + } + }, + "nested": { + "Code": { + "values": { + "CODE_UNSPECIFIED": 0, + "CREATING": 1, + "READY": 2, + "DELETING": 3, + "UPDATING": 4, + "SERVICE_UPDATING": 5 + } + } + } + }, + "ListMembershipsRequest": { + "fields": { + "parent": { + "type": "string", + "id": 1, + "options": { + "(google.api.field_behavior)": "REQUIRED", + "(google.api.resource_reference).child_type": "gkehub.googleapis.com/Membership" + } + }, + "pageSize": { + "type": "int32", + "id": 2, + "options": { + "(google.api.field_behavior)": "OPTIONAL" + } + }, + "pageToken": { + "type": "string", + "id": 3, + "options": { + "(google.api.field_behavior)": "OPTIONAL" + } + }, + "filter": { + "type": "string", + "id": 4, + "options": { + "(google.api.field_behavior)": "OPTIONAL" + } + }, + "orderBy": { + "type": "string", + "id": 5, + "options": { + "(google.api.field_behavior)": "OPTIONAL" + } + } + } + }, + "ListMembershipsResponse": { + "fields": { + "resources": { + "rule": "repeated", + "type": "Membership", + "id": 1 + }, + "nextPageToken": { + "type": "string", + "id": 2 + }, + "unreachable": { + "rule": "repeated", + "type": "string", + "id": 3 + } + } + }, + "GetMembershipRequest": { + "fields": { + "name": { + "type": "string", + "id": 1, + "options": { + "(google.api.field_behavior)": "REQUIRED", + "(google.api.resource_reference).type": "gkehub.googleapis.com/Membership" + } + } + } + }, + "CreateMembershipRequest": { + "fields": { + "parent": { + "type": "string", + "id": 1, + "options": { + "(google.api.field_behavior)": "REQUIRED", + "(google.api.resource_reference).child_type": "gkehub.googleapis.com/Membership" + } + }, + "membershipId": { + "type": "string", + "id": 2, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } + }, + "resource": { + "type": "Membership", + "id": 3, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } + } + } + }, + "DeleteMembershipRequest": { + "fields": { + "name": { + "type": "string", + "id": 1, + "options": { + "(google.api.field_behavior)": "REQUIRED", + "(google.api.resource_reference).type": "gkehub.googleapis.com/Membership" + } + } + } + }, + "UpdateMembershipRequest": { + "fields": { + "name": { + "type": "string", + "id": 1, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } + }, + "updateMask": { + "type": "google.protobuf.FieldMask", + "id": 2, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } + }, + "resource": { + "type": "Membership", + "id": 3, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } + } + } + }, + "GenerateConnectManifestRequest": { + "fields": { + "name": { + "type": "string", + "id": 1, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } + }, + "namespace": { + "type": "string", + "id": 2, + "options": { + "(google.api.field_behavior)": "OPTIONAL" + } + }, + "proxy": { + "type": "bytes", + "id": 3, + "options": { + "(google.api.field_behavior)": "OPTIONAL" + } + }, + "version": { + "type": "string", + "id": 4, + "options": { + "(google.api.field_behavior)": "OPTIONAL" + } + }, + "isUpgrade": { + "type": "bool", + "id": 5, + "options": { + "(google.api.field_behavior)": "OPTIONAL" + } + }, + "registry": { + "type": "string", + "id": 6, + "options": { + "(google.api.field_behavior)": "OPTIONAL" + } + }, + "imagePullSecretContent": { + "type": "bytes", + "id": 7, + "options": { + "(google.api.field_behavior)": "OPTIONAL" + } + } + } + }, + "GenerateConnectManifestResponse": { + "fields": { + "manifest": { + "rule": "repeated", + "type": "ConnectAgentResource", + "id": 1 + } + } + }, + "ConnectAgentResource": { + "fields": { + "type": { + "type": "TypeMeta", + "id": 1 + }, + "manifest": { + "type": "string", + "id": 2 + } + } + }, + "ResourceManifest": { + "fields": { + "manifest": { + "type": "string", + "id": 1 + }, + "clusterScoped": { + "type": "bool", + "id": 2 + } + } + }, + "TypeMeta": { + "fields": { + "kind": { + "type": "string", + "id": 1 + }, + "apiVersion": { + "type": "string", + "id": 2 + } + } + }, + "InitializeHubRequest": { + "fields": { + "project": { + "type": "string", + "id": 1, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } + } + } + }, + "InitializeHubResponse": { + "fields": { + "serviceIdentity": { + "type": "string", + "id": 1 + }, + "workloadIdentityPool": { + "type": "string", + "id": 2 + } + } + }, + "OperationMetadata": { + "fields": { + "createTime": { + "type": "google.protobuf.Timestamp", + "id": 1, + "options": { + "(google.api.field_behavior)": "OUTPUT_ONLY" + } + }, + "endTime": { + "type": "google.protobuf.Timestamp", + "id": 2, + "options": { + "(google.api.field_behavior)": "OUTPUT_ONLY" + } + }, + "target": { + "type": "string", + "id": 3, + "options": { + "(google.api.field_behavior)": "OUTPUT_ONLY" + } + }, + "verb": { + "type": "string", + "id": 4, + "options": { + "(google.api.field_behavior)": "OUTPUT_ONLY" + } + }, + "statusDetail": { + "type": "string", + "id": 5, + "options": { + "(google.api.field_behavior)": "OUTPUT_ONLY" + } + }, + "cancelRequested": { + "type": "bool", + "id": 6, + "options": { + "(google.api.field_behavior)": "OUTPUT_ONLY" + } + }, + "apiVersion": { + "type": "string", + "id": 7, + "options": { + "(google.api.field_behavior)": "OUTPUT_ONLY" + } + } + } + } } }, - "weak": { - "type": "bool", - "id": 10, + "v1beta": { "options": { - "default": false - } - }, - "uninterpretedOption": { - "rule": "repeated", - "type": "UninterpretedOption", - "id": 999 - } - }, - "extensions": [ - [ - 1000, - 536870911 - ] - ], - "reserved": [ - [ - 4, - 4 - ] - ], - "nested": { - "CType": { - "values": { - "STRING": 0, - "CORD": 1, - "STRING_PIECE": 2 + "csharp_namespace": "Google.Cloud.GkeHub.V1Beta", + "go_package": "google.golang.org/genproto/googleapis/cloud/gkehub/v1beta;gkehub", + "java_multiple_files": true, + "java_outer_classname": "ServiceProto", + "java_package": "com.google.cloud.gkehub.v1beta", + "php_namespace": "Google\\Cloud\\GkeHub\\V1beta", + "ruby_package": "Google::Cloud::GkeHub::V1beta" + }, + "nested": { + "Feature": { + "options": { + "(google.api.resource).type": "gkehub.googleapis.com/Feature", + "(google.api.resource).pattern": "projects/{project}/locations/{location}/features/{feature}" + }, + "fields": { + "name": { + "type": "string", + "id": 1, + "options": { + "(google.api.field_behavior)": "OUTPUT_ONLY" + } + }, + "labels": { + "keyType": "string", + "type": "string", + "id": 2 + }, + "resourceState": { + "type": "FeatureResourceState", + "id": 3, + "options": { + "(google.api.field_behavior)": "OUTPUT_ONLY" + } + }, + "spec": { + "type": "CommonFeatureSpec", + "id": 4, + "options": { + "(google.api.field_behavior)": "OPTIONAL" + } + }, + "membershipSpecs": { + "keyType": "string", + "type": "MembershipFeatureSpec", + "id": 5, + "options": { + "(google.api.field_behavior)": "OPTIONAL" + } + }, + "state": { + "type": "CommonFeatureState", + "id": 6, + "options": { + "(google.api.field_behavior)": "OUTPUT_ONLY" + } + }, + "membershipStates": { + "keyType": "string", + "type": "MembershipFeatureState", + "id": 7, + "options": { + "(google.api.field_behavior)": "OUTPUT_ONLY" + } + }, + "createTime": { + "type": "google.protobuf.Timestamp", + "id": 8, + "options": { + "(google.api.field_behavior)": "OUTPUT_ONLY" + } + }, + "updateTime": { + "type": "google.protobuf.Timestamp", + "id": 9, + "options": { + "(google.api.field_behavior)": "OUTPUT_ONLY" + } + }, + "deleteTime": { + "type": "google.protobuf.Timestamp", + "id": 10, + "options": { + "(google.api.field_behavior)": "OUTPUT_ONLY" + } + } + } + }, + "FeatureResourceState": { + "fields": { + "state": { + "type": "State", + "id": 1 + } + }, + "nested": { + "State": { + "values": { + "STATE_UNSPECIFIED": 0, + "ENABLING": 1, + "ACTIVE": 2, + "DISABLING": 3, + "UPDATING": 4, + "SERVICE_UPDATING": 5 + } + } + } + }, + "FeatureState": { + "fields": { + "code": { + "type": "Code", + "id": 1 + }, + "description": { + "type": "string", + "id": 2 + }, + "updateTime": { + "type": "google.protobuf.Timestamp", + "id": 3 + } + }, + "nested": { + "Code": { + "values": { + "CODE_UNSPECIFIED": 0, + "OK": 1, + "WARNING": 2, + "ERROR": 3 + } + } + } + }, + "CommonFeatureSpec": { + "oneofs": { + "featureSpec": { + "oneof": [ + "multiclusteringress" + ] + } + }, + "fields": { + "multiclusteringress": { + "type": "google.cloud.gkehub.multiclusteringress.v1beta.FeatureSpec", + "id": 102 + } + } + }, + "CommonFeatureState": { + "fields": { + "state": { + "type": "FeatureState", + "id": 1, + "options": { + "(google.api.field_behavior)": "OUTPUT_ONLY" + } + } + } + }, + "MembershipFeatureSpec": { + "oneofs": { + "featureSpec": { + "oneof": [ + "configmanagement" + ] + } + }, + "fields": { + "configmanagement": { + "type": "google.cloud.gkehub.configmanagement.v1beta.MembershipSpec", + "id": 106 + } + } + }, + "MembershipFeatureState": { + "oneofs": { + "featureState": { + "oneof": [ + "metering", + "configmanagement" + ] + } + }, + "fields": { + "metering": { + "type": "google.cloud.gkehub.metering.v1beta.MembershipState", + "id": 104 + }, + "configmanagement": { + "type": "google.cloud.gkehub.configmanagement.v1beta.MembershipState", + "id": 106 + }, + "state": { + "type": "FeatureState", + "id": 1 + } + } + }, + "GkeHub": { + "options": { + "(google.api.default_host)": "gkehub.googleapis.com", + "(google.api.oauth_scopes)": "https://www.googleapis.com/auth/cloud-platform" + }, + "methods": { + "ListFeatures": { + "requestType": "ListFeaturesRequest", + "responseType": "ListFeaturesResponse", + "options": { + "(google.api.http).get": "/v1beta/{parent=projects/*/locations/*}/features", + "(google.api.method_signature)": "parent" + }, + "parsedOptions": [ + { + "(google.api.http)": { + "get": "/v1beta/{parent=projects/*/locations/*}/features" + } + }, + { + "(google.api.method_signature)": "parent" + } + ] + }, + "GetFeature": { + "requestType": "GetFeatureRequest", + "responseType": "Feature", + "options": { + "(google.api.http).get": "/v1beta/{name=projects/*/locations/*/features/*}", + "(google.api.method_signature)": "name" + }, + "parsedOptions": [ + { + "(google.api.http)": { + "get": "/v1beta/{name=projects/*/locations/*/features/*}" + } + }, + { + "(google.api.method_signature)": "name" + } + ] + }, + "CreateFeature": { + "requestType": "CreateFeatureRequest", + "responseType": "google.longrunning.Operation", + "options": { + "(google.api.http).post": "/v1beta/{parent=projects/*/locations/*}/features", + "(google.api.http).body": "resource", + "(google.api.method_signature)": "parent,resource,feature_id", + "(google.longrunning.operation_info).response_type": "Feature", + "(google.longrunning.operation_info).metadata_type": "OperationMetadata" + }, + "parsedOptions": [ + { + "(google.api.http)": { + "post": "/v1beta/{parent=projects/*/locations/*}/features", + "body": "resource" + } + }, + { + "(google.api.method_signature)": "parent,resource,feature_id" + }, + { + "(google.longrunning.operation_info)": { + "response_type": "Feature", + "metadata_type": "OperationMetadata" + } + } + ] + }, + "DeleteFeature": { + "requestType": "DeleteFeatureRequest", + "responseType": "google.longrunning.Operation", + "options": { + "(google.api.http).delete": "/v1beta/{name=projects/*/locations/*/features/*}", + "(google.api.method_signature)": "name", + "(google.longrunning.operation_info).response_type": "google.protobuf.Empty", + "(google.longrunning.operation_info).metadata_type": "OperationMetadata" + }, + "parsedOptions": [ + { + "(google.api.http)": { + "delete": "/v1beta/{name=projects/*/locations/*/features/*}" + } + }, + { + "(google.api.method_signature)": "name" + }, + { + "(google.longrunning.operation_info)": { + "response_type": "google.protobuf.Empty", + "metadata_type": "OperationMetadata" + } + } + ] + }, + "UpdateFeature": { + "requestType": "UpdateFeatureRequest", + "responseType": "google.longrunning.Operation", + "options": { + "(google.api.http).patch": "/v1beta/{name=projects/*/locations/*/features/*}", + "(google.api.http).body": "resource", + "(google.api.method_signature)": "name,resource,update_mask", + "(google.longrunning.operation_info).response_type": "Feature", + "(google.longrunning.operation_info).metadata_type": "OperationMetadata" + }, + "parsedOptions": [ + { + "(google.api.http)": { + "patch": "/v1beta/{name=projects/*/locations/*/features/*}", + "body": "resource" + } + }, + { + "(google.api.method_signature)": "name,resource,update_mask" + }, + { + "(google.longrunning.operation_info)": { + "response_type": "Feature", + "metadata_type": "OperationMetadata" + } + } + ] + } + } + }, + "ListFeaturesRequest": { + "fields": { + "parent": { + "type": "string", + "id": 1 + }, + "pageSize": { + "type": "int32", + "id": 2 + }, + "pageToken": { + "type": "string", + "id": 3 + }, + "filter": { + "type": "string", + "id": 4 + }, + "orderBy": { + "type": "string", + "id": 5 + } + } + }, + "ListFeaturesResponse": { + "fields": { + "resources": { + "rule": "repeated", + "type": "Feature", + "id": 1 + }, + "nextPageToken": { + "type": "string", + "id": 2 + } + } + }, + "GetFeatureRequest": { + "fields": { + "name": { + "type": "string", + "id": 1 + } + } + }, + "CreateFeatureRequest": { + "fields": { + "parent": { + "type": "string", + "id": 1 + }, + "featureId": { + "type": "string", + "id": 2 + }, + "resource": { + "type": "Feature", + "id": 3 + }, + "requestId": { + "type": "string", + "id": 4, + "options": { + "(google.api.field_behavior)": "OPTIONAL" + } + } + } + }, + "DeleteFeatureRequest": { + "fields": { + "name": { + "type": "string", + "id": 1 + }, + "force": { + "type": "bool", + "id": 2 + }, + "requestId": { + "type": "string", + "id": 3, + "options": { + "(google.api.field_behavior)": "OPTIONAL" + } + } + } + }, + "UpdateFeatureRequest": { + "fields": { + "name": { + "type": "string", + "id": 1 + }, + "updateMask": { + "type": "google.protobuf.FieldMask", + "id": 2 + }, + "resource": { + "type": "Feature", + "id": 3 + }, + "requestId": { + "type": "string", + "id": 4, + "options": { + "(google.api.field_behavior)": "OPTIONAL" + } + } + } + }, + "OperationMetadata": { + "fields": { + "createTime": { + "type": "google.protobuf.Timestamp", + "id": 1, + "options": { + "(google.api.field_behavior)": "OUTPUT_ONLY" + } + }, + "endTime": { + "type": "google.protobuf.Timestamp", + "id": 2, + "options": { + "(google.api.field_behavior)": "OUTPUT_ONLY" + } + }, + "target": { + "type": "string", + "id": 3, + "options": { + "(google.api.field_behavior)": "OUTPUT_ONLY" + } + }, + "verb": { + "type": "string", + "id": 4, + "options": { + "(google.api.field_behavior)": "OUTPUT_ONLY" + } + }, + "statusDetail": { + "type": "string", + "id": 5, + "options": { + "(google.api.field_behavior)": "OUTPUT_ONLY" + } + }, + "cancelRequested": { + "type": "bool", + "id": 6, + "options": { + "(google.api.field_behavior)": "OUTPUT_ONLY" + } + }, + "apiVersion": { + "type": "string", + "id": 7, + "options": { + "(google.api.field_behavior)": "OUTPUT_ONLY" + } + } + } + } } }, - "JSType": { - "values": { - "JS_NORMAL": 0, - "JS_STRING": 1, - "JS_NUMBER": 2 + "v1beta1": { + "options": { + "csharp_namespace": "Google.Cloud.GkeHub.V1Beta1", + "go_package": "google.golang.org/genproto/googleapis/cloud/gkehub/v1beta1;gkehub", + "java_multiple_files": true, + "java_package": "com.google.cloud.gkehub.v1beta1", + "php_namespace": "Google\\Cloud\\GkeHub\\V1beta1", + "ruby_package": "Google::Cloud::GkeHub::V1beta1" + }, + "nested": { + "GkeHubMembershipService": { + "options": { + "(google.api.default_host)": "gkehub.googleapis.com", + "(google.api.oauth_scopes)": "https://www.googleapis.com/auth/cloud-platform" + }, + "methods": { + "ListMemberships": { + "requestType": "ListMembershipsRequest", + "responseType": "ListMembershipsResponse", + "options": { + "(google.api.http).get": "/v1beta1/{parent=projects/*/locations/*}/memberships", + "(google.api.method_signature)": "parent" + }, + "parsedOptions": [ + { + "(google.api.http)": { + "get": "/v1beta1/{parent=projects/*/locations/*}/memberships" + } + }, + { + "(google.api.method_signature)": "parent" + } + ] + }, + "GetMembership": { + "requestType": "GetMembershipRequest", + "responseType": "Membership", + "options": { + "(google.api.http).get": "/v1beta1/{name=projects/*/locations/*/memberships/*}", + "(google.api.method_signature)": "name" + }, + "parsedOptions": [ + { + "(google.api.http)": { + "get": "/v1beta1/{name=projects/*/locations/*/memberships/*}" + } + }, + { + "(google.api.method_signature)": "name" + } + ] + }, + "CreateMembership": { + "requestType": "CreateMembershipRequest", + "responseType": "google.longrunning.Operation", + "options": { + "(google.api.http).post": "/v1beta1/{parent=projects/*/locations/*}/memberships", + "(google.api.http).body": "resource", + "(google.api.method_signature)": "parent,resource,membership_id", + "(google.longrunning.operation_info).response_type": "Membership", + "(google.longrunning.operation_info).metadata_type": "OperationMetadata" + }, + "parsedOptions": [ + { + "(google.api.http)": { + "post": "/v1beta1/{parent=projects/*/locations/*}/memberships", + "body": "resource" + } + }, + { + "(google.api.method_signature)": "parent,resource,membership_id" + }, + { + "(google.longrunning.operation_info)": { + "response_type": "Membership", + "metadata_type": "OperationMetadata" + } + } + ] + }, + "DeleteMembership": { + "requestType": "DeleteMembershipRequest", + "responseType": "google.longrunning.Operation", + "options": { + "(google.api.http).delete": "/v1beta1/{name=projects/*/locations/*/memberships/*}", + "(google.api.method_signature)": "name", + "(google.longrunning.operation_info).response_type": "google.protobuf.Empty", + "(google.longrunning.operation_info).metadata_type": "OperationMetadata" + }, + "parsedOptions": [ + { + "(google.api.http)": { + "delete": "/v1beta1/{name=projects/*/locations/*/memberships/*}" + } + }, + { + "(google.api.method_signature)": "name" + }, + { + "(google.longrunning.operation_info)": { + "response_type": "google.protobuf.Empty", + "metadata_type": "OperationMetadata" + } + } + ] + }, + "UpdateMembership": { + "requestType": "UpdateMembershipRequest", + "responseType": "google.longrunning.Operation", + "options": { + "(google.api.http).patch": "/v1beta1/{name=projects/*/locations/*/memberships/*}", + "(google.api.http).body": "resource", + "(google.api.method_signature)": "name,resource,update_mask", + "(google.longrunning.operation_info).response_type": "Membership", + "(google.longrunning.operation_info).metadata_type": "OperationMetadata" + }, + "parsedOptions": [ + { + "(google.api.http)": { + "patch": "/v1beta1/{name=projects/*/locations/*/memberships/*}", + "body": "resource" + } + }, + { + "(google.api.method_signature)": "name,resource,update_mask" + }, + { + "(google.longrunning.operation_info)": { + "response_type": "Membership", + "metadata_type": "OperationMetadata" + } + } + ] + }, + "GenerateConnectManifest": { + "requestType": "GenerateConnectManifestRequest", + "responseType": "GenerateConnectManifestResponse", + "options": { + "(google.api.http).get": "/v1beta1/{name=projects/*/locations/*/memberships/*}:generateConnectManifest" + }, + "parsedOptions": [ + { + "(google.api.http)": { + "get": "/v1beta1/{name=projects/*/locations/*/memberships/*}:generateConnectManifest" + } + } + ] + }, + "ValidateExclusivity": { + "requestType": "ValidateExclusivityRequest", + "responseType": "ValidateExclusivityResponse", + "options": { + "(google.api.http).get": "/v1beta1/{parent=projects/*/locations/*}/memberships:validateExclusivity" + }, + "parsedOptions": [ + { + "(google.api.http)": { + "get": "/v1beta1/{parent=projects/*/locations/*}/memberships:validateExclusivity" + } + } + ] + }, + "GenerateExclusivityManifest": { + "requestType": "GenerateExclusivityManifestRequest", + "responseType": "GenerateExclusivityManifestResponse", + "options": { + "(google.api.http).get": "/v1beta1/{name=projects/*/locations/*/memberships/*}:generateExclusivityManifest" + }, + "parsedOptions": [ + { + "(google.api.http)": { + "get": "/v1beta1/{name=projects/*/locations/*/memberships/*}:generateExclusivityManifest" + } + } + ] + } + } + }, + "Membership": { + "options": { + "(google.api.resource).type": "gkehub.googleapis.com/Membership", + "(google.api.resource).pattern": "projects/{project}/locations/{location}/memberships/{membership}" + }, + "oneofs": { + "type": { + "oneof": [ + "endpoint" + ] + } + }, + "fields": { + "name": { + "type": "string", + "id": 1, + "options": { + "(google.api.field_behavior)": "OUTPUT_ONLY" + } + }, + "labels": { + "keyType": "string", + "type": "string", + "id": 2, + "options": { + "(google.api.field_behavior)": "OPTIONAL" + } + }, + "description": { + "type": "string", + "id": 3, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } + }, + "endpoint": { + "type": "MembershipEndpoint", + "id": 4, + "options": { + "(google.api.field_behavior)": "OPTIONAL" + } + }, + "state": { + "type": "MembershipState", + "id": 5, + "options": { + "(google.api.field_behavior)": "OUTPUT_ONLY" + } + }, + "authority": { + "type": "Authority", + "id": 9, + "options": { + "(google.api.field_behavior)": "OPTIONAL" + } + }, + "createTime": { + "type": "google.protobuf.Timestamp", + "id": 6, + "options": { + "(google.api.field_behavior)": "OUTPUT_ONLY" + } + }, + "updateTime": { + "type": "google.protobuf.Timestamp", + "id": 7, + "options": { + "(google.api.field_behavior)": "OUTPUT_ONLY" + } + }, + "deleteTime": { + "type": "google.protobuf.Timestamp", + "id": 8, + "options": { + "(google.api.field_behavior)": "OUTPUT_ONLY" + } + }, + "externalId": { + "type": "string", + "id": 10, + "options": { + "(google.api.field_behavior)": "OPTIONAL" + } + }, + "lastConnectionTime": { + "type": "google.protobuf.Timestamp", + "id": 11, + "options": { + "(google.api.field_behavior)": "OUTPUT_ONLY" + } + }, + "uniqueId": { + "type": "string", + "id": 12, + "options": { + "(google.api.field_behavior)": "OUTPUT_ONLY" + } + }, + "infrastructureType": { + "type": "InfrastructureType", + "id": 13, + "options": { + "(google.api.field_behavior)": "OPTIONAL" + } + } + }, + "nested": { + "InfrastructureType": { + "values": { + "INFRASTRUCTURE_TYPE_UNSPECIFIED": 0, + "ON_PREM": 1, + "MULTI_CLOUD": 2 + } + } + } + }, + "MembershipEndpoint": { + "fields": { + "gkeCluster": { + "type": "GkeCluster", + "id": 4, + "options": { + "(google.api.field_behavior)": "OPTIONAL" + } + }, + "kubernetesMetadata": { + "type": "KubernetesMetadata", + "id": 5, + "options": { + "(google.api.field_behavior)": "OUTPUT_ONLY" + } + }, + "kubernetesResource": { + "type": "KubernetesResource", + "id": 6, + "options": { + "(google.api.field_behavior)": "OPTIONAL" + } + } + } + }, + "KubernetesResource": { + "fields": { + "membershipCrManifest": { + "type": "string", + "id": 1, + "options": { + "(google.api.field_behavior)": "INPUT_ONLY" + } + }, + "membershipResources": { + "rule": "repeated", + "type": "ResourceManifest", + "id": 2, + "options": { + "(google.api.field_behavior)": "OUTPUT_ONLY" + } + }, + "connectResources": { + "rule": "repeated", + "type": "ResourceManifest", + "id": 3, + "options": { + "(google.api.field_behavior)": "OUTPUT_ONLY" + } + }, + "resourceOptions": { + "type": "ResourceOptions", + "id": 4, + "options": { + "(google.api.field_behavior)": "OPTIONAL" + } + } + } + }, + "ResourceOptions": { + "fields": { + "connectVersion": { + "type": "string", + "id": 1, + "options": { + "(google.api.field_behavior)": "OPTIONAL" + } + }, + "v1beta1Crd": { + "type": "bool", + "id": 2, + "options": { + "(google.api.field_behavior)": "OPTIONAL" + } + } + } + }, + "ResourceManifest": { + "fields": { + "manifest": { + "type": "string", + "id": 1 + }, + "clusterScoped": { + "type": "bool", + "id": 2 + } + } + }, + "GkeCluster": { + "fields": { + "resourceLink": { + "type": "string", + "id": 1, + "options": { + "(google.api.field_behavior)": "IMMUTABLE" + } + } + } + }, + "KubernetesMetadata": { + "fields": { + "kubernetesApiServerVersion": { + "type": "string", + "id": 1, + "options": { + "(google.api.field_behavior)": "OUTPUT_ONLY" + } + }, + "nodeProviderId": { + "type": "string", + "id": 2, + "options": { + "(google.api.field_behavior)": "OUTPUT_ONLY" + } + }, + "nodeCount": { + "type": "int32", + "id": 3, + "options": { + "(google.api.field_behavior)": "OUTPUT_ONLY" + } + }, + "vcpuCount": { + "type": "int32", + "id": 4, + "options": { + "(google.api.field_behavior)": "OUTPUT_ONLY" + } + }, + "memoryMb": { + "type": "int32", + "id": 5, + "options": { + "(google.api.field_behavior)": "OUTPUT_ONLY" + } + }, + "updateTime": { + "type": "google.protobuf.Timestamp", + "id": 100, + "options": { + "(google.api.field_behavior)": "OUTPUT_ONLY" + } + } + } + }, + "Authority": { + "fields": { + "issuer": { + "type": "string", + "id": 1, + "options": { + "(google.api.field_behavior)": "OPTIONAL" + } + }, + "workloadIdentityPool": { + "type": "string", + "id": 2, + "options": { + "(google.api.field_behavior)": "OUTPUT_ONLY" + } + }, + "identityProvider": { + "type": "string", + "id": 3, + "options": { + "(google.api.field_behavior)": "OUTPUT_ONLY" + } + }, + "oidcJwks": { + "type": "bytes", + "id": 4, + "options": { + "(google.api.field_behavior)": "OPTIONAL" + } + } + } + }, + "MembershipState": { + "fields": { + "code": { + "type": "Code", + "id": 1, + "options": { + "(google.api.field_behavior)": "OUTPUT_ONLY" + } + }, + "description": { + "type": "string", + "id": 2, + "options": { + "deprecated": true + } + }, + "updateTime": { + "type": "google.protobuf.Timestamp", + "id": 3, + "options": { + "deprecated": true + } + } + }, + "nested": { + "Code": { + "values": { + "CODE_UNSPECIFIED": 0, + "CREATING": 1, + "READY": 2, + "DELETING": 3, + "UPDATING": 4, + "SERVICE_UPDATING": 5 + } + } + } + }, + "ListMembershipsRequest": { + "fields": { + "parent": { + "type": "string", + "id": 1, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } + }, + "pageSize": { + "type": "int32", + "id": 2, + "options": { + "(google.api.field_behavior)": "OPTIONAL" + } + }, + "pageToken": { + "type": "string", + "id": 3, + "options": { + "(google.api.field_behavior)": "OPTIONAL" + } + }, + "filter": { + "type": "string", + "id": 4, + "options": { + "(google.api.field_behavior)": "OPTIONAL" + } + }, + "orderBy": { + "type": "string", + "id": 5, + "options": { + "(google.api.field_behavior)": "OPTIONAL" + } + } + } + }, + "ListMembershipsResponse": { + "fields": { + "resources": { + "rule": "repeated", + "type": "Membership", + "id": 1 + }, + "nextPageToken": { + "type": "string", + "id": 2 + }, + "unreachable": { + "rule": "repeated", + "type": "string", + "id": 3 + } + } + }, + "GetMembershipRequest": { + "fields": { + "name": { + "type": "string", + "id": 1, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } + } + } + }, + "CreateMembershipRequest": { + "fields": { + "parent": { + "type": "string", + "id": 1, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } + }, + "membershipId": { + "type": "string", + "id": 2, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } + }, + "resource": { + "type": "Membership", + "id": 3, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } + } + } + }, + "DeleteMembershipRequest": { + "fields": { + "name": { + "type": "string", + "id": 1, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } + } + } + }, + "UpdateMembershipRequest": { + "fields": { + "name": { + "type": "string", + "id": 1, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } + }, + "updateMask": { + "type": "google.protobuf.FieldMask", + "id": 2, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } + }, + "resource": { + "type": "Membership", + "id": 3, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } + } + } + }, + "GenerateConnectManifestRequest": { + "fields": { + "name": { + "type": "string", + "id": 1, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } + }, + "connectAgent": { + "type": "ConnectAgent", + "id": 2, + "options": { + "(google.api.field_behavior)": "OPTIONAL" + } + }, + "version": { + "type": "string", + "id": 3, + "options": { + "(google.api.field_behavior)": "OPTIONAL" + } + }, + "isUpgrade": { + "type": "bool", + "id": 4, + "options": { + "(google.api.field_behavior)": "OPTIONAL" + } + }, + "registry": { + "type": "string", + "id": 5, + "options": { + "(google.api.field_behavior)": "OPTIONAL" + } + }, + "imagePullSecretContent": { + "type": "bytes", + "id": 6, + "options": { + "(google.api.field_behavior)": "OPTIONAL" + } + } + } + }, + "GenerateConnectManifestResponse": { + "fields": { + "manifest": { + "rule": "repeated", + "type": "ConnectAgentResource", + "id": 1 + } + } + }, + "ConnectAgentResource": { + "fields": { + "type": { + "type": "TypeMeta", + "id": 1 + }, + "manifest": { + "type": "string", + "id": 2 + } + } + }, + "TypeMeta": { + "fields": { + "kind": { + "type": "string", + "id": 1 + }, + "apiVersion": { + "type": "string", + "id": 2 + } + } + }, + "ConnectAgent": { + "fields": { + "name": { + "type": "string", + "id": 1, + "options": { + "deprecated": true + } + }, + "proxy": { + "type": "bytes", + "id": 2, + "options": { + "(google.api.field_behavior)": "OPTIONAL" + } + }, + "namespace": { + "type": "string", + "id": 3, + "options": { + "(google.api.field_behavior)": "OPTIONAL" + } + } + } + }, + "ValidateExclusivityRequest": { + "fields": { + "parent": { + "type": "string", + "id": 1, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } + }, + "crManifest": { + "type": "string", + "id": 2, + "options": { + "(google.api.field_behavior)": "OPTIONAL" + } + }, + "intendedMembership": { + "type": "string", + "id": 3, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } + } + } + }, + "ValidateExclusivityResponse": { + "fields": { + "status": { + "type": "google.rpc.Status", + "id": 1 + } + } + }, + "GenerateExclusivityManifestRequest": { + "fields": { + "name": { + "type": "string", + "id": 1, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } + }, + "crdManifest": { + "type": "string", + "id": 2, + "options": { + "(google.api.field_behavior)": "OPTIONAL" + } + }, + "crManifest": { + "type": "string", + "id": 3, + "options": { + "(google.api.field_behavior)": "OPTIONAL" + } + } + } + }, + "GenerateExclusivityManifestResponse": { + "fields": { + "crdManifest": { + "type": "string", + "id": 1 + }, + "crManifest": { + "type": "string", + "id": 2 + } + } + }, + "OperationMetadata": { + "fields": { + "createTime": { + "type": "google.protobuf.Timestamp", + "id": 1, + "options": { + "(google.api.field_behavior)": "OUTPUT_ONLY" + } + }, + "endTime": { + "type": "google.protobuf.Timestamp", + "id": 2, + "options": { + "(google.api.field_behavior)": "OUTPUT_ONLY" + } + }, + "target": { + "type": "string", + "id": 3, + "options": { + "(google.api.field_behavior)": "OUTPUT_ONLY" + } + }, + "verb": { + "type": "string", + "id": 4, + "options": { + "(google.api.field_behavior)": "OUTPUT_ONLY" + } + }, + "statusDetail": { + "type": "string", + "id": 5, + "options": { + "(google.api.field_behavior)": "OUTPUT_ONLY" + } + }, + "cancelRequested": { + "type": "bool", + "id": 6, + "options": { + "(google.api.field_behavior)": "OUTPUT_ONLY" + } + }, + "apiVersion": { + "type": "string", + "id": 7, + "options": { + "(google.api.field_behavior)": "OUTPUT_ONLY" + } + } + } + } } } } + } + } + }, + "api": { + "options": { + "go_package": "google.golang.org/genproto/googleapis/api/annotations;annotations", + "java_multiple_files": true, + "java_outer_classname": "ClientProto", + "java_package": "com.google.api", + "objc_class_prefix": "GAPI", + "cc_enable_arenas": true + }, + "nested": { + "http": { + "type": "HttpRule", + "id": 72295728, + "extend": "google.protobuf.MethodOptions" }, - "OneofOptions": { - "fields": { - "uninterpretedOption": { - "rule": "repeated", - "type": "UninterpretedOption", - "id": 999 - } - }, - "extensions": [ - [ - 1000, - 536870911 - ] - ] - }, - "EnumOptions": { + "Http": { "fields": { - "allowAlias": { - "type": "bool", - "id": 2 - }, - "deprecated": { - "type": "bool", - "id": 3, - "options": { - "default": false - } - }, - "uninterpretedOption": { + "rules": { "rule": "repeated", - "type": "UninterpretedOption", - "id": 999 - } - }, - "extensions": [ - [ - 1000, - 536870911 - ] - ], - "reserved": [ - [ - 5, - 5 - ] - ] - }, - "EnumValueOptions": { - "fields": { - "deprecated": { - "type": "bool", - "id": 1, - "options": { - "default": false - } + "type": "HttpRule", + "id": 1 }, - "uninterpretedOption": { - "rule": "repeated", - "type": "UninterpretedOption", - "id": 999 - } - }, - "extensions": [ - [ - 1000, - 536870911 - ] - ] - }, - "ServiceOptions": { - "fields": { - "deprecated": { + "fullyDecodeReservedExpansion": { "type": "bool", - "id": 33, - "options": { - "default": false - } - }, - "uninterpretedOption": { - "rule": "repeated", - "type": "UninterpretedOption", - "id": 999 + "id": 2 } - }, - "extensions": [ - [ - 1000, - 536870911 - ] - ] + } }, - "MethodOptions": { - "fields": { - "deprecated": { - "type": "bool", - "id": 33, - "options": { - "default": false - } - }, - "idempotencyLevel": { - "type": "IdempotencyLevel", - "id": 34, - "options": { - "default": "IDEMPOTENCY_UNKNOWN" - } - }, - "uninterpretedOption": { - "rule": "repeated", - "type": "UninterpretedOption", - "id": 999 - } - }, - "extensions": [ - [ - 1000, - 536870911 - ] - ], - "nested": { - "IdempotencyLevel": { - "values": { - "IDEMPOTENCY_UNKNOWN": 0, - "NO_SIDE_EFFECTS": 1, - "IDEMPOTENT": 2 - } + "HttpRule": { + "oneofs": { + "pattern": { + "oneof": [ + "get", + "put", + "post", + "delete", + "patch", + "custom" + ] } - } - }, - "UninterpretedOption": { + }, "fields": { - "name": { - "rule": "repeated", - "type": "NamePart", + "selector": { + "type": "string", + "id": 1 + }, + "get": { + "type": "string", "id": 2 }, - "identifierValue": { + "put": { "type": "string", "id": 3 }, - "positiveIntValue": { - "type": "uint64", + "post": { + "type": "string", "id": 4 }, - "negativeIntValue": { - "type": "int64", + "delete": { + "type": "string", "id": 5 }, - "doubleValue": { - "type": "double", + "patch": { + "type": "string", "id": 6 }, - "stringValue": { - "type": "bytes", + "custom": { + "type": "CustomHttpPattern", + "id": 8 + }, + "body": { + "type": "string", "id": 7 }, - "aggregateValue": { + "responseBody": { "type": "string", - "id": 8 - } - }, - "nested": { - "NamePart": { - "fields": { - "namePart": { - "rule": "required", - "type": "string", - "id": 1 - }, - "isExtension": { - "rule": "required", - "type": "bool", - "id": 2 - } - } - } - } - }, - "SourceCodeInfo": { - "fields": { - "location": { - "rule": "repeated", - "type": "Location", - "id": 1 - } - }, - "nested": { - "Location": { - "fields": { - "path": { - "rule": "repeated", - "type": "int32", - "id": 1 - }, - "span": { - "rule": "repeated", - "type": "int32", - "id": 2 - }, - "leadingComments": { - "type": "string", - "id": 3 - }, - "trailingComments": { - "type": "string", - "id": 4 - }, - "leadingDetachedComments": { - "rule": "repeated", - "type": "string", - "id": 6 - } - } - } - } - }, - "GeneratedCodeInfo": { - "fields": { - "annotation": { + "id": 12 + }, + "additionalBindings": { "rule": "repeated", - "type": "Annotation", - "id": 1 - } - }, - "nested": { - "Annotation": { - "fields": { - "path": { - "rule": "repeated", - "type": "int32", - "id": 1 - }, - "sourceFile": { - "type": "string", - "id": 2 - }, - "begin": { - "type": "int32", - "id": 3 - }, - "end": { - "type": "int32", - "id": 4 - } - } + "type": "HttpRule", + "id": 11 } } }, - "Any": { + "CustomHttpPattern": { "fields": { - "type_url": { + "kind": { "type": "string", "id": 1 }, - "value": { - "type": "bytes", + "path": { + "type": "string", "id": 2 } } }, - "Duration": { - "fields": { - "seconds": { - "type": "int64", - "id": 1 - }, - "nanos": { - "type": "int32", - "id": 2 - } + "fieldBehavior": { + "rule": "repeated", + "type": "google.api.FieldBehavior", + "id": 1052, + "extend": "google.protobuf.FieldOptions" + }, + "FieldBehavior": { + "values": { + "FIELD_BEHAVIOR_UNSPECIFIED": 0, + "OPTIONAL": 1, + "REQUIRED": 2, + "OUTPUT_ONLY": 3, + "INPUT_ONLY": 4, + "IMMUTABLE": 5, + "UNORDERED_LIST": 6 } }, - "Empty": { - "fields": {} + "resourceReference": { + "type": "google.api.ResourceReference", + "id": 1055, + "extend": "google.protobuf.FieldOptions" }, - "FieldMask": { + "resourceDefinition": { + "rule": "repeated", + "type": "google.api.ResourceDescriptor", + "id": 1053, + "extend": "google.protobuf.FileOptions" + }, + "resource": { + "type": "google.api.ResourceDescriptor", + "id": 1053, + "extend": "google.protobuf.MessageOptions" + }, + "ResourceDescriptor": { "fields": { - "paths": { - "rule": "repeated", + "type": { "type": "string", "id": 1 + }, + "pattern": { + "rule": "repeated", + "type": "string", + "id": 2 + }, + "nameField": { + "type": "string", + "id": 3 + }, + "history": { + "type": "History", + "id": 4 + }, + "plural": { + "type": "string", + "id": 5 + }, + "singular": { + "type": "string", + "id": 6 + }, + "style": { + "rule": "repeated", + "type": "Style", + "id": 10 + } + }, + "nested": { + "History": { + "values": { + "HISTORY_UNSPECIFIED": 0, + "ORIGINALLY_SINGLE_PATTERN": 1, + "FUTURE_MULTI_PATTERN": 2 + } + }, + "Style": { + "values": { + "STYLE_UNSPECIFIED": 0, + "DECLARATIVE_FRIENDLY": 1 + } } } }, - "Timestamp": { + "ResourceReference": { "fields": { - "seconds": { - "type": "int64", + "type": { + "type": "string", "id": 1 }, - "nanos": { - "type": "int32", + "childType": { + "type": "string", "id": 2 } } + }, + "methodSignature": { + "rule": "repeated", + "type": "string", + "id": 1051, + "extend": "google.protobuf.MethodOptions" + }, + "defaultHost": { + "type": "string", + "id": 1049, + "extend": "google.protobuf.ServiceOptions" + }, + "oauthScopes": { + "type": "string", + "id": 1050, + "extend": "google.protobuf.ServiceOptions" } } }, diff --git a/packages/google-cloud-gkehub/src/index.ts b/packages/google-cloud-gkehub/src/index.ts index 6b597af9c05..c6f0a352b1a 100644 --- a/packages/google-cloud-gkehub/src/index.ts +++ b/packages/google-cloud-gkehub/src/index.ts @@ -16,12 +16,23 @@ // ** https://github.com/googleapis/synthtool ** // ** All changes to this file may be overwritten. ** +import * as v1 from './v1'; +import * as v1alpha from './v1alpha'; +import * as v1alpha2 from './v1alpha2'; +import * as v1beta from './v1beta'; import * as v1beta1 from './v1beta1'; const GkeHubMembershipServiceClient = v1beta1.GkeHubMembershipServiceClient; type GkeHubMembershipServiceClient = v1beta1.GkeHubMembershipServiceClient; -export {v1beta1, GkeHubMembershipServiceClient}; -export default {v1beta1, GkeHubMembershipServiceClient}; +export {v1, v1alpha, v1alpha2, v1beta, v1beta1, GkeHubMembershipServiceClient}; +export default { + v1, + v1alpha, + v1alpha2, + v1beta, + v1beta1, + GkeHubMembershipServiceClient, +}; import * as protos from '../protos/protos'; export {protos}; diff --git a/packages/google-cloud-gkehub/src/v1/gapic_metadata.json b/packages/google-cloud-gkehub/src/v1/gapic_metadata.json new file mode 100644 index 00000000000..2d0cf704d17 --- /dev/null +++ b/packages/google-cloud-gkehub/src/v1/gapic_metadata.json @@ -0,0 +1,141 @@ +{ + "schema": "1.0", + "comment": "This file maps proto services/RPCs to the corresponding library clients/methods", + "language": "typescript", + "protoPackage": "google.cloud.gkehub.v1", + "libraryPackage": "@google-cloud/gkehub", + "services": { + "GkeHub": { + "clients": { + "grpc": { + "libraryClient": "GkeHubClient", + "rpcs": { + "GetMembership": { + "methods": [ + "getMembership" + ] + }, + "GetFeature": { + "methods": [ + "getFeature" + ] + }, + "GenerateConnectManifest": { + "methods": [ + "generateConnectManifest" + ] + }, + "CreateMembership": { + "methods": [ + "createMembership" + ] + }, + "CreateFeature": { + "methods": [ + "createFeature" + ] + }, + "DeleteMembership": { + "methods": [ + "deleteMembership" + ] + }, + "DeleteFeature": { + "methods": [ + "deleteFeature" + ] + }, + "UpdateMembership": { + "methods": [ + "updateMembership" + ] + }, + "UpdateFeature": { + "methods": [ + "updateFeature" + ] + }, + "ListMemberships": { + "methods": [ + "listMemberships", + "listMembershipsStream", + "listMembershipsAsync" + ] + }, + "ListFeatures": { + "methods": [ + "listFeatures", + "listFeaturesStream", + "listFeaturesAsync" + ] + } + } + }, + "grpc-fallback": { + "libraryClient": "GkeHubClient", + "rpcs": { + "GetMembership": { + "methods": [ + "getMembership" + ] + }, + "GetFeature": { + "methods": [ + "getFeature" + ] + }, + "GenerateConnectManifest": { + "methods": [ + "generateConnectManifest" + ] + }, + "CreateMembership": { + "methods": [ + "createMembership" + ] + }, + "CreateFeature": { + "methods": [ + "createFeature" + ] + }, + "DeleteMembership": { + "methods": [ + "deleteMembership" + ] + }, + "DeleteFeature": { + "methods": [ + "deleteFeature" + ] + }, + "UpdateMembership": { + "methods": [ + "updateMembership" + ] + }, + "UpdateFeature": { + "methods": [ + "updateFeature" + ] + }, + "ListMemberships": { + "methods": [ + "listMemberships", + "listMembershipsStream", + "listMembershipsAsync" + ] + }, + "ListFeatures": { + "methods": [ + "listFeatures", + "listFeaturesStream", + "listFeaturesAsync" + ] + } + } + } + } + } + } +} diff --git a/packages/google-cloud-gkehub/src/v1/gke_hub_client.ts b/packages/google-cloud-gkehub/src/v1/gke_hub_client.ts new file mode 100644 index 00000000000..04ded4297bf --- /dev/null +++ b/packages/google-cloud-gkehub/src/v1/gke_hub_client.ts @@ -0,0 +1,2424 @@ +// 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 +// +// 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. ** + +/* global window */ +import * as gax from 'google-gax'; +import { + Callback, + CallOptions, + Descriptors, + ClientOptions, + LROperation, + PaginationCallback, + GaxCall, +} from 'google-gax'; + +import {Transform} from 'stream'; +import {RequestType} from 'google-gax/build/src/apitypes'; +import * as protos from '../../protos/protos'; +import jsonProtos = require('../../protos/protos.json'); +/** + * Client JSON configuration object, loaded from + * `src/v1/gke_hub_client_config.json`. + * This file defines retry strategy and timeouts for all API methods in this library. + */ +import * as gapicConfig from './gke_hub_client_config.json'; +import {operationsProtos} from 'google-gax'; +const version = require('../../../package.json').version; + +/** + * The GKE Hub service handles the registration of many Kubernetes clusters to + * Google Cloud, and the management of multi-cluster features over those + * clusters. + * + * The GKE Hub service operates on the following resources: + * + * * {@link google.cloud.gkehub.v1.Membership|Membership} + * * {@link google.cloud.gkehub.v1.Feature|Feature} + * + * GKE Hub is currently only available in the global region. + * + * **Membership management may be non-trivial:** it is recommended to use one + * of the Google-provided client libraries or tools where possible when working + * with Membership resources. + * @class + * @memberof v1 + */ +export class GkeHubClient { + private _terminated = false; + private _opts: ClientOptions; + private _providedCustomServicePath: boolean; + private _gaxModule: typeof gax | typeof gax.fallback; + private _gaxGrpc: gax.GrpcClient | gax.fallback.GrpcClient; + private _protos: {}; + private _defaults: {[method: string]: gax.CallSettings}; + auth: gax.GoogleAuth; + descriptors: Descriptors = { + page: {}, + stream: {}, + longrunning: {}, + batching: {}, + }; + warn: (code: string, message: string, warnType?: string) => void; + innerApiCalls: {[name: string]: Function}; + pathTemplates: {[name: string]: gax.PathTemplate}; + operationsClient: gax.OperationsClient; + gkeHubStub?: Promise<{[name: string]: Function}>; + + /** + * Construct an instance of GkeHubClient. + * + * @param {object} [options] - The configuration object. + * The options accepted by the constructor are described in detail + * in [this document](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#creating-the-client-instance). + * The common options are: + * @param {object} [options.credentials] - Credentials object. + * @param {string} [options.credentials.client_email] + * @param {string} [options.credentials.private_key] + * @param {string} [options.email] - Account email address. Required when + * using a .pem or .p12 keyFilename. + * @param {string} [options.keyFilename] - Full path to the a .json, .pem, or + * .p12 key downloaded from the Google Developers Console. If you provide + * a path to a JSON file, the projectId option below is not necessary. + * NOTE: .pem and .p12 require you to specify options.email as well. + * @param {number} [options.port] - The port on which to connect to + * the remote host. + * @param {string} [options.projectId] - The project ID from the Google + * Developer's Console, e.g. 'grape-spaceship-123'. We will also check + * the environment variable GCLOUD_PROJECT for your project ID. If your + * app is running in an environment which supports + * {@link https://developers.google.com/identity/protocols/application-default-credentials Application Default Credentials}, + * your project ID will be detected automatically. + * @param {string} [options.apiEndpoint] - The domain name of the + * API remote host. + * @param {gax.ClientConfig} [options.clientConfig] - Client configuration override. + * Follows the structure of {@link gapicConfig}. + * @param {boolean} [options.fallback] - Use HTTP fallback mode. + * In fallback mode, a special browser-compatible transport implementation is used + * instead of gRPC transport. In browser context (if the `window` object is defined) + * the fallback mode is enabled automatically; set `options.fallback` to `false` + * if you need to override this behavior. + */ + constructor(opts?: ClientOptions) { + // Ensure that options include all the required fields. + const staticMembers = this.constructor as typeof GkeHubClient; + const servicePath = + opts?.servicePath || opts?.apiEndpoint || staticMembers.servicePath; + this._providedCustomServicePath = !!( + opts?.servicePath || opts?.apiEndpoint + ); + const port = opts?.port || staticMembers.port; + const clientConfig = opts?.clientConfig ?? {}; + const fallback = + opts?.fallback ?? + (typeof window !== 'undefined' && typeof window?.fetch === 'function'); + opts = Object.assign({servicePath, port, clientConfig, fallback}, opts); + + // If scopes are unset in options and we're connecting to a non-default endpoint, set scopes just in case. + if (servicePath !== staticMembers.servicePath && !('scopes' in opts)) { + opts['scopes'] = staticMembers.scopes; + } + + // Choose either gRPC or proto-over-HTTP implementation of google-gax. + this._gaxModule = opts.fallback ? gax.fallback : gax; + + // Create a `gaxGrpc` object, with any grpc-specific options sent to the client. + this._gaxGrpc = new this._gaxModule.GrpcClient(opts); + + // Save options to use in initialize() method. + this._opts = opts; + + // Save the auth object to the client, for use by other methods. + this.auth = this._gaxGrpc.auth as gax.GoogleAuth; + + // Set the default scopes in auth client if needed. + if (servicePath === staticMembers.servicePath) { + this.auth.defaultScopes = staticMembers.scopes; + } + + // Determine the client header string. + const clientHeader = [`gax/${this._gaxModule.version}`, `gapic/${version}`]; + if (typeof process !== 'undefined' && 'versions' in process) { + clientHeader.push(`gl-node/${process.versions.node}`); + } else { + clientHeader.push(`gl-web/${this._gaxModule.version}`); + } + if (!opts.fallback) { + clientHeader.push(`grpc/${this._gaxGrpc.grpcVersion}`); + } else if (opts.fallback === 'rest') { + clientHeader.push(`rest/${this._gaxGrpc.grpcVersion}`); + } + if (opts.libName && opts.libVersion) { + clientHeader.push(`${opts.libName}/${opts.libVersion}`); + } + // Load the applicable protos. + this._protos = this._gaxGrpc.loadProtoJSON(jsonProtos); + + // This API contains "path templates"; forward-slash-separated + // identifiers to uniquely identify resources within the API. + // Create useful helper objects for these. + this.pathTemplates = { + featurePathTemplate: new this._gaxModule.PathTemplate( + 'projects/{project}/locations/{location}/features/{feature}' + ), + locationPathTemplate: new this._gaxModule.PathTemplate( + 'projects/{project}/locations/{location}' + ), + membershipPathTemplate: new this._gaxModule.PathTemplate( + 'projects/{project}/locations/{location}/memberships/{membership}' + ), + projectPathTemplate: new this._gaxModule.PathTemplate( + 'projects/{project}' + ), + }; + + // Some of the methods on this service return "paged" results, + // (e.g. 50 results at a time, with tokens to get subsequent + // pages). Denote the keys used for pagination and results. + this.descriptors.page = { + listMemberships: new this._gaxModule.PageDescriptor( + 'pageToken', + 'nextPageToken', + 'resources' + ), + listFeatures: new this._gaxModule.PageDescriptor( + 'pageToken', + 'nextPageToken', + 'resources' + ), + }; + + const protoFilesRoot = this._gaxModule.protobuf.Root.fromJSON(jsonProtos); + + // This API contains "long-running operations", which return a + // an Operation object that allows for tracking of the operation, + // rather than holding a request open. + + this.operationsClient = this._gaxModule + .lro({ + auth: this.auth, + grpc: 'grpc' in this._gaxGrpc ? this._gaxGrpc.grpc : undefined, + }) + .operationsClient(opts); + const createMembershipResponse = protoFilesRoot.lookup( + '.google.cloud.gkehub.v1.Membership' + ) as gax.protobuf.Type; + const createMembershipMetadata = protoFilesRoot.lookup( + '.google.cloud.gkehub.v1.OperationMetadata' + ) as gax.protobuf.Type; + const createFeatureResponse = protoFilesRoot.lookup( + '.google.cloud.gkehub.v1.Feature' + ) as gax.protobuf.Type; + const createFeatureMetadata = protoFilesRoot.lookup( + '.google.cloud.gkehub.v1.OperationMetadata' + ) as gax.protobuf.Type; + const deleteMembershipResponse = protoFilesRoot.lookup( + '.google.protobuf.Empty' + ) as gax.protobuf.Type; + const deleteMembershipMetadata = protoFilesRoot.lookup( + '.google.cloud.gkehub.v1.OperationMetadata' + ) as gax.protobuf.Type; + const deleteFeatureResponse = protoFilesRoot.lookup( + '.google.protobuf.Empty' + ) as gax.protobuf.Type; + const deleteFeatureMetadata = protoFilesRoot.lookup( + '.google.cloud.gkehub.v1.OperationMetadata' + ) as gax.protobuf.Type; + const updateMembershipResponse = protoFilesRoot.lookup( + '.google.cloud.gkehub.v1.Membership' + ) as gax.protobuf.Type; + const updateMembershipMetadata = protoFilesRoot.lookup( + '.google.cloud.gkehub.v1.OperationMetadata' + ) as gax.protobuf.Type; + const updateFeatureResponse = protoFilesRoot.lookup( + '.google.cloud.gkehub.v1.Feature' + ) as gax.protobuf.Type; + const updateFeatureMetadata = protoFilesRoot.lookup( + '.google.cloud.gkehub.v1.OperationMetadata' + ) as gax.protobuf.Type; + + this.descriptors.longrunning = { + createMembership: new this._gaxModule.LongrunningDescriptor( + this.operationsClient, + createMembershipResponse.decode.bind(createMembershipResponse), + createMembershipMetadata.decode.bind(createMembershipMetadata) + ), + createFeature: new this._gaxModule.LongrunningDescriptor( + this.operationsClient, + createFeatureResponse.decode.bind(createFeatureResponse), + createFeatureMetadata.decode.bind(createFeatureMetadata) + ), + deleteMembership: new this._gaxModule.LongrunningDescriptor( + this.operationsClient, + deleteMembershipResponse.decode.bind(deleteMembershipResponse), + deleteMembershipMetadata.decode.bind(deleteMembershipMetadata) + ), + deleteFeature: new this._gaxModule.LongrunningDescriptor( + this.operationsClient, + deleteFeatureResponse.decode.bind(deleteFeatureResponse), + deleteFeatureMetadata.decode.bind(deleteFeatureMetadata) + ), + updateMembership: new this._gaxModule.LongrunningDescriptor( + this.operationsClient, + updateMembershipResponse.decode.bind(updateMembershipResponse), + updateMembershipMetadata.decode.bind(updateMembershipMetadata) + ), + updateFeature: new this._gaxModule.LongrunningDescriptor( + this.operationsClient, + updateFeatureResponse.decode.bind(updateFeatureResponse), + updateFeatureMetadata.decode.bind(updateFeatureMetadata) + ), + }; + + // Put together the default options sent with requests. + this._defaults = this._gaxGrpc.constructSettings( + 'google.cloud.gkehub.v1.GkeHub', + gapicConfig as gax.ClientConfig, + opts.clientConfig || {}, + {'x-goog-api-client': clientHeader.join(' ')} + ); + + // Set up a dictionary of "inner API calls"; the core implementation + // of calling the API is handled in `google-gax`, with this code + // merely providing the destination and request information. + this.innerApiCalls = {}; + + // Add a warn function to the client constructor so it can be easily tested. + this.warn = gax.warn; + } + + /** + * Initialize the client. + * Performs asynchronous operations (such as authentication) and prepares the client. + * This function will be called automatically when any class method is called for the + * first time, but if you need to initialize it before calling an actual method, + * feel free to call initialize() directly. + * + * You can await on this method if you want to make sure the client is initialized. + * + * @returns {Promise} A promise that resolves to an authenticated service stub. + */ + initialize() { + // If the client stub promise is already initialized, return immediately. + if (this.gkeHubStub) { + return this.gkeHubStub; + } + + // Put together the "service stub" for + // google.cloud.gkehub.v1.GkeHub. + this.gkeHubStub = this._gaxGrpc.createStub( + this._opts.fallback + ? (this._protos as protobuf.Root).lookupService( + 'google.cloud.gkehub.v1.GkeHub' + ) + : // eslint-disable-next-line @typescript-eslint/no-explicit-any + (this._protos as any).google.cloud.gkehub.v1.GkeHub, + this._opts, + this._providedCustomServicePath + ) as Promise<{[method: string]: Function}>; + + // Iterate over each of the methods that the service provides + // and create an API call method for each. + const gkeHubStubMethods = [ + 'listMemberships', + 'listFeatures', + 'getMembership', + 'getFeature', + 'createMembership', + 'createFeature', + 'deleteMembership', + 'deleteFeature', + 'updateMembership', + 'updateFeature', + 'generateConnectManifest', + ]; + for (const methodName of gkeHubStubMethods) { + const callPromise = this.gkeHubStub.then( + stub => + (...args: Array<{}>) => { + if (this._terminated) { + return Promise.reject('The client has already been closed.'); + } + const func = stub[methodName]; + return func.apply(stub, args); + }, + (err: Error | null | undefined) => () => { + throw err; + } + ); + + const descriptor = + this.descriptors.page[methodName] || + this.descriptors.longrunning[methodName] || + undefined; + const apiCall = this._gaxModule.createApiCall( + callPromise, + this._defaults[methodName], + descriptor + ); + + this.innerApiCalls[methodName] = apiCall; + } + + return this.gkeHubStub; + } + + /** + * The DNS address for this API service. + * @returns {string} The DNS address for this service. + */ + static get servicePath() { + return 'gkehub.googleapis.com'; + } + + /** + * The DNS address for this API service - same as servicePath(), + * exists for compatibility reasons. + * @returns {string} The DNS address for this service. + */ + static get apiEndpoint() { + return 'gkehub.googleapis.com'; + } + + /** + * The port for this API service. + * @returns {number} The default port for this service. + */ + static get port() { + return 443; + } + + /** + * The scopes needed to make gRPC calls for every method defined + * in this service. + * @returns {string[]} List of default scopes. + */ + static get scopes() { + return ['https://www.googleapis.com/auth/cloud-platform']; + } + + getProjectId(): Promise; + getProjectId(callback: Callback): void; + /** + * Return the project ID used by this class. + * @returns {Promise} A promise that resolves to string containing the project ID. + */ + getProjectId( + callback?: Callback + ): Promise | void { + if (callback) { + this.auth.getProjectId(callback); + return; + } + return this.auth.getProjectId(); + } + + // ------------------- + // -- Service calls -- + // ------------------- + getMembership( + request?: protos.google.cloud.gkehub.v1.IGetMembershipRequest, + options?: CallOptions + ): Promise< + [ + protos.google.cloud.gkehub.v1.IMembership, + protos.google.cloud.gkehub.v1.IGetMembershipRequest | undefined, + {} | undefined + ] + >; + getMembership( + request: protos.google.cloud.gkehub.v1.IGetMembershipRequest, + options: CallOptions, + callback: Callback< + protos.google.cloud.gkehub.v1.IMembership, + protos.google.cloud.gkehub.v1.IGetMembershipRequest | null | undefined, + {} | null | undefined + > + ): void; + getMembership( + request: protos.google.cloud.gkehub.v1.IGetMembershipRequest, + callback: Callback< + protos.google.cloud.gkehub.v1.IMembership, + protos.google.cloud.gkehub.v1.IGetMembershipRequest | null | undefined, + {} | null | undefined + > + ): void; + /** + * Gets the details of a Membership. + * + * @param {Object} request + * The request object that will be sent. + * @param {string} request.name + * Required. The Membership resource name in the format + * `projects/* /locations/* /memberships/*`. + * @param {object} [options] + * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. + * @returns {Promise} - The promise which resolves to an array. + * The first element of the array is an object representing [Membership]{@link google.cloud.gkehub.v1.Membership}. + * Please see the + * [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods) + * for more details and examples. + * @example + * const [response] = await client.getMembership(request); + */ + getMembership( + request?: protos.google.cloud.gkehub.v1.IGetMembershipRequest, + optionsOrCallback?: + | CallOptions + | Callback< + protos.google.cloud.gkehub.v1.IMembership, + | protos.google.cloud.gkehub.v1.IGetMembershipRequest + | null + | undefined, + {} | null | undefined + >, + callback?: Callback< + protos.google.cloud.gkehub.v1.IMembership, + protos.google.cloud.gkehub.v1.IGetMembershipRequest | null | undefined, + {} | null | undefined + > + ): Promise< + [ + protos.google.cloud.gkehub.v1.IMembership, + protos.google.cloud.gkehub.v1.IGetMembershipRequest | undefined, + {} | undefined + ] + > | void { + request = request || {}; + let options: CallOptions; + if (typeof optionsOrCallback === 'function' && callback === undefined) { + callback = optionsOrCallback; + options = {}; + } else { + options = optionsOrCallback as CallOptions; + } + options = options || {}; + options.otherArgs = options.otherArgs || {}; + options.otherArgs.headers = options.otherArgs.headers || {}; + options.otherArgs.headers['x-goog-request-params'] = + gax.routingHeader.fromParams({ + name: request.name || '', + }); + this.initialize(); + return this.innerApiCalls.getMembership(request, options, callback); + } + getFeature( + request?: protos.google.cloud.gkehub.v1.IGetFeatureRequest, + options?: CallOptions + ): Promise< + [ + protos.google.cloud.gkehub.v1.IFeature, + protos.google.cloud.gkehub.v1.IGetFeatureRequest | undefined, + {} | undefined + ] + >; + getFeature( + request: protos.google.cloud.gkehub.v1.IGetFeatureRequest, + options: CallOptions, + callback: Callback< + protos.google.cloud.gkehub.v1.IFeature, + protos.google.cloud.gkehub.v1.IGetFeatureRequest | null | undefined, + {} | null | undefined + > + ): void; + getFeature( + request: protos.google.cloud.gkehub.v1.IGetFeatureRequest, + callback: Callback< + protos.google.cloud.gkehub.v1.IFeature, + protos.google.cloud.gkehub.v1.IGetFeatureRequest | null | undefined, + {} | null | undefined + > + ): void; + /** + * Gets details of a single Feature. + * + * @param {Object} request + * The request object that will be sent. + * @param {string} request.name + * The Feature resource name in the format + * `projects/* /locations/* /features/*` + * @param {object} [options] + * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. + * @returns {Promise} - The promise which resolves to an array. + * The first element of the array is an object representing [Feature]{@link google.cloud.gkehub.v1.Feature}. + * Please see the + * [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods) + * for more details and examples. + * @example + * const [response] = await client.getFeature(request); + */ + getFeature( + request?: protos.google.cloud.gkehub.v1.IGetFeatureRequest, + optionsOrCallback?: + | CallOptions + | Callback< + protos.google.cloud.gkehub.v1.IFeature, + protos.google.cloud.gkehub.v1.IGetFeatureRequest | null | undefined, + {} | null | undefined + >, + callback?: Callback< + protos.google.cloud.gkehub.v1.IFeature, + protos.google.cloud.gkehub.v1.IGetFeatureRequest | null | undefined, + {} | null | undefined + > + ): Promise< + [ + protos.google.cloud.gkehub.v1.IFeature, + protos.google.cloud.gkehub.v1.IGetFeatureRequest | undefined, + {} | undefined + ] + > | void { + request = request || {}; + let options: CallOptions; + if (typeof optionsOrCallback === 'function' && callback === undefined) { + callback = optionsOrCallback; + options = {}; + } else { + options = optionsOrCallback as CallOptions; + } + options = options || {}; + options.otherArgs = options.otherArgs || {}; + options.otherArgs.headers = options.otherArgs.headers || {}; + options.otherArgs.headers['x-goog-request-params'] = + gax.routingHeader.fromParams({ + name: request.name || '', + }); + this.initialize(); + return this.innerApiCalls.getFeature(request, options, callback); + } + generateConnectManifest( + request?: protos.google.cloud.gkehub.v1.IGenerateConnectManifestRequest, + options?: CallOptions + ): Promise< + [ + protos.google.cloud.gkehub.v1.IGenerateConnectManifestResponse, + protos.google.cloud.gkehub.v1.IGenerateConnectManifestRequest | undefined, + {} | undefined + ] + >; + generateConnectManifest( + request: protos.google.cloud.gkehub.v1.IGenerateConnectManifestRequest, + options: CallOptions, + callback: Callback< + protos.google.cloud.gkehub.v1.IGenerateConnectManifestResponse, + | protos.google.cloud.gkehub.v1.IGenerateConnectManifestRequest + | null + | undefined, + {} | null | undefined + > + ): void; + generateConnectManifest( + request: protos.google.cloud.gkehub.v1.IGenerateConnectManifestRequest, + callback: Callback< + protos.google.cloud.gkehub.v1.IGenerateConnectManifestResponse, + | protos.google.cloud.gkehub.v1.IGenerateConnectManifestRequest + | null + | undefined, + {} | null | undefined + > + ): void; + /** + * Generates the manifest for deployment of the GKE connect agent. + * + * **This method is used internally by Google-provided libraries.** + * Most clients should not need to call this method directly. + * + * @param {Object} request + * The request object that will be sent. + * @param {string} request.name + * Required. The Membership resource name the Agent will associate with, in the format + * `projects/* /locations/* /memberships/*`. + * @param {string} [request.namespace] + * Optional. Namespace for GKE Connect agent resources. Defaults to `gke-connect`. + * + * The Connect Agent is authorized automatically when run in the default + * namespace. Otherwise, explicit authorization must be granted with an + * additional IAM binding. + * @param {Buffer} [request.proxy] + * Optional. URI of a proxy if connectivity from the agent to gkeconnect.googleapis.com + * requires the use of a proxy. Format must be in the form + * `http(s)://{proxy_address}`, depending on the HTTP/HTTPS protocol + * supported by the proxy. This will direct the connect agent's outbound + * traffic through a HTTP(S) proxy. + * @param {string} [request.version] + * Optional. The Connect agent version to use. Defaults to the most current version. + * @param {boolean} [request.isUpgrade] + * Optional. If true, generate the resources for upgrade only. Some resources + * generated only for installation (e.g. secrets) will be excluded. + * @param {string} [request.registry] + * Optional. The registry to fetch the connect agent image from. Defaults to + * gcr.io/gkeconnect. + * @param {Buffer} [request.imagePullSecretContent] + * Optional. The image pull secret content for the registry, if not public. + * @param {object} [options] + * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. + * @returns {Promise} - The promise which resolves to an array. + * The first element of the array is an object representing [GenerateConnectManifestResponse]{@link google.cloud.gkehub.v1.GenerateConnectManifestResponse}. + * Please see the + * [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods) + * for more details and examples. + * @example + * const [response] = await client.generateConnectManifest(request); + */ + generateConnectManifest( + request?: protos.google.cloud.gkehub.v1.IGenerateConnectManifestRequest, + optionsOrCallback?: + | CallOptions + | Callback< + protos.google.cloud.gkehub.v1.IGenerateConnectManifestResponse, + | protos.google.cloud.gkehub.v1.IGenerateConnectManifestRequest + | null + | undefined, + {} | null | undefined + >, + callback?: Callback< + protos.google.cloud.gkehub.v1.IGenerateConnectManifestResponse, + | protos.google.cloud.gkehub.v1.IGenerateConnectManifestRequest + | null + | undefined, + {} | null | undefined + > + ): Promise< + [ + protos.google.cloud.gkehub.v1.IGenerateConnectManifestResponse, + protos.google.cloud.gkehub.v1.IGenerateConnectManifestRequest | undefined, + {} | undefined + ] + > | void { + request = request || {}; + let options: CallOptions; + if (typeof optionsOrCallback === 'function' && callback === undefined) { + callback = optionsOrCallback; + options = {}; + } else { + options = optionsOrCallback as CallOptions; + } + options = options || {}; + options.otherArgs = options.otherArgs || {}; + options.otherArgs.headers = options.otherArgs.headers || {}; + options.otherArgs.headers['x-goog-request-params'] = + gax.routingHeader.fromParams({ + name: request.name || '', + }); + this.initialize(); + return this.innerApiCalls.generateConnectManifest( + request, + options, + callback + ); + } + + createMembership( + request?: protos.google.cloud.gkehub.v1.ICreateMembershipRequest, + options?: CallOptions + ): Promise< + [ + LROperation< + protos.google.cloud.gkehub.v1.IMembership, + protos.google.cloud.gkehub.v1.IOperationMetadata + >, + protos.google.longrunning.IOperation | undefined, + {} | undefined + ] + >; + createMembership( + request: protos.google.cloud.gkehub.v1.ICreateMembershipRequest, + options: CallOptions, + callback: Callback< + LROperation< + protos.google.cloud.gkehub.v1.IMembership, + protos.google.cloud.gkehub.v1.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + > + ): void; + createMembership( + request: protos.google.cloud.gkehub.v1.ICreateMembershipRequest, + callback: Callback< + LROperation< + protos.google.cloud.gkehub.v1.IMembership, + protos.google.cloud.gkehub.v1.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + > + ): void; + /** + * Creates a new Membership. + * + * **This is currently only supported for GKE clusters on Google Cloud**. + * To register other clusters, follow the instructions at + * https://cloud.google.com/anthos/multicluster-management/connect/registering-a-cluster. + * + * @param {Object} request + * The request object that will be sent. + * @param {string} request.parent + * Required. The parent (project and location) where the Memberships will be created. + * Specified in the format `projects/* /locations/*`. + * @param {string} request.membershipId + * Required. Client chosen ID for the membership. `membership_id` must be a valid RFC + * 1123 compliant DNS label: + * + * 1. At most 63 characters in length + * 2. It must consist of lower case alphanumeric characters or `-` + * 3. It must start and end with an alphanumeric character + * + * Which can be expressed as the regex: `[a-z0-9]([-a-z0-9]*[a-z0-9])?`, + * with a maximum length of 63 characters. + * @param {google.cloud.gkehub.v1.Membership} request.resource + * Required. The membership to create. + * @param {string} [request.requestId] + * Optional. A request ID to identify requests. Specify a unique request ID + * so that if you must retry your request, the server will know to ignore + * the request if it has already been completed. The server will guarantee + * that for at least 60 minutes after the first request. + * + * For example, consider a situation where you make an initial request and + * the request times out. If you make the request again with the same request + * ID, the server can check if original operation with the same request ID + * was received, and if so, will ignore the second request. This prevents + * clients from accidentally creating duplicate commitments. + * + * The request ID must be a valid UUID with the exception that zero UUID is + * not supported (00000000-0000-0000-0000-000000000000). + * @param {object} [options] + * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. + * @returns {Promise} - The promise which resolves to an array. + * The first element of the array is an object representing + * a long running operation. Its `promise()` method returns a promise + * you can `await` for. + * Please see the + * [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations) + * for more details and examples. + * @example + * const [operation] = await client.createMembership(request); + * const [response] = await operation.promise(); + */ + createMembership( + request?: protos.google.cloud.gkehub.v1.ICreateMembershipRequest, + optionsOrCallback?: + | CallOptions + | Callback< + LROperation< + protos.google.cloud.gkehub.v1.IMembership, + protos.google.cloud.gkehub.v1.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + >, + callback?: Callback< + LROperation< + protos.google.cloud.gkehub.v1.IMembership, + protos.google.cloud.gkehub.v1.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + > + ): Promise< + [ + LROperation< + protos.google.cloud.gkehub.v1.IMembership, + protos.google.cloud.gkehub.v1.IOperationMetadata + >, + protos.google.longrunning.IOperation | undefined, + {} | undefined + ] + > | void { + request = request || {}; + let options: CallOptions; + if (typeof optionsOrCallback === 'function' && callback === undefined) { + callback = optionsOrCallback; + options = {}; + } else { + options = optionsOrCallback as CallOptions; + } + options = options || {}; + options.otherArgs = options.otherArgs || {}; + options.otherArgs.headers = options.otherArgs.headers || {}; + options.otherArgs.headers['x-goog-request-params'] = + gax.routingHeader.fromParams({ + parent: request.parent || '', + }); + this.initialize(); + return this.innerApiCalls.createMembership(request, options, callback); + } + /** + * Check the status of the long running operation returned by `createMembership()`. + * @param {String} name + * The operation name that will be passed. + * @returns {Promise} - The promise which resolves to an object. + * The decoded operation object has result and metadata field to get information from. + * Please see the + * [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations) + * for more details and examples. + * @example + * const decodedOperation = await checkCreateMembershipProgress(name); + * console.log(decodedOperation.result); + * console.log(decodedOperation.done); + * console.log(decodedOperation.metadata); + */ + async checkCreateMembershipProgress( + name: string + ): Promise< + LROperation< + protos.google.cloud.gkehub.v1.Membership, + protos.google.cloud.gkehub.v1.OperationMetadata + > + > { + const request = new operationsProtos.google.longrunning.GetOperationRequest( + {name} + ); + const [operation] = await this.operationsClient.getOperation(request); + const decodeOperation = new gax.Operation( + operation, + this.descriptors.longrunning.createMembership, + gax.createDefaultBackoffSettings() + ); + return decodeOperation as LROperation< + protos.google.cloud.gkehub.v1.Membership, + protos.google.cloud.gkehub.v1.OperationMetadata + >; + } + createFeature( + request?: protos.google.cloud.gkehub.v1.ICreateFeatureRequest, + options?: CallOptions + ): Promise< + [ + LROperation< + protos.google.cloud.gkehub.v1.IFeature, + protos.google.cloud.gkehub.v1.IOperationMetadata + >, + protos.google.longrunning.IOperation | undefined, + {} | undefined + ] + >; + createFeature( + request: protos.google.cloud.gkehub.v1.ICreateFeatureRequest, + options: CallOptions, + callback: Callback< + LROperation< + protos.google.cloud.gkehub.v1.IFeature, + protos.google.cloud.gkehub.v1.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + > + ): void; + createFeature( + request: protos.google.cloud.gkehub.v1.ICreateFeatureRequest, + callback: Callback< + LROperation< + protos.google.cloud.gkehub.v1.IFeature, + protos.google.cloud.gkehub.v1.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + > + ): void; + /** + * Adds a new Feature. + * + * @param {Object} request + * The request object that will be sent. + * @param {string} request.parent + * The parent (project and location) where the Feature will be created. + * Specified in the format `projects/* /locations/*`. + * @param {string} request.featureId + * The ID of the feature to create. + * @param {google.cloud.gkehub.v1.Feature} request.resource + * The Feature resource to create. + * @param {string} [request.requestId] + * Optional. A request ID to identify requests. Specify a unique request ID + * so that if you must retry your request, the server will know to ignore + * the request if it has already been completed. The server will guarantee + * that for at least 60 minutes after the first request. + * + * For example, consider a situation where you make an initial request and + * the request times out. If you make the request again with the same request + * ID, the server can check if original operation with the same request ID + * was received, and if so, will ignore the second request. This prevents + * clients from accidentally creating duplicate commitments. + * + * The request ID must be a valid UUID with the exception that zero UUID is + * not supported (00000000-0000-0000-0000-000000000000). + * @param {object} [options] + * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. + * @returns {Promise} - The promise which resolves to an array. + * The first element of the array is an object representing + * a long running operation. Its `promise()` method returns a promise + * you can `await` for. + * Please see the + * [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations) + * for more details and examples. + * @example + * const [operation] = await client.createFeature(request); + * const [response] = await operation.promise(); + */ + createFeature( + request?: protos.google.cloud.gkehub.v1.ICreateFeatureRequest, + optionsOrCallback?: + | CallOptions + | Callback< + LROperation< + protos.google.cloud.gkehub.v1.IFeature, + protos.google.cloud.gkehub.v1.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + >, + callback?: Callback< + LROperation< + protos.google.cloud.gkehub.v1.IFeature, + protos.google.cloud.gkehub.v1.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + > + ): Promise< + [ + LROperation< + protos.google.cloud.gkehub.v1.IFeature, + protos.google.cloud.gkehub.v1.IOperationMetadata + >, + protos.google.longrunning.IOperation | undefined, + {} | undefined + ] + > | void { + request = request || {}; + let options: CallOptions; + if (typeof optionsOrCallback === 'function' && callback === undefined) { + callback = optionsOrCallback; + options = {}; + } else { + options = optionsOrCallback as CallOptions; + } + options = options || {}; + options.otherArgs = options.otherArgs || {}; + options.otherArgs.headers = options.otherArgs.headers || {}; + options.otherArgs.headers['x-goog-request-params'] = + gax.routingHeader.fromParams({ + parent: request.parent || '', + }); + this.initialize(); + return this.innerApiCalls.createFeature(request, options, callback); + } + /** + * Check the status of the long running operation returned by `createFeature()`. + * @param {String} name + * The operation name that will be passed. + * @returns {Promise} - The promise which resolves to an object. + * The decoded operation object has result and metadata field to get information from. + * Please see the + * [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations) + * for more details and examples. + * @example + * const decodedOperation = await checkCreateFeatureProgress(name); + * console.log(decodedOperation.result); + * console.log(decodedOperation.done); + * console.log(decodedOperation.metadata); + */ + async checkCreateFeatureProgress( + name: string + ): Promise< + LROperation< + protos.google.cloud.gkehub.v1.Feature, + protos.google.cloud.gkehub.v1.OperationMetadata + > + > { + const request = new operationsProtos.google.longrunning.GetOperationRequest( + {name} + ); + const [operation] = await this.operationsClient.getOperation(request); + const decodeOperation = new gax.Operation( + operation, + this.descriptors.longrunning.createFeature, + gax.createDefaultBackoffSettings() + ); + return decodeOperation as LROperation< + protos.google.cloud.gkehub.v1.Feature, + protos.google.cloud.gkehub.v1.OperationMetadata + >; + } + deleteMembership( + request?: protos.google.cloud.gkehub.v1.IDeleteMembershipRequest, + options?: CallOptions + ): Promise< + [ + LROperation< + protos.google.protobuf.IEmpty, + protos.google.cloud.gkehub.v1.IOperationMetadata + >, + protos.google.longrunning.IOperation | undefined, + {} | undefined + ] + >; + deleteMembership( + request: protos.google.cloud.gkehub.v1.IDeleteMembershipRequest, + options: CallOptions, + callback: Callback< + LROperation< + protos.google.protobuf.IEmpty, + protos.google.cloud.gkehub.v1.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + > + ): void; + deleteMembership( + request: protos.google.cloud.gkehub.v1.IDeleteMembershipRequest, + callback: Callback< + LROperation< + protos.google.protobuf.IEmpty, + protos.google.cloud.gkehub.v1.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + > + ): void; + /** + * Removes a Membership. + * + * **This is currently only supported for GKE clusters on Google Cloud**. + * To unregister other clusters, follow the instructions at + * https://cloud.google.com/anthos/multicluster-management/connect/unregistering-a-cluster. + * + * @param {Object} request + * The request object that will be sent. + * @param {string} request.name + * Required. The Membership resource name in the format + * `projects/* /locations/* /memberships/*`. + * @param {string} [request.requestId] + * Optional. A request ID to identify requests. Specify a unique request ID + * so that if you must retry your request, the server will know to ignore + * the request if it has already been completed. The server will guarantee + * that for at least 60 minutes after the first request. + * + * For example, consider a situation where you make an initial request and + * the request times out. If you make the request again with the same request + * ID, the server can check if original operation with the same request ID + * was received, and if so, will ignore the second request. This prevents + * clients from accidentally creating duplicate commitments. + * + * The request ID must be a valid UUID with the exception that zero UUID is + * not supported (00000000-0000-0000-0000-000000000000). + * @param {object} [options] + * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. + * @returns {Promise} - The promise which resolves to an array. + * The first element of the array is an object representing + * a long running operation. Its `promise()` method returns a promise + * you can `await` for. + * Please see the + * [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations) + * for more details and examples. + * @example + * const [operation] = await client.deleteMembership(request); + * const [response] = await operation.promise(); + */ + deleteMembership( + request?: protos.google.cloud.gkehub.v1.IDeleteMembershipRequest, + optionsOrCallback?: + | CallOptions + | Callback< + LROperation< + protos.google.protobuf.IEmpty, + protos.google.cloud.gkehub.v1.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + >, + callback?: Callback< + LROperation< + protos.google.protobuf.IEmpty, + protos.google.cloud.gkehub.v1.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + > + ): Promise< + [ + LROperation< + protos.google.protobuf.IEmpty, + protos.google.cloud.gkehub.v1.IOperationMetadata + >, + protos.google.longrunning.IOperation | undefined, + {} | undefined + ] + > | void { + request = request || {}; + let options: CallOptions; + if (typeof optionsOrCallback === 'function' && callback === undefined) { + callback = optionsOrCallback; + options = {}; + } else { + options = optionsOrCallback as CallOptions; + } + options = options || {}; + options.otherArgs = options.otherArgs || {}; + options.otherArgs.headers = options.otherArgs.headers || {}; + options.otherArgs.headers['x-goog-request-params'] = + gax.routingHeader.fromParams({ + name: request.name || '', + }); + this.initialize(); + return this.innerApiCalls.deleteMembership(request, options, callback); + } + /** + * Check the status of the long running operation returned by `deleteMembership()`. + * @param {String} name + * The operation name that will be passed. + * @returns {Promise} - The promise which resolves to an object. + * The decoded operation object has result and metadata field to get information from. + * Please see the + * [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations) + * for more details and examples. + * @example + * const decodedOperation = await checkDeleteMembershipProgress(name); + * console.log(decodedOperation.result); + * console.log(decodedOperation.done); + * console.log(decodedOperation.metadata); + */ + async checkDeleteMembershipProgress( + name: string + ): Promise< + LROperation< + protos.google.protobuf.Empty, + protos.google.cloud.gkehub.v1.OperationMetadata + > + > { + const request = new operationsProtos.google.longrunning.GetOperationRequest( + {name} + ); + const [operation] = await this.operationsClient.getOperation(request); + const decodeOperation = new gax.Operation( + operation, + this.descriptors.longrunning.deleteMembership, + gax.createDefaultBackoffSettings() + ); + return decodeOperation as LROperation< + protos.google.protobuf.Empty, + protos.google.cloud.gkehub.v1.OperationMetadata + >; + } + deleteFeature( + request?: protos.google.cloud.gkehub.v1.IDeleteFeatureRequest, + options?: CallOptions + ): Promise< + [ + LROperation< + protos.google.protobuf.IEmpty, + protos.google.cloud.gkehub.v1.IOperationMetadata + >, + protos.google.longrunning.IOperation | undefined, + {} | undefined + ] + >; + deleteFeature( + request: protos.google.cloud.gkehub.v1.IDeleteFeatureRequest, + options: CallOptions, + callback: Callback< + LROperation< + protos.google.protobuf.IEmpty, + protos.google.cloud.gkehub.v1.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + > + ): void; + deleteFeature( + request: protos.google.cloud.gkehub.v1.IDeleteFeatureRequest, + callback: Callback< + LROperation< + protos.google.protobuf.IEmpty, + protos.google.cloud.gkehub.v1.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + > + ): void; + /** + * Removes a Feature. + * + * @param {Object} request + * The request object that will be sent. + * @param {string} request.name + * The Feature resource name in the format + * `projects/* /locations/* /features/*`. + * @param {boolean} request.force + * If set to true, the delete will ignore any outstanding resources for + * this Feature (that is, `FeatureState.has_resources` is set to true). These + * resources will NOT be cleaned up or modified in any way. + * @param {string} [request.requestId] + * Optional. A request ID to identify requests. Specify a unique request ID + * so that if you must retry your request, the server will know to ignore + * the request if it has already been completed. The server will guarantee + * that for at least 60 minutes after the first request. + * + * For example, consider a situation where you make an initial request and + * the request times out. If you make the request again with the same request + * ID, the server can check if original operation with the same request ID + * was received, and if so, will ignore the second request. This prevents + * clients from accidentally creating duplicate commitments. + * + * The request ID must be a valid UUID with the exception that zero UUID is + * not supported (00000000-0000-0000-0000-000000000000). + * @param {object} [options] + * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. + * @returns {Promise} - The promise which resolves to an array. + * The first element of the array is an object representing + * a long running operation. Its `promise()` method returns a promise + * you can `await` for. + * Please see the + * [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations) + * for more details and examples. + * @example + * const [operation] = await client.deleteFeature(request); + * const [response] = await operation.promise(); + */ + deleteFeature( + request?: protos.google.cloud.gkehub.v1.IDeleteFeatureRequest, + optionsOrCallback?: + | CallOptions + | Callback< + LROperation< + protos.google.protobuf.IEmpty, + protos.google.cloud.gkehub.v1.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + >, + callback?: Callback< + LROperation< + protos.google.protobuf.IEmpty, + protos.google.cloud.gkehub.v1.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + > + ): Promise< + [ + LROperation< + protos.google.protobuf.IEmpty, + protos.google.cloud.gkehub.v1.IOperationMetadata + >, + protos.google.longrunning.IOperation | undefined, + {} | undefined + ] + > | void { + request = request || {}; + let options: CallOptions; + if (typeof optionsOrCallback === 'function' && callback === undefined) { + callback = optionsOrCallback; + options = {}; + } else { + options = optionsOrCallback as CallOptions; + } + options = options || {}; + options.otherArgs = options.otherArgs || {}; + options.otherArgs.headers = options.otherArgs.headers || {}; + options.otherArgs.headers['x-goog-request-params'] = + gax.routingHeader.fromParams({ + name: request.name || '', + }); + this.initialize(); + return this.innerApiCalls.deleteFeature(request, options, callback); + } + /** + * Check the status of the long running operation returned by `deleteFeature()`. + * @param {String} name + * The operation name that will be passed. + * @returns {Promise} - The promise which resolves to an object. + * The decoded operation object has result and metadata field to get information from. + * Please see the + * [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations) + * for more details and examples. + * @example + * const decodedOperation = await checkDeleteFeatureProgress(name); + * console.log(decodedOperation.result); + * console.log(decodedOperation.done); + * console.log(decodedOperation.metadata); + */ + async checkDeleteFeatureProgress( + name: string + ): Promise< + LROperation< + protos.google.protobuf.Empty, + protos.google.cloud.gkehub.v1.OperationMetadata + > + > { + const request = new operationsProtos.google.longrunning.GetOperationRequest( + {name} + ); + const [operation] = await this.operationsClient.getOperation(request); + const decodeOperation = new gax.Operation( + operation, + this.descriptors.longrunning.deleteFeature, + gax.createDefaultBackoffSettings() + ); + return decodeOperation as LROperation< + protos.google.protobuf.Empty, + protos.google.cloud.gkehub.v1.OperationMetadata + >; + } + updateMembership( + request?: protos.google.cloud.gkehub.v1.IUpdateMembershipRequest, + options?: CallOptions + ): Promise< + [ + LROperation< + protos.google.cloud.gkehub.v1.IMembership, + protos.google.cloud.gkehub.v1.IOperationMetadata + >, + protos.google.longrunning.IOperation | undefined, + {} | undefined + ] + >; + updateMembership( + request: protos.google.cloud.gkehub.v1.IUpdateMembershipRequest, + options: CallOptions, + callback: Callback< + LROperation< + protos.google.cloud.gkehub.v1.IMembership, + protos.google.cloud.gkehub.v1.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + > + ): void; + updateMembership( + request: protos.google.cloud.gkehub.v1.IUpdateMembershipRequest, + callback: Callback< + LROperation< + protos.google.cloud.gkehub.v1.IMembership, + protos.google.cloud.gkehub.v1.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + > + ): void; + /** + * Updates an existing Membership. + * + * @param {Object} request + * The request object that will be sent. + * @param {string} request.name + * Required. The Membership resource name in the format + * `projects/* /locations/* /memberships/*`. + * @param {google.protobuf.FieldMask} request.updateMask + * Required. Mask of fields to update. + * @param {google.cloud.gkehub.v1.Membership} request.resource + * Required. Only fields specified in update_mask are updated. + * If you specify a field in the update_mask but don't specify its value here + * that field will be deleted. + * If you are updating a map field, set the value of a key to null or empty + * string to delete the key from the map. It's not possible to update a key's + * value to the empty string. + * If you specify the update_mask to be a special path "*", fully replaces all + * user-modifiable fields to match `resource`. + * @param {string} [request.requestId] + * Optional. A request ID to identify requests. Specify a unique request ID + * so that if you must retry your request, the server will know to ignore + * the request if it has already been completed. The server will guarantee + * that for at least 60 minutes after the first request. + * + * For example, consider a situation where you make an initial request and + * the request times out. If you make the request again with the same request + * ID, the server can check if original operation with the same request ID + * was received, and if so, will ignore the second request. This prevents + * clients from accidentally creating duplicate commitments. + * + * The request ID must be a valid UUID with the exception that zero UUID is + * not supported (00000000-0000-0000-0000-000000000000). + * @param {object} [options] + * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. + * @returns {Promise} - The promise which resolves to an array. + * The first element of the array is an object representing + * a long running operation. Its `promise()` method returns a promise + * you can `await` for. + * Please see the + * [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations) + * for more details and examples. + * @example + * const [operation] = await client.updateMembership(request); + * const [response] = await operation.promise(); + */ + updateMembership( + request?: protos.google.cloud.gkehub.v1.IUpdateMembershipRequest, + optionsOrCallback?: + | CallOptions + | Callback< + LROperation< + protos.google.cloud.gkehub.v1.IMembership, + protos.google.cloud.gkehub.v1.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + >, + callback?: Callback< + LROperation< + protos.google.cloud.gkehub.v1.IMembership, + protos.google.cloud.gkehub.v1.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + > + ): Promise< + [ + LROperation< + protos.google.cloud.gkehub.v1.IMembership, + protos.google.cloud.gkehub.v1.IOperationMetadata + >, + protos.google.longrunning.IOperation | undefined, + {} | undefined + ] + > | void { + request = request || {}; + let options: CallOptions; + if (typeof optionsOrCallback === 'function' && callback === undefined) { + callback = optionsOrCallback; + options = {}; + } else { + options = optionsOrCallback as CallOptions; + } + options = options || {}; + options.otherArgs = options.otherArgs || {}; + options.otherArgs.headers = options.otherArgs.headers || {}; + options.otherArgs.headers['x-goog-request-params'] = + gax.routingHeader.fromParams({ + name: request.name || '', + }); + this.initialize(); + return this.innerApiCalls.updateMembership(request, options, callback); + } + /** + * Check the status of the long running operation returned by `updateMembership()`. + * @param {String} name + * The operation name that will be passed. + * @returns {Promise} - The promise which resolves to an object. + * The decoded operation object has result and metadata field to get information from. + * Please see the + * [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations) + * for more details and examples. + * @example + * const decodedOperation = await checkUpdateMembershipProgress(name); + * console.log(decodedOperation.result); + * console.log(decodedOperation.done); + * console.log(decodedOperation.metadata); + */ + async checkUpdateMembershipProgress( + name: string + ): Promise< + LROperation< + protos.google.cloud.gkehub.v1.Membership, + protos.google.cloud.gkehub.v1.OperationMetadata + > + > { + const request = new operationsProtos.google.longrunning.GetOperationRequest( + {name} + ); + const [operation] = await this.operationsClient.getOperation(request); + const decodeOperation = new gax.Operation( + operation, + this.descriptors.longrunning.updateMembership, + gax.createDefaultBackoffSettings() + ); + return decodeOperation as LROperation< + protos.google.cloud.gkehub.v1.Membership, + protos.google.cloud.gkehub.v1.OperationMetadata + >; + } + updateFeature( + request?: protos.google.cloud.gkehub.v1.IUpdateFeatureRequest, + options?: CallOptions + ): Promise< + [ + LROperation< + protos.google.cloud.gkehub.v1.IFeature, + protos.google.cloud.gkehub.v1.IOperationMetadata + >, + protos.google.longrunning.IOperation | undefined, + {} | undefined + ] + >; + updateFeature( + request: protos.google.cloud.gkehub.v1.IUpdateFeatureRequest, + options: CallOptions, + callback: Callback< + LROperation< + protos.google.cloud.gkehub.v1.IFeature, + protos.google.cloud.gkehub.v1.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + > + ): void; + updateFeature( + request: protos.google.cloud.gkehub.v1.IUpdateFeatureRequest, + callback: Callback< + LROperation< + protos.google.cloud.gkehub.v1.IFeature, + protos.google.cloud.gkehub.v1.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + > + ): void; + /** + * Updates an existing Feature. + * + * @param {Object} request + * The request object that will be sent. + * @param {string} request.name + * The Feature resource name in the format + * `projects/* /locations/* /features/*`. + * @param {google.protobuf.FieldMask} request.updateMask + * Mask of fields to update. + * @param {google.cloud.gkehub.v1.Feature} request.resource + * Only fields specified in update_mask are updated. + * If you specify a field in the update_mask but don't specify its value here + * that field will be deleted. + * If you are updating a map field, set the value of a key to null or empty + * string to delete the key from the map. It's not possible to update a key's + * value to the empty string. + * If you specify the update_mask to be a special path "*", fully replaces all + * user-modifiable fields to match `resource`. + * @param {string} [request.requestId] + * Optional. A request ID to identify requests. Specify a unique request ID + * so that if you must retry your request, the server will know to ignore + * the request if it has already been completed. The server will guarantee + * that for at least 60 minutes after the first request. + * + * For example, consider a situation where you make an initial request and + * the request times out. If you make the request again with the same request + * ID, the server can check if original operation with the same request ID + * was received, and if so, will ignore the second request. This prevents + * clients from accidentally creating duplicate commitments. + * + * The request ID must be a valid UUID with the exception that zero UUID is + * not supported (00000000-0000-0000-0000-000000000000). + * @param {object} [options] + * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. + * @returns {Promise} - The promise which resolves to an array. + * The first element of the array is an object representing + * a long running operation. Its `promise()` method returns a promise + * you can `await` for. + * Please see the + * [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations) + * for more details and examples. + * @example + * const [operation] = await client.updateFeature(request); + * const [response] = await operation.promise(); + */ + updateFeature( + request?: protos.google.cloud.gkehub.v1.IUpdateFeatureRequest, + optionsOrCallback?: + | CallOptions + | Callback< + LROperation< + protos.google.cloud.gkehub.v1.IFeature, + protos.google.cloud.gkehub.v1.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + >, + callback?: Callback< + LROperation< + protos.google.cloud.gkehub.v1.IFeature, + protos.google.cloud.gkehub.v1.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + > + ): Promise< + [ + LROperation< + protos.google.cloud.gkehub.v1.IFeature, + protos.google.cloud.gkehub.v1.IOperationMetadata + >, + protos.google.longrunning.IOperation | undefined, + {} | undefined + ] + > | void { + request = request || {}; + let options: CallOptions; + if (typeof optionsOrCallback === 'function' && callback === undefined) { + callback = optionsOrCallback; + options = {}; + } else { + options = optionsOrCallback as CallOptions; + } + options = options || {}; + options.otherArgs = options.otherArgs || {}; + options.otherArgs.headers = options.otherArgs.headers || {}; + options.otherArgs.headers['x-goog-request-params'] = + gax.routingHeader.fromParams({ + name: request.name || '', + }); + this.initialize(); + return this.innerApiCalls.updateFeature(request, options, callback); + } + /** + * Check the status of the long running operation returned by `updateFeature()`. + * @param {String} name + * The operation name that will be passed. + * @returns {Promise} - The promise which resolves to an object. + * The decoded operation object has result and metadata field to get information from. + * Please see the + * [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations) + * for more details and examples. + * @example + * const decodedOperation = await checkUpdateFeatureProgress(name); + * console.log(decodedOperation.result); + * console.log(decodedOperation.done); + * console.log(decodedOperation.metadata); + */ + async checkUpdateFeatureProgress( + name: string + ): Promise< + LROperation< + protos.google.cloud.gkehub.v1.Feature, + protos.google.cloud.gkehub.v1.OperationMetadata + > + > { + const request = new operationsProtos.google.longrunning.GetOperationRequest( + {name} + ); + const [operation] = await this.operationsClient.getOperation(request); + const decodeOperation = new gax.Operation( + operation, + this.descriptors.longrunning.updateFeature, + gax.createDefaultBackoffSettings() + ); + return decodeOperation as LROperation< + protos.google.cloud.gkehub.v1.Feature, + protos.google.cloud.gkehub.v1.OperationMetadata + >; + } + listMemberships( + request?: protos.google.cloud.gkehub.v1.IListMembershipsRequest, + options?: CallOptions + ): Promise< + [ + protos.google.cloud.gkehub.v1.IMembership[], + protos.google.cloud.gkehub.v1.IListMembershipsRequest | null, + protos.google.cloud.gkehub.v1.IListMembershipsResponse + ] + >; + listMemberships( + request: protos.google.cloud.gkehub.v1.IListMembershipsRequest, + options: CallOptions, + callback: PaginationCallback< + protos.google.cloud.gkehub.v1.IListMembershipsRequest, + protos.google.cloud.gkehub.v1.IListMembershipsResponse | null | undefined, + protos.google.cloud.gkehub.v1.IMembership + > + ): void; + listMemberships( + request: protos.google.cloud.gkehub.v1.IListMembershipsRequest, + callback: PaginationCallback< + protos.google.cloud.gkehub.v1.IListMembershipsRequest, + protos.google.cloud.gkehub.v1.IListMembershipsResponse | null | undefined, + protos.google.cloud.gkehub.v1.IMembership + > + ): void; + /** + * Lists Memberships in a given project and location. + * + * @param {Object} request + * The request object that will be sent. + * @param {string} request.parent + * Required. The parent (project and location) where the Memberships will be listed. + * Specified in the format `projects/* /locations/*`. + * @param {number} [request.pageSize] + * Optional. When requesting a 'page' of resources, `page_size` specifies number of + * resources to return. If unspecified or set to 0, all resources will + * be returned. + * @param {string} [request.pageToken] + * Optional. Token returned by previous call to `ListMemberships` which + * specifies the position in the list from where to continue listing the + * resources. + * @param {string} [request.filter] + * Optional. Lists Memberships that match the filter expression, following the syntax + * outlined in https://google.aip.dev/160. + * + * Examples: + * + * - Name is `bar` in project `foo-proj` and location `global`: + * + * name = "projects/foo-proj/locations/global/membership/bar" + * + * - Memberships that have a label called `foo`: + * + * labels.foo:* + * + * - Memberships that have a label called `foo` whose value is `bar`: + * + * labels.foo = bar + * + * - Memberships in the CREATING state: + * + * state = CREATING + * @param {string} [request.orderBy] + * Optional. One or more fields to compare and use to sort the output. + * See https://google.aip.dev/132#ordering. + * @param {object} [options] + * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. + * @returns {Promise} - The promise which resolves to an array. + * The first element of the array is Array of [Membership]{@link google.cloud.gkehub.v1.Membership}. + * The client library will perform auto-pagination by default: it will call the API as many + * times as needed and will merge results from all the pages into this array. + * Note that it can affect your quota. + * We recommend using `listMembershipsAsync()` + * method described below for async iteration which you can stop as needed. + * Please see the + * [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#auto-pagination) + * for more details and examples. + */ + listMemberships( + request?: protos.google.cloud.gkehub.v1.IListMembershipsRequest, + optionsOrCallback?: + | CallOptions + | PaginationCallback< + protos.google.cloud.gkehub.v1.IListMembershipsRequest, + | protos.google.cloud.gkehub.v1.IListMembershipsResponse + | null + | undefined, + protos.google.cloud.gkehub.v1.IMembership + >, + callback?: PaginationCallback< + protos.google.cloud.gkehub.v1.IListMembershipsRequest, + protos.google.cloud.gkehub.v1.IListMembershipsResponse | null | undefined, + protos.google.cloud.gkehub.v1.IMembership + > + ): Promise< + [ + protos.google.cloud.gkehub.v1.IMembership[], + protos.google.cloud.gkehub.v1.IListMembershipsRequest | null, + protos.google.cloud.gkehub.v1.IListMembershipsResponse + ] + > | void { + request = request || {}; + let options: CallOptions; + if (typeof optionsOrCallback === 'function' && callback === undefined) { + callback = optionsOrCallback; + options = {}; + } else { + options = optionsOrCallback as CallOptions; + } + options = options || {}; + options.otherArgs = options.otherArgs || {}; + options.otherArgs.headers = options.otherArgs.headers || {}; + options.otherArgs.headers['x-goog-request-params'] = + gax.routingHeader.fromParams({ + parent: request.parent || '', + }); + this.initialize(); + return this.innerApiCalls.listMemberships(request, options, callback); + } + + /** + * Equivalent to `method.name.toCamelCase()`, but returns a NodeJS Stream object. + * @param {Object} request + * The request object that will be sent. + * @param {string} request.parent + * Required. The parent (project and location) where the Memberships will be listed. + * Specified in the format `projects/* /locations/*`. + * @param {number} [request.pageSize] + * Optional. When requesting a 'page' of resources, `page_size` specifies number of + * resources to return. If unspecified or set to 0, all resources will + * be returned. + * @param {string} [request.pageToken] + * Optional. Token returned by previous call to `ListMemberships` which + * specifies the position in the list from where to continue listing the + * resources. + * @param {string} [request.filter] + * Optional. Lists Memberships that match the filter expression, following the syntax + * outlined in https://google.aip.dev/160. + * + * Examples: + * + * - Name is `bar` in project `foo-proj` and location `global`: + * + * name = "projects/foo-proj/locations/global/membership/bar" + * + * - Memberships that have a label called `foo`: + * + * labels.foo:* + * + * - Memberships that have a label called `foo` whose value is `bar`: + * + * labels.foo = bar + * + * - Memberships in the CREATING state: + * + * state = CREATING + * @param {string} [request.orderBy] + * Optional. One or more fields to compare and use to sort the output. + * See https://google.aip.dev/132#ordering. + * @param {object} [options] + * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. + * @returns {Stream} + * An object stream which emits an object representing [Membership]{@link google.cloud.gkehub.v1.Membership} on 'data' event. + * The client library will perform auto-pagination by default: it will call the API as many + * times as needed. Note that it can affect your quota. + * We recommend using `listMembershipsAsync()` + * method described below for async iteration which you can stop as needed. + * Please see the + * [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#auto-pagination) + * for more details and examples. + */ + listMembershipsStream( + request?: protos.google.cloud.gkehub.v1.IListMembershipsRequest, + options?: CallOptions + ): Transform { + request = request || {}; + options = options || {}; + options.otherArgs = options.otherArgs || {}; + options.otherArgs.headers = options.otherArgs.headers || {}; + options.otherArgs.headers['x-goog-request-params'] = + gax.routingHeader.fromParams({ + parent: request.parent || '', + }); + const callSettings = new gax.CallSettings(options); + this.initialize(); + return this.descriptors.page.listMemberships.createStream( + this.innerApiCalls.listMemberships as gax.GaxCall, + request, + callSettings + ); + } + + /** + * Equivalent to `listMemberships`, but returns an iterable object. + * + * `for`-`await`-`of` syntax is used with the iterable to get response elements on-demand. + * @param {Object} request + * The request object that will be sent. + * @param {string} request.parent + * Required. The parent (project and location) where the Memberships will be listed. + * Specified in the format `projects/* /locations/*`. + * @param {number} [request.pageSize] + * Optional. When requesting a 'page' of resources, `page_size` specifies number of + * resources to return. If unspecified or set to 0, all resources will + * be returned. + * @param {string} [request.pageToken] + * Optional. Token returned by previous call to `ListMemberships` which + * specifies the position in the list from where to continue listing the + * resources. + * @param {string} [request.filter] + * Optional. Lists Memberships that match the filter expression, following the syntax + * outlined in https://google.aip.dev/160. + * + * Examples: + * + * - Name is `bar` in project `foo-proj` and location `global`: + * + * name = "projects/foo-proj/locations/global/membership/bar" + * + * - Memberships that have a label called `foo`: + * + * labels.foo:* + * + * - Memberships that have a label called `foo` whose value is `bar`: + * + * labels.foo = bar + * + * - Memberships in the CREATING state: + * + * state = CREATING + * @param {string} [request.orderBy] + * Optional. One or more fields to compare and use to sort the output. + * See https://google.aip.dev/132#ordering. + * @param {object} [options] + * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. + * @returns {Object} + * An iterable Object that allows [async iteration](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Iteration_protocols). + * When you iterate the returned iterable, each element will be an object representing + * [Membership]{@link google.cloud.gkehub.v1.Membership}. The API will be called under the hood as needed, once per the page, + * so you can stop the iteration when you don't need more results. + * Please see the + * [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#auto-pagination) + * for more details and examples. + * @example + * const iterable = client.listMembershipsAsync(request); + * for await (const response of iterable) { + * // process response + * } + */ + listMembershipsAsync( + request?: protos.google.cloud.gkehub.v1.IListMembershipsRequest, + options?: CallOptions + ): AsyncIterable { + request = request || {}; + options = options || {}; + options.otherArgs = options.otherArgs || {}; + options.otherArgs.headers = options.otherArgs.headers || {}; + options.otherArgs.headers['x-goog-request-params'] = + gax.routingHeader.fromParams({ + parent: request.parent || '', + }); + options = options || {}; + const callSettings = new gax.CallSettings(options); + this.initialize(); + return this.descriptors.page.listMemberships.asyncIterate( + this.innerApiCalls['listMemberships'] as GaxCall, + request as unknown as RequestType, + callSettings + ) as AsyncIterable; + } + listFeatures( + request?: protos.google.cloud.gkehub.v1.IListFeaturesRequest, + options?: CallOptions + ): Promise< + [ + protos.google.cloud.gkehub.v1.IFeature[], + protos.google.cloud.gkehub.v1.IListFeaturesRequest | null, + protos.google.cloud.gkehub.v1.IListFeaturesResponse + ] + >; + listFeatures( + request: protos.google.cloud.gkehub.v1.IListFeaturesRequest, + options: CallOptions, + callback: PaginationCallback< + protos.google.cloud.gkehub.v1.IListFeaturesRequest, + protos.google.cloud.gkehub.v1.IListFeaturesResponse | null | undefined, + protos.google.cloud.gkehub.v1.IFeature + > + ): void; + listFeatures( + request: protos.google.cloud.gkehub.v1.IListFeaturesRequest, + callback: PaginationCallback< + protos.google.cloud.gkehub.v1.IListFeaturesRequest, + protos.google.cloud.gkehub.v1.IListFeaturesResponse | null | undefined, + protos.google.cloud.gkehub.v1.IFeature + > + ): void; + /** + * Lists Features in a given project and location. + * + * @param {Object} request + * The request object that will be sent. + * @param {string} request.parent + * The parent (project and location) where the Features will be listed. + * Specified in the format `projects/* /locations/*`. + * @param {number} request.pageSize + * When requesting a 'page' of resources, `page_size` specifies number of + * resources to return. If unspecified or set to 0, all resources will + * be returned. + * @param {string} request.pageToken + * Token returned by previous call to `ListFeatures` which + * specifies the position in the list from where to continue listing the + * resources. + * @param {string} request.filter + * Lists Features that match the filter expression, following the syntax + * outlined in https://google.aip.dev/160. + * + * Examples: + * + * - Feature with the name "servicemesh" in project "foo-proj": + * + * name = "projects/foo-proj/locations/global/features/servicemesh" + * + * - Features that have a label called `foo`: + * + * labels.foo:* + * + * - Features that have a label called `foo` whose value is `bar`: + * + * labels.foo = bar + * @param {string} request.orderBy + * One or more fields to compare and use to sort the output. + * See https://google.aip.dev/132#ordering. + * @param {object} [options] + * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. + * @returns {Promise} - The promise which resolves to an array. + * The first element of the array is Array of [Feature]{@link google.cloud.gkehub.v1.Feature}. + * The client library will perform auto-pagination by default: it will call the API as many + * times as needed and will merge results from all the pages into this array. + * Note that it can affect your quota. + * We recommend using `listFeaturesAsync()` + * method described below for async iteration which you can stop as needed. + * Please see the + * [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#auto-pagination) + * for more details and examples. + */ + listFeatures( + request?: protos.google.cloud.gkehub.v1.IListFeaturesRequest, + optionsOrCallback?: + | CallOptions + | PaginationCallback< + protos.google.cloud.gkehub.v1.IListFeaturesRequest, + | protos.google.cloud.gkehub.v1.IListFeaturesResponse + | null + | undefined, + protos.google.cloud.gkehub.v1.IFeature + >, + callback?: PaginationCallback< + protos.google.cloud.gkehub.v1.IListFeaturesRequest, + protos.google.cloud.gkehub.v1.IListFeaturesResponse | null | undefined, + protos.google.cloud.gkehub.v1.IFeature + > + ): Promise< + [ + protos.google.cloud.gkehub.v1.IFeature[], + protos.google.cloud.gkehub.v1.IListFeaturesRequest | null, + protos.google.cloud.gkehub.v1.IListFeaturesResponse + ] + > | void { + request = request || {}; + let options: CallOptions; + if (typeof optionsOrCallback === 'function' && callback === undefined) { + callback = optionsOrCallback; + options = {}; + } else { + options = optionsOrCallback as CallOptions; + } + options = options || {}; + options.otherArgs = options.otherArgs || {}; + options.otherArgs.headers = options.otherArgs.headers || {}; + options.otherArgs.headers['x-goog-request-params'] = + gax.routingHeader.fromParams({ + parent: request.parent || '', + }); + this.initialize(); + return this.innerApiCalls.listFeatures(request, options, callback); + } + + /** + * Equivalent to `method.name.toCamelCase()`, but returns a NodeJS Stream object. + * @param {Object} request + * The request object that will be sent. + * @param {string} request.parent + * The parent (project and location) where the Features will be listed. + * Specified in the format `projects/* /locations/*`. + * @param {number} request.pageSize + * When requesting a 'page' of resources, `page_size` specifies number of + * resources to return. If unspecified or set to 0, all resources will + * be returned. + * @param {string} request.pageToken + * Token returned by previous call to `ListFeatures` which + * specifies the position in the list from where to continue listing the + * resources. + * @param {string} request.filter + * Lists Features that match the filter expression, following the syntax + * outlined in https://google.aip.dev/160. + * + * Examples: + * + * - Feature with the name "servicemesh" in project "foo-proj": + * + * name = "projects/foo-proj/locations/global/features/servicemesh" + * + * - Features that have a label called `foo`: + * + * labels.foo:* + * + * - Features that have a label called `foo` whose value is `bar`: + * + * labels.foo = bar + * @param {string} request.orderBy + * One or more fields to compare and use to sort the output. + * See https://google.aip.dev/132#ordering. + * @param {object} [options] + * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. + * @returns {Stream} + * An object stream which emits an object representing [Feature]{@link google.cloud.gkehub.v1.Feature} on 'data' event. + * The client library will perform auto-pagination by default: it will call the API as many + * times as needed. Note that it can affect your quota. + * We recommend using `listFeaturesAsync()` + * method described below for async iteration which you can stop as needed. + * Please see the + * [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#auto-pagination) + * for more details and examples. + */ + listFeaturesStream( + request?: protos.google.cloud.gkehub.v1.IListFeaturesRequest, + options?: CallOptions + ): Transform { + request = request || {}; + options = options || {}; + options.otherArgs = options.otherArgs || {}; + options.otherArgs.headers = options.otherArgs.headers || {}; + options.otherArgs.headers['x-goog-request-params'] = + gax.routingHeader.fromParams({ + parent: request.parent || '', + }); + const callSettings = new gax.CallSettings(options); + this.initialize(); + return this.descriptors.page.listFeatures.createStream( + this.innerApiCalls.listFeatures as gax.GaxCall, + request, + callSettings + ); + } + + /** + * Equivalent to `listFeatures`, but returns an iterable object. + * + * `for`-`await`-`of` syntax is used with the iterable to get response elements on-demand. + * @param {Object} request + * The request object that will be sent. + * @param {string} request.parent + * The parent (project and location) where the Features will be listed. + * Specified in the format `projects/* /locations/*`. + * @param {number} request.pageSize + * When requesting a 'page' of resources, `page_size` specifies number of + * resources to return. If unspecified or set to 0, all resources will + * be returned. + * @param {string} request.pageToken + * Token returned by previous call to `ListFeatures` which + * specifies the position in the list from where to continue listing the + * resources. + * @param {string} request.filter + * Lists Features that match the filter expression, following the syntax + * outlined in https://google.aip.dev/160. + * + * Examples: + * + * - Feature with the name "servicemesh" in project "foo-proj": + * + * name = "projects/foo-proj/locations/global/features/servicemesh" + * + * - Features that have a label called `foo`: + * + * labels.foo:* + * + * - Features that have a label called `foo` whose value is `bar`: + * + * labels.foo = bar + * @param {string} request.orderBy + * One or more fields to compare and use to sort the output. + * See https://google.aip.dev/132#ordering. + * @param {object} [options] + * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. + * @returns {Object} + * An iterable Object that allows [async iteration](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Iteration_protocols). + * When you iterate the returned iterable, each element will be an object representing + * [Feature]{@link google.cloud.gkehub.v1.Feature}. The API will be called under the hood as needed, once per the page, + * so you can stop the iteration when you don't need more results. + * Please see the + * [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#auto-pagination) + * for more details and examples. + * @example + * const iterable = client.listFeaturesAsync(request); + * for await (const response of iterable) { + * // process response + * } + */ + listFeaturesAsync( + request?: protos.google.cloud.gkehub.v1.IListFeaturesRequest, + options?: CallOptions + ): AsyncIterable { + request = request || {}; + options = options || {}; + options.otherArgs = options.otherArgs || {}; + options.otherArgs.headers = options.otherArgs.headers || {}; + options.otherArgs.headers['x-goog-request-params'] = + gax.routingHeader.fromParams({ + parent: request.parent || '', + }); + options = options || {}; + const callSettings = new gax.CallSettings(options); + this.initialize(); + return this.descriptors.page.listFeatures.asyncIterate( + this.innerApiCalls['listFeatures'] as GaxCall, + request as unknown as RequestType, + callSettings + ) as AsyncIterable; + } + // -------------------- + // -- Path templates -- + // -------------------- + + /** + * Return a fully-qualified feature resource name string. + * + * @param {string} project + * @param {string} location + * @param {string} feature + * @returns {string} Resource name string. + */ + featurePath(project: string, location: string, feature: string) { + return this.pathTemplates.featurePathTemplate.render({ + project: project, + location: location, + feature: feature, + }); + } + + /** + * Parse the project from Feature resource. + * + * @param {string} featureName + * A fully-qualified path representing Feature resource. + * @returns {string} A string representing the project. + */ + matchProjectFromFeatureName(featureName: string) { + return this.pathTemplates.featurePathTemplate.match(featureName).project; + } + + /** + * Parse the location from Feature resource. + * + * @param {string} featureName + * A fully-qualified path representing Feature resource. + * @returns {string} A string representing the location. + */ + matchLocationFromFeatureName(featureName: string) { + return this.pathTemplates.featurePathTemplate.match(featureName).location; + } + + /** + * Parse the feature from Feature resource. + * + * @param {string} featureName + * A fully-qualified path representing Feature resource. + * @returns {string} A string representing the feature. + */ + matchFeatureFromFeatureName(featureName: string) { + return this.pathTemplates.featurePathTemplate.match(featureName).feature; + } + + /** + * Return a fully-qualified location resource name string. + * + * @param {string} project + * @param {string} location + * @returns {string} Resource name string. + */ + locationPath(project: string, location: string) { + return this.pathTemplates.locationPathTemplate.render({ + project: project, + location: location, + }); + } + + /** + * Parse the project from Location resource. + * + * @param {string} locationName + * A fully-qualified path representing Location resource. + * @returns {string} A string representing the project. + */ + matchProjectFromLocationName(locationName: string) { + return this.pathTemplates.locationPathTemplate.match(locationName).project; + } + + /** + * Parse the location from Location resource. + * + * @param {string} locationName + * A fully-qualified path representing Location resource. + * @returns {string} A string representing the location. + */ + matchLocationFromLocationName(locationName: string) { + return this.pathTemplates.locationPathTemplate.match(locationName).location; + } + + /** + * Return a fully-qualified membership resource name string. + * + * @param {string} project + * @param {string} location + * @param {string} membership + * @returns {string} Resource name string. + */ + membershipPath(project: string, location: string, membership: string) { + return this.pathTemplates.membershipPathTemplate.render({ + project: project, + location: location, + membership: membership, + }); + } + + /** + * Parse the project from Membership resource. + * + * @param {string} membershipName + * A fully-qualified path representing Membership resource. + * @returns {string} A string representing the project. + */ + matchProjectFromMembershipName(membershipName: string) { + return this.pathTemplates.membershipPathTemplate.match(membershipName) + .project; + } + + /** + * Parse the location from Membership resource. + * + * @param {string} membershipName + * A fully-qualified path representing Membership resource. + * @returns {string} A string representing the location. + */ + matchLocationFromMembershipName(membershipName: string) { + return this.pathTemplates.membershipPathTemplate.match(membershipName) + .location; + } + + /** + * Parse the membership from Membership resource. + * + * @param {string} membershipName + * A fully-qualified path representing Membership resource. + * @returns {string} A string representing the membership. + */ + matchMembershipFromMembershipName(membershipName: string) { + return this.pathTemplates.membershipPathTemplate.match(membershipName) + .membership; + } + + /** + * Return a fully-qualified project resource name string. + * + * @param {string} project + * @returns {string} Resource name string. + */ + projectPath(project: string) { + return this.pathTemplates.projectPathTemplate.render({ + project: project, + }); + } + + /** + * Parse the project from Project resource. + * + * @param {string} projectName + * A fully-qualified path representing Project resource. + * @returns {string} A string representing the project. + */ + matchProjectFromProjectName(projectName: string) { + return this.pathTemplates.projectPathTemplate.match(projectName).project; + } + + /** + * Terminate the gRPC channel and close the client. + * + * The client will no longer be usable and all future behavior is undefined. + * @returns {Promise} A promise that resolves when the client is closed. + */ + close(): Promise { + this.initialize(); + if (!this._terminated) { + return this.gkeHubStub!.then(stub => { + this._terminated = true; + stub.close(); + }); + } + return Promise.resolve(); + } +} diff --git a/packages/google-cloud-gkehub/src/v1/gke_hub_client_config.json b/packages/google-cloud-gkehub/src/v1/gke_hub_client_config.json new file mode 100644 index 00000000000..e5baeaac099 --- /dev/null +++ b/packages/google-cloud-gkehub/src/v1/gke_hub_client_config.json @@ -0,0 +1,93 @@ +{ + "interfaces": { + "google.cloud.gkehub.v1.GkeHub": { + "retry_codes": { + "non_idempotent": [], + "idempotent": [ + "DEADLINE_EXCEEDED", + "UNAVAILABLE" + ], + "unavailable": [ + "UNAVAILABLE" + ] + }, + "retry_params": { + "default": { + "initial_retry_delay_millis": 100, + "retry_delay_multiplier": 1.3, + "max_retry_delay_millis": 60000, + "initial_rpc_timeout_millis": 60000, + "rpc_timeout_multiplier": 1, + "max_rpc_timeout_millis": 60000, + "total_timeout_millis": 600000 + }, + "ce5b960a6ed052e690863808e4f0deff3dc7d49f": { + "initial_retry_delay_millis": 1000, + "retry_delay_multiplier": 1.3, + "max_retry_delay_millis": 10000, + "initial_rpc_timeout_millis": 60000, + "rpc_timeout_multiplier": 1, + "max_rpc_timeout_millis": 60000, + "total_timeout_millis": 600000 + } + }, + "methods": { + "ListMemberships": { + "timeout_millis": 60000, + "retry_codes_name": "unavailable", + "retry_params_name": "ce5b960a6ed052e690863808e4f0deff3dc7d49f" + }, + "ListFeatures": { + "timeout_millis": 60000, + "retry_codes_name": "unavailable", + "retry_params_name": "ce5b960a6ed052e690863808e4f0deff3dc7d49f" + }, + "GetMembership": { + "timeout_millis": 60000, + "retry_codes_name": "unavailable", + "retry_params_name": "ce5b960a6ed052e690863808e4f0deff3dc7d49f" + }, + "GetFeature": { + "timeout_millis": 60000, + "retry_codes_name": "unavailable", + "retry_params_name": "ce5b960a6ed052e690863808e4f0deff3dc7d49f" + }, + "CreateMembership": { + "timeout_millis": 60000, + "retry_codes_name": "unavailable", + "retry_params_name": "ce5b960a6ed052e690863808e4f0deff3dc7d49f" + }, + "CreateFeature": { + "timeout_millis": 60000, + "retry_codes_name": "unavailable", + "retry_params_name": "ce5b960a6ed052e690863808e4f0deff3dc7d49f" + }, + "DeleteMembership": { + "timeout_millis": 60000, + "retry_codes_name": "unavailable", + "retry_params_name": "ce5b960a6ed052e690863808e4f0deff3dc7d49f" + }, + "DeleteFeature": { + "timeout_millis": 60000, + "retry_codes_name": "unavailable", + "retry_params_name": "ce5b960a6ed052e690863808e4f0deff3dc7d49f" + }, + "UpdateMembership": { + "timeout_millis": 60000, + "retry_codes_name": "unavailable", + "retry_params_name": "ce5b960a6ed052e690863808e4f0deff3dc7d49f" + }, + "UpdateFeature": { + "timeout_millis": 60000, + "retry_codes_name": "unavailable", + "retry_params_name": "ce5b960a6ed052e690863808e4f0deff3dc7d49f" + }, + "GenerateConnectManifest": { + "timeout_millis": 60000, + "retry_codes_name": "unavailable", + "retry_params_name": "ce5b960a6ed052e690863808e4f0deff3dc7d49f" + } + } + } + } +} diff --git a/packages/google-cloud-gkehub/src/v1/gke_hub_proto_list.json b/packages/google-cloud-gkehub/src/v1/gke_hub_proto_list.json new file mode 100644 index 00000000000..a96b9a7a883 --- /dev/null +++ b/packages/google-cloud-gkehub/src/v1/gke_hub_proto_list.json @@ -0,0 +1,7 @@ +[ + "../../protos/google/cloud/gkehub/v1/configmanagement/configmanagement.proto", + "../../protos/google/cloud/gkehub/v1/feature.proto", + "../../protos/google/cloud/gkehub/v1/membership.proto", + "../../protos/google/cloud/gkehub/v1/multiclusteringress/multiclusteringress.proto", + "../../protos/google/cloud/gkehub/v1/service.proto" +] diff --git a/packages/google-cloud-gkehub/src/v1/index.ts b/packages/google-cloud-gkehub/src/v1/index.ts new file mode 100644 index 00000000000..43cf74c6b34 --- /dev/null +++ b/packages/google-cloud-gkehub/src/v1/index.ts @@ -0,0 +1,19 @@ +// 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 +// +// 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. ** + +export {GkeHubClient} from './gke_hub_client'; diff --git a/packages/google-cloud-gkehub/src/v1alpha/gapic_metadata.json b/packages/google-cloud-gkehub/src/v1alpha/gapic_metadata.json new file mode 100644 index 00000000000..6eee17c29b8 --- /dev/null +++ b/packages/google-cloud-gkehub/src/v1alpha/gapic_metadata.json @@ -0,0 +1,77 @@ +{ + "schema": "1.0", + "comment": "This file maps proto services/RPCs to the corresponding library clients/methods", + "language": "typescript", + "protoPackage": "google.cloud.gkehub.v1alpha", + "libraryPackage": "@google-cloud/gkehub", + "services": { + "GkeHub": { + "clients": { + "grpc": { + "libraryClient": "GkeHubClient", + "rpcs": { + "GetFeature": { + "methods": [ + "getFeature" + ] + }, + "CreateFeature": { + "methods": [ + "createFeature" + ] + }, + "DeleteFeature": { + "methods": [ + "deleteFeature" + ] + }, + "UpdateFeature": { + "methods": [ + "updateFeature" + ] + }, + "ListFeatures": { + "methods": [ + "listFeatures", + "listFeaturesStream", + "listFeaturesAsync" + ] + } + } + }, + "grpc-fallback": { + "libraryClient": "GkeHubClient", + "rpcs": { + "GetFeature": { + "methods": [ + "getFeature" + ] + }, + "CreateFeature": { + "methods": [ + "createFeature" + ] + }, + "DeleteFeature": { + "methods": [ + "deleteFeature" + ] + }, + "UpdateFeature": { + "methods": [ + "updateFeature" + ] + }, + "ListFeatures": { + "methods": [ + "listFeatures", + "listFeaturesStream", + "listFeaturesAsync" + ] + } + } + } + } + } + } +} diff --git a/packages/google-cloud-gkehub/src/v1alpha/gke_hub_client.ts b/packages/google-cloud-gkehub/src/v1alpha/gke_hub_client.ts new file mode 100644 index 00000000000..ee6f742d9b9 --- /dev/null +++ b/packages/google-cloud-gkehub/src/v1alpha/gke_hub_client.ts @@ -0,0 +1,1290 @@ +// 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 +// +// 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. ** + +/* global window */ +import * as gax from 'google-gax'; +import { + Callback, + CallOptions, + Descriptors, + ClientOptions, + LROperation, + PaginationCallback, + GaxCall, +} from 'google-gax'; + +import {Transform} from 'stream'; +import {RequestType} from 'google-gax/build/src/apitypes'; +import * as protos from '../../protos/protos'; +import jsonProtos = require('../../protos/protos.json'); +/** + * Client JSON configuration object, loaded from + * `src/v1alpha/gke_hub_client_config.json`. + * This file defines retry strategy and timeouts for all API methods in this library. + */ +import * as gapicConfig from './gke_hub_client_config.json'; +import {operationsProtos} from 'google-gax'; +const version = require('../../../package.json').version; + +/** + * The GKE Hub service handles the registration of many Kubernetes clusters to + * Google Cloud, and the management of multi-cluster features over those + * clusters. + * + * The GKE Hub service operates on the following resources: + * + * * {@link google.cloud.gkehub.v1alpha.Membership|Membership} + * * {@link google.cloud.gkehub.v1alpha.Feature|Feature} + * + * GKE Hub is currently only available in the global region. + * + * **Membership management may be non-trivial:** it is recommended to use one + * of the Google-provided client libraries or tools where possible when working + * with Membership resources. + * @class + * @memberof v1alpha + */ +export class GkeHubClient { + private _terminated = false; + private _opts: ClientOptions; + private _providedCustomServicePath: boolean; + private _gaxModule: typeof gax | typeof gax.fallback; + private _gaxGrpc: gax.GrpcClient | gax.fallback.GrpcClient; + private _protos: {}; + private _defaults: {[method: string]: gax.CallSettings}; + auth: gax.GoogleAuth; + descriptors: Descriptors = { + page: {}, + stream: {}, + longrunning: {}, + batching: {}, + }; + warn: (code: string, message: string, warnType?: string) => void; + innerApiCalls: {[name: string]: Function}; + pathTemplates: {[name: string]: gax.PathTemplate}; + operationsClient: gax.OperationsClient; + gkeHubStub?: Promise<{[name: string]: Function}>; + + /** + * Construct an instance of GkeHubClient. + * + * @param {object} [options] - The configuration object. + * The options accepted by the constructor are described in detail + * in [this document](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#creating-the-client-instance). + * The common options are: + * @param {object} [options.credentials] - Credentials object. + * @param {string} [options.credentials.client_email] + * @param {string} [options.credentials.private_key] + * @param {string} [options.email] - Account email address. Required when + * using a .pem or .p12 keyFilename. + * @param {string} [options.keyFilename] - Full path to the a .json, .pem, or + * .p12 key downloaded from the Google Developers Console. If you provide + * a path to a JSON file, the projectId option below is not necessary. + * NOTE: .pem and .p12 require you to specify options.email as well. + * @param {number} [options.port] - The port on which to connect to + * the remote host. + * @param {string} [options.projectId] - The project ID from the Google + * Developer's Console, e.g. 'grape-spaceship-123'. We will also check + * the environment variable GCLOUD_PROJECT for your project ID. If your + * app is running in an environment which supports + * {@link https://developers.google.com/identity/protocols/application-default-credentials Application Default Credentials}, + * your project ID will be detected automatically. + * @param {string} [options.apiEndpoint] - The domain name of the + * API remote host. + * @param {gax.ClientConfig} [options.clientConfig] - Client configuration override. + * Follows the structure of {@link gapicConfig}. + * @param {boolean} [options.fallback] - Use HTTP fallback mode. + * In fallback mode, a special browser-compatible transport implementation is used + * instead of gRPC transport. In browser context (if the `window` object is defined) + * the fallback mode is enabled automatically; set `options.fallback` to `false` + * if you need to override this behavior. + */ + constructor(opts?: ClientOptions) { + // Ensure that options include all the required fields. + const staticMembers = this.constructor as typeof GkeHubClient; + const servicePath = + opts?.servicePath || opts?.apiEndpoint || staticMembers.servicePath; + this._providedCustomServicePath = !!( + opts?.servicePath || opts?.apiEndpoint + ); + const port = opts?.port || staticMembers.port; + const clientConfig = opts?.clientConfig ?? {}; + const fallback = + opts?.fallback ?? + (typeof window !== 'undefined' && typeof window?.fetch === 'function'); + opts = Object.assign({servicePath, port, clientConfig, fallback}, opts); + + // If scopes are unset in options and we're connecting to a non-default endpoint, set scopes just in case. + if (servicePath !== staticMembers.servicePath && !('scopes' in opts)) { + opts['scopes'] = staticMembers.scopes; + } + + // Choose either gRPC or proto-over-HTTP implementation of google-gax. + this._gaxModule = opts.fallback ? gax.fallback : gax; + + // Create a `gaxGrpc` object, with any grpc-specific options sent to the client. + this._gaxGrpc = new this._gaxModule.GrpcClient(opts); + + // Save options to use in initialize() method. + this._opts = opts; + + // Save the auth object to the client, for use by other methods. + this.auth = this._gaxGrpc.auth as gax.GoogleAuth; + + // Set the default scopes in auth client if needed. + if (servicePath === staticMembers.servicePath) { + this.auth.defaultScopes = staticMembers.scopes; + } + + // Determine the client header string. + const clientHeader = [`gax/${this._gaxModule.version}`, `gapic/${version}`]; + if (typeof process !== 'undefined' && 'versions' in process) { + clientHeader.push(`gl-node/${process.versions.node}`); + } else { + clientHeader.push(`gl-web/${this._gaxModule.version}`); + } + if (!opts.fallback) { + clientHeader.push(`grpc/${this._gaxGrpc.grpcVersion}`); + } else if (opts.fallback === 'rest') { + clientHeader.push(`rest/${this._gaxGrpc.grpcVersion}`); + } + if (opts.libName && opts.libVersion) { + clientHeader.push(`${opts.libName}/${opts.libVersion}`); + } + // Load the applicable protos. + this._protos = this._gaxGrpc.loadProtoJSON(jsonProtos); + + // This API contains "path templates"; forward-slash-separated + // identifiers to uniquely identify resources within the API. + // Create useful helper objects for these. + this.pathTemplates = { + featurePathTemplate: new this._gaxModule.PathTemplate( + 'projects/{project}/locations/{location}/features/{feature}' + ), + }; + + // Some of the methods on this service return "paged" results, + // (e.g. 50 results at a time, with tokens to get subsequent + // pages). Denote the keys used for pagination and results. + this.descriptors.page = { + listFeatures: new this._gaxModule.PageDescriptor( + 'pageToken', + 'nextPageToken', + 'resources' + ), + }; + + const protoFilesRoot = this._gaxModule.protobuf.Root.fromJSON(jsonProtos); + + // This API contains "long-running operations", which return a + // an Operation object that allows for tracking of the operation, + // rather than holding a request open. + + this.operationsClient = this._gaxModule + .lro({ + auth: this.auth, + grpc: 'grpc' in this._gaxGrpc ? this._gaxGrpc.grpc : undefined, + }) + .operationsClient(opts); + const createFeatureResponse = protoFilesRoot.lookup( + '.google.cloud.gkehub.v1alpha.Feature' + ) as gax.protobuf.Type; + const createFeatureMetadata = protoFilesRoot.lookup( + '.google.cloud.gkehub.v1alpha.OperationMetadata' + ) as gax.protobuf.Type; + const deleteFeatureResponse = protoFilesRoot.lookup( + '.google.protobuf.Empty' + ) as gax.protobuf.Type; + const deleteFeatureMetadata = protoFilesRoot.lookup( + '.google.cloud.gkehub.v1alpha.OperationMetadata' + ) as gax.protobuf.Type; + const updateFeatureResponse = protoFilesRoot.lookup( + '.google.cloud.gkehub.v1alpha.Feature' + ) as gax.protobuf.Type; + const updateFeatureMetadata = protoFilesRoot.lookup( + '.google.cloud.gkehub.v1alpha.OperationMetadata' + ) as gax.protobuf.Type; + + this.descriptors.longrunning = { + createFeature: new this._gaxModule.LongrunningDescriptor( + this.operationsClient, + createFeatureResponse.decode.bind(createFeatureResponse), + createFeatureMetadata.decode.bind(createFeatureMetadata) + ), + deleteFeature: new this._gaxModule.LongrunningDescriptor( + this.operationsClient, + deleteFeatureResponse.decode.bind(deleteFeatureResponse), + deleteFeatureMetadata.decode.bind(deleteFeatureMetadata) + ), + updateFeature: new this._gaxModule.LongrunningDescriptor( + this.operationsClient, + updateFeatureResponse.decode.bind(updateFeatureResponse), + updateFeatureMetadata.decode.bind(updateFeatureMetadata) + ), + }; + + // Put together the default options sent with requests. + this._defaults = this._gaxGrpc.constructSettings( + 'google.cloud.gkehub.v1alpha.GkeHub', + gapicConfig as gax.ClientConfig, + opts.clientConfig || {}, + {'x-goog-api-client': clientHeader.join(' ')} + ); + + // Set up a dictionary of "inner API calls"; the core implementation + // of calling the API is handled in `google-gax`, with this code + // merely providing the destination and request information. + this.innerApiCalls = {}; + + // Add a warn function to the client constructor so it can be easily tested. + this.warn = gax.warn; + } + + /** + * Initialize the client. + * Performs asynchronous operations (such as authentication) and prepares the client. + * This function will be called automatically when any class method is called for the + * first time, but if you need to initialize it before calling an actual method, + * feel free to call initialize() directly. + * + * You can await on this method if you want to make sure the client is initialized. + * + * @returns {Promise} A promise that resolves to an authenticated service stub. + */ + initialize() { + // If the client stub promise is already initialized, return immediately. + if (this.gkeHubStub) { + return this.gkeHubStub; + } + + // Put together the "service stub" for + // google.cloud.gkehub.v1alpha.GkeHub. + this.gkeHubStub = this._gaxGrpc.createStub( + this._opts.fallback + ? (this._protos as protobuf.Root).lookupService( + 'google.cloud.gkehub.v1alpha.GkeHub' + ) + : // eslint-disable-next-line @typescript-eslint/no-explicit-any + (this._protos as any).google.cloud.gkehub.v1alpha.GkeHub, + this._opts, + this._providedCustomServicePath + ) as Promise<{[method: string]: Function}>; + + // Iterate over each of the methods that the service provides + // and create an API call method for each. + const gkeHubStubMethods = [ + 'listFeatures', + 'getFeature', + 'createFeature', + 'deleteFeature', + 'updateFeature', + ]; + for (const methodName of gkeHubStubMethods) { + const callPromise = this.gkeHubStub.then( + stub => + (...args: Array<{}>) => { + if (this._terminated) { + return Promise.reject('The client has already been closed.'); + } + const func = stub[methodName]; + return func.apply(stub, args); + }, + (err: Error | null | undefined) => () => { + throw err; + } + ); + + const descriptor = + this.descriptors.page[methodName] || + this.descriptors.longrunning[methodName] || + undefined; + const apiCall = this._gaxModule.createApiCall( + callPromise, + this._defaults[methodName], + descriptor + ); + + this.innerApiCalls[methodName] = apiCall; + } + + return this.gkeHubStub; + } + + /** + * The DNS address for this API service. + * @returns {string} The DNS address for this service. + */ + static get servicePath() { + return 'gkehub.googleapis.com'; + } + + /** + * The DNS address for this API service - same as servicePath(), + * exists for compatibility reasons. + * @returns {string} The DNS address for this service. + */ + static get apiEndpoint() { + return 'gkehub.googleapis.com'; + } + + /** + * The port for this API service. + * @returns {number} The default port for this service. + */ + static get port() { + return 443; + } + + /** + * The scopes needed to make gRPC calls for every method defined + * in this service. + * @returns {string[]} List of default scopes. + */ + static get scopes() { + return ['https://www.googleapis.com/auth/cloud-platform']; + } + + getProjectId(): Promise; + getProjectId(callback: Callback): void; + /** + * Return the project ID used by this class. + * @returns {Promise} A promise that resolves to string containing the project ID. + */ + getProjectId( + callback?: Callback + ): Promise | void { + if (callback) { + this.auth.getProjectId(callback); + return; + } + return this.auth.getProjectId(); + } + + // ------------------- + // -- Service calls -- + // ------------------- + getFeature( + request?: protos.google.cloud.gkehub.v1alpha.IGetFeatureRequest, + options?: CallOptions + ): Promise< + [ + protos.google.cloud.gkehub.v1alpha.IFeature, + protos.google.cloud.gkehub.v1alpha.IGetFeatureRequest | undefined, + {} | undefined + ] + >; + getFeature( + request: protos.google.cloud.gkehub.v1alpha.IGetFeatureRequest, + options: CallOptions, + callback: Callback< + protos.google.cloud.gkehub.v1alpha.IFeature, + protos.google.cloud.gkehub.v1alpha.IGetFeatureRequest | null | undefined, + {} | null | undefined + > + ): void; + getFeature( + request: protos.google.cloud.gkehub.v1alpha.IGetFeatureRequest, + callback: Callback< + protos.google.cloud.gkehub.v1alpha.IFeature, + protos.google.cloud.gkehub.v1alpha.IGetFeatureRequest | null | undefined, + {} | null | undefined + > + ): void; + /** + * Gets details of a single Feature. + * + * @param {Object} request + * The request object that will be sent. + * @param {string} request.name + * The Feature resource name in the format + * `projects/* /locations/* /features/*` + * @param {object} [options] + * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. + * @returns {Promise} - The promise which resolves to an array. + * The first element of the array is an object representing [Feature]{@link google.cloud.gkehub.v1alpha.Feature}. + * Please see the + * [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods) + * for more details and examples. + * @example + * const [response] = await client.getFeature(request); + */ + getFeature( + request?: protos.google.cloud.gkehub.v1alpha.IGetFeatureRequest, + optionsOrCallback?: + | CallOptions + | Callback< + protos.google.cloud.gkehub.v1alpha.IFeature, + | protos.google.cloud.gkehub.v1alpha.IGetFeatureRequest + | null + | undefined, + {} | null | undefined + >, + callback?: Callback< + protos.google.cloud.gkehub.v1alpha.IFeature, + protos.google.cloud.gkehub.v1alpha.IGetFeatureRequest | null | undefined, + {} | null | undefined + > + ): Promise< + [ + protos.google.cloud.gkehub.v1alpha.IFeature, + protos.google.cloud.gkehub.v1alpha.IGetFeatureRequest | undefined, + {} | undefined + ] + > | void { + request = request || {}; + let options: CallOptions; + if (typeof optionsOrCallback === 'function' && callback === undefined) { + callback = optionsOrCallback; + options = {}; + } else { + options = optionsOrCallback as CallOptions; + } + options = options || {}; + options.otherArgs = options.otherArgs || {}; + options.otherArgs.headers = options.otherArgs.headers || {}; + options.otherArgs.headers['x-goog-request-params'] = + gax.routingHeader.fromParams({ + name: request.name || '', + }); + this.initialize(); + return this.innerApiCalls.getFeature(request, options, callback); + } + + createFeature( + request?: protos.google.cloud.gkehub.v1alpha.ICreateFeatureRequest, + options?: CallOptions + ): Promise< + [ + LROperation< + protos.google.cloud.gkehub.v1alpha.IFeature, + protos.google.cloud.gkehub.v1alpha.IOperationMetadata + >, + protos.google.longrunning.IOperation | undefined, + {} | undefined + ] + >; + createFeature( + request: protos.google.cloud.gkehub.v1alpha.ICreateFeatureRequest, + options: CallOptions, + callback: Callback< + LROperation< + protos.google.cloud.gkehub.v1alpha.IFeature, + protos.google.cloud.gkehub.v1alpha.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + > + ): void; + createFeature( + request: protos.google.cloud.gkehub.v1alpha.ICreateFeatureRequest, + callback: Callback< + LROperation< + protos.google.cloud.gkehub.v1alpha.IFeature, + protos.google.cloud.gkehub.v1alpha.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + > + ): void; + /** + * Adds a new Feature. + * + * @param {Object} request + * The request object that will be sent. + * @param {string} request.parent + * The parent (project and location) where the Feature will be created. + * Specified in the format `projects/* /locations/*`. + * @param {string} request.featureId + * The ID of the feature to create. + * @param {google.cloud.gkehub.v1alpha.Feature} request.resource + * The Feature resource to create. + * @param {string} [request.requestId] + * Optional. A request ID to identify requests. Specify a unique request ID + * so that if you must retry your request, the server will know to ignore + * the request if it has already been completed. The server will guarantee + * that for at least 60 minutes after the first request. + * + * For example, consider a situation where you make an initial request and + * the request times out. If you make the request again with the same request + * ID, the server can check if original operation with the same request ID + * was received, and if so, will ignore the second request. This prevents + * clients from accidentally creating duplicate commitments. + * + * The request ID must be a valid UUID with the exception that zero UUID is + * not supported (00000000-0000-0000-0000-000000000000). + * @param {object} [options] + * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. + * @returns {Promise} - The promise which resolves to an array. + * The first element of the array is an object representing + * a long running operation. Its `promise()` method returns a promise + * you can `await` for. + * Please see the + * [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations) + * for more details and examples. + * @example + * const [operation] = await client.createFeature(request); + * const [response] = await operation.promise(); + */ + createFeature( + request?: protos.google.cloud.gkehub.v1alpha.ICreateFeatureRequest, + optionsOrCallback?: + | CallOptions + | Callback< + LROperation< + protos.google.cloud.gkehub.v1alpha.IFeature, + protos.google.cloud.gkehub.v1alpha.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + >, + callback?: Callback< + LROperation< + protos.google.cloud.gkehub.v1alpha.IFeature, + protos.google.cloud.gkehub.v1alpha.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + > + ): Promise< + [ + LROperation< + protos.google.cloud.gkehub.v1alpha.IFeature, + protos.google.cloud.gkehub.v1alpha.IOperationMetadata + >, + protos.google.longrunning.IOperation | undefined, + {} | undefined + ] + > | void { + request = request || {}; + let options: CallOptions; + if (typeof optionsOrCallback === 'function' && callback === undefined) { + callback = optionsOrCallback; + options = {}; + } else { + options = optionsOrCallback as CallOptions; + } + options = options || {}; + options.otherArgs = options.otherArgs || {}; + options.otherArgs.headers = options.otherArgs.headers || {}; + options.otherArgs.headers['x-goog-request-params'] = + gax.routingHeader.fromParams({ + parent: request.parent || '', + }); + this.initialize(); + return this.innerApiCalls.createFeature(request, options, callback); + } + /** + * Check the status of the long running operation returned by `createFeature()`. + * @param {String} name + * The operation name that will be passed. + * @returns {Promise} - The promise which resolves to an object. + * The decoded operation object has result and metadata field to get information from. + * Please see the + * [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations) + * for more details and examples. + * @example + * const decodedOperation = await checkCreateFeatureProgress(name); + * console.log(decodedOperation.result); + * console.log(decodedOperation.done); + * console.log(decodedOperation.metadata); + */ + async checkCreateFeatureProgress( + name: string + ): Promise< + LROperation< + protos.google.cloud.gkehub.v1alpha.Feature, + protos.google.cloud.gkehub.v1alpha.OperationMetadata + > + > { + const request = new operationsProtos.google.longrunning.GetOperationRequest( + {name} + ); + const [operation] = await this.operationsClient.getOperation(request); + const decodeOperation = new gax.Operation( + operation, + this.descriptors.longrunning.createFeature, + gax.createDefaultBackoffSettings() + ); + return decodeOperation as LROperation< + protos.google.cloud.gkehub.v1alpha.Feature, + protos.google.cloud.gkehub.v1alpha.OperationMetadata + >; + } + deleteFeature( + request?: protos.google.cloud.gkehub.v1alpha.IDeleteFeatureRequest, + options?: CallOptions + ): Promise< + [ + LROperation< + protos.google.protobuf.IEmpty, + protos.google.cloud.gkehub.v1alpha.IOperationMetadata + >, + protos.google.longrunning.IOperation | undefined, + {} | undefined + ] + >; + deleteFeature( + request: protos.google.cloud.gkehub.v1alpha.IDeleteFeatureRequest, + options: CallOptions, + callback: Callback< + LROperation< + protos.google.protobuf.IEmpty, + protos.google.cloud.gkehub.v1alpha.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + > + ): void; + deleteFeature( + request: protos.google.cloud.gkehub.v1alpha.IDeleteFeatureRequest, + callback: Callback< + LROperation< + protos.google.protobuf.IEmpty, + protos.google.cloud.gkehub.v1alpha.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + > + ): void; + /** + * Removes a Feature. + * + * @param {Object} request + * The request object that will be sent. + * @param {string} request.name + * The Feature resource name in the format + * `projects/* /locations/* /features/*`. + * @param {boolean} request.force + * If set to true, the delete will ignore any outstanding resources for + * this Feature (that is, `FeatureState.has_resources` is set to true). These + * resources will NOT be cleaned up or modified in any way. + * @param {string} [request.requestId] + * Optional. A request ID to identify requests. Specify a unique request ID + * so that if you must retry your request, the server will know to ignore + * the request if it has already been completed. The server will guarantee + * that for at least 60 minutes after the first request. + * + * For example, consider a situation where you make an initial request and + * the request times out. If you make the request again with the same request + * ID, the server can check if original operation with the same request ID + * was received, and if so, will ignore the second request. This prevents + * clients from accidentally creating duplicate commitments. + * + * The request ID must be a valid UUID with the exception that zero UUID is + * not supported (00000000-0000-0000-0000-000000000000). + * @param {object} [options] + * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. + * @returns {Promise} - The promise which resolves to an array. + * The first element of the array is an object representing + * a long running operation. Its `promise()` method returns a promise + * you can `await` for. + * Please see the + * [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations) + * for more details and examples. + * @example + * const [operation] = await client.deleteFeature(request); + * const [response] = await operation.promise(); + */ + deleteFeature( + request?: protos.google.cloud.gkehub.v1alpha.IDeleteFeatureRequest, + optionsOrCallback?: + | CallOptions + | Callback< + LROperation< + protos.google.protobuf.IEmpty, + protos.google.cloud.gkehub.v1alpha.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + >, + callback?: Callback< + LROperation< + protos.google.protobuf.IEmpty, + protos.google.cloud.gkehub.v1alpha.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + > + ): Promise< + [ + LROperation< + protos.google.protobuf.IEmpty, + protos.google.cloud.gkehub.v1alpha.IOperationMetadata + >, + protos.google.longrunning.IOperation | undefined, + {} | undefined + ] + > | void { + request = request || {}; + let options: CallOptions; + if (typeof optionsOrCallback === 'function' && callback === undefined) { + callback = optionsOrCallback; + options = {}; + } else { + options = optionsOrCallback as CallOptions; + } + options = options || {}; + options.otherArgs = options.otherArgs || {}; + options.otherArgs.headers = options.otherArgs.headers || {}; + options.otherArgs.headers['x-goog-request-params'] = + gax.routingHeader.fromParams({ + name: request.name || '', + }); + this.initialize(); + return this.innerApiCalls.deleteFeature(request, options, callback); + } + /** + * Check the status of the long running operation returned by `deleteFeature()`. + * @param {String} name + * The operation name that will be passed. + * @returns {Promise} - The promise which resolves to an object. + * The decoded operation object has result and metadata field to get information from. + * Please see the + * [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations) + * for more details and examples. + * @example + * const decodedOperation = await checkDeleteFeatureProgress(name); + * console.log(decodedOperation.result); + * console.log(decodedOperation.done); + * console.log(decodedOperation.metadata); + */ + async checkDeleteFeatureProgress( + name: string + ): Promise< + LROperation< + protos.google.protobuf.Empty, + protos.google.cloud.gkehub.v1alpha.OperationMetadata + > + > { + const request = new operationsProtos.google.longrunning.GetOperationRequest( + {name} + ); + const [operation] = await this.operationsClient.getOperation(request); + const decodeOperation = new gax.Operation( + operation, + this.descriptors.longrunning.deleteFeature, + gax.createDefaultBackoffSettings() + ); + return decodeOperation as LROperation< + protos.google.protobuf.Empty, + protos.google.cloud.gkehub.v1alpha.OperationMetadata + >; + } + updateFeature( + request?: protos.google.cloud.gkehub.v1alpha.IUpdateFeatureRequest, + options?: CallOptions + ): Promise< + [ + LROperation< + protos.google.cloud.gkehub.v1alpha.IFeature, + protos.google.cloud.gkehub.v1alpha.IOperationMetadata + >, + protos.google.longrunning.IOperation | undefined, + {} | undefined + ] + >; + updateFeature( + request: protos.google.cloud.gkehub.v1alpha.IUpdateFeatureRequest, + options: CallOptions, + callback: Callback< + LROperation< + protos.google.cloud.gkehub.v1alpha.IFeature, + protos.google.cloud.gkehub.v1alpha.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + > + ): void; + updateFeature( + request: protos.google.cloud.gkehub.v1alpha.IUpdateFeatureRequest, + callback: Callback< + LROperation< + protos.google.cloud.gkehub.v1alpha.IFeature, + protos.google.cloud.gkehub.v1alpha.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + > + ): void; + /** + * Updates an existing Feature. + * + * @param {Object} request + * The request object that will be sent. + * @param {string} request.name + * The Feature resource name in the format + * `projects/* /locations/* /features/*`. + * @param {google.protobuf.FieldMask} request.updateMask + * Mask of fields to update. + * @param {google.cloud.gkehub.v1alpha.Feature} request.resource + * Only fields specified in update_mask are updated. + * If you specify a field in the update_mask but don't specify its value here + * that field will be deleted. + * If you are updating a map field, set the value of a key to null or empty + * string to delete the key from the map. It's not possible to update a key's + * value to the empty string. + * If you specify the update_mask to be a special path "*", fully replaces all + * user-modifiable fields to match `resource`. + * @param {string} [request.requestId] + * Optional. A request ID to identify requests. Specify a unique request ID + * so that if you must retry your request, the server will know to ignore + * the request if it has already been completed. The server will guarantee + * that for at least 60 minutes after the first request. + * + * For example, consider a situation where you make an initial request and + * the request times out. If you make the request again with the same request + * ID, the server can check if original operation with the same request ID + * was received, and if so, will ignore the second request. This prevents + * clients from accidentally creating duplicate commitments. + * + * The request ID must be a valid UUID with the exception that zero UUID is + * not supported (00000000-0000-0000-0000-000000000000). + * @param {object} [options] + * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. + * @returns {Promise} - The promise which resolves to an array. + * The first element of the array is an object representing + * a long running operation. Its `promise()` method returns a promise + * you can `await` for. + * Please see the + * [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations) + * for more details and examples. + * @example + * const [operation] = await client.updateFeature(request); + * const [response] = await operation.promise(); + */ + updateFeature( + request?: protos.google.cloud.gkehub.v1alpha.IUpdateFeatureRequest, + optionsOrCallback?: + | CallOptions + | Callback< + LROperation< + protos.google.cloud.gkehub.v1alpha.IFeature, + protos.google.cloud.gkehub.v1alpha.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + >, + callback?: Callback< + LROperation< + protos.google.cloud.gkehub.v1alpha.IFeature, + protos.google.cloud.gkehub.v1alpha.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + > + ): Promise< + [ + LROperation< + protos.google.cloud.gkehub.v1alpha.IFeature, + protos.google.cloud.gkehub.v1alpha.IOperationMetadata + >, + protos.google.longrunning.IOperation | undefined, + {} | undefined + ] + > | void { + request = request || {}; + let options: CallOptions; + if (typeof optionsOrCallback === 'function' && callback === undefined) { + callback = optionsOrCallback; + options = {}; + } else { + options = optionsOrCallback as CallOptions; + } + options = options || {}; + options.otherArgs = options.otherArgs || {}; + options.otherArgs.headers = options.otherArgs.headers || {}; + options.otherArgs.headers['x-goog-request-params'] = + gax.routingHeader.fromParams({ + name: request.name || '', + }); + this.initialize(); + return this.innerApiCalls.updateFeature(request, options, callback); + } + /** + * Check the status of the long running operation returned by `updateFeature()`. + * @param {String} name + * The operation name that will be passed. + * @returns {Promise} - The promise which resolves to an object. + * The decoded operation object has result and metadata field to get information from. + * Please see the + * [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations) + * for more details and examples. + * @example + * const decodedOperation = await checkUpdateFeatureProgress(name); + * console.log(decodedOperation.result); + * console.log(decodedOperation.done); + * console.log(decodedOperation.metadata); + */ + async checkUpdateFeatureProgress( + name: string + ): Promise< + LROperation< + protos.google.cloud.gkehub.v1alpha.Feature, + protos.google.cloud.gkehub.v1alpha.OperationMetadata + > + > { + const request = new operationsProtos.google.longrunning.GetOperationRequest( + {name} + ); + const [operation] = await this.operationsClient.getOperation(request); + const decodeOperation = new gax.Operation( + operation, + this.descriptors.longrunning.updateFeature, + gax.createDefaultBackoffSettings() + ); + return decodeOperation as LROperation< + protos.google.cloud.gkehub.v1alpha.Feature, + protos.google.cloud.gkehub.v1alpha.OperationMetadata + >; + } + listFeatures( + request?: protos.google.cloud.gkehub.v1alpha.IListFeaturesRequest, + options?: CallOptions + ): Promise< + [ + protos.google.cloud.gkehub.v1alpha.IFeature[], + protos.google.cloud.gkehub.v1alpha.IListFeaturesRequest | null, + protos.google.cloud.gkehub.v1alpha.IListFeaturesResponse + ] + >; + listFeatures( + request: protos.google.cloud.gkehub.v1alpha.IListFeaturesRequest, + options: CallOptions, + callback: PaginationCallback< + protos.google.cloud.gkehub.v1alpha.IListFeaturesRequest, + | protos.google.cloud.gkehub.v1alpha.IListFeaturesResponse + | null + | undefined, + protos.google.cloud.gkehub.v1alpha.IFeature + > + ): void; + listFeatures( + request: protos.google.cloud.gkehub.v1alpha.IListFeaturesRequest, + callback: PaginationCallback< + protos.google.cloud.gkehub.v1alpha.IListFeaturesRequest, + | protos.google.cloud.gkehub.v1alpha.IListFeaturesResponse + | null + | undefined, + protos.google.cloud.gkehub.v1alpha.IFeature + > + ): void; + /** + * Lists Features in a given project and location. + * + * @param {Object} request + * The request object that will be sent. + * @param {string} request.parent + * The parent (project and location) where the Features will be listed. + * Specified in the format `projects/* /locations/*`. + * @param {number} request.pageSize + * When requesting a 'page' of resources, `page_size` specifies number of + * resources to return. If unspecified or set to 0, all resources will + * be returned. + * @param {string} request.pageToken + * Token returned by previous call to `ListFeatures` which + * specifies the position in the list from where to continue listing the + * resources. + * @param {string} request.filter + * Lists Features that match the filter expression, following the syntax + * outlined in https://google.aip.dev/160. + * + * Examples: + * + * - Feature with the name "servicemesh" in project "foo-proj": + * + * name = "projects/foo-proj/locations/global/features/servicemesh" + * + * - Features that have a label called `foo`: + * + * labels.foo:* + * + * - Features that have a label called `foo` whose value is `bar`: + * + * labels.foo = bar + * @param {string} request.orderBy + * One or more fields to compare and use to sort the output. + * See https://google.aip.dev/132#ordering. + * @param {object} [options] + * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. + * @returns {Promise} - The promise which resolves to an array. + * The first element of the array is Array of [Feature]{@link google.cloud.gkehub.v1alpha.Feature}. + * The client library will perform auto-pagination by default: it will call the API as many + * times as needed and will merge results from all the pages into this array. + * Note that it can affect your quota. + * We recommend using `listFeaturesAsync()` + * method described below for async iteration which you can stop as needed. + * Please see the + * [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#auto-pagination) + * for more details and examples. + */ + listFeatures( + request?: protos.google.cloud.gkehub.v1alpha.IListFeaturesRequest, + optionsOrCallback?: + | CallOptions + | PaginationCallback< + protos.google.cloud.gkehub.v1alpha.IListFeaturesRequest, + | protos.google.cloud.gkehub.v1alpha.IListFeaturesResponse + | null + | undefined, + protos.google.cloud.gkehub.v1alpha.IFeature + >, + callback?: PaginationCallback< + protos.google.cloud.gkehub.v1alpha.IListFeaturesRequest, + | protos.google.cloud.gkehub.v1alpha.IListFeaturesResponse + | null + | undefined, + protos.google.cloud.gkehub.v1alpha.IFeature + > + ): Promise< + [ + protos.google.cloud.gkehub.v1alpha.IFeature[], + protos.google.cloud.gkehub.v1alpha.IListFeaturesRequest | null, + protos.google.cloud.gkehub.v1alpha.IListFeaturesResponse + ] + > | void { + request = request || {}; + let options: CallOptions; + if (typeof optionsOrCallback === 'function' && callback === undefined) { + callback = optionsOrCallback; + options = {}; + } else { + options = optionsOrCallback as CallOptions; + } + options = options || {}; + options.otherArgs = options.otherArgs || {}; + options.otherArgs.headers = options.otherArgs.headers || {}; + options.otherArgs.headers['x-goog-request-params'] = + gax.routingHeader.fromParams({ + parent: request.parent || '', + }); + this.initialize(); + return this.innerApiCalls.listFeatures(request, options, callback); + } + + /** + * Equivalent to `method.name.toCamelCase()`, but returns a NodeJS Stream object. + * @param {Object} request + * The request object that will be sent. + * @param {string} request.parent + * The parent (project and location) where the Features will be listed. + * Specified in the format `projects/* /locations/*`. + * @param {number} request.pageSize + * When requesting a 'page' of resources, `page_size` specifies number of + * resources to return. If unspecified or set to 0, all resources will + * be returned. + * @param {string} request.pageToken + * Token returned by previous call to `ListFeatures` which + * specifies the position in the list from where to continue listing the + * resources. + * @param {string} request.filter + * Lists Features that match the filter expression, following the syntax + * outlined in https://google.aip.dev/160. + * + * Examples: + * + * - Feature with the name "servicemesh" in project "foo-proj": + * + * name = "projects/foo-proj/locations/global/features/servicemesh" + * + * - Features that have a label called `foo`: + * + * labels.foo:* + * + * - Features that have a label called `foo` whose value is `bar`: + * + * labels.foo = bar + * @param {string} request.orderBy + * One or more fields to compare and use to sort the output. + * See https://google.aip.dev/132#ordering. + * @param {object} [options] + * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. + * @returns {Stream} + * An object stream which emits an object representing [Feature]{@link google.cloud.gkehub.v1alpha.Feature} on 'data' event. + * The client library will perform auto-pagination by default: it will call the API as many + * times as needed. Note that it can affect your quota. + * We recommend using `listFeaturesAsync()` + * method described below for async iteration which you can stop as needed. + * Please see the + * [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#auto-pagination) + * for more details and examples. + */ + listFeaturesStream( + request?: protos.google.cloud.gkehub.v1alpha.IListFeaturesRequest, + options?: CallOptions + ): Transform { + request = request || {}; + options = options || {}; + options.otherArgs = options.otherArgs || {}; + options.otherArgs.headers = options.otherArgs.headers || {}; + options.otherArgs.headers['x-goog-request-params'] = + gax.routingHeader.fromParams({ + parent: request.parent || '', + }); + const callSettings = new gax.CallSettings(options); + this.initialize(); + return this.descriptors.page.listFeatures.createStream( + this.innerApiCalls.listFeatures as gax.GaxCall, + request, + callSettings + ); + } + + /** + * Equivalent to `listFeatures`, but returns an iterable object. + * + * `for`-`await`-`of` syntax is used with the iterable to get response elements on-demand. + * @param {Object} request + * The request object that will be sent. + * @param {string} request.parent + * The parent (project and location) where the Features will be listed. + * Specified in the format `projects/* /locations/*`. + * @param {number} request.pageSize + * When requesting a 'page' of resources, `page_size` specifies number of + * resources to return. If unspecified or set to 0, all resources will + * be returned. + * @param {string} request.pageToken + * Token returned by previous call to `ListFeatures` which + * specifies the position in the list from where to continue listing the + * resources. + * @param {string} request.filter + * Lists Features that match the filter expression, following the syntax + * outlined in https://google.aip.dev/160. + * + * Examples: + * + * - Feature with the name "servicemesh" in project "foo-proj": + * + * name = "projects/foo-proj/locations/global/features/servicemesh" + * + * - Features that have a label called `foo`: + * + * labels.foo:* + * + * - Features that have a label called `foo` whose value is `bar`: + * + * labels.foo = bar + * @param {string} request.orderBy + * One or more fields to compare and use to sort the output. + * See https://google.aip.dev/132#ordering. + * @param {object} [options] + * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. + * @returns {Object} + * An iterable Object that allows [async iteration](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Iteration_protocols). + * When you iterate the returned iterable, each element will be an object representing + * [Feature]{@link google.cloud.gkehub.v1alpha.Feature}. The API will be called under the hood as needed, once per the page, + * so you can stop the iteration when you don't need more results. + * Please see the + * [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#auto-pagination) + * for more details and examples. + * @example + * const iterable = client.listFeaturesAsync(request); + * for await (const response of iterable) { + * // process response + * } + */ + listFeaturesAsync( + request?: protos.google.cloud.gkehub.v1alpha.IListFeaturesRequest, + options?: CallOptions + ): AsyncIterable { + request = request || {}; + options = options || {}; + options.otherArgs = options.otherArgs || {}; + options.otherArgs.headers = options.otherArgs.headers || {}; + options.otherArgs.headers['x-goog-request-params'] = + gax.routingHeader.fromParams({ + parent: request.parent || '', + }); + options = options || {}; + const callSettings = new gax.CallSettings(options); + this.initialize(); + return this.descriptors.page.listFeatures.asyncIterate( + this.innerApiCalls['listFeatures'] as GaxCall, + request as unknown as RequestType, + callSettings + ) as AsyncIterable; + } + // -------------------- + // -- Path templates -- + // -------------------- + + /** + * Return a fully-qualified feature resource name string. + * + * @param {string} project + * @param {string} location + * @param {string} feature + * @returns {string} Resource name string. + */ + featurePath(project: string, location: string, feature: string) { + return this.pathTemplates.featurePathTemplate.render({ + project: project, + location: location, + feature: feature, + }); + } + + /** + * Parse the project from Feature resource. + * + * @param {string} featureName + * A fully-qualified path representing Feature resource. + * @returns {string} A string representing the project. + */ + matchProjectFromFeatureName(featureName: string) { + return this.pathTemplates.featurePathTemplate.match(featureName).project; + } + + /** + * Parse the location from Feature resource. + * + * @param {string} featureName + * A fully-qualified path representing Feature resource. + * @returns {string} A string representing the location. + */ + matchLocationFromFeatureName(featureName: string) { + return this.pathTemplates.featurePathTemplate.match(featureName).location; + } + + /** + * Parse the feature from Feature resource. + * + * @param {string} featureName + * A fully-qualified path representing Feature resource. + * @returns {string} A string representing the feature. + */ + matchFeatureFromFeatureName(featureName: string) { + return this.pathTemplates.featurePathTemplate.match(featureName).feature; + } + + /** + * Terminate the gRPC channel and close the client. + * + * The client will no longer be usable and all future behavior is undefined. + * @returns {Promise} A promise that resolves when the client is closed. + */ + close(): Promise { + this.initialize(); + if (!this._terminated) { + return this.gkeHubStub!.then(stub => { + this._terminated = true; + stub.close(); + }); + } + return Promise.resolve(); + } +} diff --git a/packages/google-cloud-gkehub/src/v1alpha/gke_hub_client_config.json b/packages/google-cloud-gkehub/src/v1alpha/gke_hub_client_config.json new file mode 100644 index 00000000000..d972b7a4a13 --- /dev/null +++ b/packages/google-cloud-gkehub/src/v1alpha/gke_hub_client_config.json @@ -0,0 +1,63 @@ +{ + "interfaces": { + "google.cloud.gkehub.v1alpha.GkeHub": { + "retry_codes": { + "non_idempotent": [], + "idempotent": [ + "DEADLINE_EXCEEDED", + "UNAVAILABLE" + ], + "unavailable": [ + "UNAVAILABLE" + ] + }, + "retry_params": { + "default": { + "initial_retry_delay_millis": 100, + "retry_delay_multiplier": 1.3, + "max_retry_delay_millis": 60000, + "initial_rpc_timeout_millis": 60000, + "rpc_timeout_multiplier": 1, + "max_rpc_timeout_millis": 60000, + "total_timeout_millis": 600000 + }, + "ce5b960a6ed052e690863808e4f0deff3dc7d49f": { + "initial_retry_delay_millis": 1000, + "retry_delay_multiplier": 1.3, + "max_retry_delay_millis": 10000, + "initial_rpc_timeout_millis": 60000, + "rpc_timeout_multiplier": 1, + "max_rpc_timeout_millis": 60000, + "total_timeout_millis": 600000 + } + }, + "methods": { + "ListFeatures": { + "timeout_millis": 60000, + "retry_codes_name": "unavailable", + "retry_params_name": "ce5b960a6ed052e690863808e4f0deff3dc7d49f" + }, + "GetFeature": { + "timeout_millis": 60000, + "retry_codes_name": "unavailable", + "retry_params_name": "ce5b960a6ed052e690863808e4f0deff3dc7d49f" + }, + "CreateFeature": { + "timeout_millis": 60000, + "retry_codes_name": "unavailable", + "retry_params_name": "ce5b960a6ed052e690863808e4f0deff3dc7d49f" + }, + "DeleteFeature": { + "timeout_millis": 60000, + "retry_codes_name": "unavailable", + "retry_params_name": "ce5b960a6ed052e690863808e4f0deff3dc7d49f" + }, + "UpdateFeature": { + "timeout_millis": 60000, + "retry_codes_name": "unavailable", + "retry_params_name": "ce5b960a6ed052e690863808e4f0deff3dc7d49f" + } + } + } + } +} diff --git a/packages/google-cloud-gkehub/src/v1alpha/gke_hub_proto_list.json b/packages/google-cloud-gkehub/src/v1alpha/gke_hub_proto_list.json new file mode 100644 index 00000000000..4b8b6202159 --- /dev/null +++ b/packages/google-cloud-gkehub/src/v1alpha/gke_hub_proto_list.json @@ -0,0 +1,9 @@ +[ + "../../protos/google/cloud/gkehub/v1alpha/cloudauditlogging/cloudauditlogging.proto", + "../../protos/google/cloud/gkehub/v1alpha/configmanagement/configmanagement.proto", + "../../protos/google/cloud/gkehub/v1alpha/feature.proto", + "../../protos/google/cloud/gkehub/v1alpha/metering/metering.proto", + "../../protos/google/cloud/gkehub/v1alpha/multiclusteringress/multiclusteringress.proto", + "../../protos/google/cloud/gkehub/v1alpha/service.proto", + "../../protos/google/cloud/gkehub/v1alpha/servicemesh/servicemesh.proto" +] diff --git a/packages/google-cloud-gkehub/src/v1alpha/index.ts b/packages/google-cloud-gkehub/src/v1alpha/index.ts new file mode 100644 index 00000000000..43cf74c6b34 --- /dev/null +++ b/packages/google-cloud-gkehub/src/v1alpha/index.ts @@ -0,0 +1,19 @@ +// 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 +// +// 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. ** + +export {GkeHubClient} from './gke_hub_client'; diff --git a/packages/google-cloud-gkehub/src/v1alpha2/gapic_metadata.json b/packages/google-cloud-gkehub/src/v1alpha2/gapic_metadata.json new file mode 100644 index 00000000000..68d5944d9f8 --- /dev/null +++ b/packages/google-cloud-gkehub/src/v1alpha2/gapic_metadata.json @@ -0,0 +1,97 @@ +{ + "schema": "1.0", + "comment": "This file maps proto services/RPCs to the corresponding library clients/methods", + "language": "typescript", + "protoPackage": "google.cloud.gkehub.v1alpha2", + "libraryPackage": "@google-cloud/gkehub", + "services": { + "GkeHub": { + "clients": { + "grpc": { + "libraryClient": "GkeHubClient", + "rpcs": { + "GetMembership": { + "methods": [ + "getMembership" + ] + }, + "GenerateConnectManifest": { + "methods": [ + "generateConnectManifest" + ] + }, + "InitializeHub": { + "methods": [ + "initializeHub" + ] + }, + "CreateMembership": { + "methods": [ + "createMembership" + ] + }, + "DeleteMembership": { + "methods": [ + "deleteMembership" + ] + }, + "UpdateMembership": { + "methods": [ + "updateMembership" + ] + }, + "ListMemberships": { + "methods": [ + "listMemberships", + "listMembershipsStream", + "listMembershipsAsync" + ] + } + } + }, + "grpc-fallback": { + "libraryClient": "GkeHubClient", + "rpcs": { + "GetMembership": { + "methods": [ + "getMembership" + ] + }, + "GenerateConnectManifest": { + "methods": [ + "generateConnectManifest" + ] + }, + "InitializeHub": { + "methods": [ + "initializeHub" + ] + }, + "CreateMembership": { + "methods": [ + "createMembership" + ] + }, + "DeleteMembership": { + "methods": [ + "deleteMembership" + ] + }, + "UpdateMembership": { + "methods": [ + "updateMembership" + ] + }, + "ListMemberships": { + "methods": [ + "listMemberships", + "listMembershipsStream", + "listMembershipsAsync" + ] + } + } + } + } + } + } +} diff --git a/packages/google-cloud-gkehub/src/v1alpha2/gke_hub_client.ts b/packages/google-cloud-gkehub/src/v1alpha2/gke_hub_client.ts new file mode 100644 index 00000000000..45e5f09207f --- /dev/null +++ b/packages/google-cloud-gkehub/src/v1alpha2/gke_hub_client.ts @@ -0,0 +1,1549 @@ +// 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 +// +// 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. ** + +/* global window */ +import * as gax from 'google-gax'; +import { + Callback, + CallOptions, + Descriptors, + ClientOptions, + LROperation, + PaginationCallback, + GaxCall, +} from 'google-gax'; + +import {Transform} from 'stream'; +import {RequestType} from 'google-gax/build/src/apitypes'; +import * as protos from '../../protos/protos'; +import jsonProtos = require('../../protos/protos.json'); +/** + * Client JSON configuration object, loaded from + * `src/v1alpha2/gke_hub_client_config.json`. + * This file defines retry strategy and timeouts for all API methods in this library. + */ +import * as gapicConfig from './gke_hub_client_config.json'; +import {operationsProtos} from 'google-gax'; +const version = require('../../../package.json').version; + +/** + * GKE Hub CRUD API for the Membership resource. + * The Membership service is currently only available in the global location. + * @class + * @memberof v1alpha2 + */ +export class GkeHubClient { + private _terminated = false; + private _opts: ClientOptions; + private _providedCustomServicePath: boolean; + private _gaxModule: typeof gax | typeof gax.fallback; + private _gaxGrpc: gax.GrpcClient | gax.fallback.GrpcClient; + private _protos: {}; + private _defaults: {[method: string]: gax.CallSettings}; + auth: gax.GoogleAuth; + descriptors: Descriptors = { + page: {}, + stream: {}, + longrunning: {}, + batching: {}, + }; + warn: (code: string, message: string, warnType?: string) => void; + innerApiCalls: {[name: string]: Function}; + pathTemplates: {[name: string]: gax.PathTemplate}; + operationsClient: gax.OperationsClient; + gkeHubStub?: Promise<{[name: string]: Function}>; + + /** + * Construct an instance of GkeHubClient. + * + * @param {object} [options] - The configuration object. + * The options accepted by the constructor are described in detail + * in [this document](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#creating-the-client-instance). + * The common options are: + * @param {object} [options.credentials] - Credentials object. + * @param {string} [options.credentials.client_email] + * @param {string} [options.credentials.private_key] + * @param {string} [options.email] - Account email address. Required when + * using a .pem or .p12 keyFilename. + * @param {string} [options.keyFilename] - Full path to the a .json, .pem, or + * .p12 key downloaded from the Google Developers Console. If you provide + * a path to a JSON file, the projectId option below is not necessary. + * NOTE: .pem and .p12 require you to specify options.email as well. + * @param {number} [options.port] - The port on which to connect to + * the remote host. + * @param {string} [options.projectId] - The project ID from the Google + * Developer's Console, e.g. 'grape-spaceship-123'. We will also check + * the environment variable GCLOUD_PROJECT for your project ID. If your + * app is running in an environment which supports + * {@link https://developers.google.com/identity/protocols/application-default-credentials Application Default Credentials}, + * your project ID will be detected automatically. + * @param {string} [options.apiEndpoint] - The domain name of the + * API remote host. + * @param {gax.ClientConfig} [options.clientConfig] - Client configuration override. + * Follows the structure of {@link gapicConfig}. + * @param {boolean} [options.fallback] - Use HTTP fallback mode. + * In fallback mode, a special browser-compatible transport implementation is used + * instead of gRPC transport. In browser context (if the `window` object is defined) + * the fallback mode is enabled automatically; set `options.fallback` to `false` + * if you need to override this behavior. + */ + constructor(opts?: ClientOptions) { + // Ensure that options include all the required fields. + const staticMembers = this.constructor as typeof GkeHubClient; + const servicePath = + opts?.servicePath || opts?.apiEndpoint || staticMembers.servicePath; + this._providedCustomServicePath = !!( + opts?.servicePath || opts?.apiEndpoint + ); + const port = opts?.port || staticMembers.port; + const clientConfig = opts?.clientConfig ?? {}; + const fallback = + opts?.fallback ?? + (typeof window !== 'undefined' && typeof window?.fetch === 'function'); + opts = Object.assign({servicePath, port, clientConfig, fallback}, opts); + + // If scopes are unset in options and we're connecting to a non-default endpoint, set scopes just in case. + if (servicePath !== staticMembers.servicePath && !('scopes' in opts)) { + opts['scopes'] = staticMembers.scopes; + } + + // Choose either gRPC or proto-over-HTTP implementation of google-gax. + this._gaxModule = opts.fallback ? gax.fallback : gax; + + // Create a `gaxGrpc` object, with any grpc-specific options sent to the client. + this._gaxGrpc = new this._gaxModule.GrpcClient(opts); + + // Save options to use in initialize() method. + this._opts = opts; + + // Save the auth object to the client, for use by other methods. + this.auth = this._gaxGrpc.auth as gax.GoogleAuth; + + // Set the default scopes in auth client if needed. + if (servicePath === staticMembers.servicePath) { + this.auth.defaultScopes = staticMembers.scopes; + } + + // Determine the client header string. + const clientHeader = [`gax/${this._gaxModule.version}`, `gapic/${version}`]; + if (typeof process !== 'undefined' && 'versions' in process) { + clientHeader.push(`gl-node/${process.versions.node}`); + } else { + clientHeader.push(`gl-web/${this._gaxModule.version}`); + } + if (!opts.fallback) { + clientHeader.push(`grpc/${this._gaxGrpc.grpcVersion}`); + } else if (opts.fallback === 'rest') { + clientHeader.push(`rest/${this._gaxGrpc.grpcVersion}`); + } + if (opts.libName && opts.libVersion) { + clientHeader.push(`${opts.libName}/${opts.libVersion}`); + } + // Load the applicable protos. + this._protos = this._gaxGrpc.loadProtoJSON(jsonProtos); + + // This API contains "path templates"; forward-slash-separated + // identifiers to uniquely identify resources within the API. + // Create useful helper objects for these. + this.pathTemplates = { + locationPathTemplate: new this._gaxModule.PathTemplate( + 'projects/{project}/locations/{location}' + ), + membershipPathTemplate: new this._gaxModule.PathTemplate( + 'projects/{project}/locations/{location}/memberships/{membership}' + ), + projectPathTemplate: new this._gaxModule.PathTemplate( + 'projects/{project}' + ), + }; + + // Some of the methods on this service return "paged" results, + // (e.g. 50 results at a time, with tokens to get subsequent + // pages). Denote the keys used for pagination and results. + this.descriptors.page = { + listMemberships: new this._gaxModule.PageDescriptor( + 'pageToken', + 'nextPageToken', + 'resources' + ), + }; + + const protoFilesRoot = this._gaxModule.protobuf.Root.fromJSON(jsonProtos); + + // This API contains "long-running operations", which return a + // an Operation object that allows for tracking of the operation, + // rather than holding a request open. + + this.operationsClient = this._gaxModule + .lro({ + auth: this.auth, + grpc: 'grpc' in this._gaxGrpc ? this._gaxGrpc.grpc : undefined, + }) + .operationsClient(opts); + const createMembershipResponse = protoFilesRoot.lookup( + '.google.cloud.gkehub.v1alpha2.Membership' + ) as gax.protobuf.Type; + const createMembershipMetadata = protoFilesRoot.lookup( + '.google.cloud.gkehub.v1alpha2.OperationMetadata' + ) as gax.protobuf.Type; + const deleteMembershipResponse = protoFilesRoot.lookup( + '.google.protobuf.Empty' + ) as gax.protobuf.Type; + const deleteMembershipMetadata = protoFilesRoot.lookup( + '.google.cloud.gkehub.v1alpha2.OperationMetadata' + ) as gax.protobuf.Type; + const updateMembershipResponse = protoFilesRoot.lookup( + '.google.cloud.gkehub.v1alpha2.Membership' + ) as gax.protobuf.Type; + const updateMembershipMetadata = protoFilesRoot.lookup( + '.google.cloud.gkehub.v1alpha2.OperationMetadata' + ) as gax.protobuf.Type; + + this.descriptors.longrunning = { + createMembership: new this._gaxModule.LongrunningDescriptor( + this.operationsClient, + createMembershipResponse.decode.bind(createMembershipResponse), + createMembershipMetadata.decode.bind(createMembershipMetadata) + ), + deleteMembership: new this._gaxModule.LongrunningDescriptor( + this.operationsClient, + deleteMembershipResponse.decode.bind(deleteMembershipResponse), + deleteMembershipMetadata.decode.bind(deleteMembershipMetadata) + ), + updateMembership: new this._gaxModule.LongrunningDescriptor( + this.operationsClient, + updateMembershipResponse.decode.bind(updateMembershipResponse), + updateMembershipMetadata.decode.bind(updateMembershipMetadata) + ), + }; + + // Put together the default options sent with requests. + this._defaults = this._gaxGrpc.constructSettings( + 'google.cloud.gkehub.v1alpha2.GkeHub', + gapicConfig as gax.ClientConfig, + opts.clientConfig || {}, + {'x-goog-api-client': clientHeader.join(' ')} + ); + + // Set up a dictionary of "inner API calls"; the core implementation + // of calling the API is handled in `google-gax`, with this code + // merely providing the destination and request information. + this.innerApiCalls = {}; + + // Add a warn function to the client constructor so it can be easily tested. + this.warn = gax.warn; + } + + /** + * Initialize the client. + * Performs asynchronous operations (such as authentication) and prepares the client. + * This function will be called automatically when any class method is called for the + * first time, but if you need to initialize it before calling an actual method, + * feel free to call initialize() directly. + * + * You can await on this method if you want to make sure the client is initialized. + * + * @returns {Promise} A promise that resolves to an authenticated service stub. + */ + initialize() { + // If the client stub promise is already initialized, return immediately. + if (this.gkeHubStub) { + return this.gkeHubStub; + } + + // Put together the "service stub" for + // google.cloud.gkehub.v1alpha2.GkeHub. + this.gkeHubStub = this._gaxGrpc.createStub( + this._opts.fallback + ? (this._protos as protobuf.Root).lookupService( + 'google.cloud.gkehub.v1alpha2.GkeHub' + ) + : // eslint-disable-next-line @typescript-eslint/no-explicit-any + (this._protos as any).google.cloud.gkehub.v1alpha2.GkeHub, + this._opts, + this._providedCustomServicePath + ) as Promise<{[method: string]: Function}>; + + // Iterate over each of the methods that the service provides + // and create an API call method for each. + const gkeHubStubMethods = [ + 'listMemberships', + 'getMembership', + 'createMembership', + 'deleteMembership', + 'updateMembership', + 'generateConnectManifest', + 'initializeHub', + ]; + for (const methodName of gkeHubStubMethods) { + const callPromise = this.gkeHubStub.then( + stub => + (...args: Array<{}>) => { + if (this._terminated) { + return Promise.reject('The client has already been closed.'); + } + const func = stub[methodName]; + return func.apply(stub, args); + }, + (err: Error | null | undefined) => () => { + throw err; + } + ); + + const descriptor = + this.descriptors.page[methodName] || + this.descriptors.longrunning[methodName] || + undefined; + const apiCall = this._gaxModule.createApiCall( + callPromise, + this._defaults[methodName], + descriptor + ); + + this.innerApiCalls[methodName] = apiCall; + } + + return this.gkeHubStub; + } + + /** + * The DNS address for this API service. + * @returns {string} The DNS address for this service. + */ + static get servicePath() { + return 'gkehub.googleapis.com'; + } + + /** + * The DNS address for this API service - same as servicePath(), + * exists for compatibility reasons. + * @returns {string} The DNS address for this service. + */ + static get apiEndpoint() { + return 'gkehub.googleapis.com'; + } + + /** + * The port for this API service. + * @returns {number} The default port for this service. + */ + static get port() { + return 443; + } + + /** + * The scopes needed to make gRPC calls for every method defined + * in this service. + * @returns {string[]} List of default scopes. + */ + static get scopes() { + return ['https://www.googleapis.com/auth/cloud-platform']; + } + + getProjectId(): Promise; + getProjectId(callback: Callback): void; + /** + * Return the project ID used by this class. + * @returns {Promise} A promise that resolves to string containing the project ID. + */ + getProjectId( + callback?: Callback + ): Promise | void { + if (callback) { + this.auth.getProjectId(callback); + return; + } + return this.auth.getProjectId(); + } + + // ------------------- + // -- Service calls -- + // ------------------- + getMembership( + request?: protos.google.cloud.gkehub.v1alpha2.IGetMembershipRequest, + options?: CallOptions + ): Promise< + [ + protos.google.cloud.gkehub.v1alpha2.IMembership, + protos.google.cloud.gkehub.v1alpha2.IGetMembershipRequest | undefined, + {} | undefined + ] + >; + getMembership( + request: protos.google.cloud.gkehub.v1alpha2.IGetMembershipRequest, + options: CallOptions, + callback: Callback< + protos.google.cloud.gkehub.v1alpha2.IMembership, + | protos.google.cloud.gkehub.v1alpha2.IGetMembershipRequest + | null + | undefined, + {} | null | undefined + > + ): void; + getMembership( + request: protos.google.cloud.gkehub.v1alpha2.IGetMembershipRequest, + callback: Callback< + protos.google.cloud.gkehub.v1alpha2.IMembership, + | protos.google.cloud.gkehub.v1alpha2.IGetMembershipRequest + | null + | undefined, + {} | null | undefined + > + ): void; + /** + * Gets the details of a Membership. + * + * @param {Object} request + * The request object that will be sent. + * @param {string} request.name + * Required. The Membership resource name in the format + * `projects/* /locations/* /memberships/*`. + * @param {object} [options] + * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. + * @returns {Promise} - The promise which resolves to an array. + * The first element of the array is an object representing [Membership]{@link google.cloud.gkehub.v1alpha2.Membership}. + * Please see the + * [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods) + * for more details and examples. + * @example + * const [response] = await client.getMembership(request); + */ + getMembership( + request?: protos.google.cloud.gkehub.v1alpha2.IGetMembershipRequest, + optionsOrCallback?: + | CallOptions + | Callback< + protos.google.cloud.gkehub.v1alpha2.IMembership, + | protos.google.cloud.gkehub.v1alpha2.IGetMembershipRequest + | null + | undefined, + {} | null | undefined + >, + callback?: Callback< + protos.google.cloud.gkehub.v1alpha2.IMembership, + | protos.google.cloud.gkehub.v1alpha2.IGetMembershipRequest + | null + | undefined, + {} | null | undefined + > + ): Promise< + [ + protos.google.cloud.gkehub.v1alpha2.IMembership, + protos.google.cloud.gkehub.v1alpha2.IGetMembershipRequest | undefined, + {} | undefined + ] + > | void { + request = request || {}; + let options: CallOptions; + if (typeof optionsOrCallback === 'function' && callback === undefined) { + callback = optionsOrCallback; + options = {}; + } else { + options = optionsOrCallback as CallOptions; + } + options = options || {}; + options.otherArgs = options.otherArgs || {}; + options.otherArgs.headers = options.otherArgs.headers || {}; + options.otherArgs.headers['x-goog-request-params'] = + gax.routingHeader.fromParams({ + name: request.name || '', + }); + this.initialize(); + return this.innerApiCalls.getMembership(request, options, callback); + } + generateConnectManifest( + request?: protos.google.cloud.gkehub.v1alpha2.IGenerateConnectManifestRequest, + options?: CallOptions + ): Promise< + [ + protos.google.cloud.gkehub.v1alpha2.IGenerateConnectManifestResponse, + ( + | protos.google.cloud.gkehub.v1alpha2.IGenerateConnectManifestRequest + | undefined + ), + {} | undefined + ] + >; + generateConnectManifest( + request: protos.google.cloud.gkehub.v1alpha2.IGenerateConnectManifestRequest, + options: CallOptions, + callback: Callback< + protos.google.cloud.gkehub.v1alpha2.IGenerateConnectManifestResponse, + | protos.google.cloud.gkehub.v1alpha2.IGenerateConnectManifestRequest + | null + | undefined, + {} | null | undefined + > + ): void; + generateConnectManifest( + request: protos.google.cloud.gkehub.v1alpha2.IGenerateConnectManifestRequest, + callback: Callback< + protos.google.cloud.gkehub.v1alpha2.IGenerateConnectManifestResponse, + | protos.google.cloud.gkehub.v1alpha2.IGenerateConnectManifestRequest + | null + | undefined, + {} | null | undefined + > + ): void; + /** + * Generates the manifest for deployment of the GKE connect agent. + * + * @param {Object} request + * The request object that will be sent. + * @param {string} request.name + * Required. The Membership resource name the Agent will associate with, in the format + * `projects/* /locations/* /memberships/*`. + * @param {string} [request.namespace] + * Optional. Namespace for GKE Connect agent resources. Defaults to `gke-connect`. + * + * The Connect Agent is authorized automatically when run in the default + * namespace. Otherwise, explicit authorization must be granted with an + * additional IAM binding. + * @param {Buffer} [request.proxy] + * Optional. URI of a proxy if connectivity from the agent to gkeconnect.googleapis.com + * requires the use of a proxy. Format must be in the form + * `http(s)://{proxy_address}`, depending on the HTTP/HTTPS protocol + * supported by the proxy. This will direct the connect agent's outbound + * traffic through a HTTP(S) proxy. + * @param {string} [request.version] + * Optional. The Connect agent version to use. Defaults to the most current version. + * @param {boolean} [request.isUpgrade] + * Optional. If true, generate the resources for upgrade only. Some resources + * generated only for installation (e.g. secrets) will be excluded. + * @param {string} [request.registry] + * Optional. The registry to fetch the connect agent image from. Defaults to + * gcr.io/gkeconnect. + * @param {Buffer} [request.imagePullSecretContent] + * Optional. The image pull secret content for the registry, if not public. + * @param {object} [options] + * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. + * @returns {Promise} - The promise which resolves to an array. + * The first element of the array is an object representing [GenerateConnectManifestResponse]{@link google.cloud.gkehub.v1alpha2.GenerateConnectManifestResponse}. + * Please see the + * [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods) + * for more details and examples. + * @example + * const [response] = await client.generateConnectManifest(request); + */ + generateConnectManifest( + request?: protos.google.cloud.gkehub.v1alpha2.IGenerateConnectManifestRequest, + optionsOrCallback?: + | CallOptions + | Callback< + protos.google.cloud.gkehub.v1alpha2.IGenerateConnectManifestResponse, + | protos.google.cloud.gkehub.v1alpha2.IGenerateConnectManifestRequest + | null + | undefined, + {} | null | undefined + >, + callback?: Callback< + protos.google.cloud.gkehub.v1alpha2.IGenerateConnectManifestResponse, + | protos.google.cloud.gkehub.v1alpha2.IGenerateConnectManifestRequest + | null + | undefined, + {} | null | undefined + > + ): Promise< + [ + protos.google.cloud.gkehub.v1alpha2.IGenerateConnectManifestResponse, + ( + | protos.google.cloud.gkehub.v1alpha2.IGenerateConnectManifestRequest + | undefined + ), + {} | undefined + ] + > | void { + request = request || {}; + let options: CallOptions; + if (typeof optionsOrCallback === 'function' && callback === undefined) { + callback = optionsOrCallback; + options = {}; + } else { + options = optionsOrCallback as CallOptions; + } + options = options || {}; + options.otherArgs = options.otherArgs || {}; + options.otherArgs.headers = options.otherArgs.headers || {}; + options.otherArgs.headers['x-goog-request-params'] = + gax.routingHeader.fromParams({ + name: request.name || '', + }); + this.initialize(); + return this.innerApiCalls.generateConnectManifest( + request, + options, + callback + ); + } + initializeHub( + request?: protos.google.cloud.gkehub.v1alpha2.IInitializeHubRequest, + options?: CallOptions + ): Promise< + [ + protos.google.cloud.gkehub.v1alpha2.IInitializeHubResponse, + protos.google.cloud.gkehub.v1alpha2.IInitializeHubRequest | undefined, + {} | undefined + ] + >; + initializeHub( + request: protos.google.cloud.gkehub.v1alpha2.IInitializeHubRequest, + options: CallOptions, + callback: Callback< + protos.google.cloud.gkehub.v1alpha2.IInitializeHubResponse, + | protos.google.cloud.gkehub.v1alpha2.IInitializeHubRequest + | null + | undefined, + {} | null | undefined + > + ): void; + initializeHub( + request: protos.google.cloud.gkehub.v1alpha2.IInitializeHubRequest, + callback: Callback< + protos.google.cloud.gkehub.v1alpha2.IInitializeHubResponse, + | protos.google.cloud.gkehub.v1alpha2.IInitializeHubRequest + | null + | undefined, + {} | null | undefined + > + ): void; + /** + * Initializes the Hub in this project, which includes creating the default + * Hub Service Account and the Hub Workload Identity Pool. Initialization is + * optional, and happens automatically when the first Membership is created. + * + * InitializeHub should be called when the first Membership cannot be + * registered without these resources. A common example is granting the Hub + * Service Account access to another project, which requires the account to + * exist first. + * + * @param {Object} request + * The request object that will be sent. + * @param {string} request.project + * Required. The Hub to initialize, in the format + * `projects/* /locations/* /memberships/*`. + * @param {object} [options] + * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. + * @returns {Promise} - The promise which resolves to an array. + * The first element of the array is an object representing [InitializeHubResponse]{@link google.cloud.gkehub.v1alpha2.InitializeHubResponse}. + * Please see the + * [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods) + * for more details and examples. + * @example + * const [response] = await client.initializeHub(request); + */ + initializeHub( + request?: protos.google.cloud.gkehub.v1alpha2.IInitializeHubRequest, + optionsOrCallback?: + | CallOptions + | Callback< + protos.google.cloud.gkehub.v1alpha2.IInitializeHubResponse, + | protos.google.cloud.gkehub.v1alpha2.IInitializeHubRequest + | null + | undefined, + {} | null | undefined + >, + callback?: Callback< + protos.google.cloud.gkehub.v1alpha2.IInitializeHubResponse, + | protos.google.cloud.gkehub.v1alpha2.IInitializeHubRequest + | null + | undefined, + {} | null | undefined + > + ): Promise< + [ + protos.google.cloud.gkehub.v1alpha2.IInitializeHubResponse, + protos.google.cloud.gkehub.v1alpha2.IInitializeHubRequest | undefined, + {} | undefined + ] + > | void { + request = request || {}; + let options: CallOptions; + if (typeof optionsOrCallback === 'function' && callback === undefined) { + callback = optionsOrCallback; + options = {}; + } else { + options = optionsOrCallback as CallOptions; + } + options = options || {}; + options.otherArgs = options.otherArgs || {}; + options.otherArgs.headers = options.otherArgs.headers || {}; + options.otherArgs.headers['x-goog-request-params'] = + gax.routingHeader.fromParams({ + project: request.project || '', + }); + this.initialize(); + return this.innerApiCalls.initializeHub(request, options, callback); + } + + createMembership( + request?: protos.google.cloud.gkehub.v1alpha2.ICreateMembershipRequest, + options?: CallOptions + ): Promise< + [ + LROperation< + protos.google.cloud.gkehub.v1alpha2.IMembership, + protos.google.cloud.gkehub.v1alpha2.IOperationMetadata + >, + protos.google.longrunning.IOperation | undefined, + {} | undefined + ] + >; + createMembership( + request: protos.google.cloud.gkehub.v1alpha2.ICreateMembershipRequest, + options: CallOptions, + callback: Callback< + LROperation< + protos.google.cloud.gkehub.v1alpha2.IMembership, + protos.google.cloud.gkehub.v1alpha2.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + > + ): void; + createMembership( + request: protos.google.cloud.gkehub.v1alpha2.ICreateMembershipRequest, + callback: Callback< + LROperation< + protos.google.cloud.gkehub.v1alpha2.IMembership, + protos.google.cloud.gkehub.v1alpha2.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + > + ): void; + /** + * Adds a new Membership. + * + * @param {Object} request + * The request object that will be sent. + * @param {string} request.parent + * Required. The parent (project and location) where the Memberships will be created. + * Specified in the format `projects/* /locations/*`. + * @param {string} request.membershipId + * Required. Client chosen ID for the membership. `membership_id` must be a valid RFC + * 1123 compliant DNS label: + * + * 1. At most 63 characters in length + * 2. It must consist of lower case alphanumeric characters or `-` + * 3. It must start and end with an alphanumeric character + * + * Which can be expressed as the regex: `[a-z0-9]([-a-z0-9]*[a-z0-9])?`, + * with a maximum length of 63 characters. + * @param {google.cloud.gkehub.v1alpha2.Membership} request.resource + * Required. The membership to create. + * @param {object} [options] + * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. + * @returns {Promise} - The promise which resolves to an array. + * The first element of the array is an object representing + * a long running operation. Its `promise()` method returns a promise + * you can `await` for. + * Please see the + * [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations) + * for more details and examples. + * @example + * const [operation] = await client.createMembership(request); + * const [response] = await operation.promise(); + */ + createMembership( + request?: protos.google.cloud.gkehub.v1alpha2.ICreateMembershipRequest, + optionsOrCallback?: + | CallOptions + | Callback< + LROperation< + protos.google.cloud.gkehub.v1alpha2.IMembership, + protos.google.cloud.gkehub.v1alpha2.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + >, + callback?: Callback< + LROperation< + protos.google.cloud.gkehub.v1alpha2.IMembership, + protos.google.cloud.gkehub.v1alpha2.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + > + ): Promise< + [ + LROperation< + protos.google.cloud.gkehub.v1alpha2.IMembership, + protos.google.cloud.gkehub.v1alpha2.IOperationMetadata + >, + protos.google.longrunning.IOperation | undefined, + {} | undefined + ] + > | void { + request = request || {}; + let options: CallOptions; + if (typeof optionsOrCallback === 'function' && callback === undefined) { + callback = optionsOrCallback; + options = {}; + } else { + options = optionsOrCallback as CallOptions; + } + options = options || {}; + options.otherArgs = options.otherArgs || {}; + options.otherArgs.headers = options.otherArgs.headers || {}; + options.otherArgs.headers['x-goog-request-params'] = + gax.routingHeader.fromParams({ + parent: request.parent || '', + }); + this.initialize(); + return this.innerApiCalls.createMembership(request, options, callback); + } + /** + * Check the status of the long running operation returned by `createMembership()`. + * @param {String} name + * The operation name that will be passed. + * @returns {Promise} - The promise which resolves to an object. + * The decoded operation object has result and metadata field to get information from. + * Please see the + * [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations) + * for more details and examples. + * @example + * const decodedOperation = await checkCreateMembershipProgress(name); + * console.log(decodedOperation.result); + * console.log(decodedOperation.done); + * console.log(decodedOperation.metadata); + */ + async checkCreateMembershipProgress( + name: string + ): Promise< + LROperation< + protos.google.cloud.gkehub.v1alpha2.Membership, + protos.google.cloud.gkehub.v1alpha2.OperationMetadata + > + > { + const request = new operationsProtos.google.longrunning.GetOperationRequest( + {name} + ); + const [operation] = await this.operationsClient.getOperation(request); + const decodeOperation = new gax.Operation( + operation, + this.descriptors.longrunning.createMembership, + gax.createDefaultBackoffSettings() + ); + return decodeOperation as LROperation< + protos.google.cloud.gkehub.v1alpha2.Membership, + protos.google.cloud.gkehub.v1alpha2.OperationMetadata + >; + } + deleteMembership( + request?: protos.google.cloud.gkehub.v1alpha2.IDeleteMembershipRequest, + options?: CallOptions + ): Promise< + [ + LROperation< + protos.google.protobuf.IEmpty, + protos.google.cloud.gkehub.v1alpha2.IOperationMetadata + >, + protos.google.longrunning.IOperation | undefined, + {} | undefined + ] + >; + deleteMembership( + request: protos.google.cloud.gkehub.v1alpha2.IDeleteMembershipRequest, + options: CallOptions, + callback: Callback< + LROperation< + protos.google.protobuf.IEmpty, + protos.google.cloud.gkehub.v1alpha2.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + > + ): void; + deleteMembership( + request: protos.google.cloud.gkehub.v1alpha2.IDeleteMembershipRequest, + callback: Callback< + LROperation< + protos.google.protobuf.IEmpty, + protos.google.cloud.gkehub.v1alpha2.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + > + ): void; + /** + * Removes a Membership. + * + * @param {Object} request + * The request object that will be sent. + * @param {string} request.name + * Required. The Membership resource name in the format + * `projects/* /locations/* /memberships/*`. + * @param {object} [options] + * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. + * @returns {Promise} - The promise which resolves to an array. + * The first element of the array is an object representing + * a long running operation. Its `promise()` method returns a promise + * you can `await` for. + * Please see the + * [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations) + * for more details and examples. + * @example + * const [operation] = await client.deleteMembership(request); + * const [response] = await operation.promise(); + */ + deleteMembership( + request?: protos.google.cloud.gkehub.v1alpha2.IDeleteMembershipRequest, + optionsOrCallback?: + | CallOptions + | Callback< + LROperation< + protos.google.protobuf.IEmpty, + protos.google.cloud.gkehub.v1alpha2.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + >, + callback?: Callback< + LROperation< + protos.google.protobuf.IEmpty, + protos.google.cloud.gkehub.v1alpha2.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + > + ): Promise< + [ + LROperation< + protos.google.protobuf.IEmpty, + protos.google.cloud.gkehub.v1alpha2.IOperationMetadata + >, + protos.google.longrunning.IOperation | undefined, + {} | undefined + ] + > | void { + request = request || {}; + let options: CallOptions; + if (typeof optionsOrCallback === 'function' && callback === undefined) { + callback = optionsOrCallback; + options = {}; + } else { + options = optionsOrCallback as CallOptions; + } + options = options || {}; + options.otherArgs = options.otherArgs || {}; + options.otherArgs.headers = options.otherArgs.headers || {}; + options.otherArgs.headers['x-goog-request-params'] = + gax.routingHeader.fromParams({ + name: request.name || '', + }); + this.initialize(); + return this.innerApiCalls.deleteMembership(request, options, callback); + } + /** + * Check the status of the long running operation returned by `deleteMembership()`. + * @param {String} name + * The operation name that will be passed. + * @returns {Promise} - The promise which resolves to an object. + * The decoded operation object has result and metadata field to get information from. + * Please see the + * [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations) + * for more details and examples. + * @example + * const decodedOperation = await checkDeleteMembershipProgress(name); + * console.log(decodedOperation.result); + * console.log(decodedOperation.done); + * console.log(decodedOperation.metadata); + */ + async checkDeleteMembershipProgress( + name: string + ): Promise< + LROperation< + protos.google.protobuf.Empty, + protos.google.cloud.gkehub.v1alpha2.OperationMetadata + > + > { + const request = new operationsProtos.google.longrunning.GetOperationRequest( + {name} + ); + const [operation] = await this.operationsClient.getOperation(request); + const decodeOperation = new gax.Operation( + operation, + this.descriptors.longrunning.deleteMembership, + gax.createDefaultBackoffSettings() + ); + return decodeOperation as LROperation< + protos.google.protobuf.Empty, + protos.google.cloud.gkehub.v1alpha2.OperationMetadata + >; + } + updateMembership( + request?: protos.google.cloud.gkehub.v1alpha2.IUpdateMembershipRequest, + options?: CallOptions + ): Promise< + [ + LROperation< + protos.google.cloud.gkehub.v1alpha2.IMembership, + protos.google.cloud.gkehub.v1alpha2.IOperationMetadata + >, + protos.google.longrunning.IOperation | undefined, + {} | undefined + ] + >; + updateMembership( + request: protos.google.cloud.gkehub.v1alpha2.IUpdateMembershipRequest, + options: CallOptions, + callback: Callback< + LROperation< + protos.google.cloud.gkehub.v1alpha2.IMembership, + protos.google.cloud.gkehub.v1alpha2.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + > + ): void; + updateMembership( + request: protos.google.cloud.gkehub.v1alpha2.IUpdateMembershipRequest, + callback: Callback< + LROperation< + protos.google.cloud.gkehub.v1alpha2.IMembership, + protos.google.cloud.gkehub.v1alpha2.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + > + ): void; + /** + * Updates an existing Membership. + * + * @param {Object} request + * The request object that will be sent. + * @param {string} request.name + * Required. The Membership resource name in the format + * `projects/* /locations/* /memberships/*`. + * @param {google.protobuf.FieldMask} request.updateMask + * Required. Mask of fields to update. + * @param {google.cloud.gkehub.v1alpha2.Membership} request.resource + * Required. Only fields specified in update_mask are updated. + * If you specify a field in the update_mask but don't specify its value here + * that field will be deleted. + * If you are updating a map field, set the value of a key to null or empty + * string to delete the key from the map. It's not possible to update a key's + * value to the empty string. + * @param {object} [options] + * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. + * @returns {Promise} - The promise which resolves to an array. + * The first element of the array is an object representing + * a long running operation. Its `promise()` method returns a promise + * you can `await` for. + * Please see the + * [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations) + * for more details and examples. + * @example + * const [operation] = await client.updateMembership(request); + * const [response] = await operation.promise(); + */ + updateMembership( + request?: protos.google.cloud.gkehub.v1alpha2.IUpdateMembershipRequest, + optionsOrCallback?: + | CallOptions + | Callback< + LROperation< + protos.google.cloud.gkehub.v1alpha2.IMembership, + protos.google.cloud.gkehub.v1alpha2.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + >, + callback?: Callback< + LROperation< + protos.google.cloud.gkehub.v1alpha2.IMembership, + protos.google.cloud.gkehub.v1alpha2.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + > + ): Promise< + [ + LROperation< + protos.google.cloud.gkehub.v1alpha2.IMembership, + protos.google.cloud.gkehub.v1alpha2.IOperationMetadata + >, + protos.google.longrunning.IOperation | undefined, + {} | undefined + ] + > | void { + request = request || {}; + let options: CallOptions; + if (typeof optionsOrCallback === 'function' && callback === undefined) { + callback = optionsOrCallback; + options = {}; + } else { + options = optionsOrCallback as CallOptions; + } + options = options || {}; + options.otherArgs = options.otherArgs || {}; + options.otherArgs.headers = options.otherArgs.headers || {}; + options.otherArgs.headers['x-goog-request-params'] = + gax.routingHeader.fromParams({ + name: request.name || '', + }); + this.initialize(); + return this.innerApiCalls.updateMembership(request, options, callback); + } + /** + * Check the status of the long running operation returned by `updateMembership()`. + * @param {String} name + * The operation name that will be passed. + * @returns {Promise} - The promise which resolves to an object. + * The decoded operation object has result and metadata field to get information from. + * Please see the + * [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations) + * for more details and examples. + * @example + * const decodedOperation = await checkUpdateMembershipProgress(name); + * console.log(decodedOperation.result); + * console.log(decodedOperation.done); + * console.log(decodedOperation.metadata); + */ + async checkUpdateMembershipProgress( + name: string + ): Promise< + LROperation< + protos.google.cloud.gkehub.v1alpha2.Membership, + protos.google.cloud.gkehub.v1alpha2.OperationMetadata + > + > { + const request = new operationsProtos.google.longrunning.GetOperationRequest( + {name} + ); + const [operation] = await this.operationsClient.getOperation(request); + const decodeOperation = new gax.Operation( + operation, + this.descriptors.longrunning.updateMembership, + gax.createDefaultBackoffSettings() + ); + return decodeOperation as LROperation< + protos.google.cloud.gkehub.v1alpha2.Membership, + protos.google.cloud.gkehub.v1alpha2.OperationMetadata + >; + } + listMemberships( + request?: protos.google.cloud.gkehub.v1alpha2.IListMembershipsRequest, + options?: CallOptions + ): Promise< + [ + protos.google.cloud.gkehub.v1alpha2.IMembership[], + protos.google.cloud.gkehub.v1alpha2.IListMembershipsRequest | null, + protos.google.cloud.gkehub.v1alpha2.IListMembershipsResponse + ] + >; + listMemberships( + request: protos.google.cloud.gkehub.v1alpha2.IListMembershipsRequest, + options: CallOptions, + callback: PaginationCallback< + protos.google.cloud.gkehub.v1alpha2.IListMembershipsRequest, + | protos.google.cloud.gkehub.v1alpha2.IListMembershipsResponse + | null + | undefined, + protos.google.cloud.gkehub.v1alpha2.IMembership + > + ): void; + listMemberships( + request: protos.google.cloud.gkehub.v1alpha2.IListMembershipsRequest, + callback: PaginationCallback< + protos.google.cloud.gkehub.v1alpha2.IListMembershipsRequest, + | protos.google.cloud.gkehub.v1alpha2.IListMembershipsResponse + | null + | undefined, + protos.google.cloud.gkehub.v1alpha2.IMembership + > + ): void; + /** + * Lists Memberships in a given project and location. + * + * @param {Object} request + * The request object that will be sent. + * @param {string} request.parent + * Required. The parent (project and location) where the Memberships will be listed. + * Specified in the format `projects/* /locations/*`. + * @param {number} [request.pageSize] + * Optional. When requesting a 'page' of resources, `page_size` specifies number of + * resources to return. If unspecified or set to 0, all resources will + * be returned. + * @param {string} [request.pageToken] + * Optional. Token returned by previous call to `ListMemberships` which + * specifies the position in the list from where to continue listing the + * resources. + * @param {string} [request.filter] + * Optional. Lists Memberships that match the filter expression, following the syntax + * outlined in https://google.aip.dev/160. + * + * Examples: + * + * - Name is `bar` in project `foo-proj` and location `global`: + * + * name = "projects/foo-proj/locations/global/membership/bar" + * + * - Memberships that have a label called `foo`: + * + * labels.foo:* + * + * - Memberships that have a label called `foo` whose value is `bar`: + * + * labels.foo = bar + * + * - Memberships in the CREATING state: + * + * state = CREATING + * @param {string} [request.orderBy] + * Optional. One or more fields to compare and use to sort the output. + * See https://google.aip.dev/132#ordering. + * @param {object} [options] + * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. + * @returns {Promise} - The promise which resolves to an array. + * The first element of the array is Array of [Membership]{@link google.cloud.gkehub.v1alpha2.Membership}. + * The client library will perform auto-pagination by default: it will call the API as many + * times as needed and will merge results from all the pages into this array. + * Note that it can affect your quota. + * We recommend using `listMembershipsAsync()` + * method described below for async iteration which you can stop as needed. + * Please see the + * [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#auto-pagination) + * for more details and examples. + */ + listMemberships( + request?: protos.google.cloud.gkehub.v1alpha2.IListMembershipsRequest, + optionsOrCallback?: + | CallOptions + | PaginationCallback< + protos.google.cloud.gkehub.v1alpha2.IListMembershipsRequest, + | protos.google.cloud.gkehub.v1alpha2.IListMembershipsResponse + | null + | undefined, + protos.google.cloud.gkehub.v1alpha2.IMembership + >, + callback?: PaginationCallback< + protos.google.cloud.gkehub.v1alpha2.IListMembershipsRequest, + | protos.google.cloud.gkehub.v1alpha2.IListMembershipsResponse + | null + | undefined, + protos.google.cloud.gkehub.v1alpha2.IMembership + > + ): Promise< + [ + protos.google.cloud.gkehub.v1alpha2.IMembership[], + protos.google.cloud.gkehub.v1alpha2.IListMembershipsRequest | null, + protos.google.cloud.gkehub.v1alpha2.IListMembershipsResponse + ] + > | void { + request = request || {}; + let options: CallOptions; + if (typeof optionsOrCallback === 'function' && callback === undefined) { + callback = optionsOrCallback; + options = {}; + } else { + options = optionsOrCallback as CallOptions; + } + options = options || {}; + options.otherArgs = options.otherArgs || {}; + options.otherArgs.headers = options.otherArgs.headers || {}; + options.otherArgs.headers['x-goog-request-params'] = + gax.routingHeader.fromParams({ + parent: request.parent || '', + }); + this.initialize(); + return this.innerApiCalls.listMemberships(request, options, callback); + } + + /** + * Equivalent to `method.name.toCamelCase()`, but returns a NodeJS Stream object. + * @param {Object} request + * The request object that will be sent. + * @param {string} request.parent + * Required. The parent (project and location) where the Memberships will be listed. + * Specified in the format `projects/* /locations/*`. + * @param {number} [request.pageSize] + * Optional. When requesting a 'page' of resources, `page_size` specifies number of + * resources to return. If unspecified or set to 0, all resources will + * be returned. + * @param {string} [request.pageToken] + * Optional. Token returned by previous call to `ListMemberships` which + * specifies the position in the list from where to continue listing the + * resources. + * @param {string} [request.filter] + * Optional. Lists Memberships that match the filter expression, following the syntax + * outlined in https://google.aip.dev/160. + * + * Examples: + * + * - Name is `bar` in project `foo-proj` and location `global`: + * + * name = "projects/foo-proj/locations/global/membership/bar" + * + * - Memberships that have a label called `foo`: + * + * labels.foo:* + * + * - Memberships that have a label called `foo` whose value is `bar`: + * + * labels.foo = bar + * + * - Memberships in the CREATING state: + * + * state = CREATING + * @param {string} [request.orderBy] + * Optional. One or more fields to compare and use to sort the output. + * See https://google.aip.dev/132#ordering. + * @param {object} [options] + * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. + * @returns {Stream} + * An object stream which emits an object representing [Membership]{@link google.cloud.gkehub.v1alpha2.Membership} on 'data' event. + * The client library will perform auto-pagination by default: it will call the API as many + * times as needed. Note that it can affect your quota. + * We recommend using `listMembershipsAsync()` + * method described below for async iteration which you can stop as needed. + * Please see the + * [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#auto-pagination) + * for more details and examples. + */ + listMembershipsStream( + request?: protos.google.cloud.gkehub.v1alpha2.IListMembershipsRequest, + options?: CallOptions + ): Transform { + request = request || {}; + options = options || {}; + options.otherArgs = options.otherArgs || {}; + options.otherArgs.headers = options.otherArgs.headers || {}; + options.otherArgs.headers['x-goog-request-params'] = + gax.routingHeader.fromParams({ + parent: request.parent || '', + }); + const callSettings = new gax.CallSettings(options); + this.initialize(); + return this.descriptors.page.listMemberships.createStream( + this.innerApiCalls.listMemberships as gax.GaxCall, + request, + callSettings + ); + } + + /** + * Equivalent to `listMemberships`, but returns an iterable object. + * + * `for`-`await`-`of` syntax is used with the iterable to get response elements on-demand. + * @param {Object} request + * The request object that will be sent. + * @param {string} request.parent + * Required. The parent (project and location) where the Memberships will be listed. + * Specified in the format `projects/* /locations/*`. + * @param {number} [request.pageSize] + * Optional. When requesting a 'page' of resources, `page_size` specifies number of + * resources to return. If unspecified or set to 0, all resources will + * be returned. + * @param {string} [request.pageToken] + * Optional. Token returned by previous call to `ListMemberships` which + * specifies the position in the list from where to continue listing the + * resources. + * @param {string} [request.filter] + * Optional. Lists Memberships that match the filter expression, following the syntax + * outlined in https://google.aip.dev/160. + * + * Examples: + * + * - Name is `bar` in project `foo-proj` and location `global`: + * + * name = "projects/foo-proj/locations/global/membership/bar" + * + * - Memberships that have a label called `foo`: + * + * labels.foo:* + * + * - Memberships that have a label called `foo` whose value is `bar`: + * + * labels.foo = bar + * + * - Memberships in the CREATING state: + * + * state = CREATING + * @param {string} [request.orderBy] + * Optional. One or more fields to compare and use to sort the output. + * See https://google.aip.dev/132#ordering. + * @param {object} [options] + * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. + * @returns {Object} + * An iterable Object that allows [async iteration](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Iteration_protocols). + * When you iterate the returned iterable, each element will be an object representing + * [Membership]{@link google.cloud.gkehub.v1alpha2.Membership}. The API will be called under the hood as needed, once per the page, + * so you can stop the iteration when you don't need more results. + * Please see the + * [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#auto-pagination) + * for more details and examples. + * @example + * const iterable = client.listMembershipsAsync(request); + * for await (const response of iterable) { + * // process response + * } + */ + listMembershipsAsync( + request?: protos.google.cloud.gkehub.v1alpha2.IListMembershipsRequest, + options?: CallOptions + ): AsyncIterable { + request = request || {}; + options = options || {}; + options.otherArgs = options.otherArgs || {}; + options.otherArgs.headers = options.otherArgs.headers || {}; + options.otherArgs.headers['x-goog-request-params'] = + gax.routingHeader.fromParams({ + parent: request.parent || '', + }); + options = options || {}; + const callSettings = new gax.CallSettings(options); + this.initialize(); + return this.descriptors.page.listMemberships.asyncIterate( + this.innerApiCalls['listMemberships'] as GaxCall, + request as unknown as RequestType, + callSettings + ) as AsyncIterable; + } + // -------------------- + // -- Path templates -- + // -------------------- + + /** + * Return a fully-qualified location resource name string. + * + * @param {string} project + * @param {string} location + * @returns {string} Resource name string. + */ + locationPath(project: string, location: string) { + return this.pathTemplates.locationPathTemplate.render({ + project: project, + location: location, + }); + } + + /** + * Parse the project from Location resource. + * + * @param {string} locationName + * A fully-qualified path representing Location resource. + * @returns {string} A string representing the project. + */ + matchProjectFromLocationName(locationName: string) { + return this.pathTemplates.locationPathTemplate.match(locationName).project; + } + + /** + * Parse the location from Location resource. + * + * @param {string} locationName + * A fully-qualified path representing Location resource. + * @returns {string} A string representing the location. + */ + matchLocationFromLocationName(locationName: string) { + return this.pathTemplates.locationPathTemplate.match(locationName).location; + } + + /** + * Return a fully-qualified membership resource name string. + * + * @param {string} project + * @param {string} location + * @param {string} membership + * @returns {string} Resource name string. + */ + membershipPath(project: string, location: string, membership: string) { + return this.pathTemplates.membershipPathTemplate.render({ + project: project, + location: location, + membership: membership, + }); + } + + /** + * Parse the project from Membership resource. + * + * @param {string} membershipName + * A fully-qualified path representing Membership resource. + * @returns {string} A string representing the project. + */ + matchProjectFromMembershipName(membershipName: string) { + return this.pathTemplates.membershipPathTemplate.match(membershipName) + .project; + } + + /** + * Parse the location from Membership resource. + * + * @param {string} membershipName + * A fully-qualified path representing Membership resource. + * @returns {string} A string representing the location. + */ + matchLocationFromMembershipName(membershipName: string) { + return this.pathTemplates.membershipPathTemplate.match(membershipName) + .location; + } + + /** + * Parse the membership from Membership resource. + * + * @param {string} membershipName + * A fully-qualified path representing Membership resource. + * @returns {string} A string representing the membership. + */ + matchMembershipFromMembershipName(membershipName: string) { + return this.pathTemplates.membershipPathTemplate.match(membershipName) + .membership; + } + + /** + * Return a fully-qualified project resource name string. + * + * @param {string} project + * @returns {string} Resource name string. + */ + projectPath(project: string) { + return this.pathTemplates.projectPathTemplate.render({ + project: project, + }); + } + + /** + * Parse the project from Project resource. + * + * @param {string} projectName + * A fully-qualified path representing Project resource. + * @returns {string} A string representing the project. + */ + matchProjectFromProjectName(projectName: string) { + return this.pathTemplates.projectPathTemplate.match(projectName).project; + } + + /** + * Terminate the gRPC channel and close the client. + * + * The client will no longer be usable and all future behavior is undefined. + * @returns {Promise} A promise that resolves when the client is closed. + */ + close(): Promise { + this.initialize(); + if (!this._terminated) { + return this.gkeHubStub!.then(stub => { + this._terminated = true; + stub.close(); + }); + } + return Promise.resolve(); + } +} diff --git a/packages/google-cloud-gkehub/src/v1alpha2/gke_hub_client_config.json b/packages/google-cloud-gkehub/src/v1alpha2/gke_hub_client_config.json new file mode 100644 index 00000000000..67d4326393f --- /dev/null +++ b/packages/google-cloud-gkehub/src/v1alpha2/gke_hub_client_config.json @@ -0,0 +1,73 @@ +{ + "interfaces": { + "google.cloud.gkehub.v1alpha2.GkeHub": { + "retry_codes": { + "non_idempotent": [], + "idempotent": [ + "DEADLINE_EXCEEDED", + "UNAVAILABLE" + ], + "unavailable": [ + "UNAVAILABLE" + ] + }, + "retry_params": { + "default": { + "initial_retry_delay_millis": 100, + "retry_delay_multiplier": 1.3, + "max_retry_delay_millis": 60000, + "initial_rpc_timeout_millis": 60000, + "rpc_timeout_multiplier": 1, + "max_rpc_timeout_millis": 60000, + "total_timeout_millis": 600000 + }, + "ce5b960a6ed052e690863808e4f0deff3dc7d49f": { + "initial_retry_delay_millis": 1000, + "retry_delay_multiplier": 1.3, + "max_retry_delay_millis": 10000, + "initial_rpc_timeout_millis": 60000, + "rpc_timeout_multiplier": 1, + "max_rpc_timeout_millis": 60000, + "total_timeout_millis": 600000 + } + }, + "methods": { + "ListMemberships": { + "timeout_millis": 60000, + "retry_codes_name": "unavailable", + "retry_params_name": "ce5b960a6ed052e690863808e4f0deff3dc7d49f" + }, + "GetMembership": { + "timeout_millis": 60000, + "retry_codes_name": "unavailable", + "retry_params_name": "ce5b960a6ed052e690863808e4f0deff3dc7d49f" + }, + "CreateMembership": { + "timeout_millis": 60000, + "retry_codes_name": "unavailable", + "retry_params_name": "ce5b960a6ed052e690863808e4f0deff3dc7d49f" + }, + "DeleteMembership": { + "timeout_millis": 60000, + "retry_codes_name": "unavailable", + "retry_params_name": "ce5b960a6ed052e690863808e4f0deff3dc7d49f" + }, + "UpdateMembership": { + "timeout_millis": 60000, + "retry_codes_name": "unavailable", + "retry_params_name": "ce5b960a6ed052e690863808e4f0deff3dc7d49f" + }, + "GenerateConnectManifest": { + "timeout_millis": 60000, + "retry_codes_name": "unavailable", + "retry_params_name": "ce5b960a6ed052e690863808e4f0deff3dc7d49f" + }, + "InitializeHub": { + "timeout_millis": 60000, + "retry_codes_name": "unavailable", + "retry_params_name": "ce5b960a6ed052e690863808e4f0deff3dc7d49f" + } + } + } + } +} diff --git a/packages/google-cloud-gkehub/src/v1alpha2/gke_hub_proto_list.json b/packages/google-cloud-gkehub/src/v1alpha2/gke_hub_proto_list.json new file mode 100644 index 00000000000..1146076265d --- /dev/null +++ b/packages/google-cloud-gkehub/src/v1alpha2/gke_hub_proto_list.json @@ -0,0 +1,3 @@ +[ + "../../protos/google/cloud/gkehub/v1alpha2/membership.proto" +] diff --git a/packages/google-cloud-gkehub/src/v1alpha2/index.ts b/packages/google-cloud-gkehub/src/v1alpha2/index.ts new file mode 100644 index 00000000000..43cf74c6b34 --- /dev/null +++ b/packages/google-cloud-gkehub/src/v1alpha2/index.ts @@ -0,0 +1,19 @@ +// 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 +// +// 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. ** + +export {GkeHubClient} from './gke_hub_client'; diff --git a/packages/google-cloud-gkehub/src/v1beta/gapic_metadata.json b/packages/google-cloud-gkehub/src/v1beta/gapic_metadata.json new file mode 100644 index 00000000000..303fc54223e --- /dev/null +++ b/packages/google-cloud-gkehub/src/v1beta/gapic_metadata.json @@ -0,0 +1,77 @@ +{ + "schema": "1.0", + "comment": "This file maps proto services/RPCs to the corresponding library clients/methods", + "language": "typescript", + "protoPackage": "google.cloud.gkehub.v1beta", + "libraryPackage": "@google-cloud/gkehub", + "services": { + "GkeHub": { + "clients": { + "grpc": { + "libraryClient": "GkeHubClient", + "rpcs": { + "GetFeature": { + "methods": [ + "getFeature" + ] + }, + "CreateFeature": { + "methods": [ + "createFeature" + ] + }, + "DeleteFeature": { + "methods": [ + "deleteFeature" + ] + }, + "UpdateFeature": { + "methods": [ + "updateFeature" + ] + }, + "ListFeatures": { + "methods": [ + "listFeatures", + "listFeaturesStream", + "listFeaturesAsync" + ] + } + } + }, + "grpc-fallback": { + "libraryClient": "GkeHubClient", + "rpcs": { + "GetFeature": { + "methods": [ + "getFeature" + ] + }, + "CreateFeature": { + "methods": [ + "createFeature" + ] + }, + "DeleteFeature": { + "methods": [ + "deleteFeature" + ] + }, + "UpdateFeature": { + "methods": [ + "updateFeature" + ] + }, + "ListFeatures": { + "methods": [ + "listFeatures", + "listFeaturesStream", + "listFeaturesAsync" + ] + } + } + } + } + } + } +} diff --git a/packages/google-cloud-gkehub/src/v1beta/gke_hub_client.ts b/packages/google-cloud-gkehub/src/v1beta/gke_hub_client.ts new file mode 100644 index 00000000000..7a6487193ab --- /dev/null +++ b/packages/google-cloud-gkehub/src/v1beta/gke_hub_client.ts @@ -0,0 +1,1290 @@ +// 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 +// +// 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. ** + +/* global window */ +import * as gax from 'google-gax'; +import { + Callback, + CallOptions, + Descriptors, + ClientOptions, + LROperation, + PaginationCallback, + GaxCall, +} from 'google-gax'; + +import {Transform} from 'stream'; +import {RequestType} from 'google-gax/build/src/apitypes'; +import * as protos from '../../protos/protos'; +import jsonProtos = require('../../protos/protos.json'); +/** + * Client JSON configuration object, loaded from + * `src/v1beta/gke_hub_client_config.json`. + * This file defines retry strategy and timeouts for all API methods in this library. + */ +import * as gapicConfig from './gke_hub_client_config.json'; +import {operationsProtos} from 'google-gax'; +const version = require('../../../package.json').version; + +/** + * The GKE Hub service handles the registration of many Kubernetes clusters to + * Google Cloud, and the management of multi-cluster features over those + * clusters. + * + * The GKE Hub service operates on the following resources: + * + * * {@link google.cloud.gkehub.v1beta.Membership|Membership} + * * {@link google.cloud.gkehub.v1beta.Feature|Feature} + * + * GKE Hub is currently only available in the global region. + * + * **Membership management may be non-trivial:** it is recommended to use one + * of the Google-provided client libraries or tools where possible when working + * with Membership resources. + * @class + * @memberof v1beta + */ +export class GkeHubClient { + private _terminated = false; + private _opts: ClientOptions; + private _providedCustomServicePath: boolean; + private _gaxModule: typeof gax | typeof gax.fallback; + private _gaxGrpc: gax.GrpcClient | gax.fallback.GrpcClient; + private _protos: {}; + private _defaults: {[method: string]: gax.CallSettings}; + auth: gax.GoogleAuth; + descriptors: Descriptors = { + page: {}, + stream: {}, + longrunning: {}, + batching: {}, + }; + warn: (code: string, message: string, warnType?: string) => void; + innerApiCalls: {[name: string]: Function}; + pathTemplates: {[name: string]: gax.PathTemplate}; + operationsClient: gax.OperationsClient; + gkeHubStub?: Promise<{[name: string]: Function}>; + + /** + * Construct an instance of GkeHubClient. + * + * @param {object} [options] - The configuration object. + * The options accepted by the constructor are described in detail + * in [this document](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#creating-the-client-instance). + * The common options are: + * @param {object} [options.credentials] - Credentials object. + * @param {string} [options.credentials.client_email] + * @param {string} [options.credentials.private_key] + * @param {string} [options.email] - Account email address. Required when + * using a .pem or .p12 keyFilename. + * @param {string} [options.keyFilename] - Full path to the a .json, .pem, or + * .p12 key downloaded from the Google Developers Console. If you provide + * a path to a JSON file, the projectId option below is not necessary. + * NOTE: .pem and .p12 require you to specify options.email as well. + * @param {number} [options.port] - The port on which to connect to + * the remote host. + * @param {string} [options.projectId] - The project ID from the Google + * Developer's Console, e.g. 'grape-spaceship-123'. We will also check + * the environment variable GCLOUD_PROJECT for your project ID. If your + * app is running in an environment which supports + * {@link https://developers.google.com/identity/protocols/application-default-credentials Application Default Credentials}, + * your project ID will be detected automatically. + * @param {string} [options.apiEndpoint] - The domain name of the + * API remote host. + * @param {gax.ClientConfig} [options.clientConfig] - Client configuration override. + * Follows the structure of {@link gapicConfig}. + * @param {boolean} [options.fallback] - Use HTTP fallback mode. + * In fallback mode, a special browser-compatible transport implementation is used + * instead of gRPC transport. In browser context (if the `window` object is defined) + * the fallback mode is enabled automatically; set `options.fallback` to `false` + * if you need to override this behavior. + */ + constructor(opts?: ClientOptions) { + // Ensure that options include all the required fields. + const staticMembers = this.constructor as typeof GkeHubClient; + const servicePath = + opts?.servicePath || opts?.apiEndpoint || staticMembers.servicePath; + this._providedCustomServicePath = !!( + opts?.servicePath || opts?.apiEndpoint + ); + const port = opts?.port || staticMembers.port; + const clientConfig = opts?.clientConfig ?? {}; + const fallback = + opts?.fallback ?? + (typeof window !== 'undefined' && typeof window?.fetch === 'function'); + opts = Object.assign({servicePath, port, clientConfig, fallback}, opts); + + // If scopes are unset in options and we're connecting to a non-default endpoint, set scopes just in case. + if (servicePath !== staticMembers.servicePath && !('scopes' in opts)) { + opts['scopes'] = staticMembers.scopes; + } + + // Choose either gRPC or proto-over-HTTP implementation of google-gax. + this._gaxModule = opts.fallback ? gax.fallback : gax; + + // Create a `gaxGrpc` object, with any grpc-specific options sent to the client. + this._gaxGrpc = new this._gaxModule.GrpcClient(opts); + + // Save options to use in initialize() method. + this._opts = opts; + + // Save the auth object to the client, for use by other methods. + this.auth = this._gaxGrpc.auth as gax.GoogleAuth; + + // Set the default scopes in auth client if needed. + if (servicePath === staticMembers.servicePath) { + this.auth.defaultScopes = staticMembers.scopes; + } + + // Determine the client header string. + const clientHeader = [`gax/${this._gaxModule.version}`, `gapic/${version}`]; + if (typeof process !== 'undefined' && 'versions' in process) { + clientHeader.push(`gl-node/${process.versions.node}`); + } else { + clientHeader.push(`gl-web/${this._gaxModule.version}`); + } + if (!opts.fallback) { + clientHeader.push(`grpc/${this._gaxGrpc.grpcVersion}`); + } else if (opts.fallback === 'rest') { + clientHeader.push(`rest/${this._gaxGrpc.grpcVersion}`); + } + if (opts.libName && opts.libVersion) { + clientHeader.push(`${opts.libName}/${opts.libVersion}`); + } + // Load the applicable protos. + this._protos = this._gaxGrpc.loadProtoJSON(jsonProtos); + + // This API contains "path templates"; forward-slash-separated + // identifiers to uniquely identify resources within the API. + // Create useful helper objects for these. + this.pathTemplates = { + featurePathTemplate: new this._gaxModule.PathTemplate( + 'projects/{project}/locations/{location}/features/{feature}' + ), + }; + + // Some of the methods on this service return "paged" results, + // (e.g. 50 results at a time, with tokens to get subsequent + // pages). Denote the keys used for pagination and results. + this.descriptors.page = { + listFeatures: new this._gaxModule.PageDescriptor( + 'pageToken', + 'nextPageToken', + 'resources' + ), + }; + + const protoFilesRoot = this._gaxModule.protobuf.Root.fromJSON(jsonProtos); + + // This API contains "long-running operations", which return a + // an Operation object that allows for tracking of the operation, + // rather than holding a request open. + + this.operationsClient = this._gaxModule + .lro({ + auth: this.auth, + grpc: 'grpc' in this._gaxGrpc ? this._gaxGrpc.grpc : undefined, + }) + .operationsClient(opts); + const createFeatureResponse = protoFilesRoot.lookup( + '.google.cloud.gkehub.v1beta.Feature' + ) as gax.protobuf.Type; + const createFeatureMetadata = protoFilesRoot.lookup( + '.google.cloud.gkehub.v1beta.OperationMetadata' + ) as gax.protobuf.Type; + const deleteFeatureResponse = protoFilesRoot.lookup( + '.google.protobuf.Empty' + ) as gax.protobuf.Type; + const deleteFeatureMetadata = protoFilesRoot.lookup( + '.google.cloud.gkehub.v1beta.OperationMetadata' + ) as gax.protobuf.Type; + const updateFeatureResponse = protoFilesRoot.lookup( + '.google.cloud.gkehub.v1beta.Feature' + ) as gax.protobuf.Type; + const updateFeatureMetadata = protoFilesRoot.lookup( + '.google.cloud.gkehub.v1beta.OperationMetadata' + ) as gax.protobuf.Type; + + this.descriptors.longrunning = { + createFeature: new this._gaxModule.LongrunningDescriptor( + this.operationsClient, + createFeatureResponse.decode.bind(createFeatureResponse), + createFeatureMetadata.decode.bind(createFeatureMetadata) + ), + deleteFeature: new this._gaxModule.LongrunningDescriptor( + this.operationsClient, + deleteFeatureResponse.decode.bind(deleteFeatureResponse), + deleteFeatureMetadata.decode.bind(deleteFeatureMetadata) + ), + updateFeature: new this._gaxModule.LongrunningDescriptor( + this.operationsClient, + updateFeatureResponse.decode.bind(updateFeatureResponse), + updateFeatureMetadata.decode.bind(updateFeatureMetadata) + ), + }; + + // Put together the default options sent with requests. + this._defaults = this._gaxGrpc.constructSettings( + 'google.cloud.gkehub.v1beta.GkeHub', + gapicConfig as gax.ClientConfig, + opts.clientConfig || {}, + {'x-goog-api-client': clientHeader.join(' ')} + ); + + // Set up a dictionary of "inner API calls"; the core implementation + // of calling the API is handled in `google-gax`, with this code + // merely providing the destination and request information. + this.innerApiCalls = {}; + + // Add a warn function to the client constructor so it can be easily tested. + this.warn = gax.warn; + } + + /** + * Initialize the client. + * Performs asynchronous operations (such as authentication) and prepares the client. + * This function will be called automatically when any class method is called for the + * first time, but if you need to initialize it before calling an actual method, + * feel free to call initialize() directly. + * + * You can await on this method if you want to make sure the client is initialized. + * + * @returns {Promise} A promise that resolves to an authenticated service stub. + */ + initialize() { + // If the client stub promise is already initialized, return immediately. + if (this.gkeHubStub) { + return this.gkeHubStub; + } + + // Put together the "service stub" for + // google.cloud.gkehub.v1beta.GkeHub. + this.gkeHubStub = this._gaxGrpc.createStub( + this._opts.fallback + ? (this._protos as protobuf.Root).lookupService( + 'google.cloud.gkehub.v1beta.GkeHub' + ) + : // eslint-disable-next-line @typescript-eslint/no-explicit-any + (this._protos as any).google.cloud.gkehub.v1beta.GkeHub, + this._opts, + this._providedCustomServicePath + ) as Promise<{[method: string]: Function}>; + + // Iterate over each of the methods that the service provides + // and create an API call method for each. + const gkeHubStubMethods = [ + 'listFeatures', + 'getFeature', + 'createFeature', + 'deleteFeature', + 'updateFeature', + ]; + for (const methodName of gkeHubStubMethods) { + const callPromise = this.gkeHubStub.then( + stub => + (...args: Array<{}>) => { + if (this._terminated) { + return Promise.reject('The client has already been closed.'); + } + const func = stub[methodName]; + return func.apply(stub, args); + }, + (err: Error | null | undefined) => () => { + throw err; + } + ); + + const descriptor = + this.descriptors.page[methodName] || + this.descriptors.longrunning[methodName] || + undefined; + const apiCall = this._gaxModule.createApiCall( + callPromise, + this._defaults[methodName], + descriptor + ); + + this.innerApiCalls[methodName] = apiCall; + } + + return this.gkeHubStub; + } + + /** + * The DNS address for this API service. + * @returns {string} The DNS address for this service. + */ + static get servicePath() { + return 'gkehub.googleapis.com'; + } + + /** + * The DNS address for this API service - same as servicePath(), + * exists for compatibility reasons. + * @returns {string} The DNS address for this service. + */ + static get apiEndpoint() { + return 'gkehub.googleapis.com'; + } + + /** + * The port for this API service. + * @returns {number} The default port for this service. + */ + static get port() { + return 443; + } + + /** + * The scopes needed to make gRPC calls for every method defined + * in this service. + * @returns {string[]} List of default scopes. + */ + static get scopes() { + return ['https://www.googleapis.com/auth/cloud-platform']; + } + + getProjectId(): Promise; + getProjectId(callback: Callback): void; + /** + * Return the project ID used by this class. + * @returns {Promise} A promise that resolves to string containing the project ID. + */ + getProjectId( + callback?: Callback + ): Promise | void { + if (callback) { + this.auth.getProjectId(callback); + return; + } + return this.auth.getProjectId(); + } + + // ------------------- + // -- Service calls -- + // ------------------- + getFeature( + request?: protos.google.cloud.gkehub.v1beta.IGetFeatureRequest, + options?: CallOptions + ): Promise< + [ + protos.google.cloud.gkehub.v1beta.IFeature, + protos.google.cloud.gkehub.v1beta.IGetFeatureRequest | undefined, + {} | undefined + ] + >; + getFeature( + request: protos.google.cloud.gkehub.v1beta.IGetFeatureRequest, + options: CallOptions, + callback: Callback< + protos.google.cloud.gkehub.v1beta.IFeature, + protos.google.cloud.gkehub.v1beta.IGetFeatureRequest | null | undefined, + {} | null | undefined + > + ): void; + getFeature( + request: protos.google.cloud.gkehub.v1beta.IGetFeatureRequest, + callback: Callback< + protos.google.cloud.gkehub.v1beta.IFeature, + protos.google.cloud.gkehub.v1beta.IGetFeatureRequest | null | undefined, + {} | null | undefined + > + ): void; + /** + * Gets details of a single Feature. + * + * @param {Object} request + * The request object that will be sent. + * @param {string} request.name + * The Feature resource name in the format + * `projects/* /locations/* /features/*` + * @param {object} [options] + * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. + * @returns {Promise} - The promise which resolves to an array. + * The first element of the array is an object representing [Feature]{@link google.cloud.gkehub.v1beta.Feature}. + * Please see the + * [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods) + * for more details and examples. + * @example + * const [response] = await client.getFeature(request); + */ + getFeature( + request?: protos.google.cloud.gkehub.v1beta.IGetFeatureRequest, + optionsOrCallback?: + | CallOptions + | Callback< + protos.google.cloud.gkehub.v1beta.IFeature, + | protos.google.cloud.gkehub.v1beta.IGetFeatureRequest + | null + | undefined, + {} | null | undefined + >, + callback?: Callback< + protos.google.cloud.gkehub.v1beta.IFeature, + protos.google.cloud.gkehub.v1beta.IGetFeatureRequest | null | undefined, + {} | null | undefined + > + ): Promise< + [ + protos.google.cloud.gkehub.v1beta.IFeature, + protos.google.cloud.gkehub.v1beta.IGetFeatureRequest | undefined, + {} | undefined + ] + > | void { + request = request || {}; + let options: CallOptions; + if (typeof optionsOrCallback === 'function' && callback === undefined) { + callback = optionsOrCallback; + options = {}; + } else { + options = optionsOrCallback as CallOptions; + } + options = options || {}; + options.otherArgs = options.otherArgs || {}; + options.otherArgs.headers = options.otherArgs.headers || {}; + options.otherArgs.headers['x-goog-request-params'] = + gax.routingHeader.fromParams({ + name: request.name || '', + }); + this.initialize(); + return this.innerApiCalls.getFeature(request, options, callback); + } + + createFeature( + request?: protos.google.cloud.gkehub.v1beta.ICreateFeatureRequest, + options?: CallOptions + ): Promise< + [ + LROperation< + protos.google.cloud.gkehub.v1beta.IFeature, + protos.google.cloud.gkehub.v1beta.IOperationMetadata + >, + protos.google.longrunning.IOperation | undefined, + {} | undefined + ] + >; + createFeature( + request: protos.google.cloud.gkehub.v1beta.ICreateFeatureRequest, + options: CallOptions, + callback: Callback< + LROperation< + protos.google.cloud.gkehub.v1beta.IFeature, + protos.google.cloud.gkehub.v1beta.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + > + ): void; + createFeature( + request: protos.google.cloud.gkehub.v1beta.ICreateFeatureRequest, + callback: Callback< + LROperation< + protos.google.cloud.gkehub.v1beta.IFeature, + protos.google.cloud.gkehub.v1beta.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + > + ): void; + /** + * Adds a new Feature. + * + * @param {Object} request + * The request object that will be sent. + * @param {string} request.parent + * The parent (project and location) where the Feature will be created. + * Specified in the format `projects/* /locations/*`. + * @param {string} request.featureId + * The ID of the feature to create. + * @param {google.cloud.gkehub.v1beta.Feature} request.resource + * The Feature resource to create. + * @param {string} [request.requestId] + * Optional. A request ID to identify requests. Specify a unique request ID + * so that if you must retry your request, the server will know to ignore + * the request if it has already been completed. The server will guarantee + * that for at least 60 minutes after the first request. + * + * For example, consider a situation where you make an initial request and + * the request times out. If you make the request again with the same request + * ID, the server can check if original operation with the same request ID + * was received, and if so, will ignore the second request. This prevents + * clients from accidentally creating duplicate commitments. + * + * The request ID must be a valid UUID with the exception that zero UUID is + * not supported (00000000-0000-0000-0000-000000000000). + * @param {object} [options] + * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. + * @returns {Promise} - The promise which resolves to an array. + * The first element of the array is an object representing + * a long running operation. Its `promise()` method returns a promise + * you can `await` for. + * Please see the + * [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations) + * for more details and examples. + * @example + * const [operation] = await client.createFeature(request); + * const [response] = await operation.promise(); + */ + createFeature( + request?: protos.google.cloud.gkehub.v1beta.ICreateFeatureRequest, + optionsOrCallback?: + | CallOptions + | Callback< + LROperation< + protos.google.cloud.gkehub.v1beta.IFeature, + protos.google.cloud.gkehub.v1beta.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + >, + callback?: Callback< + LROperation< + protos.google.cloud.gkehub.v1beta.IFeature, + protos.google.cloud.gkehub.v1beta.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + > + ): Promise< + [ + LROperation< + protos.google.cloud.gkehub.v1beta.IFeature, + protos.google.cloud.gkehub.v1beta.IOperationMetadata + >, + protos.google.longrunning.IOperation | undefined, + {} | undefined + ] + > | void { + request = request || {}; + let options: CallOptions; + if (typeof optionsOrCallback === 'function' && callback === undefined) { + callback = optionsOrCallback; + options = {}; + } else { + options = optionsOrCallback as CallOptions; + } + options = options || {}; + options.otherArgs = options.otherArgs || {}; + options.otherArgs.headers = options.otherArgs.headers || {}; + options.otherArgs.headers['x-goog-request-params'] = + gax.routingHeader.fromParams({ + parent: request.parent || '', + }); + this.initialize(); + return this.innerApiCalls.createFeature(request, options, callback); + } + /** + * Check the status of the long running operation returned by `createFeature()`. + * @param {String} name + * The operation name that will be passed. + * @returns {Promise} - The promise which resolves to an object. + * The decoded operation object has result and metadata field to get information from. + * Please see the + * [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations) + * for more details and examples. + * @example + * const decodedOperation = await checkCreateFeatureProgress(name); + * console.log(decodedOperation.result); + * console.log(decodedOperation.done); + * console.log(decodedOperation.metadata); + */ + async checkCreateFeatureProgress( + name: string + ): Promise< + LROperation< + protos.google.cloud.gkehub.v1beta.Feature, + protos.google.cloud.gkehub.v1beta.OperationMetadata + > + > { + const request = new operationsProtos.google.longrunning.GetOperationRequest( + {name} + ); + const [operation] = await this.operationsClient.getOperation(request); + const decodeOperation = new gax.Operation( + operation, + this.descriptors.longrunning.createFeature, + gax.createDefaultBackoffSettings() + ); + return decodeOperation as LROperation< + protos.google.cloud.gkehub.v1beta.Feature, + protos.google.cloud.gkehub.v1beta.OperationMetadata + >; + } + deleteFeature( + request?: protos.google.cloud.gkehub.v1beta.IDeleteFeatureRequest, + options?: CallOptions + ): Promise< + [ + LROperation< + protos.google.protobuf.IEmpty, + protos.google.cloud.gkehub.v1beta.IOperationMetadata + >, + protos.google.longrunning.IOperation | undefined, + {} | undefined + ] + >; + deleteFeature( + request: protos.google.cloud.gkehub.v1beta.IDeleteFeatureRequest, + options: CallOptions, + callback: Callback< + LROperation< + protos.google.protobuf.IEmpty, + protos.google.cloud.gkehub.v1beta.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + > + ): void; + deleteFeature( + request: protos.google.cloud.gkehub.v1beta.IDeleteFeatureRequest, + callback: Callback< + LROperation< + protos.google.protobuf.IEmpty, + protos.google.cloud.gkehub.v1beta.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + > + ): void; + /** + * Removes a Feature. + * + * @param {Object} request + * The request object that will be sent. + * @param {string} request.name + * The Feature resource name in the format + * `projects/* /locations/* /features/*`. + * @param {boolean} request.force + * If set to true, the delete will ignore any outstanding resources for + * this Feature (that is, `FeatureState.has_resources` is set to true). These + * resources will NOT be cleaned up or modified in any way. + * @param {string} [request.requestId] + * Optional. A request ID to identify requests. Specify a unique request ID + * so that if you must retry your request, the server will know to ignore + * the request if it has already been completed. The server will guarantee + * that for at least 60 minutes after the first request. + * + * For example, consider a situation where you make an initial request and + * the request times out. If you make the request again with the same request + * ID, the server can check if original operation with the same request ID + * was received, and if so, will ignore the second request. This prevents + * clients from accidentally creating duplicate commitments. + * + * The request ID must be a valid UUID with the exception that zero UUID is + * not supported (00000000-0000-0000-0000-000000000000). + * @param {object} [options] + * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. + * @returns {Promise} - The promise which resolves to an array. + * The first element of the array is an object representing + * a long running operation. Its `promise()` method returns a promise + * you can `await` for. + * Please see the + * [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations) + * for more details and examples. + * @example + * const [operation] = await client.deleteFeature(request); + * const [response] = await operation.promise(); + */ + deleteFeature( + request?: protos.google.cloud.gkehub.v1beta.IDeleteFeatureRequest, + optionsOrCallback?: + | CallOptions + | Callback< + LROperation< + protos.google.protobuf.IEmpty, + protos.google.cloud.gkehub.v1beta.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + >, + callback?: Callback< + LROperation< + protos.google.protobuf.IEmpty, + protos.google.cloud.gkehub.v1beta.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + > + ): Promise< + [ + LROperation< + protos.google.protobuf.IEmpty, + protos.google.cloud.gkehub.v1beta.IOperationMetadata + >, + protos.google.longrunning.IOperation | undefined, + {} | undefined + ] + > | void { + request = request || {}; + let options: CallOptions; + if (typeof optionsOrCallback === 'function' && callback === undefined) { + callback = optionsOrCallback; + options = {}; + } else { + options = optionsOrCallback as CallOptions; + } + options = options || {}; + options.otherArgs = options.otherArgs || {}; + options.otherArgs.headers = options.otherArgs.headers || {}; + options.otherArgs.headers['x-goog-request-params'] = + gax.routingHeader.fromParams({ + name: request.name || '', + }); + this.initialize(); + return this.innerApiCalls.deleteFeature(request, options, callback); + } + /** + * Check the status of the long running operation returned by `deleteFeature()`. + * @param {String} name + * The operation name that will be passed. + * @returns {Promise} - The promise which resolves to an object. + * The decoded operation object has result and metadata field to get information from. + * Please see the + * [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations) + * for more details and examples. + * @example + * const decodedOperation = await checkDeleteFeatureProgress(name); + * console.log(decodedOperation.result); + * console.log(decodedOperation.done); + * console.log(decodedOperation.metadata); + */ + async checkDeleteFeatureProgress( + name: string + ): Promise< + LROperation< + protos.google.protobuf.Empty, + protos.google.cloud.gkehub.v1beta.OperationMetadata + > + > { + const request = new operationsProtos.google.longrunning.GetOperationRequest( + {name} + ); + const [operation] = await this.operationsClient.getOperation(request); + const decodeOperation = new gax.Operation( + operation, + this.descriptors.longrunning.deleteFeature, + gax.createDefaultBackoffSettings() + ); + return decodeOperation as LROperation< + protos.google.protobuf.Empty, + protos.google.cloud.gkehub.v1beta.OperationMetadata + >; + } + updateFeature( + request?: protos.google.cloud.gkehub.v1beta.IUpdateFeatureRequest, + options?: CallOptions + ): Promise< + [ + LROperation< + protos.google.cloud.gkehub.v1beta.IFeature, + protos.google.cloud.gkehub.v1beta.IOperationMetadata + >, + protos.google.longrunning.IOperation | undefined, + {} | undefined + ] + >; + updateFeature( + request: protos.google.cloud.gkehub.v1beta.IUpdateFeatureRequest, + options: CallOptions, + callback: Callback< + LROperation< + protos.google.cloud.gkehub.v1beta.IFeature, + protos.google.cloud.gkehub.v1beta.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + > + ): void; + updateFeature( + request: protos.google.cloud.gkehub.v1beta.IUpdateFeatureRequest, + callback: Callback< + LROperation< + protos.google.cloud.gkehub.v1beta.IFeature, + protos.google.cloud.gkehub.v1beta.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + > + ): void; + /** + * Updates an existing Feature. + * + * @param {Object} request + * The request object that will be sent. + * @param {string} request.name + * The Feature resource name in the format + * `projects/* /locations/* /features/*`. + * @param {google.protobuf.FieldMask} request.updateMask + * Mask of fields to update. + * @param {google.cloud.gkehub.v1beta.Feature} request.resource + * Only fields specified in update_mask are updated. + * If you specify a field in the update_mask but don't specify its value here + * that field will be deleted. + * If you are updating a map field, set the value of a key to null or empty + * string to delete the key from the map. It's not possible to update a key's + * value to the empty string. + * If you specify the update_mask to be a special path "*", fully replaces all + * user-modifiable fields to match `resource`. + * @param {string} [request.requestId] + * Optional. A request ID to identify requests. Specify a unique request ID + * so that if you must retry your request, the server will know to ignore + * the request if it has already been completed. The server will guarantee + * that for at least 60 minutes after the first request. + * + * For example, consider a situation where you make an initial request and + * the request times out. If you make the request again with the same request + * ID, the server can check if original operation with the same request ID + * was received, and if so, will ignore the second request. This prevents + * clients from accidentally creating duplicate commitments. + * + * The request ID must be a valid UUID with the exception that zero UUID is + * not supported (00000000-0000-0000-0000-000000000000). + * @param {object} [options] + * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. + * @returns {Promise} - The promise which resolves to an array. + * The first element of the array is an object representing + * a long running operation. Its `promise()` method returns a promise + * you can `await` for. + * Please see the + * [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations) + * for more details and examples. + * @example + * const [operation] = await client.updateFeature(request); + * const [response] = await operation.promise(); + */ + updateFeature( + request?: protos.google.cloud.gkehub.v1beta.IUpdateFeatureRequest, + optionsOrCallback?: + | CallOptions + | Callback< + LROperation< + protos.google.cloud.gkehub.v1beta.IFeature, + protos.google.cloud.gkehub.v1beta.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + >, + callback?: Callback< + LROperation< + protos.google.cloud.gkehub.v1beta.IFeature, + protos.google.cloud.gkehub.v1beta.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + > + ): Promise< + [ + LROperation< + protos.google.cloud.gkehub.v1beta.IFeature, + protos.google.cloud.gkehub.v1beta.IOperationMetadata + >, + protos.google.longrunning.IOperation | undefined, + {} | undefined + ] + > | void { + request = request || {}; + let options: CallOptions; + if (typeof optionsOrCallback === 'function' && callback === undefined) { + callback = optionsOrCallback; + options = {}; + } else { + options = optionsOrCallback as CallOptions; + } + options = options || {}; + options.otherArgs = options.otherArgs || {}; + options.otherArgs.headers = options.otherArgs.headers || {}; + options.otherArgs.headers['x-goog-request-params'] = + gax.routingHeader.fromParams({ + name: request.name || '', + }); + this.initialize(); + return this.innerApiCalls.updateFeature(request, options, callback); + } + /** + * Check the status of the long running operation returned by `updateFeature()`. + * @param {String} name + * The operation name that will be passed. + * @returns {Promise} - The promise which resolves to an object. + * The decoded operation object has result and metadata field to get information from. + * Please see the + * [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations) + * for more details and examples. + * @example + * const decodedOperation = await checkUpdateFeatureProgress(name); + * console.log(decodedOperation.result); + * console.log(decodedOperation.done); + * console.log(decodedOperation.metadata); + */ + async checkUpdateFeatureProgress( + name: string + ): Promise< + LROperation< + protos.google.cloud.gkehub.v1beta.Feature, + protos.google.cloud.gkehub.v1beta.OperationMetadata + > + > { + const request = new operationsProtos.google.longrunning.GetOperationRequest( + {name} + ); + const [operation] = await this.operationsClient.getOperation(request); + const decodeOperation = new gax.Operation( + operation, + this.descriptors.longrunning.updateFeature, + gax.createDefaultBackoffSettings() + ); + return decodeOperation as LROperation< + protos.google.cloud.gkehub.v1beta.Feature, + protos.google.cloud.gkehub.v1beta.OperationMetadata + >; + } + listFeatures( + request?: protos.google.cloud.gkehub.v1beta.IListFeaturesRequest, + options?: CallOptions + ): Promise< + [ + protos.google.cloud.gkehub.v1beta.IFeature[], + protos.google.cloud.gkehub.v1beta.IListFeaturesRequest | null, + protos.google.cloud.gkehub.v1beta.IListFeaturesResponse + ] + >; + listFeatures( + request: protos.google.cloud.gkehub.v1beta.IListFeaturesRequest, + options: CallOptions, + callback: PaginationCallback< + protos.google.cloud.gkehub.v1beta.IListFeaturesRequest, + | protos.google.cloud.gkehub.v1beta.IListFeaturesResponse + | null + | undefined, + protos.google.cloud.gkehub.v1beta.IFeature + > + ): void; + listFeatures( + request: protos.google.cloud.gkehub.v1beta.IListFeaturesRequest, + callback: PaginationCallback< + protos.google.cloud.gkehub.v1beta.IListFeaturesRequest, + | protos.google.cloud.gkehub.v1beta.IListFeaturesResponse + | null + | undefined, + protos.google.cloud.gkehub.v1beta.IFeature + > + ): void; + /** + * Lists Features in a given project and location. + * + * @param {Object} request + * The request object that will be sent. + * @param {string} request.parent + * The parent (project and location) where the Features will be listed. + * Specified in the format `projects/* /locations/*`. + * @param {number} request.pageSize + * When requesting a 'page' of resources, `page_size` specifies number of + * resources to return. If unspecified or set to 0, all resources will + * be returned. + * @param {string} request.pageToken + * Token returned by previous call to `ListFeatures` which + * specifies the position in the list from where to continue listing the + * resources. + * @param {string} request.filter + * Lists Features that match the filter expression, following the syntax + * outlined in https://google.aip.dev/160. + * + * Examples: + * + * - Feature with the name "servicemesh" in project "foo-proj": + * + * name = "projects/foo-proj/locations/global/features/servicemesh" + * + * - Features that have a label called `foo`: + * + * labels.foo:* + * + * - Features that have a label called `foo` whose value is `bar`: + * + * labels.foo = bar + * @param {string} request.orderBy + * One or more fields to compare and use to sort the output. + * See https://google.aip.dev/132#ordering. + * @param {object} [options] + * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. + * @returns {Promise} - The promise which resolves to an array. + * The first element of the array is Array of [Feature]{@link google.cloud.gkehub.v1beta.Feature}. + * The client library will perform auto-pagination by default: it will call the API as many + * times as needed and will merge results from all the pages into this array. + * Note that it can affect your quota. + * We recommend using `listFeaturesAsync()` + * method described below for async iteration which you can stop as needed. + * Please see the + * [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#auto-pagination) + * for more details and examples. + */ + listFeatures( + request?: protos.google.cloud.gkehub.v1beta.IListFeaturesRequest, + optionsOrCallback?: + | CallOptions + | PaginationCallback< + protos.google.cloud.gkehub.v1beta.IListFeaturesRequest, + | protos.google.cloud.gkehub.v1beta.IListFeaturesResponse + | null + | undefined, + protos.google.cloud.gkehub.v1beta.IFeature + >, + callback?: PaginationCallback< + protos.google.cloud.gkehub.v1beta.IListFeaturesRequest, + | protos.google.cloud.gkehub.v1beta.IListFeaturesResponse + | null + | undefined, + protos.google.cloud.gkehub.v1beta.IFeature + > + ): Promise< + [ + protos.google.cloud.gkehub.v1beta.IFeature[], + protos.google.cloud.gkehub.v1beta.IListFeaturesRequest | null, + protos.google.cloud.gkehub.v1beta.IListFeaturesResponse + ] + > | void { + request = request || {}; + let options: CallOptions; + if (typeof optionsOrCallback === 'function' && callback === undefined) { + callback = optionsOrCallback; + options = {}; + } else { + options = optionsOrCallback as CallOptions; + } + options = options || {}; + options.otherArgs = options.otherArgs || {}; + options.otherArgs.headers = options.otherArgs.headers || {}; + options.otherArgs.headers['x-goog-request-params'] = + gax.routingHeader.fromParams({ + parent: request.parent || '', + }); + this.initialize(); + return this.innerApiCalls.listFeatures(request, options, callback); + } + + /** + * Equivalent to `method.name.toCamelCase()`, but returns a NodeJS Stream object. + * @param {Object} request + * The request object that will be sent. + * @param {string} request.parent + * The parent (project and location) where the Features will be listed. + * Specified in the format `projects/* /locations/*`. + * @param {number} request.pageSize + * When requesting a 'page' of resources, `page_size` specifies number of + * resources to return. If unspecified or set to 0, all resources will + * be returned. + * @param {string} request.pageToken + * Token returned by previous call to `ListFeatures` which + * specifies the position in the list from where to continue listing the + * resources. + * @param {string} request.filter + * Lists Features that match the filter expression, following the syntax + * outlined in https://google.aip.dev/160. + * + * Examples: + * + * - Feature with the name "servicemesh" in project "foo-proj": + * + * name = "projects/foo-proj/locations/global/features/servicemesh" + * + * - Features that have a label called `foo`: + * + * labels.foo:* + * + * - Features that have a label called `foo` whose value is `bar`: + * + * labels.foo = bar + * @param {string} request.orderBy + * One or more fields to compare and use to sort the output. + * See https://google.aip.dev/132#ordering. + * @param {object} [options] + * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. + * @returns {Stream} + * An object stream which emits an object representing [Feature]{@link google.cloud.gkehub.v1beta.Feature} on 'data' event. + * The client library will perform auto-pagination by default: it will call the API as many + * times as needed. Note that it can affect your quota. + * We recommend using `listFeaturesAsync()` + * method described below for async iteration which you can stop as needed. + * Please see the + * [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#auto-pagination) + * for more details and examples. + */ + listFeaturesStream( + request?: protos.google.cloud.gkehub.v1beta.IListFeaturesRequest, + options?: CallOptions + ): Transform { + request = request || {}; + options = options || {}; + options.otherArgs = options.otherArgs || {}; + options.otherArgs.headers = options.otherArgs.headers || {}; + options.otherArgs.headers['x-goog-request-params'] = + gax.routingHeader.fromParams({ + parent: request.parent || '', + }); + const callSettings = new gax.CallSettings(options); + this.initialize(); + return this.descriptors.page.listFeatures.createStream( + this.innerApiCalls.listFeatures as gax.GaxCall, + request, + callSettings + ); + } + + /** + * Equivalent to `listFeatures`, but returns an iterable object. + * + * `for`-`await`-`of` syntax is used with the iterable to get response elements on-demand. + * @param {Object} request + * The request object that will be sent. + * @param {string} request.parent + * The parent (project and location) where the Features will be listed. + * Specified in the format `projects/* /locations/*`. + * @param {number} request.pageSize + * When requesting a 'page' of resources, `page_size` specifies number of + * resources to return. If unspecified or set to 0, all resources will + * be returned. + * @param {string} request.pageToken + * Token returned by previous call to `ListFeatures` which + * specifies the position in the list from where to continue listing the + * resources. + * @param {string} request.filter + * Lists Features that match the filter expression, following the syntax + * outlined in https://google.aip.dev/160. + * + * Examples: + * + * - Feature with the name "servicemesh" in project "foo-proj": + * + * name = "projects/foo-proj/locations/global/features/servicemesh" + * + * - Features that have a label called `foo`: + * + * labels.foo:* + * + * - Features that have a label called `foo` whose value is `bar`: + * + * labels.foo = bar + * @param {string} request.orderBy + * One or more fields to compare and use to sort the output. + * See https://google.aip.dev/132#ordering. + * @param {object} [options] + * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. + * @returns {Object} + * An iterable Object that allows [async iteration](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Iteration_protocols). + * When you iterate the returned iterable, each element will be an object representing + * [Feature]{@link google.cloud.gkehub.v1beta.Feature}. The API will be called under the hood as needed, once per the page, + * so you can stop the iteration when you don't need more results. + * Please see the + * [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#auto-pagination) + * for more details and examples. + * @example + * const iterable = client.listFeaturesAsync(request); + * for await (const response of iterable) { + * // process response + * } + */ + listFeaturesAsync( + request?: protos.google.cloud.gkehub.v1beta.IListFeaturesRequest, + options?: CallOptions + ): AsyncIterable { + request = request || {}; + options = options || {}; + options.otherArgs = options.otherArgs || {}; + options.otherArgs.headers = options.otherArgs.headers || {}; + options.otherArgs.headers['x-goog-request-params'] = + gax.routingHeader.fromParams({ + parent: request.parent || '', + }); + options = options || {}; + const callSettings = new gax.CallSettings(options); + this.initialize(); + return this.descriptors.page.listFeatures.asyncIterate( + this.innerApiCalls['listFeatures'] as GaxCall, + request as unknown as RequestType, + callSettings + ) as AsyncIterable; + } + // -------------------- + // -- Path templates -- + // -------------------- + + /** + * Return a fully-qualified feature resource name string. + * + * @param {string} project + * @param {string} location + * @param {string} feature + * @returns {string} Resource name string. + */ + featurePath(project: string, location: string, feature: string) { + return this.pathTemplates.featurePathTemplate.render({ + project: project, + location: location, + feature: feature, + }); + } + + /** + * Parse the project from Feature resource. + * + * @param {string} featureName + * A fully-qualified path representing Feature resource. + * @returns {string} A string representing the project. + */ + matchProjectFromFeatureName(featureName: string) { + return this.pathTemplates.featurePathTemplate.match(featureName).project; + } + + /** + * Parse the location from Feature resource. + * + * @param {string} featureName + * A fully-qualified path representing Feature resource. + * @returns {string} A string representing the location. + */ + matchLocationFromFeatureName(featureName: string) { + return this.pathTemplates.featurePathTemplate.match(featureName).location; + } + + /** + * Parse the feature from Feature resource. + * + * @param {string} featureName + * A fully-qualified path representing Feature resource. + * @returns {string} A string representing the feature. + */ + matchFeatureFromFeatureName(featureName: string) { + return this.pathTemplates.featurePathTemplate.match(featureName).feature; + } + + /** + * Terminate the gRPC channel and close the client. + * + * The client will no longer be usable and all future behavior is undefined. + * @returns {Promise} A promise that resolves when the client is closed. + */ + close(): Promise { + this.initialize(); + if (!this._terminated) { + return this.gkeHubStub!.then(stub => { + this._terminated = true; + stub.close(); + }); + } + return Promise.resolve(); + } +} diff --git a/packages/google-cloud-gkehub/src/v1beta/gke_hub_client_config.json b/packages/google-cloud-gkehub/src/v1beta/gke_hub_client_config.json new file mode 100644 index 00000000000..f7fe709c550 --- /dev/null +++ b/packages/google-cloud-gkehub/src/v1beta/gke_hub_client_config.json @@ -0,0 +1,63 @@ +{ + "interfaces": { + "google.cloud.gkehub.v1beta.GkeHub": { + "retry_codes": { + "non_idempotent": [], + "idempotent": [ + "DEADLINE_EXCEEDED", + "UNAVAILABLE" + ], + "unavailable": [ + "UNAVAILABLE" + ] + }, + "retry_params": { + "default": { + "initial_retry_delay_millis": 100, + "retry_delay_multiplier": 1.3, + "max_retry_delay_millis": 60000, + "initial_rpc_timeout_millis": 60000, + "rpc_timeout_multiplier": 1, + "max_rpc_timeout_millis": 60000, + "total_timeout_millis": 600000 + }, + "ce5b960a6ed052e690863808e4f0deff3dc7d49f": { + "initial_retry_delay_millis": 1000, + "retry_delay_multiplier": 1.3, + "max_retry_delay_millis": 10000, + "initial_rpc_timeout_millis": 60000, + "rpc_timeout_multiplier": 1, + "max_rpc_timeout_millis": 60000, + "total_timeout_millis": 600000 + } + }, + "methods": { + "ListFeatures": { + "timeout_millis": 60000, + "retry_codes_name": "unavailable", + "retry_params_name": "ce5b960a6ed052e690863808e4f0deff3dc7d49f" + }, + "GetFeature": { + "timeout_millis": 60000, + "retry_codes_name": "unavailable", + "retry_params_name": "ce5b960a6ed052e690863808e4f0deff3dc7d49f" + }, + "CreateFeature": { + "timeout_millis": 60000, + "retry_codes_name": "unavailable", + "retry_params_name": "ce5b960a6ed052e690863808e4f0deff3dc7d49f" + }, + "DeleteFeature": { + "timeout_millis": 60000, + "retry_codes_name": "unavailable", + "retry_params_name": "ce5b960a6ed052e690863808e4f0deff3dc7d49f" + }, + "UpdateFeature": { + "timeout_millis": 60000, + "retry_codes_name": "unavailable", + "retry_params_name": "ce5b960a6ed052e690863808e4f0deff3dc7d49f" + } + } + } + } +} diff --git a/packages/google-cloud-gkehub/src/v1beta/gke_hub_proto_list.json b/packages/google-cloud-gkehub/src/v1beta/gke_hub_proto_list.json new file mode 100644 index 00000000000..9c152a8109c --- /dev/null +++ b/packages/google-cloud-gkehub/src/v1beta/gke_hub_proto_list.json @@ -0,0 +1,7 @@ +[ + "../../protos/google/cloud/gkehub/v1beta/configmanagement/configmanagement.proto", + "../../protos/google/cloud/gkehub/v1beta/feature.proto", + "../../protos/google/cloud/gkehub/v1beta/metering/metering.proto", + "../../protos/google/cloud/gkehub/v1beta/multiclusteringress/multiclusteringress.proto", + "../../protos/google/cloud/gkehub/v1beta/service.proto" +] diff --git a/packages/google-cloud-gkehub/src/v1beta/index.ts b/packages/google-cloud-gkehub/src/v1beta/index.ts new file mode 100644 index 00000000000..43cf74c6b34 --- /dev/null +++ b/packages/google-cloud-gkehub/src/v1beta/index.ts @@ -0,0 +1,19 @@ +// 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 +// +// 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. ** + +export {GkeHubClient} from './gke_hub_client'; diff --git a/packages/google-cloud-gkehub/src/v1beta1/gke_hub_membership_service_client.ts b/packages/google-cloud-gkehub/src/v1beta1/gke_hub_membership_service_client.ts index 99ea2d341ff..ac0ab323037 100644 --- a/packages/google-cloud-gkehub/src/v1beta1/gke_hub_membership_service_client.ts +++ b/packages/google-cloud-gkehub/src/v1beta1/gke_hub_membership_service_client.ts @@ -50,6 +50,7 @@ const version = require('../../../package.json').version; export class GkeHubMembershipServiceClient { private _terminated = false; private _opts: ClientOptions; + private _providedCustomServicePath: boolean; private _gaxModule: typeof gax | typeof gax.fallback; private _gaxGrpc: gax.GrpcClient | gax.fallback.GrpcClient; private _protos: {}; @@ -61,6 +62,7 @@ export class GkeHubMembershipServiceClient { longrunning: {}, batching: {}, }; + warn: (code: string, message: string, warnType?: string) => void; innerApiCalls: {[name: string]: Function}; pathTemplates: {[name: string]: gax.PathTemplate}; operationsClient: gax.OperationsClient; @@ -106,6 +108,9 @@ export class GkeHubMembershipServiceClient { .constructor as typeof GkeHubMembershipServiceClient; const servicePath = opts?.servicePath || opts?.apiEndpoint || staticMembers.servicePath; + this._providedCustomServicePath = !!( + opts?.servicePath || opts?.apiEndpoint + ); const port = opts?.port || staticMembers.port; const clientConfig = opts?.clientConfig ?? {}; const fallback = @@ -234,6 +239,9 @@ export class GkeHubMembershipServiceClient { // of calling the API is handled in `google-gax`, with this code // merely providing the destination and request information. this.innerApiCalls = {}; + + // Add a warn function to the client constructor so it can be easily tested. + this.warn = gax.warn; } /** @@ -263,7 +271,8 @@ export class GkeHubMembershipServiceClient { : // eslint-disable-next-line @typescript-eslint/no-explicit-any (this._protos as any).google.cloud.gkehub.v1beta1 .GkeHubMembershipService, - this._opts + this._opts, + this._providedCustomServicePath ) as Promise<{[method: string]: Function}>; // Iterate over each of the methods that the service provides diff --git a/packages/google-cloud-gkehub/test/gapic_gke_hub_v1.ts b/packages/google-cloud-gkehub/test/gapic_gke_hub_v1.ts new file mode 100644 index 00000000000..806ab7b252d --- /dev/null +++ b/packages/google-cloud-gkehub/test/gapic_gke_hub_v1.ts @@ -0,0 +1,2503 @@ +// 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 +// +// 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. ** + +import * as protos from '../protos/protos'; +import * as assert from 'assert'; +import * as sinon from 'sinon'; +import {SinonStub} from 'sinon'; +import {describe, it} from 'mocha'; +import * as gkehubModule from '../src'; + +import {PassThrough} from 'stream'; + +import {protobuf, LROperation, operationsProtos} from 'google-gax'; + +function generateSampleMessage(instance: T) { + const filledObject = ( + instance.constructor as typeof protobuf.Message + ).toObject(instance as protobuf.Message, {defaults: true}); + return (instance.constructor as typeof protobuf.Message).fromObject( + filledObject + ) as T; +} + +function stubSimpleCall(response?: ResponseType, error?: Error) { + return error + ? sinon.stub().rejects(error) + : sinon.stub().resolves([response]); +} + +function stubSimpleCallWithCallback( + response?: ResponseType, + error?: Error +) { + return error + ? sinon.stub().callsArgWith(2, error) + : sinon.stub().callsArgWith(2, null, response); +} + +function stubLongRunningCall( + response?: ResponseType, + callError?: Error, + lroError?: Error +) { + const innerStub = lroError + ? sinon.stub().rejects(lroError) + : sinon.stub().resolves([response]); + const mockOperation = { + promise: innerStub, + }; + return callError + ? sinon.stub().rejects(callError) + : sinon.stub().resolves([mockOperation]); +} + +function stubLongRunningCallWithCallback( + response?: ResponseType, + callError?: Error, + lroError?: Error +) { + const innerStub = lroError + ? sinon.stub().rejects(lroError) + : sinon.stub().resolves([response]); + const mockOperation = { + promise: innerStub, + }; + return callError + ? sinon.stub().callsArgWith(2, callError) + : sinon.stub().callsArgWith(2, null, mockOperation); +} + +function stubPageStreamingCall( + responses?: ResponseType[], + error?: Error +) { + const pagingStub = sinon.stub(); + if (responses) { + for (let i = 0; i < responses.length; ++i) { + pagingStub.onCall(i).callsArgWith(2, null, responses[i]); + } + } + const transformStub = error + ? sinon.stub().callsArgWith(2, error) + : pagingStub; + const mockStream = new PassThrough({ + objectMode: true, + transform: transformStub, + }); + // trigger as many responses as needed + if (responses) { + for (let i = 0; i < responses.length; ++i) { + setImmediate(() => { + mockStream.write({}); + }); + } + setImmediate(() => { + mockStream.end(); + }); + } else { + setImmediate(() => { + mockStream.write({}); + }); + setImmediate(() => { + mockStream.end(); + }); + } + return sinon.stub().returns(mockStream); +} + +function stubAsyncIterationCall( + responses?: ResponseType[], + error?: Error +) { + let counter = 0; + const asyncIterable = { + [Symbol.asyncIterator]() { + return { + async next() { + if (error) { + return Promise.reject(error); + } + if (counter >= responses!.length) { + return Promise.resolve({done: true, value: undefined}); + } + return Promise.resolve({done: false, value: responses![counter++]}); + }, + }; + }, + }; + return sinon.stub().returns(asyncIterable); +} + +describe('v1.GkeHubClient', () => { + it('has servicePath', () => { + const servicePath = gkehubModule.v1.GkeHubClient.servicePath; + assert(servicePath); + }); + + it('has apiEndpoint', () => { + const apiEndpoint = gkehubModule.v1.GkeHubClient.apiEndpoint; + assert(apiEndpoint); + }); + + it('has port', () => { + const port = gkehubModule.v1.GkeHubClient.port; + assert(port); + assert(typeof port === 'number'); + }); + + it('should create a client with no option', () => { + const client = new gkehubModule.v1.GkeHubClient(); + assert(client); + }); + + it('should create a client with gRPC fallback', () => { + const client = new gkehubModule.v1.GkeHubClient({ + fallback: true, + }); + assert(client); + }); + + it('has initialize method and supports deferred initialization', async () => { + const client = new gkehubModule.v1.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + assert.strictEqual(client.gkeHubStub, undefined); + await client.initialize(); + assert(client.gkeHubStub); + }); + + it('has close method', () => { + const client = new gkehubModule.v1.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.close(); + }); + + it('has getProjectId method', async () => { + const fakeProjectId = 'fake-project-id'; + const client = new gkehubModule.v1.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.auth.getProjectId = sinon.stub().resolves(fakeProjectId); + const result = await client.getProjectId(); + assert.strictEqual(result, fakeProjectId); + assert((client.auth.getProjectId as SinonStub).calledWithExactly()); + }); + + it('has getProjectId method with callback', async () => { + const fakeProjectId = 'fake-project-id'; + const client = new gkehubModule.v1.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.auth.getProjectId = sinon + .stub() + .callsArgWith(0, null, fakeProjectId); + const promise = new Promise((resolve, reject) => { + client.getProjectId((err?: Error | null, projectId?: string | null) => { + if (err) { + reject(err); + } else { + resolve(projectId); + } + }); + }); + const result = await promise; + assert.strictEqual(result, fakeProjectId); + }); + + describe('getMembership', () => { + it('invokes getMembership without error', async () => { + const client = new gkehubModule.v1.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.gkehub.v1.GetMembershipRequest() + ); + request.name = ''; + const expectedHeaderRequestParams = 'name='; + const expectedOptions = { + otherArgs: { + headers: { + 'x-goog-request-params': expectedHeaderRequestParams, + }, + }, + }; + const expectedResponse = generateSampleMessage( + new protos.google.cloud.gkehub.v1.Membership() + ); + client.innerApiCalls.getMembership = stubSimpleCall(expectedResponse); + const [response] = await client.getMembership(request); + assert.deepStrictEqual(response, expectedResponse); + assert( + (client.innerApiCalls.getMembership as SinonStub) + .getCall(0) + .calledWith(request, expectedOptions, undefined) + ); + }); + + it('invokes getMembership without error using callback', async () => { + const client = new gkehubModule.v1.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.gkehub.v1.GetMembershipRequest() + ); + request.name = ''; + const expectedHeaderRequestParams = 'name='; + const expectedOptions = { + otherArgs: { + headers: { + 'x-goog-request-params': expectedHeaderRequestParams, + }, + }, + }; + const expectedResponse = generateSampleMessage( + new protos.google.cloud.gkehub.v1.Membership() + ); + client.innerApiCalls.getMembership = + stubSimpleCallWithCallback(expectedResponse); + const promise = new Promise((resolve, reject) => { + client.getMembership( + request, + ( + err?: Error | null, + result?: protos.google.cloud.gkehub.v1.IMembership | null + ) => { + if (err) { + reject(err); + } else { + resolve(result); + } + } + ); + }); + const response = await promise; + assert.deepStrictEqual(response, expectedResponse); + assert( + (client.innerApiCalls.getMembership as SinonStub) + .getCall(0) + .calledWith(request, expectedOptions /*, callback defined above */) + ); + }); + + it('invokes getMembership with error', async () => { + const client = new gkehubModule.v1.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.gkehub.v1.GetMembershipRequest() + ); + request.name = ''; + const expectedHeaderRequestParams = 'name='; + const expectedOptions = { + otherArgs: { + headers: { + 'x-goog-request-params': expectedHeaderRequestParams, + }, + }, + }; + const expectedError = new Error('expected'); + client.innerApiCalls.getMembership = stubSimpleCall( + undefined, + expectedError + ); + await assert.rejects(client.getMembership(request), expectedError); + assert( + (client.innerApiCalls.getMembership as SinonStub) + .getCall(0) + .calledWith(request, expectedOptions, undefined) + ); + }); + }); + + describe('getFeature', () => { + it('invokes getFeature without error', async () => { + const client = new gkehubModule.v1.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.gkehub.v1.GetFeatureRequest() + ); + request.name = ''; + const expectedHeaderRequestParams = 'name='; + const expectedOptions = { + otherArgs: { + headers: { + 'x-goog-request-params': expectedHeaderRequestParams, + }, + }, + }; + const expectedResponse = generateSampleMessage( + new protos.google.cloud.gkehub.v1.Feature() + ); + client.innerApiCalls.getFeature = stubSimpleCall(expectedResponse); + const [response] = await client.getFeature(request); + assert.deepStrictEqual(response, expectedResponse); + assert( + (client.innerApiCalls.getFeature as SinonStub) + .getCall(0) + .calledWith(request, expectedOptions, undefined) + ); + }); + + it('invokes getFeature without error using callback', async () => { + const client = new gkehubModule.v1.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.gkehub.v1.GetFeatureRequest() + ); + request.name = ''; + const expectedHeaderRequestParams = 'name='; + const expectedOptions = { + otherArgs: { + headers: { + 'x-goog-request-params': expectedHeaderRequestParams, + }, + }, + }; + const expectedResponse = generateSampleMessage( + new protos.google.cloud.gkehub.v1.Feature() + ); + client.innerApiCalls.getFeature = + stubSimpleCallWithCallback(expectedResponse); + const promise = new Promise((resolve, reject) => { + client.getFeature( + request, + ( + err?: Error | null, + result?: protos.google.cloud.gkehub.v1.IFeature | null + ) => { + if (err) { + reject(err); + } else { + resolve(result); + } + } + ); + }); + const response = await promise; + assert.deepStrictEqual(response, expectedResponse); + assert( + (client.innerApiCalls.getFeature as SinonStub) + .getCall(0) + .calledWith(request, expectedOptions /*, callback defined above */) + ); + }); + + it('invokes getFeature with error', async () => { + const client = new gkehubModule.v1.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.gkehub.v1.GetFeatureRequest() + ); + request.name = ''; + const expectedHeaderRequestParams = 'name='; + const expectedOptions = { + otherArgs: { + headers: { + 'x-goog-request-params': expectedHeaderRequestParams, + }, + }, + }; + const expectedError = new Error('expected'); + client.innerApiCalls.getFeature = stubSimpleCall( + undefined, + expectedError + ); + await assert.rejects(client.getFeature(request), expectedError); + assert( + (client.innerApiCalls.getFeature as SinonStub) + .getCall(0) + .calledWith(request, expectedOptions, undefined) + ); + }); + }); + + describe('generateConnectManifest', () => { + it('invokes generateConnectManifest without error', async () => { + const client = new gkehubModule.v1.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.gkehub.v1.GenerateConnectManifestRequest() + ); + request.name = ''; + const expectedHeaderRequestParams = 'name='; + const expectedOptions = { + otherArgs: { + headers: { + 'x-goog-request-params': expectedHeaderRequestParams, + }, + }, + }; + const expectedResponse = generateSampleMessage( + new protos.google.cloud.gkehub.v1.GenerateConnectManifestResponse() + ); + client.innerApiCalls.generateConnectManifest = + stubSimpleCall(expectedResponse); + const [response] = await client.generateConnectManifest(request); + assert.deepStrictEqual(response, expectedResponse); + assert( + (client.innerApiCalls.generateConnectManifest as SinonStub) + .getCall(0) + .calledWith(request, expectedOptions, undefined) + ); + }); + + it('invokes generateConnectManifest without error using callback', async () => { + const client = new gkehubModule.v1.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.gkehub.v1.GenerateConnectManifestRequest() + ); + request.name = ''; + const expectedHeaderRequestParams = 'name='; + const expectedOptions = { + otherArgs: { + headers: { + 'x-goog-request-params': expectedHeaderRequestParams, + }, + }, + }; + const expectedResponse = generateSampleMessage( + new protos.google.cloud.gkehub.v1.GenerateConnectManifestResponse() + ); + client.innerApiCalls.generateConnectManifest = + stubSimpleCallWithCallback(expectedResponse); + const promise = new Promise((resolve, reject) => { + client.generateConnectManifest( + request, + ( + err?: Error | null, + result?: protos.google.cloud.gkehub.v1.IGenerateConnectManifestResponse | null + ) => { + if (err) { + reject(err); + } else { + resolve(result); + } + } + ); + }); + const response = await promise; + assert.deepStrictEqual(response, expectedResponse); + assert( + (client.innerApiCalls.generateConnectManifest as SinonStub) + .getCall(0) + .calledWith(request, expectedOptions /*, callback defined above */) + ); + }); + + it('invokes generateConnectManifest with error', async () => { + const client = new gkehubModule.v1.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.gkehub.v1.GenerateConnectManifestRequest() + ); + request.name = ''; + const expectedHeaderRequestParams = 'name='; + const expectedOptions = { + otherArgs: { + headers: { + 'x-goog-request-params': expectedHeaderRequestParams, + }, + }, + }; + const expectedError = new Error('expected'); + client.innerApiCalls.generateConnectManifest = stubSimpleCall( + undefined, + expectedError + ); + await assert.rejects( + client.generateConnectManifest(request), + expectedError + ); + assert( + (client.innerApiCalls.generateConnectManifest as SinonStub) + .getCall(0) + .calledWith(request, expectedOptions, undefined) + ); + }); + }); + + describe('createMembership', () => { + it('invokes createMembership without error', async () => { + const client = new gkehubModule.v1.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.gkehub.v1.CreateMembershipRequest() + ); + request.parent = ''; + const expectedHeaderRequestParams = 'parent='; + const expectedOptions = { + otherArgs: { + headers: { + 'x-goog-request-params': expectedHeaderRequestParams, + }, + }, + }; + const expectedResponse = generateSampleMessage( + new protos.google.longrunning.Operation() + ); + client.innerApiCalls.createMembership = + stubLongRunningCall(expectedResponse); + const [operation] = await client.createMembership(request); + const [response] = await operation.promise(); + assert.deepStrictEqual(response, expectedResponse); + assert( + (client.innerApiCalls.createMembership as SinonStub) + .getCall(0) + .calledWith(request, expectedOptions, undefined) + ); + }); + + it('invokes createMembership without error using callback', async () => { + const client = new gkehubModule.v1.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.gkehub.v1.CreateMembershipRequest() + ); + request.parent = ''; + const expectedHeaderRequestParams = 'parent='; + const expectedOptions = { + otherArgs: { + headers: { + 'x-goog-request-params': expectedHeaderRequestParams, + }, + }, + }; + const expectedResponse = generateSampleMessage( + new protos.google.longrunning.Operation() + ); + client.innerApiCalls.createMembership = + stubLongRunningCallWithCallback(expectedResponse); + const promise = new Promise((resolve, reject) => { + client.createMembership( + request, + ( + err?: Error | null, + result?: LROperation< + protos.google.cloud.gkehub.v1.IMembership, + protos.google.cloud.gkehub.v1.IOperationMetadata + > | null + ) => { + if (err) { + reject(err); + } else { + resolve(result); + } + } + ); + }); + const operation = (await promise) as LROperation< + protos.google.cloud.gkehub.v1.IMembership, + protos.google.cloud.gkehub.v1.IOperationMetadata + >; + const [response] = await operation.promise(); + assert.deepStrictEqual(response, expectedResponse); + assert( + (client.innerApiCalls.createMembership as SinonStub) + .getCall(0) + .calledWith(request, expectedOptions /*, callback defined above */) + ); + }); + + it('invokes createMembership with call error', async () => { + const client = new gkehubModule.v1.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.gkehub.v1.CreateMembershipRequest() + ); + request.parent = ''; + const expectedHeaderRequestParams = 'parent='; + const expectedOptions = { + otherArgs: { + headers: { + 'x-goog-request-params': expectedHeaderRequestParams, + }, + }, + }; + const expectedError = new Error('expected'); + client.innerApiCalls.createMembership = stubLongRunningCall( + undefined, + expectedError + ); + await assert.rejects(client.createMembership(request), expectedError); + assert( + (client.innerApiCalls.createMembership as SinonStub) + .getCall(0) + .calledWith(request, expectedOptions, undefined) + ); + }); + + it('invokes createMembership with LRO error', async () => { + const client = new gkehubModule.v1.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.gkehub.v1.CreateMembershipRequest() + ); + request.parent = ''; + const expectedHeaderRequestParams = 'parent='; + const expectedOptions = { + otherArgs: { + headers: { + 'x-goog-request-params': expectedHeaderRequestParams, + }, + }, + }; + const expectedError = new Error('expected'); + client.innerApiCalls.createMembership = stubLongRunningCall( + undefined, + undefined, + expectedError + ); + const [operation] = await client.createMembership(request); + await assert.rejects(operation.promise(), expectedError); + assert( + (client.innerApiCalls.createMembership as SinonStub) + .getCall(0) + .calledWith(request, expectedOptions, undefined) + ); + }); + + it('invokes checkCreateMembershipProgress without error', async () => { + const client = new gkehubModule.v1.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + const expectedResponse = generateSampleMessage( + new operationsProtos.google.longrunning.Operation() + ); + expectedResponse.name = 'test'; + expectedResponse.response = {type_url: 'url', value: Buffer.from('')}; + expectedResponse.metadata = {type_url: 'url', value: Buffer.from('')}; + + client.operationsClient.getOperation = stubSimpleCall(expectedResponse); + const decodedOperation = await client.checkCreateMembershipProgress( + expectedResponse.name + ); + assert.deepStrictEqual(decodedOperation.name, expectedResponse.name); + assert(decodedOperation.metadata); + assert((client.operationsClient.getOperation as SinonStub).getCall(0)); + }); + + it('invokes checkCreateMembershipProgress with error', async () => { + const client = new gkehubModule.v1.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + const expectedError = new Error('expected'); + + client.operationsClient.getOperation = stubSimpleCall( + undefined, + expectedError + ); + await assert.rejects( + client.checkCreateMembershipProgress(''), + expectedError + ); + assert((client.operationsClient.getOperation as SinonStub).getCall(0)); + }); + }); + + describe('createFeature', () => { + it('invokes createFeature without error', async () => { + const client = new gkehubModule.v1.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.gkehub.v1.CreateFeatureRequest() + ); + request.parent = ''; + const expectedHeaderRequestParams = 'parent='; + const expectedOptions = { + otherArgs: { + headers: { + 'x-goog-request-params': expectedHeaderRequestParams, + }, + }, + }; + const expectedResponse = generateSampleMessage( + new protos.google.longrunning.Operation() + ); + client.innerApiCalls.createFeature = + stubLongRunningCall(expectedResponse); + const [operation] = await client.createFeature(request); + const [response] = await operation.promise(); + assert.deepStrictEqual(response, expectedResponse); + assert( + (client.innerApiCalls.createFeature as SinonStub) + .getCall(0) + .calledWith(request, expectedOptions, undefined) + ); + }); + + it('invokes createFeature without error using callback', async () => { + const client = new gkehubModule.v1.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.gkehub.v1.CreateFeatureRequest() + ); + request.parent = ''; + const expectedHeaderRequestParams = 'parent='; + const expectedOptions = { + otherArgs: { + headers: { + 'x-goog-request-params': expectedHeaderRequestParams, + }, + }, + }; + const expectedResponse = generateSampleMessage( + new protos.google.longrunning.Operation() + ); + client.innerApiCalls.createFeature = + stubLongRunningCallWithCallback(expectedResponse); + const promise = new Promise((resolve, reject) => { + client.createFeature( + request, + ( + err?: Error | null, + result?: LROperation< + protos.google.cloud.gkehub.v1.IFeature, + protos.google.cloud.gkehub.v1.IOperationMetadata + > | null + ) => { + if (err) { + reject(err); + } else { + resolve(result); + } + } + ); + }); + const operation = (await promise) as LROperation< + protos.google.cloud.gkehub.v1.IFeature, + protos.google.cloud.gkehub.v1.IOperationMetadata + >; + const [response] = await operation.promise(); + assert.deepStrictEqual(response, expectedResponse); + assert( + (client.innerApiCalls.createFeature as SinonStub) + .getCall(0) + .calledWith(request, expectedOptions /*, callback defined above */) + ); + }); + + it('invokes createFeature with call error', async () => { + const client = new gkehubModule.v1.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.gkehub.v1.CreateFeatureRequest() + ); + request.parent = ''; + const expectedHeaderRequestParams = 'parent='; + const expectedOptions = { + otherArgs: { + headers: { + 'x-goog-request-params': expectedHeaderRequestParams, + }, + }, + }; + const expectedError = new Error('expected'); + client.innerApiCalls.createFeature = stubLongRunningCall( + undefined, + expectedError + ); + await assert.rejects(client.createFeature(request), expectedError); + assert( + (client.innerApiCalls.createFeature as SinonStub) + .getCall(0) + .calledWith(request, expectedOptions, undefined) + ); + }); + + it('invokes createFeature with LRO error', async () => { + const client = new gkehubModule.v1.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.gkehub.v1.CreateFeatureRequest() + ); + request.parent = ''; + const expectedHeaderRequestParams = 'parent='; + const expectedOptions = { + otherArgs: { + headers: { + 'x-goog-request-params': expectedHeaderRequestParams, + }, + }, + }; + const expectedError = new Error('expected'); + client.innerApiCalls.createFeature = stubLongRunningCall( + undefined, + undefined, + expectedError + ); + const [operation] = await client.createFeature(request); + await assert.rejects(operation.promise(), expectedError); + assert( + (client.innerApiCalls.createFeature as SinonStub) + .getCall(0) + .calledWith(request, expectedOptions, undefined) + ); + }); + + it('invokes checkCreateFeatureProgress without error', async () => { + const client = new gkehubModule.v1.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + const expectedResponse = generateSampleMessage( + new operationsProtos.google.longrunning.Operation() + ); + expectedResponse.name = 'test'; + expectedResponse.response = {type_url: 'url', value: Buffer.from('')}; + expectedResponse.metadata = {type_url: 'url', value: Buffer.from('')}; + + client.operationsClient.getOperation = stubSimpleCall(expectedResponse); + const decodedOperation = await client.checkCreateFeatureProgress( + expectedResponse.name + ); + assert.deepStrictEqual(decodedOperation.name, expectedResponse.name); + assert(decodedOperation.metadata); + assert((client.operationsClient.getOperation as SinonStub).getCall(0)); + }); + + it('invokes checkCreateFeatureProgress with error', async () => { + const client = new gkehubModule.v1.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + const expectedError = new Error('expected'); + + client.operationsClient.getOperation = stubSimpleCall( + undefined, + expectedError + ); + await assert.rejects( + client.checkCreateFeatureProgress(''), + expectedError + ); + assert((client.operationsClient.getOperation as SinonStub).getCall(0)); + }); + }); + + describe('deleteMembership', () => { + it('invokes deleteMembership without error', async () => { + const client = new gkehubModule.v1.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.gkehub.v1.DeleteMembershipRequest() + ); + request.name = ''; + const expectedHeaderRequestParams = 'name='; + const expectedOptions = { + otherArgs: { + headers: { + 'x-goog-request-params': expectedHeaderRequestParams, + }, + }, + }; + const expectedResponse = generateSampleMessage( + new protos.google.longrunning.Operation() + ); + client.innerApiCalls.deleteMembership = + stubLongRunningCall(expectedResponse); + const [operation] = await client.deleteMembership(request); + const [response] = await operation.promise(); + assert.deepStrictEqual(response, expectedResponse); + assert( + (client.innerApiCalls.deleteMembership as SinonStub) + .getCall(0) + .calledWith(request, expectedOptions, undefined) + ); + }); + + it('invokes deleteMembership without error using callback', async () => { + const client = new gkehubModule.v1.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.gkehub.v1.DeleteMembershipRequest() + ); + request.name = ''; + const expectedHeaderRequestParams = 'name='; + const expectedOptions = { + otherArgs: { + headers: { + 'x-goog-request-params': expectedHeaderRequestParams, + }, + }, + }; + const expectedResponse = generateSampleMessage( + new protos.google.longrunning.Operation() + ); + client.innerApiCalls.deleteMembership = + stubLongRunningCallWithCallback(expectedResponse); + const promise = new Promise((resolve, reject) => { + client.deleteMembership( + request, + ( + err?: Error | null, + result?: LROperation< + protos.google.protobuf.IEmpty, + protos.google.cloud.gkehub.v1.IOperationMetadata + > | null + ) => { + if (err) { + reject(err); + } else { + resolve(result); + } + } + ); + }); + const operation = (await promise) as LROperation< + protos.google.protobuf.IEmpty, + protos.google.cloud.gkehub.v1.IOperationMetadata + >; + const [response] = await operation.promise(); + assert.deepStrictEqual(response, expectedResponse); + assert( + (client.innerApiCalls.deleteMembership as SinonStub) + .getCall(0) + .calledWith(request, expectedOptions /*, callback defined above */) + ); + }); + + it('invokes deleteMembership with call error', async () => { + const client = new gkehubModule.v1.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.gkehub.v1.DeleteMembershipRequest() + ); + request.name = ''; + const expectedHeaderRequestParams = 'name='; + const expectedOptions = { + otherArgs: { + headers: { + 'x-goog-request-params': expectedHeaderRequestParams, + }, + }, + }; + const expectedError = new Error('expected'); + client.innerApiCalls.deleteMembership = stubLongRunningCall( + undefined, + expectedError + ); + await assert.rejects(client.deleteMembership(request), expectedError); + assert( + (client.innerApiCalls.deleteMembership as SinonStub) + .getCall(0) + .calledWith(request, expectedOptions, undefined) + ); + }); + + it('invokes deleteMembership with LRO error', async () => { + const client = new gkehubModule.v1.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.gkehub.v1.DeleteMembershipRequest() + ); + request.name = ''; + const expectedHeaderRequestParams = 'name='; + const expectedOptions = { + otherArgs: { + headers: { + 'x-goog-request-params': expectedHeaderRequestParams, + }, + }, + }; + const expectedError = new Error('expected'); + client.innerApiCalls.deleteMembership = stubLongRunningCall( + undefined, + undefined, + expectedError + ); + const [operation] = await client.deleteMembership(request); + await assert.rejects(operation.promise(), expectedError); + assert( + (client.innerApiCalls.deleteMembership as SinonStub) + .getCall(0) + .calledWith(request, expectedOptions, undefined) + ); + }); + + it('invokes checkDeleteMembershipProgress without error', async () => { + const client = new gkehubModule.v1.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + const expectedResponse = generateSampleMessage( + new operationsProtos.google.longrunning.Operation() + ); + expectedResponse.name = 'test'; + expectedResponse.response = {type_url: 'url', value: Buffer.from('')}; + expectedResponse.metadata = {type_url: 'url', value: Buffer.from('')}; + + client.operationsClient.getOperation = stubSimpleCall(expectedResponse); + const decodedOperation = await client.checkDeleteMembershipProgress( + expectedResponse.name + ); + assert.deepStrictEqual(decodedOperation.name, expectedResponse.name); + assert(decodedOperation.metadata); + assert((client.operationsClient.getOperation as SinonStub).getCall(0)); + }); + + it('invokes checkDeleteMembershipProgress with error', async () => { + const client = new gkehubModule.v1.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + const expectedError = new Error('expected'); + + client.operationsClient.getOperation = stubSimpleCall( + undefined, + expectedError + ); + await assert.rejects( + client.checkDeleteMembershipProgress(''), + expectedError + ); + assert((client.operationsClient.getOperation as SinonStub).getCall(0)); + }); + }); + + describe('deleteFeature', () => { + it('invokes deleteFeature without error', async () => { + const client = new gkehubModule.v1.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.gkehub.v1.DeleteFeatureRequest() + ); + request.name = ''; + const expectedHeaderRequestParams = 'name='; + const expectedOptions = { + otherArgs: { + headers: { + 'x-goog-request-params': expectedHeaderRequestParams, + }, + }, + }; + const expectedResponse = generateSampleMessage( + new protos.google.longrunning.Operation() + ); + client.innerApiCalls.deleteFeature = + stubLongRunningCall(expectedResponse); + const [operation] = await client.deleteFeature(request); + const [response] = await operation.promise(); + assert.deepStrictEqual(response, expectedResponse); + assert( + (client.innerApiCalls.deleteFeature as SinonStub) + .getCall(0) + .calledWith(request, expectedOptions, undefined) + ); + }); + + it('invokes deleteFeature without error using callback', async () => { + const client = new gkehubModule.v1.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.gkehub.v1.DeleteFeatureRequest() + ); + request.name = ''; + const expectedHeaderRequestParams = 'name='; + const expectedOptions = { + otherArgs: { + headers: { + 'x-goog-request-params': expectedHeaderRequestParams, + }, + }, + }; + const expectedResponse = generateSampleMessage( + new protos.google.longrunning.Operation() + ); + client.innerApiCalls.deleteFeature = + stubLongRunningCallWithCallback(expectedResponse); + const promise = new Promise((resolve, reject) => { + client.deleteFeature( + request, + ( + err?: Error | null, + result?: LROperation< + protos.google.protobuf.IEmpty, + protos.google.cloud.gkehub.v1.IOperationMetadata + > | null + ) => { + if (err) { + reject(err); + } else { + resolve(result); + } + } + ); + }); + const operation = (await promise) as LROperation< + protos.google.protobuf.IEmpty, + protos.google.cloud.gkehub.v1.IOperationMetadata + >; + const [response] = await operation.promise(); + assert.deepStrictEqual(response, expectedResponse); + assert( + (client.innerApiCalls.deleteFeature as SinonStub) + .getCall(0) + .calledWith(request, expectedOptions /*, callback defined above */) + ); + }); + + it('invokes deleteFeature with call error', async () => { + const client = new gkehubModule.v1.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.gkehub.v1.DeleteFeatureRequest() + ); + request.name = ''; + const expectedHeaderRequestParams = 'name='; + const expectedOptions = { + otherArgs: { + headers: { + 'x-goog-request-params': expectedHeaderRequestParams, + }, + }, + }; + const expectedError = new Error('expected'); + client.innerApiCalls.deleteFeature = stubLongRunningCall( + undefined, + expectedError + ); + await assert.rejects(client.deleteFeature(request), expectedError); + assert( + (client.innerApiCalls.deleteFeature as SinonStub) + .getCall(0) + .calledWith(request, expectedOptions, undefined) + ); + }); + + it('invokes deleteFeature with LRO error', async () => { + const client = new gkehubModule.v1.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.gkehub.v1.DeleteFeatureRequest() + ); + request.name = ''; + const expectedHeaderRequestParams = 'name='; + const expectedOptions = { + otherArgs: { + headers: { + 'x-goog-request-params': expectedHeaderRequestParams, + }, + }, + }; + const expectedError = new Error('expected'); + client.innerApiCalls.deleteFeature = stubLongRunningCall( + undefined, + undefined, + expectedError + ); + const [operation] = await client.deleteFeature(request); + await assert.rejects(operation.promise(), expectedError); + assert( + (client.innerApiCalls.deleteFeature as SinonStub) + .getCall(0) + .calledWith(request, expectedOptions, undefined) + ); + }); + + it('invokes checkDeleteFeatureProgress without error', async () => { + const client = new gkehubModule.v1.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + const expectedResponse = generateSampleMessage( + new operationsProtos.google.longrunning.Operation() + ); + expectedResponse.name = 'test'; + expectedResponse.response = {type_url: 'url', value: Buffer.from('')}; + expectedResponse.metadata = {type_url: 'url', value: Buffer.from('')}; + + client.operationsClient.getOperation = stubSimpleCall(expectedResponse); + const decodedOperation = await client.checkDeleteFeatureProgress( + expectedResponse.name + ); + assert.deepStrictEqual(decodedOperation.name, expectedResponse.name); + assert(decodedOperation.metadata); + assert((client.operationsClient.getOperation as SinonStub).getCall(0)); + }); + + it('invokes checkDeleteFeatureProgress with error', async () => { + const client = new gkehubModule.v1.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + const expectedError = new Error('expected'); + + client.operationsClient.getOperation = stubSimpleCall( + undefined, + expectedError + ); + await assert.rejects( + client.checkDeleteFeatureProgress(''), + expectedError + ); + assert((client.operationsClient.getOperation as SinonStub).getCall(0)); + }); + }); + + describe('updateMembership', () => { + it('invokes updateMembership without error', async () => { + const client = new gkehubModule.v1.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.gkehub.v1.UpdateMembershipRequest() + ); + request.name = ''; + const expectedHeaderRequestParams = 'name='; + const expectedOptions = { + otherArgs: { + headers: { + 'x-goog-request-params': expectedHeaderRequestParams, + }, + }, + }; + const expectedResponse = generateSampleMessage( + new protos.google.longrunning.Operation() + ); + client.innerApiCalls.updateMembership = + stubLongRunningCall(expectedResponse); + const [operation] = await client.updateMembership(request); + const [response] = await operation.promise(); + assert.deepStrictEqual(response, expectedResponse); + assert( + (client.innerApiCalls.updateMembership as SinonStub) + .getCall(0) + .calledWith(request, expectedOptions, undefined) + ); + }); + + it('invokes updateMembership without error using callback', async () => { + const client = new gkehubModule.v1.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.gkehub.v1.UpdateMembershipRequest() + ); + request.name = ''; + const expectedHeaderRequestParams = 'name='; + const expectedOptions = { + otherArgs: { + headers: { + 'x-goog-request-params': expectedHeaderRequestParams, + }, + }, + }; + const expectedResponse = generateSampleMessage( + new protos.google.longrunning.Operation() + ); + client.innerApiCalls.updateMembership = + stubLongRunningCallWithCallback(expectedResponse); + const promise = new Promise((resolve, reject) => { + client.updateMembership( + request, + ( + err?: Error | null, + result?: LROperation< + protos.google.cloud.gkehub.v1.IMembership, + protos.google.cloud.gkehub.v1.IOperationMetadata + > | null + ) => { + if (err) { + reject(err); + } else { + resolve(result); + } + } + ); + }); + const operation = (await promise) as LROperation< + protos.google.cloud.gkehub.v1.IMembership, + protos.google.cloud.gkehub.v1.IOperationMetadata + >; + const [response] = await operation.promise(); + assert.deepStrictEqual(response, expectedResponse); + assert( + (client.innerApiCalls.updateMembership as SinonStub) + .getCall(0) + .calledWith(request, expectedOptions /*, callback defined above */) + ); + }); + + it('invokes updateMembership with call error', async () => { + const client = new gkehubModule.v1.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.gkehub.v1.UpdateMembershipRequest() + ); + request.name = ''; + const expectedHeaderRequestParams = 'name='; + const expectedOptions = { + otherArgs: { + headers: { + 'x-goog-request-params': expectedHeaderRequestParams, + }, + }, + }; + const expectedError = new Error('expected'); + client.innerApiCalls.updateMembership = stubLongRunningCall( + undefined, + expectedError + ); + await assert.rejects(client.updateMembership(request), expectedError); + assert( + (client.innerApiCalls.updateMembership as SinonStub) + .getCall(0) + .calledWith(request, expectedOptions, undefined) + ); + }); + + it('invokes updateMembership with LRO error', async () => { + const client = new gkehubModule.v1.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.gkehub.v1.UpdateMembershipRequest() + ); + request.name = ''; + const expectedHeaderRequestParams = 'name='; + const expectedOptions = { + otherArgs: { + headers: { + 'x-goog-request-params': expectedHeaderRequestParams, + }, + }, + }; + const expectedError = new Error('expected'); + client.innerApiCalls.updateMembership = stubLongRunningCall( + undefined, + undefined, + expectedError + ); + const [operation] = await client.updateMembership(request); + await assert.rejects(operation.promise(), expectedError); + assert( + (client.innerApiCalls.updateMembership as SinonStub) + .getCall(0) + .calledWith(request, expectedOptions, undefined) + ); + }); + + it('invokes checkUpdateMembershipProgress without error', async () => { + const client = new gkehubModule.v1.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + const expectedResponse = generateSampleMessage( + new operationsProtos.google.longrunning.Operation() + ); + expectedResponse.name = 'test'; + expectedResponse.response = {type_url: 'url', value: Buffer.from('')}; + expectedResponse.metadata = {type_url: 'url', value: Buffer.from('')}; + + client.operationsClient.getOperation = stubSimpleCall(expectedResponse); + const decodedOperation = await client.checkUpdateMembershipProgress( + expectedResponse.name + ); + assert.deepStrictEqual(decodedOperation.name, expectedResponse.name); + assert(decodedOperation.metadata); + assert((client.operationsClient.getOperation as SinonStub).getCall(0)); + }); + + it('invokes checkUpdateMembershipProgress with error', async () => { + const client = new gkehubModule.v1.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + const expectedError = new Error('expected'); + + client.operationsClient.getOperation = stubSimpleCall( + undefined, + expectedError + ); + await assert.rejects( + client.checkUpdateMembershipProgress(''), + expectedError + ); + assert((client.operationsClient.getOperation as SinonStub).getCall(0)); + }); + }); + + describe('updateFeature', () => { + it('invokes updateFeature without error', async () => { + const client = new gkehubModule.v1.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.gkehub.v1.UpdateFeatureRequest() + ); + request.name = ''; + const expectedHeaderRequestParams = 'name='; + const expectedOptions = { + otherArgs: { + headers: { + 'x-goog-request-params': expectedHeaderRequestParams, + }, + }, + }; + const expectedResponse = generateSampleMessage( + new protos.google.longrunning.Operation() + ); + client.innerApiCalls.updateFeature = + stubLongRunningCall(expectedResponse); + const [operation] = await client.updateFeature(request); + const [response] = await operation.promise(); + assert.deepStrictEqual(response, expectedResponse); + assert( + (client.innerApiCalls.updateFeature as SinonStub) + .getCall(0) + .calledWith(request, expectedOptions, undefined) + ); + }); + + it('invokes updateFeature without error using callback', async () => { + const client = new gkehubModule.v1.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.gkehub.v1.UpdateFeatureRequest() + ); + request.name = ''; + const expectedHeaderRequestParams = 'name='; + const expectedOptions = { + otherArgs: { + headers: { + 'x-goog-request-params': expectedHeaderRequestParams, + }, + }, + }; + const expectedResponse = generateSampleMessage( + new protos.google.longrunning.Operation() + ); + client.innerApiCalls.updateFeature = + stubLongRunningCallWithCallback(expectedResponse); + const promise = new Promise((resolve, reject) => { + client.updateFeature( + request, + ( + err?: Error | null, + result?: LROperation< + protos.google.cloud.gkehub.v1.IFeature, + protos.google.cloud.gkehub.v1.IOperationMetadata + > | null + ) => { + if (err) { + reject(err); + } else { + resolve(result); + } + } + ); + }); + const operation = (await promise) as LROperation< + protos.google.cloud.gkehub.v1.IFeature, + protos.google.cloud.gkehub.v1.IOperationMetadata + >; + const [response] = await operation.promise(); + assert.deepStrictEqual(response, expectedResponse); + assert( + (client.innerApiCalls.updateFeature as SinonStub) + .getCall(0) + .calledWith(request, expectedOptions /*, callback defined above */) + ); + }); + + it('invokes updateFeature with call error', async () => { + const client = new gkehubModule.v1.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.gkehub.v1.UpdateFeatureRequest() + ); + request.name = ''; + const expectedHeaderRequestParams = 'name='; + const expectedOptions = { + otherArgs: { + headers: { + 'x-goog-request-params': expectedHeaderRequestParams, + }, + }, + }; + const expectedError = new Error('expected'); + client.innerApiCalls.updateFeature = stubLongRunningCall( + undefined, + expectedError + ); + await assert.rejects(client.updateFeature(request), expectedError); + assert( + (client.innerApiCalls.updateFeature as SinonStub) + .getCall(0) + .calledWith(request, expectedOptions, undefined) + ); + }); + + it('invokes updateFeature with LRO error', async () => { + const client = new gkehubModule.v1.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.gkehub.v1.UpdateFeatureRequest() + ); + request.name = ''; + const expectedHeaderRequestParams = 'name='; + const expectedOptions = { + otherArgs: { + headers: { + 'x-goog-request-params': expectedHeaderRequestParams, + }, + }, + }; + const expectedError = new Error('expected'); + client.innerApiCalls.updateFeature = stubLongRunningCall( + undefined, + undefined, + expectedError + ); + const [operation] = await client.updateFeature(request); + await assert.rejects(operation.promise(), expectedError); + assert( + (client.innerApiCalls.updateFeature as SinonStub) + .getCall(0) + .calledWith(request, expectedOptions, undefined) + ); + }); + + it('invokes checkUpdateFeatureProgress without error', async () => { + const client = new gkehubModule.v1.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + const expectedResponse = generateSampleMessage( + new operationsProtos.google.longrunning.Operation() + ); + expectedResponse.name = 'test'; + expectedResponse.response = {type_url: 'url', value: Buffer.from('')}; + expectedResponse.metadata = {type_url: 'url', value: Buffer.from('')}; + + client.operationsClient.getOperation = stubSimpleCall(expectedResponse); + const decodedOperation = await client.checkUpdateFeatureProgress( + expectedResponse.name + ); + assert.deepStrictEqual(decodedOperation.name, expectedResponse.name); + assert(decodedOperation.metadata); + assert((client.operationsClient.getOperation as SinonStub).getCall(0)); + }); + + it('invokes checkUpdateFeatureProgress with error', async () => { + const client = new gkehubModule.v1.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + const expectedError = new Error('expected'); + + client.operationsClient.getOperation = stubSimpleCall( + undefined, + expectedError + ); + await assert.rejects( + client.checkUpdateFeatureProgress(''), + expectedError + ); + assert((client.operationsClient.getOperation as SinonStub).getCall(0)); + }); + }); + + describe('listMemberships', () => { + it('invokes listMemberships without error', async () => { + const client = new gkehubModule.v1.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.gkehub.v1.ListMembershipsRequest() + ); + request.parent = ''; + const expectedHeaderRequestParams = 'parent='; + const expectedOptions = { + otherArgs: { + headers: { + 'x-goog-request-params': expectedHeaderRequestParams, + }, + }, + }; + const expectedResponse = [ + generateSampleMessage(new protos.google.cloud.gkehub.v1.Membership()), + generateSampleMessage(new protos.google.cloud.gkehub.v1.Membership()), + generateSampleMessage(new protos.google.cloud.gkehub.v1.Membership()), + ]; + client.innerApiCalls.listMemberships = stubSimpleCall(expectedResponse); + const [response] = await client.listMemberships(request); + assert.deepStrictEqual(response, expectedResponse); + assert( + (client.innerApiCalls.listMemberships as SinonStub) + .getCall(0) + .calledWith(request, expectedOptions, undefined) + ); + }); + + it('invokes listMemberships without error using callback', async () => { + const client = new gkehubModule.v1.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.gkehub.v1.ListMembershipsRequest() + ); + request.parent = ''; + const expectedHeaderRequestParams = 'parent='; + const expectedOptions = { + otherArgs: { + headers: { + 'x-goog-request-params': expectedHeaderRequestParams, + }, + }, + }; + const expectedResponse = [ + generateSampleMessage(new protos.google.cloud.gkehub.v1.Membership()), + generateSampleMessage(new protos.google.cloud.gkehub.v1.Membership()), + generateSampleMessage(new protos.google.cloud.gkehub.v1.Membership()), + ]; + client.innerApiCalls.listMemberships = + stubSimpleCallWithCallback(expectedResponse); + const promise = new Promise((resolve, reject) => { + client.listMemberships( + request, + ( + err?: Error | null, + result?: protos.google.cloud.gkehub.v1.IMembership[] | null + ) => { + if (err) { + reject(err); + } else { + resolve(result); + } + } + ); + }); + const response = await promise; + assert.deepStrictEqual(response, expectedResponse); + assert( + (client.innerApiCalls.listMemberships as SinonStub) + .getCall(0) + .calledWith(request, expectedOptions /*, callback defined above */) + ); + }); + + it('invokes listMemberships with error', async () => { + const client = new gkehubModule.v1.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.gkehub.v1.ListMembershipsRequest() + ); + request.parent = ''; + const expectedHeaderRequestParams = 'parent='; + const expectedOptions = { + otherArgs: { + headers: { + 'x-goog-request-params': expectedHeaderRequestParams, + }, + }, + }; + const expectedError = new Error('expected'); + client.innerApiCalls.listMemberships = stubSimpleCall( + undefined, + expectedError + ); + await assert.rejects(client.listMemberships(request), expectedError); + assert( + (client.innerApiCalls.listMemberships as SinonStub) + .getCall(0) + .calledWith(request, expectedOptions, undefined) + ); + }); + + it('invokes listMembershipsStream without error', async () => { + const client = new gkehubModule.v1.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.gkehub.v1.ListMembershipsRequest() + ); + request.parent = ''; + const expectedHeaderRequestParams = 'parent='; + const expectedResponse = [ + generateSampleMessage(new protos.google.cloud.gkehub.v1.Membership()), + generateSampleMessage(new protos.google.cloud.gkehub.v1.Membership()), + generateSampleMessage(new protos.google.cloud.gkehub.v1.Membership()), + ]; + client.descriptors.page.listMemberships.createStream = + stubPageStreamingCall(expectedResponse); + const stream = client.listMembershipsStream(request); + const promise = new Promise((resolve, reject) => { + const responses: protos.google.cloud.gkehub.v1.Membership[] = []; + stream.on( + 'data', + (response: protos.google.cloud.gkehub.v1.Membership) => { + responses.push(response); + } + ); + stream.on('end', () => { + resolve(responses); + }); + stream.on('error', (err: Error) => { + reject(err); + }); + }); + const responses = await promise; + assert.deepStrictEqual(responses, expectedResponse); + assert( + (client.descriptors.page.listMemberships.createStream as SinonStub) + .getCall(0) + .calledWith(client.innerApiCalls.listMemberships, request) + ); + assert.strictEqual( + ( + client.descriptors.page.listMemberships.createStream as SinonStub + ).getCall(0).args[2].otherArgs.headers['x-goog-request-params'], + expectedHeaderRequestParams + ); + }); + + it('invokes listMembershipsStream with error', async () => { + const client = new gkehubModule.v1.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.gkehub.v1.ListMembershipsRequest() + ); + request.parent = ''; + const expectedHeaderRequestParams = 'parent='; + const expectedError = new Error('expected'); + client.descriptors.page.listMemberships.createStream = + stubPageStreamingCall(undefined, expectedError); + const stream = client.listMembershipsStream(request); + const promise = new Promise((resolve, reject) => { + const responses: protos.google.cloud.gkehub.v1.Membership[] = []; + stream.on( + 'data', + (response: protos.google.cloud.gkehub.v1.Membership) => { + responses.push(response); + } + ); + stream.on('end', () => { + resolve(responses); + }); + stream.on('error', (err: Error) => { + reject(err); + }); + }); + await assert.rejects(promise, expectedError); + assert( + (client.descriptors.page.listMemberships.createStream as SinonStub) + .getCall(0) + .calledWith(client.innerApiCalls.listMemberships, request) + ); + assert.strictEqual( + ( + client.descriptors.page.listMemberships.createStream as SinonStub + ).getCall(0).args[2].otherArgs.headers['x-goog-request-params'], + expectedHeaderRequestParams + ); + }); + + it('uses async iteration with listMemberships without error', async () => { + const client = new gkehubModule.v1.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.gkehub.v1.ListMembershipsRequest() + ); + request.parent = ''; + const expectedHeaderRequestParams = 'parent='; + const expectedResponse = [ + generateSampleMessage(new protos.google.cloud.gkehub.v1.Membership()), + generateSampleMessage(new protos.google.cloud.gkehub.v1.Membership()), + generateSampleMessage(new protos.google.cloud.gkehub.v1.Membership()), + ]; + client.descriptors.page.listMemberships.asyncIterate = + stubAsyncIterationCall(expectedResponse); + const responses: protos.google.cloud.gkehub.v1.IMembership[] = []; + const iterable = client.listMembershipsAsync(request); + for await (const resource of iterable) { + responses.push(resource!); + } + assert.deepStrictEqual(responses, expectedResponse); + assert.deepStrictEqual( + ( + client.descriptors.page.listMemberships.asyncIterate as SinonStub + ).getCall(0).args[1], + request + ); + assert.strictEqual( + ( + client.descriptors.page.listMemberships.asyncIterate as SinonStub + ).getCall(0).args[2].otherArgs.headers['x-goog-request-params'], + expectedHeaderRequestParams + ); + }); + + it('uses async iteration with listMemberships with error', async () => { + const client = new gkehubModule.v1.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.gkehub.v1.ListMembershipsRequest() + ); + request.parent = ''; + const expectedHeaderRequestParams = 'parent='; + const expectedError = new Error('expected'); + client.descriptors.page.listMemberships.asyncIterate = + stubAsyncIterationCall(undefined, expectedError); + const iterable = client.listMembershipsAsync(request); + await assert.rejects(async () => { + const responses: protos.google.cloud.gkehub.v1.IMembership[] = []; + for await (const resource of iterable) { + responses.push(resource!); + } + }); + assert.deepStrictEqual( + ( + client.descriptors.page.listMemberships.asyncIterate as SinonStub + ).getCall(0).args[1], + request + ); + assert.strictEqual( + ( + client.descriptors.page.listMemberships.asyncIterate as SinonStub + ).getCall(0).args[2].otherArgs.headers['x-goog-request-params'], + expectedHeaderRequestParams + ); + }); + }); + + describe('listFeatures', () => { + it('invokes listFeatures without error', async () => { + const client = new gkehubModule.v1.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.gkehub.v1.ListFeaturesRequest() + ); + request.parent = ''; + const expectedHeaderRequestParams = 'parent='; + const expectedOptions = { + otherArgs: { + headers: { + 'x-goog-request-params': expectedHeaderRequestParams, + }, + }, + }; + const expectedResponse = [ + generateSampleMessage(new protos.google.cloud.gkehub.v1.Feature()), + generateSampleMessage(new protos.google.cloud.gkehub.v1.Feature()), + generateSampleMessage(new protos.google.cloud.gkehub.v1.Feature()), + ]; + client.innerApiCalls.listFeatures = stubSimpleCall(expectedResponse); + const [response] = await client.listFeatures(request); + assert.deepStrictEqual(response, expectedResponse); + assert( + (client.innerApiCalls.listFeatures as SinonStub) + .getCall(0) + .calledWith(request, expectedOptions, undefined) + ); + }); + + it('invokes listFeatures without error using callback', async () => { + const client = new gkehubModule.v1.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.gkehub.v1.ListFeaturesRequest() + ); + request.parent = ''; + const expectedHeaderRequestParams = 'parent='; + const expectedOptions = { + otherArgs: { + headers: { + 'x-goog-request-params': expectedHeaderRequestParams, + }, + }, + }; + const expectedResponse = [ + generateSampleMessage(new protos.google.cloud.gkehub.v1.Feature()), + generateSampleMessage(new protos.google.cloud.gkehub.v1.Feature()), + generateSampleMessage(new protos.google.cloud.gkehub.v1.Feature()), + ]; + client.innerApiCalls.listFeatures = + stubSimpleCallWithCallback(expectedResponse); + const promise = new Promise((resolve, reject) => { + client.listFeatures( + request, + ( + err?: Error | null, + result?: protos.google.cloud.gkehub.v1.IFeature[] | null + ) => { + if (err) { + reject(err); + } else { + resolve(result); + } + } + ); + }); + const response = await promise; + assert.deepStrictEqual(response, expectedResponse); + assert( + (client.innerApiCalls.listFeatures as SinonStub) + .getCall(0) + .calledWith(request, expectedOptions /*, callback defined above */) + ); + }); + + it('invokes listFeatures with error', async () => { + const client = new gkehubModule.v1.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.gkehub.v1.ListFeaturesRequest() + ); + request.parent = ''; + const expectedHeaderRequestParams = 'parent='; + const expectedOptions = { + otherArgs: { + headers: { + 'x-goog-request-params': expectedHeaderRequestParams, + }, + }, + }; + const expectedError = new Error('expected'); + client.innerApiCalls.listFeatures = stubSimpleCall( + undefined, + expectedError + ); + await assert.rejects(client.listFeatures(request), expectedError); + assert( + (client.innerApiCalls.listFeatures as SinonStub) + .getCall(0) + .calledWith(request, expectedOptions, undefined) + ); + }); + + it('invokes listFeaturesStream without error', async () => { + const client = new gkehubModule.v1.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.gkehub.v1.ListFeaturesRequest() + ); + request.parent = ''; + const expectedHeaderRequestParams = 'parent='; + const expectedResponse = [ + generateSampleMessage(new protos.google.cloud.gkehub.v1.Feature()), + generateSampleMessage(new protos.google.cloud.gkehub.v1.Feature()), + generateSampleMessage(new protos.google.cloud.gkehub.v1.Feature()), + ]; + client.descriptors.page.listFeatures.createStream = + stubPageStreamingCall(expectedResponse); + const stream = client.listFeaturesStream(request); + const promise = new Promise((resolve, reject) => { + const responses: protos.google.cloud.gkehub.v1.Feature[] = []; + stream.on('data', (response: protos.google.cloud.gkehub.v1.Feature) => { + responses.push(response); + }); + stream.on('end', () => { + resolve(responses); + }); + stream.on('error', (err: Error) => { + reject(err); + }); + }); + const responses = await promise; + assert.deepStrictEqual(responses, expectedResponse); + assert( + (client.descriptors.page.listFeatures.createStream as SinonStub) + .getCall(0) + .calledWith(client.innerApiCalls.listFeatures, request) + ); + assert.strictEqual( + ( + client.descriptors.page.listFeatures.createStream as SinonStub + ).getCall(0).args[2].otherArgs.headers['x-goog-request-params'], + expectedHeaderRequestParams + ); + }); + + it('invokes listFeaturesStream with error', async () => { + const client = new gkehubModule.v1.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.gkehub.v1.ListFeaturesRequest() + ); + request.parent = ''; + const expectedHeaderRequestParams = 'parent='; + const expectedError = new Error('expected'); + client.descriptors.page.listFeatures.createStream = stubPageStreamingCall( + undefined, + expectedError + ); + const stream = client.listFeaturesStream(request); + const promise = new Promise((resolve, reject) => { + const responses: protos.google.cloud.gkehub.v1.Feature[] = []; + stream.on('data', (response: protos.google.cloud.gkehub.v1.Feature) => { + responses.push(response); + }); + stream.on('end', () => { + resolve(responses); + }); + stream.on('error', (err: Error) => { + reject(err); + }); + }); + await assert.rejects(promise, expectedError); + assert( + (client.descriptors.page.listFeatures.createStream as SinonStub) + .getCall(0) + .calledWith(client.innerApiCalls.listFeatures, request) + ); + assert.strictEqual( + ( + client.descriptors.page.listFeatures.createStream as SinonStub + ).getCall(0).args[2].otherArgs.headers['x-goog-request-params'], + expectedHeaderRequestParams + ); + }); + + it('uses async iteration with listFeatures without error', async () => { + const client = new gkehubModule.v1.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.gkehub.v1.ListFeaturesRequest() + ); + request.parent = ''; + const expectedHeaderRequestParams = 'parent='; + const expectedResponse = [ + generateSampleMessage(new protos.google.cloud.gkehub.v1.Feature()), + generateSampleMessage(new protos.google.cloud.gkehub.v1.Feature()), + generateSampleMessage(new protos.google.cloud.gkehub.v1.Feature()), + ]; + client.descriptors.page.listFeatures.asyncIterate = + stubAsyncIterationCall(expectedResponse); + const responses: protos.google.cloud.gkehub.v1.IFeature[] = []; + const iterable = client.listFeaturesAsync(request); + for await (const resource of iterable) { + responses.push(resource!); + } + assert.deepStrictEqual(responses, expectedResponse); + assert.deepStrictEqual( + ( + client.descriptors.page.listFeatures.asyncIterate as SinonStub + ).getCall(0).args[1], + request + ); + assert.strictEqual( + ( + client.descriptors.page.listFeatures.asyncIterate as SinonStub + ).getCall(0).args[2].otherArgs.headers['x-goog-request-params'], + expectedHeaderRequestParams + ); + }); + + it('uses async iteration with listFeatures with error', async () => { + const client = new gkehubModule.v1.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.gkehub.v1.ListFeaturesRequest() + ); + request.parent = ''; + const expectedHeaderRequestParams = 'parent='; + const expectedError = new Error('expected'); + client.descriptors.page.listFeatures.asyncIterate = + stubAsyncIterationCall(undefined, expectedError); + const iterable = client.listFeaturesAsync(request); + await assert.rejects(async () => { + const responses: protos.google.cloud.gkehub.v1.IFeature[] = []; + for await (const resource of iterable) { + responses.push(resource!); + } + }); + assert.deepStrictEqual( + ( + client.descriptors.page.listFeatures.asyncIterate as SinonStub + ).getCall(0).args[1], + request + ); + assert.strictEqual( + ( + client.descriptors.page.listFeatures.asyncIterate as SinonStub + ).getCall(0).args[2].otherArgs.headers['x-goog-request-params'], + expectedHeaderRequestParams + ); + }); + }); + + describe('Path templates', () => { + describe('feature', () => { + const fakePath = '/rendered/path/feature'; + const expectedParameters = { + project: 'projectValue', + location: 'locationValue', + feature: 'featureValue', + }; + const client = new gkehubModule.v1.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + client.pathTemplates.featurePathTemplate.render = sinon + .stub() + .returns(fakePath); + client.pathTemplates.featurePathTemplate.match = sinon + .stub() + .returns(expectedParameters); + + it('featurePath', () => { + const result = client.featurePath( + 'projectValue', + 'locationValue', + 'featureValue' + ); + assert.strictEqual(result, fakePath); + assert( + (client.pathTemplates.featurePathTemplate.render as SinonStub) + .getCall(-1) + .calledWith(expectedParameters) + ); + }); + + it('matchProjectFromFeatureName', () => { + const result = client.matchProjectFromFeatureName(fakePath); + assert.strictEqual(result, 'projectValue'); + assert( + (client.pathTemplates.featurePathTemplate.match as SinonStub) + .getCall(-1) + .calledWith(fakePath) + ); + }); + + it('matchLocationFromFeatureName', () => { + const result = client.matchLocationFromFeatureName(fakePath); + assert.strictEqual(result, 'locationValue'); + assert( + (client.pathTemplates.featurePathTemplate.match as SinonStub) + .getCall(-1) + .calledWith(fakePath) + ); + }); + + it('matchFeatureFromFeatureName', () => { + const result = client.matchFeatureFromFeatureName(fakePath); + assert.strictEqual(result, 'featureValue'); + assert( + (client.pathTemplates.featurePathTemplate.match as SinonStub) + .getCall(-1) + .calledWith(fakePath) + ); + }); + }); + + describe('location', () => { + const fakePath = '/rendered/path/location'; + const expectedParameters = { + project: 'projectValue', + location: 'locationValue', + }; + const client = new gkehubModule.v1.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + client.pathTemplates.locationPathTemplate.render = sinon + .stub() + .returns(fakePath); + client.pathTemplates.locationPathTemplate.match = sinon + .stub() + .returns(expectedParameters); + + it('locationPath', () => { + const result = client.locationPath('projectValue', 'locationValue'); + assert.strictEqual(result, fakePath); + assert( + (client.pathTemplates.locationPathTemplate.render as SinonStub) + .getCall(-1) + .calledWith(expectedParameters) + ); + }); + + it('matchProjectFromLocationName', () => { + const result = client.matchProjectFromLocationName(fakePath); + assert.strictEqual(result, 'projectValue'); + assert( + (client.pathTemplates.locationPathTemplate.match as SinonStub) + .getCall(-1) + .calledWith(fakePath) + ); + }); + + it('matchLocationFromLocationName', () => { + const result = client.matchLocationFromLocationName(fakePath); + assert.strictEqual(result, 'locationValue'); + assert( + (client.pathTemplates.locationPathTemplate.match as SinonStub) + .getCall(-1) + .calledWith(fakePath) + ); + }); + }); + + describe('membership', () => { + const fakePath = '/rendered/path/membership'; + const expectedParameters = { + project: 'projectValue', + location: 'locationValue', + membership: 'membershipValue', + }; + const client = new gkehubModule.v1.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + client.pathTemplates.membershipPathTemplate.render = sinon + .stub() + .returns(fakePath); + client.pathTemplates.membershipPathTemplate.match = sinon + .stub() + .returns(expectedParameters); + + it('membershipPath', () => { + const result = client.membershipPath( + 'projectValue', + 'locationValue', + 'membershipValue' + ); + assert.strictEqual(result, fakePath); + assert( + (client.pathTemplates.membershipPathTemplate.render as SinonStub) + .getCall(-1) + .calledWith(expectedParameters) + ); + }); + + it('matchProjectFromMembershipName', () => { + const result = client.matchProjectFromMembershipName(fakePath); + assert.strictEqual(result, 'projectValue'); + assert( + (client.pathTemplates.membershipPathTemplate.match as SinonStub) + .getCall(-1) + .calledWith(fakePath) + ); + }); + + it('matchLocationFromMembershipName', () => { + const result = client.matchLocationFromMembershipName(fakePath); + assert.strictEqual(result, 'locationValue'); + assert( + (client.pathTemplates.membershipPathTemplate.match as SinonStub) + .getCall(-1) + .calledWith(fakePath) + ); + }); + + it('matchMembershipFromMembershipName', () => { + const result = client.matchMembershipFromMembershipName(fakePath); + assert.strictEqual(result, 'membershipValue'); + assert( + (client.pathTemplates.membershipPathTemplate.match as SinonStub) + .getCall(-1) + .calledWith(fakePath) + ); + }); + }); + + describe('project', () => { + const fakePath = '/rendered/path/project'; + const expectedParameters = { + project: 'projectValue', + }; + const client = new gkehubModule.v1.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + client.pathTemplates.projectPathTemplate.render = sinon + .stub() + .returns(fakePath); + client.pathTemplates.projectPathTemplate.match = sinon + .stub() + .returns(expectedParameters); + + it('projectPath', () => { + const result = client.projectPath('projectValue'); + assert.strictEqual(result, fakePath); + assert( + (client.pathTemplates.projectPathTemplate.render as SinonStub) + .getCall(-1) + .calledWith(expectedParameters) + ); + }); + + it('matchProjectFromProjectName', () => { + const result = client.matchProjectFromProjectName(fakePath); + assert.strictEqual(result, 'projectValue'); + assert( + (client.pathTemplates.projectPathTemplate.match as SinonStub) + .getCall(-1) + .calledWith(fakePath) + ); + }); + }); + }); +}); diff --git a/packages/google-cloud-gkehub/test/gapic_gke_hub_v1alpha.ts b/packages/google-cloud-gkehub/test/gapic_gke_hub_v1alpha.ts new file mode 100644 index 00000000000..bbfda8e9214 --- /dev/null +++ b/packages/google-cloud-gkehub/test/gapic_gke_hub_v1alpha.ts @@ -0,0 +1,1269 @@ +// 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 +// +// 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. ** + +import * as protos from '../protos/protos'; +import * as assert from 'assert'; +import * as sinon from 'sinon'; +import {SinonStub} from 'sinon'; +import {describe, it} from 'mocha'; +import * as gkehubModule from '../src'; + +import {PassThrough} from 'stream'; + +import {protobuf, LROperation, operationsProtos} from 'google-gax'; + +function generateSampleMessage(instance: T) { + const filledObject = ( + instance.constructor as typeof protobuf.Message + ).toObject(instance as protobuf.Message, {defaults: true}); + return (instance.constructor as typeof protobuf.Message).fromObject( + filledObject + ) as T; +} + +function stubSimpleCall(response?: ResponseType, error?: Error) { + return error + ? sinon.stub().rejects(error) + : sinon.stub().resolves([response]); +} + +function stubSimpleCallWithCallback( + response?: ResponseType, + error?: Error +) { + return error + ? sinon.stub().callsArgWith(2, error) + : sinon.stub().callsArgWith(2, null, response); +} + +function stubLongRunningCall( + response?: ResponseType, + callError?: Error, + lroError?: Error +) { + const innerStub = lroError + ? sinon.stub().rejects(lroError) + : sinon.stub().resolves([response]); + const mockOperation = { + promise: innerStub, + }; + return callError + ? sinon.stub().rejects(callError) + : sinon.stub().resolves([mockOperation]); +} + +function stubLongRunningCallWithCallback( + response?: ResponseType, + callError?: Error, + lroError?: Error +) { + const innerStub = lroError + ? sinon.stub().rejects(lroError) + : sinon.stub().resolves([response]); + const mockOperation = { + promise: innerStub, + }; + return callError + ? sinon.stub().callsArgWith(2, callError) + : sinon.stub().callsArgWith(2, null, mockOperation); +} + +function stubPageStreamingCall( + responses?: ResponseType[], + error?: Error +) { + const pagingStub = sinon.stub(); + if (responses) { + for (let i = 0; i < responses.length; ++i) { + pagingStub.onCall(i).callsArgWith(2, null, responses[i]); + } + } + const transformStub = error + ? sinon.stub().callsArgWith(2, error) + : pagingStub; + const mockStream = new PassThrough({ + objectMode: true, + transform: transformStub, + }); + // trigger as many responses as needed + if (responses) { + for (let i = 0; i < responses.length; ++i) { + setImmediate(() => { + mockStream.write({}); + }); + } + setImmediate(() => { + mockStream.end(); + }); + } else { + setImmediate(() => { + mockStream.write({}); + }); + setImmediate(() => { + mockStream.end(); + }); + } + return sinon.stub().returns(mockStream); +} + +function stubAsyncIterationCall( + responses?: ResponseType[], + error?: Error +) { + let counter = 0; + const asyncIterable = { + [Symbol.asyncIterator]() { + return { + async next() { + if (error) { + return Promise.reject(error); + } + if (counter >= responses!.length) { + return Promise.resolve({done: true, value: undefined}); + } + return Promise.resolve({done: false, value: responses![counter++]}); + }, + }; + }, + }; + return sinon.stub().returns(asyncIterable); +} + +describe('v1alpha.GkeHubClient', () => { + it('has servicePath', () => { + const servicePath = gkehubModule.v1alpha.GkeHubClient.servicePath; + assert(servicePath); + }); + + it('has apiEndpoint', () => { + const apiEndpoint = gkehubModule.v1alpha.GkeHubClient.apiEndpoint; + assert(apiEndpoint); + }); + + it('has port', () => { + const port = gkehubModule.v1alpha.GkeHubClient.port; + assert(port); + assert(typeof port === 'number'); + }); + + it('should create a client with no option', () => { + const client = new gkehubModule.v1alpha.GkeHubClient(); + assert(client); + }); + + it('should create a client with gRPC fallback', () => { + const client = new gkehubModule.v1alpha.GkeHubClient({ + fallback: true, + }); + assert(client); + }); + + it('has initialize method and supports deferred initialization', async () => { + const client = new gkehubModule.v1alpha.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + assert.strictEqual(client.gkeHubStub, undefined); + await client.initialize(); + assert(client.gkeHubStub); + }); + + it('has close method', () => { + const client = new gkehubModule.v1alpha.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.close(); + }); + + it('has getProjectId method', async () => { + const fakeProjectId = 'fake-project-id'; + const client = new gkehubModule.v1alpha.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.auth.getProjectId = sinon.stub().resolves(fakeProjectId); + const result = await client.getProjectId(); + assert.strictEqual(result, fakeProjectId); + assert((client.auth.getProjectId as SinonStub).calledWithExactly()); + }); + + it('has getProjectId method with callback', async () => { + const fakeProjectId = 'fake-project-id'; + const client = new gkehubModule.v1alpha.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.auth.getProjectId = sinon + .stub() + .callsArgWith(0, null, fakeProjectId); + const promise = new Promise((resolve, reject) => { + client.getProjectId((err?: Error | null, projectId?: string | null) => { + if (err) { + reject(err); + } else { + resolve(projectId); + } + }); + }); + const result = await promise; + assert.strictEqual(result, fakeProjectId); + }); + + describe('getFeature', () => { + it('invokes getFeature without error', async () => { + const client = new gkehubModule.v1alpha.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.gkehub.v1alpha.GetFeatureRequest() + ); + request.name = ''; + const expectedHeaderRequestParams = 'name='; + const expectedOptions = { + otherArgs: { + headers: { + 'x-goog-request-params': expectedHeaderRequestParams, + }, + }, + }; + const expectedResponse = generateSampleMessage( + new protos.google.cloud.gkehub.v1alpha.Feature() + ); + client.innerApiCalls.getFeature = stubSimpleCall(expectedResponse); + const [response] = await client.getFeature(request); + assert.deepStrictEqual(response, expectedResponse); + assert( + (client.innerApiCalls.getFeature as SinonStub) + .getCall(0) + .calledWith(request, expectedOptions, undefined) + ); + }); + + it('invokes getFeature without error using callback', async () => { + const client = new gkehubModule.v1alpha.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.gkehub.v1alpha.GetFeatureRequest() + ); + request.name = ''; + const expectedHeaderRequestParams = 'name='; + const expectedOptions = { + otherArgs: { + headers: { + 'x-goog-request-params': expectedHeaderRequestParams, + }, + }, + }; + const expectedResponse = generateSampleMessage( + new protos.google.cloud.gkehub.v1alpha.Feature() + ); + client.innerApiCalls.getFeature = + stubSimpleCallWithCallback(expectedResponse); + const promise = new Promise((resolve, reject) => { + client.getFeature( + request, + ( + err?: Error | null, + result?: protos.google.cloud.gkehub.v1alpha.IFeature | null + ) => { + if (err) { + reject(err); + } else { + resolve(result); + } + } + ); + }); + const response = await promise; + assert.deepStrictEqual(response, expectedResponse); + assert( + (client.innerApiCalls.getFeature as SinonStub) + .getCall(0) + .calledWith(request, expectedOptions /*, callback defined above */) + ); + }); + + it('invokes getFeature with error', async () => { + const client = new gkehubModule.v1alpha.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.gkehub.v1alpha.GetFeatureRequest() + ); + request.name = ''; + const expectedHeaderRequestParams = 'name='; + const expectedOptions = { + otherArgs: { + headers: { + 'x-goog-request-params': expectedHeaderRequestParams, + }, + }, + }; + const expectedError = new Error('expected'); + client.innerApiCalls.getFeature = stubSimpleCall( + undefined, + expectedError + ); + await assert.rejects(client.getFeature(request), expectedError); + assert( + (client.innerApiCalls.getFeature as SinonStub) + .getCall(0) + .calledWith(request, expectedOptions, undefined) + ); + }); + }); + + describe('createFeature', () => { + it('invokes createFeature without error', async () => { + const client = new gkehubModule.v1alpha.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.gkehub.v1alpha.CreateFeatureRequest() + ); + request.parent = ''; + const expectedHeaderRequestParams = 'parent='; + const expectedOptions = { + otherArgs: { + headers: { + 'x-goog-request-params': expectedHeaderRequestParams, + }, + }, + }; + const expectedResponse = generateSampleMessage( + new protos.google.longrunning.Operation() + ); + client.innerApiCalls.createFeature = + stubLongRunningCall(expectedResponse); + const [operation] = await client.createFeature(request); + const [response] = await operation.promise(); + assert.deepStrictEqual(response, expectedResponse); + assert( + (client.innerApiCalls.createFeature as SinonStub) + .getCall(0) + .calledWith(request, expectedOptions, undefined) + ); + }); + + it('invokes createFeature without error using callback', async () => { + const client = new gkehubModule.v1alpha.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.gkehub.v1alpha.CreateFeatureRequest() + ); + request.parent = ''; + const expectedHeaderRequestParams = 'parent='; + const expectedOptions = { + otherArgs: { + headers: { + 'x-goog-request-params': expectedHeaderRequestParams, + }, + }, + }; + const expectedResponse = generateSampleMessage( + new protos.google.longrunning.Operation() + ); + client.innerApiCalls.createFeature = + stubLongRunningCallWithCallback(expectedResponse); + const promise = new Promise((resolve, reject) => { + client.createFeature( + request, + ( + err?: Error | null, + result?: LROperation< + protos.google.cloud.gkehub.v1alpha.IFeature, + protos.google.cloud.gkehub.v1alpha.IOperationMetadata + > | null + ) => { + if (err) { + reject(err); + } else { + resolve(result); + } + } + ); + }); + const operation = (await promise) as LROperation< + protos.google.cloud.gkehub.v1alpha.IFeature, + protos.google.cloud.gkehub.v1alpha.IOperationMetadata + >; + const [response] = await operation.promise(); + assert.deepStrictEqual(response, expectedResponse); + assert( + (client.innerApiCalls.createFeature as SinonStub) + .getCall(0) + .calledWith(request, expectedOptions /*, callback defined above */) + ); + }); + + it('invokes createFeature with call error', async () => { + const client = new gkehubModule.v1alpha.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.gkehub.v1alpha.CreateFeatureRequest() + ); + request.parent = ''; + const expectedHeaderRequestParams = 'parent='; + const expectedOptions = { + otherArgs: { + headers: { + 'x-goog-request-params': expectedHeaderRequestParams, + }, + }, + }; + const expectedError = new Error('expected'); + client.innerApiCalls.createFeature = stubLongRunningCall( + undefined, + expectedError + ); + await assert.rejects(client.createFeature(request), expectedError); + assert( + (client.innerApiCalls.createFeature as SinonStub) + .getCall(0) + .calledWith(request, expectedOptions, undefined) + ); + }); + + it('invokes createFeature with LRO error', async () => { + const client = new gkehubModule.v1alpha.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.gkehub.v1alpha.CreateFeatureRequest() + ); + request.parent = ''; + const expectedHeaderRequestParams = 'parent='; + const expectedOptions = { + otherArgs: { + headers: { + 'x-goog-request-params': expectedHeaderRequestParams, + }, + }, + }; + const expectedError = new Error('expected'); + client.innerApiCalls.createFeature = stubLongRunningCall( + undefined, + undefined, + expectedError + ); + const [operation] = await client.createFeature(request); + await assert.rejects(operation.promise(), expectedError); + assert( + (client.innerApiCalls.createFeature as SinonStub) + .getCall(0) + .calledWith(request, expectedOptions, undefined) + ); + }); + + it('invokes checkCreateFeatureProgress without error', async () => { + const client = new gkehubModule.v1alpha.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + const expectedResponse = generateSampleMessage( + new operationsProtos.google.longrunning.Operation() + ); + expectedResponse.name = 'test'; + expectedResponse.response = {type_url: 'url', value: Buffer.from('')}; + expectedResponse.metadata = {type_url: 'url', value: Buffer.from('')}; + + client.operationsClient.getOperation = stubSimpleCall(expectedResponse); + const decodedOperation = await client.checkCreateFeatureProgress( + expectedResponse.name + ); + assert.deepStrictEqual(decodedOperation.name, expectedResponse.name); + assert(decodedOperation.metadata); + assert((client.operationsClient.getOperation as SinonStub).getCall(0)); + }); + + it('invokes checkCreateFeatureProgress with error', async () => { + const client = new gkehubModule.v1alpha.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + const expectedError = new Error('expected'); + + client.operationsClient.getOperation = stubSimpleCall( + undefined, + expectedError + ); + await assert.rejects( + client.checkCreateFeatureProgress(''), + expectedError + ); + assert((client.operationsClient.getOperation as SinonStub).getCall(0)); + }); + }); + + describe('deleteFeature', () => { + it('invokes deleteFeature without error', async () => { + const client = new gkehubModule.v1alpha.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.gkehub.v1alpha.DeleteFeatureRequest() + ); + request.name = ''; + const expectedHeaderRequestParams = 'name='; + const expectedOptions = { + otherArgs: { + headers: { + 'x-goog-request-params': expectedHeaderRequestParams, + }, + }, + }; + const expectedResponse = generateSampleMessage( + new protos.google.longrunning.Operation() + ); + client.innerApiCalls.deleteFeature = + stubLongRunningCall(expectedResponse); + const [operation] = await client.deleteFeature(request); + const [response] = await operation.promise(); + assert.deepStrictEqual(response, expectedResponse); + assert( + (client.innerApiCalls.deleteFeature as SinonStub) + .getCall(0) + .calledWith(request, expectedOptions, undefined) + ); + }); + + it('invokes deleteFeature without error using callback', async () => { + const client = new gkehubModule.v1alpha.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.gkehub.v1alpha.DeleteFeatureRequest() + ); + request.name = ''; + const expectedHeaderRequestParams = 'name='; + const expectedOptions = { + otherArgs: { + headers: { + 'x-goog-request-params': expectedHeaderRequestParams, + }, + }, + }; + const expectedResponse = generateSampleMessage( + new protos.google.longrunning.Operation() + ); + client.innerApiCalls.deleteFeature = + stubLongRunningCallWithCallback(expectedResponse); + const promise = new Promise((resolve, reject) => { + client.deleteFeature( + request, + ( + err?: Error | null, + result?: LROperation< + protos.google.protobuf.IEmpty, + protos.google.cloud.gkehub.v1alpha.IOperationMetadata + > | null + ) => { + if (err) { + reject(err); + } else { + resolve(result); + } + } + ); + }); + const operation = (await promise) as LROperation< + protos.google.protobuf.IEmpty, + protos.google.cloud.gkehub.v1alpha.IOperationMetadata + >; + const [response] = await operation.promise(); + assert.deepStrictEqual(response, expectedResponse); + assert( + (client.innerApiCalls.deleteFeature as SinonStub) + .getCall(0) + .calledWith(request, expectedOptions /*, callback defined above */) + ); + }); + + it('invokes deleteFeature with call error', async () => { + const client = new gkehubModule.v1alpha.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.gkehub.v1alpha.DeleteFeatureRequest() + ); + request.name = ''; + const expectedHeaderRequestParams = 'name='; + const expectedOptions = { + otherArgs: { + headers: { + 'x-goog-request-params': expectedHeaderRequestParams, + }, + }, + }; + const expectedError = new Error('expected'); + client.innerApiCalls.deleteFeature = stubLongRunningCall( + undefined, + expectedError + ); + await assert.rejects(client.deleteFeature(request), expectedError); + assert( + (client.innerApiCalls.deleteFeature as SinonStub) + .getCall(0) + .calledWith(request, expectedOptions, undefined) + ); + }); + + it('invokes deleteFeature with LRO error', async () => { + const client = new gkehubModule.v1alpha.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.gkehub.v1alpha.DeleteFeatureRequest() + ); + request.name = ''; + const expectedHeaderRequestParams = 'name='; + const expectedOptions = { + otherArgs: { + headers: { + 'x-goog-request-params': expectedHeaderRequestParams, + }, + }, + }; + const expectedError = new Error('expected'); + client.innerApiCalls.deleteFeature = stubLongRunningCall( + undefined, + undefined, + expectedError + ); + const [operation] = await client.deleteFeature(request); + await assert.rejects(operation.promise(), expectedError); + assert( + (client.innerApiCalls.deleteFeature as SinonStub) + .getCall(0) + .calledWith(request, expectedOptions, undefined) + ); + }); + + it('invokes checkDeleteFeatureProgress without error', async () => { + const client = new gkehubModule.v1alpha.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + const expectedResponse = generateSampleMessage( + new operationsProtos.google.longrunning.Operation() + ); + expectedResponse.name = 'test'; + expectedResponse.response = {type_url: 'url', value: Buffer.from('')}; + expectedResponse.metadata = {type_url: 'url', value: Buffer.from('')}; + + client.operationsClient.getOperation = stubSimpleCall(expectedResponse); + const decodedOperation = await client.checkDeleteFeatureProgress( + expectedResponse.name + ); + assert.deepStrictEqual(decodedOperation.name, expectedResponse.name); + assert(decodedOperation.metadata); + assert((client.operationsClient.getOperation as SinonStub).getCall(0)); + }); + + it('invokes checkDeleteFeatureProgress with error', async () => { + const client = new gkehubModule.v1alpha.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + const expectedError = new Error('expected'); + + client.operationsClient.getOperation = stubSimpleCall( + undefined, + expectedError + ); + await assert.rejects( + client.checkDeleteFeatureProgress(''), + expectedError + ); + assert((client.operationsClient.getOperation as SinonStub).getCall(0)); + }); + }); + + describe('updateFeature', () => { + it('invokes updateFeature without error', async () => { + const client = new gkehubModule.v1alpha.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.gkehub.v1alpha.UpdateFeatureRequest() + ); + request.name = ''; + const expectedHeaderRequestParams = 'name='; + const expectedOptions = { + otherArgs: { + headers: { + 'x-goog-request-params': expectedHeaderRequestParams, + }, + }, + }; + const expectedResponse = generateSampleMessage( + new protos.google.longrunning.Operation() + ); + client.innerApiCalls.updateFeature = + stubLongRunningCall(expectedResponse); + const [operation] = await client.updateFeature(request); + const [response] = await operation.promise(); + assert.deepStrictEqual(response, expectedResponse); + assert( + (client.innerApiCalls.updateFeature as SinonStub) + .getCall(0) + .calledWith(request, expectedOptions, undefined) + ); + }); + + it('invokes updateFeature without error using callback', async () => { + const client = new gkehubModule.v1alpha.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.gkehub.v1alpha.UpdateFeatureRequest() + ); + request.name = ''; + const expectedHeaderRequestParams = 'name='; + const expectedOptions = { + otherArgs: { + headers: { + 'x-goog-request-params': expectedHeaderRequestParams, + }, + }, + }; + const expectedResponse = generateSampleMessage( + new protos.google.longrunning.Operation() + ); + client.innerApiCalls.updateFeature = + stubLongRunningCallWithCallback(expectedResponse); + const promise = new Promise((resolve, reject) => { + client.updateFeature( + request, + ( + err?: Error | null, + result?: LROperation< + protos.google.cloud.gkehub.v1alpha.IFeature, + protos.google.cloud.gkehub.v1alpha.IOperationMetadata + > | null + ) => { + if (err) { + reject(err); + } else { + resolve(result); + } + } + ); + }); + const operation = (await promise) as LROperation< + protos.google.cloud.gkehub.v1alpha.IFeature, + protos.google.cloud.gkehub.v1alpha.IOperationMetadata + >; + const [response] = await operation.promise(); + assert.deepStrictEqual(response, expectedResponse); + assert( + (client.innerApiCalls.updateFeature as SinonStub) + .getCall(0) + .calledWith(request, expectedOptions /*, callback defined above */) + ); + }); + + it('invokes updateFeature with call error', async () => { + const client = new gkehubModule.v1alpha.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.gkehub.v1alpha.UpdateFeatureRequest() + ); + request.name = ''; + const expectedHeaderRequestParams = 'name='; + const expectedOptions = { + otherArgs: { + headers: { + 'x-goog-request-params': expectedHeaderRequestParams, + }, + }, + }; + const expectedError = new Error('expected'); + client.innerApiCalls.updateFeature = stubLongRunningCall( + undefined, + expectedError + ); + await assert.rejects(client.updateFeature(request), expectedError); + assert( + (client.innerApiCalls.updateFeature as SinonStub) + .getCall(0) + .calledWith(request, expectedOptions, undefined) + ); + }); + + it('invokes updateFeature with LRO error', async () => { + const client = new gkehubModule.v1alpha.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.gkehub.v1alpha.UpdateFeatureRequest() + ); + request.name = ''; + const expectedHeaderRequestParams = 'name='; + const expectedOptions = { + otherArgs: { + headers: { + 'x-goog-request-params': expectedHeaderRequestParams, + }, + }, + }; + const expectedError = new Error('expected'); + client.innerApiCalls.updateFeature = stubLongRunningCall( + undefined, + undefined, + expectedError + ); + const [operation] = await client.updateFeature(request); + await assert.rejects(operation.promise(), expectedError); + assert( + (client.innerApiCalls.updateFeature as SinonStub) + .getCall(0) + .calledWith(request, expectedOptions, undefined) + ); + }); + + it('invokes checkUpdateFeatureProgress without error', async () => { + const client = new gkehubModule.v1alpha.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + const expectedResponse = generateSampleMessage( + new operationsProtos.google.longrunning.Operation() + ); + expectedResponse.name = 'test'; + expectedResponse.response = {type_url: 'url', value: Buffer.from('')}; + expectedResponse.metadata = {type_url: 'url', value: Buffer.from('')}; + + client.operationsClient.getOperation = stubSimpleCall(expectedResponse); + const decodedOperation = await client.checkUpdateFeatureProgress( + expectedResponse.name + ); + assert.deepStrictEqual(decodedOperation.name, expectedResponse.name); + assert(decodedOperation.metadata); + assert((client.operationsClient.getOperation as SinonStub).getCall(0)); + }); + + it('invokes checkUpdateFeatureProgress with error', async () => { + const client = new gkehubModule.v1alpha.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + const expectedError = new Error('expected'); + + client.operationsClient.getOperation = stubSimpleCall( + undefined, + expectedError + ); + await assert.rejects( + client.checkUpdateFeatureProgress(''), + expectedError + ); + assert((client.operationsClient.getOperation as SinonStub).getCall(0)); + }); + }); + + describe('listFeatures', () => { + it('invokes listFeatures without error', async () => { + const client = new gkehubModule.v1alpha.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.gkehub.v1alpha.ListFeaturesRequest() + ); + request.parent = ''; + const expectedHeaderRequestParams = 'parent='; + const expectedOptions = { + otherArgs: { + headers: { + 'x-goog-request-params': expectedHeaderRequestParams, + }, + }, + }; + const expectedResponse = [ + generateSampleMessage(new protos.google.cloud.gkehub.v1alpha.Feature()), + generateSampleMessage(new protos.google.cloud.gkehub.v1alpha.Feature()), + generateSampleMessage(new protos.google.cloud.gkehub.v1alpha.Feature()), + ]; + client.innerApiCalls.listFeatures = stubSimpleCall(expectedResponse); + const [response] = await client.listFeatures(request); + assert.deepStrictEqual(response, expectedResponse); + assert( + (client.innerApiCalls.listFeatures as SinonStub) + .getCall(0) + .calledWith(request, expectedOptions, undefined) + ); + }); + + it('invokes listFeatures without error using callback', async () => { + const client = new gkehubModule.v1alpha.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.gkehub.v1alpha.ListFeaturesRequest() + ); + request.parent = ''; + const expectedHeaderRequestParams = 'parent='; + const expectedOptions = { + otherArgs: { + headers: { + 'x-goog-request-params': expectedHeaderRequestParams, + }, + }, + }; + const expectedResponse = [ + generateSampleMessage(new protos.google.cloud.gkehub.v1alpha.Feature()), + generateSampleMessage(new protos.google.cloud.gkehub.v1alpha.Feature()), + generateSampleMessage(new protos.google.cloud.gkehub.v1alpha.Feature()), + ]; + client.innerApiCalls.listFeatures = + stubSimpleCallWithCallback(expectedResponse); + const promise = new Promise((resolve, reject) => { + client.listFeatures( + request, + ( + err?: Error | null, + result?: protos.google.cloud.gkehub.v1alpha.IFeature[] | null + ) => { + if (err) { + reject(err); + } else { + resolve(result); + } + } + ); + }); + const response = await promise; + assert.deepStrictEqual(response, expectedResponse); + assert( + (client.innerApiCalls.listFeatures as SinonStub) + .getCall(0) + .calledWith(request, expectedOptions /*, callback defined above */) + ); + }); + + it('invokes listFeatures with error', async () => { + const client = new gkehubModule.v1alpha.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.gkehub.v1alpha.ListFeaturesRequest() + ); + request.parent = ''; + const expectedHeaderRequestParams = 'parent='; + const expectedOptions = { + otherArgs: { + headers: { + 'x-goog-request-params': expectedHeaderRequestParams, + }, + }, + }; + const expectedError = new Error('expected'); + client.innerApiCalls.listFeatures = stubSimpleCall( + undefined, + expectedError + ); + await assert.rejects(client.listFeatures(request), expectedError); + assert( + (client.innerApiCalls.listFeatures as SinonStub) + .getCall(0) + .calledWith(request, expectedOptions, undefined) + ); + }); + + it('invokes listFeaturesStream without error', async () => { + const client = new gkehubModule.v1alpha.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.gkehub.v1alpha.ListFeaturesRequest() + ); + request.parent = ''; + const expectedHeaderRequestParams = 'parent='; + const expectedResponse = [ + generateSampleMessage(new protos.google.cloud.gkehub.v1alpha.Feature()), + generateSampleMessage(new protos.google.cloud.gkehub.v1alpha.Feature()), + generateSampleMessage(new protos.google.cloud.gkehub.v1alpha.Feature()), + ]; + client.descriptors.page.listFeatures.createStream = + stubPageStreamingCall(expectedResponse); + const stream = client.listFeaturesStream(request); + const promise = new Promise((resolve, reject) => { + const responses: protos.google.cloud.gkehub.v1alpha.Feature[] = []; + stream.on( + 'data', + (response: protos.google.cloud.gkehub.v1alpha.Feature) => { + responses.push(response); + } + ); + stream.on('end', () => { + resolve(responses); + }); + stream.on('error', (err: Error) => { + reject(err); + }); + }); + const responses = await promise; + assert.deepStrictEqual(responses, expectedResponse); + assert( + (client.descriptors.page.listFeatures.createStream as SinonStub) + .getCall(0) + .calledWith(client.innerApiCalls.listFeatures, request) + ); + assert.strictEqual( + ( + client.descriptors.page.listFeatures.createStream as SinonStub + ).getCall(0).args[2].otherArgs.headers['x-goog-request-params'], + expectedHeaderRequestParams + ); + }); + + it('invokes listFeaturesStream with error', async () => { + const client = new gkehubModule.v1alpha.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.gkehub.v1alpha.ListFeaturesRequest() + ); + request.parent = ''; + const expectedHeaderRequestParams = 'parent='; + const expectedError = new Error('expected'); + client.descriptors.page.listFeatures.createStream = stubPageStreamingCall( + undefined, + expectedError + ); + const stream = client.listFeaturesStream(request); + const promise = new Promise((resolve, reject) => { + const responses: protos.google.cloud.gkehub.v1alpha.Feature[] = []; + stream.on( + 'data', + (response: protos.google.cloud.gkehub.v1alpha.Feature) => { + responses.push(response); + } + ); + stream.on('end', () => { + resolve(responses); + }); + stream.on('error', (err: Error) => { + reject(err); + }); + }); + await assert.rejects(promise, expectedError); + assert( + (client.descriptors.page.listFeatures.createStream as SinonStub) + .getCall(0) + .calledWith(client.innerApiCalls.listFeatures, request) + ); + assert.strictEqual( + ( + client.descriptors.page.listFeatures.createStream as SinonStub + ).getCall(0).args[2].otherArgs.headers['x-goog-request-params'], + expectedHeaderRequestParams + ); + }); + + it('uses async iteration with listFeatures without error', async () => { + const client = new gkehubModule.v1alpha.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.gkehub.v1alpha.ListFeaturesRequest() + ); + request.parent = ''; + const expectedHeaderRequestParams = 'parent='; + const expectedResponse = [ + generateSampleMessage(new protos.google.cloud.gkehub.v1alpha.Feature()), + generateSampleMessage(new protos.google.cloud.gkehub.v1alpha.Feature()), + generateSampleMessage(new protos.google.cloud.gkehub.v1alpha.Feature()), + ]; + client.descriptors.page.listFeatures.asyncIterate = + stubAsyncIterationCall(expectedResponse); + const responses: protos.google.cloud.gkehub.v1alpha.IFeature[] = []; + const iterable = client.listFeaturesAsync(request); + for await (const resource of iterable) { + responses.push(resource!); + } + assert.deepStrictEqual(responses, expectedResponse); + assert.deepStrictEqual( + ( + client.descriptors.page.listFeatures.asyncIterate as SinonStub + ).getCall(0).args[1], + request + ); + assert.strictEqual( + ( + client.descriptors.page.listFeatures.asyncIterate as SinonStub + ).getCall(0).args[2].otherArgs.headers['x-goog-request-params'], + expectedHeaderRequestParams + ); + }); + + it('uses async iteration with listFeatures with error', async () => { + const client = new gkehubModule.v1alpha.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.gkehub.v1alpha.ListFeaturesRequest() + ); + request.parent = ''; + const expectedHeaderRequestParams = 'parent='; + const expectedError = new Error('expected'); + client.descriptors.page.listFeatures.asyncIterate = + stubAsyncIterationCall(undefined, expectedError); + const iterable = client.listFeaturesAsync(request); + await assert.rejects(async () => { + const responses: protos.google.cloud.gkehub.v1alpha.IFeature[] = []; + for await (const resource of iterable) { + responses.push(resource!); + } + }); + assert.deepStrictEqual( + ( + client.descriptors.page.listFeatures.asyncIterate as SinonStub + ).getCall(0).args[1], + request + ); + assert.strictEqual( + ( + client.descriptors.page.listFeatures.asyncIterate as SinonStub + ).getCall(0).args[2].otherArgs.headers['x-goog-request-params'], + expectedHeaderRequestParams + ); + }); + }); + + describe('Path templates', () => { + describe('feature', () => { + const fakePath = '/rendered/path/feature'; + const expectedParameters = { + project: 'projectValue', + location: 'locationValue', + feature: 'featureValue', + }; + const client = new gkehubModule.v1alpha.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + client.pathTemplates.featurePathTemplate.render = sinon + .stub() + .returns(fakePath); + client.pathTemplates.featurePathTemplate.match = sinon + .stub() + .returns(expectedParameters); + + it('featurePath', () => { + const result = client.featurePath( + 'projectValue', + 'locationValue', + 'featureValue' + ); + assert.strictEqual(result, fakePath); + assert( + (client.pathTemplates.featurePathTemplate.render as SinonStub) + .getCall(-1) + .calledWith(expectedParameters) + ); + }); + + it('matchProjectFromFeatureName', () => { + const result = client.matchProjectFromFeatureName(fakePath); + assert.strictEqual(result, 'projectValue'); + assert( + (client.pathTemplates.featurePathTemplate.match as SinonStub) + .getCall(-1) + .calledWith(fakePath) + ); + }); + + it('matchLocationFromFeatureName', () => { + const result = client.matchLocationFromFeatureName(fakePath); + assert.strictEqual(result, 'locationValue'); + assert( + (client.pathTemplates.featurePathTemplate.match as SinonStub) + .getCall(-1) + .calledWith(fakePath) + ); + }); + + it('matchFeatureFromFeatureName', () => { + const result = client.matchFeatureFromFeatureName(fakePath); + assert.strictEqual(result, 'featureValue'); + assert( + (client.pathTemplates.featurePathTemplate.match as SinonStub) + .getCall(-1) + .calledWith(fakePath) + ); + }); + }); + }); +}); diff --git a/packages/google-cloud-gkehub/test/gapic_gke_hub_v1alpha2.ts b/packages/google-cloud-gkehub/test/gapic_gke_hub_v1alpha2.ts new file mode 100644 index 00000000000..871d89e3a2a --- /dev/null +++ b/packages/google-cloud-gkehub/test/gapic_gke_hub_v1alpha2.ts @@ -0,0 +1,1604 @@ +// 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 +// +// 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. ** + +import * as protos from '../protos/protos'; +import * as assert from 'assert'; +import * as sinon from 'sinon'; +import {SinonStub} from 'sinon'; +import {describe, it} from 'mocha'; +import * as gkehubModule from '../src'; + +import {PassThrough} from 'stream'; + +import {protobuf, LROperation, operationsProtos} from 'google-gax'; + +function generateSampleMessage(instance: T) { + const filledObject = ( + instance.constructor as typeof protobuf.Message + ).toObject(instance as protobuf.Message, {defaults: true}); + return (instance.constructor as typeof protobuf.Message).fromObject( + filledObject + ) as T; +} + +function stubSimpleCall(response?: ResponseType, error?: Error) { + return error + ? sinon.stub().rejects(error) + : sinon.stub().resolves([response]); +} + +function stubSimpleCallWithCallback( + response?: ResponseType, + error?: Error +) { + return error + ? sinon.stub().callsArgWith(2, error) + : sinon.stub().callsArgWith(2, null, response); +} + +function stubLongRunningCall( + response?: ResponseType, + callError?: Error, + lroError?: Error +) { + const innerStub = lroError + ? sinon.stub().rejects(lroError) + : sinon.stub().resolves([response]); + const mockOperation = { + promise: innerStub, + }; + return callError + ? sinon.stub().rejects(callError) + : sinon.stub().resolves([mockOperation]); +} + +function stubLongRunningCallWithCallback( + response?: ResponseType, + callError?: Error, + lroError?: Error +) { + const innerStub = lroError + ? sinon.stub().rejects(lroError) + : sinon.stub().resolves([response]); + const mockOperation = { + promise: innerStub, + }; + return callError + ? sinon.stub().callsArgWith(2, callError) + : sinon.stub().callsArgWith(2, null, mockOperation); +} + +function stubPageStreamingCall( + responses?: ResponseType[], + error?: Error +) { + const pagingStub = sinon.stub(); + if (responses) { + for (let i = 0; i < responses.length; ++i) { + pagingStub.onCall(i).callsArgWith(2, null, responses[i]); + } + } + const transformStub = error + ? sinon.stub().callsArgWith(2, error) + : pagingStub; + const mockStream = new PassThrough({ + objectMode: true, + transform: transformStub, + }); + // trigger as many responses as needed + if (responses) { + for (let i = 0; i < responses.length; ++i) { + setImmediate(() => { + mockStream.write({}); + }); + } + setImmediate(() => { + mockStream.end(); + }); + } else { + setImmediate(() => { + mockStream.write({}); + }); + setImmediate(() => { + mockStream.end(); + }); + } + return sinon.stub().returns(mockStream); +} + +function stubAsyncIterationCall( + responses?: ResponseType[], + error?: Error +) { + let counter = 0; + const asyncIterable = { + [Symbol.asyncIterator]() { + return { + async next() { + if (error) { + return Promise.reject(error); + } + if (counter >= responses!.length) { + return Promise.resolve({done: true, value: undefined}); + } + return Promise.resolve({done: false, value: responses![counter++]}); + }, + }; + }, + }; + return sinon.stub().returns(asyncIterable); +} + +describe('v1alpha2.GkeHubClient', () => { + it('has servicePath', () => { + const servicePath = gkehubModule.v1alpha2.GkeHubClient.servicePath; + assert(servicePath); + }); + + it('has apiEndpoint', () => { + const apiEndpoint = gkehubModule.v1alpha2.GkeHubClient.apiEndpoint; + assert(apiEndpoint); + }); + + it('has port', () => { + const port = gkehubModule.v1alpha2.GkeHubClient.port; + assert(port); + assert(typeof port === 'number'); + }); + + it('should create a client with no option', () => { + const client = new gkehubModule.v1alpha2.GkeHubClient(); + assert(client); + }); + + it('should create a client with gRPC fallback', () => { + const client = new gkehubModule.v1alpha2.GkeHubClient({ + fallback: true, + }); + assert(client); + }); + + it('has initialize method and supports deferred initialization', async () => { + const client = new gkehubModule.v1alpha2.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + assert.strictEqual(client.gkeHubStub, undefined); + await client.initialize(); + assert(client.gkeHubStub); + }); + + it('has close method', () => { + const client = new gkehubModule.v1alpha2.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.close(); + }); + + it('has getProjectId method', async () => { + const fakeProjectId = 'fake-project-id'; + const client = new gkehubModule.v1alpha2.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.auth.getProjectId = sinon.stub().resolves(fakeProjectId); + const result = await client.getProjectId(); + assert.strictEqual(result, fakeProjectId); + assert((client.auth.getProjectId as SinonStub).calledWithExactly()); + }); + + it('has getProjectId method with callback', async () => { + const fakeProjectId = 'fake-project-id'; + const client = new gkehubModule.v1alpha2.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.auth.getProjectId = sinon + .stub() + .callsArgWith(0, null, fakeProjectId); + const promise = new Promise((resolve, reject) => { + client.getProjectId((err?: Error | null, projectId?: string | null) => { + if (err) { + reject(err); + } else { + resolve(projectId); + } + }); + }); + const result = await promise; + assert.strictEqual(result, fakeProjectId); + }); + + describe('getMembership', () => { + it('invokes getMembership without error', async () => { + const client = new gkehubModule.v1alpha2.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.gkehub.v1alpha2.GetMembershipRequest() + ); + request.name = ''; + const expectedHeaderRequestParams = 'name='; + const expectedOptions = { + otherArgs: { + headers: { + 'x-goog-request-params': expectedHeaderRequestParams, + }, + }, + }; + const expectedResponse = generateSampleMessage( + new protos.google.cloud.gkehub.v1alpha2.Membership() + ); + client.innerApiCalls.getMembership = stubSimpleCall(expectedResponse); + const [response] = await client.getMembership(request); + assert.deepStrictEqual(response, expectedResponse); + assert( + (client.innerApiCalls.getMembership as SinonStub) + .getCall(0) + .calledWith(request, expectedOptions, undefined) + ); + }); + + it('invokes getMembership without error using callback', async () => { + const client = new gkehubModule.v1alpha2.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.gkehub.v1alpha2.GetMembershipRequest() + ); + request.name = ''; + const expectedHeaderRequestParams = 'name='; + const expectedOptions = { + otherArgs: { + headers: { + 'x-goog-request-params': expectedHeaderRequestParams, + }, + }, + }; + const expectedResponse = generateSampleMessage( + new protos.google.cloud.gkehub.v1alpha2.Membership() + ); + client.innerApiCalls.getMembership = + stubSimpleCallWithCallback(expectedResponse); + const promise = new Promise((resolve, reject) => { + client.getMembership( + request, + ( + err?: Error | null, + result?: protos.google.cloud.gkehub.v1alpha2.IMembership | null + ) => { + if (err) { + reject(err); + } else { + resolve(result); + } + } + ); + }); + const response = await promise; + assert.deepStrictEqual(response, expectedResponse); + assert( + (client.innerApiCalls.getMembership as SinonStub) + .getCall(0) + .calledWith(request, expectedOptions /*, callback defined above */) + ); + }); + + it('invokes getMembership with error', async () => { + const client = new gkehubModule.v1alpha2.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.gkehub.v1alpha2.GetMembershipRequest() + ); + request.name = ''; + const expectedHeaderRequestParams = 'name='; + const expectedOptions = { + otherArgs: { + headers: { + 'x-goog-request-params': expectedHeaderRequestParams, + }, + }, + }; + const expectedError = new Error('expected'); + client.innerApiCalls.getMembership = stubSimpleCall( + undefined, + expectedError + ); + await assert.rejects(client.getMembership(request), expectedError); + assert( + (client.innerApiCalls.getMembership as SinonStub) + .getCall(0) + .calledWith(request, expectedOptions, undefined) + ); + }); + }); + + describe('generateConnectManifest', () => { + it('invokes generateConnectManifest without error', async () => { + const client = new gkehubModule.v1alpha2.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.gkehub.v1alpha2.GenerateConnectManifestRequest() + ); + request.name = ''; + const expectedHeaderRequestParams = 'name='; + const expectedOptions = { + otherArgs: { + headers: { + 'x-goog-request-params': expectedHeaderRequestParams, + }, + }, + }; + const expectedResponse = generateSampleMessage( + new protos.google.cloud.gkehub.v1alpha2.GenerateConnectManifestResponse() + ); + client.innerApiCalls.generateConnectManifest = + stubSimpleCall(expectedResponse); + const [response] = await client.generateConnectManifest(request); + assert.deepStrictEqual(response, expectedResponse); + assert( + (client.innerApiCalls.generateConnectManifest as SinonStub) + .getCall(0) + .calledWith(request, expectedOptions, undefined) + ); + }); + + it('invokes generateConnectManifest without error using callback', async () => { + const client = new gkehubModule.v1alpha2.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.gkehub.v1alpha2.GenerateConnectManifestRequest() + ); + request.name = ''; + const expectedHeaderRequestParams = 'name='; + const expectedOptions = { + otherArgs: { + headers: { + 'x-goog-request-params': expectedHeaderRequestParams, + }, + }, + }; + const expectedResponse = generateSampleMessage( + new protos.google.cloud.gkehub.v1alpha2.GenerateConnectManifestResponse() + ); + client.innerApiCalls.generateConnectManifest = + stubSimpleCallWithCallback(expectedResponse); + const promise = new Promise((resolve, reject) => { + client.generateConnectManifest( + request, + ( + err?: Error | null, + result?: protos.google.cloud.gkehub.v1alpha2.IGenerateConnectManifestResponse | null + ) => { + if (err) { + reject(err); + } else { + resolve(result); + } + } + ); + }); + const response = await promise; + assert.deepStrictEqual(response, expectedResponse); + assert( + (client.innerApiCalls.generateConnectManifest as SinonStub) + .getCall(0) + .calledWith(request, expectedOptions /*, callback defined above */) + ); + }); + + it('invokes generateConnectManifest with error', async () => { + const client = new gkehubModule.v1alpha2.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.gkehub.v1alpha2.GenerateConnectManifestRequest() + ); + request.name = ''; + const expectedHeaderRequestParams = 'name='; + const expectedOptions = { + otherArgs: { + headers: { + 'x-goog-request-params': expectedHeaderRequestParams, + }, + }, + }; + const expectedError = new Error('expected'); + client.innerApiCalls.generateConnectManifest = stubSimpleCall( + undefined, + expectedError + ); + await assert.rejects( + client.generateConnectManifest(request), + expectedError + ); + assert( + (client.innerApiCalls.generateConnectManifest as SinonStub) + .getCall(0) + .calledWith(request, expectedOptions, undefined) + ); + }); + }); + + describe('initializeHub', () => { + it('invokes initializeHub without error', async () => { + const client = new gkehubModule.v1alpha2.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.gkehub.v1alpha2.InitializeHubRequest() + ); + request.project = ''; + const expectedHeaderRequestParams = 'project='; + const expectedOptions = { + otherArgs: { + headers: { + 'x-goog-request-params': expectedHeaderRequestParams, + }, + }, + }; + const expectedResponse = generateSampleMessage( + new protos.google.cloud.gkehub.v1alpha2.InitializeHubResponse() + ); + client.innerApiCalls.initializeHub = stubSimpleCall(expectedResponse); + const [response] = await client.initializeHub(request); + assert.deepStrictEqual(response, expectedResponse); + assert( + (client.innerApiCalls.initializeHub as SinonStub) + .getCall(0) + .calledWith(request, expectedOptions, undefined) + ); + }); + + it('invokes initializeHub without error using callback', async () => { + const client = new gkehubModule.v1alpha2.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.gkehub.v1alpha2.InitializeHubRequest() + ); + request.project = ''; + const expectedHeaderRequestParams = 'project='; + const expectedOptions = { + otherArgs: { + headers: { + 'x-goog-request-params': expectedHeaderRequestParams, + }, + }, + }; + const expectedResponse = generateSampleMessage( + new protos.google.cloud.gkehub.v1alpha2.InitializeHubResponse() + ); + client.innerApiCalls.initializeHub = + stubSimpleCallWithCallback(expectedResponse); + const promise = new Promise((resolve, reject) => { + client.initializeHub( + request, + ( + err?: Error | null, + result?: protos.google.cloud.gkehub.v1alpha2.IInitializeHubResponse | null + ) => { + if (err) { + reject(err); + } else { + resolve(result); + } + } + ); + }); + const response = await promise; + assert.deepStrictEqual(response, expectedResponse); + assert( + (client.innerApiCalls.initializeHub as SinonStub) + .getCall(0) + .calledWith(request, expectedOptions /*, callback defined above */) + ); + }); + + it('invokes initializeHub with error', async () => { + const client = new gkehubModule.v1alpha2.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.gkehub.v1alpha2.InitializeHubRequest() + ); + request.project = ''; + const expectedHeaderRequestParams = 'project='; + const expectedOptions = { + otherArgs: { + headers: { + 'x-goog-request-params': expectedHeaderRequestParams, + }, + }, + }; + const expectedError = new Error('expected'); + client.innerApiCalls.initializeHub = stubSimpleCall( + undefined, + expectedError + ); + await assert.rejects(client.initializeHub(request), expectedError); + assert( + (client.innerApiCalls.initializeHub as SinonStub) + .getCall(0) + .calledWith(request, expectedOptions, undefined) + ); + }); + }); + + describe('createMembership', () => { + it('invokes createMembership without error', async () => { + const client = new gkehubModule.v1alpha2.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.gkehub.v1alpha2.CreateMembershipRequest() + ); + request.parent = ''; + const expectedHeaderRequestParams = 'parent='; + const expectedOptions = { + otherArgs: { + headers: { + 'x-goog-request-params': expectedHeaderRequestParams, + }, + }, + }; + const expectedResponse = generateSampleMessage( + new protos.google.longrunning.Operation() + ); + client.innerApiCalls.createMembership = + stubLongRunningCall(expectedResponse); + const [operation] = await client.createMembership(request); + const [response] = await operation.promise(); + assert.deepStrictEqual(response, expectedResponse); + assert( + (client.innerApiCalls.createMembership as SinonStub) + .getCall(0) + .calledWith(request, expectedOptions, undefined) + ); + }); + + it('invokes createMembership without error using callback', async () => { + const client = new gkehubModule.v1alpha2.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.gkehub.v1alpha2.CreateMembershipRequest() + ); + request.parent = ''; + const expectedHeaderRequestParams = 'parent='; + const expectedOptions = { + otherArgs: { + headers: { + 'x-goog-request-params': expectedHeaderRequestParams, + }, + }, + }; + const expectedResponse = generateSampleMessage( + new protos.google.longrunning.Operation() + ); + client.innerApiCalls.createMembership = + stubLongRunningCallWithCallback(expectedResponse); + const promise = new Promise((resolve, reject) => { + client.createMembership( + request, + ( + err?: Error | null, + result?: LROperation< + protos.google.cloud.gkehub.v1alpha2.IMembership, + protos.google.cloud.gkehub.v1alpha2.IOperationMetadata + > | null + ) => { + if (err) { + reject(err); + } else { + resolve(result); + } + } + ); + }); + const operation = (await promise) as LROperation< + protos.google.cloud.gkehub.v1alpha2.IMembership, + protos.google.cloud.gkehub.v1alpha2.IOperationMetadata + >; + const [response] = await operation.promise(); + assert.deepStrictEqual(response, expectedResponse); + assert( + (client.innerApiCalls.createMembership as SinonStub) + .getCall(0) + .calledWith(request, expectedOptions /*, callback defined above */) + ); + }); + + it('invokes createMembership with call error', async () => { + const client = new gkehubModule.v1alpha2.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.gkehub.v1alpha2.CreateMembershipRequest() + ); + request.parent = ''; + const expectedHeaderRequestParams = 'parent='; + const expectedOptions = { + otherArgs: { + headers: { + 'x-goog-request-params': expectedHeaderRequestParams, + }, + }, + }; + const expectedError = new Error('expected'); + client.innerApiCalls.createMembership = stubLongRunningCall( + undefined, + expectedError + ); + await assert.rejects(client.createMembership(request), expectedError); + assert( + (client.innerApiCalls.createMembership as SinonStub) + .getCall(0) + .calledWith(request, expectedOptions, undefined) + ); + }); + + it('invokes createMembership with LRO error', async () => { + const client = new gkehubModule.v1alpha2.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.gkehub.v1alpha2.CreateMembershipRequest() + ); + request.parent = ''; + const expectedHeaderRequestParams = 'parent='; + const expectedOptions = { + otherArgs: { + headers: { + 'x-goog-request-params': expectedHeaderRequestParams, + }, + }, + }; + const expectedError = new Error('expected'); + client.innerApiCalls.createMembership = stubLongRunningCall( + undefined, + undefined, + expectedError + ); + const [operation] = await client.createMembership(request); + await assert.rejects(operation.promise(), expectedError); + assert( + (client.innerApiCalls.createMembership as SinonStub) + .getCall(0) + .calledWith(request, expectedOptions, undefined) + ); + }); + + it('invokes checkCreateMembershipProgress without error', async () => { + const client = new gkehubModule.v1alpha2.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + const expectedResponse = generateSampleMessage( + new operationsProtos.google.longrunning.Operation() + ); + expectedResponse.name = 'test'; + expectedResponse.response = {type_url: 'url', value: Buffer.from('')}; + expectedResponse.metadata = {type_url: 'url', value: Buffer.from('')}; + + client.operationsClient.getOperation = stubSimpleCall(expectedResponse); + const decodedOperation = await client.checkCreateMembershipProgress( + expectedResponse.name + ); + assert.deepStrictEqual(decodedOperation.name, expectedResponse.name); + assert(decodedOperation.metadata); + assert((client.operationsClient.getOperation as SinonStub).getCall(0)); + }); + + it('invokes checkCreateMembershipProgress with error', async () => { + const client = new gkehubModule.v1alpha2.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + const expectedError = new Error('expected'); + + client.operationsClient.getOperation = stubSimpleCall( + undefined, + expectedError + ); + await assert.rejects( + client.checkCreateMembershipProgress(''), + expectedError + ); + assert((client.operationsClient.getOperation as SinonStub).getCall(0)); + }); + }); + + describe('deleteMembership', () => { + it('invokes deleteMembership without error', async () => { + const client = new gkehubModule.v1alpha2.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.gkehub.v1alpha2.DeleteMembershipRequest() + ); + request.name = ''; + const expectedHeaderRequestParams = 'name='; + const expectedOptions = { + otherArgs: { + headers: { + 'x-goog-request-params': expectedHeaderRequestParams, + }, + }, + }; + const expectedResponse = generateSampleMessage( + new protos.google.longrunning.Operation() + ); + client.innerApiCalls.deleteMembership = + stubLongRunningCall(expectedResponse); + const [operation] = await client.deleteMembership(request); + const [response] = await operation.promise(); + assert.deepStrictEqual(response, expectedResponse); + assert( + (client.innerApiCalls.deleteMembership as SinonStub) + .getCall(0) + .calledWith(request, expectedOptions, undefined) + ); + }); + + it('invokes deleteMembership without error using callback', async () => { + const client = new gkehubModule.v1alpha2.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.gkehub.v1alpha2.DeleteMembershipRequest() + ); + request.name = ''; + const expectedHeaderRequestParams = 'name='; + const expectedOptions = { + otherArgs: { + headers: { + 'x-goog-request-params': expectedHeaderRequestParams, + }, + }, + }; + const expectedResponse = generateSampleMessage( + new protos.google.longrunning.Operation() + ); + client.innerApiCalls.deleteMembership = + stubLongRunningCallWithCallback(expectedResponse); + const promise = new Promise((resolve, reject) => { + client.deleteMembership( + request, + ( + err?: Error | null, + result?: LROperation< + protos.google.protobuf.IEmpty, + protos.google.cloud.gkehub.v1alpha2.IOperationMetadata + > | null + ) => { + if (err) { + reject(err); + } else { + resolve(result); + } + } + ); + }); + const operation = (await promise) as LROperation< + protos.google.protobuf.IEmpty, + protos.google.cloud.gkehub.v1alpha2.IOperationMetadata + >; + const [response] = await operation.promise(); + assert.deepStrictEqual(response, expectedResponse); + assert( + (client.innerApiCalls.deleteMembership as SinonStub) + .getCall(0) + .calledWith(request, expectedOptions /*, callback defined above */) + ); + }); + + it('invokes deleteMembership with call error', async () => { + const client = new gkehubModule.v1alpha2.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.gkehub.v1alpha2.DeleteMembershipRequest() + ); + request.name = ''; + const expectedHeaderRequestParams = 'name='; + const expectedOptions = { + otherArgs: { + headers: { + 'x-goog-request-params': expectedHeaderRequestParams, + }, + }, + }; + const expectedError = new Error('expected'); + client.innerApiCalls.deleteMembership = stubLongRunningCall( + undefined, + expectedError + ); + await assert.rejects(client.deleteMembership(request), expectedError); + assert( + (client.innerApiCalls.deleteMembership as SinonStub) + .getCall(0) + .calledWith(request, expectedOptions, undefined) + ); + }); + + it('invokes deleteMembership with LRO error', async () => { + const client = new gkehubModule.v1alpha2.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.gkehub.v1alpha2.DeleteMembershipRequest() + ); + request.name = ''; + const expectedHeaderRequestParams = 'name='; + const expectedOptions = { + otherArgs: { + headers: { + 'x-goog-request-params': expectedHeaderRequestParams, + }, + }, + }; + const expectedError = new Error('expected'); + client.innerApiCalls.deleteMembership = stubLongRunningCall( + undefined, + undefined, + expectedError + ); + const [operation] = await client.deleteMembership(request); + await assert.rejects(operation.promise(), expectedError); + assert( + (client.innerApiCalls.deleteMembership as SinonStub) + .getCall(0) + .calledWith(request, expectedOptions, undefined) + ); + }); + + it('invokes checkDeleteMembershipProgress without error', async () => { + const client = new gkehubModule.v1alpha2.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + const expectedResponse = generateSampleMessage( + new operationsProtos.google.longrunning.Operation() + ); + expectedResponse.name = 'test'; + expectedResponse.response = {type_url: 'url', value: Buffer.from('')}; + expectedResponse.metadata = {type_url: 'url', value: Buffer.from('')}; + + client.operationsClient.getOperation = stubSimpleCall(expectedResponse); + const decodedOperation = await client.checkDeleteMembershipProgress( + expectedResponse.name + ); + assert.deepStrictEqual(decodedOperation.name, expectedResponse.name); + assert(decodedOperation.metadata); + assert((client.operationsClient.getOperation as SinonStub).getCall(0)); + }); + + it('invokes checkDeleteMembershipProgress with error', async () => { + const client = new gkehubModule.v1alpha2.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + const expectedError = new Error('expected'); + + client.operationsClient.getOperation = stubSimpleCall( + undefined, + expectedError + ); + await assert.rejects( + client.checkDeleteMembershipProgress(''), + expectedError + ); + assert((client.operationsClient.getOperation as SinonStub).getCall(0)); + }); + }); + + describe('updateMembership', () => { + it('invokes updateMembership without error', async () => { + const client = new gkehubModule.v1alpha2.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.gkehub.v1alpha2.UpdateMembershipRequest() + ); + request.name = ''; + const expectedHeaderRequestParams = 'name='; + const expectedOptions = { + otherArgs: { + headers: { + 'x-goog-request-params': expectedHeaderRequestParams, + }, + }, + }; + const expectedResponse = generateSampleMessage( + new protos.google.longrunning.Operation() + ); + client.innerApiCalls.updateMembership = + stubLongRunningCall(expectedResponse); + const [operation] = await client.updateMembership(request); + const [response] = await operation.promise(); + assert.deepStrictEqual(response, expectedResponse); + assert( + (client.innerApiCalls.updateMembership as SinonStub) + .getCall(0) + .calledWith(request, expectedOptions, undefined) + ); + }); + + it('invokes updateMembership without error using callback', async () => { + const client = new gkehubModule.v1alpha2.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.gkehub.v1alpha2.UpdateMembershipRequest() + ); + request.name = ''; + const expectedHeaderRequestParams = 'name='; + const expectedOptions = { + otherArgs: { + headers: { + 'x-goog-request-params': expectedHeaderRequestParams, + }, + }, + }; + const expectedResponse = generateSampleMessage( + new protos.google.longrunning.Operation() + ); + client.innerApiCalls.updateMembership = + stubLongRunningCallWithCallback(expectedResponse); + const promise = new Promise((resolve, reject) => { + client.updateMembership( + request, + ( + err?: Error | null, + result?: LROperation< + protos.google.cloud.gkehub.v1alpha2.IMembership, + protos.google.cloud.gkehub.v1alpha2.IOperationMetadata + > | null + ) => { + if (err) { + reject(err); + } else { + resolve(result); + } + } + ); + }); + const operation = (await promise) as LROperation< + protos.google.cloud.gkehub.v1alpha2.IMembership, + protos.google.cloud.gkehub.v1alpha2.IOperationMetadata + >; + const [response] = await operation.promise(); + assert.deepStrictEqual(response, expectedResponse); + assert( + (client.innerApiCalls.updateMembership as SinonStub) + .getCall(0) + .calledWith(request, expectedOptions /*, callback defined above */) + ); + }); + + it('invokes updateMembership with call error', async () => { + const client = new gkehubModule.v1alpha2.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.gkehub.v1alpha2.UpdateMembershipRequest() + ); + request.name = ''; + const expectedHeaderRequestParams = 'name='; + const expectedOptions = { + otherArgs: { + headers: { + 'x-goog-request-params': expectedHeaderRequestParams, + }, + }, + }; + const expectedError = new Error('expected'); + client.innerApiCalls.updateMembership = stubLongRunningCall( + undefined, + expectedError + ); + await assert.rejects(client.updateMembership(request), expectedError); + assert( + (client.innerApiCalls.updateMembership as SinonStub) + .getCall(0) + .calledWith(request, expectedOptions, undefined) + ); + }); + + it('invokes updateMembership with LRO error', async () => { + const client = new gkehubModule.v1alpha2.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.gkehub.v1alpha2.UpdateMembershipRequest() + ); + request.name = ''; + const expectedHeaderRequestParams = 'name='; + const expectedOptions = { + otherArgs: { + headers: { + 'x-goog-request-params': expectedHeaderRequestParams, + }, + }, + }; + const expectedError = new Error('expected'); + client.innerApiCalls.updateMembership = stubLongRunningCall( + undefined, + undefined, + expectedError + ); + const [operation] = await client.updateMembership(request); + await assert.rejects(operation.promise(), expectedError); + assert( + (client.innerApiCalls.updateMembership as SinonStub) + .getCall(0) + .calledWith(request, expectedOptions, undefined) + ); + }); + + it('invokes checkUpdateMembershipProgress without error', async () => { + const client = new gkehubModule.v1alpha2.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + const expectedResponse = generateSampleMessage( + new operationsProtos.google.longrunning.Operation() + ); + expectedResponse.name = 'test'; + expectedResponse.response = {type_url: 'url', value: Buffer.from('')}; + expectedResponse.metadata = {type_url: 'url', value: Buffer.from('')}; + + client.operationsClient.getOperation = stubSimpleCall(expectedResponse); + const decodedOperation = await client.checkUpdateMembershipProgress( + expectedResponse.name + ); + assert.deepStrictEqual(decodedOperation.name, expectedResponse.name); + assert(decodedOperation.metadata); + assert((client.operationsClient.getOperation as SinonStub).getCall(0)); + }); + + it('invokes checkUpdateMembershipProgress with error', async () => { + const client = new gkehubModule.v1alpha2.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + const expectedError = new Error('expected'); + + client.operationsClient.getOperation = stubSimpleCall( + undefined, + expectedError + ); + await assert.rejects( + client.checkUpdateMembershipProgress(''), + expectedError + ); + assert((client.operationsClient.getOperation as SinonStub).getCall(0)); + }); + }); + + describe('listMemberships', () => { + it('invokes listMemberships without error', async () => { + const client = new gkehubModule.v1alpha2.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.gkehub.v1alpha2.ListMembershipsRequest() + ); + request.parent = ''; + const expectedHeaderRequestParams = 'parent='; + const expectedOptions = { + otherArgs: { + headers: { + 'x-goog-request-params': expectedHeaderRequestParams, + }, + }, + }; + const expectedResponse = [ + generateSampleMessage( + new protos.google.cloud.gkehub.v1alpha2.Membership() + ), + generateSampleMessage( + new protos.google.cloud.gkehub.v1alpha2.Membership() + ), + generateSampleMessage( + new protos.google.cloud.gkehub.v1alpha2.Membership() + ), + ]; + client.innerApiCalls.listMemberships = stubSimpleCall(expectedResponse); + const [response] = await client.listMemberships(request); + assert.deepStrictEqual(response, expectedResponse); + assert( + (client.innerApiCalls.listMemberships as SinonStub) + .getCall(0) + .calledWith(request, expectedOptions, undefined) + ); + }); + + it('invokes listMemberships without error using callback', async () => { + const client = new gkehubModule.v1alpha2.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.gkehub.v1alpha2.ListMembershipsRequest() + ); + request.parent = ''; + const expectedHeaderRequestParams = 'parent='; + const expectedOptions = { + otherArgs: { + headers: { + 'x-goog-request-params': expectedHeaderRequestParams, + }, + }, + }; + const expectedResponse = [ + generateSampleMessage( + new protos.google.cloud.gkehub.v1alpha2.Membership() + ), + generateSampleMessage( + new protos.google.cloud.gkehub.v1alpha2.Membership() + ), + generateSampleMessage( + new protos.google.cloud.gkehub.v1alpha2.Membership() + ), + ]; + client.innerApiCalls.listMemberships = + stubSimpleCallWithCallback(expectedResponse); + const promise = new Promise((resolve, reject) => { + client.listMemberships( + request, + ( + err?: Error | null, + result?: protos.google.cloud.gkehub.v1alpha2.IMembership[] | null + ) => { + if (err) { + reject(err); + } else { + resolve(result); + } + } + ); + }); + const response = await promise; + assert.deepStrictEqual(response, expectedResponse); + assert( + (client.innerApiCalls.listMemberships as SinonStub) + .getCall(0) + .calledWith(request, expectedOptions /*, callback defined above */) + ); + }); + + it('invokes listMemberships with error', async () => { + const client = new gkehubModule.v1alpha2.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.gkehub.v1alpha2.ListMembershipsRequest() + ); + request.parent = ''; + const expectedHeaderRequestParams = 'parent='; + const expectedOptions = { + otherArgs: { + headers: { + 'x-goog-request-params': expectedHeaderRequestParams, + }, + }, + }; + const expectedError = new Error('expected'); + client.innerApiCalls.listMemberships = stubSimpleCall( + undefined, + expectedError + ); + await assert.rejects(client.listMemberships(request), expectedError); + assert( + (client.innerApiCalls.listMemberships as SinonStub) + .getCall(0) + .calledWith(request, expectedOptions, undefined) + ); + }); + + it('invokes listMembershipsStream without error', async () => { + const client = new gkehubModule.v1alpha2.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.gkehub.v1alpha2.ListMembershipsRequest() + ); + request.parent = ''; + const expectedHeaderRequestParams = 'parent='; + const expectedResponse = [ + generateSampleMessage( + new protos.google.cloud.gkehub.v1alpha2.Membership() + ), + generateSampleMessage( + new protos.google.cloud.gkehub.v1alpha2.Membership() + ), + generateSampleMessage( + new protos.google.cloud.gkehub.v1alpha2.Membership() + ), + ]; + client.descriptors.page.listMemberships.createStream = + stubPageStreamingCall(expectedResponse); + const stream = client.listMembershipsStream(request); + const promise = new Promise((resolve, reject) => { + const responses: protos.google.cloud.gkehub.v1alpha2.Membership[] = []; + stream.on( + 'data', + (response: protos.google.cloud.gkehub.v1alpha2.Membership) => { + responses.push(response); + } + ); + stream.on('end', () => { + resolve(responses); + }); + stream.on('error', (err: Error) => { + reject(err); + }); + }); + const responses = await promise; + assert.deepStrictEqual(responses, expectedResponse); + assert( + (client.descriptors.page.listMemberships.createStream as SinonStub) + .getCall(0) + .calledWith(client.innerApiCalls.listMemberships, request) + ); + assert.strictEqual( + ( + client.descriptors.page.listMemberships.createStream as SinonStub + ).getCall(0).args[2].otherArgs.headers['x-goog-request-params'], + expectedHeaderRequestParams + ); + }); + + it('invokes listMembershipsStream with error', async () => { + const client = new gkehubModule.v1alpha2.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.gkehub.v1alpha2.ListMembershipsRequest() + ); + request.parent = ''; + const expectedHeaderRequestParams = 'parent='; + const expectedError = new Error('expected'); + client.descriptors.page.listMemberships.createStream = + stubPageStreamingCall(undefined, expectedError); + const stream = client.listMembershipsStream(request); + const promise = new Promise((resolve, reject) => { + const responses: protos.google.cloud.gkehub.v1alpha2.Membership[] = []; + stream.on( + 'data', + (response: protos.google.cloud.gkehub.v1alpha2.Membership) => { + responses.push(response); + } + ); + stream.on('end', () => { + resolve(responses); + }); + stream.on('error', (err: Error) => { + reject(err); + }); + }); + await assert.rejects(promise, expectedError); + assert( + (client.descriptors.page.listMemberships.createStream as SinonStub) + .getCall(0) + .calledWith(client.innerApiCalls.listMemberships, request) + ); + assert.strictEqual( + ( + client.descriptors.page.listMemberships.createStream as SinonStub + ).getCall(0).args[2].otherArgs.headers['x-goog-request-params'], + expectedHeaderRequestParams + ); + }); + + it('uses async iteration with listMemberships without error', async () => { + const client = new gkehubModule.v1alpha2.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.gkehub.v1alpha2.ListMembershipsRequest() + ); + request.parent = ''; + const expectedHeaderRequestParams = 'parent='; + const expectedResponse = [ + generateSampleMessage( + new protos.google.cloud.gkehub.v1alpha2.Membership() + ), + generateSampleMessage( + new protos.google.cloud.gkehub.v1alpha2.Membership() + ), + generateSampleMessage( + new protos.google.cloud.gkehub.v1alpha2.Membership() + ), + ]; + client.descriptors.page.listMemberships.asyncIterate = + stubAsyncIterationCall(expectedResponse); + const responses: protos.google.cloud.gkehub.v1alpha2.IMembership[] = []; + const iterable = client.listMembershipsAsync(request); + for await (const resource of iterable) { + responses.push(resource!); + } + assert.deepStrictEqual(responses, expectedResponse); + assert.deepStrictEqual( + ( + client.descriptors.page.listMemberships.asyncIterate as SinonStub + ).getCall(0).args[1], + request + ); + assert.strictEqual( + ( + client.descriptors.page.listMemberships.asyncIterate as SinonStub + ).getCall(0).args[2].otherArgs.headers['x-goog-request-params'], + expectedHeaderRequestParams + ); + }); + + it('uses async iteration with listMemberships with error', async () => { + const client = new gkehubModule.v1alpha2.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.gkehub.v1alpha2.ListMembershipsRequest() + ); + request.parent = ''; + const expectedHeaderRequestParams = 'parent='; + const expectedError = new Error('expected'); + client.descriptors.page.listMemberships.asyncIterate = + stubAsyncIterationCall(undefined, expectedError); + const iterable = client.listMembershipsAsync(request); + await assert.rejects(async () => { + const responses: protos.google.cloud.gkehub.v1alpha2.IMembership[] = []; + for await (const resource of iterable) { + responses.push(resource!); + } + }); + assert.deepStrictEqual( + ( + client.descriptors.page.listMemberships.asyncIterate as SinonStub + ).getCall(0).args[1], + request + ); + assert.strictEqual( + ( + client.descriptors.page.listMemberships.asyncIterate as SinonStub + ).getCall(0).args[2].otherArgs.headers['x-goog-request-params'], + expectedHeaderRequestParams + ); + }); + }); + + describe('Path templates', () => { + describe('location', () => { + const fakePath = '/rendered/path/location'; + const expectedParameters = { + project: 'projectValue', + location: 'locationValue', + }; + const client = new gkehubModule.v1alpha2.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + client.pathTemplates.locationPathTemplate.render = sinon + .stub() + .returns(fakePath); + client.pathTemplates.locationPathTemplate.match = sinon + .stub() + .returns(expectedParameters); + + it('locationPath', () => { + const result = client.locationPath('projectValue', 'locationValue'); + assert.strictEqual(result, fakePath); + assert( + (client.pathTemplates.locationPathTemplate.render as SinonStub) + .getCall(-1) + .calledWith(expectedParameters) + ); + }); + + it('matchProjectFromLocationName', () => { + const result = client.matchProjectFromLocationName(fakePath); + assert.strictEqual(result, 'projectValue'); + assert( + (client.pathTemplates.locationPathTemplate.match as SinonStub) + .getCall(-1) + .calledWith(fakePath) + ); + }); + + it('matchLocationFromLocationName', () => { + const result = client.matchLocationFromLocationName(fakePath); + assert.strictEqual(result, 'locationValue'); + assert( + (client.pathTemplates.locationPathTemplate.match as SinonStub) + .getCall(-1) + .calledWith(fakePath) + ); + }); + }); + + describe('membership', () => { + const fakePath = '/rendered/path/membership'; + const expectedParameters = { + project: 'projectValue', + location: 'locationValue', + membership: 'membershipValue', + }; + const client = new gkehubModule.v1alpha2.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + client.pathTemplates.membershipPathTemplate.render = sinon + .stub() + .returns(fakePath); + client.pathTemplates.membershipPathTemplate.match = sinon + .stub() + .returns(expectedParameters); + + it('membershipPath', () => { + const result = client.membershipPath( + 'projectValue', + 'locationValue', + 'membershipValue' + ); + assert.strictEqual(result, fakePath); + assert( + (client.pathTemplates.membershipPathTemplate.render as SinonStub) + .getCall(-1) + .calledWith(expectedParameters) + ); + }); + + it('matchProjectFromMembershipName', () => { + const result = client.matchProjectFromMembershipName(fakePath); + assert.strictEqual(result, 'projectValue'); + assert( + (client.pathTemplates.membershipPathTemplate.match as SinonStub) + .getCall(-1) + .calledWith(fakePath) + ); + }); + + it('matchLocationFromMembershipName', () => { + const result = client.matchLocationFromMembershipName(fakePath); + assert.strictEqual(result, 'locationValue'); + assert( + (client.pathTemplates.membershipPathTemplate.match as SinonStub) + .getCall(-1) + .calledWith(fakePath) + ); + }); + + it('matchMembershipFromMembershipName', () => { + const result = client.matchMembershipFromMembershipName(fakePath); + assert.strictEqual(result, 'membershipValue'); + assert( + (client.pathTemplates.membershipPathTemplate.match as SinonStub) + .getCall(-1) + .calledWith(fakePath) + ); + }); + }); + + describe('project', () => { + const fakePath = '/rendered/path/project'; + const expectedParameters = { + project: 'projectValue', + }; + const client = new gkehubModule.v1alpha2.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + client.pathTemplates.projectPathTemplate.render = sinon + .stub() + .returns(fakePath); + client.pathTemplates.projectPathTemplate.match = sinon + .stub() + .returns(expectedParameters); + + it('projectPath', () => { + const result = client.projectPath('projectValue'); + assert.strictEqual(result, fakePath); + assert( + (client.pathTemplates.projectPathTemplate.render as SinonStub) + .getCall(-1) + .calledWith(expectedParameters) + ); + }); + + it('matchProjectFromProjectName', () => { + const result = client.matchProjectFromProjectName(fakePath); + assert.strictEqual(result, 'projectValue'); + assert( + (client.pathTemplates.projectPathTemplate.match as SinonStub) + .getCall(-1) + .calledWith(fakePath) + ); + }); + }); + }); +}); diff --git a/packages/google-cloud-gkehub/test/gapic_gke_hub_v1beta.ts b/packages/google-cloud-gkehub/test/gapic_gke_hub_v1beta.ts new file mode 100644 index 00000000000..07c34d829fb --- /dev/null +++ b/packages/google-cloud-gkehub/test/gapic_gke_hub_v1beta.ts @@ -0,0 +1,1269 @@ +// 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 +// +// 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. ** + +import * as protos from '../protos/protos'; +import * as assert from 'assert'; +import * as sinon from 'sinon'; +import {SinonStub} from 'sinon'; +import {describe, it} from 'mocha'; +import * as gkehubModule from '../src'; + +import {PassThrough} from 'stream'; + +import {protobuf, LROperation, operationsProtos} from 'google-gax'; + +function generateSampleMessage(instance: T) { + const filledObject = ( + instance.constructor as typeof protobuf.Message + ).toObject(instance as protobuf.Message, {defaults: true}); + return (instance.constructor as typeof protobuf.Message).fromObject( + filledObject + ) as T; +} + +function stubSimpleCall(response?: ResponseType, error?: Error) { + return error + ? sinon.stub().rejects(error) + : sinon.stub().resolves([response]); +} + +function stubSimpleCallWithCallback( + response?: ResponseType, + error?: Error +) { + return error + ? sinon.stub().callsArgWith(2, error) + : sinon.stub().callsArgWith(2, null, response); +} + +function stubLongRunningCall( + response?: ResponseType, + callError?: Error, + lroError?: Error +) { + const innerStub = lroError + ? sinon.stub().rejects(lroError) + : sinon.stub().resolves([response]); + const mockOperation = { + promise: innerStub, + }; + return callError + ? sinon.stub().rejects(callError) + : sinon.stub().resolves([mockOperation]); +} + +function stubLongRunningCallWithCallback( + response?: ResponseType, + callError?: Error, + lroError?: Error +) { + const innerStub = lroError + ? sinon.stub().rejects(lroError) + : sinon.stub().resolves([response]); + const mockOperation = { + promise: innerStub, + }; + return callError + ? sinon.stub().callsArgWith(2, callError) + : sinon.stub().callsArgWith(2, null, mockOperation); +} + +function stubPageStreamingCall( + responses?: ResponseType[], + error?: Error +) { + const pagingStub = sinon.stub(); + if (responses) { + for (let i = 0; i < responses.length; ++i) { + pagingStub.onCall(i).callsArgWith(2, null, responses[i]); + } + } + const transformStub = error + ? sinon.stub().callsArgWith(2, error) + : pagingStub; + const mockStream = new PassThrough({ + objectMode: true, + transform: transformStub, + }); + // trigger as many responses as needed + if (responses) { + for (let i = 0; i < responses.length; ++i) { + setImmediate(() => { + mockStream.write({}); + }); + } + setImmediate(() => { + mockStream.end(); + }); + } else { + setImmediate(() => { + mockStream.write({}); + }); + setImmediate(() => { + mockStream.end(); + }); + } + return sinon.stub().returns(mockStream); +} + +function stubAsyncIterationCall( + responses?: ResponseType[], + error?: Error +) { + let counter = 0; + const asyncIterable = { + [Symbol.asyncIterator]() { + return { + async next() { + if (error) { + return Promise.reject(error); + } + if (counter >= responses!.length) { + return Promise.resolve({done: true, value: undefined}); + } + return Promise.resolve({done: false, value: responses![counter++]}); + }, + }; + }, + }; + return sinon.stub().returns(asyncIterable); +} + +describe('v1beta.GkeHubClient', () => { + it('has servicePath', () => { + const servicePath = gkehubModule.v1beta.GkeHubClient.servicePath; + assert(servicePath); + }); + + it('has apiEndpoint', () => { + const apiEndpoint = gkehubModule.v1beta.GkeHubClient.apiEndpoint; + assert(apiEndpoint); + }); + + it('has port', () => { + const port = gkehubModule.v1beta.GkeHubClient.port; + assert(port); + assert(typeof port === 'number'); + }); + + it('should create a client with no option', () => { + const client = new gkehubModule.v1beta.GkeHubClient(); + assert(client); + }); + + it('should create a client with gRPC fallback', () => { + const client = new gkehubModule.v1beta.GkeHubClient({ + fallback: true, + }); + assert(client); + }); + + it('has initialize method and supports deferred initialization', async () => { + const client = new gkehubModule.v1beta.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + assert.strictEqual(client.gkeHubStub, undefined); + await client.initialize(); + assert(client.gkeHubStub); + }); + + it('has close method', () => { + const client = new gkehubModule.v1beta.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.close(); + }); + + it('has getProjectId method', async () => { + const fakeProjectId = 'fake-project-id'; + const client = new gkehubModule.v1beta.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.auth.getProjectId = sinon.stub().resolves(fakeProjectId); + const result = await client.getProjectId(); + assert.strictEqual(result, fakeProjectId); + assert((client.auth.getProjectId as SinonStub).calledWithExactly()); + }); + + it('has getProjectId method with callback', async () => { + const fakeProjectId = 'fake-project-id'; + const client = new gkehubModule.v1beta.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.auth.getProjectId = sinon + .stub() + .callsArgWith(0, null, fakeProjectId); + const promise = new Promise((resolve, reject) => { + client.getProjectId((err?: Error | null, projectId?: string | null) => { + if (err) { + reject(err); + } else { + resolve(projectId); + } + }); + }); + const result = await promise; + assert.strictEqual(result, fakeProjectId); + }); + + describe('getFeature', () => { + it('invokes getFeature without error', async () => { + const client = new gkehubModule.v1beta.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.gkehub.v1beta.GetFeatureRequest() + ); + request.name = ''; + const expectedHeaderRequestParams = 'name='; + const expectedOptions = { + otherArgs: { + headers: { + 'x-goog-request-params': expectedHeaderRequestParams, + }, + }, + }; + const expectedResponse = generateSampleMessage( + new protos.google.cloud.gkehub.v1beta.Feature() + ); + client.innerApiCalls.getFeature = stubSimpleCall(expectedResponse); + const [response] = await client.getFeature(request); + assert.deepStrictEqual(response, expectedResponse); + assert( + (client.innerApiCalls.getFeature as SinonStub) + .getCall(0) + .calledWith(request, expectedOptions, undefined) + ); + }); + + it('invokes getFeature without error using callback', async () => { + const client = new gkehubModule.v1beta.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.gkehub.v1beta.GetFeatureRequest() + ); + request.name = ''; + const expectedHeaderRequestParams = 'name='; + const expectedOptions = { + otherArgs: { + headers: { + 'x-goog-request-params': expectedHeaderRequestParams, + }, + }, + }; + const expectedResponse = generateSampleMessage( + new protos.google.cloud.gkehub.v1beta.Feature() + ); + client.innerApiCalls.getFeature = + stubSimpleCallWithCallback(expectedResponse); + const promise = new Promise((resolve, reject) => { + client.getFeature( + request, + ( + err?: Error | null, + result?: protos.google.cloud.gkehub.v1beta.IFeature | null + ) => { + if (err) { + reject(err); + } else { + resolve(result); + } + } + ); + }); + const response = await promise; + assert.deepStrictEqual(response, expectedResponse); + assert( + (client.innerApiCalls.getFeature as SinonStub) + .getCall(0) + .calledWith(request, expectedOptions /*, callback defined above */) + ); + }); + + it('invokes getFeature with error', async () => { + const client = new gkehubModule.v1beta.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.gkehub.v1beta.GetFeatureRequest() + ); + request.name = ''; + const expectedHeaderRequestParams = 'name='; + const expectedOptions = { + otherArgs: { + headers: { + 'x-goog-request-params': expectedHeaderRequestParams, + }, + }, + }; + const expectedError = new Error('expected'); + client.innerApiCalls.getFeature = stubSimpleCall( + undefined, + expectedError + ); + await assert.rejects(client.getFeature(request), expectedError); + assert( + (client.innerApiCalls.getFeature as SinonStub) + .getCall(0) + .calledWith(request, expectedOptions, undefined) + ); + }); + }); + + describe('createFeature', () => { + it('invokes createFeature without error', async () => { + const client = new gkehubModule.v1beta.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.gkehub.v1beta.CreateFeatureRequest() + ); + request.parent = ''; + const expectedHeaderRequestParams = 'parent='; + const expectedOptions = { + otherArgs: { + headers: { + 'x-goog-request-params': expectedHeaderRequestParams, + }, + }, + }; + const expectedResponse = generateSampleMessage( + new protos.google.longrunning.Operation() + ); + client.innerApiCalls.createFeature = + stubLongRunningCall(expectedResponse); + const [operation] = await client.createFeature(request); + const [response] = await operation.promise(); + assert.deepStrictEqual(response, expectedResponse); + assert( + (client.innerApiCalls.createFeature as SinonStub) + .getCall(0) + .calledWith(request, expectedOptions, undefined) + ); + }); + + it('invokes createFeature without error using callback', async () => { + const client = new gkehubModule.v1beta.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.gkehub.v1beta.CreateFeatureRequest() + ); + request.parent = ''; + const expectedHeaderRequestParams = 'parent='; + const expectedOptions = { + otherArgs: { + headers: { + 'x-goog-request-params': expectedHeaderRequestParams, + }, + }, + }; + const expectedResponse = generateSampleMessage( + new protos.google.longrunning.Operation() + ); + client.innerApiCalls.createFeature = + stubLongRunningCallWithCallback(expectedResponse); + const promise = new Promise((resolve, reject) => { + client.createFeature( + request, + ( + err?: Error | null, + result?: LROperation< + protos.google.cloud.gkehub.v1beta.IFeature, + protos.google.cloud.gkehub.v1beta.IOperationMetadata + > | null + ) => { + if (err) { + reject(err); + } else { + resolve(result); + } + } + ); + }); + const operation = (await promise) as LROperation< + protos.google.cloud.gkehub.v1beta.IFeature, + protos.google.cloud.gkehub.v1beta.IOperationMetadata + >; + const [response] = await operation.promise(); + assert.deepStrictEqual(response, expectedResponse); + assert( + (client.innerApiCalls.createFeature as SinonStub) + .getCall(0) + .calledWith(request, expectedOptions /*, callback defined above */) + ); + }); + + it('invokes createFeature with call error', async () => { + const client = new gkehubModule.v1beta.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.gkehub.v1beta.CreateFeatureRequest() + ); + request.parent = ''; + const expectedHeaderRequestParams = 'parent='; + const expectedOptions = { + otherArgs: { + headers: { + 'x-goog-request-params': expectedHeaderRequestParams, + }, + }, + }; + const expectedError = new Error('expected'); + client.innerApiCalls.createFeature = stubLongRunningCall( + undefined, + expectedError + ); + await assert.rejects(client.createFeature(request), expectedError); + assert( + (client.innerApiCalls.createFeature as SinonStub) + .getCall(0) + .calledWith(request, expectedOptions, undefined) + ); + }); + + it('invokes createFeature with LRO error', async () => { + const client = new gkehubModule.v1beta.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.gkehub.v1beta.CreateFeatureRequest() + ); + request.parent = ''; + const expectedHeaderRequestParams = 'parent='; + const expectedOptions = { + otherArgs: { + headers: { + 'x-goog-request-params': expectedHeaderRequestParams, + }, + }, + }; + const expectedError = new Error('expected'); + client.innerApiCalls.createFeature = stubLongRunningCall( + undefined, + undefined, + expectedError + ); + const [operation] = await client.createFeature(request); + await assert.rejects(operation.promise(), expectedError); + assert( + (client.innerApiCalls.createFeature as SinonStub) + .getCall(0) + .calledWith(request, expectedOptions, undefined) + ); + }); + + it('invokes checkCreateFeatureProgress without error', async () => { + const client = new gkehubModule.v1beta.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + const expectedResponse = generateSampleMessage( + new operationsProtos.google.longrunning.Operation() + ); + expectedResponse.name = 'test'; + expectedResponse.response = {type_url: 'url', value: Buffer.from('')}; + expectedResponse.metadata = {type_url: 'url', value: Buffer.from('')}; + + client.operationsClient.getOperation = stubSimpleCall(expectedResponse); + const decodedOperation = await client.checkCreateFeatureProgress( + expectedResponse.name + ); + assert.deepStrictEqual(decodedOperation.name, expectedResponse.name); + assert(decodedOperation.metadata); + assert((client.operationsClient.getOperation as SinonStub).getCall(0)); + }); + + it('invokes checkCreateFeatureProgress with error', async () => { + const client = new gkehubModule.v1beta.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + const expectedError = new Error('expected'); + + client.operationsClient.getOperation = stubSimpleCall( + undefined, + expectedError + ); + await assert.rejects( + client.checkCreateFeatureProgress(''), + expectedError + ); + assert((client.operationsClient.getOperation as SinonStub).getCall(0)); + }); + }); + + describe('deleteFeature', () => { + it('invokes deleteFeature without error', async () => { + const client = new gkehubModule.v1beta.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.gkehub.v1beta.DeleteFeatureRequest() + ); + request.name = ''; + const expectedHeaderRequestParams = 'name='; + const expectedOptions = { + otherArgs: { + headers: { + 'x-goog-request-params': expectedHeaderRequestParams, + }, + }, + }; + const expectedResponse = generateSampleMessage( + new protos.google.longrunning.Operation() + ); + client.innerApiCalls.deleteFeature = + stubLongRunningCall(expectedResponse); + const [operation] = await client.deleteFeature(request); + const [response] = await operation.promise(); + assert.deepStrictEqual(response, expectedResponse); + assert( + (client.innerApiCalls.deleteFeature as SinonStub) + .getCall(0) + .calledWith(request, expectedOptions, undefined) + ); + }); + + it('invokes deleteFeature without error using callback', async () => { + const client = new gkehubModule.v1beta.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.gkehub.v1beta.DeleteFeatureRequest() + ); + request.name = ''; + const expectedHeaderRequestParams = 'name='; + const expectedOptions = { + otherArgs: { + headers: { + 'x-goog-request-params': expectedHeaderRequestParams, + }, + }, + }; + const expectedResponse = generateSampleMessage( + new protos.google.longrunning.Operation() + ); + client.innerApiCalls.deleteFeature = + stubLongRunningCallWithCallback(expectedResponse); + const promise = new Promise((resolve, reject) => { + client.deleteFeature( + request, + ( + err?: Error | null, + result?: LROperation< + protos.google.protobuf.IEmpty, + protos.google.cloud.gkehub.v1beta.IOperationMetadata + > | null + ) => { + if (err) { + reject(err); + } else { + resolve(result); + } + } + ); + }); + const operation = (await promise) as LROperation< + protos.google.protobuf.IEmpty, + protos.google.cloud.gkehub.v1beta.IOperationMetadata + >; + const [response] = await operation.promise(); + assert.deepStrictEqual(response, expectedResponse); + assert( + (client.innerApiCalls.deleteFeature as SinonStub) + .getCall(0) + .calledWith(request, expectedOptions /*, callback defined above */) + ); + }); + + it('invokes deleteFeature with call error', async () => { + const client = new gkehubModule.v1beta.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.gkehub.v1beta.DeleteFeatureRequest() + ); + request.name = ''; + const expectedHeaderRequestParams = 'name='; + const expectedOptions = { + otherArgs: { + headers: { + 'x-goog-request-params': expectedHeaderRequestParams, + }, + }, + }; + const expectedError = new Error('expected'); + client.innerApiCalls.deleteFeature = stubLongRunningCall( + undefined, + expectedError + ); + await assert.rejects(client.deleteFeature(request), expectedError); + assert( + (client.innerApiCalls.deleteFeature as SinonStub) + .getCall(0) + .calledWith(request, expectedOptions, undefined) + ); + }); + + it('invokes deleteFeature with LRO error', async () => { + const client = new gkehubModule.v1beta.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.gkehub.v1beta.DeleteFeatureRequest() + ); + request.name = ''; + const expectedHeaderRequestParams = 'name='; + const expectedOptions = { + otherArgs: { + headers: { + 'x-goog-request-params': expectedHeaderRequestParams, + }, + }, + }; + const expectedError = new Error('expected'); + client.innerApiCalls.deleteFeature = stubLongRunningCall( + undefined, + undefined, + expectedError + ); + const [operation] = await client.deleteFeature(request); + await assert.rejects(operation.promise(), expectedError); + assert( + (client.innerApiCalls.deleteFeature as SinonStub) + .getCall(0) + .calledWith(request, expectedOptions, undefined) + ); + }); + + it('invokes checkDeleteFeatureProgress without error', async () => { + const client = new gkehubModule.v1beta.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + const expectedResponse = generateSampleMessage( + new operationsProtos.google.longrunning.Operation() + ); + expectedResponse.name = 'test'; + expectedResponse.response = {type_url: 'url', value: Buffer.from('')}; + expectedResponse.metadata = {type_url: 'url', value: Buffer.from('')}; + + client.operationsClient.getOperation = stubSimpleCall(expectedResponse); + const decodedOperation = await client.checkDeleteFeatureProgress( + expectedResponse.name + ); + assert.deepStrictEqual(decodedOperation.name, expectedResponse.name); + assert(decodedOperation.metadata); + assert((client.operationsClient.getOperation as SinonStub).getCall(0)); + }); + + it('invokes checkDeleteFeatureProgress with error', async () => { + const client = new gkehubModule.v1beta.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + const expectedError = new Error('expected'); + + client.operationsClient.getOperation = stubSimpleCall( + undefined, + expectedError + ); + await assert.rejects( + client.checkDeleteFeatureProgress(''), + expectedError + ); + assert((client.operationsClient.getOperation as SinonStub).getCall(0)); + }); + }); + + describe('updateFeature', () => { + it('invokes updateFeature without error', async () => { + const client = new gkehubModule.v1beta.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.gkehub.v1beta.UpdateFeatureRequest() + ); + request.name = ''; + const expectedHeaderRequestParams = 'name='; + const expectedOptions = { + otherArgs: { + headers: { + 'x-goog-request-params': expectedHeaderRequestParams, + }, + }, + }; + const expectedResponse = generateSampleMessage( + new protos.google.longrunning.Operation() + ); + client.innerApiCalls.updateFeature = + stubLongRunningCall(expectedResponse); + const [operation] = await client.updateFeature(request); + const [response] = await operation.promise(); + assert.deepStrictEqual(response, expectedResponse); + assert( + (client.innerApiCalls.updateFeature as SinonStub) + .getCall(0) + .calledWith(request, expectedOptions, undefined) + ); + }); + + it('invokes updateFeature without error using callback', async () => { + const client = new gkehubModule.v1beta.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.gkehub.v1beta.UpdateFeatureRequest() + ); + request.name = ''; + const expectedHeaderRequestParams = 'name='; + const expectedOptions = { + otherArgs: { + headers: { + 'x-goog-request-params': expectedHeaderRequestParams, + }, + }, + }; + const expectedResponse = generateSampleMessage( + new protos.google.longrunning.Operation() + ); + client.innerApiCalls.updateFeature = + stubLongRunningCallWithCallback(expectedResponse); + const promise = new Promise((resolve, reject) => { + client.updateFeature( + request, + ( + err?: Error | null, + result?: LROperation< + protos.google.cloud.gkehub.v1beta.IFeature, + protos.google.cloud.gkehub.v1beta.IOperationMetadata + > | null + ) => { + if (err) { + reject(err); + } else { + resolve(result); + } + } + ); + }); + const operation = (await promise) as LROperation< + protos.google.cloud.gkehub.v1beta.IFeature, + protos.google.cloud.gkehub.v1beta.IOperationMetadata + >; + const [response] = await operation.promise(); + assert.deepStrictEqual(response, expectedResponse); + assert( + (client.innerApiCalls.updateFeature as SinonStub) + .getCall(0) + .calledWith(request, expectedOptions /*, callback defined above */) + ); + }); + + it('invokes updateFeature with call error', async () => { + const client = new gkehubModule.v1beta.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.gkehub.v1beta.UpdateFeatureRequest() + ); + request.name = ''; + const expectedHeaderRequestParams = 'name='; + const expectedOptions = { + otherArgs: { + headers: { + 'x-goog-request-params': expectedHeaderRequestParams, + }, + }, + }; + const expectedError = new Error('expected'); + client.innerApiCalls.updateFeature = stubLongRunningCall( + undefined, + expectedError + ); + await assert.rejects(client.updateFeature(request), expectedError); + assert( + (client.innerApiCalls.updateFeature as SinonStub) + .getCall(0) + .calledWith(request, expectedOptions, undefined) + ); + }); + + it('invokes updateFeature with LRO error', async () => { + const client = new gkehubModule.v1beta.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.gkehub.v1beta.UpdateFeatureRequest() + ); + request.name = ''; + const expectedHeaderRequestParams = 'name='; + const expectedOptions = { + otherArgs: { + headers: { + 'x-goog-request-params': expectedHeaderRequestParams, + }, + }, + }; + const expectedError = new Error('expected'); + client.innerApiCalls.updateFeature = stubLongRunningCall( + undefined, + undefined, + expectedError + ); + const [operation] = await client.updateFeature(request); + await assert.rejects(operation.promise(), expectedError); + assert( + (client.innerApiCalls.updateFeature as SinonStub) + .getCall(0) + .calledWith(request, expectedOptions, undefined) + ); + }); + + it('invokes checkUpdateFeatureProgress without error', async () => { + const client = new gkehubModule.v1beta.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + const expectedResponse = generateSampleMessage( + new operationsProtos.google.longrunning.Operation() + ); + expectedResponse.name = 'test'; + expectedResponse.response = {type_url: 'url', value: Buffer.from('')}; + expectedResponse.metadata = {type_url: 'url', value: Buffer.from('')}; + + client.operationsClient.getOperation = stubSimpleCall(expectedResponse); + const decodedOperation = await client.checkUpdateFeatureProgress( + expectedResponse.name + ); + assert.deepStrictEqual(decodedOperation.name, expectedResponse.name); + assert(decodedOperation.metadata); + assert((client.operationsClient.getOperation as SinonStub).getCall(0)); + }); + + it('invokes checkUpdateFeatureProgress with error', async () => { + const client = new gkehubModule.v1beta.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + const expectedError = new Error('expected'); + + client.operationsClient.getOperation = stubSimpleCall( + undefined, + expectedError + ); + await assert.rejects( + client.checkUpdateFeatureProgress(''), + expectedError + ); + assert((client.operationsClient.getOperation as SinonStub).getCall(0)); + }); + }); + + describe('listFeatures', () => { + it('invokes listFeatures without error', async () => { + const client = new gkehubModule.v1beta.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.gkehub.v1beta.ListFeaturesRequest() + ); + request.parent = ''; + const expectedHeaderRequestParams = 'parent='; + const expectedOptions = { + otherArgs: { + headers: { + 'x-goog-request-params': expectedHeaderRequestParams, + }, + }, + }; + const expectedResponse = [ + generateSampleMessage(new protos.google.cloud.gkehub.v1beta.Feature()), + generateSampleMessage(new protos.google.cloud.gkehub.v1beta.Feature()), + generateSampleMessage(new protos.google.cloud.gkehub.v1beta.Feature()), + ]; + client.innerApiCalls.listFeatures = stubSimpleCall(expectedResponse); + const [response] = await client.listFeatures(request); + assert.deepStrictEqual(response, expectedResponse); + assert( + (client.innerApiCalls.listFeatures as SinonStub) + .getCall(0) + .calledWith(request, expectedOptions, undefined) + ); + }); + + it('invokes listFeatures without error using callback', async () => { + const client = new gkehubModule.v1beta.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.gkehub.v1beta.ListFeaturesRequest() + ); + request.parent = ''; + const expectedHeaderRequestParams = 'parent='; + const expectedOptions = { + otherArgs: { + headers: { + 'x-goog-request-params': expectedHeaderRequestParams, + }, + }, + }; + const expectedResponse = [ + generateSampleMessage(new protos.google.cloud.gkehub.v1beta.Feature()), + generateSampleMessage(new protos.google.cloud.gkehub.v1beta.Feature()), + generateSampleMessage(new protos.google.cloud.gkehub.v1beta.Feature()), + ]; + client.innerApiCalls.listFeatures = + stubSimpleCallWithCallback(expectedResponse); + const promise = new Promise((resolve, reject) => { + client.listFeatures( + request, + ( + err?: Error | null, + result?: protos.google.cloud.gkehub.v1beta.IFeature[] | null + ) => { + if (err) { + reject(err); + } else { + resolve(result); + } + } + ); + }); + const response = await promise; + assert.deepStrictEqual(response, expectedResponse); + assert( + (client.innerApiCalls.listFeatures as SinonStub) + .getCall(0) + .calledWith(request, expectedOptions /*, callback defined above */) + ); + }); + + it('invokes listFeatures with error', async () => { + const client = new gkehubModule.v1beta.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.gkehub.v1beta.ListFeaturesRequest() + ); + request.parent = ''; + const expectedHeaderRequestParams = 'parent='; + const expectedOptions = { + otherArgs: { + headers: { + 'x-goog-request-params': expectedHeaderRequestParams, + }, + }, + }; + const expectedError = new Error('expected'); + client.innerApiCalls.listFeatures = stubSimpleCall( + undefined, + expectedError + ); + await assert.rejects(client.listFeatures(request), expectedError); + assert( + (client.innerApiCalls.listFeatures as SinonStub) + .getCall(0) + .calledWith(request, expectedOptions, undefined) + ); + }); + + it('invokes listFeaturesStream without error', async () => { + const client = new gkehubModule.v1beta.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.gkehub.v1beta.ListFeaturesRequest() + ); + request.parent = ''; + const expectedHeaderRequestParams = 'parent='; + const expectedResponse = [ + generateSampleMessage(new protos.google.cloud.gkehub.v1beta.Feature()), + generateSampleMessage(new protos.google.cloud.gkehub.v1beta.Feature()), + generateSampleMessage(new protos.google.cloud.gkehub.v1beta.Feature()), + ]; + client.descriptors.page.listFeatures.createStream = + stubPageStreamingCall(expectedResponse); + const stream = client.listFeaturesStream(request); + const promise = new Promise((resolve, reject) => { + const responses: protos.google.cloud.gkehub.v1beta.Feature[] = []; + stream.on( + 'data', + (response: protos.google.cloud.gkehub.v1beta.Feature) => { + responses.push(response); + } + ); + stream.on('end', () => { + resolve(responses); + }); + stream.on('error', (err: Error) => { + reject(err); + }); + }); + const responses = await promise; + assert.deepStrictEqual(responses, expectedResponse); + assert( + (client.descriptors.page.listFeatures.createStream as SinonStub) + .getCall(0) + .calledWith(client.innerApiCalls.listFeatures, request) + ); + assert.strictEqual( + ( + client.descriptors.page.listFeatures.createStream as SinonStub + ).getCall(0).args[2].otherArgs.headers['x-goog-request-params'], + expectedHeaderRequestParams + ); + }); + + it('invokes listFeaturesStream with error', async () => { + const client = new gkehubModule.v1beta.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.gkehub.v1beta.ListFeaturesRequest() + ); + request.parent = ''; + const expectedHeaderRequestParams = 'parent='; + const expectedError = new Error('expected'); + client.descriptors.page.listFeatures.createStream = stubPageStreamingCall( + undefined, + expectedError + ); + const stream = client.listFeaturesStream(request); + const promise = new Promise((resolve, reject) => { + const responses: protos.google.cloud.gkehub.v1beta.Feature[] = []; + stream.on( + 'data', + (response: protos.google.cloud.gkehub.v1beta.Feature) => { + responses.push(response); + } + ); + stream.on('end', () => { + resolve(responses); + }); + stream.on('error', (err: Error) => { + reject(err); + }); + }); + await assert.rejects(promise, expectedError); + assert( + (client.descriptors.page.listFeatures.createStream as SinonStub) + .getCall(0) + .calledWith(client.innerApiCalls.listFeatures, request) + ); + assert.strictEqual( + ( + client.descriptors.page.listFeatures.createStream as SinonStub + ).getCall(0).args[2].otherArgs.headers['x-goog-request-params'], + expectedHeaderRequestParams + ); + }); + + it('uses async iteration with listFeatures without error', async () => { + const client = new gkehubModule.v1beta.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.gkehub.v1beta.ListFeaturesRequest() + ); + request.parent = ''; + const expectedHeaderRequestParams = 'parent='; + const expectedResponse = [ + generateSampleMessage(new protos.google.cloud.gkehub.v1beta.Feature()), + generateSampleMessage(new protos.google.cloud.gkehub.v1beta.Feature()), + generateSampleMessage(new protos.google.cloud.gkehub.v1beta.Feature()), + ]; + client.descriptors.page.listFeatures.asyncIterate = + stubAsyncIterationCall(expectedResponse); + const responses: protos.google.cloud.gkehub.v1beta.IFeature[] = []; + const iterable = client.listFeaturesAsync(request); + for await (const resource of iterable) { + responses.push(resource!); + } + assert.deepStrictEqual(responses, expectedResponse); + assert.deepStrictEqual( + ( + client.descriptors.page.listFeatures.asyncIterate as SinonStub + ).getCall(0).args[1], + request + ); + assert.strictEqual( + ( + client.descriptors.page.listFeatures.asyncIterate as SinonStub + ).getCall(0).args[2].otherArgs.headers['x-goog-request-params'], + expectedHeaderRequestParams + ); + }); + + it('uses async iteration with listFeatures with error', async () => { + const client = new gkehubModule.v1beta.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.gkehub.v1beta.ListFeaturesRequest() + ); + request.parent = ''; + const expectedHeaderRequestParams = 'parent='; + const expectedError = new Error('expected'); + client.descriptors.page.listFeatures.asyncIterate = + stubAsyncIterationCall(undefined, expectedError); + const iterable = client.listFeaturesAsync(request); + await assert.rejects(async () => { + const responses: protos.google.cloud.gkehub.v1beta.IFeature[] = []; + for await (const resource of iterable) { + responses.push(resource!); + } + }); + assert.deepStrictEqual( + ( + client.descriptors.page.listFeatures.asyncIterate as SinonStub + ).getCall(0).args[1], + request + ); + assert.strictEqual( + ( + client.descriptors.page.listFeatures.asyncIterate as SinonStub + ).getCall(0).args[2].otherArgs.headers['x-goog-request-params'], + expectedHeaderRequestParams + ); + }); + }); + + describe('Path templates', () => { + describe('feature', () => { + const fakePath = '/rendered/path/feature'; + const expectedParameters = { + project: 'projectValue', + location: 'locationValue', + feature: 'featureValue', + }; + const client = new gkehubModule.v1beta.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + client.pathTemplates.featurePathTemplate.render = sinon + .stub() + .returns(fakePath); + client.pathTemplates.featurePathTemplate.match = sinon + .stub() + .returns(expectedParameters); + + it('featurePath', () => { + const result = client.featurePath( + 'projectValue', + 'locationValue', + 'featureValue' + ); + assert.strictEqual(result, fakePath); + assert( + (client.pathTemplates.featurePathTemplate.render as SinonStub) + .getCall(-1) + .calledWith(expectedParameters) + ); + }); + + it('matchProjectFromFeatureName', () => { + const result = client.matchProjectFromFeatureName(fakePath); + assert.strictEqual(result, 'projectValue'); + assert( + (client.pathTemplates.featurePathTemplate.match as SinonStub) + .getCall(-1) + .calledWith(fakePath) + ); + }); + + it('matchLocationFromFeatureName', () => { + const result = client.matchLocationFromFeatureName(fakePath); + assert.strictEqual(result, 'locationValue'); + assert( + (client.pathTemplates.featurePathTemplate.match as SinonStub) + .getCall(-1) + .calledWith(fakePath) + ); + }); + + it('matchFeatureFromFeatureName', () => { + const result = client.matchFeatureFromFeatureName(fakePath); + assert.strictEqual(result, 'featureValue'); + assert( + (client.pathTemplates.featurePathTemplate.match as SinonStub) + .getCall(-1) + .calledWith(fakePath) + ); + }); + }); + }); +}); From 372720d1d9600aac94cef56edae455e1ea9099c8 Mon Sep 17 00:00:00 2001 From: "release-please[bot]" <55107282+release-please[bot]@users.noreply.github.com> Date: Wed, 21 Jul 2021 20:24:25 +0000 Subject: [PATCH 33/92] chore: release 1.2.0 (#75) :robot: I have created a release \*beep\* \*boop\* --- ## [1.2.0](https://www.github.com/googleapis/nodejs-gke-hub/compare/v1.1.4...v1.2.0) (2021-07-21) ### Features * added v1alpha messages and client for gkehub ([f781301](https://www.github.com/googleapis/nodejs-gke-hub/commit/f781301f79b5e1fab40d693503dc8e2e452cbde1)) * added v1beta, v1 messages and client for gkehub ([f781301](https://www.github.com/googleapis/nodejs-gke-hub/commit/f781301f79b5e1fab40d693503dc8e2e452cbde1)) ### Bug Fixes * add missing dependency configmanagement.proto ([f781301](https://www.github.com/googleapis/nodejs-gke-hub/commit/f781301f79b5e1fab40d693503dc8e2e452cbde1)) * add missing dependency configmanagement.proto, cloudauditlogging.proto, metering.proto, multiclusteringress.proto, servicemesh.proto to v1alpha client ([#74](https://www.github.com/googleapis/nodejs-gke-hub/issues/74)) ([f781301](https://www.github.com/googleapis/nodejs-gke-hub/commit/f781301f79b5e1fab40d693503dc8e2e452cbde1)) * add missing dependency configmanagement.proto, metering.proto, multiclusteringress.proto to v1beta client ([f781301](https://www.github.com/googleapis/nodejs-gke-hub/commit/f781301f79b5e1fab40d693503dc8e2e452cbde1)) * add missing dependency multiclusteringress https://github.com/googleapis/nodejs-gke-hub/pull/67 ([f781301](https://www.github.com/googleapis/nodejs-gke-hub/commit/f781301f79b5e1fab40d693503dc8e2e452cbde1)) * Updating WORKSPACE files to use the newest version of the Typescript generator ([f781301](https://www.github.com/googleapis/nodejs-gke-hub/commit/f781301f79b5e1fab40d693503dc8e2e452cbde1)) --- This PR was generated with [Release Please](https://github.com/googleapis/release-please). See [documentation](https://github.com/googleapis/release-please#release-please). --- packages/google-cloud-gkehub/CHANGELOG.md | 17 +++++++++++++++++ packages/google-cloud-gkehub/package.json | 2 +- .../google-cloud-gkehub/samples/package.json | 2 +- 3 files changed, 19 insertions(+), 2 deletions(-) diff --git a/packages/google-cloud-gkehub/CHANGELOG.md b/packages/google-cloud-gkehub/CHANGELOG.md index 9b23f9b55f3..7f858da988c 100644 --- a/packages/google-cloud-gkehub/CHANGELOG.md +++ b/packages/google-cloud-gkehub/CHANGELOG.md @@ -1,5 +1,22 @@ # Changelog +## [1.2.0](https://www.github.com/googleapis/nodejs-gke-hub/compare/v1.1.4...v1.2.0) (2021-07-21) + + +### Features + +* added v1alpha messages and client for gkehub ([f781301](https://www.github.com/googleapis/nodejs-gke-hub/commit/f781301f79b5e1fab40d693503dc8e2e452cbde1)) +* added v1beta, v1 messages and client for gkehub ([f781301](https://www.github.com/googleapis/nodejs-gke-hub/commit/f781301f79b5e1fab40d693503dc8e2e452cbde1)) + + +### Bug Fixes + +* add missing dependency configmanagement.proto ([f781301](https://www.github.com/googleapis/nodejs-gke-hub/commit/f781301f79b5e1fab40d693503dc8e2e452cbde1)) +* add missing dependency configmanagement.proto, cloudauditlogging.proto, metering.proto, multiclusteringress.proto, servicemesh.proto to v1alpha client ([#74](https://www.github.com/googleapis/nodejs-gke-hub/issues/74)) ([f781301](https://www.github.com/googleapis/nodejs-gke-hub/commit/f781301f79b5e1fab40d693503dc8e2e452cbde1)) +* add missing dependency configmanagement.proto, metering.proto, multiclusteringress.proto to v1beta client ([f781301](https://www.github.com/googleapis/nodejs-gke-hub/commit/f781301f79b5e1fab40d693503dc8e2e452cbde1)) +* add missing dependency multiclusteringress https://github.com/googleapis/nodejs-gke-hub/pull/67 ([f781301](https://www.github.com/googleapis/nodejs-gke-hub/commit/f781301f79b5e1fab40d693503dc8e2e452cbde1)) +* Updating WORKSPACE files to use the newest version of the Typescript generator ([f781301](https://www.github.com/googleapis/nodejs-gke-hub/commit/f781301f79b5e1fab40d693503dc8e2e452cbde1)) + ### [1.1.4](https://www.github.com/googleapis/nodejs-gke-hub/compare/v1.1.3...v1.1.4) (2021-07-12) diff --git a/packages/google-cloud-gkehub/package.json b/packages/google-cloud-gkehub/package.json index 09d15fe072d..614ad94f254 100644 --- a/packages/google-cloud-gkehub/package.json +++ b/packages/google-cloud-gkehub/package.json @@ -1,6 +1,6 @@ { "name": "@google-cloud/gke-hub", - "version": "1.1.4", + "version": "1.2.0", "description": "Gkehub client for Node.js", "repository": "googleapis/nodejs-gke-hub", "license": "Apache-2.0", diff --git a/packages/google-cloud-gkehub/samples/package.json b/packages/google-cloud-gkehub/samples/package.json index d314502e7d2..4c1a97ffede 100644 --- a/packages/google-cloud-gkehub/samples/package.json +++ b/packages/google-cloud-gkehub/samples/package.json @@ -13,7 +13,7 @@ "test": "c8 mocha --timeout 600000 test/*.js" }, "dependencies": { - "@google-cloud/gke-hub": "^1.1.4" + "@google-cloud/gke-hub": "^1.2.0" }, "devDependencies": { "c8": "^7.1.0", From 22445d52a67f2dfae48f7b93c50618320985ab18 Mon Sep 17 00:00:00 2001 From: "F. Hinkelmann" Date: Wed, 4 Aug 2021 16:02:39 -0400 Subject: [PATCH 34/92] chore(nodejs): update client ref docs link in metadata (#78) --- packages/google-cloud-gkehub/.repo-metadata.json | 2 +- packages/google-cloud-gkehub/README.md | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/google-cloud-gkehub/.repo-metadata.json b/packages/google-cloud-gkehub/.repo-metadata.json index c021a74e49c..40c1a3fc9ce 100644 --- a/packages/google-cloud-gkehub/.repo-metadata.json +++ b/packages/google-cloud-gkehub/.repo-metadata.json @@ -1,5 +1,5 @@ { - "client_documentation": "https://googleapis.dev/nodejs/gke-hub/latest/", + "client_documentation": "https://cloud.google.com/nodejs/docs/reference/gke-hub/latest", "api_id": "gkehub.googleapis.com", "distribution_name": "@google-cloud/gke-hub", "release_level": "BETA", diff --git a/packages/google-cloud-gkehub/README.md b/packages/google-cloud-gkehub/README.md index 6b4c6997747..0acbbfd35d9 100644 --- a/packages/google-cloud-gkehub/README.md +++ b/packages/google-cloud-gkehub/README.md @@ -144,7 +144,7 @@ Apache Version 2.0 See [LICENSE](https://github.com/googleapis/nodejs-gke-hub/blob/master/LICENSE) -[client-docs]: https://googleapis.dev/nodejs/gke-hub/latest/ +[client-docs]: https://cloud.google.com/nodejs/docs/reference/gke-hub/latest [product-docs]: https://cloud.google.com/anthos/gke [shell_img]: https://gstatic.com/cloudssh/images/open-btn.png [projects]: https://console.cloud.google.com/project From bc295f03f72494c301a6d9172e24a144dac5c2b8 Mon Sep 17 00:00:00 2001 From: sofisl <55454395+sofisl@users.noreply.github.com> Date: Sat, 14 Aug 2021 00:31:30 -0700 Subject: [PATCH 35/92] fix(build): migrate to using main branch (#80) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * fix(build): migrate to using main branch * 🦉 Updates from OwlBot See https://github.com/googleapis/repo-automation-bots/blob/main/packages/owl-bot/README.md Co-authored-by: Owl Bot --- packages/google-cloud-gkehub/README.md | 16 ++++++++-------- packages/google-cloud-gkehub/samples/README.md | 2 +- 2 files changed, 9 insertions(+), 9 deletions(-) diff --git a/packages/google-cloud-gkehub/README.md b/packages/google-cloud-gkehub/README.md index 0acbbfd35d9..568d9783c1b 100644 --- a/packages/google-cloud-gkehub/README.md +++ b/packages/google-cloud-gkehub/README.md @@ -6,7 +6,7 @@ [![release level](https://img.shields.io/badge/release%20level-beta-yellow.svg?style=flat)](https://cloud.google.com/terms/launch-stages) [![npm version](https://img.shields.io/npm/v/@google-cloud/gke-hub.svg)](https://www.npmjs.org/package/@google-cloud/gke-hub) -[![codecov](https://img.shields.io/codecov/c/github/googleapis/nodejs-gke-hub/master.svg?style=flat)](https://codecov.io/gh/googleapis/nodejs-gke-hub) +[![codecov](https://img.shields.io/codecov/c/github/googleapis/nodejs-gke-hub/main.svg?style=flat)](https://codecov.io/gh/googleapis/nodejs-gke-hub) @@ -15,7 +15,7 @@ Gkehub client for Node.js A comprehensive list of changes in each version may be found in -[the CHANGELOG](https://github.com/googleapis/nodejs-gke-hub/blob/master/CHANGELOG.md). +[the CHANGELOG](https://github.com/googleapis/nodejs-gke-hub/blob/main/CHANGELOG.md). * [GKE Hub Node.js Client API Reference][client-docs] * [GKE Hub Documentation][product-docs] @@ -83,11 +83,11 @@ listMemberships(); ## Samples -Samples are in the [`samples/`](https://github.com/googleapis/nodejs-gke-hub/tree/master/samples) directory. Each sample's `README.md` has instructions for running its sample. +Samples are in the [`samples/`](https://github.com/googleapis/nodejs-gke-hub/tree/main/samples) directory. Each sample's `README.md` has instructions for running its sample. | Sample | Source Code | Try it | | --------------------------- | --------------------------------- | ------ | -| Quickstart | [source code](https://github.com/googleapis/nodejs-gke-hub/blob/master/samples/quickstart.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/nodejs-gke-hub&page=editor&open_in_editor=samples/quickstart.js,samples/README.md) | +| Quickstart | [source code](https://github.com/googleapis/nodejs-gke-hub/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-gke-hub&page=editor&open_in_editor=samples/quickstart.js,samples/README.md) | @@ -130,19 +130,19 @@ More Information: [Google Cloud Platform Launch Stages][launch_stages] ## Contributing -Contributions welcome! See the [Contributing Guide](https://github.com/googleapis/nodejs-gke-hub/blob/master/CONTRIBUTING.md). +Contributions welcome! See the [Contributing Guide](https://github.com/googleapis/nodejs-gke-hub/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 template in this -[directory](https://github.com/googleapis/synthtool/tree/master/synthtool/gcp/templates/node_library). +to its templates in +[directory](https://github.com/googleapis/synthtool). ## License Apache Version 2.0 -See [LICENSE](https://github.com/googleapis/nodejs-gke-hub/blob/master/LICENSE) +See [LICENSE](https://github.com/googleapis/nodejs-gke-hub/blob/main/LICENSE) [client-docs]: https://cloud.google.com/nodejs/docs/reference/gke-hub/latest [product-docs]: https://cloud.google.com/anthos/gke diff --git a/packages/google-cloud-gkehub/samples/README.md b/packages/google-cloud-gkehub/samples/README.md index 76872531cda..9922b2fa89b 100644 --- a/packages/google-cloud-gkehub/samples/README.md +++ b/packages/google-cloud-gkehub/samples/README.md @@ -31,7 +31,7 @@ Before running the samples, make sure you've followed the steps outlined in ### Quickstart -View the [source code](https://github.com/googleapis/nodejs-gke-hub/blob/master/samples/quickstart.js). +View the [source code](https://github.com/googleapis/nodejs-gke-hub/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-gke-hub&page=editor&open_in_editor=samples/quickstart.js,samples/README.md) From 9e63067422ab3572572149a0c7e855ff6acb56c3 Mon Sep 17 00:00:00 2001 From: "Benjamin E. Coe" Date: Mon, 16 Aug 2021 22:44:29 -0400 Subject: [PATCH 36/92] fix(deps): google-gax v2.24.1 (#82) --- packages/google-cloud-gkehub/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/google-cloud-gkehub/package.json b/packages/google-cloud-gkehub/package.json index 614ad94f254..9888cd8e6c3 100644 --- a/packages/google-cloud-gkehub/package.json +++ b/packages/google-cloud-gkehub/package.json @@ -39,7 +39,7 @@ "prelint": "cd samples; npm link ../; npm i" }, "dependencies": { - "google-gax": "^2.17.1" + "google-gax": "^2.24.1" }, "devDependencies": { "@types/mocha": "^8.0.4", From b87acbbc8feb7a1a39429264bc76f26ffa428ed6 Mon Sep 17 00:00:00 2001 From: "release-please[bot]" <55107282+release-please[bot]@users.noreply.github.com> Date: Tue, 17 Aug 2021 03:18:36 +0000 Subject: [PATCH 37/92] chore: release 1.2.1 (#81) :robot: I have created a release \*beep\* \*boop\* --- ### [1.2.1](https://www.github.com/googleapis/nodejs-gke-hub/compare/v1.2.0...v1.2.1) (2021-08-17) ### Bug Fixes * **build:** migrate to using main branch ([#80](https://www.github.com/googleapis/nodejs-gke-hub/issues/80)) ([d8ceb14](https://www.github.com/googleapis/nodejs-gke-hub/commit/d8ceb140c67f63e203bafa1ed23947e28921f1ed)) * **deps:** google-gax v2.24.1 ([#82](https://www.github.com/googleapis/nodejs-gke-hub/issues/82)) ([53d0fbd](https://www.github.com/googleapis/nodejs-gke-hub/commit/53d0fbd9b39910f6c6082884c7d4414665b9b0a0)) --- This PR was generated with [Release Please](https://github.com/googleapis/release-please). See [documentation](https://github.com/googleapis/release-please#release-please). --- packages/google-cloud-gkehub/CHANGELOG.md | 8 ++++++++ packages/google-cloud-gkehub/package.json | 2 +- packages/google-cloud-gkehub/samples/package.json | 2 +- 3 files changed, 10 insertions(+), 2 deletions(-) diff --git a/packages/google-cloud-gkehub/CHANGELOG.md b/packages/google-cloud-gkehub/CHANGELOG.md index 7f858da988c..fad4595bf7f 100644 --- a/packages/google-cloud-gkehub/CHANGELOG.md +++ b/packages/google-cloud-gkehub/CHANGELOG.md @@ -1,5 +1,13 @@ # Changelog +### [1.2.1](https://www.github.com/googleapis/nodejs-gke-hub/compare/v1.2.0...v1.2.1) (2021-08-17) + + +### Bug Fixes + +* **build:** migrate to using main branch ([#80](https://www.github.com/googleapis/nodejs-gke-hub/issues/80)) ([d8ceb14](https://www.github.com/googleapis/nodejs-gke-hub/commit/d8ceb140c67f63e203bafa1ed23947e28921f1ed)) +* **deps:** google-gax v2.24.1 ([#82](https://www.github.com/googleapis/nodejs-gke-hub/issues/82)) ([53d0fbd](https://www.github.com/googleapis/nodejs-gke-hub/commit/53d0fbd9b39910f6c6082884c7d4414665b9b0a0)) + ## [1.2.0](https://www.github.com/googleapis/nodejs-gke-hub/compare/v1.1.4...v1.2.0) (2021-07-21) diff --git a/packages/google-cloud-gkehub/package.json b/packages/google-cloud-gkehub/package.json index 9888cd8e6c3..52c45cf83ca 100644 --- a/packages/google-cloud-gkehub/package.json +++ b/packages/google-cloud-gkehub/package.json @@ -1,6 +1,6 @@ { "name": "@google-cloud/gke-hub", - "version": "1.2.0", + "version": "1.2.1", "description": "Gkehub client for Node.js", "repository": "googleapis/nodejs-gke-hub", "license": "Apache-2.0", diff --git a/packages/google-cloud-gkehub/samples/package.json b/packages/google-cloud-gkehub/samples/package.json index 4c1a97ffede..e1f5cdb3c61 100644 --- a/packages/google-cloud-gkehub/samples/package.json +++ b/packages/google-cloud-gkehub/samples/package.json @@ -13,7 +13,7 @@ "test": "c8 mocha --timeout 600000 test/*.js" }, "dependencies": { - "@google-cloud/gke-hub": "^1.2.0" + "@google-cloud/gke-hub": "^1.2.1" }, "devDependencies": { "c8": "^7.1.0", From c8f010949f53698d947c9c544319ff65c128ac2a Mon Sep 17 00:00:00 2001 From: "gcf-owl-bot[bot]" <78513119+gcf-owl-bot[bot]@users.noreply.github.com> Date: Mon, 23 Aug 2021 18:20:28 +0000 Subject: [PATCH 38/92] feat: turns on self-signed JWT feature flag (#83) - [ ] Regenerate this pull request now. PiperOrigin-RevId: 392067151 Source-Link: https://github.com/googleapis/googleapis/commit/06345f7b95c4b4a3ffe4303f1f2984ccc304b2e0 Source-Link: https://github.com/googleapis/googleapis-gen/commit/95882b37970e41e4cd51b22fa507cfd46dc7c4b6 --- packages/google-cloud-gkehub/src/v1/gke_hub_client.ts | 7 +++++++ packages/google-cloud-gkehub/src/v1alpha/gke_hub_client.ts | 7 +++++++ .../google-cloud-gkehub/src/v1alpha2/gke_hub_client.ts | 7 +++++++ packages/google-cloud-gkehub/src/v1beta/gke_hub_client.ts | 7 +++++++ .../src/v1beta1/gke_hub_membership_service_client.ts | 7 +++++++ 5 files changed, 35 insertions(+) diff --git a/packages/google-cloud-gkehub/src/v1/gke_hub_client.ts b/packages/google-cloud-gkehub/src/v1/gke_hub_client.ts index 04ded4297bf..bd914e8ae08 100644 --- a/packages/google-cloud-gkehub/src/v1/gke_hub_client.ts +++ b/packages/google-cloud-gkehub/src/v1/gke_hub_client.ts @@ -146,6 +146,12 @@ export class GkeHubClient { // Save the auth object to the client, for use by other methods. this.auth = this._gaxGrpc.auth as gax.GoogleAuth; + // Set useJWTAccessWithScope on the auth object. + this.auth.useJWTAccessWithScope = true; + + // Set defaultServicePath on the auth object. + this.auth.defaultServicePath = staticMembers.servicePath; + // Set the default scopes in auth client if needed. if (servicePath === staticMembers.servicePath) { this.auth.defaultScopes = staticMembers.scopes; @@ -2417,6 +2423,7 @@ export class GkeHubClient { return this.gkeHubStub!.then(stub => { this._terminated = true; stub.close(); + this.operationsClient.close(); }); } return Promise.resolve(); diff --git a/packages/google-cloud-gkehub/src/v1alpha/gke_hub_client.ts b/packages/google-cloud-gkehub/src/v1alpha/gke_hub_client.ts index ee6f742d9b9..2552ef98cf6 100644 --- a/packages/google-cloud-gkehub/src/v1alpha/gke_hub_client.ts +++ b/packages/google-cloud-gkehub/src/v1alpha/gke_hub_client.ts @@ -146,6 +146,12 @@ export class GkeHubClient { // Save the auth object to the client, for use by other methods. this.auth = this._gaxGrpc.auth as gax.GoogleAuth; + // Set useJWTAccessWithScope on the auth object. + this.auth.useJWTAccessWithScope = true; + + // Set defaultServicePath on the auth object. + this.auth.defaultServicePath = staticMembers.servicePath; + // Set the default scopes in auth client if needed. if (servicePath === staticMembers.servicePath) { this.auth.defaultScopes = staticMembers.scopes; @@ -1283,6 +1289,7 @@ export class GkeHubClient { return this.gkeHubStub!.then(stub => { this._terminated = true; stub.close(); + this.operationsClient.close(); }); } return Promise.resolve(); diff --git a/packages/google-cloud-gkehub/src/v1alpha2/gke_hub_client.ts b/packages/google-cloud-gkehub/src/v1alpha2/gke_hub_client.ts index 45e5f09207f..14cd3114b56 100644 --- a/packages/google-cloud-gkehub/src/v1alpha2/gke_hub_client.ts +++ b/packages/google-cloud-gkehub/src/v1alpha2/gke_hub_client.ts @@ -134,6 +134,12 @@ export class GkeHubClient { // Save the auth object to the client, for use by other methods. this.auth = this._gaxGrpc.auth as gax.GoogleAuth; + // Set useJWTAccessWithScope on the auth object. + this.auth.useJWTAccessWithScope = true; + + // Set defaultServicePath on the auth object. + this.auth.defaultServicePath = staticMembers.servicePath; + // Set the default scopes in auth client if needed. if (servicePath === staticMembers.servicePath) { this.auth.defaultScopes = staticMembers.scopes; @@ -1542,6 +1548,7 @@ export class GkeHubClient { return this.gkeHubStub!.then(stub => { this._terminated = true; stub.close(); + this.operationsClient.close(); }); } return Promise.resolve(); diff --git a/packages/google-cloud-gkehub/src/v1beta/gke_hub_client.ts b/packages/google-cloud-gkehub/src/v1beta/gke_hub_client.ts index 7a6487193ab..9059e1f5f25 100644 --- a/packages/google-cloud-gkehub/src/v1beta/gke_hub_client.ts +++ b/packages/google-cloud-gkehub/src/v1beta/gke_hub_client.ts @@ -146,6 +146,12 @@ export class GkeHubClient { // Save the auth object to the client, for use by other methods. this.auth = this._gaxGrpc.auth as gax.GoogleAuth; + // Set useJWTAccessWithScope on the auth object. + this.auth.useJWTAccessWithScope = true; + + // Set defaultServicePath on the auth object. + this.auth.defaultServicePath = staticMembers.servicePath; + // Set the default scopes in auth client if needed. if (servicePath === staticMembers.servicePath) { this.auth.defaultScopes = staticMembers.scopes; @@ -1283,6 +1289,7 @@ export class GkeHubClient { return this.gkeHubStub!.then(stub => { this._terminated = true; stub.close(); + this.operationsClient.close(); }); } return Promise.resolve(); diff --git a/packages/google-cloud-gkehub/src/v1beta1/gke_hub_membership_service_client.ts b/packages/google-cloud-gkehub/src/v1beta1/gke_hub_membership_service_client.ts index ac0ab323037..60964f9d1be 100644 --- a/packages/google-cloud-gkehub/src/v1beta1/gke_hub_membership_service_client.ts +++ b/packages/google-cloud-gkehub/src/v1beta1/gke_hub_membership_service_client.ts @@ -135,6 +135,12 @@ export class GkeHubMembershipServiceClient { // Save the auth object to the client, for use by other methods. this.auth = this._gaxGrpc.auth as gax.GoogleAuth; + // Set useJWTAccessWithScope on the auth object. + this.auth.useJWTAccessWithScope = true; + + // Set defaultServicePath on the auth object. + this.auth.defaultServicePath = staticMembers.servicePath; + // Set the default scopes in auth client if needed. if (servicePath === staticMembers.servicePath) { this.auth.defaultScopes = staticMembers.scopes; @@ -1598,6 +1604,7 @@ export class GkeHubMembershipServiceClient { return this.gkeHubMembershipServiceStub!.then(stub => { this._terminated = true; stub.close(); + this.operationsClient.close(); }); } return Promise.resolve(); From d88cf528d35c8077d2311e6129f72b09e647e7dc Mon Sep 17 00:00:00 2001 From: "release-please[bot]" <55107282+release-please[bot]@users.noreply.github.com> Date: Mon, 23 Aug 2021 18:28:09 +0000 Subject: [PATCH 39/92] chore: release 1.3.0 (#84) :robot: I have created a release \*beep\* \*boop\* --- ## [1.3.0](https://www.github.com/googleapis/nodejs-gke-hub/compare/v1.2.1...v1.3.0) (2021-08-23) ### Features * turns on self-signed JWT feature flag ([#83](https://www.github.com/googleapis/nodejs-gke-hub/issues/83)) ([55e3fe0](https://www.github.com/googleapis/nodejs-gke-hub/commit/55e3fe0271ed7a6b216feeddf507e1bff1164e18)) --- This PR was generated with [Release Please](https://github.com/googleapis/release-please). See [documentation](https://github.com/googleapis/release-please#release-please). --- packages/google-cloud-gkehub/CHANGELOG.md | 7 +++++++ packages/google-cloud-gkehub/package.json | 2 +- packages/google-cloud-gkehub/samples/package.json | 2 +- 3 files changed, 9 insertions(+), 2 deletions(-) diff --git a/packages/google-cloud-gkehub/CHANGELOG.md b/packages/google-cloud-gkehub/CHANGELOG.md index fad4595bf7f..9485f4e2190 100644 --- a/packages/google-cloud-gkehub/CHANGELOG.md +++ b/packages/google-cloud-gkehub/CHANGELOG.md @@ -1,5 +1,12 @@ # Changelog +## [1.3.0](https://www.github.com/googleapis/nodejs-gke-hub/compare/v1.2.1...v1.3.0) (2021-08-23) + + +### Features + +* turns on self-signed JWT feature flag ([#83](https://www.github.com/googleapis/nodejs-gke-hub/issues/83)) ([55e3fe0](https://www.github.com/googleapis/nodejs-gke-hub/commit/55e3fe0271ed7a6b216feeddf507e1bff1164e18)) + ### [1.2.1](https://www.github.com/googleapis/nodejs-gke-hub/compare/v1.2.0...v1.2.1) (2021-08-17) diff --git a/packages/google-cloud-gkehub/package.json b/packages/google-cloud-gkehub/package.json index 52c45cf83ca..58ea9506524 100644 --- a/packages/google-cloud-gkehub/package.json +++ b/packages/google-cloud-gkehub/package.json @@ -1,6 +1,6 @@ { "name": "@google-cloud/gke-hub", - "version": "1.2.1", + "version": "1.3.0", "description": "Gkehub client for Node.js", "repository": "googleapis/nodejs-gke-hub", "license": "Apache-2.0", diff --git a/packages/google-cloud-gkehub/samples/package.json b/packages/google-cloud-gkehub/samples/package.json index e1f5cdb3c61..a081a5471c3 100644 --- a/packages/google-cloud-gkehub/samples/package.json +++ b/packages/google-cloud-gkehub/samples/package.json @@ -13,7 +13,7 @@ "test": "c8 mocha --timeout 600000 test/*.js" }, "dependencies": { - "@google-cloud/gke-hub": "^1.2.1" + "@google-cloud/gke-hub": "^1.3.0" }, "devDependencies": { "c8": "^7.1.0", From e7e142de2378a1aeefc4a798403a02f391668061 Mon Sep 17 00:00:00 2001 From: "gcf-owl-bot[bot]" <78513119+gcf-owl-bot[bot]@users.noreply.github.com> Date: Mon, 30 Aug 2021 17:26:16 +0000 Subject: [PATCH 40/92] feat: Add request_id under `DeleteMembershipRequest` and `UpdateMembershipRequest` (#86) - [ ] Regenerate this pull request now. feat: Add `OnPremCluster` and `MultiCloudCluster` as `GkeCluster` equivalent field fix!: Move `GkeCluster` under oneof PiperOrigin-RevId: 392706843 Source-Link: https://github.com/googleapis/googleapis/commit/8c0e4a368056920eaa1039cd740a637c9d12cccb Source-Link: https://github.com/googleapis/googleapis-gen/commit/7a85d795e0c5edb0ec70b29947f141a774d90ca8 --- .../cloud/gkehub/v1beta1/membership.proto | 125 +++- .../google-cloud-gkehub/protos/protos.d.ts | 237 +++++++ packages/google-cloud-gkehub/protos/protos.js | 634 +++++++++++++++++- .../google-cloud-gkehub/protos/protos.json | 96 ++- .../gke_hub_membership_service_client.ts | 67 +- 5 files changed, 1140 insertions(+), 19 deletions(-) diff --git a/packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1beta1/membership.proto b/packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1beta1/membership.proto index fddf83ca218..80dedcc214d 100644 --- a/packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1beta1/membership.proto +++ b/packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1beta1/membership.proto @@ -32,8 +32,14 @@ option java_package = "com.google.cloud.gkehub.v1beta1"; option php_namespace = "Google\\Cloud\\GkeHub\\V1beta1"; option ruby_package = "Google::Cloud::GkeHub::V1beta1"; -// GKE Hub CRUD API for the Membership resource. -// The Membership service is currently only available in the global location. +// The GKE Hub MembershipService handles the registration of many Kubernetes +// clusters to Google Cloud, represented with the [Membership][google.cloud.gkehub.v1beta1.Membership] resource. +// +// GKE Hub is currently only available in the global region. +// +// **Membership management may be non-trivial:** it is recommended to use one +// of the Google-provided client libraries or tools where possible when working +// with Membership resources. service GkeHubMembershipService { option (google.api.default_host) = "gkehub.googleapis.com"; option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/cloud-platform"; @@ -54,7 +60,11 @@ service GkeHubMembershipService { option (google.api.method_signature) = "name"; } - // Adds a new Membership. + // Creates a new Membership. + // + // **This is currently only supported for GKE clusters on Google Cloud**. + // To register other clusters, follow the instructions at + // https://cloud.google.com/anthos/multicluster-management/connect/registering-a-cluster. rpc CreateMembership(CreateMembershipRequest) returns (google.longrunning.Operation) { option (google.api.http) = { post: "/v1beta1/{parent=projects/*/locations/*}/memberships" @@ -68,6 +78,10 @@ service GkeHubMembershipService { } // Removes a Membership. + // + // **This is currently only supported for GKE clusters on Google Cloud**. + // To unregister other clusters, follow the instructions at + // https://cloud.google.com/anthos/multicluster-management/connect/unregistering-a-cluster. rpc DeleteMembership(DeleteMembershipRequest) returns (google.longrunning.Operation) { option (google.api.http) = { delete: "/v1beta1/{name=projects/*/locations/*/memberships/*}" @@ -93,6 +107,9 @@ service GkeHubMembershipService { } // Generates the manifest for deployment of the GKE connect agent. + // + // **This method is used internally by Google-provided libraries.** + // Most clients should not need to call this method directly. rpc GenerateConnectManifest(GenerateConnectManifestRequest) returns (GenerateConnectManifestResponse) { option (google.api.http) = { get: "/v1beta1/{name=projects/*/locations/*/memberships/*}:generateConnectManifest" @@ -168,9 +185,9 @@ message Membership { // Optional. GCP labels for this membership. map labels = 2 [(google.api.field_behavior) = OPTIONAL]; - // Required. Description of this membership, limited to 63 characters. + // Optional. Description of this membership, limited to 63 characters. // Must match the regex: `[a-zA-Z0-9][a-zA-Z0-9_\-\.\ ]*` - string description = 3 [(google.api.field_behavior) = REQUIRED]; + string description = 3 [(google.api.field_behavior) = OPTIONAL]; // Type of resource represented by this Membership oneof type { @@ -223,8 +240,17 @@ message Membership { // MembershipEndpoint contains information needed to contact a Kubernetes API, // endpoint and any additional Kubernetes metadata. message MembershipEndpoint { - // Optional. GKE-specific information. Only present if this Membership is a GKE cluster. - GkeCluster gke_cluster = 4 [(google.api.field_behavior) = OPTIONAL]; + // Cluster information of the registered cluster. + oneof type { + // Optional. Specific information for a GKE-on-GCP cluster. + GkeCluster gke_cluster = 4 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. Specific information for a GKE On-Prem cluster. + OnPremCluster on_prem_cluster = 7 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. Specific information for a GKE Multi-Cloud cluster. + MultiCloudCluster multi_cloud_cluster = 8 [(google.api.field_behavior) = OPTIONAL]; + } // Output only. Useful Kubernetes-specific metadata. KubernetesMetadata kubernetes_metadata = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; @@ -308,10 +334,46 @@ message ResourceManifest { message GkeCluster { // Immutable. Self-link of the GCP resource for the GKE cluster. For example: // - // > container.googleapis.com/projects/my-project/locations/us-west1-a/clusters/my-cluster + // //container.googleapis.com/projects/my-project/locations/us-west1-a/clusters/my-cluster // // Zonal clusters are also supported. string resource_link = 1 [(google.api.field_behavior) = IMMUTABLE]; + + // Output only. If cluster_missing is set then it denotes that the GKE cluster no longer + // exists in the GKE Control Plane. + bool cluster_missing = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; +} + +// OnPremCluster contains information specific to GKE On-Prem clusters. +message OnPremCluster { + // Immutable. Self-link of the GCP resource for the GKE On-Prem cluster. For example: + // + // //gkeonprem.googleapis.com/projects/my-project/locations/us-west1-a/vmwareClusters/my-cluster + // //gkeonprem.googleapis.com/projects/my-project/locations/us-west1-a/bareMetalClusters/my-cluster + string resource_link = 1 [(google.api.field_behavior) = IMMUTABLE]; + + // Output only. If cluster_missing is set then it denotes that + // API(gkeonprem.googleapis.com) resource for this GKE On-Prem cluster no + // longer exists. + bool cluster_missing = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Immutable. Whether the cluster is an admin cluster. + bool admin_cluster = 3 [(google.api.field_behavior) = IMMUTABLE]; +} + +// MultiCloudCluster contains information specific to GKE Multi-Cloud clusters. +message MultiCloudCluster { + // Immutable. Self-link of the GCP resource for the GKE Multi-Cloud cluster. For + // example: + // + // //gkemulticloud.googleapis.com/projects/my-project/locations/us-west1-a/awsClusters/my-cluster + // //gkemulticloud.googleapis.com/projects/my-project/locations/us-west1-a/azureClusters/my-cluster + string resource_link = 1 [(google.api.field_behavior) = IMMUTABLE]; + + // Output only. If cluster_missing is set then it denotes that + // API(gkemulticloud.googleapis.com) resource for this GKE Multi-Cloud cluster + // no longer exists. + bool cluster_missing = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; } // KubernetesMetadata provides informational metadata for Memberships @@ -494,6 +556,21 @@ message CreateMembershipRequest { // Required. The membership to create. Membership resource = 3 [(google.api.field_behavior) = REQUIRED]; + + // Optional. A request ID to identify requests. Specify a unique request ID + // so that if you must retry your request, the server will know to ignore + // the request if it has already been completed. The server will guarantee + // that for at least 60 minutes after the first request. + // + // For example, consider a situation where you make an initial request and + // the request times out. If you make the request again with the same request + // ID, the server can check if original operation with the same request ID + // was received, and if so, will ignore the second request. This prevents + // clients from accidentally creating duplicate commitments. + // + // The request ID must be a valid UUID with the exception that zero UUID is + // not supported (00000000-0000-0000-0000-000000000000). + string request_id = 4 [(google.api.field_behavior) = OPTIONAL]; } // Request message for `GkeHubMembershipService.DeleteMembership` method. @@ -501,6 +578,21 @@ message DeleteMembershipRequest { // Required. The Membership resource name in the format // `projects/*/locations/*/memberships/*`. string name = 1 [(google.api.field_behavior) = REQUIRED]; + + // Optional. A request ID to identify requests. Specify a unique request ID + // so that if you must retry your request, the server will know to ignore + // the request if it has already been completed. The server will guarantee + // that for at least 60 minutes after the first request. + // + // For example, consider a situation where you make an initial request and + // the request times out. If you make the request again with the same request + // ID, the server can check if original operation with the same request ID + // was received, and if so, will ignore the second request. This prevents + // clients from accidentally creating duplicate commitments. + // + // The request ID must be a valid UUID with the exception that zero UUID is + // not supported (00000000-0000-0000-0000-000000000000). + string request_id = 4 [(google.api.field_behavior) = OPTIONAL]; } // Request message for `GkeHubMembershipService.UpdateMembership` method. @@ -519,7 +611,24 @@ message UpdateMembershipRequest { // If you are updating a map field, set the value of a key to null or empty // string to delete the key from the map. It's not possible to update a key's // value to the empty string. + // If you specify the update_mask to be a special path "*", fully replaces all + // user-modifiable fields to match `resource`. Membership resource = 3 [(google.api.field_behavior) = REQUIRED]; + + // Optional. A request ID to identify requests. Specify a unique request ID + // so that if you must retry your request, the server will know to ignore + // the request if it has already been completed. The server will guarantee + // that for at least 60 minutes after the first request. + // + // For example, consider a situation where you make an initial request and + // the request times out. If you make the request again with the same request + // ID, the server can check if original operation with the same request ID + // was received, and if so, will ignore the second request. This prevents + // clients from accidentally creating duplicate commitments. + // + // The request ID must be a valid UUID with the exception that zero UUID is + // not supported (00000000-0000-0000-0000-000000000000). + string request_id = 4 [(google.api.field_behavior) = OPTIONAL]; } // Request message for `GkeHubMembershipService.GenerateConnectManifest` diff --git a/packages/google-cloud-gkehub/protos/protos.d.ts b/packages/google-cloud-gkehub/protos/protos.d.ts index e4862647b1e..f6ce5380dc2 100644 --- a/packages/google-cloud-gkehub/protos/protos.d.ts +++ b/packages/google-cloud-gkehub/protos/protos.d.ts @@ -21962,6 +21962,12 @@ export namespace google { /** MembershipEndpoint gkeCluster */ gkeCluster?: (google.cloud.gkehub.v1beta1.IGkeCluster|null); + /** MembershipEndpoint onPremCluster */ + onPremCluster?: (google.cloud.gkehub.v1beta1.IOnPremCluster|null); + + /** MembershipEndpoint multiCloudCluster */ + multiCloudCluster?: (google.cloud.gkehub.v1beta1.IMultiCloudCluster|null); + /** MembershipEndpoint kubernetesMetadata */ kubernetesMetadata?: (google.cloud.gkehub.v1beta1.IKubernetesMetadata|null); @@ -21981,12 +21987,21 @@ export namespace google { /** MembershipEndpoint gkeCluster. */ public gkeCluster?: (google.cloud.gkehub.v1beta1.IGkeCluster|null); + /** MembershipEndpoint onPremCluster. */ + public onPremCluster?: (google.cloud.gkehub.v1beta1.IOnPremCluster|null); + + /** MembershipEndpoint multiCloudCluster. */ + public multiCloudCluster?: (google.cloud.gkehub.v1beta1.IMultiCloudCluster|null); + /** MembershipEndpoint kubernetesMetadata. */ public kubernetesMetadata?: (google.cloud.gkehub.v1beta1.IKubernetesMetadata|null); /** MembershipEndpoint kubernetesResource. */ public kubernetesResource?: (google.cloud.gkehub.v1beta1.IKubernetesResource|null); + /** MembershipEndpoint type. */ + public type?: ("gkeCluster"|"onPremCluster"|"multiCloudCluster"); + /** * Creates a new MembershipEndpoint instance using the specified properties. * @param [properties] Properties to set @@ -22363,6 +22378,9 @@ export namespace google { /** GkeCluster resourceLink */ resourceLink?: (string|null); + + /** GkeCluster clusterMissing */ + clusterMissing?: (boolean|null); } /** Represents a GkeCluster. */ @@ -22377,6 +22395,9 @@ export namespace google { /** GkeCluster resourceLink. */ public resourceLink: string; + /** GkeCluster clusterMissing. */ + public clusterMissing: boolean; + /** * Creates a new GkeCluster instance using the specified properties. * @param [properties] Properties to set @@ -22448,6 +22469,204 @@ export namespace google { public toJSON(): { [k: string]: any }; } + /** Properties of an OnPremCluster. */ + interface IOnPremCluster { + + /** OnPremCluster resourceLink */ + resourceLink?: (string|null); + + /** OnPremCluster clusterMissing */ + clusterMissing?: (boolean|null); + + /** OnPremCluster adminCluster */ + adminCluster?: (boolean|null); + } + + /** Represents an OnPremCluster. */ + class OnPremCluster implements IOnPremCluster { + + /** + * Constructs a new OnPremCluster. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.v1beta1.IOnPremCluster); + + /** OnPremCluster resourceLink. */ + public resourceLink: string; + + /** OnPremCluster clusterMissing. */ + public clusterMissing: boolean; + + /** OnPremCluster adminCluster. */ + public adminCluster: boolean; + + /** + * Creates a new OnPremCluster instance using the specified properties. + * @param [properties] Properties to set + * @returns OnPremCluster instance + */ + public static create(properties?: google.cloud.gkehub.v1beta1.IOnPremCluster): google.cloud.gkehub.v1beta1.OnPremCluster; + + /** + * Encodes the specified OnPremCluster message. Does not implicitly {@link google.cloud.gkehub.v1beta1.OnPremCluster.verify|verify} messages. + * @param message OnPremCluster message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.v1beta1.IOnPremCluster, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified OnPremCluster message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta1.OnPremCluster.verify|verify} messages. + * @param message OnPremCluster message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.v1beta1.IOnPremCluster, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes an OnPremCluster message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns OnPremCluster + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.v1beta1.OnPremCluster; + + /** + * Decodes an OnPremCluster message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns OnPremCluster + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.v1beta1.OnPremCluster; + + /** + * Verifies an OnPremCluster message. + * @param message Plain 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 OnPremCluster message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns OnPremCluster + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.v1beta1.OnPremCluster; + + /** + * Creates a plain object from an OnPremCluster message. Also converts values to other types if specified. + * @param message OnPremCluster + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.v1beta1.OnPremCluster, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this OnPremCluster to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + + /** Properties of a MultiCloudCluster. */ + interface IMultiCloudCluster { + + /** MultiCloudCluster resourceLink */ + resourceLink?: (string|null); + + /** MultiCloudCluster clusterMissing */ + clusterMissing?: (boolean|null); + } + + /** Represents a MultiCloudCluster. */ + class MultiCloudCluster implements IMultiCloudCluster { + + /** + * Constructs a new MultiCloudCluster. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.v1beta1.IMultiCloudCluster); + + /** MultiCloudCluster resourceLink. */ + public resourceLink: string; + + /** MultiCloudCluster clusterMissing. */ + public clusterMissing: boolean; + + /** + * Creates a new MultiCloudCluster instance using the specified properties. + * @param [properties] Properties to set + * @returns MultiCloudCluster instance + */ + public static create(properties?: google.cloud.gkehub.v1beta1.IMultiCloudCluster): google.cloud.gkehub.v1beta1.MultiCloudCluster; + + /** + * Encodes the specified MultiCloudCluster message. Does not implicitly {@link google.cloud.gkehub.v1beta1.MultiCloudCluster.verify|verify} messages. + * @param message MultiCloudCluster message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.v1beta1.IMultiCloudCluster, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified MultiCloudCluster message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta1.MultiCloudCluster.verify|verify} messages. + * @param message MultiCloudCluster message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.v1beta1.IMultiCloudCluster, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a MultiCloudCluster message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns MultiCloudCluster + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.v1beta1.MultiCloudCluster; + + /** + * Decodes a MultiCloudCluster message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns MultiCloudCluster + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.v1beta1.MultiCloudCluster; + + /** + * Verifies a MultiCloudCluster message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a MultiCloudCluster message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns MultiCloudCluster + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.v1beta1.MultiCloudCluster; + + /** + * Creates a plain object from a MultiCloudCluster message. Also converts values to other types if specified. + * @param message MultiCloudCluster + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.v1beta1.MultiCloudCluster, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this MultiCloudCluster to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + /** Properties of a KubernetesMetadata. */ interface IKubernetesMetadata { @@ -23108,6 +23327,9 @@ export namespace google { /** CreateMembershipRequest resource */ resource?: (google.cloud.gkehub.v1beta1.IMembership|null); + + /** CreateMembershipRequest requestId */ + requestId?: (string|null); } /** Represents a CreateMembershipRequest. */ @@ -23128,6 +23350,9 @@ export namespace google { /** CreateMembershipRequest resource. */ public resource?: (google.cloud.gkehub.v1beta1.IMembership|null); + /** CreateMembershipRequest requestId. */ + public requestId: string; + /** * Creates a new CreateMembershipRequest instance using the specified properties. * @param [properties] Properties to set @@ -23204,6 +23429,9 @@ export namespace google { /** DeleteMembershipRequest name */ name?: (string|null); + + /** DeleteMembershipRequest requestId */ + requestId?: (string|null); } /** Represents a DeleteMembershipRequest. */ @@ -23218,6 +23446,9 @@ export namespace google { /** DeleteMembershipRequest name. */ public name: string; + /** DeleteMembershipRequest requestId. */ + public requestId: string; + /** * Creates a new DeleteMembershipRequest instance using the specified properties. * @param [properties] Properties to set @@ -23300,6 +23531,9 @@ export namespace google { /** UpdateMembershipRequest resource */ resource?: (google.cloud.gkehub.v1beta1.IMembership|null); + + /** UpdateMembershipRequest requestId */ + requestId?: (string|null); } /** Represents an UpdateMembershipRequest. */ @@ -23320,6 +23554,9 @@ export namespace google { /** UpdateMembershipRequest resource. */ public resource?: (google.cloud.gkehub.v1beta1.IMembership|null); + /** UpdateMembershipRequest requestId. */ + public requestId: string; + /** * Creates a new UpdateMembershipRequest instance using the specified properties. * @param [properties] Properties to set diff --git a/packages/google-cloud-gkehub/protos/protos.js b/packages/google-cloud-gkehub/protos/protos.js index 95e14892e06..2ddb5ff0713 100644 --- a/packages/google-cloud-gkehub/protos/protos.js +++ b/packages/google-cloud-gkehub/protos/protos.js @@ -54933,6 +54933,8 @@ * @memberof google.cloud.gkehub.v1beta1 * @interface IMembershipEndpoint * @property {google.cloud.gkehub.v1beta1.IGkeCluster|null} [gkeCluster] MembershipEndpoint gkeCluster + * @property {google.cloud.gkehub.v1beta1.IOnPremCluster|null} [onPremCluster] MembershipEndpoint onPremCluster + * @property {google.cloud.gkehub.v1beta1.IMultiCloudCluster|null} [multiCloudCluster] MembershipEndpoint multiCloudCluster * @property {google.cloud.gkehub.v1beta1.IKubernetesMetadata|null} [kubernetesMetadata] MembershipEndpoint kubernetesMetadata * @property {google.cloud.gkehub.v1beta1.IKubernetesResource|null} [kubernetesResource] MembershipEndpoint kubernetesResource */ @@ -54960,6 +54962,22 @@ */ MembershipEndpoint.prototype.gkeCluster = null; + /** + * MembershipEndpoint onPremCluster. + * @member {google.cloud.gkehub.v1beta1.IOnPremCluster|null|undefined} onPremCluster + * @memberof google.cloud.gkehub.v1beta1.MembershipEndpoint + * @instance + */ + MembershipEndpoint.prototype.onPremCluster = null; + + /** + * MembershipEndpoint multiCloudCluster. + * @member {google.cloud.gkehub.v1beta1.IMultiCloudCluster|null|undefined} multiCloudCluster + * @memberof google.cloud.gkehub.v1beta1.MembershipEndpoint + * @instance + */ + MembershipEndpoint.prototype.multiCloudCluster = null; + /** * MembershipEndpoint kubernetesMetadata. * @member {google.cloud.gkehub.v1beta1.IKubernetesMetadata|null|undefined} kubernetesMetadata @@ -54976,6 +54994,20 @@ */ MembershipEndpoint.prototype.kubernetesResource = null; + // OneOf field names bound to virtual getters and setters + var $oneOfFields; + + /** + * MembershipEndpoint type. + * @member {"gkeCluster"|"onPremCluster"|"multiCloudCluster"|undefined} type + * @memberof google.cloud.gkehub.v1beta1.MembershipEndpoint + * @instance + */ + Object.defineProperty(MembershipEndpoint.prototype, "type", { + get: $util.oneOfGetter($oneOfFields = ["gkeCluster", "onPremCluster", "multiCloudCluster"]), + set: $util.oneOfSetter($oneOfFields) + }); + /** * Creates a new MembershipEndpoint instance using the specified properties. * @function create @@ -55006,6 +55038,10 @@ $root.google.cloud.gkehub.v1beta1.KubernetesMetadata.encode(message.kubernetesMetadata, writer.uint32(/* id 5, wireType 2 =*/42).fork()).ldelim(); if (message.kubernetesResource != null && Object.hasOwnProperty.call(message, "kubernetesResource")) $root.google.cloud.gkehub.v1beta1.KubernetesResource.encode(message.kubernetesResource, writer.uint32(/* id 6, wireType 2 =*/50).fork()).ldelim(); + if (message.onPremCluster != null && Object.hasOwnProperty.call(message, "onPremCluster")) + $root.google.cloud.gkehub.v1beta1.OnPremCluster.encode(message.onPremCluster, writer.uint32(/* id 7, wireType 2 =*/58).fork()).ldelim(); + if (message.multiCloudCluster != null && Object.hasOwnProperty.call(message, "multiCloudCluster")) + $root.google.cloud.gkehub.v1beta1.MultiCloudCluster.encode(message.multiCloudCluster, writer.uint32(/* id 8, wireType 2 =*/66).fork()).ldelim(); return writer; }; @@ -55043,6 +55079,12 @@ case 4: message.gkeCluster = $root.google.cloud.gkehub.v1beta1.GkeCluster.decode(reader, reader.uint32()); break; + case 7: + message.onPremCluster = $root.google.cloud.gkehub.v1beta1.OnPremCluster.decode(reader, reader.uint32()); + break; + case 8: + message.multiCloudCluster = $root.google.cloud.gkehub.v1beta1.MultiCloudCluster.decode(reader, reader.uint32()); + break; case 5: message.kubernetesMetadata = $root.google.cloud.gkehub.v1beta1.KubernetesMetadata.decode(reader, reader.uint32()); break; @@ -55084,10 +55126,34 @@ MembershipEndpoint.verify = function verify(message) { if (typeof message !== "object" || message === null) return "object expected"; + var properties = {}; if (message.gkeCluster != null && message.hasOwnProperty("gkeCluster")) { - var error = $root.google.cloud.gkehub.v1beta1.GkeCluster.verify(message.gkeCluster); - if (error) - return "gkeCluster." + error; + properties.type = 1; + { + var error = $root.google.cloud.gkehub.v1beta1.GkeCluster.verify(message.gkeCluster); + if (error) + return "gkeCluster." + error; + } + } + if (message.onPremCluster != null && message.hasOwnProperty("onPremCluster")) { + if (properties.type === 1) + return "type: multiple values"; + properties.type = 1; + { + var error = $root.google.cloud.gkehub.v1beta1.OnPremCluster.verify(message.onPremCluster); + if (error) + return "onPremCluster." + error; + } + } + if (message.multiCloudCluster != null && message.hasOwnProperty("multiCloudCluster")) { + if (properties.type === 1) + return "type: multiple values"; + properties.type = 1; + { + var error = $root.google.cloud.gkehub.v1beta1.MultiCloudCluster.verify(message.multiCloudCluster); + if (error) + return "multiCloudCluster." + error; + } } if (message.kubernetesMetadata != null && message.hasOwnProperty("kubernetesMetadata")) { var error = $root.google.cloud.gkehub.v1beta1.KubernetesMetadata.verify(message.kubernetesMetadata); @@ -55119,6 +55185,16 @@ throw TypeError(".google.cloud.gkehub.v1beta1.MembershipEndpoint.gkeCluster: object expected"); message.gkeCluster = $root.google.cloud.gkehub.v1beta1.GkeCluster.fromObject(object.gkeCluster); } + if (object.onPremCluster != null) { + if (typeof object.onPremCluster !== "object") + throw TypeError(".google.cloud.gkehub.v1beta1.MembershipEndpoint.onPremCluster: object expected"); + message.onPremCluster = $root.google.cloud.gkehub.v1beta1.OnPremCluster.fromObject(object.onPremCluster); + } + if (object.multiCloudCluster != null) { + if (typeof object.multiCloudCluster !== "object") + throw TypeError(".google.cloud.gkehub.v1beta1.MembershipEndpoint.multiCloudCluster: object expected"); + message.multiCloudCluster = $root.google.cloud.gkehub.v1beta1.MultiCloudCluster.fromObject(object.multiCloudCluster); + } if (object.kubernetesMetadata != null) { if (typeof object.kubernetesMetadata !== "object") throw TypeError(".google.cloud.gkehub.v1beta1.MembershipEndpoint.kubernetesMetadata: object expected"); @@ -55146,16 +55222,28 @@ options = {}; var object = {}; if (options.defaults) { - object.gkeCluster = null; object.kubernetesMetadata = null; object.kubernetesResource = null; } - if (message.gkeCluster != null && message.hasOwnProperty("gkeCluster")) + if (message.gkeCluster != null && message.hasOwnProperty("gkeCluster")) { object.gkeCluster = $root.google.cloud.gkehub.v1beta1.GkeCluster.toObject(message.gkeCluster, options); + if (options.oneofs) + object.type = "gkeCluster"; + } if (message.kubernetesMetadata != null && message.hasOwnProperty("kubernetesMetadata")) object.kubernetesMetadata = $root.google.cloud.gkehub.v1beta1.KubernetesMetadata.toObject(message.kubernetesMetadata, options); if (message.kubernetesResource != null && message.hasOwnProperty("kubernetesResource")) object.kubernetesResource = $root.google.cloud.gkehub.v1beta1.KubernetesResource.toObject(message.kubernetesResource, options); + if (message.onPremCluster != null && message.hasOwnProperty("onPremCluster")) { + object.onPremCluster = $root.google.cloud.gkehub.v1beta1.OnPremCluster.toObject(message.onPremCluster, options); + if (options.oneofs) + object.type = "onPremCluster"; + } + if (message.multiCloudCluster != null && message.hasOwnProperty("multiCloudCluster")) { + object.multiCloudCluster = $root.google.cloud.gkehub.v1beta1.MultiCloudCluster.toObject(message.multiCloudCluster, options); + if (options.oneofs) + object.type = "multiCloudCluster"; + } return object; }; @@ -55903,6 +55991,7 @@ * @memberof google.cloud.gkehub.v1beta1 * @interface IGkeCluster * @property {string|null} [resourceLink] GkeCluster resourceLink + * @property {boolean|null} [clusterMissing] GkeCluster clusterMissing */ /** @@ -55928,6 +56017,14 @@ */ GkeCluster.prototype.resourceLink = ""; + /** + * GkeCluster clusterMissing. + * @member {boolean} clusterMissing + * @memberof google.cloud.gkehub.v1beta1.GkeCluster + * @instance + */ + GkeCluster.prototype.clusterMissing = false; + /** * Creates a new GkeCluster instance using the specified properties. * @function create @@ -55954,6 +56051,8 @@ writer = $Writer.create(); if (message.resourceLink != null && Object.hasOwnProperty.call(message, "resourceLink")) writer.uint32(/* id 1, wireType 2 =*/10).string(message.resourceLink); + if (message.clusterMissing != null && Object.hasOwnProperty.call(message, "clusterMissing")) + writer.uint32(/* id 3, wireType 0 =*/24).bool(message.clusterMissing); return writer; }; @@ -55991,6 +56090,9 @@ case 1: message.resourceLink = reader.string(); break; + case 3: + message.clusterMissing = reader.bool(); + break; default: reader.skipType(tag & 7); break; @@ -56029,6 +56131,9 @@ if (message.resourceLink != null && message.hasOwnProperty("resourceLink")) if (!$util.isString(message.resourceLink)) return "resourceLink: string expected"; + if (message.clusterMissing != null && message.hasOwnProperty("clusterMissing")) + if (typeof message.clusterMissing !== "boolean") + return "clusterMissing: boolean expected"; return null; }; @@ -56046,6 +56151,8 @@ var message = new $root.google.cloud.gkehub.v1beta1.GkeCluster(); if (object.resourceLink != null) message.resourceLink = String(object.resourceLink); + if (object.clusterMissing != null) + message.clusterMissing = Boolean(object.clusterMissing); return message; }; @@ -56062,10 +56169,14 @@ if (!options) options = {}; var object = {}; - if (options.defaults) + if (options.defaults) { object.resourceLink = ""; + object.clusterMissing = false; + } if (message.resourceLink != null && message.hasOwnProperty("resourceLink")) object.resourceLink = message.resourceLink; + if (message.clusterMissing != null && message.hasOwnProperty("clusterMissing")) + object.clusterMissing = message.clusterMissing; return object; }; @@ -56083,6 +56194,448 @@ return GkeCluster; })(); + v1beta1.OnPremCluster = (function() { + + /** + * Properties of an OnPremCluster. + * @memberof google.cloud.gkehub.v1beta1 + * @interface IOnPremCluster + * @property {string|null} [resourceLink] OnPremCluster resourceLink + * @property {boolean|null} [clusterMissing] OnPremCluster clusterMissing + * @property {boolean|null} [adminCluster] OnPremCluster adminCluster + */ + + /** + * Constructs a new OnPremCluster. + * @memberof google.cloud.gkehub.v1beta1 + * @classdesc Represents an OnPremCluster. + * @implements IOnPremCluster + * @constructor + * @param {google.cloud.gkehub.v1beta1.IOnPremCluster=} [properties] Properties to set + */ + function OnPremCluster(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]]; + } + + /** + * OnPremCluster resourceLink. + * @member {string} resourceLink + * @memberof google.cloud.gkehub.v1beta1.OnPremCluster + * @instance + */ + OnPremCluster.prototype.resourceLink = ""; + + /** + * OnPremCluster clusterMissing. + * @member {boolean} clusterMissing + * @memberof google.cloud.gkehub.v1beta1.OnPremCluster + * @instance + */ + OnPremCluster.prototype.clusterMissing = false; + + /** + * OnPremCluster adminCluster. + * @member {boolean} adminCluster + * @memberof google.cloud.gkehub.v1beta1.OnPremCluster + * @instance + */ + OnPremCluster.prototype.adminCluster = false; + + /** + * Creates a new OnPremCluster instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.v1beta1.OnPremCluster + * @static + * @param {google.cloud.gkehub.v1beta1.IOnPremCluster=} [properties] Properties to set + * @returns {google.cloud.gkehub.v1beta1.OnPremCluster} OnPremCluster instance + */ + OnPremCluster.create = function create(properties) { + return new OnPremCluster(properties); + }; + + /** + * Encodes the specified OnPremCluster message. Does not implicitly {@link google.cloud.gkehub.v1beta1.OnPremCluster.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.v1beta1.OnPremCluster + * @static + * @param {google.cloud.gkehub.v1beta1.IOnPremCluster} message OnPremCluster message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + OnPremCluster.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.resourceLink != null && Object.hasOwnProperty.call(message, "resourceLink")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.resourceLink); + if (message.clusterMissing != null && Object.hasOwnProperty.call(message, "clusterMissing")) + writer.uint32(/* id 2, wireType 0 =*/16).bool(message.clusterMissing); + if (message.adminCluster != null && Object.hasOwnProperty.call(message, "adminCluster")) + writer.uint32(/* id 3, wireType 0 =*/24).bool(message.adminCluster); + return writer; + }; + + /** + * Encodes the specified OnPremCluster message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta1.OnPremCluster.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.v1beta1.OnPremCluster + * @static + * @param {google.cloud.gkehub.v1beta1.IOnPremCluster} message OnPremCluster message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + OnPremCluster.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes an OnPremCluster message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.v1beta1.OnPremCluster + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.v1beta1.OnPremCluster} OnPremCluster + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + OnPremCluster.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.v1beta1.OnPremCluster(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.resourceLink = reader.string(); + break; + case 2: + message.clusterMissing = reader.bool(); + break; + case 3: + message.adminCluster = reader.bool(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes an OnPremCluster message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.v1beta1.OnPremCluster + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.v1beta1.OnPremCluster} OnPremCluster + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + OnPremCluster.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies an OnPremCluster message. + * @function verify + * @memberof google.cloud.gkehub.v1beta1.OnPremCluster + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + OnPremCluster.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.resourceLink != null && message.hasOwnProperty("resourceLink")) + if (!$util.isString(message.resourceLink)) + return "resourceLink: string expected"; + if (message.clusterMissing != null && message.hasOwnProperty("clusterMissing")) + if (typeof message.clusterMissing !== "boolean") + return "clusterMissing: boolean expected"; + if (message.adminCluster != null && message.hasOwnProperty("adminCluster")) + if (typeof message.adminCluster !== "boolean") + return "adminCluster: boolean expected"; + return null; + }; + + /** + * Creates an OnPremCluster message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.v1beta1.OnPremCluster + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.v1beta1.OnPremCluster} OnPremCluster + */ + OnPremCluster.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.v1beta1.OnPremCluster) + return object; + var message = new $root.google.cloud.gkehub.v1beta1.OnPremCluster(); + if (object.resourceLink != null) + message.resourceLink = String(object.resourceLink); + if (object.clusterMissing != null) + message.clusterMissing = Boolean(object.clusterMissing); + if (object.adminCluster != null) + message.adminCluster = Boolean(object.adminCluster); + return message; + }; + + /** + * Creates a plain object from an OnPremCluster message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.v1beta1.OnPremCluster + * @static + * @param {google.cloud.gkehub.v1beta1.OnPremCluster} message OnPremCluster + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + OnPremCluster.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.resourceLink = ""; + object.clusterMissing = false; + object.adminCluster = false; + } + if (message.resourceLink != null && message.hasOwnProperty("resourceLink")) + object.resourceLink = message.resourceLink; + if (message.clusterMissing != null && message.hasOwnProperty("clusterMissing")) + object.clusterMissing = message.clusterMissing; + if (message.adminCluster != null && message.hasOwnProperty("adminCluster")) + object.adminCluster = message.adminCluster; + return object; + }; + + /** + * Converts this OnPremCluster to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.v1beta1.OnPremCluster + * @instance + * @returns {Object.} JSON object + */ + OnPremCluster.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return OnPremCluster; + })(); + + v1beta1.MultiCloudCluster = (function() { + + /** + * Properties of a MultiCloudCluster. + * @memberof google.cloud.gkehub.v1beta1 + * @interface IMultiCloudCluster + * @property {string|null} [resourceLink] MultiCloudCluster resourceLink + * @property {boolean|null} [clusterMissing] MultiCloudCluster clusterMissing + */ + + /** + * Constructs a new MultiCloudCluster. + * @memberof google.cloud.gkehub.v1beta1 + * @classdesc Represents a MultiCloudCluster. + * @implements IMultiCloudCluster + * @constructor + * @param {google.cloud.gkehub.v1beta1.IMultiCloudCluster=} [properties] Properties to set + */ + function MultiCloudCluster(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]]; + } + + /** + * MultiCloudCluster resourceLink. + * @member {string} resourceLink + * @memberof google.cloud.gkehub.v1beta1.MultiCloudCluster + * @instance + */ + MultiCloudCluster.prototype.resourceLink = ""; + + /** + * MultiCloudCluster clusterMissing. + * @member {boolean} clusterMissing + * @memberof google.cloud.gkehub.v1beta1.MultiCloudCluster + * @instance + */ + MultiCloudCluster.prototype.clusterMissing = false; + + /** + * Creates a new MultiCloudCluster instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.v1beta1.MultiCloudCluster + * @static + * @param {google.cloud.gkehub.v1beta1.IMultiCloudCluster=} [properties] Properties to set + * @returns {google.cloud.gkehub.v1beta1.MultiCloudCluster} MultiCloudCluster instance + */ + MultiCloudCluster.create = function create(properties) { + return new MultiCloudCluster(properties); + }; + + /** + * Encodes the specified MultiCloudCluster message. Does not implicitly {@link google.cloud.gkehub.v1beta1.MultiCloudCluster.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.v1beta1.MultiCloudCluster + * @static + * @param {google.cloud.gkehub.v1beta1.IMultiCloudCluster} message MultiCloudCluster message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + MultiCloudCluster.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.resourceLink != null && Object.hasOwnProperty.call(message, "resourceLink")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.resourceLink); + if (message.clusterMissing != null && Object.hasOwnProperty.call(message, "clusterMissing")) + writer.uint32(/* id 2, wireType 0 =*/16).bool(message.clusterMissing); + return writer; + }; + + /** + * Encodes the specified MultiCloudCluster message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta1.MultiCloudCluster.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.v1beta1.MultiCloudCluster + * @static + * @param {google.cloud.gkehub.v1beta1.IMultiCloudCluster} message MultiCloudCluster message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + MultiCloudCluster.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a MultiCloudCluster message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.v1beta1.MultiCloudCluster + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.v1beta1.MultiCloudCluster} MultiCloudCluster + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + MultiCloudCluster.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.v1beta1.MultiCloudCluster(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.resourceLink = reader.string(); + break; + case 2: + message.clusterMissing = reader.bool(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a MultiCloudCluster message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.v1beta1.MultiCloudCluster + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.v1beta1.MultiCloudCluster} MultiCloudCluster + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + MultiCloudCluster.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a MultiCloudCluster message. + * @function verify + * @memberof google.cloud.gkehub.v1beta1.MultiCloudCluster + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + MultiCloudCluster.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.resourceLink != null && message.hasOwnProperty("resourceLink")) + if (!$util.isString(message.resourceLink)) + return "resourceLink: string expected"; + if (message.clusterMissing != null && message.hasOwnProperty("clusterMissing")) + if (typeof message.clusterMissing !== "boolean") + return "clusterMissing: boolean expected"; + return null; + }; + + /** + * Creates a MultiCloudCluster message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.v1beta1.MultiCloudCluster + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.v1beta1.MultiCloudCluster} MultiCloudCluster + */ + MultiCloudCluster.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.v1beta1.MultiCloudCluster) + return object; + var message = new $root.google.cloud.gkehub.v1beta1.MultiCloudCluster(); + if (object.resourceLink != null) + message.resourceLink = String(object.resourceLink); + if (object.clusterMissing != null) + message.clusterMissing = Boolean(object.clusterMissing); + return message; + }; + + /** + * Creates a plain object from a MultiCloudCluster message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.v1beta1.MultiCloudCluster + * @static + * @param {google.cloud.gkehub.v1beta1.MultiCloudCluster} message MultiCloudCluster + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + MultiCloudCluster.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.resourceLink = ""; + object.clusterMissing = false; + } + if (message.resourceLink != null && message.hasOwnProperty("resourceLink")) + object.resourceLink = message.resourceLink; + if (message.clusterMissing != null && message.hasOwnProperty("clusterMissing")) + object.clusterMissing = message.clusterMissing; + return object; + }; + + /** + * Converts this MultiCloudCluster to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.v1beta1.MultiCloudCluster + * @instance + * @returns {Object.} JSON object + */ + MultiCloudCluster.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return MultiCloudCluster; + })(); + v1beta1.KubernetesMetadata = (function() { /** @@ -57683,6 +58236,7 @@ * @property {string|null} [parent] CreateMembershipRequest parent * @property {string|null} [membershipId] CreateMembershipRequest membershipId * @property {google.cloud.gkehub.v1beta1.IMembership|null} [resource] CreateMembershipRequest resource + * @property {string|null} [requestId] CreateMembershipRequest requestId */ /** @@ -57724,6 +58278,14 @@ */ CreateMembershipRequest.prototype.resource = null; + /** + * CreateMembershipRequest requestId. + * @member {string} requestId + * @memberof google.cloud.gkehub.v1beta1.CreateMembershipRequest + * @instance + */ + CreateMembershipRequest.prototype.requestId = ""; + /** * Creates a new CreateMembershipRequest instance using the specified properties. * @function create @@ -57754,6 +58316,8 @@ writer.uint32(/* id 2, wireType 2 =*/18).string(message.membershipId); if (message.resource != null && Object.hasOwnProperty.call(message, "resource")) $root.google.cloud.gkehub.v1beta1.Membership.encode(message.resource, writer.uint32(/* id 3, wireType 2 =*/26).fork()).ldelim(); + if (message.requestId != null && Object.hasOwnProperty.call(message, "requestId")) + writer.uint32(/* id 4, wireType 2 =*/34).string(message.requestId); return writer; }; @@ -57797,6 +58361,9 @@ case 3: message.resource = $root.google.cloud.gkehub.v1beta1.Membership.decode(reader, reader.uint32()); break; + case 4: + message.requestId = reader.string(); + break; default: reader.skipType(tag & 7); break; @@ -57843,6 +58410,9 @@ if (error) return "resource." + error; } + if (message.requestId != null && message.hasOwnProperty("requestId")) + if (!$util.isString(message.requestId)) + return "requestId: string expected"; return null; }; @@ -57867,6 +58437,8 @@ throw TypeError(".google.cloud.gkehub.v1beta1.CreateMembershipRequest.resource: object expected"); message.resource = $root.google.cloud.gkehub.v1beta1.Membership.fromObject(object.resource); } + if (object.requestId != null) + message.requestId = String(object.requestId); return message; }; @@ -57887,6 +58459,7 @@ object.parent = ""; object.membershipId = ""; object.resource = null; + object.requestId = ""; } if (message.parent != null && message.hasOwnProperty("parent")) object.parent = message.parent; @@ -57894,6 +58467,8 @@ object.membershipId = message.membershipId; if (message.resource != null && message.hasOwnProperty("resource")) object.resource = $root.google.cloud.gkehub.v1beta1.Membership.toObject(message.resource, options); + if (message.requestId != null && message.hasOwnProperty("requestId")) + object.requestId = message.requestId; return object; }; @@ -57918,6 +58493,7 @@ * @memberof google.cloud.gkehub.v1beta1 * @interface IDeleteMembershipRequest * @property {string|null} [name] DeleteMembershipRequest name + * @property {string|null} [requestId] DeleteMembershipRequest requestId */ /** @@ -57943,6 +58519,14 @@ */ DeleteMembershipRequest.prototype.name = ""; + /** + * DeleteMembershipRequest requestId. + * @member {string} requestId + * @memberof google.cloud.gkehub.v1beta1.DeleteMembershipRequest + * @instance + */ + DeleteMembershipRequest.prototype.requestId = ""; + /** * Creates a new DeleteMembershipRequest instance using the specified properties. * @function create @@ -57969,6 +58553,8 @@ writer = $Writer.create(); if (message.name != null && Object.hasOwnProperty.call(message, "name")) writer.uint32(/* id 1, wireType 2 =*/10).string(message.name); + if (message.requestId != null && Object.hasOwnProperty.call(message, "requestId")) + writer.uint32(/* id 4, wireType 2 =*/34).string(message.requestId); return writer; }; @@ -58006,6 +58592,9 @@ case 1: message.name = reader.string(); break; + case 4: + message.requestId = reader.string(); + break; default: reader.skipType(tag & 7); break; @@ -58044,6 +58633,9 @@ if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; + if (message.requestId != null && message.hasOwnProperty("requestId")) + if (!$util.isString(message.requestId)) + return "requestId: string expected"; return null; }; @@ -58061,6 +58653,8 @@ var message = new $root.google.cloud.gkehub.v1beta1.DeleteMembershipRequest(); if (object.name != null) message.name = String(object.name); + if (object.requestId != null) + message.requestId = String(object.requestId); return message; }; @@ -58077,10 +58671,14 @@ if (!options) options = {}; var object = {}; - if (options.defaults) + if (options.defaults) { object.name = ""; + object.requestId = ""; + } if (message.name != null && message.hasOwnProperty("name")) object.name = message.name; + if (message.requestId != null && message.hasOwnProperty("requestId")) + object.requestId = message.requestId; return object; }; @@ -58107,6 +58705,7 @@ * @property {string|null} [name] UpdateMembershipRequest name * @property {google.protobuf.IFieldMask|null} [updateMask] UpdateMembershipRequest updateMask * @property {google.cloud.gkehub.v1beta1.IMembership|null} [resource] UpdateMembershipRequest resource + * @property {string|null} [requestId] UpdateMembershipRequest requestId */ /** @@ -58148,6 +58747,14 @@ */ UpdateMembershipRequest.prototype.resource = null; + /** + * UpdateMembershipRequest requestId. + * @member {string} requestId + * @memberof google.cloud.gkehub.v1beta1.UpdateMembershipRequest + * @instance + */ + UpdateMembershipRequest.prototype.requestId = ""; + /** * Creates a new UpdateMembershipRequest instance using the specified properties. * @function create @@ -58178,6 +58785,8 @@ $root.google.protobuf.FieldMask.encode(message.updateMask, writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim(); if (message.resource != null && Object.hasOwnProperty.call(message, "resource")) $root.google.cloud.gkehub.v1beta1.Membership.encode(message.resource, writer.uint32(/* id 3, wireType 2 =*/26).fork()).ldelim(); + if (message.requestId != null && Object.hasOwnProperty.call(message, "requestId")) + writer.uint32(/* id 4, wireType 2 =*/34).string(message.requestId); return writer; }; @@ -58221,6 +58830,9 @@ case 3: message.resource = $root.google.cloud.gkehub.v1beta1.Membership.decode(reader, reader.uint32()); break; + case 4: + message.requestId = reader.string(); + break; default: reader.skipType(tag & 7); break; @@ -58269,6 +58881,9 @@ if (error) return "resource." + error; } + if (message.requestId != null && message.hasOwnProperty("requestId")) + if (!$util.isString(message.requestId)) + return "requestId: string expected"; return null; }; @@ -58296,6 +58911,8 @@ throw TypeError(".google.cloud.gkehub.v1beta1.UpdateMembershipRequest.resource: object expected"); message.resource = $root.google.cloud.gkehub.v1beta1.Membership.fromObject(object.resource); } + if (object.requestId != null) + message.requestId = String(object.requestId); return message; }; @@ -58316,6 +58933,7 @@ object.name = ""; object.updateMask = null; object.resource = null; + object.requestId = ""; } if (message.name != null && message.hasOwnProperty("name")) object.name = message.name; @@ -58323,6 +58941,8 @@ object.updateMask = $root.google.protobuf.FieldMask.toObject(message.updateMask, options); if (message.resource != null && message.hasOwnProperty("resource")) object.resource = $root.google.cloud.gkehub.v1beta1.Membership.toObject(message.resource, options); + if (message.requestId != null && message.hasOwnProperty("requestId")) + object.requestId = message.requestId; return object; }; diff --git a/packages/google-cloud-gkehub/protos/protos.json b/packages/google-cloud-gkehub/protos/protos.json index f6778d08ce3..0649c23320e 100644 --- a/packages/google-cloud-gkehub/protos/protos.json +++ b/packages/google-cloud-gkehub/protos/protos.json @@ -5793,7 +5793,7 @@ "type": "string", "id": 3, "options": { - "(google.api.field_behavior)": "REQUIRED" + "(google.api.field_behavior)": "OPTIONAL" } }, "endpoint": { @@ -5878,6 +5878,15 @@ } }, "MembershipEndpoint": { + "oneofs": { + "type": { + "oneof": [ + "gkeCluster", + "onPremCluster", + "multiCloudCluster" + ] + } + }, "fields": { "gkeCluster": { "type": "GkeCluster", @@ -5886,6 +5895,20 @@ "(google.api.field_behavior)": "OPTIONAL" } }, + "onPremCluster": { + "type": "OnPremCluster", + "id": 7, + "options": { + "(google.api.field_behavior)": "OPTIONAL" + } + }, + "multiCloudCluster": { + "type": "MultiCloudCluster", + "id": 8, + "options": { + "(google.api.field_behavior)": "OPTIONAL" + } + }, "kubernetesMetadata": { "type": "KubernetesMetadata", "id": 5, @@ -5974,6 +5997,56 @@ "options": { "(google.api.field_behavior)": "IMMUTABLE" } + }, + "clusterMissing": { + "type": "bool", + "id": 3, + "options": { + "(google.api.field_behavior)": "OUTPUT_ONLY" + } + } + } + }, + "OnPremCluster": { + "fields": { + "resourceLink": { + "type": "string", + "id": 1, + "options": { + "(google.api.field_behavior)": "IMMUTABLE" + } + }, + "clusterMissing": { + "type": "bool", + "id": 2, + "options": { + "(google.api.field_behavior)": "OUTPUT_ONLY" + } + }, + "adminCluster": { + "type": "bool", + "id": 3, + "options": { + "(google.api.field_behavior)": "IMMUTABLE" + } + } + } + }, + "MultiCloudCluster": { + "fields": { + "resourceLink": { + "type": "string", + "id": 1, + "options": { + "(google.api.field_behavior)": "IMMUTABLE" + } + }, + "clusterMissing": { + "type": "bool", + "id": 2, + "options": { + "(google.api.field_behavior)": "OUTPUT_ONLY" + } } } }, @@ -6182,6 +6255,13 @@ "options": { "(google.api.field_behavior)": "REQUIRED" } + }, + "requestId": { + "type": "string", + "id": 4, + "options": { + "(google.api.field_behavior)": "OPTIONAL" + } } } }, @@ -6193,6 +6273,13 @@ "options": { "(google.api.field_behavior)": "REQUIRED" } + }, + "requestId": { + "type": "string", + "id": 4, + "options": { + "(google.api.field_behavior)": "OPTIONAL" + } } } }, @@ -6218,6 +6305,13 @@ "options": { "(google.api.field_behavior)": "REQUIRED" } + }, + "requestId": { + "type": "string", + "id": 4, + "options": { + "(google.api.field_behavior)": "OPTIONAL" + } } } }, diff --git a/packages/google-cloud-gkehub/src/v1beta1/gke_hub_membership_service_client.ts b/packages/google-cloud-gkehub/src/v1beta1/gke_hub_membership_service_client.ts index 60964f9d1be..193332b7b25 100644 --- a/packages/google-cloud-gkehub/src/v1beta1/gke_hub_membership_service_client.ts +++ b/packages/google-cloud-gkehub/src/v1beta1/gke_hub_membership_service_client.ts @@ -42,8 +42,14 @@ import {operationsProtos} from 'google-gax'; const version = require('../../../package.json').version; /** - * GKE Hub CRUD API for the Membership resource. - * The Membership service is currently only available in the global location. + * The GKE Hub MembershipService handles the registration of many Kubernetes + * clusters to Google Cloud, represented with the {@link google.cloud.gkehub.v1beta1.Membership|Membership} resource. + * + * GKE Hub is currently only available in the global region. + * + * **Membership management may be non-trivial:** it is recommended to use one + * of the Google-provided client libraries or tools where possible when working + * with Membership resources. * @class * @memberof v1beta1 */ @@ -506,6 +512,9 @@ export class GkeHubMembershipServiceClient { /** * Generates the manifest for deployment of the GKE connect agent. * + * **This method is used internally by Google-provided libraries.** + * Most clients should not need to call this method directly. + * * @param {Object} request * The request object that will be sent. * @param {string} request.name @@ -847,7 +856,11 @@ export class GkeHubMembershipServiceClient { > ): void; /** - * Adds a new Membership. + * Creates a new Membership. + * + * **This is currently only supported for GKE clusters on Google Cloud**. + * To register other clusters, follow the instructions at + * https://cloud.google.com/anthos/multicluster-management/connect/registering-a-cluster. * * @param {Object} request * The request object that will be sent. @@ -866,6 +879,20 @@ export class GkeHubMembershipServiceClient { * with a maximum length of 63 characters. * @param {google.cloud.gkehub.v1beta1.Membership} request.resource * Required. The membership to create. + * @param {string} [request.requestId] + * Optional. A request ID to identify requests. Specify a unique request ID + * so that if you must retry your request, the server will know to ignore + * the request if it has already been completed. The server will guarantee + * that for at least 60 minutes after the first request. + * + * For example, consider a situation where you make an initial request and + * the request times out. If you make the request again with the same request + * ID, the server can check if original operation with the same request ID + * was received, and if so, will ignore the second request. This prevents + * clients from accidentally creating duplicate commitments. + * + * The request ID must be a valid UUID with the exception that zero UUID is + * not supported (00000000-0000-0000-0000-000000000000). * @param {object} [options] * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. * @returns {Promise} - The promise which resolves to an array. @@ -1003,11 +1030,29 @@ export class GkeHubMembershipServiceClient { /** * Removes a Membership. * + * **This is currently only supported for GKE clusters on Google Cloud**. + * To unregister other clusters, follow the instructions at + * https://cloud.google.com/anthos/multicluster-management/connect/unregistering-a-cluster. + * * @param {Object} request * The request object that will be sent. * @param {string} request.name * Required. The Membership resource name in the format * `projects/* /locations/* /memberships/*`. + * @param {string} [request.requestId] + * Optional. A request ID to identify requests. Specify a unique request ID + * so that if you must retry your request, the server will know to ignore + * the request if it has already been completed. The server will guarantee + * that for at least 60 minutes after the first request. + * + * For example, consider a situation where you make an initial request and + * the request times out. If you make the request again with the same request + * ID, the server can check if original operation with the same request ID + * was received, and if so, will ignore the second request. This prevents + * clients from accidentally creating duplicate commitments. + * + * The request ID must be a valid UUID with the exception that zero UUID is + * not supported (00000000-0000-0000-0000-000000000000). * @param {object} [options] * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. * @returns {Promise} - The promise which resolves to an array. @@ -1160,6 +1205,22 @@ export class GkeHubMembershipServiceClient { * If you are updating a map field, set the value of a key to null or empty * string to delete the key from the map. It's not possible to update a key's * value to the empty string. + * If you specify the update_mask to be a special path "*", fully replaces all + * user-modifiable fields to match `resource`. + * @param {string} [request.requestId] + * Optional. A request ID to identify requests. Specify a unique request ID + * so that if you must retry your request, the server will know to ignore + * the request if it has already been completed. The server will guarantee + * that for at least 60 minutes after the first request. + * + * For example, consider a situation where you make an initial request and + * the request times out. If you make the request again with the same request + * ID, the server can check if original operation with the same request ID + * was received, and if so, will ignore the second request. This prevents + * clients from accidentally creating duplicate commitments. + * + * The request ID must be a valid UUID with the exception that zero UUID is + * not supported (00000000-0000-0000-0000-000000000000). * @param {object} [options] * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. * @returns {Promise} - The promise which resolves to an array. From 1a6354afaa5f3f4295905c32d11c30086c2a3369 Mon Sep 17 00:00:00 2001 From: "gcf-owl-bot[bot]" <78513119+gcf-owl-bot[bot]@users.noreply.github.com> Date: Tue, 31 Aug 2021 17:46:11 +0000 Subject: [PATCH 41/92] feat: Add `OnPremCluster` and `MultiCloudCluster` as `GkeCluster` equivalent field (#91) - [ ] Regenerate this pull request now. feat!: Move `GkeCluster` under oneof PiperOrigin-RevId: 393865355 Source-Link: https://github.com/googleapis/googleapis/commit/fbae10c8f7c9c6414af52f6499ffcc94e1170678 Source-Link: https://github.com/googleapis/googleapis-gen/commit/cdd72be20399367f7f86df2ce3dec3afa2bc8f64 --- .../cloud/gkehub/v1alpha2/membership.proto | 74 ++- .../google-cloud-gkehub/protos/protos.d.ts | 219 +++++++ packages/google-cloud-gkehub/protos/protos.js | 565 +++++++++++++++++- .../google-cloud-gkehub/protos/protos.json | 73 +++ .../src/v1alpha2/gke_hub_client.ts | 25 +- 5 files changed, 942 insertions(+), 14 deletions(-) diff --git a/packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1alpha2/membership.proto b/packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1alpha2/membership.proto index f157b373d5c..00bf8ef3d4d 100644 --- a/packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1alpha2/membership.proto +++ b/packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1alpha2/membership.proto @@ -32,8 +32,14 @@ option java_package = "com.google.cloud.gkehub.v1alpha2"; option php_namespace = "Google\\Cloud\\GkeHub\\V1alpha2"; option ruby_package = "Google::Cloud::GkeHub::V1alpha2"; -// GKE Hub CRUD API for the Membership resource. -// The Membership service is currently only available in the global location. +// The GKE Hub service handles the registration of many Kubernetes +// clusters to Google Cloud, represented with the [Membership][google.cloud.gkehub.v1alpha2.Membership] resource. +// +// GKE Hub is currently only available in the global region. +// +// **Membership management may be non-trivial:** it is recommended to use one +// of the Google-provided client libraries or tools where possible when working +// with Membership resources. service GkeHub { option (google.api.default_host) = "gkehub.googleapis.com"; option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/cloud-platform"; @@ -54,7 +60,11 @@ service GkeHub { option (google.api.method_signature) = "name"; } - // Adds a new Membership. + // Creates a new Membership. + // + // **This is currently only supported for GKE clusters on Google Cloud**. + // To register other clusters, follow the instructions at + // https://cloud.google.com/anthos/multicluster-management/connect/registering-a-cluster. rpc CreateMembership(CreateMembershipRequest) returns (google.longrunning.Operation) { option (google.api.http) = { post: "/v1alpha2/{parent=projects/*/locations/*}/memberships" @@ -68,6 +78,10 @@ service GkeHub { } // Removes a Membership. + // + // **This is currently only supported for GKE clusters on Google Cloud**. + // To unregister other clusters, follow the instructions at + // https://cloud.google.com/anthos/multicluster-management/connect/unregistering-a-cluster. rpc DeleteMembership(DeleteMembershipRequest) returns (google.longrunning.Operation) { option (google.api.http) = { delete: "/v1alpha2/{name=projects/*/locations/*/memberships/*}" @@ -93,6 +107,9 @@ service GkeHub { } // Generates the manifest for deployment of the GKE connect agent. + // + // **This method is used internally by Google-provided libraries.** + // Most clients should not need to call this method directly. rpc GenerateConnectManifest(GenerateConnectManifestRequest) returns (GenerateConnectManifestResponse) { option (google.api.http) = { get: "/v1alpha2/{name=projects/*/locations/*/memberships/*}:generateConnectManifest" @@ -214,8 +231,17 @@ message Membership { // MembershipEndpoint contains information needed to contact a Kubernetes API, // endpoint and any additional Kubernetes metadata. message MembershipEndpoint { - // Optional. GKE-specific information. Only present if this Membership is a GKE cluster. - GkeCluster gke_cluster = 1 [(google.api.field_behavior) = OPTIONAL]; + // Cluster information of the registered cluster. + oneof type { + // Optional. Specific information for a GKE-on-GCP cluster. + GkeCluster gke_cluster = 1 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. Specific information for a GKE On-Prem cluster. + OnPremCluster on_prem_cluster = 4 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. Specific information for a GKE Multi-Cloud cluster. + MultiCloudCluster multi_cloud_cluster = 5 [(google.api.field_behavior) = OPTIONAL]; + } // Output only. Useful Kubernetes-specific metadata. KubernetesMetadata kubernetes_metadata = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; @@ -289,6 +315,42 @@ message GkeCluster { // // Zonal clusters are also supported. string resource_link = 1 [(google.api.field_behavior) = IMMUTABLE]; + + // Output only. If cluster_missing is set then it denotes that the GKE cluster no longer + // exists in the GKE Control Plane. + bool cluster_missing = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; +} + +// OnPremCluster contains information specific to GKE On-Prem clusters. +message OnPremCluster { + // Immutable. Self-link of the GCP resource for the GKE On-Prem cluster. For example: + // + // //gkeonprem.googleapis.com/projects/my-project/locations/us-west1-a/vmwareClusters/my-cluster + // //gkeonprem.googleapis.com/projects/my-project/locations/us-west1-a/bareMetalClusters/my-cluster + string resource_link = 1 [(google.api.field_behavior) = IMMUTABLE]; + + // Output only. If cluster_missing is set then it denotes that + // API(gkeonprem.googleapis.com) resource for this GKE On-Prem cluster no + // longer exists. + bool cluster_missing = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Immutable. Whether the cluster is an admin cluster. + bool admin_cluster = 3 [(google.api.field_behavior) = IMMUTABLE]; +} + +// MultiCloudCluster contains information specific to GKE Multi-Cloud clusters. +message MultiCloudCluster { + // Immutable. Self-link of the GCP resource for the GKE Multi-Cloud cluster. For + // example: + // + // //gkemulticloud.googleapis.com/projects/my-project/locations/us-west1-a/awsClusters/my-cluster + // //gkemulticloud.googleapis.com/projects/my-project/locations/us-west1-a/azureClusters/my-cluster + string resource_link = 1 [(google.api.field_behavior) = IMMUTABLE]; + + // Output only. If cluster_missing is set then it denotes that + // API(gkemulticloud.googleapis.com) resource for this GKE Multi-Cloud cluster + // no longer exists. + bool cluster_missing = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; } // KubernetesMetadata provides informational metadata for Memberships @@ -511,6 +573,8 @@ message UpdateMembershipRequest { // If you are updating a map field, set the value of a key to null or empty // string to delete the key from the map. It's not possible to update a key's // value to the empty string. + // If you specify the update_mask to be a special path "*", fully replaces all + // user-modifiable fields to match `resource`. Membership resource = 3 [(google.api.field_behavior) = REQUIRED]; } diff --git a/packages/google-cloud-gkehub/protos/protos.d.ts b/packages/google-cloud-gkehub/protos/protos.d.ts index f6ce5380dc2..9d24310c595 100644 --- a/packages/google-cloud-gkehub/protos/protos.d.ts +++ b/packages/google-cloud-gkehub/protos/protos.d.ts @@ -17830,6 +17830,12 @@ export namespace google { /** MembershipEndpoint gkeCluster */ gkeCluster?: (google.cloud.gkehub.v1alpha2.IGkeCluster|null); + /** MembershipEndpoint onPremCluster */ + onPremCluster?: (google.cloud.gkehub.v1alpha2.IOnPremCluster|null); + + /** MembershipEndpoint multiCloudCluster */ + multiCloudCluster?: (google.cloud.gkehub.v1alpha2.IMultiCloudCluster|null); + /** MembershipEndpoint kubernetesMetadata */ kubernetesMetadata?: (google.cloud.gkehub.v1alpha2.IKubernetesMetadata|null); @@ -17849,12 +17855,21 @@ export namespace google { /** MembershipEndpoint gkeCluster. */ public gkeCluster?: (google.cloud.gkehub.v1alpha2.IGkeCluster|null); + /** MembershipEndpoint onPremCluster. */ + public onPremCluster?: (google.cloud.gkehub.v1alpha2.IOnPremCluster|null); + + /** MembershipEndpoint multiCloudCluster. */ + public multiCloudCluster?: (google.cloud.gkehub.v1alpha2.IMultiCloudCluster|null); + /** MembershipEndpoint kubernetesMetadata. */ public kubernetesMetadata?: (google.cloud.gkehub.v1alpha2.IKubernetesMetadata|null); /** MembershipEndpoint kubernetesResource. */ public kubernetesResource?: (google.cloud.gkehub.v1alpha2.IKubernetesResource|null); + /** MembershipEndpoint type. */ + public type?: ("gkeCluster"|"onPremCluster"|"multiCloudCluster"); + /** * Creates a new MembershipEndpoint instance using the specified properties. * @param [properties] Properties to set @@ -18135,6 +18150,9 @@ export namespace google { /** GkeCluster resourceLink */ resourceLink?: (string|null); + + /** GkeCluster clusterMissing */ + clusterMissing?: (boolean|null); } /** Represents a GkeCluster. */ @@ -18149,6 +18167,9 @@ export namespace google { /** GkeCluster resourceLink. */ public resourceLink: string; + /** GkeCluster clusterMissing. */ + public clusterMissing: boolean; + /** * Creates a new GkeCluster instance using the specified properties. * @param [properties] Properties to set @@ -18220,6 +18241,204 @@ export namespace google { public toJSON(): { [k: string]: any }; } + /** Properties of an OnPremCluster. */ + interface IOnPremCluster { + + /** OnPremCluster resourceLink */ + resourceLink?: (string|null); + + /** OnPremCluster clusterMissing */ + clusterMissing?: (boolean|null); + + /** OnPremCluster adminCluster */ + adminCluster?: (boolean|null); + } + + /** Represents an OnPremCluster. */ + class OnPremCluster implements IOnPremCluster { + + /** + * Constructs a new OnPremCluster. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.v1alpha2.IOnPremCluster); + + /** OnPremCluster resourceLink. */ + public resourceLink: string; + + /** OnPremCluster clusterMissing. */ + public clusterMissing: boolean; + + /** OnPremCluster adminCluster. */ + public adminCluster: boolean; + + /** + * Creates a new OnPremCluster instance using the specified properties. + * @param [properties] Properties to set + * @returns OnPremCluster instance + */ + public static create(properties?: google.cloud.gkehub.v1alpha2.IOnPremCluster): google.cloud.gkehub.v1alpha2.OnPremCluster; + + /** + * Encodes the specified OnPremCluster message. Does not implicitly {@link google.cloud.gkehub.v1alpha2.OnPremCluster.verify|verify} messages. + * @param message OnPremCluster message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.v1alpha2.IOnPremCluster, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified OnPremCluster message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1alpha2.OnPremCluster.verify|verify} messages. + * @param message OnPremCluster message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.v1alpha2.IOnPremCluster, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes an OnPremCluster message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns OnPremCluster + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.v1alpha2.OnPremCluster; + + /** + * Decodes an OnPremCluster message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns OnPremCluster + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.v1alpha2.OnPremCluster; + + /** + * Verifies an OnPremCluster message. + * @param message Plain 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 OnPremCluster message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns OnPremCluster + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.v1alpha2.OnPremCluster; + + /** + * Creates a plain object from an OnPremCluster message. Also converts values to other types if specified. + * @param message OnPremCluster + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.v1alpha2.OnPremCluster, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this OnPremCluster to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + + /** Properties of a MultiCloudCluster. */ + interface IMultiCloudCluster { + + /** MultiCloudCluster resourceLink */ + resourceLink?: (string|null); + + /** MultiCloudCluster clusterMissing */ + clusterMissing?: (boolean|null); + } + + /** Represents a MultiCloudCluster. */ + class MultiCloudCluster implements IMultiCloudCluster { + + /** + * Constructs a new MultiCloudCluster. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.v1alpha2.IMultiCloudCluster); + + /** MultiCloudCluster resourceLink. */ + public resourceLink: string; + + /** MultiCloudCluster clusterMissing. */ + public clusterMissing: boolean; + + /** + * Creates a new MultiCloudCluster instance using the specified properties. + * @param [properties] Properties to set + * @returns MultiCloudCluster instance + */ + public static create(properties?: google.cloud.gkehub.v1alpha2.IMultiCloudCluster): google.cloud.gkehub.v1alpha2.MultiCloudCluster; + + /** + * Encodes the specified MultiCloudCluster message. Does not implicitly {@link google.cloud.gkehub.v1alpha2.MultiCloudCluster.verify|verify} messages. + * @param message MultiCloudCluster message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.v1alpha2.IMultiCloudCluster, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified MultiCloudCluster message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1alpha2.MultiCloudCluster.verify|verify} messages. + * @param message MultiCloudCluster message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.v1alpha2.IMultiCloudCluster, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a MultiCloudCluster message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns MultiCloudCluster + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.v1alpha2.MultiCloudCluster; + + /** + * Decodes a MultiCloudCluster message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns MultiCloudCluster + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.v1alpha2.MultiCloudCluster; + + /** + * Verifies a MultiCloudCluster message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a MultiCloudCluster message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns MultiCloudCluster + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.v1alpha2.MultiCloudCluster; + + /** + * Creates a plain object from a MultiCloudCluster message. Also converts values to other types if specified. + * @param message MultiCloudCluster + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.v1alpha2.MultiCloudCluster, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this MultiCloudCluster to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + /** Properties of a KubernetesMetadata. */ interface IKubernetesMetadata { diff --git a/packages/google-cloud-gkehub/protos/protos.js b/packages/google-cloud-gkehub/protos/protos.js index 2ddb5ff0713..cf9f042423d 100644 --- a/packages/google-cloud-gkehub/protos/protos.js +++ b/packages/google-cloud-gkehub/protos/protos.js @@ -45050,6 +45050,8 @@ * @memberof google.cloud.gkehub.v1alpha2 * @interface IMembershipEndpoint * @property {google.cloud.gkehub.v1alpha2.IGkeCluster|null} [gkeCluster] MembershipEndpoint gkeCluster + * @property {google.cloud.gkehub.v1alpha2.IOnPremCluster|null} [onPremCluster] MembershipEndpoint onPremCluster + * @property {google.cloud.gkehub.v1alpha2.IMultiCloudCluster|null} [multiCloudCluster] MembershipEndpoint multiCloudCluster * @property {google.cloud.gkehub.v1alpha2.IKubernetesMetadata|null} [kubernetesMetadata] MembershipEndpoint kubernetesMetadata * @property {google.cloud.gkehub.v1alpha2.IKubernetesResource|null} [kubernetesResource] MembershipEndpoint kubernetesResource */ @@ -45077,6 +45079,22 @@ */ MembershipEndpoint.prototype.gkeCluster = null; + /** + * MembershipEndpoint onPremCluster. + * @member {google.cloud.gkehub.v1alpha2.IOnPremCluster|null|undefined} onPremCluster + * @memberof google.cloud.gkehub.v1alpha2.MembershipEndpoint + * @instance + */ + MembershipEndpoint.prototype.onPremCluster = null; + + /** + * MembershipEndpoint multiCloudCluster. + * @member {google.cloud.gkehub.v1alpha2.IMultiCloudCluster|null|undefined} multiCloudCluster + * @memberof google.cloud.gkehub.v1alpha2.MembershipEndpoint + * @instance + */ + MembershipEndpoint.prototype.multiCloudCluster = null; + /** * MembershipEndpoint kubernetesMetadata. * @member {google.cloud.gkehub.v1alpha2.IKubernetesMetadata|null|undefined} kubernetesMetadata @@ -45093,6 +45111,20 @@ */ MembershipEndpoint.prototype.kubernetesResource = null; + // OneOf field names bound to virtual getters and setters + var $oneOfFields; + + /** + * MembershipEndpoint type. + * @member {"gkeCluster"|"onPremCluster"|"multiCloudCluster"|undefined} type + * @memberof google.cloud.gkehub.v1alpha2.MembershipEndpoint + * @instance + */ + Object.defineProperty(MembershipEndpoint.prototype, "type", { + get: $util.oneOfGetter($oneOfFields = ["gkeCluster", "onPremCluster", "multiCloudCluster"]), + set: $util.oneOfSetter($oneOfFields) + }); + /** * Creates a new MembershipEndpoint instance using the specified properties. * @function create @@ -45123,6 +45155,10 @@ $root.google.cloud.gkehub.v1alpha2.KubernetesMetadata.encode(message.kubernetesMetadata, writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim(); if (message.kubernetesResource != null && Object.hasOwnProperty.call(message, "kubernetesResource")) $root.google.cloud.gkehub.v1alpha2.KubernetesResource.encode(message.kubernetesResource, writer.uint32(/* id 3, wireType 2 =*/26).fork()).ldelim(); + if (message.onPremCluster != null && Object.hasOwnProperty.call(message, "onPremCluster")) + $root.google.cloud.gkehub.v1alpha2.OnPremCluster.encode(message.onPremCluster, writer.uint32(/* id 4, wireType 2 =*/34).fork()).ldelim(); + if (message.multiCloudCluster != null && Object.hasOwnProperty.call(message, "multiCloudCluster")) + $root.google.cloud.gkehub.v1alpha2.MultiCloudCluster.encode(message.multiCloudCluster, writer.uint32(/* id 5, wireType 2 =*/42).fork()).ldelim(); return writer; }; @@ -45160,6 +45196,12 @@ case 1: message.gkeCluster = $root.google.cloud.gkehub.v1alpha2.GkeCluster.decode(reader, reader.uint32()); break; + case 4: + message.onPremCluster = $root.google.cloud.gkehub.v1alpha2.OnPremCluster.decode(reader, reader.uint32()); + break; + case 5: + message.multiCloudCluster = $root.google.cloud.gkehub.v1alpha2.MultiCloudCluster.decode(reader, reader.uint32()); + break; case 2: message.kubernetesMetadata = $root.google.cloud.gkehub.v1alpha2.KubernetesMetadata.decode(reader, reader.uint32()); break; @@ -45201,10 +45243,34 @@ MembershipEndpoint.verify = function verify(message) { if (typeof message !== "object" || message === null) return "object expected"; + var properties = {}; if (message.gkeCluster != null && message.hasOwnProperty("gkeCluster")) { - var error = $root.google.cloud.gkehub.v1alpha2.GkeCluster.verify(message.gkeCluster); - if (error) - return "gkeCluster." + error; + properties.type = 1; + { + var error = $root.google.cloud.gkehub.v1alpha2.GkeCluster.verify(message.gkeCluster); + if (error) + return "gkeCluster." + error; + } + } + if (message.onPremCluster != null && message.hasOwnProperty("onPremCluster")) { + if (properties.type === 1) + return "type: multiple values"; + properties.type = 1; + { + var error = $root.google.cloud.gkehub.v1alpha2.OnPremCluster.verify(message.onPremCluster); + if (error) + return "onPremCluster." + error; + } + } + if (message.multiCloudCluster != null && message.hasOwnProperty("multiCloudCluster")) { + if (properties.type === 1) + return "type: multiple values"; + properties.type = 1; + { + var error = $root.google.cloud.gkehub.v1alpha2.MultiCloudCluster.verify(message.multiCloudCluster); + if (error) + return "multiCloudCluster." + error; + } } if (message.kubernetesMetadata != null && message.hasOwnProperty("kubernetesMetadata")) { var error = $root.google.cloud.gkehub.v1alpha2.KubernetesMetadata.verify(message.kubernetesMetadata); @@ -45236,6 +45302,16 @@ throw TypeError(".google.cloud.gkehub.v1alpha2.MembershipEndpoint.gkeCluster: object expected"); message.gkeCluster = $root.google.cloud.gkehub.v1alpha2.GkeCluster.fromObject(object.gkeCluster); } + if (object.onPremCluster != null) { + if (typeof object.onPremCluster !== "object") + throw TypeError(".google.cloud.gkehub.v1alpha2.MembershipEndpoint.onPremCluster: object expected"); + message.onPremCluster = $root.google.cloud.gkehub.v1alpha2.OnPremCluster.fromObject(object.onPremCluster); + } + if (object.multiCloudCluster != null) { + if (typeof object.multiCloudCluster !== "object") + throw TypeError(".google.cloud.gkehub.v1alpha2.MembershipEndpoint.multiCloudCluster: object expected"); + message.multiCloudCluster = $root.google.cloud.gkehub.v1alpha2.MultiCloudCluster.fromObject(object.multiCloudCluster); + } if (object.kubernetesMetadata != null) { if (typeof object.kubernetesMetadata !== "object") throw TypeError(".google.cloud.gkehub.v1alpha2.MembershipEndpoint.kubernetesMetadata: object expected"); @@ -45263,16 +45339,28 @@ options = {}; var object = {}; if (options.defaults) { - object.gkeCluster = null; object.kubernetesMetadata = null; object.kubernetesResource = null; } - if (message.gkeCluster != null && message.hasOwnProperty("gkeCluster")) + if (message.gkeCluster != null && message.hasOwnProperty("gkeCluster")) { object.gkeCluster = $root.google.cloud.gkehub.v1alpha2.GkeCluster.toObject(message.gkeCluster, options); + if (options.oneofs) + object.type = "gkeCluster"; + } if (message.kubernetesMetadata != null && message.hasOwnProperty("kubernetesMetadata")) object.kubernetesMetadata = $root.google.cloud.gkehub.v1alpha2.KubernetesMetadata.toObject(message.kubernetesMetadata, options); if (message.kubernetesResource != null && message.hasOwnProperty("kubernetesResource")) object.kubernetesResource = $root.google.cloud.gkehub.v1alpha2.KubernetesResource.toObject(message.kubernetesResource, options); + if (message.onPremCluster != null && message.hasOwnProperty("onPremCluster")) { + object.onPremCluster = $root.google.cloud.gkehub.v1alpha2.OnPremCluster.toObject(message.onPremCluster, options); + if (options.oneofs) + object.type = "onPremCluster"; + } + if (message.multiCloudCluster != null && message.hasOwnProperty("multiCloudCluster")) { + object.multiCloudCluster = $root.google.cloud.gkehub.v1alpha2.MultiCloudCluster.toObject(message.multiCloudCluster, options); + if (options.oneofs) + object.type = "multiCloudCluster"; + } return object; }; @@ -45810,6 +45898,7 @@ * @memberof google.cloud.gkehub.v1alpha2 * @interface IGkeCluster * @property {string|null} [resourceLink] GkeCluster resourceLink + * @property {boolean|null} [clusterMissing] GkeCluster clusterMissing */ /** @@ -45835,6 +45924,14 @@ */ GkeCluster.prototype.resourceLink = ""; + /** + * GkeCluster clusterMissing. + * @member {boolean} clusterMissing + * @memberof google.cloud.gkehub.v1alpha2.GkeCluster + * @instance + */ + GkeCluster.prototype.clusterMissing = false; + /** * Creates a new GkeCluster instance using the specified properties. * @function create @@ -45861,6 +45958,8 @@ writer = $Writer.create(); if (message.resourceLink != null && Object.hasOwnProperty.call(message, "resourceLink")) writer.uint32(/* id 1, wireType 2 =*/10).string(message.resourceLink); + if (message.clusterMissing != null && Object.hasOwnProperty.call(message, "clusterMissing")) + writer.uint32(/* id 2, wireType 0 =*/16).bool(message.clusterMissing); return writer; }; @@ -45898,6 +45997,9 @@ case 1: message.resourceLink = reader.string(); break; + case 2: + message.clusterMissing = reader.bool(); + break; default: reader.skipType(tag & 7); break; @@ -45936,6 +46038,9 @@ if (message.resourceLink != null && message.hasOwnProperty("resourceLink")) if (!$util.isString(message.resourceLink)) return "resourceLink: string expected"; + if (message.clusterMissing != null && message.hasOwnProperty("clusterMissing")) + if (typeof message.clusterMissing !== "boolean") + return "clusterMissing: boolean expected"; return null; }; @@ -45953,6 +46058,8 @@ var message = new $root.google.cloud.gkehub.v1alpha2.GkeCluster(); if (object.resourceLink != null) message.resourceLink = String(object.resourceLink); + if (object.clusterMissing != null) + message.clusterMissing = Boolean(object.clusterMissing); return message; }; @@ -45969,10 +46076,14 @@ if (!options) options = {}; var object = {}; - if (options.defaults) + if (options.defaults) { object.resourceLink = ""; + object.clusterMissing = false; + } if (message.resourceLink != null && message.hasOwnProperty("resourceLink")) object.resourceLink = message.resourceLink; + if (message.clusterMissing != null && message.hasOwnProperty("clusterMissing")) + object.clusterMissing = message.clusterMissing; return object; }; @@ -45990,6 +46101,448 @@ return GkeCluster; })(); + v1alpha2.OnPremCluster = (function() { + + /** + * Properties of an OnPremCluster. + * @memberof google.cloud.gkehub.v1alpha2 + * @interface IOnPremCluster + * @property {string|null} [resourceLink] OnPremCluster resourceLink + * @property {boolean|null} [clusterMissing] OnPremCluster clusterMissing + * @property {boolean|null} [adminCluster] OnPremCluster adminCluster + */ + + /** + * Constructs a new OnPremCluster. + * @memberof google.cloud.gkehub.v1alpha2 + * @classdesc Represents an OnPremCluster. + * @implements IOnPremCluster + * @constructor + * @param {google.cloud.gkehub.v1alpha2.IOnPremCluster=} [properties] Properties to set + */ + function OnPremCluster(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]]; + } + + /** + * OnPremCluster resourceLink. + * @member {string} resourceLink + * @memberof google.cloud.gkehub.v1alpha2.OnPremCluster + * @instance + */ + OnPremCluster.prototype.resourceLink = ""; + + /** + * OnPremCluster clusterMissing. + * @member {boolean} clusterMissing + * @memberof google.cloud.gkehub.v1alpha2.OnPremCluster + * @instance + */ + OnPremCluster.prototype.clusterMissing = false; + + /** + * OnPremCluster adminCluster. + * @member {boolean} adminCluster + * @memberof google.cloud.gkehub.v1alpha2.OnPremCluster + * @instance + */ + OnPremCluster.prototype.adminCluster = false; + + /** + * Creates a new OnPremCluster instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.v1alpha2.OnPremCluster + * @static + * @param {google.cloud.gkehub.v1alpha2.IOnPremCluster=} [properties] Properties to set + * @returns {google.cloud.gkehub.v1alpha2.OnPremCluster} OnPremCluster instance + */ + OnPremCluster.create = function create(properties) { + return new OnPremCluster(properties); + }; + + /** + * Encodes the specified OnPremCluster message. Does not implicitly {@link google.cloud.gkehub.v1alpha2.OnPremCluster.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.v1alpha2.OnPremCluster + * @static + * @param {google.cloud.gkehub.v1alpha2.IOnPremCluster} message OnPremCluster message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + OnPremCluster.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.resourceLink != null && Object.hasOwnProperty.call(message, "resourceLink")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.resourceLink); + if (message.clusterMissing != null && Object.hasOwnProperty.call(message, "clusterMissing")) + writer.uint32(/* id 2, wireType 0 =*/16).bool(message.clusterMissing); + if (message.adminCluster != null && Object.hasOwnProperty.call(message, "adminCluster")) + writer.uint32(/* id 3, wireType 0 =*/24).bool(message.adminCluster); + return writer; + }; + + /** + * Encodes the specified OnPremCluster message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1alpha2.OnPremCluster.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.v1alpha2.OnPremCluster + * @static + * @param {google.cloud.gkehub.v1alpha2.IOnPremCluster} message OnPremCluster message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + OnPremCluster.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes an OnPremCluster message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.v1alpha2.OnPremCluster + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.v1alpha2.OnPremCluster} OnPremCluster + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + OnPremCluster.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.v1alpha2.OnPremCluster(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.resourceLink = reader.string(); + break; + case 2: + message.clusterMissing = reader.bool(); + break; + case 3: + message.adminCluster = reader.bool(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes an OnPremCluster message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.v1alpha2.OnPremCluster + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.v1alpha2.OnPremCluster} OnPremCluster + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + OnPremCluster.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies an OnPremCluster message. + * @function verify + * @memberof google.cloud.gkehub.v1alpha2.OnPremCluster + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + OnPremCluster.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.resourceLink != null && message.hasOwnProperty("resourceLink")) + if (!$util.isString(message.resourceLink)) + return "resourceLink: string expected"; + if (message.clusterMissing != null && message.hasOwnProperty("clusterMissing")) + if (typeof message.clusterMissing !== "boolean") + return "clusterMissing: boolean expected"; + if (message.adminCluster != null && message.hasOwnProperty("adminCluster")) + if (typeof message.adminCluster !== "boolean") + return "adminCluster: boolean expected"; + return null; + }; + + /** + * Creates an OnPremCluster message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.v1alpha2.OnPremCluster + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.v1alpha2.OnPremCluster} OnPremCluster + */ + OnPremCluster.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.v1alpha2.OnPremCluster) + return object; + var message = new $root.google.cloud.gkehub.v1alpha2.OnPremCluster(); + if (object.resourceLink != null) + message.resourceLink = String(object.resourceLink); + if (object.clusterMissing != null) + message.clusterMissing = Boolean(object.clusterMissing); + if (object.adminCluster != null) + message.adminCluster = Boolean(object.adminCluster); + return message; + }; + + /** + * Creates a plain object from an OnPremCluster message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.v1alpha2.OnPremCluster + * @static + * @param {google.cloud.gkehub.v1alpha2.OnPremCluster} message OnPremCluster + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + OnPremCluster.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.resourceLink = ""; + object.clusterMissing = false; + object.adminCluster = false; + } + if (message.resourceLink != null && message.hasOwnProperty("resourceLink")) + object.resourceLink = message.resourceLink; + if (message.clusterMissing != null && message.hasOwnProperty("clusterMissing")) + object.clusterMissing = message.clusterMissing; + if (message.adminCluster != null && message.hasOwnProperty("adminCluster")) + object.adminCluster = message.adminCluster; + return object; + }; + + /** + * Converts this OnPremCluster to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.v1alpha2.OnPremCluster + * @instance + * @returns {Object.} JSON object + */ + OnPremCluster.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return OnPremCluster; + })(); + + v1alpha2.MultiCloudCluster = (function() { + + /** + * Properties of a MultiCloudCluster. + * @memberof google.cloud.gkehub.v1alpha2 + * @interface IMultiCloudCluster + * @property {string|null} [resourceLink] MultiCloudCluster resourceLink + * @property {boolean|null} [clusterMissing] MultiCloudCluster clusterMissing + */ + + /** + * Constructs a new MultiCloudCluster. + * @memberof google.cloud.gkehub.v1alpha2 + * @classdesc Represents a MultiCloudCluster. + * @implements IMultiCloudCluster + * @constructor + * @param {google.cloud.gkehub.v1alpha2.IMultiCloudCluster=} [properties] Properties to set + */ + function MultiCloudCluster(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]]; + } + + /** + * MultiCloudCluster resourceLink. + * @member {string} resourceLink + * @memberof google.cloud.gkehub.v1alpha2.MultiCloudCluster + * @instance + */ + MultiCloudCluster.prototype.resourceLink = ""; + + /** + * MultiCloudCluster clusterMissing. + * @member {boolean} clusterMissing + * @memberof google.cloud.gkehub.v1alpha2.MultiCloudCluster + * @instance + */ + MultiCloudCluster.prototype.clusterMissing = false; + + /** + * Creates a new MultiCloudCluster instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.v1alpha2.MultiCloudCluster + * @static + * @param {google.cloud.gkehub.v1alpha2.IMultiCloudCluster=} [properties] Properties to set + * @returns {google.cloud.gkehub.v1alpha2.MultiCloudCluster} MultiCloudCluster instance + */ + MultiCloudCluster.create = function create(properties) { + return new MultiCloudCluster(properties); + }; + + /** + * Encodes the specified MultiCloudCluster message. Does not implicitly {@link google.cloud.gkehub.v1alpha2.MultiCloudCluster.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.v1alpha2.MultiCloudCluster + * @static + * @param {google.cloud.gkehub.v1alpha2.IMultiCloudCluster} message MultiCloudCluster message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + MultiCloudCluster.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.resourceLink != null && Object.hasOwnProperty.call(message, "resourceLink")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.resourceLink); + if (message.clusterMissing != null && Object.hasOwnProperty.call(message, "clusterMissing")) + writer.uint32(/* id 2, wireType 0 =*/16).bool(message.clusterMissing); + return writer; + }; + + /** + * Encodes the specified MultiCloudCluster message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1alpha2.MultiCloudCluster.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.v1alpha2.MultiCloudCluster + * @static + * @param {google.cloud.gkehub.v1alpha2.IMultiCloudCluster} message MultiCloudCluster message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + MultiCloudCluster.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a MultiCloudCluster message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.v1alpha2.MultiCloudCluster + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.v1alpha2.MultiCloudCluster} MultiCloudCluster + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + MultiCloudCluster.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.v1alpha2.MultiCloudCluster(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.resourceLink = reader.string(); + break; + case 2: + message.clusterMissing = reader.bool(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a MultiCloudCluster message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.v1alpha2.MultiCloudCluster + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.v1alpha2.MultiCloudCluster} MultiCloudCluster + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + MultiCloudCluster.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a MultiCloudCluster message. + * @function verify + * @memberof google.cloud.gkehub.v1alpha2.MultiCloudCluster + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + MultiCloudCluster.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.resourceLink != null && message.hasOwnProperty("resourceLink")) + if (!$util.isString(message.resourceLink)) + return "resourceLink: string expected"; + if (message.clusterMissing != null && message.hasOwnProperty("clusterMissing")) + if (typeof message.clusterMissing !== "boolean") + return "clusterMissing: boolean expected"; + return null; + }; + + /** + * Creates a MultiCloudCluster message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.v1alpha2.MultiCloudCluster + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.v1alpha2.MultiCloudCluster} MultiCloudCluster + */ + MultiCloudCluster.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.v1alpha2.MultiCloudCluster) + return object; + var message = new $root.google.cloud.gkehub.v1alpha2.MultiCloudCluster(); + if (object.resourceLink != null) + message.resourceLink = String(object.resourceLink); + if (object.clusterMissing != null) + message.clusterMissing = Boolean(object.clusterMissing); + return message; + }; + + /** + * Creates a plain object from a MultiCloudCluster message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.v1alpha2.MultiCloudCluster + * @static + * @param {google.cloud.gkehub.v1alpha2.MultiCloudCluster} message MultiCloudCluster + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + MultiCloudCluster.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.resourceLink = ""; + object.clusterMissing = false; + } + if (message.resourceLink != null && message.hasOwnProperty("resourceLink")) + object.resourceLink = message.resourceLink; + if (message.clusterMissing != null && message.hasOwnProperty("clusterMissing")) + object.clusterMissing = message.clusterMissing; + return object; + }; + + /** + * Converts this MultiCloudCluster to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.v1alpha2.MultiCloudCluster + * @instance + * @returns {Object.} JSON object + */ + MultiCloudCluster.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return MultiCloudCluster; + })(); + v1alpha2.KubernetesMetadata = (function() { /** diff --git a/packages/google-cloud-gkehub/protos/protos.json b/packages/google-cloud-gkehub/protos/protos.json index 0649c23320e..1eac969ea33 100644 --- a/packages/google-cloud-gkehub/protos/protos.json +++ b/packages/google-cloud-gkehub/protos/protos.json @@ -4595,6 +4595,15 @@ } }, "MembershipEndpoint": { + "oneofs": { + "type": { + "oneof": [ + "gkeCluster", + "onPremCluster", + "multiCloudCluster" + ] + } + }, "fields": { "gkeCluster": { "type": "GkeCluster", @@ -4603,6 +4612,20 @@ "(google.api.field_behavior)": "OPTIONAL" } }, + "onPremCluster": { + "type": "OnPremCluster", + "id": 4, + "options": { + "(google.api.field_behavior)": "OPTIONAL" + } + }, + "multiCloudCluster": { + "type": "MultiCloudCluster", + "id": 5, + "options": { + "(google.api.field_behavior)": "OPTIONAL" + } + }, "kubernetesMetadata": { "type": "KubernetesMetadata", "id": 2, @@ -4679,6 +4702,56 @@ "options": { "(google.api.field_behavior)": "IMMUTABLE" } + }, + "clusterMissing": { + "type": "bool", + "id": 2, + "options": { + "(google.api.field_behavior)": "OUTPUT_ONLY" + } + } + } + }, + "OnPremCluster": { + "fields": { + "resourceLink": { + "type": "string", + "id": 1, + "options": { + "(google.api.field_behavior)": "IMMUTABLE" + } + }, + "clusterMissing": { + "type": "bool", + "id": 2, + "options": { + "(google.api.field_behavior)": "OUTPUT_ONLY" + } + }, + "adminCluster": { + "type": "bool", + "id": 3, + "options": { + "(google.api.field_behavior)": "IMMUTABLE" + } + } + } + }, + "MultiCloudCluster": { + "fields": { + "resourceLink": { + "type": "string", + "id": 1, + "options": { + "(google.api.field_behavior)": "IMMUTABLE" + } + }, + "clusterMissing": { + "type": "bool", + "id": 2, + "options": { + "(google.api.field_behavior)": "OUTPUT_ONLY" + } } } }, diff --git a/packages/google-cloud-gkehub/src/v1alpha2/gke_hub_client.ts b/packages/google-cloud-gkehub/src/v1alpha2/gke_hub_client.ts index 14cd3114b56..14bd3e14fb9 100644 --- a/packages/google-cloud-gkehub/src/v1alpha2/gke_hub_client.ts +++ b/packages/google-cloud-gkehub/src/v1alpha2/gke_hub_client.ts @@ -42,8 +42,14 @@ import {operationsProtos} from 'google-gax'; const version = require('../../../package.json').version; /** - * GKE Hub CRUD API for the Membership resource. - * The Membership service is currently only available in the global location. + * The GKE Hub service handles the registration of many Kubernetes + * clusters to Google Cloud, represented with the {@link google.cloud.gkehub.v1alpha2.Membership|Membership} resource. + * + * GKE Hub is currently only available in the global region. + * + * **Membership management may be non-trivial:** it is recommended to use one + * of the Google-provided client libraries or tools where possible when working + * with Membership resources. * @class * @memberof v1alpha2 */ @@ -509,6 +515,9 @@ export class GkeHubClient { /** * Generates the manifest for deployment of the GKE connect agent. * + * **This method is used internally by Google-provided libraries.** + * Most clients should not need to call this method directly. + * * @param {Object} request * The request object that will be sent. * @param {string} request.name @@ -733,7 +742,11 @@ export class GkeHubClient { > ): void; /** - * Adds a new Membership. + * Creates a new Membership. + * + * **This is currently only supported for GKE clusters on Google Cloud**. + * To register other clusters, follow the instructions at + * https://cloud.google.com/anthos/multicluster-management/connect/registering-a-cluster. * * @param {Object} request * The request object that will be sent. @@ -889,6 +902,10 @@ export class GkeHubClient { /** * Removes a Membership. * + * **This is currently only supported for GKE clusters on Google Cloud**. + * To unregister other clusters, follow the instructions at + * https://cloud.google.com/anthos/multicluster-management/connect/unregistering-a-cluster. + * * @param {Object} request * The request object that will be sent. * @param {string} request.name @@ -1045,6 +1062,8 @@ export class GkeHubClient { * If you are updating a map field, set the value of a key to null or empty * string to delete the key from the map. It's not possible to update a key's * value to the empty string. + * If you specify the update_mask to be a special path "*", fully replaces all + * user-modifiable fields to match `resource`. * @param {object} [options] * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. * @returns {Promise} - The promise which resolves to an array. From 268f2c7414b6cddc5b601b8b94339088b7030c6e Mon Sep 17 00:00:00 2001 From: "release-please[bot]" <55107282+release-please[bot]@users.noreply.github.com> Date: Thu, 2 Sep 2021 01:48:13 +0000 Subject: [PATCH 42/92] chore: release 1.4.0 (#93) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit :robot: I have created a release \*beep\* \*boop\* --- ## [1.4.0](https://www.github.com/googleapis/nodejs-gke-hub/compare/v1.3.0...v1.4.0) (2021-09-02) ### ⚠ BREAKING CHANGES * Move `GkeCluster` under oneof * Move `GkeCluster` under oneof ### Features * Add `OnPremCluster` and `MultiCloudCluster` as `GkeCluster` equivalent field ([dd27a47](https://www.github.com/googleapis/nodejs-gke-hub/commit/dd27a47c90c7fac0dd405ca3a99a295837f44a0e)) * Add `OnPremCluster` and `MultiCloudCluster` as `GkeCluster` equivalent field ([#91](https://www.github.com/googleapis/nodejs-gke-hub/issues/91)) ([9f037c2](https://www.github.com/googleapis/nodejs-gke-hub/commit/9f037c26db002fbef5f8a41a5c9ba131ddfb6fdd)) * Add request_id under `DeleteMembershipRequest` and `UpdateMembershipRequest` ([#86](https://www.github.com/googleapis/nodejs-gke-hub/issues/86)) ([dd27a47](https://www.github.com/googleapis/nodejs-gke-hub/commit/dd27a47c90c7fac0dd405ca3a99a295837f44a0e)) * Move `GkeCluster` under oneof ([9f037c2](https://www.github.com/googleapis/nodejs-gke-hub/commit/9f037c26db002fbef5f8a41a5c9ba131ddfb6fdd)) ### Bug Fixes * Move `GkeCluster` under oneof ([dd27a47](https://www.github.com/googleapis/nodejs-gke-hub/commit/dd27a47c90c7fac0dd405ca3a99a295837f44a0e)) ### Miscellaneous Chores * release as v1.4.0 ([#92](https://www.github.com/googleapis/nodejs-gke-hub/issues/92)) ([20d21ba](https://www.github.com/googleapis/nodejs-gke-hub/commit/20d21ba58c33899debab4240fd9c607e22c84a25)) --- This PR was generated with [Release Please](https://github.com/googleapis/release-please). See [documentation](https://github.com/googleapis/release-please#release-please). --- packages/google-cloud-gkehub/CHANGELOG.md | 25 +++++++++++++++++++ packages/google-cloud-gkehub/package.json | 2 +- .../google-cloud-gkehub/samples/package.json | 2 +- 3 files changed, 27 insertions(+), 2 deletions(-) diff --git a/packages/google-cloud-gkehub/CHANGELOG.md b/packages/google-cloud-gkehub/CHANGELOG.md index 9485f4e2190..55991e864f2 100644 --- a/packages/google-cloud-gkehub/CHANGELOG.md +++ b/packages/google-cloud-gkehub/CHANGELOG.md @@ -1,5 +1,30 @@ # Changelog +## [1.4.0](https://www.github.com/googleapis/nodejs-gke-hub/compare/v1.3.0...v1.4.0) (2021-09-02) + + +### ⚠ BREAKING CHANGES + +* Move `GkeCluster` under oneof +* Move `GkeCluster` under oneof + +### Features + +* Add `OnPremCluster` and `MultiCloudCluster` as `GkeCluster` equivalent field ([dd27a47](https://www.github.com/googleapis/nodejs-gke-hub/commit/dd27a47c90c7fac0dd405ca3a99a295837f44a0e)) +* Add `OnPremCluster` and `MultiCloudCluster` as `GkeCluster` equivalent field ([#91](https://www.github.com/googleapis/nodejs-gke-hub/issues/91)) ([9f037c2](https://www.github.com/googleapis/nodejs-gke-hub/commit/9f037c26db002fbef5f8a41a5c9ba131ddfb6fdd)) +* Add request_id under `DeleteMembershipRequest` and `UpdateMembershipRequest` ([#86](https://www.github.com/googleapis/nodejs-gke-hub/issues/86)) ([dd27a47](https://www.github.com/googleapis/nodejs-gke-hub/commit/dd27a47c90c7fac0dd405ca3a99a295837f44a0e)) +* Move `GkeCluster` under oneof ([9f037c2](https://www.github.com/googleapis/nodejs-gke-hub/commit/9f037c26db002fbef5f8a41a5c9ba131ddfb6fdd)) + + +### Bug Fixes + +* Move `GkeCluster` under oneof ([dd27a47](https://www.github.com/googleapis/nodejs-gke-hub/commit/dd27a47c90c7fac0dd405ca3a99a295837f44a0e)) + + +### Miscellaneous Chores + +* release as v1.4.0 ([#92](https://www.github.com/googleapis/nodejs-gke-hub/issues/92)) ([20d21ba](https://www.github.com/googleapis/nodejs-gke-hub/commit/20d21ba58c33899debab4240fd9c607e22c84a25)) + ## [1.3.0](https://www.github.com/googleapis/nodejs-gke-hub/compare/v1.2.1...v1.3.0) (2021-08-23) diff --git a/packages/google-cloud-gkehub/package.json b/packages/google-cloud-gkehub/package.json index 58ea9506524..61b0349fb93 100644 --- a/packages/google-cloud-gkehub/package.json +++ b/packages/google-cloud-gkehub/package.json @@ -1,6 +1,6 @@ { "name": "@google-cloud/gke-hub", - "version": "1.3.0", + "version": "1.4.0", "description": "Gkehub client for Node.js", "repository": "googleapis/nodejs-gke-hub", "license": "Apache-2.0", diff --git a/packages/google-cloud-gkehub/samples/package.json b/packages/google-cloud-gkehub/samples/package.json index a081a5471c3..b89db0e9ff4 100644 --- a/packages/google-cloud-gkehub/samples/package.json +++ b/packages/google-cloud-gkehub/samples/package.json @@ -13,7 +13,7 @@ "test": "c8 mocha --timeout 600000 test/*.js" }, "dependencies": { - "@google-cloud/gke-hub": "^1.3.0" + "@google-cloud/gke-hub": "^1.4.0" }, "devDependencies": { "c8": "^7.1.0", From 2d0f8131f8e82919d477a0c2684f564ca01ae0bf Mon Sep 17 00:00:00 2001 From: "gcf-owl-bot[bot]" <78513119+gcf-owl-bot[bot]@users.noreply.github.com> Date: Thu, 14 Oct 2021 00:46:36 +0000 Subject: [PATCH 43/92] build(node): update deps used during postprocessing (#1243) (#100) --- packages/google-cloud-gkehub/protos/protos.d.ts | 3 ++- packages/google-cloud-gkehub/protos/protos.js | 7 +++++++ packages/google-cloud-gkehub/protos/protos.json | 15 ++++++++++++++- 3 files changed, 23 insertions(+), 2 deletions(-) diff --git a/packages/google-cloud-gkehub/protos/protos.d.ts b/packages/google-cloud-gkehub/protos/protos.d.ts index 9d24310c595..fef95906f82 100644 --- a/packages/google-cloud-gkehub/protos/protos.d.ts +++ b/packages/google-cloud-gkehub/protos/protos.d.ts @@ -25220,7 +25220,8 @@ export namespace google { OUTPUT_ONLY = 3, INPUT_ONLY = 4, IMMUTABLE = 5, - UNORDERED_LIST = 6 + UNORDERED_LIST = 6, + NON_EMPTY_DEFAULT = 7 } /** Properties of a ResourceDescriptor. */ diff --git a/packages/google-cloud-gkehub/protos/protos.js b/packages/google-cloud-gkehub/protos/protos.js index cf9f042423d..4d53c80b82a 100644 --- a/packages/google-cloud-gkehub/protos/protos.js +++ b/packages/google-cloud-gkehub/protos/protos.js @@ -5790,6 +5790,7 @@ case 4: case 5: case 6: + case 7: break; } } @@ -5894,6 +5895,10 @@ case 6: message[".google.api.fieldBehavior"][i] = 6; break; + case "NON_EMPTY_DEFAULT": + case 7: + message[".google.api.fieldBehavior"][i] = 7; + break; } } if (object[".google.api.resourceReference"] != null) { @@ -62828,6 +62833,7 @@ * @property {number} INPUT_ONLY=4 INPUT_ONLY value * @property {number} IMMUTABLE=5 IMMUTABLE value * @property {number} UNORDERED_LIST=6 UNORDERED_LIST value + * @property {number} NON_EMPTY_DEFAULT=7 NON_EMPTY_DEFAULT value */ api.FieldBehavior = (function() { var valuesById = {}, values = Object.create(valuesById); @@ -62838,6 +62844,7 @@ values[valuesById[4] = "INPUT_ONLY"] = 4; values[valuesById[5] = "IMMUTABLE"] = 5; values[valuesById[6] = "UNORDERED_LIST"] = 6; + values[valuesById[7] = "NON_EMPTY_DEFAULT"] = 7; return values; })(); diff --git a/packages/google-cloud-gkehub/protos/protos.json b/packages/google-cloud-gkehub/protos/protos.json index 1eac969ea33..5492bb8724e 100644 --- a/packages/google-cloud-gkehub/protos/protos.json +++ b/packages/google-cloud-gkehub/protos/protos.json @@ -575,6 +575,18 @@ ] ], "reserved": [ + [ + 4, + 4 + ], + [ + 5, + 5 + ], + [ + 6, + 6 + ], [ 8, 8 @@ -6732,7 +6744,8 @@ "OUTPUT_ONLY": 3, "INPUT_ONLY": 4, "IMMUTABLE": 5, - "UNORDERED_LIST": 6 + "UNORDERED_LIST": 6, + "NON_EMPTY_DEFAULT": 7 } }, "resourceReference": { From f373c7586a479ead5e652d9c741ca43ce0dc2263 Mon Sep 17 00:00:00 2001 From: Takashi Matsuo Date: Wed, 27 Oct 2021 11:24:56 -0700 Subject: [PATCH 44/92] chore: fix the wrong post processor image (#102) --- packages/google-cloud-gkehub/.github/.OwlBot.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/google-cloud-gkehub/.github/.OwlBot.yaml b/packages/google-cloud-gkehub/.github/.OwlBot.yaml index e3927699884..b5c14073b4c 100644 --- a/packages/google-cloud-gkehub/.github/.OwlBot.yaml +++ b/packages/google-cloud-gkehub/.github/.OwlBot.yaml @@ -12,7 +12,7 @@ # See the License for the specific language governing permissions and # limitations under the License. docker: - image: gcr.io/repo-automation-bots/owlbot-nodejs:latest + image: gcr.io/cloud-devrel-public-resources/owlbot-nodejs:latest deep-remove-regex: - /owl-bot-staging From fc3569ed2e5ab8a787baa89c66526afb0c3378b5 Mon Sep 17 00:00:00 2001 From: WhiteSource Renovate Date: Wed, 27 Oct 2021 21:24:23 +0200 Subject: [PATCH 45/92] chore(deps): update dependency @types/node to v16 (#101) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit [![WhiteSource Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com) This PR contains the following updates: | Package | Change | Age | Adoption | Passing | Confidence | |---|---|---|---|---|---| | [@types/node](https://togithub.com/DefinitelyTyped/DefinitelyTyped) | [`^14.14.10` -> `^16.0.0`](https://renovatebot.com/diffs/npm/@types%2fnode/14.17.32/16.11.6) | [![age](https://badges.renovateapi.com/packages/npm/@types%2fnode/16.11.6/age-slim)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://badges.renovateapi.com/packages/npm/@types%2fnode/16.11.6/adoption-slim)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://badges.renovateapi.com/packages/npm/@types%2fnode/16.11.6/compatibility-slim/14.17.32)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://badges.renovateapi.com/packages/npm/@types%2fnode/16.11.6/confidence-slim/14.17.32)](https://docs.renovatebot.com/merge-confidence/) | --- ### Configuration 📅 **Schedule**: "after 9am and before 3pm" (UTC). 🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied. ♻ **Rebasing**: Whenever PR is behind base branch, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about this update again. --- - [ ] If you want to rebase/retry this PR, click this checkbox. --- This PR has been generated by [WhiteSource Renovate](https://renovate.whitesourcesoftware.com). View repository job log [here](https://app.renovatebot.com/dashboard#github/googleapis/nodejs-gke-hub). --- packages/google-cloud-gkehub/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/google-cloud-gkehub/package.json b/packages/google-cloud-gkehub/package.json index 61b0349fb93..10f739183ee 100644 --- a/packages/google-cloud-gkehub/package.json +++ b/packages/google-cloud-gkehub/package.json @@ -43,7 +43,7 @@ }, "devDependencies": { "@types/mocha": "^8.0.4", - "@types/node": "^14.14.10", + "@types/node": "^16.0.0", "@types/sinon": "^10.0.0", "c8": "^7.3.5", "gts": "^3.0.3", From 3e4def2e97208905e9585bec7beb7cf2cb64221c Mon Sep 17 00:00:00 2001 From: "F. Hinkelmann" Date: Wed, 3 Nov 2021 11:44:13 -0400 Subject: [PATCH 46/92] chore(cloud-rad): delete api-extractor config (#103) --- .../google-cloud-gkehub/api-extractor.json | 369 ------------------ 1 file changed, 369 deletions(-) delete mode 100644 packages/google-cloud-gkehub/api-extractor.json diff --git a/packages/google-cloud-gkehub/api-extractor.json b/packages/google-cloud-gkehub/api-extractor.json deleted file mode 100644 index de228294b23..00000000000 --- a/packages/google-cloud-gkehub/api-extractor.json +++ /dev/null @@ -1,369 +0,0 @@ -/** - * Config file for API Extractor. For more info, please visit: https://api-extractor.com - */ -{ - "$schema": "https://developer.microsoft.com/json-schemas/api-extractor/v7/api-extractor.schema.json", - - /** - * Optionally specifies another JSON config file that this file extends from. This provides a way for - * standard settings to be shared across multiple projects. - * - * If the path starts with "./" or "../", the path is resolved relative to the folder of the file that contains - * the "extends" field. Otherwise, the first path segment is interpreted as an NPM package name, and will be - * resolved using NodeJS require(). - * - * SUPPORTED TOKENS: none - * DEFAULT VALUE: "" - */ - // "extends": "./shared/api-extractor-base.json" - // "extends": "my-package/include/api-extractor-base.json" - - /** - * Determines the "" token that can be used with other config file settings. The project folder - * typically contains the tsconfig.json and package.json config files, but the path is user-defined. - * - * The path is resolved relative to the folder of the config file that contains the setting. - * - * The default value for "projectFolder" is the token "", which means the folder is determined by traversing - * parent folders, starting from the folder containing api-extractor.json, and stopping at the first folder - * that contains a tsconfig.json file. If a tsconfig.json file cannot be found in this way, then an error - * will be reported. - * - * SUPPORTED TOKENS: - * DEFAULT VALUE: "" - */ - // "projectFolder": "..", - - /** - * (REQUIRED) Specifies the .d.ts file to be used as the starting point for analysis. API Extractor - * analyzes the symbols exported by this module. - * - * The file extension must be ".d.ts" and not ".ts". - * - * The path is resolved relative to the folder of the config file that contains the setting; to change this, - * prepend a folder token such as "". - * - * SUPPORTED TOKENS: , , - */ - "mainEntryPointFilePath": "/protos/protos.d.ts", - - /** - * A list of NPM package names whose exports should be treated as part of this package. - * - * For example, suppose that Webpack is used to generate a distributed bundle for the project "library1", - * and another NPM package "library2" is embedded in this bundle. Some types from library2 may become part - * of the exported API for library1, but by default API Extractor would generate a .d.ts rollup that explicitly - * imports library2. To avoid this, we can specify: - * - * "bundledPackages": [ "library2" ], - * - * This would direct API Extractor to embed those types directly in the .d.ts rollup, as if they had been - * local files for library1. - */ - "bundledPackages": [ ], - - /** - * Determines how the TypeScript compiler engine will be invoked by API Extractor. - */ - "compiler": { - /** - * Specifies the path to the tsconfig.json file to be used by API Extractor when analyzing the project. - * - * The path is resolved relative to the folder of the config file that contains the setting; to change this, - * prepend a folder token such as "". - * - * Note: This setting will be ignored if "overrideTsconfig" is used. - * - * SUPPORTED TOKENS: , , - * DEFAULT VALUE: "/tsconfig.json" - */ - // "tsconfigFilePath": "/tsconfig.json", - - /** - * Provides a compiler configuration that will be used instead of reading the tsconfig.json file from disk. - * The object must conform to the TypeScript tsconfig schema: - * - * http://json.schemastore.org/tsconfig - * - * If omitted, then the tsconfig.json file will be read from the "projectFolder". - * - * DEFAULT VALUE: no overrideTsconfig section - */ - // "overrideTsconfig": { - // . . . - // } - - /** - * This option causes the compiler to be invoked with the --skipLibCheck option. This option is not recommended - * and may cause API Extractor to produce incomplete or incorrect declarations, but it may be required when - * dependencies contain declarations that are incompatible with the TypeScript engine that API Extractor uses - * for its analysis. Where possible, the underlying issue should be fixed rather than relying on skipLibCheck. - * - * DEFAULT VALUE: false - */ - // "skipLibCheck": true, - }, - - /** - * Configures how the API report file (*.api.md) will be generated. - */ - "apiReport": { - /** - * (REQUIRED) Whether to generate an API report. - */ - "enabled": true, - - /** - * The filename for the API report files. It will be combined with "reportFolder" or "reportTempFolder" to produce - * a full file path. - * - * The file extension should be ".api.md", and the string should not contain a path separator such as "\" or "/". - * - * SUPPORTED TOKENS: , - * DEFAULT VALUE: ".api.md" - */ - // "reportFileName": ".api.md", - - /** - * Specifies the folder where the API report file is written. The file name portion is determined by - * the "reportFileName" setting. - * - * The API report file is normally tracked by Git. Changes to it can be used to trigger a branch policy, - * e.g. for an API review. - * - * The path is resolved relative to the folder of the config file that contains the setting; to change this, - * prepend a folder token such as "". - * - * SUPPORTED TOKENS: , , - * DEFAULT VALUE: "/etc/" - */ - // "reportFolder": "/etc/", - - /** - * Specifies the folder where the temporary report file is written. The file name portion is determined by - * the "reportFileName" setting. - * - * After the temporary file is written to disk, it is compared with the file in the "reportFolder". - * If they are different, a production build will fail. - * - * The path is resolved relative to the folder of the config file that contains the setting; to change this, - * prepend a folder token such as "". - * - * SUPPORTED TOKENS: , , - * DEFAULT VALUE: "/temp/" - */ - // "reportTempFolder": "/temp/" - }, - - /** - * Configures how the doc model file (*.api.json) will be generated. - */ - "docModel": { - /** - * (REQUIRED) Whether to generate a doc model file. - */ - "enabled": true, - - /** - * The output path for the doc model file. The file extension should be ".api.json". - * - * The path is resolved relative to the folder of the config file that contains the setting; to change this, - * prepend a folder token such as "". - * - * SUPPORTED TOKENS: , , - * DEFAULT VALUE: "/temp/.api.json" - */ - // "apiJsonFilePath": "/temp/.api.json" - }, - - /** - * Configures how the .d.ts rollup file will be generated. - */ - "dtsRollup": { - /** - * (REQUIRED) Whether to generate the .d.ts rollup file. - */ - "enabled": true, - - /** - * Specifies the output path for a .d.ts rollup file to be generated without any trimming. - * This file will include all declarations that are exported by the main entry point. - * - * If the path is an empty string, then this file will not be written. - * - * The path is resolved relative to the folder of the config file that contains the setting; to change this, - * prepend a folder token such as "". - * - * SUPPORTED TOKENS: , , - * DEFAULT VALUE: "/dist/.d.ts" - */ - // "untrimmedFilePath": "/dist/.d.ts", - - /** - * Specifies the output path for a .d.ts rollup file to be generated with trimming for a "beta" release. - * This file will include only declarations that are marked as "@public" or "@beta". - * - * The path is resolved relative to the folder of the config file that contains the setting; to change this, - * prepend a folder token such as "". - * - * SUPPORTED TOKENS: , , - * DEFAULT VALUE: "" - */ - // "betaTrimmedFilePath": "/dist/-beta.d.ts", - - - /** - * Specifies the output path for a .d.ts rollup file to be generated with trimming for a "public" release. - * This file will include only declarations that are marked as "@public". - * - * If the path is an empty string, then this file will not be written. - * - * The path is resolved relative to the folder of the config file that contains the setting; to change this, - * prepend a folder token such as "". - * - * SUPPORTED TOKENS: , , - * DEFAULT VALUE: "" - */ - // "publicTrimmedFilePath": "/dist/-public.d.ts", - - /** - * When a declaration is trimmed, by default it will be replaced by a code comment such as - * "Excluded from this release type: exampleMember". Set "omitTrimmingComments" to true to remove the - * declaration completely. - * - * DEFAULT VALUE: false - */ - // "omitTrimmingComments": true - }, - - /** - * Configures how the tsdoc-metadata.json file will be generated. - */ - "tsdocMetadata": { - /** - * Whether to generate the tsdoc-metadata.json file. - * - * DEFAULT VALUE: true - */ - // "enabled": true, - - /** - * Specifies where the TSDoc metadata file should be written. - * - * The path is resolved relative to the folder of the config file that contains the setting; to change this, - * prepend a folder token such as "". - * - * The default value is "", which causes the path to be automatically inferred from the "tsdocMetadata", - * "typings" or "main" fields of the project's package.json. If none of these fields are set, the lookup - * falls back to "tsdoc-metadata.json" in the package folder. - * - * SUPPORTED TOKENS: , , - * DEFAULT VALUE: "" - */ - // "tsdocMetadataFilePath": "/dist/tsdoc-metadata.json" - }, - - /** - * Specifies what type of newlines API Extractor should use when writing output files. By default, the output files - * will be written with Windows-style newlines. To use POSIX-style newlines, specify "lf" instead. - * To use the OS's default newline kind, specify "os". - * - * DEFAULT VALUE: "crlf" - */ - // "newlineKind": "crlf", - - /** - * Configures how API Extractor reports error and warning messages produced during analysis. - * - * There are three sources of messages: compiler messages, API Extractor messages, and TSDoc messages. - */ - "messages": { - /** - * Configures handling of diagnostic messages reported by the TypeScript compiler engine while analyzing - * the input .d.ts files. - * - * TypeScript message identifiers start with "TS" followed by an integer. For example: "TS2551" - * - * DEFAULT VALUE: A single "default" entry with logLevel=warning. - */ - "compilerMessageReporting": { - /** - * Configures the default routing for messages that don't match an explicit rule in this table. - */ - "default": { - /** - * Specifies whether the message should be written to the the tool's output log. Note that - * the "addToApiReportFile" property may supersede this option. - * - * Possible values: "error", "warning", "none" - * - * Errors cause the build to fail and return a nonzero exit code. Warnings cause a production build fail - * and return a nonzero exit code. For a non-production build (e.g. when "api-extractor run" includes - * the "--local" option), the warning is displayed but the build will not fail. - * - * DEFAULT VALUE: "warning" - */ - "logLevel": "warning", - - /** - * When addToApiReportFile is true: If API Extractor is configured to write an API report file (.api.md), - * then the message will be written inside that file; otherwise, the message is instead logged according to - * the "logLevel" option. - * - * DEFAULT VALUE: false - */ - // "addToApiReportFile": false - }, - - // "TS2551": { - // "logLevel": "warning", - // "addToApiReportFile": true - // }, - // - // . . . - }, - - /** - * Configures handling of messages reported by API Extractor during its analysis. - * - * API Extractor message identifiers start with "ae-". For example: "ae-extra-release-tag" - * - * DEFAULT VALUE: See api-extractor-defaults.json for the complete table of extractorMessageReporting mappings - */ - "extractorMessageReporting": { - "default": { - "logLevel": "warning", - // "addToApiReportFile": false - }, - - // "ae-extra-release-tag": { - // "logLevel": "warning", - // "addToApiReportFile": true - // }, - // - // . . . - }, - - /** - * Configures handling of messages reported by the TSDoc parser when analyzing code comments. - * - * TSDoc message identifiers start with "tsdoc-". For example: "tsdoc-link-tag-unescaped-text" - * - * DEFAULT VALUE: A single "default" entry with logLevel=warning. - */ - "tsdocMessageReporting": { - "default": { - "logLevel": "warning", - // "addToApiReportFile": false - } - - // "tsdoc-link-tag-unescaped-text": { - // "logLevel": "warning", - // "addToApiReportFile": true - // }, - // - // . . . - } - } - -} From 55edf5e022d30d0fc51d9e7415fabedc6c3f4bc5 Mon Sep 17 00:00:00 2001 From: WhiteSource Renovate Date: Thu, 4 Nov 2021 20:46:36 +0100 Subject: [PATCH 47/92] chore(deps): update dependency sinon to v12 (#104) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit [![WhiteSource Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com) This PR contains the following updates: | Package | Change | Age | Adoption | Passing | Confidence | |---|---|---|---|---|---| | [sinon](https://sinonjs.org/) ([source](https://togithub.com/sinonjs/sinon)) | [`^11.0.0` -> `^12.0.0`](https://renovatebot.com/diffs/npm/sinon/11.1.2/12.0.1) | [![age](https://badges.renovateapi.com/packages/npm/sinon/12.0.1/age-slim)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://badges.renovateapi.com/packages/npm/sinon/12.0.1/adoption-slim)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://badges.renovateapi.com/packages/npm/sinon/12.0.1/compatibility-slim/11.1.2)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://badges.renovateapi.com/packages/npm/sinon/12.0.1/confidence-slim/11.1.2)](https://docs.renovatebot.com/merge-confidence/) | --- ### Release Notes
sinonjs/sinon ### [`v12.0.1`](https://togithub.com/sinonjs/sinon/blob/master/CHANGES.md#​1201) [Compare Source](https://togithub.com/sinonjs/sinon/compare/v12.0.0...v12.0.1) - [`3f598221`](https://togithub.com/sinonjs/sinon/commit/3f598221045904681f2b3b3ba1df617ed5e230e3) Fix issue with npm unlink for npm version > 6 (Carl-Erik Kopseng) > 'npm unlink' would implicitly unlink the current dir > until version 7, which requires an argument - [`51417a38`](https://togithub.com/sinonjs/sinon/commit/51417a38111eeeb7cd14338bfb762cc2df487e1b) Fix bundling of cjs module ([#​2412](https://togithub.com/sinonjs/sinon/issues/2412)) (Julian Grinblat) > - Fix bundling of cjs module > > - Run prettier *Released by [Carl-Erik Kopseng](https://togithub.com/fatso83) on 2021-11-04.* #### 12.0.0 ### [`v12.0.0`](https://togithub.com/sinonjs/sinon/compare/v11.1.2...v12.0.0) [Compare Source](https://togithub.com/sinonjs/sinon/compare/v11.1.2...v12.0.0)
--- ### Configuration 📅 **Schedule**: "after 9am and before 3pm" (UTC). 🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied. ♻ **Rebasing**: Whenever PR is behind base branch, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about this update again. --- - [ ] If you want to rebase/retry this PR, click this checkbox. --- This PR has been generated by [WhiteSource Renovate](https://renovate.whitesourcesoftware.com). View repository job log [here](https://app.renovatebot.com/dashboard#github/googleapis/nodejs-gke-hub). --- packages/google-cloud-gkehub/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/google-cloud-gkehub/package.json b/packages/google-cloud-gkehub/package.json index 10f739183ee..2c28ee5cc7e 100644 --- a/packages/google-cloud-gkehub/package.json +++ b/packages/google-cloud-gkehub/package.json @@ -54,7 +54,7 @@ "mocha": "^8.2.1", "null-loader": "^4.0.1", "pack-n-play": "^1.0.0-2", - "sinon": "^11.0.0", + "sinon": "^12.0.0", "ts-loader": "^9.0.0", "typescript": "^4.1.2", "webpack": "^5.9.0", From 17070e2d6f17fcbd8623fbdc8b09c14fdebf2549 Mon Sep 17 00:00:00 2001 From: "gcf-owl-bot[bot]" <78513119+gcf-owl-bot[bot]@users.noreply.github.com> Date: Tue, 23 Nov 2021 17:40:48 +0000 Subject: [PATCH 48/92] build(npm): update artifact name for npm (#106) docs: add generated samples PiperOrigin-RevId: 408439482 PiperOrigin-RevId: 411806878 --- .../linkinator.config.json | 2 +- .../generated/v1/gke_hub.create_feature.js | 74 ++ .../generated/v1/gke_hub.create_membership.js | 84 ++ .../generated/v1/gke_hub.delete_feature.js | 72 ++ .../generated/v1/gke_hub.delete_membership.js | 68 ++ .../v1/gke_hub.generate_connect_manifest.js | 86 ++ .../generated/v1/gke_hub.get_feature.js | 51 ++ .../generated/v1/gke_hub.get_membership.js | 53 ++ .../generated/v1/gke_hub.list_features.js | 82 ++ .../generated/v1/gke_hub.list_memberships.js | 86 ++ .../generated/v1/gke_hub.update_feature.js | 81 ++ .../generated/v1/gke_hub.update_membership.js | 85 ++ .../v1alpha/gke_hub.create_feature.js | 74 ++ .../v1alpha/gke_hub.delete_feature.js | 72 ++ .../generated/v1alpha/gke_hub.get_feature.js | 51 ++ .../v1alpha/gke_hub.list_features.js | 82 ++ .../v1alpha/gke_hub.update_feature.js | 81 ++ .../v1alpha2/gke_hub.create_membership.js | 70 ++ .../v1alpha2/gke_hub.delete_membership.js | 54 ++ .../gke_hub.generate_connect_manifest.js | 86 ++ .../v1alpha2/gke_hub.get_membership.js | 53 ++ .../v1alpha2/gke_hub.initialize_hub.js | 53 ++ .../v1alpha2/gke_hub.list_memberships.js | 86 ++ .../v1alpha2/gke_hub.update_membership.js | 71 ++ .../v1beta/gke_hub.create_feature.js | 74 ++ .../v1beta/gke_hub.delete_feature.js | 72 ++ .../generated/v1beta/gke_hub.get_feature.js | 51 ++ .../generated/v1beta/gke_hub.list_features.js | 82 ++ .../v1beta/gke_hub.update_feature.js | 81 ++ ...ub_membership_service.create_membership.js | 85 ++ ...ub_membership_service.delete_membership.js | 69 ++ ...rship_service.generate_connect_manifest.js | 76 ++ ...p_service.generate_exclusivity_manifest.js | 66 ++ ...e_hub_membership_service.get_membership.js | 54 ++ ...hub_membership_service.list_memberships.js | 87 ++ ...ub_membership_service.update_membership.js | 87 ++ ...membership_service.validate_exclusivity.js | 65 ++ .../src/v1/gapic_metadata.json | 2 +- .../src/v1/gke_hub_client.ts | 778 +++++++++--------- .../src/v1alpha/gapic_metadata.json | 2 +- .../src/v1alpha/gke_hub_client.ts | 364 ++++---- .../src/v1alpha2/gapic_metadata.json | 2 +- .../src/v1alpha2/gke_hub_client.ts | 440 +++++----- .../src/v1beta/gapic_metadata.json | 2 +- .../src/v1beta/gke_hub_client.ts | 364 ++++---- .../gke_hub_membership_service_client.ts | 552 ++++++------- 46 files changed, 3816 insertions(+), 1296 deletions(-) create mode 100644 packages/google-cloud-gkehub/samples/generated/v1/gke_hub.create_feature.js create mode 100644 packages/google-cloud-gkehub/samples/generated/v1/gke_hub.create_membership.js create mode 100644 packages/google-cloud-gkehub/samples/generated/v1/gke_hub.delete_feature.js create mode 100644 packages/google-cloud-gkehub/samples/generated/v1/gke_hub.delete_membership.js create mode 100644 packages/google-cloud-gkehub/samples/generated/v1/gke_hub.generate_connect_manifest.js create mode 100644 packages/google-cloud-gkehub/samples/generated/v1/gke_hub.get_feature.js create mode 100644 packages/google-cloud-gkehub/samples/generated/v1/gke_hub.get_membership.js create mode 100644 packages/google-cloud-gkehub/samples/generated/v1/gke_hub.list_features.js create mode 100644 packages/google-cloud-gkehub/samples/generated/v1/gke_hub.list_memberships.js create mode 100644 packages/google-cloud-gkehub/samples/generated/v1/gke_hub.update_feature.js create mode 100644 packages/google-cloud-gkehub/samples/generated/v1/gke_hub.update_membership.js create mode 100644 packages/google-cloud-gkehub/samples/generated/v1alpha/gke_hub.create_feature.js create mode 100644 packages/google-cloud-gkehub/samples/generated/v1alpha/gke_hub.delete_feature.js create mode 100644 packages/google-cloud-gkehub/samples/generated/v1alpha/gke_hub.get_feature.js create mode 100644 packages/google-cloud-gkehub/samples/generated/v1alpha/gke_hub.list_features.js create mode 100644 packages/google-cloud-gkehub/samples/generated/v1alpha/gke_hub.update_feature.js create mode 100644 packages/google-cloud-gkehub/samples/generated/v1alpha2/gke_hub.create_membership.js create mode 100644 packages/google-cloud-gkehub/samples/generated/v1alpha2/gke_hub.delete_membership.js create mode 100644 packages/google-cloud-gkehub/samples/generated/v1alpha2/gke_hub.generate_connect_manifest.js create mode 100644 packages/google-cloud-gkehub/samples/generated/v1alpha2/gke_hub.get_membership.js create mode 100644 packages/google-cloud-gkehub/samples/generated/v1alpha2/gke_hub.initialize_hub.js create mode 100644 packages/google-cloud-gkehub/samples/generated/v1alpha2/gke_hub.list_memberships.js create mode 100644 packages/google-cloud-gkehub/samples/generated/v1alpha2/gke_hub.update_membership.js create mode 100644 packages/google-cloud-gkehub/samples/generated/v1beta/gke_hub.create_feature.js create mode 100644 packages/google-cloud-gkehub/samples/generated/v1beta/gke_hub.delete_feature.js create mode 100644 packages/google-cloud-gkehub/samples/generated/v1beta/gke_hub.get_feature.js create mode 100644 packages/google-cloud-gkehub/samples/generated/v1beta/gke_hub.list_features.js create mode 100644 packages/google-cloud-gkehub/samples/generated/v1beta/gke_hub.update_feature.js create mode 100644 packages/google-cloud-gkehub/samples/generated/v1beta1/gke_hub_membership_service.create_membership.js create mode 100644 packages/google-cloud-gkehub/samples/generated/v1beta1/gke_hub_membership_service.delete_membership.js create mode 100644 packages/google-cloud-gkehub/samples/generated/v1beta1/gke_hub_membership_service.generate_connect_manifest.js create mode 100644 packages/google-cloud-gkehub/samples/generated/v1beta1/gke_hub_membership_service.generate_exclusivity_manifest.js create mode 100644 packages/google-cloud-gkehub/samples/generated/v1beta1/gke_hub_membership_service.get_membership.js create mode 100644 packages/google-cloud-gkehub/samples/generated/v1beta1/gke_hub_membership_service.list_memberships.js create mode 100644 packages/google-cloud-gkehub/samples/generated/v1beta1/gke_hub_membership_service.update_membership.js create mode 100644 packages/google-cloud-gkehub/samples/generated/v1beta1/gke_hub_membership_service.validate_exclusivity.js diff --git a/packages/google-cloud-gkehub/linkinator.config.json b/packages/google-cloud-gkehub/linkinator.config.json index 29a223b6db6..0121dfa684f 100644 --- a/packages/google-cloud-gkehub/linkinator.config.json +++ b/packages/google-cloud-gkehub/linkinator.config.json @@ -6,5 +6,5 @@ "img.shields.io" ], "silent": true, - "concurrency": 10 + "concurrency": 5 } diff --git a/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.create_feature.js b/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.create_feature.js new file mode 100644 index 00000000000..403f22f915f --- /dev/null +++ b/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.create_feature.js @@ -0,0 +1,74 @@ +// 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. + +'use strict'; + +function main() { + // [START gkehub_v1_generated_GkeHub_CreateFeature_async] + /** + * TODO(developer): Uncomment these variables before running the sample. + */ + /** + * The parent (project and location) where the Feature will be created. + * Specified in the format `projects/* /locations/*`. + */ + // const parent = 'abc123' + /** + * The ID of the feature to create. + */ + // const featureId = 'abc123' + /** + * The Feature resource to create. + */ + // const resource = {} + /** + * Optional. A request ID to identify requests. Specify a unique request ID + * so that if you must retry your request, the server will know to ignore + * the request if it has already been completed. The server will guarantee + * that for at least 60 minutes after the first request. + * For example, consider a situation where you make an initial request and + * the request times out. If you make the request again with the same request + * ID, the server can check if original operation with the same request ID + * was received, and if so, will ignore the second request. This prevents + * clients from accidentally creating duplicate commitments. + * The request ID must be a valid UUID with the exception that zero UUID is + * not supported (00000000-0000-0000-0000-000000000000). + */ + // const requestId = 'abc123' + + // Imports the Gkehub library + const {GkeHubClient} = require('@google-cloud/gke-hub').v1; + + // Instantiates a client + const gkehubClient = new GkeHubClient(); + + async function callCreateFeature() { + // Construct request + const request = {}; + + // Run request + const [operation] = await gkehubClient.createFeature(request); + const [response] = await operation.promise(); + console.log(response); + } + + callCreateFeature(); + // [END gkehub_v1_generated_GkeHub_CreateFeature_async] +} + +process.on('unhandledRejection', err => { + console.error(err.message); + process.exitCode = 1; +}); +main(...process.argv.slice(2)); diff --git a/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.create_membership.js b/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.create_membership.js new file mode 100644 index 00000000000..63810b59c3d --- /dev/null +++ b/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.create_membership.js @@ -0,0 +1,84 @@ +// 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. + +'use strict'; + +function main(parent, membershipId, resource) { + // [START gkehub_v1_generated_GkeHub_CreateMembership_async] + /** + * TODO(developer): Uncomment these variables before running the sample. + */ + /** + * Required. The parent (project and location) where the Memberships will be created. + * Specified in the format `projects/* /locations/*`. + */ + // const parent = 'abc123' + /** + * Required. Client chosen ID for the membership. `membership_id` must be a valid RFC + * 1123 compliant DNS label: + * 1. At most 63 characters in length + * 2. It must consist of lower case alphanumeric characters or `-` + * 3. It must start and end with an alphanumeric character + * Which can be expressed as the regex: `[a-z0-9]([-a-z0-9]*[a-z0-9])?`, + * with a maximum length of 63 characters. + */ + // const membershipId = 'abc123' + /** + * Required. The membership to create. + */ + // const resource = {} + /** + * Optional. A request ID to identify requests. Specify a unique request ID + * so that if you must retry your request, the server will know to ignore + * the request if it has already been completed. The server will guarantee + * that for at least 60 minutes after the first request. + * For example, consider a situation where you make an initial request and + * the request times out. If you make the request again with the same request + * ID, the server can check if original operation with the same request ID + * was received, and if so, will ignore the second request. This prevents + * clients from accidentally creating duplicate commitments. + * The request ID must be a valid UUID with the exception that zero UUID is + * not supported (00000000-0000-0000-0000-000000000000). + */ + // const requestId = 'abc123' + + // Imports the Gkehub library + const {GkeHubClient} = require('@google-cloud/gke-hub').v1; + + // Instantiates a client + const gkehubClient = new GkeHubClient(); + + async function callCreateMembership() { + // Construct request + const request = { + parent, + membershipId, + resource, + }; + + // Run request + const [operation] = await gkehubClient.createMembership(request); + const [response] = await operation.promise(); + console.log(response); + } + + callCreateMembership(); + // [END gkehub_v1_generated_GkeHub_CreateMembership_async] +} + +process.on('unhandledRejection', err => { + console.error(err.message); + process.exitCode = 1; +}); +main(...process.argv.slice(2)); diff --git a/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.delete_feature.js b/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.delete_feature.js new file mode 100644 index 00000000000..6a54c146a57 --- /dev/null +++ b/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.delete_feature.js @@ -0,0 +1,72 @@ +// 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. + +'use strict'; + +function main() { + // [START gkehub_v1_generated_GkeHub_DeleteFeature_async] + /** + * TODO(developer): Uncomment these variables before running the sample. + */ + /** + * The Feature resource name in the format + * `projects/* /locations/* /features/*`. + */ + // const name = 'abc123' + /** + * If set to true, the delete will ignore any outstanding resources for + * this Feature (that is, `FeatureState.has_resources` is set to true). These + * resources will NOT be cleaned up or modified in any way. + */ + // const force = true + /** + * Optional. A request ID to identify requests. Specify a unique request ID + * so that if you must retry your request, the server will know to ignore + * the request if it has already been completed. The server will guarantee + * that for at least 60 minutes after the first request. + * For example, consider a situation where you make an initial request and + * the request times out. If you make the request again with the same request + * ID, the server can check if original operation with the same request ID + * was received, and if so, will ignore the second request. This prevents + * clients from accidentally creating duplicate commitments. + * The request ID must be a valid UUID with the exception that zero UUID is + * not supported (00000000-0000-0000-0000-000000000000). + */ + // const requestId = 'abc123' + + // Imports the Gkehub library + const {GkeHubClient} = require('@google-cloud/gke-hub').v1; + + // Instantiates a client + const gkehubClient = new GkeHubClient(); + + async function callDeleteFeature() { + // Construct request + const request = {}; + + // Run request + const [operation] = await gkehubClient.deleteFeature(request); + const [response] = await operation.promise(); + console.log(response); + } + + callDeleteFeature(); + // [END gkehub_v1_generated_GkeHub_DeleteFeature_async] +} + +process.on('unhandledRejection', err => { + console.error(err.message); + process.exitCode = 1; +}); +main(...process.argv.slice(2)); diff --git a/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.delete_membership.js b/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.delete_membership.js new file mode 100644 index 00000000000..2a16ecf15dd --- /dev/null +++ b/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.delete_membership.js @@ -0,0 +1,68 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +'use strict'; + +function main(name) { + // [START gkehub_v1_generated_GkeHub_DeleteMembership_async] + /** + * TODO(developer): Uncomment these variables before running the sample. + */ + /** + * Required. The Membership resource name in the format + * `projects/* /locations/* /memberships/*`. + */ + // const name = 'abc123' + /** + * Optional. A request ID to identify requests. Specify a unique request ID + * so that if you must retry your request, the server will know to ignore + * the request if it has already been completed. The server will guarantee + * that for at least 60 minutes after the first request. + * For example, consider a situation where you make an initial request and + * the request times out. If you make the request again with the same request + * ID, the server can check if original operation with the same request ID + * was received, and if so, will ignore the second request. This prevents + * clients from accidentally creating duplicate commitments. + * The request ID must be a valid UUID with the exception that zero UUID is + * not supported (00000000-0000-0000-0000-000000000000). + */ + // const requestId = 'abc123' + + // Imports the Gkehub library + const {GkeHubClient} = require('@google-cloud/gke-hub').v1; + + // Instantiates a client + const gkehubClient = new GkeHubClient(); + + async function callDeleteMembership() { + // Construct request + const request = { + name, + }; + + // Run request + const [operation] = await gkehubClient.deleteMembership(request); + const [response] = await operation.promise(); + console.log(response); + } + + callDeleteMembership(); + // [END gkehub_v1_generated_GkeHub_DeleteMembership_async] +} + +process.on('unhandledRejection', err => { + console.error(err.message); + process.exitCode = 1; +}); +main(...process.argv.slice(2)); diff --git a/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.generate_connect_manifest.js b/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.generate_connect_manifest.js new file mode 100644 index 00000000000..bf11abbe4f9 --- /dev/null +++ b/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.generate_connect_manifest.js @@ -0,0 +1,86 @@ +// 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. + +'use strict'; + +function main(name) { + // [START gkehub_v1_generated_GkeHub_GenerateConnectManifest_async] + /** + * TODO(developer): Uncomment these variables before running the sample. + */ + /** + * Required. The Membership resource name the Agent will associate with, in the format + * `projects/* /locations/* /memberships/*`. + */ + // const name = 'abc123' + /** + * Optional. Namespace for GKE Connect agent resources. Defaults to `gke-connect`. + * The Connect Agent is authorized automatically when run in the default + * namespace. Otherwise, explicit authorization must be granted with an + * additional IAM binding. + */ + // const namespace = 'abc123' + /** + * Optional. URI of a proxy if connectivity from the agent to gkeconnect.googleapis.com + * requires the use of a proxy. Format must be in the form + * `http(s)://{proxy_address}`, depending on the HTTP/HTTPS protocol + * supported by the proxy. This will direct the connect agent's outbound + * traffic through a HTTP(S) proxy. + */ + // const proxy = 'Buffer.from('string')' + /** + * Optional. The Connect agent version to use. Defaults to the most current version. + */ + // const version = 'abc123' + /** + * Optional. If true, generate the resources for upgrade only. Some resources + * generated only for installation (e.g. secrets) will be excluded. + */ + // const isUpgrade = true + /** + * Optional. The registry to fetch the connect agent image from. Defaults to + * gcr.io/gkeconnect. + */ + // const registry = 'abc123' + /** + * Optional. The image pull secret content for the registry, if not public. + */ + // const imagePullSecretContent = 'Buffer.from('string')' + + // Imports the Gkehub library + const {GkeHubClient} = require('@google-cloud/gke-hub').v1; + + // Instantiates a client + const gkehubClient = new GkeHubClient(); + + async function callGenerateConnectManifest() { + // Construct request + const request = { + name, + }; + + // Run request + const response = await gkehubClient.generateConnectManifest(request); + console.log(response); + } + + callGenerateConnectManifest(); + // [END gkehub_v1_generated_GkeHub_GenerateConnectManifest_async] +} + +process.on('unhandledRejection', err => { + console.error(err.message); + process.exitCode = 1; +}); +main(...process.argv.slice(2)); diff --git a/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.get_feature.js b/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.get_feature.js new file mode 100644 index 00000000000..26557f1e9f1 --- /dev/null +++ b/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.get_feature.js @@ -0,0 +1,51 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +'use strict'; + +function main() { + // [START gkehub_v1_generated_GkeHub_GetFeature_async] + /** + * TODO(developer): Uncomment these variables before running the sample. + */ + /** + * The Feature resource name in the format + * `projects/* /locations/* /features/*` + */ + // const name = 'abc123' + + // Imports the Gkehub library + const {GkeHubClient} = require('@google-cloud/gke-hub').v1; + + // Instantiates a client + const gkehubClient = new GkeHubClient(); + + async function callGetFeature() { + // Construct request + const request = {}; + + // Run request + const response = await gkehubClient.getFeature(request); + console.log(response); + } + + callGetFeature(); + // [END gkehub_v1_generated_GkeHub_GetFeature_async] +} + +process.on('unhandledRejection', err => { + console.error(err.message); + process.exitCode = 1; +}); +main(...process.argv.slice(2)); diff --git a/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.get_membership.js b/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.get_membership.js new file mode 100644 index 00000000000..1d2b35f66b4 --- /dev/null +++ b/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.get_membership.js @@ -0,0 +1,53 @@ +// 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. + +'use strict'; + +function main(name) { + // [START gkehub_v1_generated_GkeHub_GetMembership_async] + /** + * TODO(developer): Uncomment these variables before running the sample. + */ + /** + * Required. The Membership resource name in the format + * `projects/* /locations/* /memberships/*`. + */ + // const name = 'abc123' + + // Imports the Gkehub library + const {GkeHubClient} = require('@google-cloud/gke-hub').v1; + + // Instantiates a client + const gkehubClient = new GkeHubClient(); + + async function callGetMembership() { + // Construct request + const request = { + name, + }; + + // Run request + const response = await gkehubClient.getMembership(request); + console.log(response); + } + + callGetMembership(); + // [END gkehub_v1_generated_GkeHub_GetMembership_async] +} + +process.on('unhandledRejection', err => { + console.error(err.message); + process.exitCode = 1; +}); +main(...process.argv.slice(2)); diff --git a/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.list_features.js b/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.list_features.js new file mode 100644 index 00000000000..2fd69d6dd11 --- /dev/null +++ b/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.list_features.js @@ -0,0 +1,82 @@ +// 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. + +'use strict'; + +function main() { + // [START gkehub_v1_generated_GkeHub_ListFeatures_async] + /** + * TODO(developer): Uncomment these variables before running the sample. + */ + /** + * The parent (project and location) where the Features will be listed. + * Specified in the format `projects/* /locations/*`. + */ + // const parent = 'abc123' + /** + * When requesting a 'page' of resources, `page_size` specifies number of + * resources to return. If unspecified or set to 0, all resources will + * be returned. + */ + // const pageSize = 1234 + /** + * Token returned by previous call to `ListFeatures` which + * specifies the position in the list from where to continue listing the + * resources. + */ + // const pageToken = 'abc123' + /** + * Lists Features that match the filter expression, following the syntax + * outlined in https://google.aip.dev/160. + * Examples: + * - Feature with the name "servicemesh" in project "foo-proj": + * name = "projects/foo-proj/locations/global/features/servicemesh" + * - Features that have a label called `foo`: + * labels.foo:* + * - Features that have a label called `foo` whose value is `bar`: + * labels.foo = bar + */ + // const filter = 'abc123' + /** + * One or more fields to compare and use to sort the output. + * See https://google.aip.dev/132#ordering. + */ + // const orderBy = 'abc123' + + // Imports the Gkehub library + const {GkeHubClient} = require('@google-cloud/gke-hub').v1; + + // Instantiates a client + const gkehubClient = new GkeHubClient(); + + async function callListFeatures() { + // Construct request + const request = {}; + + // Run request + const iterable = await gkehubClient.listFeaturesAsync(request); + for await (const response of iterable) { + console.log(response); + } + } + + callListFeatures(); + // [END gkehub_v1_generated_GkeHub_ListFeatures_async] +} + +process.on('unhandledRejection', err => { + console.error(err.message); + process.exitCode = 1; +}); +main(...process.argv.slice(2)); diff --git a/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.list_memberships.js b/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.list_memberships.js new file mode 100644 index 00000000000..59ecf6f062a --- /dev/null +++ b/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.list_memberships.js @@ -0,0 +1,86 @@ +// 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. + +'use strict'; + +function main(parent) { + // [START gkehub_v1_generated_GkeHub_ListMemberships_async] + /** + * TODO(developer): Uncomment these variables before running the sample. + */ + /** + * Required. The parent (project and location) where the Memberships will be listed. + * Specified in the format `projects/* /locations/*`. + */ + // const parent = 'abc123' + /** + * Optional. When requesting a 'page' of resources, `page_size` specifies number of + * resources to return. If unspecified or set to 0, all resources will + * be returned. + */ + // const pageSize = 1234 + /** + * Optional. Token returned by previous call to `ListMemberships` which + * specifies the position in the list from where to continue listing the + * resources. + */ + // const pageToken = 'abc123' + /** + * Optional. Lists Memberships that match the filter expression, following the syntax + * outlined in https://google.aip.dev/160. + * Examples: + * - Name is `bar` in project `foo-proj` and location `global`: + * name = "projects/foo-proj/locations/global/membership/bar" + * - Memberships that have a label called `foo`: + * labels.foo:* + * - Memberships that have a label called `foo` whose value is `bar`: + * labels.foo = bar + * - Memberships in the CREATING state: + * state = CREATING + */ + // const filter = 'abc123' + /** + * Optional. One or more fields to compare and use to sort the output. + * See https://google.aip.dev/132#ordering. + */ + // const orderBy = 'abc123' + + // Imports the Gkehub library + const {GkeHubClient} = require('@google-cloud/gke-hub').v1; + + // Instantiates a client + const gkehubClient = new GkeHubClient(); + + async function callListMemberships() { + // Construct request + const request = { + parent, + }; + + // Run request + const iterable = await gkehubClient.listMembershipsAsync(request); + for await (const response of iterable) { + console.log(response); + } + } + + callListMemberships(); + // [END gkehub_v1_generated_GkeHub_ListMemberships_async] +} + +process.on('unhandledRejection', err => { + console.error(err.message); + process.exitCode = 1; +}); +main(...process.argv.slice(2)); diff --git a/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.update_feature.js b/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.update_feature.js new file mode 100644 index 00000000000..9fc70a6c47a --- /dev/null +++ b/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.update_feature.js @@ -0,0 +1,81 @@ +// 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. + +'use strict'; + +function main() { + // [START gkehub_v1_generated_GkeHub_UpdateFeature_async] + /** + * TODO(developer): Uncomment these variables before running the sample. + */ + /** + * The Feature resource name in the format + * `projects/* /locations/* /features/*`. + */ + // const name = 'abc123' + /** + * Mask of fields to update. + */ + // const updateMask = {} + /** + * Only fields specified in update_mask are updated. + * If you specify a field in the update_mask but don't specify its value here + * that field will be deleted. + * If you are updating a map field, set the value of a key to null or empty + * string to delete the key from the map. It's not possible to update a key's + * value to the empty string. + * If you specify the update_mask to be a special path "*", fully replaces all + * user-modifiable fields to match `resource`. + */ + // const resource = {} + /** + * Optional. A request ID to identify requests. Specify a unique request ID + * so that if you must retry your request, the server will know to ignore + * the request if it has already been completed. The server will guarantee + * that for at least 60 minutes after the first request. + * For example, consider a situation where you make an initial request and + * the request times out. If you make the request again with the same request + * ID, the server can check if original operation with the same request ID + * was received, and if so, will ignore the second request. This prevents + * clients from accidentally creating duplicate commitments. + * The request ID must be a valid UUID with the exception that zero UUID is + * not supported (00000000-0000-0000-0000-000000000000). + */ + // const requestId = 'abc123' + + // Imports the Gkehub library + const {GkeHubClient} = require('@google-cloud/gke-hub').v1; + + // Instantiates a client + const gkehubClient = new GkeHubClient(); + + async function callUpdateFeature() { + // Construct request + const request = {}; + + // Run request + const [operation] = await gkehubClient.updateFeature(request); + const [response] = await operation.promise(); + console.log(response); + } + + callUpdateFeature(); + // [END gkehub_v1_generated_GkeHub_UpdateFeature_async] +} + +process.on('unhandledRejection', err => { + console.error(err.message); + process.exitCode = 1; +}); +main(...process.argv.slice(2)); diff --git a/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.update_membership.js b/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.update_membership.js new file mode 100644 index 00000000000..4366c01d3dc --- /dev/null +++ b/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.update_membership.js @@ -0,0 +1,85 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +'use strict'; + +function main(name, updateMask, resource) { + // [START gkehub_v1_generated_GkeHub_UpdateMembership_async] + /** + * TODO(developer): Uncomment these variables before running the sample. + */ + /** + * Required. The Membership resource name in the format + * `projects/* /locations/* /memberships/*`. + */ + // const name = 'abc123' + /** + * Required. Mask of fields to update. + */ + // const updateMask = {} + /** + * Required. Only fields specified in update_mask are updated. + * If you specify a field in the update_mask but don't specify its value here + * that field will be deleted. + * If you are updating a map field, set the value of a key to null or empty + * string to delete the key from the map. It's not possible to update a key's + * value to the empty string. + * If you specify the update_mask to be a special path "*", fully replaces all + * user-modifiable fields to match `resource`. + */ + // const resource = {} + /** + * Optional. A request ID to identify requests. Specify a unique request ID + * so that if you must retry your request, the server will know to ignore + * the request if it has already been completed. The server will guarantee + * that for at least 60 minutes after the first request. + * For example, consider a situation where you make an initial request and + * the request times out. If you make the request again with the same request + * ID, the server can check if original operation with the same request ID + * was received, and if so, will ignore the second request. This prevents + * clients from accidentally creating duplicate commitments. + * The request ID must be a valid UUID with the exception that zero UUID is + * not supported (00000000-0000-0000-0000-000000000000). + */ + // const requestId = 'abc123' + + // Imports the Gkehub library + const {GkeHubClient} = require('@google-cloud/gke-hub').v1; + + // Instantiates a client + const gkehubClient = new GkeHubClient(); + + async function callUpdateMembership() { + // Construct request + const request = { + name, + updateMask, + resource, + }; + + // Run request + const [operation] = await gkehubClient.updateMembership(request); + const [response] = await operation.promise(); + console.log(response); + } + + callUpdateMembership(); + // [END gkehub_v1_generated_GkeHub_UpdateMembership_async] +} + +process.on('unhandledRejection', err => { + console.error(err.message); + process.exitCode = 1; +}); +main(...process.argv.slice(2)); diff --git a/packages/google-cloud-gkehub/samples/generated/v1alpha/gke_hub.create_feature.js b/packages/google-cloud-gkehub/samples/generated/v1alpha/gke_hub.create_feature.js new file mode 100644 index 00000000000..92be4d3b772 --- /dev/null +++ b/packages/google-cloud-gkehub/samples/generated/v1alpha/gke_hub.create_feature.js @@ -0,0 +1,74 @@ +// 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. + +'use strict'; + +function main() { + // [START gkehub_v1alpha_generated_GkeHub_CreateFeature_async] + /** + * TODO(developer): Uncomment these variables before running the sample. + */ + /** + * The parent (project and location) where the Feature will be created. + * Specified in the format `projects/* /locations/*`. + */ + // const parent = 'abc123' + /** + * The ID of the feature to create. + */ + // const featureId = 'abc123' + /** + * The Feature resource to create. + */ + // const resource = {} + /** + * Optional. A request ID to identify requests. Specify a unique request ID + * so that if you must retry your request, the server will know to ignore + * the request if it has already been completed. The server will guarantee + * that for at least 60 minutes after the first request. + * For example, consider a situation where you make an initial request and + * the request times out. If you make the request again with the same request + * ID, the server can check if original operation with the same request ID + * was received, and if so, will ignore the second request. This prevents + * clients from accidentally creating duplicate commitments. + * The request ID must be a valid UUID with the exception that zero UUID is + * not supported (00000000-0000-0000-0000-000000000000). + */ + // const requestId = 'abc123' + + // Imports the Gkehub library + const {GkeHubClient} = require('@google-cloud/gke-hub').v1alpha; + + // Instantiates a client + const gkehubClient = new GkeHubClient(); + + async function callCreateFeature() { + // Construct request + const request = {}; + + // Run request + const [operation] = await gkehubClient.createFeature(request); + const [response] = await operation.promise(); + console.log(response); + } + + callCreateFeature(); + // [END gkehub_v1alpha_generated_GkeHub_CreateFeature_async] +} + +process.on('unhandledRejection', err => { + console.error(err.message); + process.exitCode = 1; +}); +main(...process.argv.slice(2)); diff --git a/packages/google-cloud-gkehub/samples/generated/v1alpha/gke_hub.delete_feature.js b/packages/google-cloud-gkehub/samples/generated/v1alpha/gke_hub.delete_feature.js new file mode 100644 index 00000000000..718a07d79fc --- /dev/null +++ b/packages/google-cloud-gkehub/samples/generated/v1alpha/gke_hub.delete_feature.js @@ -0,0 +1,72 @@ +// 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. + +'use strict'; + +function main() { + // [START gkehub_v1alpha_generated_GkeHub_DeleteFeature_async] + /** + * TODO(developer): Uncomment these variables before running the sample. + */ + /** + * The Feature resource name in the format + * `projects/* /locations/* /features/*`. + */ + // const name = 'abc123' + /** + * If set to true, the delete will ignore any outstanding resources for + * this Feature (that is, `FeatureState.has_resources` is set to true). These + * resources will NOT be cleaned up or modified in any way. + */ + // const force = true + /** + * Optional. A request ID to identify requests. Specify a unique request ID + * so that if you must retry your request, the server will know to ignore + * the request if it has already been completed. The server will guarantee + * that for at least 60 minutes after the first request. + * For example, consider a situation where you make an initial request and + * the request times out. If you make the request again with the same request + * ID, the server can check if original operation with the same request ID + * was received, and if so, will ignore the second request. This prevents + * clients from accidentally creating duplicate commitments. + * The request ID must be a valid UUID with the exception that zero UUID is + * not supported (00000000-0000-0000-0000-000000000000). + */ + // const requestId = 'abc123' + + // Imports the Gkehub library + const {GkeHubClient} = require('@google-cloud/gke-hub').v1alpha; + + // Instantiates a client + const gkehubClient = new GkeHubClient(); + + async function callDeleteFeature() { + // Construct request + const request = {}; + + // Run request + const [operation] = await gkehubClient.deleteFeature(request); + const [response] = await operation.promise(); + console.log(response); + } + + callDeleteFeature(); + // [END gkehub_v1alpha_generated_GkeHub_DeleteFeature_async] +} + +process.on('unhandledRejection', err => { + console.error(err.message); + process.exitCode = 1; +}); +main(...process.argv.slice(2)); diff --git a/packages/google-cloud-gkehub/samples/generated/v1alpha/gke_hub.get_feature.js b/packages/google-cloud-gkehub/samples/generated/v1alpha/gke_hub.get_feature.js new file mode 100644 index 00000000000..66617f57cbc --- /dev/null +++ b/packages/google-cloud-gkehub/samples/generated/v1alpha/gke_hub.get_feature.js @@ -0,0 +1,51 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +'use strict'; + +function main() { + // [START gkehub_v1alpha_generated_GkeHub_GetFeature_async] + /** + * TODO(developer): Uncomment these variables before running the sample. + */ + /** + * The Feature resource name in the format + * `projects/* /locations/* /features/*` + */ + // const name = 'abc123' + + // Imports the Gkehub library + const {GkeHubClient} = require('@google-cloud/gke-hub').v1alpha; + + // Instantiates a client + const gkehubClient = new GkeHubClient(); + + async function callGetFeature() { + // Construct request + const request = {}; + + // Run request + const response = await gkehubClient.getFeature(request); + console.log(response); + } + + callGetFeature(); + // [END gkehub_v1alpha_generated_GkeHub_GetFeature_async] +} + +process.on('unhandledRejection', err => { + console.error(err.message); + process.exitCode = 1; +}); +main(...process.argv.slice(2)); diff --git a/packages/google-cloud-gkehub/samples/generated/v1alpha/gke_hub.list_features.js b/packages/google-cloud-gkehub/samples/generated/v1alpha/gke_hub.list_features.js new file mode 100644 index 00000000000..52adca1aa9c --- /dev/null +++ b/packages/google-cloud-gkehub/samples/generated/v1alpha/gke_hub.list_features.js @@ -0,0 +1,82 @@ +// 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. + +'use strict'; + +function main() { + // [START gkehub_v1alpha_generated_GkeHub_ListFeatures_async] + /** + * TODO(developer): Uncomment these variables before running the sample. + */ + /** + * The parent (project and location) where the Features will be listed. + * Specified in the format `projects/* /locations/*`. + */ + // const parent = 'abc123' + /** + * When requesting a 'page' of resources, `page_size` specifies number of + * resources to return. If unspecified or set to 0, all resources will + * be returned. + */ + // const pageSize = 1234 + /** + * Token returned by previous call to `ListFeatures` which + * specifies the position in the list from where to continue listing the + * resources. + */ + // const pageToken = 'abc123' + /** + * Lists Features that match the filter expression, following the syntax + * outlined in https://google.aip.dev/160. + * Examples: + * - Feature with the name "servicemesh" in project "foo-proj": + * name = "projects/foo-proj/locations/global/features/servicemesh" + * - Features that have a label called `foo`: + * labels.foo:* + * - Features that have a label called `foo` whose value is `bar`: + * labels.foo = bar + */ + // const filter = 'abc123' + /** + * One or more fields to compare and use to sort the output. + * See https://google.aip.dev/132#ordering. + */ + // const orderBy = 'abc123' + + // Imports the Gkehub library + const {GkeHubClient} = require('@google-cloud/gke-hub').v1alpha; + + // Instantiates a client + const gkehubClient = new GkeHubClient(); + + async function callListFeatures() { + // Construct request + const request = {}; + + // Run request + const iterable = await gkehubClient.listFeaturesAsync(request); + for await (const response of iterable) { + console.log(response); + } + } + + callListFeatures(); + // [END gkehub_v1alpha_generated_GkeHub_ListFeatures_async] +} + +process.on('unhandledRejection', err => { + console.error(err.message); + process.exitCode = 1; +}); +main(...process.argv.slice(2)); diff --git a/packages/google-cloud-gkehub/samples/generated/v1alpha/gke_hub.update_feature.js b/packages/google-cloud-gkehub/samples/generated/v1alpha/gke_hub.update_feature.js new file mode 100644 index 00000000000..dae3cdbfd55 --- /dev/null +++ b/packages/google-cloud-gkehub/samples/generated/v1alpha/gke_hub.update_feature.js @@ -0,0 +1,81 @@ +// 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. + +'use strict'; + +function main() { + // [START gkehub_v1alpha_generated_GkeHub_UpdateFeature_async] + /** + * TODO(developer): Uncomment these variables before running the sample. + */ + /** + * The Feature resource name in the format + * `projects/* /locations/* /features/*`. + */ + // const name = 'abc123' + /** + * Mask of fields to update. + */ + // const updateMask = {} + /** + * Only fields specified in update_mask are updated. + * If you specify a field in the update_mask but don't specify its value here + * that field will be deleted. + * If you are updating a map field, set the value of a key to null or empty + * string to delete the key from the map. It's not possible to update a key's + * value to the empty string. + * If you specify the update_mask to be a special path "*", fully replaces all + * user-modifiable fields to match `resource`. + */ + // const resource = {} + /** + * Optional. A request ID to identify requests. Specify a unique request ID + * so that if you must retry your request, the server will know to ignore + * the request if it has already been completed. The server will guarantee + * that for at least 60 minutes after the first request. + * For example, consider a situation where you make an initial request and + * the request times out. If you make the request again with the same request + * ID, the server can check if original operation with the same request ID + * was received, and if so, will ignore the second request. This prevents + * clients from accidentally creating duplicate commitments. + * The request ID must be a valid UUID with the exception that zero UUID is + * not supported (00000000-0000-0000-0000-000000000000). + */ + // const requestId = 'abc123' + + // Imports the Gkehub library + const {GkeHubClient} = require('@google-cloud/gke-hub').v1alpha; + + // Instantiates a client + const gkehubClient = new GkeHubClient(); + + async function callUpdateFeature() { + // Construct request + const request = {}; + + // Run request + const [operation] = await gkehubClient.updateFeature(request); + const [response] = await operation.promise(); + console.log(response); + } + + callUpdateFeature(); + // [END gkehub_v1alpha_generated_GkeHub_UpdateFeature_async] +} + +process.on('unhandledRejection', err => { + console.error(err.message); + process.exitCode = 1; +}); +main(...process.argv.slice(2)); diff --git a/packages/google-cloud-gkehub/samples/generated/v1alpha2/gke_hub.create_membership.js b/packages/google-cloud-gkehub/samples/generated/v1alpha2/gke_hub.create_membership.js new file mode 100644 index 00000000000..1ee9cb56419 --- /dev/null +++ b/packages/google-cloud-gkehub/samples/generated/v1alpha2/gke_hub.create_membership.js @@ -0,0 +1,70 @@ +// 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. + +'use strict'; + +function main(parent, membershipId, resource) { + // [START gkehub_v1alpha2_generated_GkeHub_CreateMembership_async] + /** + * TODO(developer): Uncomment these variables before running the sample. + */ + /** + * Required. The parent (project and location) where the Memberships will be created. + * Specified in the format `projects/* /locations/*`. + */ + // const parent = 'abc123' + /** + * Required. Client chosen ID for the membership. `membership_id` must be a valid RFC + * 1123 compliant DNS label: + * 1. At most 63 characters in length + * 2. It must consist of lower case alphanumeric characters or `-` + * 3. It must start and end with an alphanumeric character + * Which can be expressed as the regex: `[a-z0-9]([-a-z0-9]*[a-z0-9])?`, + * with a maximum length of 63 characters. + */ + // const membershipId = 'abc123' + /** + * Required. The membership to create. + */ + // const resource = {} + + // Imports the Gkehub library + const {GkeHubClient} = require('@google-cloud/gke-hub').v1alpha2; + + // Instantiates a client + const gkehubClient = new GkeHubClient(); + + async function callCreateMembership() { + // Construct request + const request = { + parent, + membershipId, + resource, + }; + + // Run request + const [operation] = await gkehubClient.createMembership(request); + const [response] = await operation.promise(); + console.log(response); + } + + callCreateMembership(); + // [END gkehub_v1alpha2_generated_GkeHub_CreateMembership_async] +} + +process.on('unhandledRejection', err => { + console.error(err.message); + process.exitCode = 1; +}); +main(...process.argv.slice(2)); diff --git a/packages/google-cloud-gkehub/samples/generated/v1alpha2/gke_hub.delete_membership.js b/packages/google-cloud-gkehub/samples/generated/v1alpha2/gke_hub.delete_membership.js new file mode 100644 index 00000000000..9b580ae6838 --- /dev/null +++ b/packages/google-cloud-gkehub/samples/generated/v1alpha2/gke_hub.delete_membership.js @@ -0,0 +1,54 @@ +// 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. + +'use strict'; + +function main(name) { + // [START gkehub_v1alpha2_generated_GkeHub_DeleteMembership_async] + /** + * TODO(developer): Uncomment these variables before running the sample. + */ + /** + * Required. The Membership resource name in the format + * `projects/* /locations/* /memberships/*`. + */ + // const name = 'abc123' + + // Imports the Gkehub library + const {GkeHubClient} = require('@google-cloud/gke-hub').v1alpha2; + + // Instantiates a client + const gkehubClient = new GkeHubClient(); + + async function callDeleteMembership() { + // Construct request + const request = { + name, + }; + + // Run request + const [operation] = await gkehubClient.deleteMembership(request); + const [response] = await operation.promise(); + console.log(response); + } + + callDeleteMembership(); + // [END gkehub_v1alpha2_generated_GkeHub_DeleteMembership_async] +} + +process.on('unhandledRejection', err => { + console.error(err.message); + process.exitCode = 1; +}); +main(...process.argv.slice(2)); diff --git a/packages/google-cloud-gkehub/samples/generated/v1alpha2/gke_hub.generate_connect_manifest.js b/packages/google-cloud-gkehub/samples/generated/v1alpha2/gke_hub.generate_connect_manifest.js new file mode 100644 index 00000000000..e6b6823b292 --- /dev/null +++ b/packages/google-cloud-gkehub/samples/generated/v1alpha2/gke_hub.generate_connect_manifest.js @@ -0,0 +1,86 @@ +// 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. + +'use strict'; + +function main(name) { + // [START gkehub_v1alpha2_generated_GkeHub_GenerateConnectManifest_async] + /** + * TODO(developer): Uncomment these variables before running the sample. + */ + /** + * Required. The Membership resource name the Agent will associate with, in the format + * `projects/* /locations/* /memberships/*`. + */ + // const name = 'abc123' + /** + * Optional. Namespace for GKE Connect agent resources. Defaults to `gke-connect`. + * The Connect Agent is authorized automatically when run in the default + * namespace. Otherwise, explicit authorization must be granted with an + * additional IAM binding. + */ + // const namespace = 'abc123' + /** + * Optional. URI of a proxy if connectivity from the agent to gkeconnect.googleapis.com + * requires the use of a proxy. Format must be in the form + * `http(s)://{proxy_address}`, depending on the HTTP/HTTPS protocol + * supported by the proxy. This will direct the connect agent's outbound + * traffic through a HTTP(S) proxy. + */ + // const proxy = 'Buffer.from('string')' + /** + * Optional. The Connect agent version to use. Defaults to the most current version. + */ + // const version = 'abc123' + /** + * Optional. If true, generate the resources for upgrade only. Some resources + * generated only for installation (e.g. secrets) will be excluded. + */ + // const isUpgrade = true + /** + * Optional. The registry to fetch the connect agent image from. Defaults to + * gcr.io/gkeconnect. + */ + // const registry = 'abc123' + /** + * Optional. The image pull secret content for the registry, if not public. + */ + // const imagePullSecretContent = 'Buffer.from('string')' + + // Imports the Gkehub library + const {GkeHubClient} = require('@google-cloud/gke-hub').v1alpha2; + + // Instantiates a client + const gkehubClient = new GkeHubClient(); + + async function callGenerateConnectManifest() { + // Construct request + const request = { + name, + }; + + // Run request + const response = await gkehubClient.generateConnectManifest(request); + console.log(response); + } + + callGenerateConnectManifest(); + // [END gkehub_v1alpha2_generated_GkeHub_GenerateConnectManifest_async] +} + +process.on('unhandledRejection', err => { + console.error(err.message); + process.exitCode = 1; +}); +main(...process.argv.slice(2)); diff --git a/packages/google-cloud-gkehub/samples/generated/v1alpha2/gke_hub.get_membership.js b/packages/google-cloud-gkehub/samples/generated/v1alpha2/gke_hub.get_membership.js new file mode 100644 index 00000000000..013f6f230c6 --- /dev/null +++ b/packages/google-cloud-gkehub/samples/generated/v1alpha2/gke_hub.get_membership.js @@ -0,0 +1,53 @@ +// 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. + +'use strict'; + +function main(name) { + // [START gkehub_v1alpha2_generated_GkeHub_GetMembership_async] + /** + * TODO(developer): Uncomment these variables before running the sample. + */ + /** + * Required. The Membership resource name in the format + * `projects/* /locations/* /memberships/*`. + */ + // const name = 'abc123' + + // Imports the Gkehub library + const {GkeHubClient} = require('@google-cloud/gke-hub').v1alpha2; + + // Instantiates a client + const gkehubClient = new GkeHubClient(); + + async function callGetMembership() { + // Construct request + const request = { + name, + }; + + // Run request + const response = await gkehubClient.getMembership(request); + console.log(response); + } + + callGetMembership(); + // [END gkehub_v1alpha2_generated_GkeHub_GetMembership_async] +} + +process.on('unhandledRejection', err => { + console.error(err.message); + process.exitCode = 1; +}); +main(...process.argv.slice(2)); diff --git a/packages/google-cloud-gkehub/samples/generated/v1alpha2/gke_hub.initialize_hub.js b/packages/google-cloud-gkehub/samples/generated/v1alpha2/gke_hub.initialize_hub.js new file mode 100644 index 00000000000..01f9ef7c8bb --- /dev/null +++ b/packages/google-cloud-gkehub/samples/generated/v1alpha2/gke_hub.initialize_hub.js @@ -0,0 +1,53 @@ +// 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. + +'use strict'; + +function main(project) { + // [START gkehub_v1alpha2_generated_GkeHub_InitializeHub_async] + /** + * TODO(developer): Uncomment these variables before running the sample. + */ + /** + * Required. The Hub to initialize, in the format + * `projects/* /locations/* /memberships/*`. + */ + // const project = 'my-project' + + // Imports the Gkehub library + const {GkeHubClient} = require('@google-cloud/gke-hub').v1alpha2; + + // Instantiates a client + const gkehubClient = new GkeHubClient(); + + async function callInitializeHub() { + // Construct request + const request = { + project, + }; + + // Run request + const response = await gkehubClient.initializeHub(request); + console.log(response); + } + + callInitializeHub(); + // [END gkehub_v1alpha2_generated_GkeHub_InitializeHub_async] +} + +process.on('unhandledRejection', err => { + console.error(err.message); + process.exitCode = 1; +}); +main(...process.argv.slice(2)); diff --git a/packages/google-cloud-gkehub/samples/generated/v1alpha2/gke_hub.list_memberships.js b/packages/google-cloud-gkehub/samples/generated/v1alpha2/gke_hub.list_memberships.js new file mode 100644 index 00000000000..eea696aca93 --- /dev/null +++ b/packages/google-cloud-gkehub/samples/generated/v1alpha2/gke_hub.list_memberships.js @@ -0,0 +1,86 @@ +// 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. + +'use strict'; + +function main(parent) { + // [START gkehub_v1alpha2_generated_GkeHub_ListMemberships_async] + /** + * TODO(developer): Uncomment these variables before running the sample. + */ + /** + * Required. The parent (project and location) where the Memberships will be listed. + * Specified in the format `projects/* /locations/*`. + */ + // const parent = 'abc123' + /** + * Optional. When requesting a 'page' of resources, `page_size` specifies number of + * resources to return. If unspecified or set to 0, all resources will + * be returned. + */ + // const pageSize = 1234 + /** + * Optional. Token returned by previous call to `ListMemberships` which + * specifies the position in the list from where to continue listing the + * resources. + */ + // const pageToken = 'abc123' + /** + * Optional. Lists Memberships that match the filter expression, following the syntax + * outlined in https://google.aip.dev/160. + * Examples: + * - Name is `bar` in project `foo-proj` and location `global`: + * name = "projects/foo-proj/locations/global/membership/bar" + * - Memberships that have a label called `foo`: + * labels.foo:* + * - Memberships that have a label called `foo` whose value is `bar`: + * labels.foo = bar + * - Memberships in the CREATING state: + * state = CREATING + */ + // const filter = 'abc123' + /** + * Optional. One or more fields to compare and use to sort the output. + * See https://google.aip.dev/132#ordering. + */ + // const orderBy = 'abc123' + + // Imports the Gkehub library + const {GkeHubClient} = require('@google-cloud/gke-hub').v1alpha2; + + // Instantiates a client + const gkehubClient = new GkeHubClient(); + + async function callListMemberships() { + // Construct request + const request = { + parent, + }; + + // Run request + const iterable = await gkehubClient.listMembershipsAsync(request); + for await (const response of iterable) { + console.log(response); + } + } + + callListMemberships(); + // [END gkehub_v1alpha2_generated_GkeHub_ListMemberships_async] +} + +process.on('unhandledRejection', err => { + console.error(err.message); + process.exitCode = 1; +}); +main(...process.argv.slice(2)); diff --git a/packages/google-cloud-gkehub/samples/generated/v1alpha2/gke_hub.update_membership.js b/packages/google-cloud-gkehub/samples/generated/v1alpha2/gke_hub.update_membership.js new file mode 100644 index 00000000000..cbd399ab3e1 --- /dev/null +++ b/packages/google-cloud-gkehub/samples/generated/v1alpha2/gke_hub.update_membership.js @@ -0,0 +1,71 @@ +// 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. + +'use strict'; + +function main(name, updateMask, resource) { + // [START gkehub_v1alpha2_generated_GkeHub_UpdateMembership_async] + /** + * TODO(developer): Uncomment these variables before running the sample. + */ + /** + * Required. The Membership resource name in the format + * `projects/* /locations/* /memberships/*`. + */ + // const name = 'abc123' + /** + * Required. Mask of fields to update. + */ + // const updateMask = {} + /** + * Required. Only fields specified in update_mask are updated. + * If you specify a field in the update_mask but don't specify its value here + * that field will be deleted. + * If you are updating a map field, set the value of a key to null or empty + * string to delete the key from the map. It's not possible to update a key's + * value to the empty string. + * If you specify the update_mask to be a special path "*", fully replaces all + * user-modifiable fields to match `resource`. + */ + // const resource = {} + + // Imports the Gkehub library + const {GkeHubClient} = require('@google-cloud/gke-hub').v1alpha2; + + // Instantiates a client + const gkehubClient = new GkeHubClient(); + + async function callUpdateMembership() { + // Construct request + const request = { + name, + updateMask, + resource, + }; + + // Run request + const [operation] = await gkehubClient.updateMembership(request); + const [response] = await operation.promise(); + console.log(response); + } + + callUpdateMembership(); + // [END gkehub_v1alpha2_generated_GkeHub_UpdateMembership_async] +} + +process.on('unhandledRejection', err => { + console.error(err.message); + process.exitCode = 1; +}); +main(...process.argv.slice(2)); diff --git a/packages/google-cloud-gkehub/samples/generated/v1beta/gke_hub.create_feature.js b/packages/google-cloud-gkehub/samples/generated/v1beta/gke_hub.create_feature.js new file mode 100644 index 00000000000..b730f0ab860 --- /dev/null +++ b/packages/google-cloud-gkehub/samples/generated/v1beta/gke_hub.create_feature.js @@ -0,0 +1,74 @@ +// 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. + +'use strict'; + +function main() { + // [START gkehub_v1beta_generated_GkeHub_CreateFeature_async] + /** + * TODO(developer): Uncomment these variables before running the sample. + */ + /** + * The parent (project and location) where the Feature will be created. + * Specified in the format `projects/* /locations/*`. + */ + // const parent = 'abc123' + /** + * The ID of the feature to create. + */ + // const featureId = 'abc123' + /** + * The Feature resource to create. + */ + // const resource = {} + /** + * Optional. A request ID to identify requests. Specify a unique request ID + * so that if you must retry your request, the server will know to ignore + * the request if it has already been completed. The server will guarantee + * that for at least 60 minutes after the first request. + * For example, consider a situation where you make an initial request and + * the request times out. If you make the request again with the same request + * ID, the server can check if original operation with the same request ID + * was received, and if so, will ignore the second request. This prevents + * clients from accidentally creating duplicate commitments. + * The request ID must be a valid UUID with the exception that zero UUID is + * not supported (00000000-0000-0000-0000-000000000000). + */ + // const requestId = 'abc123' + + // Imports the Gkehub library + const {GkeHubClient} = require('@google-cloud/gke-hub').v1beta; + + // Instantiates a client + const gkehubClient = new GkeHubClient(); + + async function callCreateFeature() { + // Construct request + const request = {}; + + // Run request + const [operation] = await gkehubClient.createFeature(request); + const [response] = await operation.promise(); + console.log(response); + } + + callCreateFeature(); + // [END gkehub_v1beta_generated_GkeHub_CreateFeature_async] +} + +process.on('unhandledRejection', err => { + console.error(err.message); + process.exitCode = 1; +}); +main(...process.argv.slice(2)); diff --git a/packages/google-cloud-gkehub/samples/generated/v1beta/gke_hub.delete_feature.js b/packages/google-cloud-gkehub/samples/generated/v1beta/gke_hub.delete_feature.js new file mode 100644 index 00000000000..a96fba3b3b1 --- /dev/null +++ b/packages/google-cloud-gkehub/samples/generated/v1beta/gke_hub.delete_feature.js @@ -0,0 +1,72 @@ +// 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. + +'use strict'; + +function main() { + // [START gkehub_v1beta_generated_GkeHub_DeleteFeature_async] + /** + * TODO(developer): Uncomment these variables before running the sample. + */ + /** + * The Feature resource name in the format + * `projects/* /locations/* /features/*`. + */ + // const name = 'abc123' + /** + * If set to true, the delete will ignore any outstanding resources for + * this Feature (that is, `FeatureState.has_resources` is set to true). These + * resources will NOT be cleaned up or modified in any way. + */ + // const force = true + /** + * Optional. A request ID to identify requests. Specify a unique request ID + * so that if you must retry your request, the server will know to ignore + * the request if it has already been completed. The server will guarantee + * that for at least 60 minutes after the first request. + * For example, consider a situation where you make an initial request and + * the request times out. If you make the request again with the same request + * ID, the server can check if original operation with the same request ID + * was received, and if so, will ignore the second request. This prevents + * clients from accidentally creating duplicate commitments. + * The request ID must be a valid UUID with the exception that zero UUID is + * not supported (00000000-0000-0000-0000-000000000000). + */ + // const requestId = 'abc123' + + // Imports the Gkehub library + const {GkeHubClient} = require('@google-cloud/gke-hub').v1beta; + + // Instantiates a client + const gkehubClient = new GkeHubClient(); + + async function callDeleteFeature() { + // Construct request + const request = {}; + + // Run request + const [operation] = await gkehubClient.deleteFeature(request); + const [response] = await operation.promise(); + console.log(response); + } + + callDeleteFeature(); + // [END gkehub_v1beta_generated_GkeHub_DeleteFeature_async] +} + +process.on('unhandledRejection', err => { + console.error(err.message); + process.exitCode = 1; +}); +main(...process.argv.slice(2)); diff --git a/packages/google-cloud-gkehub/samples/generated/v1beta/gke_hub.get_feature.js b/packages/google-cloud-gkehub/samples/generated/v1beta/gke_hub.get_feature.js new file mode 100644 index 00000000000..ac59ca22b7f --- /dev/null +++ b/packages/google-cloud-gkehub/samples/generated/v1beta/gke_hub.get_feature.js @@ -0,0 +1,51 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +'use strict'; + +function main() { + // [START gkehub_v1beta_generated_GkeHub_GetFeature_async] + /** + * TODO(developer): Uncomment these variables before running the sample. + */ + /** + * The Feature resource name in the format + * `projects/* /locations/* /features/*` + */ + // const name = 'abc123' + + // Imports the Gkehub library + const {GkeHubClient} = require('@google-cloud/gke-hub').v1beta; + + // Instantiates a client + const gkehubClient = new GkeHubClient(); + + async function callGetFeature() { + // Construct request + const request = {}; + + // Run request + const response = await gkehubClient.getFeature(request); + console.log(response); + } + + callGetFeature(); + // [END gkehub_v1beta_generated_GkeHub_GetFeature_async] +} + +process.on('unhandledRejection', err => { + console.error(err.message); + process.exitCode = 1; +}); +main(...process.argv.slice(2)); diff --git a/packages/google-cloud-gkehub/samples/generated/v1beta/gke_hub.list_features.js b/packages/google-cloud-gkehub/samples/generated/v1beta/gke_hub.list_features.js new file mode 100644 index 00000000000..6a7e00969e2 --- /dev/null +++ b/packages/google-cloud-gkehub/samples/generated/v1beta/gke_hub.list_features.js @@ -0,0 +1,82 @@ +// 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. + +'use strict'; + +function main() { + // [START gkehub_v1beta_generated_GkeHub_ListFeatures_async] + /** + * TODO(developer): Uncomment these variables before running the sample. + */ + /** + * The parent (project and location) where the Features will be listed. + * Specified in the format `projects/* /locations/*`. + */ + // const parent = 'abc123' + /** + * When requesting a 'page' of resources, `page_size` specifies number of + * resources to return. If unspecified or set to 0, all resources will + * be returned. + */ + // const pageSize = 1234 + /** + * Token returned by previous call to `ListFeatures` which + * specifies the position in the list from where to continue listing the + * resources. + */ + // const pageToken = 'abc123' + /** + * Lists Features that match the filter expression, following the syntax + * outlined in https://google.aip.dev/160. + * Examples: + * - Feature with the name "servicemesh" in project "foo-proj": + * name = "projects/foo-proj/locations/global/features/servicemesh" + * - Features that have a label called `foo`: + * labels.foo:* + * - Features that have a label called `foo` whose value is `bar`: + * labels.foo = bar + */ + // const filter = 'abc123' + /** + * One or more fields to compare and use to sort the output. + * See https://google.aip.dev/132#ordering. + */ + // const orderBy = 'abc123' + + // Imports the Gkehub library + const {GkeHubClient} = require('@google-cloud/gke-hub').v1beta; + + // Instantiates a client + const gkehubClient = new GkeHubClient(); + + async function callListFeatures() { + // Construct request + const request = {}; + + // Run request + const iterable = await gkehubClient.listFeaturesAsync(request); + for await (const response of iterable) { + console.log(response); + } + } + + callListFeatures(); + // [END gkehub_v1beta_generated_GkeHub_ListFeatures_async] +} + +process.on('unhandledRejection', err => { + console.error(err.message); + process.exitCode = 1; +}); +main(...process.argv.slice(2)); diff --git a/packages/google-cloud-gkehub/samples/generated/v1beta/gke_hub.update_feature.js b/packages/google-cloud-gkehub/samples/generated/v1beta/gke_hub.update_feature.js new file mode 100644 index 00000000000..e125bb771d9 --- /dev/null +++ b/packages/google-cloud-gkehub/samples/generated/v1beta/gke_hub.update_feature.js @@ -0,0 +1,81 @@ +// 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. + +'use strict'; + +function main() { + // [START gkehub_v1beta_generated_GkeHub_UpdateFeature_async] + /** + * TODO(developer): Uncomment these variables before running the sample. + */ + /** + * The Feature resource name in the format + * `projects/* /locations/* /features/*`. + */ + // const name = 'abc123' + /** + * Mask of fields to update. + */ + // const updateMask = {} + /** + * Only fields specified in update_mask are updated. + * If you specify a field in the update_mask but don't specify its value here + * that field will be deleted. + * If you are updating a map field, set the value of a key to null or empty + * string to delete the key from the map. It's not possible to update a key's + * value to the empty string. + * If you specify the update_mask to be a special path "*", fully replaces all + * user-modifiable fields to match `resource`. + */ + // const resource = {} + /** + * Optional. A request ID to identify requests. Specify a unique request ID + * so that if you must retry your request, the server will know to ignore + * the request if it has already been completed. The server will guarantee + * that for at least 60 minutes after the first request. + * For example, consider a situation where you make an initial request and + * the request times out. If you make the request again with the same request + * ID, the server can check if original operation with the same request ID + * was received, and if so, will ignore the second request. This prevents + * clients from accidentally creating duplicate commitments. + * The request ID must be a valid UUID with the exception that zero UUID is + * not supported (00000000-0000-0000-0000-000000000000). + */ + // const requestId = 'abc123' + + // Imports the Gkehub library + const {GkeHubClient} = require('@google-cloud/gke-hub').v1beta; + + // Instantiates a client + const gkehubClient = new GkeHubClient(); + + async function callUpdateFeature() { + // Construct request + const request = {}; + + // Run request + const [operation] = await gkehubClient.updateFeature(request); + const [response] = await operation.promise(); + console.log(response); + } + + callUpdateFeature(); + // [END gkehub_v1beta_generated_GkeHub_UpdateFeature_async] +} + +process.on('unhandledRejection', err => { + console.error(err.message); + process.exitCode = 1; +}); +main(...process.argv.slice(2)); diff --git a/packages/google-cloud-gkehub/samples/generated/v1beta1/gke_hub_membership_service.create_membership.js b/packages/google-cloud-gkehub/samples/generated/v1beta1/gke_hub_membership_service.create_membership.js new file mode 100644 index 00000000000..909e73e4206 --- /dev/null +++ b/packages/google-cloud-gkehub/samples/generated/v1beta1/gke_hub_membership_service.create_membership.js @@ -0,0 +1,85 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +'use strict'; + +function main(parent, membershipId, resource) { + // [START gkehub_v1beta1_generated_GkeHubMembershipService_CreateMembership_async] + /** + * TODO(developer): Uncomment these variables before running the sample. + */ + /** + * Required. The parent (project and location) where the Memberships will be created. + * Specified in the format `projects/* /locations/*`. + */ + // const parent = 'abc123' + /** + * Required. Client chosen ID for the membership. `membership_id` must be a valid RFC + * 1123 compliant DNS label: + * 1. At most 63 characters in length + * 2. It must consist of lower case alphanumeric characters or `-` + * 3. It must start and end with an alphanumeric character + * Which can be expressed as the regex: `[a-z0-9]([-a-z0-9]*[a-z0-9])?`, + * with a maximum length of 63 characters. + */ + // const membershipId = 'abc123' + /** + * Required. The membership to create. + */ + // const resource = {} + /** + * Optional. A request ID to identify requests. Specify a unique request ID + * so that if you must retry your request, the server will know to ignore + * the request if it has already been completed. The server will guarantee + * that for at least 60 minutes after the first request. + * For example, consider a situation where you make an initial request and + * the request times out. If you make the request again with the same request + * ID, the server can check if original operation with the same request ID + * was received, and if so, will ignore the second request. This prevents + * clients from accidentally creating duplicate commitments. + * The request ID must be a valid UUID with the exception that zero UUID is + * not supported (00000000-0000-0000-0000-000000000000). + */ + // const requestId = 'abc123' + + // Imports the Gkehub library + const {GkeHubMembershipServiceClient} = + require('@google-cloud/gke-hub').v1beta1; + + // Instantiates a client + const gkehubClient = new GkeHubMembershipServiceClient(); + + async function callCreateMembership() { + // Construct request + const request = { + parent, + membershipId, + resource, + }; + + // Run request + const [operation] = await gkehubClient.createMembership(request); + const [response] = await operation.promise(); + console.log(response); + } + + callCreateMembership(); + // [END gkehub_v1beta1_generated_GkeHubMembershipService_CreateMembership_async] +} + +process.on('unhandledRejection', err => { + console.error(err.message); + process.exitCode = 1; +}); +main(...process.argv.slice(2)); diff --git a/packages/google-cloud-gkehub/samples/generated/v1beta1/gke_hub_membership_service.delete_membership.js b/packages/google-cloud-gkehub/samples/generated/v1beta1/gke_hub_membership_service.delete_membership.js new file mode 100644 index 00000000000..d80bb72dbc0 --- /dev/null +++ b/packages/google-cloud-gkehub/samples/generated/v1beta1/gke_hub_membership_service.delete_membership.js @@ -0,0 +1,69 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +'use strict'; + +function main(name) { + // [START gkehub_v1beta1_generated_GkeHubMembershipService_DeleteMembership_async] + /** + * TODO(developer): Uncomment these variables before running the sample. + */ + /** + * Required. The Membership resource name in the format + * `projects/* /locations/* /memberships/*`. + */ + // const name = 'abc123' + /** + * Optional. A request ID to identify requests. Specify a unique request ID + * so that if you must retry your request, the server will know to ignore + * the request if it has already been completed. The server will guarantee + * that for at least 60 minutes after the first request. + * For example, consider a situation where you make an initial request and + * the request times out. If you make the request again with the same request + * ID, the server can check if original operation with the same request ID + * was received, and if so, will ignore the second request. This prevents + * clients from accidentally creating duplicate commitments. + * The request ID must be a valid UUID with the exception that zero UUID is + * not supported (00000000-0000-0000-0000-000000000000). + */ + // const requestId = 'abc123' + + // Imports the Gkehub library + const {GkeHubMembershipServiceClient} = + require('@google-cloud/gke-hub').v1beta1; + + // Instantiates a client + const gkehubClient = new GkeHubMembershipServiceClient(); + + async function callDeleteMembership() { + // Construct request + const request = { + name, + }; + + // Run request + const [operation] = await gkehubClient.deleteMembership(request); + const [response] = await operation.promise(); + console.log(response); + } + + callDeleteMembership(); + // [END gkehub_v1beta1_generated_GkeHubMembershipService_DeleteMembership_async] +} + +process.on('unhandledRejection', err => { + console.error(err.message); + process.exitCode = 1; +}); +main(...process.argv.slice(2)); diff --git a/packages/google-cloud-gkehub/samples/generated/v1beta1/gke_hub_membership_service.generate_connect_manifest.js b/packages/google-cloud-gkehub/samples/generated/v1beta1/gke_hub_membership_service.generate_connect_manifest.js new file mode 100644 index 00000000000..518d6304b4b --- /dev/null +++ b/packages/google-cloud-gkehub/samples/generated/v1beta1/gke_hub_membership_service.generate_connect_manifest.js @@ -0,0 +1,76 @@ +// 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. + +'use strict'; + +function main(name) { + // [START gkehub_v1beta1_generated_GkeHubMembershipService_GenerateConnectManifest_async] + /** + * TODO(developer): Uncomment these variables before running the sample. + */ + /** + * Required. The Membership resource name the Agent will associate with, in the format + * `projects/* /locations/* /memberships/*`. + */ + // const name = 'abc123' + /** + * Optional. The connect agent to generate manifest for. + */ + // const connectAgent = {} + /** + * Optional. The Connect agent version to use. Defaults to the most current version. + */ + // const version = 'abc123' + /** + * Optional. If true, generate the resources for upgrade only. Some resources + * generated only for installation (e.g. secrets) will be excluded. + */ + // const isUpgrade = true + /** + * Optional. The registry to fetch the connect agent image from. Defaults to + * gcr.io/gkeconnect. + */ + // const registry = 'abc123' + /** + * Optional. The image pull secret content for the registry, if not public. + */ + // const imagePullSecretContent = 'Buffer.from('string')' + + // Imports the Gkehub library + const {GkeHubMembershipServiceClient} = + require('@google-cloud/gke-hub').v1beta1; + + // Instantiates a client + const gkehubClient = new GkeHubMembershipServiceClient(); + + async function callGenerateConnectManifest() { + // Construct request + const request = { + name, + }; + + // Run request + const response = await gkehubClient.generateConnectManifest(request); + console.log(response); + } + + callGenerateConnectManifest(); + // [END gkehub_v1beta1_generated_GkeHubMembershipService_GenerateConnectManifest_async] +} + +process.on('unhandledRejection', err => { + console.error(err.message); + process.exitCode = 1; +}); +main(...process.argv.slice(2)); diff --git a/packages/google-cloud-gkehub/samples/generated/v1beta1/gke_hub_membership_service.generate_exclusivity_manifest.js b/packages/google-cloud-gkehub/samples/generated/v1beta1/gke_hub_membership_service.generate_exclusivity_manifest.js new file mode 100644 index 00000000000..cbc673dc193 --- /dev/null +++ b/packages/google-cloud-gkehub/samples/generated/v1beta1/gke_hub_membership_service.generate_exclusivity_manifest.js @@ -0,0 +1,66 @@ +// 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. + +'use strict'; + +function main(name) { + // [START gkehub_v1beta1_generated_GkeHubMembershipService_GenerateExclusivityManifest_async] + /** + * TODO(developer): Uncomment these variables before running the sample. + */ + /** + * Required. The Membership resource name in the format + * `projects/* /locations/* /memberships/*`. + */ + // const name = 'abc123' + /** + * Optional. The YAML manifest of the membership CRD retrieved by + * `kubectl get customresourcedefinitions membership`. + * Leave empty if the resource does not exist. + */ + // const crdManifest = 'abc123' + /** + * Optional. The YAML manifest of the membership CR retrieved by + * `kubectl get memberships membership`. + * Leave empty if the resource does not exist. + */ + // const crManifest = 'abc123' + + // Imports the Gkehub library + const {GkeHubMembershipServiceClient} = + require('@google-cloud/gke-hub').v1beta1; + + // Instantiates a client + const gkehubClient = new GkeHubMembershipServiceClient(); + + async function callGenerateExclusivityManifest() { + // Construct request + const request = { + name, + }; + + // Run request + const response = await gkehubClient.generateExclusivityManifest(request); + console.log(response); + } + + callGenerateExclusivityManifest(); + // [END gkehub_v1beta1_generated_GkeHubMembershipService_GenerateExclusivityManifest_async] +} + +process.on('unhandledRejection', err => { + console.error(err.message); + process.exitCode = 1; +}); +main(...process.argv.slice(2)); diff --git a/packages/google-cloud-gkehub/samples/generated/v1beta1/gke_hub_membership_service.get_membership.js b/packages/google-cloud-gkehub/samples/generated/v1beta1/gke_hub_membership_service.get_membership.js new file mode 100644 index 00000000000..daf2f0ae78b --- /dev/null +++ b/packages/google-cloud-gkehub/samples/generated/v1beta1/gke_hub_membership_service.get_membership.js @@ -0,0 +1,54 @@ +// 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. + +'use strict'; + +function main(name) { + // [START gkehub_v1beta1_generated_GkeHubMembershipService_GetMembership_async] + /** + * TODO(developer): Uncomment these variables before running the sample. + */ + /** + * Required. The Membership resource name in the format + * `projects/* /locations/* /memberships/*`. + */ + // const name = 'abc123' + + // Imports the Gkehub library + const {GkeHubMembershipServiceClient} = + require('@google-cloud/gke-hub').v1beta1; + + // Instantiates a client + const gkehubClient = new GkeHubMembershipServiceClient(); + + async function callGetMembership() { + // Construct request + const request = { + name, + }; + + // Run request + const response = await gkehubClient.getMembership(request); + console.log(response); + } + + callGetMembership(); + // [END gkehub_v1beta1_generated_GkeHubMembershipService_GetMembership_async] +} + +process.on('unhandledRejection', err => { + console.error(err.message); + process.exitCode = 1; +}); +main(...process.argv.slice(2)); diff --git a/packages/google-cloud-gkehub/samples/generated/v1beta1/gke_hub_membership_service.list_memberships.js b/packages/google-cloud-gkehub/samples/generated/v1beta1/gke_hub_membership_service.list_memberships.js new file mode 100644 index 00000000000..b5506e35402 --- /dev/null +++ b/packages/google-cloud-gkehub/samples/generated/v1beta1/gke_hub_membership_service.list_memberships.js @@ -0,0 +1,87 @@ +// 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. + +'use strict'; + +function main(parent) { + // [START gkehub_v1beta1_generated_GkeHubMembershipService_ListMemberships_async] + /** + * TODO(developer): Uncomment these variables before running the sample. + */ + /** + * Required. The parent (project and location) where the Memberships will be listed. + * Specified in the format `projects/* /locations/*`. + */ + // const parent = 'abc123' + /** + * Optional. When requesting a 'page' of resources, `page_size` specifies number of + * resources to return. If unspecified or set to 0, all resources will + * be returned. + */ + // const pageSize = 1234 + /** + * Optional. Token returned by previous call to `ListMemberships` which + * specifies the position in the list from where to continue listing the + * resources. + */ + // const pageToken = 'abc123' + /** + * Optional. Lists Memberships that match the filter expression, following the syntax + * outlined in https://google.aip.dev/160. + * Examples: + * - Name is `bar` in project `foo-proj` and location `global`: + * name = "projects/foo-proj/locations/global/membership/bar" + * - Memberships that have a label called `foo`: + * labels.foo:* + * - Memberships that have a label called `foo` whose value is `bar`: + * labels.foo = bar + * - Memberships in the CREATING state: + * state = CREATING + */ + // const filter = 'abc123' + /** + * Optional. One or more fields to compare and use to sort the output. + * See https://google.aip.dev/132#ordering. + */ + // const orderBy = 'abc123' + + // Imports the Gkehub library + const {GkeHubMembershipServiceClient} = + require('@google-cloud/gke-hub').v1beta1; + + // Instantiates a client + const gkehubClient = new GkeHubMembershipServiceClient(); + + async function callListMemberships() { + // Construct request + const request = { + parent, + }; + + // Run request + const iterable = await gkehubClient.listMembershipsAsync(request); + for await (const response of iterable) { + console.log(response); + } + } + + callListMemberships(); + // [END gkehub_v1beta1_generated_GkeHubMembershipService_ListMemberships_async] +} + +process.on('unhandledRejection', err => { + console.error(err.message); + process.exitCode = 1; +}); +main(...process.argv.slice(2)); diff --git a/packages/google-cloud-gkehub/samples/generated/v1beta1/gke_hub_membership_service.update_membership.js b/packages/google-cloud-gkehub/samples/generated/v1beta1/gke_hub_membership_service.update_membership.js new file mode 100644 index 00000000000..f221a650bdc --- /dev/null +++ b/packages/google-cloud-gkehub/samples/generated/v1beta1/gke_hub_membership_service.update_membership.js @@ -0,0 +1,87 @@ +// 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. + +'use strict'; + +function main(name, updateMask, resource) { + // [START gkehub_v1beta1_generated_GkeHubMembershipService_UpdateMembership_async] + /** + * TODO(developer): Uncomment these variables before running the sample. + */ + /** + * Required. The membership resource name in the format: + * `projects/[project_id]/locations/global/memberships/[membership_id]` + */ + // const name = 'abc123' + /** + * Required. Mask of fields to update. At least one field path must be specified in this + * mask. + */ + // const updateMask = {} + /** + * Required. Only fields specified in update_mask are updated. + * If you specify a field in the update_mask but don't specify its value here + * that field will be deleted. + * If you are updating a map field, set the value of a key to null or empty + * string to delete the key from the map. It's not possible to update a key's + * value to the empty string. + * If you specify the update_mask to be a special path "*", fully replaces all + * user-modifiable fields to match `resource`. + */ + // const resource = {} + /** + * Optional. A request ID to identify requests. Specify a unique request ID + * so that if you must retry your request, the server will know to ignore + * the request if it has already been completed. The server will guarantee + * that for at least 60 minutes after the first request. + * For example, consider a situation where you make an initial request and + * the request times out. If you make the request again with the same request + * ID, the server can check if original operation with the same request ID + * was received, and if so, will ignore the second request. This prevents + * clients from accidentally creating duplicate commitments. + * The request ID must be a valid UUID with the exception that zero UUID is + * not supported (00000000-0000-0000-0000-000000000000). + */ + // const requestId = 'abc123' + + // Imports the Gkehub library + const {GkeHubMembershipServiceClient} = + require('@google-cloud/gke-hub').v1beta1; + + // Instantiates a client + const gkehubClient = new GkeHubMembershipServiceClient(); + + async function callUpdateMembership() { + // Construct request + const request = { + name, + updateMask, + resource, + }; + + // Run request + const [operation] = await gkehubClient.updateMembership(request); + const [response] = await operation.promise(); + console.log(response); + } + + callUpdateMembership(); + // [END gkehub_v1beta1_generated_GkeHubMembershipService_UpdateMembership_async] +} + +process.on('unhandledRejection', err => { + console.error(err.message); + process.exitCode = 1; +}); +main(...process.argv.slice(2)); diff --git a/packages/google-cloud-gkehub/samples/generated/v1beta1/gke_hub_membership_service.validate_exclusivity.js b/packages/google-cloud-gkehub/samples/generated/v1beta1/gke_hub_membership_service.validate_exclusivity.js new file mode 100644 index 00000000000..8b2cf631da5 --- /dev/null +++ b/packages/google-cloud-gkehub/samples/generated/v1beta1/gke_hub_membership_service.validate_exclusivity.js @@ -0,0 +1,65 @@ +// 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. + +'use strict'; + +function main(parent, intendedMembership) { + // [START gkehub_v1beta1_generated_GkeHubMembershipService_ValidateExclusivity_async] + /** + * TODO(developer): Uncomment these variables before running the sample. + */ + /** + * Required. The parent (project and location) where the Memberships will be created. + * Specified in the format `projects/* /locations/*`. + */ + // const parent = 'abc123' + /** + * Optional. The YAML of the membership CR in the cluster. Empty if the membership + * CR does not exist. + */ + // const crManifest = 'abc123' + /** + * Required. The intended membership name under the `parent`. This method only does + * validation in anticipation of a CreateMembership call with the same name. + */ + // const intendedMembership = 'abc123' + + // Imports the Gkehub library + const {GkeHubMembershipServiceClient} = + require('@google-cloud/gke-hub').v1beta1; + + // Instantiates a client + const gkehubClient = new GkeHubMembershipServiceClient(); + + async function callValidateExclusivity() { + // Construct request + const request = { + parent, + intendedMembership, + }; + + // Run request + const response = await gkehubClient.validateExclusivity(request); + console.log(response); + } + + callValidateExclusivity(); + // [END gkehub_v1beta1_generated_GkeHubMembershipService_ValidateExclusivity_async] +} + +process.on('unhandledRejection', err => { + console.error(err.message); + process.exitCode = 1; +}); +main(...process.argv.slice(2)); diff --git a/packages/google-cloud-gkehub/src/v1/gapic_metadata.json b/packages/google-cloud-gkehub/src/v1/gapic_metadata.json index 2d0cf704d17..d63689a48a5 100644 --- a/packages/google-cloud-gkehub/src/v1/gapic_metadata.json +++ b/packages/google-cloud-gkehub/src/v1/gapic_metadata.json @@ -3,7 +3,7 @@ "comment": "This file maps proto services/RPCs to the corresponding library clients/methods", "language": "typescript", "protoPackage": "google.cloud.gkehub.v1", - "libraryPackage": "@google-cloud/gkehub", + "libraryPackage": "@google-cloud/gke-hub", "services": { "GkeHub": { "clients": { diff --git a/packages/google-cloud-gkehub/src/v1/gke_hub_client.ts b/packages/google-cloud-gkehub/src/v1/gke_hub_client.ts index bd914e8ae08..c28b44a3b47 100644 --- a/packages/google-cloud-gkehub/src/v1/gke_hub_client.ts +++ b/packages/google-cloud-gkehub/src/v1/gke_hub_client.ts @@ -437,6 +437,24 @@ export class GkeHubClient { // ------------------- // -- Service calls -- // ------------------- + /** + * Gets the details of a Membership. + * + * @param {Object} request + * The request object that will be sent. + * @param {string} request.name + * Required. The Membership resource name in the format + * `projects/* /locations/* /memberships/*`. + * @param {object} [options] + * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. + * @returns {Promise} - The promise which resolves to an array. + * The first element of the array is an object representing [Membership]{@link google.cloud.gkehub.v1.Membership}. + * Please see the + * [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods) + * for more details and examples. + * @example include:samples/generated/v1/gke_hub.get_membership.js + * region_tag:gkehub_v1_generated_GkeHub_GetMembership_async + */ getMembership( request?: protos.google.cloud.gkehub.v1.IGetMembershipRequest, options?: CallOptions @@ -464,24 +482,6 @@ export class GkeHubClient { {} | null | undefined > ): void; - /** - * Gets the details of a Membership. - * - * @param {Object} request - * The request object that will be sent. - * @param {string} request.name - * Required. The Membership resource name in the format - * `projects/* /locations/* /memberships/*`. - * @param {object} [options] - * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. - * @returns {Promise} - The promise which resolves to an array. - * The first element of the array is an object representing [Membership]{@link google.cloud.gkehub.v1.Membership}. - * Please see the - * [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods) - * for more details and examples. - * @example - * const [response] = await client.getMembership(request); - */ getMembership( request?: protos.google.cloud.gkehub.v1.IGetMembershipRequest, optionsOrCallback?: @@ -523,6 +523,24 @@ export class GkeHubClient { this.initialize(); return this.innerApiCalls.getMembership(request, options, callback); } + /** + * Gets details of a single Feature. + * + * @param {Object} request + * The request object that will be sent. + * @param {string} request.name + * The Feature resource name in the format + * `projects/* /locations/* /features/*` + * @param {object} [options] + * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. + * @returns {Promise} - The promise which resolves to an array. + * The first element of the array is an object representing [Feature]{@link google.cloud.gkehub.v1.Feature}. + * Please see the + * [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods) + * for more details and examples. + * @example include:samples/generated/v1/gke_hub.get_feature.js + * region_tag:gkehub_v1_generated_GkeHub_GetFeature_async + */ getFeature( request?: protos.google.cloud.gkehub.v1.IGetFeatureRequest, options?: CallOptions @@ -550,24 +568,6 @@ export class GkeHubClient { {} | null | undefined > ): void; - /** - * Gets details of a single Feature. - * - * @param {Object} request - * The request object that will be sent. - * @param {string} request.name - * The Feature resource name in the format - * `projects/* /locations/* /features/*` - * @param {object} [options] - * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. - * @returns {Promise} - The promise which resolves to an array. - * The first element of the array is an object representing [Feature]{@link google.cloud.gkehub.v1.Feature}. - * Please see the - * [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods) - * for more details and examples. - * @example - * const [response] = await client.getFeature(request); - */ getFeature( request?: protos.google.cloud.gkehub.v1.IGetFeatureRequest, optionsOrCallback?: @@ -607,37 +607,6 @@ export class GkeHubClient { this.initialize(); return this.innerApiCalls.getFeature(request, options, callback); } - generateConnectManifest( - request?: protos.google.cloud.gkehub.v1.IGenerateConnectManifestRequest, - options?: CallOptions - ): Promise< - [ - protos.google.cloud.gkehub.v1.IGenerateConnectManifestResponse, - protos.google.cloud.gkehub.v1.IGenerateConnectManifestRequest | undefined, - {} | undefined - ] - >; - generateConnectManifest( - request: protos.google.cloud.gkehub.v1.IGenerateConnectManifestRequest, - options: CallOptions, - callback: Callback< - protos.google.cloud.gkehub.v1.IGenerateConnectManifestResponse, - | protos.google.cloud.gkehub.v1.IGenerateConnectManifestRequest - | null - | undefined, - {} | null | undefined - > - ): void; - generateConnectManifest( - request: protos.google.cloud.gkehub.v1.IGenerateConnectManifestRequest, - callback: Callback< - protos.google.cloud.gkehub.v1.IGenerateConnectManifestResponse, - | protos.google.cloud.gkehub.v1.IGenerateConnectManifestRequest - | null - | undefined, - {} | null | undefined - > - ): void; /** * Generates the manifest for deployment of the GKE connect agent. * @@ -678,9 +647,40 @@ export class GkeHubClient { * Please see the * [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods) * for more details and examples. - * @example - * const [response] = await client.generateConnectManifest(request); + * @example include:samples/generated/v1/gke_hub.generate_connect_manifest.js + * region_tag:gkehub_v1_generated_GkeHub_GenerateConnectManifest_async */ + generateConnectManifest( + request?: protos.google.cloud.gkehub.v1.IGenerateConnectManifestRequest, + options?: CallOptions + ): Promise< + [ + protos.google.cloud.gkehub.v1.IGenerateConnectManifestResponse, + protos.google.cloud.gkehub.v1.IGenerateConnectManifestRequest | undefined, + {} | undefined + ] + >; + generateConnectManifest( + request: protos.google.cloud.gkehub.v1.IGenerateConnectManifestRequest, + options: CallOptions, + callback: Callback< + protos.google.cloud.gkehub.v1.IGenerateConnectManifestResponse, + | protos.google.cloud.gkehub.v1.IGenerateConnectManifestRequest + | null + | undefined, + {} | null | undefined + > + ): void; + generateConnectManifest( + request: protos.google.cloud.gkehub.v1.IGenerateConnectManifestRequest, + callback: Callback< + protos.google.cloud.gkehub.v1.IGenerateConnectManifestResponse, + | protos.google.cloud.gkehub.v1.IGenerateConnectManifestRequest + | null + | undefined, + {} | null | undefined + > + ): void; generateConnectManifest( request?: protos.google.cloud.gkehub.v1.IGenerateConnectManifestRequest, optionsOrCallback?: @@ -729,42 +729,6 @@ export class GkeHubClient { ); } - createMembership( - request?: protos.google.cloud.gkehub.v1.ICreateMembershipRequest, - options?: CallOptions - ): Promise< - [ - LROperation< - protos.google.cloud.gkehub.v1.IMembership, - protos.google.cloud.gkehub.v1.IOperationMetadata - >, - protos.google.longrunning.IOperation | undefined, - {} | undefined - ] - >; - createMembership( - request: protos.google.cloud.gkehub.v1.ICreateMembershipRequest, - options: CallOptions, - callback: Callback< - LROperation< - protos.google.cloud.gkehub.v1.IMembership, - protos.google.cloud.gkehub.v1.IOperationMetadata - >, - protos.google.longrunning.IOperation | null | undefined, - {} | null | undefined - > - ): void; - createMembership( - request: protos.google.cloud.gkehub.v1.ICreateMembershipRequest, - callback: Callback< - LROperation< - protos.google.cloud.gkehub.v1.IMembership, - protos.google.cloud.gkehub.v1.IOperationMetadata - >, - protos.google.longrunning.IOperation | null | undefined, - {} | null | undefined - > - ): void; /** * Creates a new Membership. * @@ -812,10 +776,45 @@ export class GkeHubClient { * Please see the * [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations) * for more details and examples. - * @example - * const [operation] = await client.createMembership(request); - * const [response] = await operation.promise(); + * @example include:samples/generated/v1/gke_hub.create_membership.js + * region_tag:gkehub_v1_generated_GkeHub_CreateMembership_async */ + createMembership( + request?: protos.google.cloud.gkehub.v1.ICreateMembershipRequest, + options?: CallOptions + ): Promise< + [ + LROperation< + protos.google.cloud.gkehub.v1.IMembership, + protos.google.cloud.gkehub.v1.IOperationMetadata + >, + protos.google.longrunning.IOperation | undefined, + {} | undefined + ] + >; + createMembership( + request: protos.google.cloud.gkehub.v1.ICreateMembershipRequest, + options: CallOptions, + callback: Callback< + LROperation< + protos.google.cloud.gkehub.v1.IMembership, + protos.google.cloud.gkehub.v1.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + > + ): void; + createMembership( + request: protos.google.cloud.gkehub.v1.ICreateMembershipRequest, + callback: Callback< + LROperation< + protos.google.cloud.gkehub.v1.IMembership, + protos.google.cloud.gkehub.v1.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + > + ): void; createMembership( request?: protos.google.cloud.gkehub.v1.ICreateMembershipRequest, optionsOrCallback?: @@ -873,11 +872,8 @@ export class GkeHubClient { * Please see the * [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations) * for more details and examples. - * @example - * const decodedOperation = await checkCreateMembershipProgress(name); - * console.log(decodedOperation.result); - * console.log(decodedOperation.done); - * console.log(decodedOperation.metadata); + * @example include:samples/generated/v1/gke_hub.create_membership.js + * region_tag:gkehub_v1_generated_GkeHub_CreateMembership_async */ async checkCreateMembershipProgress( name: string @@ -901,42 +897,6 @@ export class GkeHubClient { protos.google.cloud.gkehub.v1.OperationMetadata >; } - createFeature( - request?: protos.google.cloud.gkehub.v1.ICreateFeatureRequest, - options?: CallOptions - ): Promise< - [ - LROperation< - protos.google.cloud.gkehub.v1.IFeature, - protos.google.cloud.gkehub.v1.IOperationMetadata - >, - protos.google.longrunning.IOperation | undefined, - {} | undefined - ] - >; - createFeature( - request: protos.google.cloud.gkehub.v1.ICreateFeatureRequest, - options: CallOptions, - callback: Callback< - LROperation< - protos.google.cloud.gkehub.v1.IFeature, - protos.google.cloud.gkehub.v1.IOperationMetadata - >, - protos.google.longrunning.IOperation | null | undefined, - {} | null | undefined - > - ): void; - createFeature( - request: protos.google.cloud.gkehub.v1.ICreateFeatureRequest, - callback: Callback< - LROperation< - protos.google.cloud.gkehub.v1.IFeature, - protos.google.cloud.gkehub.v1.IOperationMetadata - >, - protos.google.longrunning.IOperation | null | undefined, - {} | null | undefined - > - ): void; /** * Adds a new Feature. * @@ -972,10 +932,45 @@ export class GkeHubClient { * Please see the * [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations) * for more details and examples. - * @example - * const [operation] = await client.createFeature(request); - * const [response] = await operation.promise(); + * @example include:samples/generated/v1/gke_hub.create_feature.js + * region_tag:gkehub_v1_generated_GkeHub_CreateFeature_async */ + createFeature( + request?: protos.google.cloud.gkehub.v1.ICreateFeatureRequest, + options?: CallOptions + ): Promise< + [ + LROperation< + protos.google.cloud.gkehub.v1.IFeature, + protos.google.cloud.gkehub.v1.IOperationMetadata + >, + protos.google.longrunning.IOperation | undefined, + {} | undefined + ] + >; + createFeature( + request: protos.google.cloud.gkehub.v1.ICreateFeatureRequest, + options: CallOptions, + callback: Callback< + LROperation< + protos.google.cloud.gkehub.v1.IFeature, + protos.google.cloud.gkehub.v1.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + > + ): void; + createFeature( + request: protos.google.cloud.gkehub.v1.ICreateFeatureRequest, + callback: Callback< + LROperation< + protos.google.cloud.gkehub.v1.IFeature, + protos.google.cloud.gkehub.v1.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + > + ): void; createFeature( request?: protos.google.cloud.gkehub.v1.ICreateFeatureRequest, optionsOrCallback?: @@ -1033,11 +1028,8 @@ export class GkeHubClient { * Please see the * [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations) * for more details and examples. - * @example - * const decodedOperation = await checkCreateFeatureProgress(name); - * console.log(decodedOperation.result); - * console.log(decodedOperation.done); - * console.log(decodedOperation.metadata); + * @example include:samples/generated/v1/gke_hub.create_feature.js + * region_tag:gkehub_v1_generated_GkeHub_CreateFeature_async */ async checkCreateFeatureProgress( name: string @@ -1061,42 +1053,6 @@ export class GkeHubClient { protos.google.cloud.gkehub.v1.OperationMetadata >; } - deleteMembership( - request?: protos.google.cloud.gkehub.v1.IDeleteMembershipRequest, - options?: CallOptions - ): Promise< - [ - LROperation< - protos.google.protobuf.IEmpty, - protos.google.cloud.gkehub.v1.IOperationMetadata - >, - protos.google.longrunning.IOperation | undefined, - {} | undefined - ] - >; - deleteMembership( - request: protos.google.cloud.gkehub.v1.IDeleteMembershipRequest, - options: CallOptions, - callback: Callback< - LROperation< - protos.google.protobuf.IEmpty, - protos.google.cloud.gkehub.v1.IOperationMetadata - >, - protos.google.longrunning.IOperation | null | undefined, - {} | null | undefined - > - ): void; - deleteMembership( - request: protos.google.cloud.gkehub.v1.IDeleteMembershipRequest, - callback: Callback< - LROperation< - protos.google.protobuf.IEmpty, - protos.google.cloud.gkehub.v1.IOperationMetadata - >, - protos.google.longrunning.IOperation | null | undefined, - {} | null | undefined - > - ): void; /** * Removes a Membership. * @@ -1132,10 +1088,45 @@ export class GkeHubClient { * Please see the * [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations) * for more details and examples. - * @example - * const [operation] = await client.deleteMembership(request); - * const [response] = await operation.promise(); + * @example include:samples/generated/v1/gke_hub.delete_membership.js + * region_tag:gkehub_v1_generated_GkeHub_DeleteMembership_async */ + deleteMembership( + request?: protos.google.cloud.gkehub.v1.IDeleteMembershipRequest, + options?: CallOptions + ): Promise< + [ + LROperation< + protos.google.protobuf.IEmpty, + protos.google.cloud.gkehub.v1.IOperationMetadata + >, + protos.google.longrunning.IOperation | undefined, + {} | undefined + ] + >; + deleteMembership( + request: protos.google.cloud.gkehub.v1.IDeleteMembershipRequest, + options: CallOptions, + callback: Callback< + LROperation< + protos.google.protobuf.IEmpty, + protos.google.cloud.gkehub.v1.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + > + ): void; + deleteMembership( + request: protos.google.cloud.gkehub.v1.IDeleteMembershipRequest, + callback: Callback< + LROperation< + protos.google.protobuf.IEmpty, + protos.google.cloud.gkehub.v1.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + > + ): void; deleteMembership( request?: protos.google.cloud.gkehub.v1.IDeleteMembershipRequest, optionsOrCallback?: @@ -1193,11 +1184,8 @@ export class GkeHubClient { * Please see the * [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations) * for more details and examples. - * @example - * const decodedOperation = await checkDeleteMembershipProgress(name); - * console.log(decodedOperation.result); - * console.log(decodedOperation.done); - * console.log(decodedOperation.metadata); + * @example include:samples/generated/v1/gke_hub.delete_membership.js + * region_tag:gkehub_v1_generated_GkeHub_DeleteMembership_async */ async checkDeleteMembershipProgress( name: string @@ -1221,42 +1209,6 @@ export class GkeHubClient { protos.google.cloud.gkehub.v1.OperationMetadata >; } - deleteFeature( - request?: protos.google.cloud.gkehub.v1.IDeleteFeatureRequest, - options?: CallOptions - ): Promise< - [ - LROperation< - protos.google.protobuf.IEmpty, - protos.google.cloud.gkehub.v1.IOperationMetadata - >, - protos.google.longrunning.IOperation | undefined, - {} | undefined - ] - >; - deleteFeature( - request: protos.google.cloud.gkehub.v1.IDeleteFeatureRequest, - options: CallOptions, - callback: Callback< - LROperation< - protos.google.protobuf.IEmpty, - protos.google.cloud.gkehub.v1.IOperationMetadata - >, - protos.google.longrunning.IOperation | null | undefined, - {} | null | undefined - > - ): void; - deleteFeature( - request: protos.google.cloud.gkehub.v1.IDeleteFeatureRequest, - callback: Callback< - LROperation< - protos.google.protobuf.IEmpty, - protos.google.cloud.gkehub.v1.IOperationMetadata - >, - protos.google.longrunning.IOperation | null | undefined, - {} | null | undefined - > - ): void; /** * Removes a Feature. * @@ -1292,10 +1244,45 @@ export class GkeHubClient { * Please see the * [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations) * for more details and examples. - * @example - * const [operation] = await client.deleteFeature(request); - * const [response] = await operation.promise(); + * @example include:samples/generated/v1/gke_hub.delete_feature.js + * region_tag:gkehub_v1_generated_GkeHub_DeleteFeature_async */ + deleteFeature( + request?: protos.google.cloud.gkehub.v1.IDeleteFeatureRequest, + options?: CallOptions + ): Promise< + [ + LROperation< + protos.google.protobuf.IEmpty, + protos.google.cloud.gkehub.v1.IOperationMetadata + >, + protos.google.longrunning.IOperation | undefined, + {} | undefined + ] + >; + deleteFeature( + request: protos.google.cloud.gkehub.v1.IDeleteFeatureRequest, + options: CallOptions, + callback: Callback< + LROperation< + protos.google.protobuf.IEmpty, + protos.google.cloud.gkehub.v1.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + > + ): void; + deleteFeature( + request: protos.google.cloud.gkehub.v1.IDeleteFeatureRequest, + callback: Callback< + LROperation< + protos.google.protobuf.IEmpty, + protos.google.cloud.gkehub.v1.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + > + ): void; deleteFeature( request?: protos.google.cloud.gkehub.v1.IDeleteFeatureRequest, optionsOrCallback?: @@ -1353,11 +1340,8 @@ export class GkeHubClient { * Please see the * [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations) * for more details and examples. - * @example - * const decodedOperation = await checkDeleteFeatureProgress(name); - * console.log(decodedOperation.result); - * console.log(decodedOperation.done); - * console.log(decodedOperation.metadata); + * @example include:samples/generated/v1/gke_hub.delete_feature.js + * region_tag:gkehub_v1_generated_GkeHub_DeleteFeature_async */ async checkDeleteFeatureProgress( name: string @@ -1381,42 +1365,6 @@ export class GkeHubClient { protos.google.cloud.gkehub.v1.OperationMetadata >; } - updateMembership( - request?: protos.google.cloud.gkehub.v1.IUpdateMembershipRequest, - options?: CallOptions - ): Promise< - [ - LROperation< - protos.google.cloud.gkehub.v1.IMembership, - protos.google.cloud.gkehub.v1.IOperationMetadata - >, - protos.google.longrunning.IOperation | undefined, - {} | undefined - ] - >; - updateMembership( - request: protos.google.cloud.gkehub.v1.IUpdateMembershipRequest, - options: CallOptions, - callback: Callback< - LROperation< - protos.google.cloud.gkehub.v1.IMembership, - protos.google.cloud.gkehub.v1.IOperationMetadata - >, - protos.google.longrunning.IOperation | null | undefined, - {} | null | undefined - > - ): void; - updateMembership( - request: protos.google.cloud.gkehub.v1.IUpdateMembershipRequest, - callback: Callback< - LROperation< - protos.google.cloud.gkehub.v1.IMembership, - protos.google.cloud.gkehub.v1.IOperationMetadata - >, - protos.google.longrunning.IOperation | null | undefined, - {} | null | undefined - > - ): void; /** * Updates an existing Membership. * @@ -1459,10 +1407,45 @@ export class GkeHubClient { * Please see the * [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations) * for more details and examples. - * @example - * const [operation] = await client.updateMembership(request); - * const [response] = await operation.promise(); + * @example include:samples/generated/v1/gke_hub.update_membership.js + * region_tag:gkehub_v1_generated_GkeHub_UpdateMembership_async */ + updateMembership( + request?: protos.google.cloud.gkehub.v1.IUpdateMembershipRequest, + options?: CallOptions + ): Promise< + [ + LROperation< + protos.google.cloud.gkehub.v1.IMembership, + protos.google.cloud.gkehub.v1.IOperationMetadata + >, + protos.google.longrunning.IOperation | undefined, + {} | undefined + ] + >; + updateMembership( + request: protos.google.cloud.gkehub.v1.IUpdateMembershipRequest, + options: CallOptions, + callback: Callback< + LROperation< + protos.google.cloud.gkehub.v1.IMembership, + protos.google.cloud.gkehub.v1.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + > + ): void; + updateMembership( + request: protos.google.cloud.gkehub.v1.IUpdateMembershipRequest, + callback: Callback< + LROperation< + protos.google.cloud.gkehub.v1.IMembership, + protos.google.cloud.gkehub.v1.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + > + ): void; updateMembership( request?: protos.google.cloud.gkehub.v1.IUpdateMembershipRequest, optionsOrCallback?: @@ -1520,11 +1503,8 @@ export class GkeHubClient { * Please see the * [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations) * for more details and examples. - * @example - * const decodedOperation = await checkUpdateMembershipProgress(name); - * console.log(decodedOperation.result); - * console.log(decodedOperation.done); - * console.log(decodedOperation.metadata); + * @example include:samples/generated/v1/gke_hub.update_membership.js + * region_tag:gkehub_v1_generated_GkeHub_UpdateMembership_async */ async checkUpdateMembershipProgress( name: string @@ -1548,42 +1528,6 @@ export class GkeHubClient { protos.google.cloud.gkehub.v1.OperationMetadata >; } - updateFeature( - request?: protos.google.cloud.gkehub.v1.IUpdateFeatureRequest, - options?: CallOptions - ): Promise< - [ - LROperation< - protos.google.cloud.gkehub.v1.IFeature, - protos.google.cloud.gkehub.v1.IOperationMetadata - >, - protos.google.longrunning.IOperation | undefined, - {} | undefined - ] - >; - updateFeature( - request: protos.google.cloud.gkehub.v1.IUpdateFeatureRequest, - options: CallOptions, - callback: Callback< - LROperation< - protos.google.cloud.gkehub.v1.IFeature, - protos.google.cloud.gkehub.v1.IOperationMetadata - >, - protos.google.longrunning.IOperation | null | undefined, - {} | null | undefined - > - ): void; - updateFeature( - request: protos.google.cloud.gkehub.v1.IUpdateFeatureRequest, - callback: Callback< - LROperation< - protos.google.cloud.gkehub.v1.IFeature, - protos.google.cloud.gkehub.v1.IOperationMetadata - >, - protos.google.longrunning.IOperation | null | undefined, - {} | null | undefined - > - ): void; /** * Updates an existing Feature. * @@ -1626,10 +1570,45 @@ export class GkeHubClient { * Please see the * [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations) * for more details and examples. - * @example - * const [operation] = await client.updateFeature(request); - * const [response] = await operation.promise(); + * @example include:samples/generated/v1/gke_hub.update_feature.js + * region_tag:gkehub_v1_generated_GkeHub_UpdateFeature_async */ + updateFeature( + request?: protos.google.cloud.gkehub.v1.IUpdateFeatureRequest, + options?: CallOptions + ): Promise< + [ + LROperation< + protos.google.cloud.gkehub.v1.IFeature, + protos.google.cloud.gkehub.v1.IOperationMetadata + >, + protos.google.longrunning.IOperation | undefined, + {} | undefined + ] + >; + updateFeature( + request: protos.google.cloud.gkehub.v1.IUpdateFeatureRequest, + options: CallOptions, + callback: Callback< + LROperation< + protos.google.cloud.gkehub.v1.IFeature, + protos.google.cloud.gkehub.v1.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + > + ): void; + updateFeature( + request: protos.google.cloud.gkehub.v1.IUpdateFeatureRequest, + callback: Callback< + LROperation< + protos.google.cloud.gkehub.v1.IFeature, + protos.google.cloud.gkehub.v1.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + > + ): void; updateFeature( request?: protos.google.cloud.gkehub.v1.IUpdateFeatureRequest, optionsOrCallback?: @@ -1687,11 +1666,8 @@ export class GkeHubClient { * Please see the * [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations) * for more details and examples. - * @example - * const decodedOperation = await checkUpdateFeatureProgress(name); - * console.log(decodedOperation.result); - * console.log(decodedOperation.done); - * console.log(decodedOperation.metadata); + * @example include:samples/generated/v1/gke_hub.update_feature.js + * region_tag:gkehub_v1_generated_GkeHub_UpdateFeature_async */ async checkUpdateFeatureProgress( name: string @@ -1715,33 +1691,6 @@ export class GkeHubClient { protos.google.cloud.gkehub.v1.OperationMetadata >; } - listMemberships( - request?: protos.google.cloud.gkehub.v1.IListMembershipsRequest, - options?: CallOptions - ): Promise< - [ - protos.google.cloud.gkehub.v1.IMembership[], - protos.google.cloud.gkehub.v1.IListMembershipsRequest | null, - protos.google.cloud.gkehub.v1.IListMembershipsResponse - ] - >; - listMemberships( - request: protos.google.cloud.gkehub.v1.IListMembershipsRequest, - options: CallOptions, - callback: PaginationCallback< - protos.google.cloud.gkehub.v1.IListMembershipsRequest, - protos.google.cloud.gkehub.v1.IListMembershipsResponse | null | undefined, - protos.google.cloud.gkehub.v1.IMembership - > - ): void; - listMemberships( - request: protos.google.cloud.gkehub.v1.IListMembershipsRequest, - callback: PaginationCallback< - protos.google.cloud.gkehub.v1.IListMembershipsRequest, - protos.google.cloud.gkehub.v1.IListMembershipsResponse | null | undefined, - protos.google.cloud.gkehub.v1.IMembership - > - ): void; /** * Lists Memberships in a given project and location. * @@ -1795,6 +1744,33 @@ export class GkeHubClient { * [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#auto-pagination) * for more details and examples. */ + listMemberships( + request?: protos.google.cloud.gkehub.v1.IListMembershipsRequest, + options?: CallOptions + ): Promise< + [ + protos.google.cloud.gkehub.v1.IMembership[], + protos.google.cloud.gkehub.v1.IListMembershipsRequest | null, + protos.google.cloud.gkehub.v1.IListMembershipsResponse + ] + >; + listMemberships( + request: protos.google.cloud.gkehub.v1.IListMembershipsRequest, + options: CallOptions, + callback: PaginationCallback< + protos.google.cloud.gkehub.v1.IListMembershipsRequest, + protos.google.cloud.gkehub.v1.IListMembershipsResponse | null | undefined, + protos.google.cloud.gkehub.v1.IMembership + > + ): void; + listMemberships( + request: protos.google.cloud.gkehub.v1.IListMembershipsRequest, + callback: PaginationCallback< + protos.google.cloud.gkehub.v1.IListMembershipsRequest, + protos.google.cloud.gkehub.v1.IListMembershipsResponse | null | undefined, + protos.google.cloud.gkehub.v1.IMembership + > + ): void; listMemberships( request?: protos.google.cloud.gkehub.v1.IListMembershipsRequest, optionsOrCallback?: @@ -1900,7 +1876,8 @@ export class GkeHubClient { gax.routingHeader.fromParams({ parent: request.parent || '', }); - const callSettings = new gax.CallSettings(options); + const defaultCallSettings = this._defaults['listMemberships']; + const callSettings = defaultCallSettings.merge(options); this.initialize(); return this.descriptors.page.listMemberships.createStream( this.innerApiCalls.listMemberships as gax.GaxCall, @@ -1960,11 +1937,8 @@ export class GkeHubClient { * Please see the * [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#auto-pagination) * for more details and examples. - * @example - * const iterable = client.listMembershipsAsync(request); - * for await (const response of iterable) { - * // process response - * } + * @example include:samples/generated/v1/gke_hub.list_memberships.js + * region_tag:gkehub_v1_generated_GkeHub_ListMemberships_async */ listMembershipsAsync( request?: protos.google.cloud.gkehub.v1.IListMembershipsRequest, @@ -1978,8 +1952,8 @@ export class GkeHubClient { gax.routingHeader.fromParams({ parent: request.parent || '', }); - options = options || {}; - const callSettings = new gax.CallSettings(options); + const defaultCallSettings = this._defaults['listMemberships']; + const callSettings = defaultCallSettings.merge(options); this.initialize(); return this.descriptors.page.listMemberships.asyncIterate( this.innerApiCalls['listMemberships'] as GaxCall, @@ -1987,33 +1961,6 @@ export class GkeHubClient { callSettings ) as AsyncIterable; } - listFeatures( - request?: protos.google.cloud.gkehub.v1.IListFeaturesRequest, - options?: CallOptions - ): Promise< - [ - protos.google.cloud.gkehub.v1.IFeature[], - protos.google.cloud.gkehub.v1.IListFeaturesRequest | null, - protos.google.cloud.gkehub.v1.IListFeaturesResponse - ] - >; - listFeatures( - request: protos.google.cloud.gkehub.v1.IListFeaturesRequest, - options: CallOptions, - callback: PaginationCallback< - protos.google.cloud.gkehub.v1.IListFeaturesRequest, - protos.google.cloud.gkehub.v1.IListFeaturesResponse | null | undefined, - protos.google.cloud.gkehub.v1.IFeature - > - ): void; - listFeatures( - request: protos.google.cloud.gkehub.v1.IListFeaturesRequest, - callback: PaginationCallback< - protos.google.cloud.gkehub.v1.IListFeaturesRequest, - protos.google.cloud.gkehub.v1.IListFeaturesResponse | null | undefined, - protos.google.cloud.gkehub.v1.IFeature - > - ): void; /** * Lists Features in a given project and location. * @@ -2063,6 +2010,33 @@ export class GkeHubClient { * [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#auto-pagination) * for more details and examples. */ + listFeatures( + request?: protos.google.cloud.gkehub.v1.IListFeaturesRequest, + options?: CallOptions + ): Promise< + [ + protos.google.cloud.gkehub.v1.IFeature[], + protos.google.cloud.gkehub.v1.IListFeaturesRequest | null, + protos.google.cloud.gkehub.v1.IListFeaturesResponse + ] + >; + listFeatures( + request: protos.google.cloud.gkehub.v1.IListFeaturesRequest, + options: CallOptions, + callback: PaginationCallback< + protos.google.cloud.gkehub.v1.IListFeaturesRequest, + protos.google.cloud.gkehub.v1.IListFeaturesResponse | null | undefined, + protos.google.cloud.gkehub.v1.IFeature + > + ): void; + listFeatures( + request: protos.google.cloud.gkehub.v1.IListFeaturesRequest, + callback: PaginationCallback< + protos.google.cloud.gkehub.v1.IListFeaturesRequest, + protos.google.cloud.gkehub.v1.IListFeaturesResponse | null | undefined, + protos.google.cloud.gkehub.v1.IFeature + > + ): void; listFeatures( request?: protos.google.cloud.gkehub.v1.IListFeaturesRequest, optionsOrCallback?: @@ -2164,7 +2138,8 @@ export class GkeHubClient { gax.routingHeader.fromParams({ parent: request.parent || '', }); - const callSettings = new gax.CallSettings(options); + const defaultCallSettings = this._defaults['listFeatures']; + const callSettings = defaultCallSettings.merge(options); this.initialize(); return this.descriptors.page.listFeatures.createStream( this.innerApiCalls.listFeatures as gax.GaxCall, @@ -2220,11 +2195,8 @@ export class GkeHubClient { * Please see the * [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#auto-pagination) * for more details and examples. - * @example - * const iterable = client.listFeaturesAsync(request); - * for await (const response of iterable) { - * // process response - * } + * @example include:samples/generated/v1/gke_hub.list_features.js + * region_tag:gkehub_v1_generated_GkeHub_ListFeatures_async */ listFeaturesAsync( request?: protos.google.cloud.gkehub.v1.IListFeaturesRequest, @@ -2238,8 +2210,8 @@ export class GkeHubClient { gax.routingHeader.fromParams({ parent: request.parent || '', }); - options = options || {}; - const callSettings = new gax.CallSettings(options); + const defaultCallSettings = this._defaults['listFeatures']; + const callSettings = defaultCallSettings.merge(options); this.initialize(); return this.descriptors.page.listFeatures.asyncIterate( this.innerApiCalls['listFeatures'] as GaxCall, diff --git a/packages/google-cloud-gkehub/src/v1alpha/gapic_metadata.json b/packages/google-cloud-gkehub/src/v1alpha/gapic_metadata.json index 6eee17c29b8..bd65d90c5be 100644 --- a/packages/google-cloud-gkehub/src/v1alpha/gapic_metadata.json +++ b/packages/google-cloud-gkehub/src/v1alpha/gapic_metadata.json @@ -3,7 +3,7 @@ "comment": "This file maps proto services/RPCs to the corresponding library clients/methods", "language": "typescript", "protoPackage": "google.cloud.gkehub.v1alpha", - "libraryPackage": "@google-cloud/gkehub", + "libraryPackage": "@google-cloud/gke-hub", "services": { "GkeHub": { "clients": { diff --git a/packages/google-cloud-gkehub/src/v1alpha/gke_hub_client.ts b/packages/google-cloud-gkehub/src/v1alpha/gke_hub_client.ts index 2552ef98cf6..b04bdd4c28a 100644 --- a/packages/google-cloud-gkehub/src/v1alpha/gke_hub_client.ts +++ b/packages/google-cloud-gkehub/src/v1alpha/gke_hub_client.ts @@ -384,6 +384,24 @@ export class GkeHubClient { // ------------------- // -- Service calls -- // ------------------- + /** + * Gets details of a single Feature. + * + * @param {Object} request + * The request object that will be sent. + * @param {string} request.name + * The Feature resource name in the format + * `projects/* /locations/* /features/*` + * @param {object} [options] + * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. + * @returns {Promise} - The promise which resolves to an array. + * The first element of the array is an object representing [Feature]{@link google.cloud.gkehub.v1alpha.Feature}. + * Please see the + * [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods) + * for more details and examples. + * @example include:samples/generated/v1alpha/gke_hub.get_feature.js + * region_tag:gkehub_v1alpha_generated_GkeHub_GetFeature_async + */ getFeature( request?: protos.google.cloud.gkehub.v1alpha.IGetFeatureRequest, options?: CallOptions @@ -411,24 +429,6 @@ export class GkeHubClient { {} | null | undefined > ): void; - /** - * Gets details of a single Feature. - * - * @param {Object} request - * The request object that will be sent. - * @param {string} request.name - * The Feature resource name in the format - * `projects/* /locations/* /features/*` - * @param {object} [options] - * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. - * @returns {Promise} - The promise which resolves to an array. - * The first element of the array is an object representing [Feature]{@link google.cloud.gkehub.v1alpha.Feature}. - * Please see the - * [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods) - * for more details and examples. - * @example - * const [response] = await client.getFeature(request); - */ getFeature( request?: protos.google.cloud.gkehub.v1alpha.IGetFeatureRequest, optionsOrCallback?: @@ -471,42 +471,6 @@ export class GkeHubClient { return this.innerApiCalls.getFeature(request, options, callback); } - createFeature( - request?: protos.google.cloud.gkehub.v1alpha.ICreateFeatureRequest, - options?: CallOptions - ): Promise< - [ - LROperation< - protos.google.cloud.gkehub.v1alpha.IFeature, - protos.google.cloud.gkehub.v1alpha.IOperationMetadata - >, - protos.google.longrunning.IOperation | undefined, - {} | undefined - ] - >; - createFeature( - request: protos.google.cloud.gkehub.v1alpha.ICreateFeatureRequest, - options: CallOptions, - callback: Callback< - LROperation< - protos.google.cloud.gkehub.v1alpha.IFeature, - protos.google.cloud.gkehub.v1alpha.IOperationMetadata - >, - protos.google.longrunning.IOperation | null | undefined, - {} | null | undefined - > - ): void; - createFeature( - request: protos.google.cloud.gkehub.v1alpha.ICreateFeatureRequest, - callback: Callback< - LROperation< - protos.google.cloud.gkehub.v1alpha.IFeature, - protos.google.cloud.gkehub.v1alpha.IOperationMetadata - >, - protos.google.longrunning.IOperation | null | undefined, - {} | null | undefined - > - ): void; /** * Adds a new Feature. * @@ -542,10 +506,45 @@ export class GkeHubClient { * Please see the * [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations) * for more details and examples. - * @example - * const [operation] = await client.createFeature(request); - * const [response] = await operation.promise(); + * @example include:samples/generated/v1alpha/gke_hub.create_feature.js + * region_tag:gkehub_v1alpha_generated_GkeHub_CreateFeature_async */ + createFeature( + request?: protos.google.cloud.gkehub.v1alpha.ICreateFeatureRequest, + options?: CallOptions + ): Promise< + [ + LROperation< + protos.google.cloud.gkehub.v1alpha.IFeature, + protos.google.cloud.gkehub.v1alpha.IOperationMetadata + >, + protos.google.longrunning.IOperation | undefined, + {} | undefined + ] + >; + createFeature( + request: protos.google.cloud.gkehub.v1alpha.ICreateFeatureRequest, + options: CallOptions, + callback: Callback< + LROperation< + protos.google.cloud.gkehub.v1alpha.IFeature, + protos.google.cloud.gkehub.v1alpha.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + > + ): void; + createFeature( + request: protos.google.cloud.gkehub.v1alpha.ICreateFeatureRequest, + callback: Callback< + LROperation< + protos.google.cloud.gkehub.v1alpha.IFeature, + protos.google.cloud.gkehub.v1alpha.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + > + ): void; createFeature( request?: protos.google.cloud.gkehub.v1alpha.ICreateFeatureRequest, optionsOrCallback?: @@ -603,11 +602,8 @@ export class GkeHubClient { * Please see the * [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations) * for more details and examples. - * @example - * const decodedOperation = await checkCreateFeatureProgress(name); - * console.log(decodedOperation.result); - * console.log(decodedOperation.done); - * console.log(decodedOperation.metadata); + * @example include:samples/generated/v1alpha/gke_hub.create_feature.js + * region_tag:gkehub_v1alpha_generated_GkeHub_CreateFeature_async */ async checkCreateFeatureProgress( name: string @@ -631,42 +627,6 @@ export class GkeHubClient { protos.google.cloud.gkehub.v1alpha.OperationMetadata >; } - deleteFeature( - request?: protos.google.cloud.gkehub.v1alpha.IDeleteFeatureRequest, - options?: CallOptions - ): Promise< - [ - LROperation< - protos.google.protobuf.IEmpty, - protos.google.cloud.gkehub.v1alpha.IOperationMetadata - >, - protos.google.longrunning.IOperation | undefined, - {} | undefined - ] - >; - deleteFeature( - request: protos.google.cloud.gkehub.v1alpha.IDeleteFeatureRequest, - options: CallOptions, - callback: Callback< - LROperation< - protos.google.protobuf.IEmpty, - protos.google.cloud.gkehub.v1alpha.IOperationMetadata - >, - protos.google.longrunning.IOperation | null | undefined, - {} | null | undefined - > - ): void; - deleteFeature( - request: protos.google.cloud.gkehub.v1alpha.IDeleteFeatureRequest, - callback: Callback< - LROperation< - protos.google.protobuf.IEmpty, - protos.google.cloud.gkehub.v1alpha.IOperationMetadata - >, - protos.google.longrunning.IOperation | null | undefined, - {} | null | undefined - > - ): void; /** * Removes a Feature. * @@ -702,10 +662,45 @@ export class GkeHubClient { * Please see the * [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations) * for more details and examples. - * @example - * const [operation] = await client.deleteFeature(request); - * const [response] = await operation.promise(); + * @example include:samples/generated/v1alpha/gke_hub.delete_feature.js + * region_tag:gkehub_v1alpha_generated_GkeHub_DeleteFeature_async */ + deleteFeature( + request?: protos.google.cloud.gkehub.v1alpha.IDeleteFeatureRequest, + options?: CallOptions + ): Promise< + [ + LROperation< + protos.google.protobuf.IEmpty, + protos.google.cloud.gkehub.v1alpha.IOperationMetadata + >, + protos.google.longrunning.IOperation | undefined, + {} | undefined + ] + >; + deleteFeature( + request: protos.google.cloud.gkehub.v1alpha.IDeleteFeatureRequest, + options: CallOptions, + callback: Callback< + LROperation< + protos.google.protobuf.IEmpty, + protos.google.cloud.gkehub.v1alpha.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + > + ): void; + deleteFeature( + request: protos.google.cloud.gkehub.v1alpha.IDeleteFeatureRequest, + callback: Callback< + LROperation< + protos.google.protobuf.IEmpty, + protos.google.cloud.gkehub.v1alpha.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + > + ): void; deleteFeature( request?: protos.google.cloud.gkehub.v1alpha.IDeleteFeatureRequest, optionsOrCallback?: @@ -763,11 +758,8 @@ export class GkeHubClient { * Please see the * [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations) * for more details and examples. - * @example - * const decodedOperation = await checkDeleteFeatureProgress(name); - * console.log(decodedOperation.result); - * console.log(decodedOperation.done); - * console.log(decodedOperation.metadata); + * @example include:samples/generated/v1alpha/gke_hub.delete_feature.js + * region_tag:gkehub_v1alpha_generated_GkeHub_DeleteFeature_async */ async checkDeleteFeatureProgress( name: string @@ -791,42 +783,6 @@ export class GkeHubClient { protos.google.cloud.gkehub.v1alpha.OperationMetadata >; } - updateFeature( - request?: protos.google.cloud.gkehub.v1alpha.IUpdateFeatureRequest, - options?: CallOptions - ): Promise< - [ - LROperation< - protos.google.cloud.gkehub.v1alpha.IFeature, - protos.google.cloud.gkehub.v1alpha.IOperationMetadata - >, - protos.google.longrunning.IOperation | undefined, - {} | undefined - ] - >; - updateFeature( - request: protos.google.cloud.gkehub.v1alpha.IUpdateFeatureRequest, - options: CallOptions, - callback: Callback< - LROperation< - protos.google.cloud.gkehub.v1alpha.IFeature, - protos.google.cloud.gkehub.v1alpha.IOperationMetadata - >, - protos.google.longrunning.IOperation | null | undefined, - {} | null | undefined - > - ): void; - updateFeature( - request: protos.google.cloud.gkehub.v1alpha.IUpdateFeatureRequest, - callback: Callback< - LROperation< - protos.google.cloud.gkehub.v1alpha.IFeature, - protos.google.cloud.gkehub.v1alpha.IOperationMetadata - >, - protos.google.longrunning.IOperation | null | undefined, - {} | null | undefined - > - ): void; /** * Updates an existing Feature. * @@ -869,10 +825,45 @@ export class GkeHubClient { * Please see the * [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations) * for more details and examples. - * @example - * const [operation] = await client.updateFeature(request); - * const [response] = await operation.promise(); + * @example include:samples/generated/v1alpha/gke_hub.update_feature.js + * region_tag:gkehub_v1alpha_generated_GkeHub_UpdateFeature_async */ + updateFeature( + request?: protos.google.cloud.gkehub.v1alpha.IUpdateFeatureRequest, + options?: CallOptions + ): Promise< + [ + LROperation< + protos.google.cloud.gkehub.v1alpha.IFeature, + protos.google.cloud.gkehub.v1alpha.IOperationMetadata + >, + protos.google.longrunning.IOperation | undefined, + {} | undefined + ] + >; + updateFeature( + request: protos.google.cloud.gkehub.v1alpha.IUpdateFeatureRequest, + options: CallOptions, + callback: Callback< + LROperation< + protos.google.cloud.gkehub.v1alpha.IFeature, + protos.google.cloud.gkehub.v1alpha.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + > + ): void; + updateFeature( + request: protos.google.cloud.gkehub.v1alpha.IUpdateFeatureRequest, + callback: Callback< + LROperation< + protos.google.cloud.gkehub.v1alpha.IFeature, + protos.google.cloud.gkehub.v1alpha.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + > + ): void; updateFeature( request?: protos.google.cloud.gkehub.v1alpha.IUpdateFeatureRequest, optionsOrCallback?: @@ -930,11 +921,8 @@ export class GkeHubClient { * Please see the * [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations) * for more details and examples. - * @example - * const decodedOperation = await checkUpdateFeatureProgress(name); - * console.log(decodedOperation.result); - * console.log(decodedOperation.done); - * console.log(decodedOperation.metadata); + * @example include:samples/generated/v1alpha/gke_hub.update_feature.js + * region_tag:gkehub_v1alpha_generated_GkeHub_UpdateFeature_async */ async checkUpdateFeatureProgress( name: string @@ -958,37 +946,6 @@ export class GkeHubClient { protos.google.cloud.gkehub.v1alpha.OperationMetadata >; } - listFeatures( - request?: protos.google.cloud.gkehub.v1alpha.IListFeaturesRequest, - options?: CallOptions - ): Promise< - [ - protos.google.cloud.gkehub.v1alpha.IFeature[], - protos.google.cloud.gkehub.v1alpha.IListFeaturesRequest | null, - protos.google.cloud.gkehub.v1alpha.IListFeaturesResponse - ] - >; - listFeatures( - request: protos.google.cloud.gkehub.v1alpha.IListFeaturesRequest, - options: CallOptions, - callback: PaginationCallback< - protos.google.cloud.gkehub.v1alpha.IListFeaturesRequest, - | protos.google.cloud.gkehub.v1alpha.IListFeaturesResponse - | null - | undefined, - protos.google.cloud.gkehub.v1alpha.IFeature - > - ): void; - listFeatures( - request: protos.google.cloud.gkehub.v1alpha.IListFeaturesRequest, - callback: PaginationCallback< - protos.google.cloud.gkehub.v1alpha.IListFeaturesRequest, - | protos.google.cloud.gkehub.v1alpha.IListFeaturesResponse - | null - | undefined, - protos.google.cloud.gkehub.v1alpha.IFeature - > - ): void; /** * Lists Features in a given project and location. * @@ -1038,6 +995,37 @@ export class GkeHubClient { * [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#auto-pagination) * for more details and examples. */ + listFeatures( + request?: protos.google.cloud.gkehub.v1alpha.IListFeaturesRequest, + options?: CallOptions + ): Promise< + [ + protos.google.cloud.gkehub.v1alpha.IFeature[], + protos.google.cloud.gkehub.v1alpha.IListFeaturesRequest | null, + protos.google.cloud.gkehub.v1alpha.IListFeaturesResponse + ] + >; + listFeatures( + request: protos.google.cloud.gkehub.v1alpha.IListFeaturesRequest, + options: CallOptions, + callback: PaginationCallback< + protos.google.cloud.gkehub.v1alpha.IListFeaturesRequest, + | protos.google.cloud.gkehub.v1alpha.IListFeaturesResponse + | null + | undefined, + protos.google.cloud.gkehub.v1alpha.IFeature + > + ): void; + listFeatures( + request: protos.google.cloud.gkehub.v1alpha.IListFeaturesRequest, + callback: PaginationCallback< + protos.google.cloud.gkehub.v1alpha.IListFeaturesRequest, + | protos.google.cloud.gkehub.v1alpha.IListFeaturesResponse + | null + | undefined, + protos.google.cloud.gkehub.v1alpha.IFeature + > + ): void; listFeatures( request?: protos.google.cloud.gkehub.v1alpha.IListFeaturesRequest, optionsOrCallback?: @@ -1141,7 +1129,8 @@ export class GkeHubClient { gax.routingHeader.fromParams({ parent: request.parent || '', }); - const callSettings = new gax.CallSettings(options); + const defaultCallSettings = this._defaults['listFeatures']; + const callSettings = defaultCallSettings.merge(options); this.initialize(); return this.descriptors.page.listFeatures.createStream( this.innerApiCalls.listFeatures as gax.GaxCall, @@ -1197,11 +1186,8 @@ export class GkeHubClient { * Please see the * [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#auto-pagination) * for more details and examples. - * @example - * const iterable = client.listFeaturesAsync(request); - * for await (const response of iterable) { - * // process response - * } + * @example include:samples/generated/v1alpha/gke_hub.list_features.js + * region_tag:gkehub_v1alpha_generated_GkeHub_ListFeatures_async */ listFeaturesAsync( request?: protos.google.cloud.gkehub.v1alpha.IListFeaturesRequest, @@ -1215,8 +1201,8 @@ export class GkeHubClient { gax.routingHeader.fromParams({ parent: request.parent || '', }); - options = options || {}; - const callSettings = new gax.CallSettings(options); + const defaultCallSettings = this._defaults['listFeatures']; + const callSettings = defaultCallSettings.merge(options); this.initialize(); return this.descriptors.page.listFeatures.asyncIterate( this.innerApiCalls['listFeatures'] as GaxCall, diff --git a/packages/google-cloud-gkehub/src/v1alpha2/gapic_metadata.json b/packages/google-cloud-gkehub/src/v1alpha2/gapic_metadata.json index 68d5944d9f8..9a8c3d88ba8 100644 --- a/packages/google-cloud-gkehub/src/v1alpha2/gapic_metadata.json +++ b/packages/google-cloud-gkehub/src/v1alpha2/gapic_metadata.json @@ -3,7 +3,7 @@ "comment": "This file maps proto services/RPCs to the corresponding library clients/methods", "language": "typescript", "protoPackage": "google.cloud.gkehub.v1alpha2", - "libraryPackage": "@google-cloud/gkehub", + "libraryPackage": "@google-cloud/gke-hub", "services": { "GkeHub": { "clients": { diff --git a/packages/google-cloud-gkehub/src/v1alpha2/gke_hub_client.ts b/packages/google-cloud-gkehub/src/v1alpha2/gke_hub_client.ts index 14bd3e14fb9..e84baf9376f 100644 --- a/packages/google-cloud-gkehub/src/v1alpha2/gke_hub_client.ts +++ b/packages/google-cloud-gkehub/src/v1alpha2/gke_hub_client.ts @@ -386,6 +386,24 @@ export class GkeHubClient { // ------------------- // -- Service calls -- // ------------------- + /** + * Gets the details of a Membership. + * + * @param {Object} request + * The request object that will be sent. + * @param {string} request.name + * Required. The Membership resource name in the format + * `projects/* /locations/* /memberships/*`. + * @param {object} [options] + * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. + * @returns {Promise} - The promise which resolves to an array. + * The first element of the array is an object representing [Membership]{@link google.cloud.gkehub.v1alpha2.Membership}. + * Please see the + * [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods) + * for more details and examples. + * @example include:samples/generated/v1alpha2/gke_hub.get_membership.js + * region_tag:gkehub_v1alpha2_generated_GkeHub_GetMembership_async + */ getMembership( request?: protos.google.cloud.gkehub.v1alpha2.IGetMembershipRequest, options?: CallOptions @@ -417,24 +435,6 @@ export class GkeHubClient { {} | null | undefined > ): void; - /** - * Gets the details of a Membership. - * - * @param {Object} request - * The request object that will be sent. - * @param {string} request.name - * Required. The Membership resource name in the format - * `projects/* /locations/* /memberships/*`. - * @param {object} [options] - * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. - * @returns {Promise} - The promise which resolves to an array. - * The first element of the array is an object representing [Membership]{@link google.cloud.gkehub.v1alpha2.Membership}. - * Please see the - * [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods) - * for more details and examples. - * @example - * const [response] = await client.getMembership(request); - */ getMembership( request?: protos.google.cloud.gkehub.v1alpha2.IGetMembershipRequest, optionsOrCallback?: @@ -478,40 +478,6 @@ export class GkeHubClient { this.initialize(); return this.innerApiCalls.getMembership(request, options, callback); } - generateConnectManifest( - request?: protos.google.cloud.gkehub.v1alpha2.IGenerateConnectManifestRequest, - options?: CallOptions - ): Promise< - [ - protos.google.cloud.gkehub.v1alpha2.IGenerateConnectManifestResponse, - ( - | protos.google.cloud.gkehub.v1alpha2.IGenerateConnectManifestRequest - | undefined - ), - {} | undefined - ] - >; - generateConnectManifest( - request: protos.google.cloud.gkehub.v1alpha2.IGenerateConnectManifestRequest, - options: CallOptions, - callback: Callback< - protos.google.cloud.gkehub.v1alpha2.IGenerateConnectManifestResponse, - | protos.google.cloud.gkehub.v1alpha2.IGenerateConnectManifestRequest - | null - | undefined, - {} | null | undefined - > - ): void; - generateConnectManifest( - request: protos.google.cloud.gkehub.v1alpha2.IGenerateConnectManifestRequest, - callback: Callback< - protos.google.cloud.gkehub.v1alpha2.IGenerateConnectManifestResponse, - | protos.google.cloud.gkehub.v1alpha2.IGenerateConnectManifestRequest - | null - | undefined, - {} | null | undefined - > - ): void; /** * Generates the manifest for deployment of the GKE connect agent. * @@ -552,9 +518,43 @@ export class GkeHubClient { * Please see the * [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods) * for more details and examples. - * @example - * const [response] = await client.generateConnectManifest(request); + * @example include:samples/generated/v1alpha2/gke_hub.generate_connect_manifest.js + * region_tag:gkehub_v1alpha2_generated_GkeHub_GenerateConnectManifest_async */ + generateConnectManifest( + request?: protos.google.cloud.gkehub.v1alpha2.IGenerateConnectManifestRequest, + options?: CallOptions + ): Promise< + [ + protos.google.cloud.gkehub.v1alpha2.IGenerateConnectManifestResponse, + ( + | protos.google.cloud.gkehub.v1alpha2.IGenerateConnectManifestRequest + | undefined + ), + {} | undefined + ] + >; + generateConnectManifest( + request: protos.google.cloud.gkehub.v1alpha2.IGenerateConnectManifestRequest, + options: CallOptions, + callback: Callback< + protos.google.cloud.gkehub.v1alpha2.IGenerateConnectManifestResponse, + | protos.google.cloud.gkehub.v1alpha2.IGenerateConnectManifestRequest + | null + | undefined, + {} | null | undefined + > + ): void; + generateConnectManifest( + request: protos.google.cloud.gkehub.v1alpha2.IGenerateConnectManifestRequest, + callback: Callback< + protos.google.cloud.gkehub.v1alpha2.IGenerateConnectManifestResponse, + | protos.google.cloud.gkehub.v1alpha2.IGenerateConnectManifestRequest + | null + | undefined, + {} | null | undefined + > + ): void; generateConnectManifest( request?: protos.google.cloud.gkehub.v1alpha2.IGenerateConnectManifestRequest, optionsOrCallback?: @@ -605,6 +605,31 @@ export class GkeHubClient { callback ); } + /** + * Initializes the Hub in this project, which includes creating the default + * Hub Service Account and the Hub Workload Identity Pool. Initialization is + * optional, and happens automatically when the first Membership is created. + * + * InitializeHub should be called when the first Membership cannot be + * registered without these resources. A common example is granting the Hub + * Service Account access to another project, which requires the account to + * exist first. + * + * @param {Object} request + * The request object that will be sent. + * @param {string} request.project + * Required. The Hub to initialize, in the format + * `projects/* /locations/* /memberships/*`. + * @param {object} [options] + * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. + * @returns {Promise} - The promise which resolves to an array. + * The first element of the array is an object representing [InitializeHubResponse]{@link google.cloud.gkehub.v1alpha2.InitializeHubResponse}. + * Please see the + * [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods) + * for more details and examples. + * @example include:samples/generated/v1alpha2/gke_hub.initialize_hub.js + * region_tag:gkehub_v1alpha2_generated_GkeHub_InitializeHub_async + */ initializeHub( request?: protos.google.cloud.gkehub.v1alpha2.IInitializeHubRequest, options?: CallOptions @@ -636,31 +661,6 @@ export class GkeHubClient { {} | null | undefined > ): void; - /** - * Initializes the Hub in this project, which includes creating the default - * Hub Service Account and the Hub Workload Identity Pool. Initialization is - * optional, and happens automatically when the first Membership is created. - * - * InitializeHub should be called when the first Membership cannot be - * registered without these resources. A common example is granting the Hub - * Service Account access to another project, which requires the account to - * exist first. - * - * @param {Object} request - * The request object that will be sent. - * @param {string} request.project - * Required. The Hub to initialize, in the format - * `projects/* /locations/* /memberships/*`. - * @param {object} [options] - * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. - * @returns {Promise} - The promise which resolves to an array. - * The first element of the array is an object representing [InitializeHubResponse]{@link google.cloud.gkehub.v1alpha2.InitializeHubResponse}. - * Please see the - * [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods) - * for more details and examples. - * @example - * const [response] = await client.initializeHub(request); - */ initializeHub( request?: protos.google.cloud.gkehub.v1alpha2.IInitializeHubRequest, optionsOrCallback?: @@ -705,6 +705,42 @@ export class GkeHubClient { return this.innerApiCalls.initializeHub(request, options, callback); } + /** + * Creates a new Membership. + * + * **This is currently only supported for GKE clusters on Google Cloud**. + * To register other clusters, follow the instructions at + * https://cloud.google.com/anthos/multicluster-management/connect/registering-a-cluster. + * + * @param {Object} request + * The request object that will be sent. + * @param {string} request.parent + * Required. The parent (project and location) where the Memberships will be created. + * Specified in the format `projects/* /locations/*`. + * @param {string} request.membershipId + * Required. Client chosen ID for the membership. `membership_id` must be a valid RFC + * 1123 compliant DNS label: + * + * 1. At most 63 characters in length + * 2. It must consist of lower case alphanumeric characters or `-` + * 3. It must start and end with an alphanumeric character + * + * Which can be expressed as the regex: `[a-z0-9]([-a-z0-9]*[a-z0-9])?`, + * with a maximum length of 63 characters. + * @param {google.cloud.gkehub.v1alpha2.Membership} request.resource + * Required. The membership to create. + * @param {object} [options] + * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. + * @returns {Promise} - The promise which resolves to an array. + * The first element of the array is an object representing + * a long running operation. Its `promise()` method returns a promise + * you can `await` for. + * Please see the + * [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations) + * for more details and examples. + * @example include:samples/generated/v1alpha2/gke_hub.create_membership.js + * region_tag:gkehub_v1alpha2_generated_GkeHub_CreateMembership_async + */ createMembership( request?: protos.google.cloud.gkehub.v1alpha2.ICreateMembershipRequest, options?: CallOptions @@ -741,43 +777,6 @@ export class GkeHubClient { {} | null | undefined > ): void; - /** - * Creates a new Membership. - * - * **This is currently only supported for GKE clusters on Google Cloud**. - * To register other clusters, follow the instructions at - * https://cloud.google.com/anthos/multicluster-management/connect/registering-a-cluster. - * - * @param {Object} request - * The request object that will be sent. - * @param {string} request.parent - * Required. The parent (project and location) where the Memberships will be created. - * Specified in the format `projects/* /locations/*`. - * @param {string} request.membershipId - * Required. Client chosen ID for the membership. `membership_id` must be a valid RFC - * 1123 compliant DNS label: - * - * 1. At most 63 characters in length - * 2. It must consist of lower case alphanumeric characters or `-` - * 3. It must start and end with an alphanumeric character - * - * Which can be expressed as the regex: `[a-z0-9]([-a-z0-9]*[a-z0-9])?`, - * with a maximum length of 63 characters. - * @param {google.cloud.gkehub.v1alpha2.Membership} request.resource - * Required. The membership to create. - * @param {object} [options] - * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. - * @returns {Promise} - The promise which resolves to an array. - * The first element of the array is an object representing - * a long running operation. Its `promise()` method returns a promise - * you can `await` for. - * Please see the - * [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations) - * for more details and examples. - * @example - * const [operation] = await client.createMembership(request); - * const [response] = await operation.promise(); - */ createMembership( request?: protos.google.cloud.gkehub.v1alpha2.ICreateMembershipRequest, optionsOrCallback?: @@ -835,11 +834,8 @@ export class GkeHubClient { * Please see the * [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations) * for more details and examples. - * @example - * const decodedOperation = await checkCreateMembershipProgress(name); - * console.log(decodedOperation.result); - * console.log(decodedOperation.done); - * console.log(decodedOperation.metadata); + * @example include:samples/generated/v1alpha2/gke_hub.create_membership.js + * region_tag:gkehub_v1alpha2_generated_GkeHub_CreateMembership_async */ async checkCreateMembershipProgress( name: string @@ -863,6 +859,30 @@ export class GkeHubClient { protos.google.cloud.gkehub.v1alpha2.OperationMetadata >; } + /** + * Removes a Membership. + * + * **This is currently only supported for GKE clusters on Google Cloud**. + * To unregister other clusters, follow the instructions at + * https://cloud.google.com/anthos/multicluster-management/connect/unregistering-a-cluster. + * + * @param {Object} request + * The request object that will be sent. + * @param {string} request.name + * Required. The Membership resource name in the format + * `projects/* /locations/* /memberships/*`. + * @param {object} [options] + * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. + * @returns {Promise} - The promise which resolves to an array. + * The first element of the array is an object representing + * a long running operation. Its `promise()` method returns a promise + * you can `await` for. + * Please see the + * [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations) + * for more details and examples. + * @example include:samples/generated/v1alpha2/gke_hub.delete_membership.js + * region_tag:gkehub_v1alpha2_generated_GkeHub_DeleteMembership_async + */ deleteMembership( request?: protos.google.cloud.gkehub.v1alpha2.IDeleteMembershipRequest, options?: CallOptions @@ -899,31 +919,6 @@ export class GkeHubClient { {} | null | undefined > ): void; - /** - * Removes a Membership. - * - * **This is currently only supported for GKE clusters on Google Cloud**. - * To unregister other clusters, follow the instructions at - * https://cloud.google.com/anthos/multicluster-management/connect/unregistering-a-cluster. - * - * @param {Object} request - * The request object that will be sent. - * @param {string} request.name - * Required. The Membership resource name in the format - * `projects/* /locations/* /memberships/*`. - * @param {object} [options] - * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. - * @returns {Promise} - The promise which resolves to an array. - * The first element of the array is an object representing - * a long running operation. Its `promise()` method returns a promise - * you can `await` for. - * Please see the - * [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations) - * for more details and examples. - * @example - * const [operation] = await client.deleteMembership(request); - * const [response] = await operation.promise(); - */ deleteMembership( request?: protos.google.cloud.gkehub.v1alpha2.IDeleteMembershipRequest, optionsOrCallback?: @@ -981,11 +976,8 @@ export class GkeHubClient { * Please see the * [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations) * for more details and examples. - * @example - * const decodedOperation = await checkDeleteMembershipProgress(name); - * console.log(decodedOperation.result); - * console.log(decodedOperation.done); - * console.log(decodedOperation.metadata); + * @example include:samples/generated/v1alpha2/gke_hub.delete_membership.js + * region_tag:gkehub_v1alpha2_generated_GkeHub_DeleteMembership_async */ async checkDeleteMembershipProgress( name: string @@ -1009,6 +1001,37 @@ export class GkeHubClient { protos.google.cloud.gkehub.v1alpha2.OperationMetadata >; } + /** + * Updates an existing Membership. + * + * @param {Object} request + * The request object that will be sent. + * @param {string} request.name + * Required. The Membership resource name in the format + * `projects/* /locations/* /memberships/*`. + * @param {google.protobuf.FieldMask} request.updateMask + * Required. Mask of fields to update. + * @param {google.cloud.gkehub.v1alpha2.Membership} request.resource + * Required. Only fields specified in update_mask are updated. + * If you specify a field in the update_mask but don't specify its value here + * that field will be deleted. + * If you are updating a map field, set the value of a key to null or empty + * string to delete the key from the map. It's not possible to update a key's + * value to the empty string. + * If you specify the update_mask to be a special path "*", fully replaces all + * user-modifiable fields to match `resource`. + * @param {object} [options] + * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. + * @returns {Promise} - The promise which resolves to an array. + * The first element of the array is an object representing + * a long running operation. Its `promise()` method returns a promise + * you can `await` for. + * Please see the + * [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations) + * for more details and examples. + * @example include:samples/generated/v1alpha2/gke_hub.update_membership.js + * region_tag:gkehub_v1alpha2_generated_GkeHub_UpdateMembership_async + */ updateMembership( request?: protos.google.cloud.gkehub.v1alpha2.IUpdateMembershipRequest, options?: CallOptions @@ -1045,38 +1068,6 @@ export class GkeHubClient { {} | null | undefined > ): void; - /** - * Updates an existing Membership. - * - * @param {Object} request - * The request object that will be sent. - * @param {string} request.name - * Required. The Membership resource name in the format - * `projects/* /locations/* /memberships/*`. - * @param {google.protobuf.FieldMask} request.updateMask - * Required. Mask of fields to update. - * @param {google.cloud.gkehub.v1alpha2.Membership} request.resource - * Required. Only fields specified in update_mask are updated. - * If you specify a field in the update_mask but don't specify its value here - * that field will be deleted. - * If you are updating a map field, set the value of a key to null or empty - * string to delete the key from the map. It's not possible to update a key's - * value to the empty string. - * If you specify the update_mask to be a special path "*", fully replaces all - * user-modifiable fields to match `resource`. - * @param {object} [options] - * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. - * @returns {Promise} - The promise which resolves to an array. - * The first element of the array is an object representing - * a long running operation. Its `promise()` method returns a promise - * you can `await` for. - * Please see the - * [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations) - * for more details and examples. - * @example - * const [operation] = await client.updateMembership(request); - * const [response] = await operation.promise(); - */ updateMembership( request?: protos.google.cloud.gkehub.v1alpha2.IUpdateMembershipRequest, optionsOrCallback?: @@ -1134,11 +1125,8 @@ export class GkeHubClient { * Please see the * [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations) * for more details and examples. - * @example - * const decodedOperation = await checkUpdateMembershipProgress(name); - * console.log(decodedOperation.result); - * console.log(decodedOperation.done); - * console.log(decodedOperation.metadata); + * @example include:samples/generated/v1alpha2/gke_hub.update_membership.js + * region_tag:gkehub_v1alpha2_generated_GkeHub_UpdateMembership_async */ async checkUpdateMembershipProgress( name: string @@ -1162,37 +1150,6 @@ export class GkeHubClient { protos.google.cloud.gkehub.v1alpha2.OperationMetadata >; } - listMemberships( - request?: protos.google.cloud.gkehub.v1alpha2.IListMembershipsRequest, - options?: CallOptions - ): Promise< - [ - protos.google.cloud.gkehub.v1alpha2.IMembership[], - protos.google.cloud.gkehub.v1alpha2.IListMembershipsRequest | null, - protos.google.cloud.gkehub.v1alpha2.IListMembershipsResponse - ] - >; - listMemberships( - request: protos.google.cloud.gkehub.v1alpha2.IListMembershipsRequest, - options: CallOptions, - callback: PaginationCallback< - protos.google.cloud.gkehub.v1alpha2.IListMembershipsRequest, - | protos.google.cloud.gkehub.v1alpha2.IListMembershipsResponse - | null - | undefined, - protos.google.cloud.gkehub.v1alpha2.IMembership - > - ): void; - listMemberships( - request: protos.google.cloud.gkehub.v1alpha2.IListMembershipsRequest, - callback: PaginationCallback< - protos.google.cloud.gkehub.v1alpha2.IListMembershipsRequest, - | protos.google.cloud.gkehub.v1alpha2.IListMembershipsResponse - | null - | undefined, - protos.google.cloud.gkehub.v1alpha2.IMembership - > - ): void; /** * Lists Memberships in a given project and location. * @@ -1246,6 +1203,37 @@ export class GkeHubClient { * [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#auto-pagination) * for more details and examples. */ + listMemberships( + request?: protos.google.cloud.gkehub.v1alpha2.IListMembershipsRequest, + options?: CallOptions + ): Promise< + [ + protos.google.cloud.gkehub.v1alpha2.IMembership[], + protos.google.cloud.gkehub.v1alpha2.IListMembershipsRequest | null, + protos.google.cloud.gkehub.v1alpha2.IListMembershipsResponse + ] + >; + listMemberships( + request: protos.google.cloud.gkehub.v1alpha2.IListMembershipsRequest, + options: CallOptions, + callback: PaginationCallback< + protos.google.cloud.gkehub.v1alpha2.IListMembershipsRequest, + | protos.google.cloud.gkehub.v1alpha2.IListMembershipsResponse + | null + | undefined, + protos.google.cloud.gkehub.v1alpha2.IMembership + > + ): void; + listMemberships( + request: protos.google.cloud.gkehub.v1alpha2.IListMembershipsRequest, + callback: PaginationCallback< + protos.google.cloud.gkehub.v1alpha2.IListMembershipsRequest, + | protos.google.cloud.gkehub.v1alpha2.IListMembershipsResponse + | null + | undefined, + protos.google.cloud.gkehub.v1alpha2.IMembership + > + ): void; listMemberships( request?: protos.google.cloud.gkehub.v1alpha2.IListMembershipsRequest, optionsOrCallback?: @@ -1353,7 +1341,8 @@ export class GkeHubClient { gax.routingHeader.fromParams({ parent: request.parent || '', }); - const callSettings = new gax.CallSettings(options); + const defaultCallSettings = this._defaults['listMemberships']; + const callSettings = defaultCallSettings.merge(options); this.initialize(); return this.descriptors.page.listMemberships.createStream( this.innerApiCalls.listMemberships as gax.GaxCall, @@ -1413,11 +1402,8 @@ export class GkeHubClient { * Please see the * [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#auto-pagination) * for more details and examples. - * @example - * const iterable = client.listMembershipsAsync(request); - * for await (const response of iterable) { - * // process response - * } + * @example include:samples/generated/v1alpha2/gke_hub.list_memberships.js + * region_tag:gkehub_v1alpha2_generated_GkeHub_ListMemberships_async */ listMembershipsAsync( request?: protos.google.cloud.gkehub.v1alpha2.IListMembershipsRequest, @@ -1431,8 +1417,8 @@ export class GkeHubClient { gax.routingHeader.fromParams({ parent: request.parent || '', }); - options = options || {}; - const callSettings = new gax.CallSettings(options); + const defaultCallSettings = this._defaults['listMemberships']; + const callSettings = defaultCallSettings.merge(options); this.initialize(); return this.descriptors.page.listMemberships.asyncIterate( this.innerApiCalls['listMemberships'] as GaxCall, diff --git a/packages/google-cloud-gkehub/src/v1beta/gapic_metadata.json b/packages/google-cloud-gkehub/src/v1beta/gapic_metadata.json index 303fc54223e..adc7122180e 100644 --- a/packages/google-cloud-gkehub/src/v1beta/gapic_metadata.json +++ b/packages/google-cloud-gkehub/src/v1beta/gapic_metadata.json @@ -3,7 +3,7 @@ "comment": "This file maps proto services/RPCs to the corresponding library clients/methods", "language": "typescript", "protoPackage": "google.cloud.gkehub.v1beta", - "libraryPackage": "@google-cloud/gkehub", + "libraryPackage": "@google-cloud/gke-hub", "services": { "GkeHub": { "clients": { diff --git a/packages/google-cloud-gkehub/src/v1beta/gke_hub_client.ts b/packages/google-cloud-gkehub/src/v1beta/gke_hub_client.ts index 9059e1f5f25..383e1e6f738 100644 --- a/packages/google-cloud-gkehub/src/v1beta/gke_hub_client.ts +++ b/packages/google-cloud-gkehub/src/v1beta/gke_hub_client.ts @@ -384,6 +384,24 @@ export class GkeHubClient { // ------------------- // -- Service calls -- // ------------------- + /** + * Gets details of a single Feature. + * + * @param {Object} request + * The request object that will be sent. + * @param {string} request.name + * The Feature resource name in the format + * `projects/* /locations/* /features/*` + * @param {object} [options] + * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. + * @returns {Promise} - The promise which resolves to an array. + * The first element of the array is an object representing [Feature]{@link google.cloud.gkehub.v1beta.Feature}. + * Please see the + * [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods) + * for more details and examples. + * @example include:samples/generated/v1beta/gke_hub.get_feature.js + * region_tag:gkehub_v1beta_generated_GkeHub_GetFeature_async + */ getFeature( request?: protos.google.cloud.gkehub.v1beta.IGetFeatureRequest, options?: CallOptions @@ -411,24 +429,6 @@ export class GkeHubClient { {} | null | undefined > ): void; - /** - * Gets details of a single Feature. - * - * @param {Object} request - * The request object that will be sent. - * @param {string} request.name - * The Feature resource name in the format - * `projects/* /locations/* /features/*` - * @param {object} [options] - * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. - * @returns {Promise} - The promise which resolves to an array. - * The first element of the array is an object representing [Feature]{@link google.cloud.gkehub.v1beta.Feature}. - * Please see the - * [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods) - * for more details and examples. - * @example - * const [response] = await client.getFeature(request); - */ getFeature( request?: protos.google.cloud.gkehub.v1beta.IGetFeatureRequest, optionsOrCallback?: @@ -471,42 +471,6 @@ export class GkeHubClient { return this.innerApiCalls.getFeature(request, options, callback); } - createFeature( - request?: protos.google.cloud.gkehub.v1beta.ICreateFeatureRequest, - options?: CallOptions - ): Promise< - [ - LROperation< - protos.google.cloud.gkehub.v1beta.IFeature, - protos.google.cloud.gkehub.v1beta.IOperationMetadata - >, - protos.google.longrunning.IOperation | undefined, - {} | undefined - ] - >; - createFeature( - request: protos.google.cloud.gkehub.v1beta.ICreateFeatureRequest, - options: CallOptions, - callback: Callback< - LROperation< - protos.google.cloud.gkehub.v1beta.IFeature, - protos.google.cloud.gkehub.v1beta.IOperationMetadata - >, - protos.google.longrunning.IOperation | null | undefined, - {} | null | undefined - > - ): void; - createFeature( - request: protos.google.cloud.gkehub.v1beta.ICreateFeatureRequest, - callback: Callback< - LROperation< - protos.google.cloud.gkehub.v1beta.IFeature, - protos.google.cloud.gkehub.v1beta.IOperationMetadata - >, - protos.google.longrunning.IOperation | null | undefined, - {} | null | undefined - > - ): void; /** * Adds a new Feature. * @@ -542,10 +506,45 @@ export class GkeHubClient { * Please see the * [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations) * for more details and examples. - * @example - * const [operation] = await client.createFeature(request); - * const [response] = await operation.promise(); + * @example include:samples/generated/v1beta/gke_hub.create_feature.js + * region_tag:gkehub_v1beta_generated_GkeHub_CreateFeature_async */ + createFeature( + request?: protos.google.cloud.gkehub.v1beta.ICreateFeatureRequest, + options?: CallOptions + ): Promise< + [ + LROperation< + protos.google.cloud.gkehub.v1beta.IFeature, + protos.google.cloud.gkehub.v1beta.IOperationMetadata + >, + protos.google.longrunning.IOperation | undefined, + {} | undefined + ] + >; + createFeature( + request: protos.google.cloud.gkehub.v1beta.ICreateFeatureRequest, + options: CallOptions, + callback: Callback< + LROperation< + protos.google.cloud.gkehub.v1beta.IFeature, + protos.google.cloud.gkehub.v1beta.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + > + ): void; + createFeature( + request: protos.google.cloud.gkehub.v1beta.ICreateFeatureRequest, + callback: Callback< + LROperation< + protos.google.cloud.gkehub.v1beta.IFeature, + protos.google.cloud.gkehub.v1beta.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + > + ): void; createFeature( request?: protos.google.cloud.gkehub.v1beta.ICreateFeatureRequest, optionsOrCallback?: @@ -603,11 +602,8 @@ export class GkeHubClient { * Please see the * [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations) * for more details and examples. - * @example - * const decodedOperation = await checkCreateFeatureProgress(name); - * console.log(decodedOperation.result); - * console.log(decodedOperation.done); - * console.log(decodedOperation.metadata); + * @example include:samples/generated/v1beta/gke_hub.create_feature.js + * region_tag:gkehub_v1beta_generated_GkeHub_CreateFeature_async */ async checkCreateFeatureProgress( name: string @@ -631,42 +627,6 @@ export class GkeHubClient { protos.google.cloud.gkehub.v1beta.OperationMetadata >; } - deleteFeature( - request?: protos.google.cloud.gkehub.v1beta.IDeleteFeatureRequest, - options?: CallOptions - ): Promise< - [ - LROperation< - protos.google.protobuf.IEmpty, - protos.google.cloud.gkehub.v1beta.IOperationMetadata - >, - protos.google.longrunning.IOperation | undefined, - {} | undefined - ] - >; - deleteFeature( - request: protos.google.cloud.gkehub.v1beta.IDeleteFeatureRequest, - options: CallOptions, - callback: Callback< - LROperation< - protos.google.protobuf.IEmpty, - protos.google.cloud.gkehub.v1beta.IOperationMetadata - >, - protos.google.longrunning.IOperation | null | undefined, - {} | null | undefined - > - ): void; - deleteFeature( - request: protos.google.cloud.gkehub.v1beta.IDeleteFeatureRequest, - callback: Callback< - LROperation< - protos.google.protobuf.IEmpty, - protos.google.cloud.gkehub.v1beta.IOperationMetadata - >, - protos.google.longrunning.IOperation | null | undefined, - {} | null | undefined - > - ): void; /** * Removes a Feature. * @@ -702,10 +662,45 @@ export class GkeHubClient { * Please see the * [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations) * for more details and examples. - * @example - * const [operation] = await client.deleteFeature(request); - * const [response] = await operation.promise(); + * @example include:samples/generated/v1beta/gke_hub.delete_feature.js + * region_tag:gkehub_v1beta_generated_GkeHub_DeleteFeature_async */ + deleteFeature( + request?: protos.google.cloud.gkehub.v1beta.IDeleteFeatureRequest, + options?: CallOptions + ): Promise< + [ + LROperation< + protos.google.protobuf.IEmpty, + protos.google.cloud.gkehub.v1beta.IOperationMetadata + >, + protos.google.longrunning.IOperation | undefined, + {} | undefined + ] + >; + deleteFeature( + request: protos.google.cloud.gkehub.v1beta.IDeleteFeatureRequest, + options: CallOptions, + callback: Callback< + LROperation< + protos.google.protobuf.IEmpty, + protos.google.cloud.gkehub.v1beta.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + > + ): void; + deleteFeature( + request: protos.google.cloud.gkehub.v1beta.IDeleteFeatureRequest, + callback: Callback< + LROperation< + protos.google.protobuf.IEmpty, + protos.google.cloud.gkehub.v1beta.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + > + ): void; deleteFeature( request?: protos.google.cloud.gkehub.v1beta.IDeleteFeatureRequest, optionsOrCallback?: @@ -763,11 +758,8 @@ export class GkeHubClient { * Please see the * [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations) * for more details and examples. - * @example - * const decodedOperation = await checkDeleteFeatureProgress(name); - * console.log(decodedOperation.result); - * console.log(decodedOperation.done); - * console.log(decodedOperation.metadata); + * @example include:samples/generated/v1beta/gke_hub.delete_feature.js + * region_tag:gkehub_v1beta_generated_GkeHub_DeleteFeature_async */ async checkDeleteFeatureProgress( name: string @@ -791,42 +783,6 @@ export class GkeHubClient { protos.google.cloud.gkehub.v1beta.OperationMetadata >; } - updateFeature( - request?: protos.google.cloud.gkehub.v1beta.IUpdateFeatureRequest, - options?: CallOptions - ): Promise< - [ - LROperation< - protos.google.cloud.gkehub.v1beta.IFeature, - protos.google.cloud.gkehub.v1beta.IOperationMetadata - >, - protos.google.longrunning.IOperation | undefined, - {} | undefined - ] - >; - updateFeature( - request: protos.google.cloud.gkehub.v1beta.IUpdateFeatureRequest, - options: CallOptions, - callback: Callback< - LROperation< - protos.google.cloud.gkehub.v1beta.IFeature, - protos.google.cloud.gkehub.v1beta.IOperationMetadata - >, - protos.google.longrunning.IOperation | null | undefined, - {} | null | undefined - > - ): void; - updateFeature( - request: protos.google.cloud.gkehub.v1beta.IUpdateFeatureRequest, - callback: Callback< - LROperation< - protos.google.cloud.gkehub.v1beta.IFeature, - protos.google.cloud.gkehub.v1beta.IOperationMetadata - >, - protos.google.longrunning.IOperation | null | undefined, - {} | null | undefined - > - ): void; /** * Updates an existing Feature. * @@ -869,10 +825,45 @@ export class GkeHubClient { * Please see the * [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations) * for more details and examples. - * @example - * const [operation] = await client.updateFeature(request); - * const [response] = await operation.promise(); + * @example include:samples/generated/v1beta/gke_hub.update_feature.js + * region_tag:gkehub_v1beta_generated_GkeHub_UpdateFeature_async */ + updateFeature( + request?: protos.google.cloud.gkehub.v1beta.IUpdateFeatureRequest, + options?: CallOptions + ): Promise< + [ + LROperation< + protos.google.cloud.gkehub.v1beta.IFeature, + protos.google.cloud.gkehub.v1beta.IOperationMetadata + >, + protos.google.longrunning.IOperation | undefined, + {} | undefined + ] + >; + updateFeature( + request: protos.google.cloud.gkehub.v1beta.IUpdateFeatureRequest, + options: CallOptions, + callback: Callback< + LROperation< + protos.google.cloud.gkehub.v1beta.IFeature, + protos.google.cloud.gkehub.v1beta.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + > + ): void; + updateFeature( + request: protos.google.cloud.gkehub.v1beta.IUpdateFeatureRequest, + callback: Callback< + LROperation< + protos.google.cloud.gkehub.v1beta.IFeature, + protos.google.cloud.gkehub.v1beta.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + > + ): void; updateFeature( request?: protos.google.cloud.gkehub.v1beta.IUpdateFeatureRequest, optionsOrCallback?: @@ -930,11 +921,8 @@ export class GkeHubClient { * Please see the * [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations) * for more details and examples. - * @example - * const decodedOperation = await checkUpdateFeatureProgress(name); - * console.log(decodedOperation.result); - * console.log(decodedOperation.done); - * console.log(decodedOperation.metadata); + * @example include:samples/generated/v1beta/gke_hub.update_feature.js + * region_tag:gkehub_v1beta_generated_GkeHub_UpdateFeature_async */ async checkUpdateFeatureProgress( name: string @@ -958,37 +946,6 @@ export class GkeHubClient { protos.google.cloud.gkehub.v1beta.OperationMetadata >; } - listFeatures( - request?: protos.google.cloud.gkehub.v1beta.IListFeaturesRequest, - options?: CallOptions - ): Promise< - [ - protos.google.cloud.gkehub.v1beta.IFeature[], - protos.google.cloud.gkehub.v1beta.IListFeaturesRequest | null, - protos.google.cloud.gkehub.v1beta.IListFeaturesResponse - ] - >; - listFeatures( - request: protos.google.cloud.gkehub.v1beta.IListFeaturesRequest, - options: CallOptions, - callback: PaginationCallback< - protos.google.cloud.gkehub.v1beta.IListFeaturesRequest, - | protos.google.cloud.gkehub.v1beta.IListFeaturesResponse - | null - | undefined, - protos.google.cloud.gkehub.v1beta.IFeature - > - ): void; - listFeatures( - request: protos.google.cloud.gkehub.v1beta.IListFeaturesRequest, - callback: PaginationCallback< - protos.google.cloud.gkehub.v1beta.IListFeaturesRequest, - | protos.google.cloud.gkehub.v1beta.IListFeaturesResponse - | null - | undefined, - protos.google.cloud.gkehub.v1beta.IFeature - > - ): void; /** * Lists Features in a given project and location. * @@ -1038,6 +995,37 @@ export class GkeHubClient { * [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#auto-pagination) * for more details and examples. */ + listFeatures( + request?: protos.google.cloud.gkehub.v1beta.IListFeaturesRequest, + options?: CallOptions + ): Promise< + [ + protos.google.cloud.gkehub.v1beta.IFeature[], + protos.google.cloud.gkehub.v1beta.IListFeaturesRequest | null, + protos.google.cloud.gkehub.v1beta.IListFeaturesResponse + ] + >; + listFeatures( + request: protos.google.cloud.gkehub.v1beta.IListFeaturesRequest, + options: CallOptions, + callback: PaginationCallback< + protos.google.cloud.gkehub.v1beta.IListFeaturesRequest, + | protos.google.cloud.gkehub.v1beta.IListFeaturesResponse + | null + | undefined, + protos.google.cloud.gkehub.v1beta.IFeature + > + ): void; + listFeatures( + request: protos.google.cloud.gkehub.v1beta.IListFeaturesRequest, + callback: PaginationCallback< + protos.google.cloud.gkehub.v1beta.IListFeaturesRequest, + | protos.google.cloud.gkehub.v1beta.IListFeaturesResponse + | null + | undefined, + protos.google.cloud.gkehub.v1beta.IFeature + > + ): void; listFeatures( request?: protos.google.cloud.gkehub.v1beta.IListFeaturesRequest, optionsOrCallback?: @@ -1141,7 +1129,8 @@ export class GkeHubClient { gax.routingHeader.fromParams({ parent: request.parent || '', }); - const callSettings = new gax.CallSettings(options); + const defaultCallSettings = this._defaults['listFeatures']; + const callSettings = defaultCallSettings.merge(options); this.initialize(); return this.descriptors.page.listFeatures.createStream( this.innerApiCalls.listFeatures as gax.GaxCall, @@ -1197,11 +1186,8 @@ export class GkeHubClient { * Please see the * [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#auto-pagination) * for more details and examples. - * @example - * const iterable = client.listFeaturesAsync(request); - * for await (const response of iterable) { - * // process response - * } + * @example include:samples/generated/v1beta/gke_hub.list_features.js + * region_tag:gkehub_v1beta_generated_GkeHub_ListFeatures_async */ listFeaturesAsync( request?: protos.google.cloud.gkehub.v1beta.IListFeaturesRequest, @@ -1215,8 +1201,8 @@ export class GkeHubClient { gax.routingHeader.fromParams({ parent: request.parent || '', }); - options = options || {}; - const callSettings = new gax.CallSettings(options); + const defaultCallSettings = this._defaults['listFeatures']; + const callSettings = defaultCallSettings.merge(options); this.initialize(); return this.descriptors.page.listFeatures.asyncIterate( this.innerApiCalls['listFeatures'] as GaxCall, diff --git a/packages/google-cloud-gkehub/src/v1beta1/gke_hub_membership_service_client.ts b/packages/google-cloud-gkehub/src/v1beta1/gke_hub_membership_service_client.ts index 193332b7b25..ab23e8b9938 100644 --- a/packages/google-cloud-gkehub/src/v1beta1/gke_hub_membership_service_client.ts +++ b/packages/google-cloud-gkehub/src/v1beta1/gke_hub_membership_service_client.ts @@ -383,6 +383,24 @@ export class GkeHubMembershipServiceClient { // ------------------- // -- Service calls -- // ------------------- + /** + * Gets the details of a Membership. + * + * @param {Object} request + * The request object that will be sent. + * @param {string} request.name + * Required. The Membership resource name in the format + * `projects/* /locations/* /memberships/*`. + * @param {object} [options] + * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. + * @returns {Promise} - The promise which resolves to an array. + * The first element of the array is an object representing [Membership]{@link google.cloud.gkehub.v1beta1.Membership}. + * Please see the + * [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods) + * for more details and examples. + * @example include:samples/generated/v1beta1/gke_hub_membership_service.get_membership.js + * region_tag:gkehub_v1beta1_generated_GkeHubMembershipService_GetMembership_async + */ getMembership( request?: protos.google.cloud.gkehub.v1beta1.IGetMembershipRequest, options?: CallOptions @@ -414,24 +432,6 @@ export class GkeHubMembershipServiceClient { {} | null | undefined > ): void; - /** - * Gets the details of a Membership. - * - * @param {Object} request - * The request object that will be sent. - * @param {string} request.name - * Required. The Membership resource name in the format - * `projects/* /locations/* /memberships/*`. - * @param {object} [options] - * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. - * @returns {Promise} - The promise which resolves to an array. - * The first element of the array is an object representing [Membership]{@link google.cloud.gkehub.v1beta1.Membership}. - * Please see the - * [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods) - * for more details and examples. - * @example - * const [response] = await client.getMembership(request); - */ getMembership( request?: protos.google.cloud.gkehub.v1beta1.IGetMembershipRequest, optionsOrCallback?: @@ -475,6 +475,39 @@ export class GkeHubMembershipServiceClient { this.initialize(); return this.innerApiCalls.getMembership(request, options, callback); } + /** + * Generates the manifest for deployment of the GKE connect agent. + * + * **This method is used internally by Google-provided libraries.** + * Most clients should not need to call this method directly. + * + * @param {Object} request + * The request object that will be sent. + * @param {string} request.name + * Required. The Membership resource name the Agent will associate with, in the format + * `projects/* /locations/* /memberships/*`. + * @param {google.cloud.gkehub.v1beta1.ConnectAgent} [request.connectAgent] + * Optional. The connect agent to generate manifest for. + * @param {string} [request.version] + * Optional. The Connect agent version to use. Defaults to the most current version. + * @param {boolean} [request.isUpgrade] + * Optional. If true, generate the resources for upgrade only. Some resources + * generated only for installation (e.g. secrets) will be excluded. + * @param {string} [request.registry] + * Optional. The registry to fetch the connect agent image from. Defaults to + * gcr.io/gkeconnect. + * @param {Buffer} [request.imagePullSecretContent] + * Optional. The image pull secret content for the registry, if not public. + * @param {object} [options] + * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. + * @returns {Promise} - The promise which resolves to an array. + * The first element of the array is an object representing [GenerateConnectManifestResponse]{@link google.cloud.gkehub.v1beta1.GenerateConnectManifestResponse}. + * Please see the + * [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods) + * for more details and examples. + * @example include:samples/generated/v1beta1/gke_hub_membership_service.generate_connect_manifest.js + * region_tag:gkehub_v1beta1_generated_GkeHubMembershipService_GenerateConnectManifest_async + */ generateConnectManifest( request?: protos.google.cloud.gkehub.v1beta1.IGenerateConnectManifestRequest, options?: CallOptions @@ -509,39 +542,6 @@ export class GkeHubMembershipServiceClient { {} | null | undefined > ): void; - /** - * Generates the manifest for deployment of the GKE connect agent. - * - * **This method is used internally by Google-provided libraries.** - * Most clients should not need to call this method directly. - * - * @param {Object} request - * The request object that will be sent. - * @param {string} request.name - * Required. The Membership resource name the Agent will associate with, in the format - * `projects/* /locations/* /memberships/*`. - * @param {google.cloud.gkehub.v1beta1.ConnectAgent} [request.connectAgent] - * Optional. The connect agent to generate manifest for. - * @param {string} [request.version] - * Optional. The Connect agent version to use. Defaults to the most current version. - * @param {boolean} [request.isUpgrade] - * Optional. If true, generate the resources for upgrade only. Some resources - * generated only for installation (e.g. secrets) will be excluded. - * @param {string} [request.registry] - * Optional. The registry to fetch the connect agent image from. Defaults to - * gcr.io/gkeconnect. - * @param {Buffer} [request.imagePullSecretContent] - * Optional. The image pull secret content for the registry, if not public. - * @param {object} [options] - * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. - * @returns {Promise} - The promise which resolves to an array. - * The first element of the array is an object representing [GenerateConnectManifestResponse]{@link google.cloud.gkehub.v1beta1.GenerateConnectManifestResponse}. - * Please see the - * [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods) - * for more details and examples. - * @example - * const [response] = await client.generateConnectManifest(request); - */ generateConnectManifest( request?: protos.google.cloud.gkehub.v1beta1.IGenerateConnectManifestRequest, optionsOrCallback?: @@ -592,6 +592,31 @@ export class GkeHubMembershipServiceClient { callback ); } + /** + * ValidateExclusivity validates the state of exclusivity in the cluster. + * The validation does not depend on an existing Hub membership resource. + * + * @param {Object} request + * The request object that will be sent. + * @param {string} request.parent + * Required. The parent (project and location) where the Memberships will be created. + * Specified in the format `projects/* /locations/*`. + * @param {string} [request.crManifest] + * Optional. The YAML of the membership CR in the cluster. Empty if the membership + * CR does not exist. + * @param {string} request.intendedMembership + * Required. The intended membership name under the `parent`. This method only does + * validation in anticipation of a CreateMembership call with the same name. + * @param {object} [options] + * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. + * @returns {Promise} - The promise which resolves to an array. + * The first element of the array is an object representing [ValidateExclusivityResponse]{@link google.cloud.gkehub.v1beta1.ValidateExclusivityResponse}. + * Please see the + * [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods) + * for more details and examples. + * @example include:samples/generated/v1beta1/gke_hub_membership_service.validate_exclusivity.js + * region_tag:gkehub_v1beta1_generated_GkeHubMembershipService_ValidateExclusivity_async + */ validateExclusivity( request?: protos.google.cloud.gkehub.v1beta1.IValidateExclusivityRequest, options?: CallOptions @@ -626,31 +651,6 @@ export class GkeHubMembershipServiceClient { {} | null | undefined > ): void; - /** - * ValidateExclusivity validates the state of exclusivity in the cluster. - * The validation does not depend on an existing Hub membership resource. - * - * @param {Object} request - * The request object that will be sent. - * @param {string} request.parent - * Required. The parent (project and location) where the Memberships will be created. - * Specified in the format `projects/* /locations/*`. - * @param {string} [request.crManifest] - * Optional. The YAML of the membership CR in the cluster. Empty if the membership - * CR does not exist. - * @param {string} request.intendedMembership - * Required. The intended membership name under the `parent`. This method only does - * validation in anticipation of a CreateMembership call with the same name. - * @param {object} [options] - * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. - * @returns {Promise} - The promise which resolves to an array. - * The first element of the array is an object representing [ValidateExclusivityResponse]{@link google.cloud.gkehub.v1beta1.ValidateExclusivityResponse}. - * Please see the - * [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods) - * for more details and examples. - * @example - * const [response] = await client.validateExclusivity(request); - */ validateExclusivity( request?: protos.google.cloud.gkehub.v1beta1.IValidateExclusivityRequest, optionsOrCallback?: @@ -697,40 +697,6 @@ export class GkeHubMembershipServiceClient { this.initialize(); return this.innerApiCalls.validateExclusivity(request, options, callback); } - generateExclusivityManifest( - request?: protos.google.cloud.gkehub.v1beta1.IGenerateExclusivityManifestRequest, - options?: CallOptions - ): Promise< - [ - protos.google.cloud.gkehub.v1beta1.IGenerateExclusivityManifestResponse, - ( - | protos.google.cloud.gkehub.v1beta1.IGenerateExclusivityManifestRequest - | undefined - ), - {} | undefined - ] - >; - generateExclusivityManifest( - request: protos.google.cloud.gkehub.v1beta1.IGenerateExclusivityManifestRequest, - options: CallOptions, - callback: Callback< - protos.google.cloud.gkehub.v1beta1.IGenerateExclusivityManifestResponse, - | protos.google.cloud.gkehub.v1beta1.IGenerateExclusivityManifestRequest - | null - | undefined, - {} | null | undefined - > - ): void; - generateExclusivityManifest( - request: protos.google.cloud.gkehub.v1beta1.IGenerateExclusivityManifestRequest, - callback: Callback< - protos.google.cloud.gkehub.v1beta1.IGenerateExclusivityManifestResponse, - | protos.google.cloud.gkehub.v1beta1.IGenerateExclusivityManifestRequest - | null - | undefined, - {} | null | undefined - > - ): void; /** * GenerateExclusivityManifest generates the manifests to update the * exclusivity artifacts in the cluster if needed. @@ -765,9 +731,43 @@ export class GkeHubMembershipServiceClient { * Please see the * [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods) * for more details and examples. - * @example - * const [response] = await client.generateExclusivityManifest(request); + * @example include:samples/generated/v1beta1/gke_hub_membership_service.generate_exclusivity_manifest.js + * region_tag:gkehub_v1beta1_generated_GkeHubMembershipService_GenerateExclusivityManifest_async */ + generateExclusivityManifest( + request?: protos.google.cloud.gkehub.v1beta1.IGenerateExclusivityManifestRequest, + options?: CallOptions + ): Promise< + [ + protos.google.cloud.gkehub.v1beta1.IGenerateExclusivityManifestResponse, + ( + | protos.google.cloud.gkehub.v1beta1.IGenerateExclusivityManifestRequest + | undefined + ), + {} | undefined + ] + >; + generateExclusivityManifest( + request: protos.google.cloud.gkehub.v1beta1.IGenerateExclusivityManifestRequest, + options: CallOptions, + callback: Callback< + protos.google.cloud.gkehub.v1beta1.IGenerateExclusivityManifestResponse, + | protos.google.cloud.gkehub.v1beta1.IGenerateExclusivityManifestRequest + | null + | undefined, + {} | null | undefined + > + ): void; + generateExclusivityManifest( + request: protos.google.cloud.gkehub.v1beta1.IGenerateExclusivityManifestRequest, + callback: Callback< + protos.google.cloud.gkehub.v1beta1.IGenerateExclusivityManifestResponse, + | protos.google.cloud.gkehub.v1beta1.IGenerateExclusivityManifestRequest + | null + | undefined, + {} | null | undefined + > + ): void; generateExclusivityManifest( request?: protos.google.cloud.gkehub.v1beta1.IGenerateExclusivityManifestRequest, optionsOrCallback?: @@ -819,42 +819,6 @@ export class GkeHubMembershipServiceClient { ); } - createMembership( - request?: protos.google.cloud.gkehub.v1beta1.ICreateMembershipRequest, - options?: CallOptions - ): Promise< - [ - LROperation< - protos.google.cloud.gkehub.v1beta1.IMembership, - protos.google.cloud.gkehub.v1beta1.IOperationMetadata - >, - protos.google.longrunning.IOperation | undefined, - {} | undefined - ] - >; - createMembership( - request: protos.google.cloud.gkehub.v1beta1.ICreateMembershipRequest, - options: CallOptions, - callback: Callback< - LROperation< - protos.google.cloud.gkehub.v1beta1.IMembership, - protos.google.cloud.gkehub.v1beta1.IOperationMetadata - >, - protos.google.longrunning.IOperation | null | undefined, - {} | null | undefined - > - ): void; - createMembership( - request: protos.google.cloud.gkehub.v1beta1.ICreateMembershipRequest, - callback: Callback< - LROperation< - protos.google.cloud.gkehub.v1beta1.IMembership, - protos.google.cloud.gkehub.v1beta1.IOperationMetadata - >, - protos.google.longrunning.IOperation | null | undefined, - {} | null | undefined - > - ): void; /** * Creates a new Membership. * @@ -902,10 +866,45 @@ export class GkeHubMembershipServiceClient { * Please see the * [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations) * for more details and examples. - * @example - * const [operation] = await client.createMembership(request); - * const [response] = await operation.promise(); + * @example include:samples/generated/v1beta1/gke_hub_membership_service.create_membership.js + * region_tag:gkehub_v1beta1_generated_GkeHubMembershipService_CreateMembership_async */ + createMembership( + request?: protos.google.cloud.gkehub.v1beta1.ICreateMembershipRequest, + options?: CallOptions + ): Promise< + [ + LROperation< + protos.google.cloud.gkehub.v1beta1.IMembership, + protos.google.cloud.gkehub.v1beta1.IOperationMetadata + >, + protos.google.longrunning.IOperation | undefined, + {} | undefined + ] + >; + createMembership( + request: protos.google.cloud.gkehub.v1beta1.ICreateMembershipRequest, + options: CallOptions, + callback: Callback< + LROperation< + protos.google.cloud.gkehub.v1beta1.IMembership, + protos.google.cloud.gkehub.v1beta1.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + > + ): void; + createMembership( + request: protos.google.cloud.gkehub.v1beta1.ICreateMembershipRequest, + callback: Callback< + LROperation< + protos.google.cloud.gkehub.v1beta1.IMembership, + protos.google.cloud.gkehub.v1beta1.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + > + ): void; createMembership( request?: protos.google.cloud.gkehub.v1beta1.ICreateMembershipRequest, optionsOrCallback?: @@ -963,11 +962,8 @@ export class GkeHubMembershipServiceClient { * Please see the * [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations) * for more details and examples. - * @example - * const decodedOperation = await checkCreateMembershipProgress(name); - * console.log(decodedOperation.result); - * console.log(decodedOperation.done); - * console.log(decodedOperation.metadata); + * @example include:samples/generated/v1beta1/gke_hub_membership_service.create_membership.js + * region_tag:gkehub_v1beta1_generated_GkeHubMembershipService_CreateMembership_async */ async checkCreateMembershipProgress( name: string @@ -991,42 +987,6 @@ export class GkeHubMembershipServiceClient { protos.google.cloud.gkehub.v1beta1.OperationMetadata >; } - deleteMembership( - request?: protos.google.cloud.gkehub.v1beta1.IDeleteMembershipRequest, - options?: CallOptions - ): Promise< - [ - LROperation< - protos.google.protobuf.IEmpty, - protos.google.cloud.gkehub.v1beta1.IOperationMetadata - >, - protos.google.longrunning.IOperation | undefined, - {} | undefined - ] - >; - deleteMembership( - request: protos.google.cloud.gkehub.v1beta1.IDeleteMembershipRequest, - options: CallOptions, - callback: Callback< - LROperation< - protos.google.protobuf.IEmpty, - protos.google.cloud.gkehub.v1beta1.IOperationMetadata - >, - protos.google.longrunning.IOperation | null | undefined, - {} | null | undefined - > - ): void; - deleteMembership( - request: protos.google.cloud.gkehub.v1beta1.IDeleteMembershipRequest, - callback: Callback< - LROperation< - protos.google.protobuf.IEmpty, - protos.google.cloud.gkehub.v1beta1.IOperationMetadata - >, - protos.google.longrunning.IOperation | null | undefined, - {} | null | undefined - > - ): void; /** * Removes a Membership. * @@ -1062,10 +1022,45 @@ export class GkeHubMembershipServiceClient { * Please see the * [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations) * for more details and examples. - * @example - * const [operation] = await client.deleteMembership(request); - * const [response] = await operation.promise(); + * @example include:samples/generated/v1beta1/gke_hub_membership_service.delete_membership.js + * region_tag:gkehub_v1beta1_generated_GkeHubMembershipService_DeleteMembership_async */ + deleteMembership( + request?: protos.google.cloud.gkehub.v1beta1.IDeleteMembershipRequest, + options?: CallOptions + ): Promise< + [ + LROperation< + protos.google.protobuf.IEmpty, + protos.google.cloud.gkehub.v1beta1.IOperationMetadata + >, + protos.google.longrunning.IOperation | undefined, + {} | undefined + ] + >; + deleteMembership( + request: protos.google.cloud.gkehub.v1beta1.IDeleteMembershipRequest, + options: CallOptions, + callback: Callback< + LROperation< + protos.google.protobuf.IEmpty, + protos.google.cloud.gkehub.v1beta1.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + > + ): void; + deleteMembership( + request: protos.google.cloud.gkehub.v1beta1.IDeleteMembershipRequest, + callback: Callback< + LROperation< + protos.google.protobuf.IEmpty, + protos.google.cloud.gkehub.v1beta1.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + > + ): void; deleteMembership( request?: protos.google.cloud.gkehub.v1beta1.IDeleteMembershipRequest, optionsOrCallback?: @@ -1123,11 +1118,8 @@ export class GkeHubMembershipServiceClient { * Please see the * [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations) * for more details and examples. - * @example - * const decodedOperation = await checkDeleteMembershipProgress(name); - * console.log(decodedOperation.result); - * console.log(decodedOperation.done); - * console.log(decodedOperation.metadata); + * @example include:samples/generated/v1beta1/gke_hub_membership_service.delete_membership.js + * region_tag:gkehub_v1beta1_generated_GkeHubMembershipService_DeleteMembership_async */ async checkDeleteMembershipProgress( name: string @@ -1151,42 +1143,6 @@ export class GkeHubMembershipServiceClient { protos.google.cloud.gkehub.v1beta1.OperationMetadata >; } - updateMembership( - request?: protos.google.cloud.gkehub.v1beta1.IUpdateMembershipRequest, - options?: CallOptions - ): Promise< - [ - LROperation< - protos.google.cloud.gkehub.v1beta1.IMembership, - protos.google.cloud.gkehub.v1beta1.IOperationMetadata - >, - protos.google.longrunning.IOperation | undefined, - {} | undefined - ] - >; - updateMembership( - request: protos.google.cloud.gkehub.v1beta1.IUpdateMembershipRequest, - options: CallOptions, - callback: Callback< - LROperation< - protos.google.cloud.gkehub.v1beta1.IMembership, - protos.google.cloud.gkehub.v1beta1.IOperationMetadata - >, - protos.google.longrunning.IOperation | null | undefined, - {} | null | undefined - > - ): void; - updateMembership( - request: protos.google.cloud.gkehub.v1beta1.IUpdateMembershipRequest, - callback: Callback< - LROperation< - protos.google.cloud.gkehub.v1beta1.IMembership, - protos.google.cloud.gkehub.v1beta1.IOperationMetadata - >, - protos.google.longrunning.IOperation | null | undefined, - {} | null | undefined - > - ): void; /** * Updates an existing Membership. * @@ -1230,10 +1186,45 @@ export class GkeHubMembershipServiceClient { * Please see the * [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations) * for more details and examples. - * @example - * const [operation] = await client.updateMembership(request); - * const [response] = await operation.promise(); + * @example include:samples/generated/v1beta1/gke_hub_membership_service.update_membership.js + * region_tag:gkehub_v1beta1_generated_GkeHubMembershipService_UpdateMembership_async */ + updateMembership( + request?: protos.google.cloud.gkehub.v1beta1.IUpdateMembershipRequest, + options?: CallOptions + ): Promise< + [ + LROperation< + protos.google.cloud.gkehub.v1beta1.IMembership, + protos.google.cloud.gkehub.v1beta1.IOperationMetadata + >, + protos.google.longrunning.IOperation | undefined, + {} | undefined + ] + >; + updateMembership( + request: protos.google.cloud.gkehub.v1beta1.IUpdateMembershipRequest, + options: CallOptions, + callback: Callback< + LROperation< + protos.google.cloud.gkehub.v1beta1.IMembership, + protos.google.cloud.gkehub.v1beta1.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + > + ): void; + updateMembership( + request: protos.google.cloud.gkehub.v1beta1.IUpdateMembershipRequest, + callback: Callback< + LROperation< + protos.google.cloud.gkehub.v1beta1.IMembership, + protos.google.cloud.gkehub.v1beta1.IOperationMetadata + >, + protos.google.longrunning.IOperation | null | undefined, + {} | null | undefined + > + ): void; updateMembership( request?: protos.google.cloud.gkehub.v1beta1.IUpdateMembershipRequest, optionsOrCallback?: @@ -1291,11 +1282,8 @@ export class GkeHubMembershipServiceClient { * Please see the * [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations) * for more details and examples. - * @example - * const decodedOperation = await checkUpdateMembershipProgress(name); - * console.log(decodedOperation.result); - * console.log(decodedOperation.done); - * console.log(decodedOperation.metadata); + * @example include:samples/generated/v1beta1/gke_hub_membership_service.update_membership.js + * region_tag:gkehub_v1beta1_generated_GkeHubMembershipService_UpdateMembership_async */ async checkUpdateMembershipProgress( name: string @@ -1319,37 +1307,6 @@ export class GkeHubMembershipServiceClient { protos.google.cloud.gkehub.v1beta1.OperationMetadata >; } - listMemberships( - request?: protos.google.cloud.gkehub.v1beta1.IListMembershipsRequest, - options?: CallOptions - ): Promise< - [ - protos.google.cloud.gkehub.v1beta1.IMembership[], - protos.google.cloud.gkehub.v1beta1.IListMembershipsRequest | null, - protos.google.cloud.gkehub.v1beta1.IListMembershipsResponse - ] - >; - listMemberships( - request: protos.google.cloud.gkehub.v1beta1.IListMembershipsRequest, - options: CallOptions, - callback: PaginationCallback< - protos.google.cloud.gkehub.v1beta1.IListMembershipsRequest, - | protos.google.cloud.gkehub.v1beta1.IListMembershipsResponse - | null - | undefined, - protos.google.cloud.gkehub.v1beta1.IMembership - > - ): void; - listMemberships( - request: protos.google.cloud.gkehub.v1beta1.IListMembershipsRequest, - callback: PaginationCallback< - protos.google.cloud.gkehub.v1beta1.IListMembershipsRequest, - | protos.google.cloud.gkehub.v1beta1.IListMembershipsResponse - | null - | undefined, - protos.google.cloud.gkehub.v1beta1.IMembership - > - ): void; /** * Lists Memberships in a given project and location. * @@ -1403,6 +1360,37 @@ export class GkeHubMembershipServiceClient { * [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#auto-pagination) * for more details and examples. */ + listMemberships( + request?: protos.google.cloud.gkehub.v1beta1.IListMembershipsRequest, + options?: CallOptions + ): Promise< + [ + protos.google.cloud.gkehub.v1beta1.IMembership[], + protos.google.cloud.gkehub.v1beta1.IListMembershipsRequest | null, + protos.google.cloud.gkehub.v1beta1.IListMembershipsResponse + ] + >; + listMemberships( + request: protos.google.cloud.gkehub.v1beta1.IListMembershipsRequest, + options: CallOptions, + callback: PaginationCallback< + protos.google.cloud.gkehub.v1beta1.IListMembershipsRequest, + | protos.google.cloud.gkehub.v1beta1.IListMembershipsResponse + | null + | undefined, + protos.google.cloud.gkehub.v1beta1.IMembership + > + ): void; + listMemberships( + request: protos.google.cloud.gkehub.v1beta1.IListMembershipsRequest, + callback: PaginationCallback< + protos.google.cloud.gkehub.v1beta1.IListMembershipsRequest, + | protos.google.cloud.gkehub.v1beta1.IListMembershipsResponse + | null + | undefined, + protos.google.cloud.gkehub.v1beta1.IMembership + > + ): void; listMemberships( request?: protos.google.cloud.gkehub.v1beta1.IListMembershipsRequest, optionsOrCallback?: @@ -1510,7 +1498,8 @@ export class GkeHubMembershipServiceClient { gax.routingHeader.fromParams({ parent: request.parent || '', }); - const callSettings = new gax.CallSettings(options); + const defaultCallSettings = this._defaults['listMemberships']; + const callSettings = defaultCallSettings.merge(options); this.initialize(); return this.descriptors.page.listMemberships.createStream( this.innerApiCalls.listMemberships as gax.GaxCall, @@ -1570,11 +1559,8 @@ export class GkeHubMembershipServiceClient { * Please see the * [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#auto-pagination) * for more details and examples. - * @example - * const iterable = client.listMembershipsAsync(request); - * for await (const response of iterable) { - * // process response - * } + * @example include:samples/generated/v1beta1/gke_hub_membership_service.list_memberships.js + * region_tag:gkehub_v1beta1_generated_GkeHubMembershipService_ListMemberships_async */ listMembershipsAsync( request?: protos.google.cloud.gkehub.v1beta1.IListMembershipsRequest, @@ -1588,8 +1574,8 @@ export class GkeHubMembershipServiceClient { gax.routingHeader.fromParams({ parent: request.parent || '', }); - options = options || {}; - const callSettings = new gax.CallSettings(options); + const defaultCallSettings = this._defaults['listMemberships']; + const callSettings = defaultCallSettings.merge(options); this.initialize(); return this.descriptors.page.listMemberships.asyncIterate( this.innerApiCalls['listMemberships'] as GaxCall, From 7c505db7c566788306313be9e3a80c679df2930a Mon Sep 17 00:00:00 2001 From: Justin Beckwith Date: Thu, 25 Nov 2021 12:19:18 -0800 Subject: [PATCH 49/92] feat!: make v1 the default version of the API (#88) refactor!: v1 of API renames GkeHubMembershipServiceClient to GkeHubClient --- packages/google-cloud-gkehub/.repo-metadata.json | 4 ++-- packages/google-cloud-gkehub/README.md | 12 +++++++++--- .../google-cloud-gkehub/samples/quickstart.js | 4 ++-- .../samples/test/quickstart.js | 4 ++-- packages/google-cloud-gkehub/src/index.ts | 15 ++++----------- .../system-test/fixtures/sample/src/index.js | 3 +-- .../system-test/fixtures/sample/src/index.ts | 10 ++++------ packages/google-cloud-gkehub/webpack.config.js | 4 ++-- 8 files changed, 26 insertions(+), 30 deletions(-) diff --git a/packages/google-cloud-gkehub/.repo-metadata.json b/packages/google-cloud-gkehub/.repo-metadata.json index 40c1a3fc9ce..a06c007f06c 100644 --- a/packages/google-cloud-gkehub/.repo-metadata.json +++ b/packages/google-cloud-gkehub/.repo-metadata.json @@ -2,8 +2,8 @@ "client_documentation": "https://cloud.google.com/nodejs/docs/reference/gke-hub/latest", "api_id": "gkehub.googleapis.com", "distribution_name": "@google-cloud/gke-hub", - "release_level": "BETA", - "default_version": "v1beta1", + "release_level": "ga", + "default_version": "v1", "language": "nodejs", "name_pretty": "GKE Hub", "repo": "googleapis/nodejs-gke-hub", diff --git a/packages/google-cloud-gkehub/README.md b/packages/google-cloud-gkehub/README.md index 568d9783c1b..2c109e8f308 100644 --- a/packages/google-cloud-gkehub/README.md +++ b/packages/google-cloud-gkehub/README.md @@ -4,7 +4,7 @@ # [GKE Hub: Node.js Client](https://github.com/googleapis/nodejs-gke-hub) -[![release level](https://img.shields.io/badge/release%20level-beta-yellow.svg?style=flat)](https://cloud.google.com/terms/launch-stages) +[![release level](https://img.shields.io/badge/release%20level-general%20availability%20%28GA%29-brightgreen.svg?style=flat)](https://cloud.google.com/terms/launch-stages) [![npm version](https://img.shields.io/npm/v/@google-cloud/gke-hub.svg)](https://www.npmjs.org/package/@google-cloud/gke-hub) [![codecov](https://img.shields.io/codecov/c/github/googleapis/nodejs-gke-hub/main.svg?style=flat)](https://codecov.io/gh/googleapis/nodejs-gke-hub) @@ -60,14 +60,14 @@ npm install @google-cloud/gke-hub ```javascript // Imports the Google Cloud client library -const {GkeHubMembershipServiceClient} = require('@google-cloud/gke-hub'); +const {GkeHubClient} = require('@google-cloud/gke-hub'); // TODO(developer): replace with your preferred values. // const projectId = 'my-project' // const location = 'global' // Creates a client -const client = new GkeHubMembershipServiceClient(); +const client = new GkeHubClient(); async function listMemberships() { const memberships = await client.listMemberships({ @@ -120,6 +120,12 @@ _Legacy Node.js versions are supported as a best effort:_ This library follows [Semantic Versioning](http://semver.org/). +This library is considered to be **General Availability (GA)**. This means it +is 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 **GA** libraries +are addressed with the highest priority. + diff --git a/packages/google-cloud-gkehub/samples/quickstart.js b/packages/google-cloud-gkehub/samples/quickstart.js index 19082e17617..f74124e6ae3 100644 --- a/packages/google-cloud-gkehub/samples/quickstart.js +++ b/packages/google-cloud-gkehub/samples/quickstart.js @@ -17,14 +17,14 @@ async function main(projectId, location) { // [START nodejs_gke_hub_quickstart] // Imports the Google Cloud client library - const {GkeHubMembershipServiceClient} = require('@google-cloud/gke-hub'); + const {GkeHubClient} = require('@google-cloud/gke-hub'); // TODO(developer): replace with your preferred values. // const projectId = 'my-project' // const location = 'global' // Creates a client - const client = new GkeHubMembershipServiceClient(); + const client = new GkeHubClient(); async function listMemberships() { const memberships = await client.listMemberships({ diff --git a/packages/google-cloud-gkehub/samples/test/quickstart.js b/packages/google-cloud-gkehub/samples/test/quickstart.js index 6ef0a8f1244..1a3743a5fdf 100644 --- a/packages/google-cloud-gkehub/samples/test/quickstart.js +++ b/packages/google-cloud-gkehub/samples/test/quickstart.js @@ -20,14 +20,14 @@ const path = require('path'); const cp = require('child_process'); const {before, describe, it} = require('mocha'); -const {GkeHubMembershipServiceClient} = require('@google-cloud/gke-hub'); +const {GkeHubClient} = require('@google-cloud/gke-hub'); const {assert} = require('chai'); const execSync = cmd => cp.execSync(cmd, {encoding: 'utf-8'}); const cwd = path.join(__dirname, '..'); -const client = new GkeHubMembershipServiceClient(); +const client = new GkeHubClient(); describe('Quickstart', () => { let projectId; diff --git a/packages/google-cloud-gkehub/src/index.ts b/packages/google-cloud-gkehub/src/index.ts index c6f0a352b1a..33a219fc521 100644 --- a/packages/google-cloud-gkehub/src/index.ts +++ b/packages/google-cloud-gkehub/src/index.ts @@ -22,17 +22,10 @@ import * as v1alpha2 from './v1alpha2'; import * as v1beta from './v1beta'; import * as v1beta1 from './v1beta1'; -const GkeHubMembershipServiceClient = v1beta1.GkeHubMembershipServiceClient; -type GkeHubMembershipServiceClient = v1beta1.GkeHubMembershipServiceClient; +const GkeHubClient = v1.GkeHubClient; +type GkeHubClient = v1.GkeHubClient; -export {v1, v1alpha, v1alpha2, v1beta, v1beta1, GkeHubMembershipServiceClient}; -export default { - v1, - v1alpha, - v1alpha2, - v1beta, - v1beta1, - GkeHubMembershipServiceClient, -}; +export {v1, v1alpha, v1alpha2, v1beta, v1beta1, GkeHubClient}; +export default {v1, v1alpha, v1alpha2, v1beta, v1beta1, GkeHubClient}; import * as protos from '../protos/protos'; export {protos}; diff --git a/packages/google-cloud-gkehub/system-test/fixtures/sample/src/index.js b/packages/google-cloud-gkehub/system-test/fixtures/sample/src/index.js index 6eebfc4adaa..a531fbb3c7e 100644 --- a/packages/google-cloud-gkehub/system-test/fixtures/sample/src/index.js +++ b/packages/google-cloud-gkehub/system-test/fixtures/sample/src/index.js @@ -20,8 +20,7 @@ const gkehub = require('@google-cloud/gke-hub'); function main() { - const gkeHubMembershipServiceClient = - new gkehub.GkeHubMembershipServiceClient(); + const gkeHubClient = new gkehub.GkeHubClient(); } main(); diff --git a/packages/google-cloud-gkehub/system-test/fixtures/sample/src/index.ts b/packages/google-cloud-gkehub/system-test/fixtures/sample/src/index.ts index 62c72edf528..ec7054a6de6 100644 --- a/packages/google-cloud-gkehub/system-test/fixtures/sample/src/index.ts +++ b/packages/google-cloud-gkehub/system-test/fixtures/sample/src/index.ts @@ -16,19 +16,17 @@ // ** https://github.com/googleapis/gapic-generator-typescript ** // ** All changes to this file may be overwritten. ** -import {GkeHubMembershipServiceClient} from '@google-cloud/gke-hub'; +import {GkeHubClient} from '@google-cloud/gke-hub'; // check that the client class type name can be used -function doStuffWithGkeHubMembershipServiceClient( - client: GkeHubMembershipServiceClient -) { +function doStuffWithGkeHubClient(client: GkeHubClient) { client.close(); } function main() { // check that the client instance can be created - const gkeHubMembershipServiceClient = new GkeHubMembershipServiceClient(); - doStuffWithGkeHubMembershipServiceClient(gkeHubMembershipServiceClient); + const gkeHubClient = new GkeHubClient(); + doStuffWithGkeHubClient(gkeHubClient); } main(); diff --git a/packages/google-cloud-gkehub/webpack.config.js b/packages/google-cloud-gkehub/webpack.config.js index f0200b27d09..0314f3654e9 100644 --- a/packages/google-cloud-gkehub/webpack.config.js +++ b/packages/google-cloud-gkehub/webpack.config.js @@ -17,8 +17,8 @@ const path = require('path'); module.exports = { entry: './src/index.ts', output: { - library: 'GkeHubMembershipService', - filename: './gke-hub-membership-service.js', + library: 'GkeHub', + filename: './gke-hub.js', }, node: { child_process: 'empty', From e54f8b98bf9af1f81cfa270344472fa574e1708a Mon Sep 17 00:00:00 2001 From: "release-please[bot]" <55107282+release-please[bot]@users.noreply.github.com> Date: Tue, 30 Nov 2021 12:58:36 -0500 Subject: [PATCH 50/92] chore: release 2.0.0 (#107) Co-authored-by: release-please[bot] <55107282+release-please[bot]@users.noreply.github.com> --- packages/google-cloud-gkehub/CHANGELOG.md | 17 +++++++++++++++++ packages/google-cloud-gkehub/package.json | 2 +- .../google-cloud-gkehub/samples/package.json | 2 +- 3 files changed, 19 insertions(+), 2 deletions(-) diff --git a/packages/google-cloud-gkehub/CHANGELOG.md b/packages/google-cloud-gkehub/CHANGELOG.md index 55991e864f2..e3f4be7260b 100644 --- a/packages/google-cloud-gkehub/CHANGELOG.md +++ b/packages/google-cloud-gkehub/CHANGELOG.md @@ -1,5 +1,22 @@ # Changelog +## [2.0.0](https://www.github.com/googleapis/nodejs-gke-hub/compare/v1.4.0...v2.0.0) (2021-11-25) + + +### ⚠ BREAKING CHANGES + +* v1 of API renames GkeHubMembershipServiceClient to GkeHubClient +* make v1 the default version of the API (#88) + +### Features + +* make v1 the default version of the API ([#88](https://www.github.com/googleapis/nodejs-gke-hub/issues/88)) ([55702e6](https://www.github.com/googleapis/nodejs-gke-hub/commit/55702e66424430a442f1cc36ec4d766e8f677df3)) + + +### Code Refactoring + +* v1 of API renames GkeHubMembershipServiceClient to GkeHubClient ([55702e6](https://www.github.com/googleapis/nodejs-gke-hub/commit/55702e66424430a442f1cc36ec4d766e8f677df3)) + ## [1.4.0](https://www.github.com/googleapis/nodejs-gke-hub/compare/v1.3.0...v1.4.0) (2021-09-02) diff --git a/packages/google-cloud-gkehub/package.json b/packages/google-cloud-gkehub/package.json index 2c28ee5cc7e..9d16b0a70e8 100644 --- a/packages/google-cloud-gkehub/package.json +++ b/packages/google-cloud-gkehub/package.json @@ -1,6 +1,6 @@ { "name": "@google-cloud/gke-hub", - "version": "1.4.0", + "version": "2.0.0", "description": "Gkehub client for Node.js", "repository": "googleapis/nodejs-gke-hub", "license": "Apache-2.0", diff --git a/packages/google-cloud-gkehub/samples/package.json b/packages/google-cloud-gkehub/samples/package.json index b89db0e9ff4..d1a5a63ccb7 100644 --- a/packages/google-cloud-gkehub/samples/package.json +++ b/packages/google-cloud-gkehub/samples/package.json @@ -13,7 +13,7 @@ "test": "c8 mocha --timeout 600000 test/*.js" }, "dependencies": { - "@google-cloud/gke-hub": "^1.4.0" + "@google-cloud/gke-hub": "^2.0.0" }, "devDependencies": { "c8": "^7.1.0", From 8df522dc5985f9b2dae669801e8f35256454c004 Mon Sep 17 00:00:00 2001 From: "gcf-owl-bot[bot]" <78513119+gcf-owl-bot[bot]@users.noreply.github.com> Date: Fri, 10 Dec 2021 21:18:25 +0000 Subject: [PATCH 51/92] build: add generated samples to .eslintignore (#108) --- packages/google-cloud-gkehub/.eslintignore | 1 + 1 file changed, 1 insertion(+) diff --git a/packages/google-cloud-gkehub/.eslintignore b/packages/google-cloud-gkehub/.eslintignore index 9340ad9b86d..ea5b04aebe6 100644 --- a/packages/google-cloud-gkehub/.eslintignore +++ b/packages/google-cloud-gkehub/.eslintignore @@ -4,3 +4,4 @@ test/fixtures build/ docs/ protos/ +samples/generated/ From 2b199149d7d2aaefdff2ab06024a4662d4fd4597 Mon Sep 17 00:00:00 2001 From: "gcf-owl-bot[bot]" <78513119+gcf-owl-bot[bot]@users.noreply.github.com> Date: Wed, 29 Dec 2021 21:38:22 +0000 Subject: [PATCH 52/92] docs(node): support "stable"/"preview" release level (#1312) (#111) --- packages/google-cloud-gkehub/README.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/packages/google-cloud-gkehub/README.md b/packages/google-cloud-gkehub/README.md index 2c109e8f308..c0d02365520 100644 --- a/packages/google-cloud-gkehub/README.md +++ b/packages/google-cloud-gkehub/README.md @@ -130,6 +130,8 @@ are addressed with the highest priority. + + More Information: [Google Cloud Platform Launch Stages][launch_stages] [launch_stages]: https://cloud.google.com/terms/launch-stages From a4c850337f5f8c0116ec9dadb0a23eeffcffe9e5 Mon Sep 17 00:00:00 2001 From: Anthonios Partheniou Date: Thu, 30 Dec 2021 12:07:48 -0500 Subject: [PATCH 53/92] chore: add api_shortname and library_type to repo metadata (#110) --- packages/google-cloud-gkehub/.repo-metadata.json | 6 ++++-- packages/google-cloud-gkehub/README.md | 9 ++++----- 2 files changed, 8 insertions(+), 7 deletions(-) diff --git a/packages/google-cloud-gkehub/.repo-metadata.json b/packages/google-cloud-gkehub/.repo-metadata.json index a06c007f06c..31f820197cc 100644 --- a/packages/google-cloud-gkehub/.repo-metadata.json +++ b/packages/google-cloud-gkehub/.repo-metadata.json @@ -2,7 +2,7 @@ "client_documentation": "https://cloud.google.com/nodejs/docs/reference/gke-hub/latest", "api_id": "gkehub.googleapis.com", "distribution_name": "@google-cloud/gke-hub", - "release_level": "ga", + "release_level": "stable", "default_version": "v1", "language": "nodejs", "name_pretty": "GKE Hub", @@ -10,5 +10,7 @@ "product_documentation": "https://cloud.google.com/anthos/gke", "requires_billing": true, "name": "gke-hub", - "issue_tracker": "https://github.com/googleapis/nodejs-gke-hub/issues" + "issue_tracker": "https://github.com/googleapis/nodejs-gke-hub/issues", + "api_shortname": "gkehub", + "library_type": "GAPIC_AUTO" } diff --git a/packages/google-cloud-gkehub/README.md b/packages/google-cloud-gkehub/README.md index c0d02365520..7f8233820bc 100644 --- a/packages/google-cloud-gkehub/README.md +++ b/packages/google-cloud-gkehub/README.md @@ -4,7 +4,7 @@ # [GKE Hub: Node.js Client](https://github.com/googleapis/nodejs-gke-hub) -[![release level](https://img.shields.io/badge/release%20level-general%20availability%20%28GA%29-brightgreen.svg?style=flat)](https://cloud.google.com/terms/launch-stages) + [![npm version](https://img.shields.io/npm/v/@google-cloud/gke-hub.svg)](https://www.npmjs.org/package/@google-cloud/gke-hub) [![codecov](https://img.shields.io/codecov/c/github/googleapis/nodejs-gke-hub/main.svg?style=flat)](https://codecov.io/gh/googleapis/nodejs-gke-hub) @@ -120,10 +120,10 @@ _Legacy Node.js versions are supported as a best effort:_ This library follows [Semantic Versioning](http://semver.org/). -This library is considered to be **General Availability (GA)**. This means it -is stable; the code surface will not change in backwards-incompatible ways + +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 **GA** libraries +an extensive deprecation period. Issues and requests against **stable** libraries are addressed with the highest priority. @@ -131,7 +131,6 @@ are addressed with the highest priority. - More Information: [Google Cloud Platform Launch Stages][launch_stages] [launch_stages]: https://cloud.google.com/terms/launch-stages From 73cf2aff54500342151dda86382d1570917918f9 Mon Sep 17 00:00:00 2001 From: "gcf-owl-bot[bot]" <78513119+gcf-owl-bot[bot]@users.noreply.github.com> Date: Tue, 11 Jan 2022 17:22:17 +0000 Subject: [PATCH 54/92] test(nodejs): remove 15 add 16 (#1322) (#115) --- packages/google-cloud-gkehub/README.md | 3 +-- packages/google-cloud-gkehub/protos/protos.d.ts | 2 +- packages/google-cloud-gkehub/protos/protos.js | 2 +- 3 files changed, 3 insertions(+), 4 deletions(-) diff --git a/packages/google-cloud-gkehub/README.md b/packages/google-cloud-gkehub/README.md index 7f8233820bc..7ba0f991843 100644 --- a/packages/google-cloud-gkehub/README.md +++ b/packages/google-cloud-gkehub/README.md @@ -4,9 +4,8 @@ # [GKE Hub: Node.js Client](https://github.com/googleapis/nodejs-gke-hub) - +[![release level](https://img.shields.io/badge/release%20level-stable-brightgreen.svg?style=flat)](https://cloud.google.com/terms/launch-stages) [![npm version](https://img.shields.io/npm/v/@google-cloud/gke-hub.svg)](https://www.npmjs.org/package/@google-cloud/gke-hub) -[![codecov](https://img.shields.io/codecov/c/github/googleapis/nodejs-gke-hub/main.svg?style=flat)](https://codecov.io/gh/googleapis/nodejs-gke-hub) diff --git a/packages/google-cloud-gkehub/protos/protos.d.ts b/packages/google-cloud-gkehub/protos/protos.d.ts index fef95906f82..35efb910d31 100644 --- a/packages/google-cloud-gkehub/protos/protos.d.ts +++ b/packages/google-cloud-gkehub/protos/protos.d.ts @@ -1,4 +1,4 @@ -// Copyright 2021 Google LLC +// 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. diff --git a/packages/google-cloud-gkehub/protos/protos.js b/packages/google-cloud-gkehub/protos/protos.js index 4d53c80b82a..98e703010a5 100644 --- a/packages/google-cloud-gkehub/protos/protos.js +++ b/packages/google-cloud-gkehub/protos/protos.js @@ -1,4 +1,4 @@ -// Copyright 2021 Google LLC +// 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. From 8802a947dda3c9d9d87d7c489c5032b300d8809e Mon Sep 17 00:00:00 2001 From: "gcf-owl-bot[bot]" <78513119+gcf-owl-bot[bot]@users.noreply.github.com> Date: Thu, 20 Jan 2022 00:33:15 -0800 Subject: [PATCH 55/92] build: update copyright year to 2022 (#117) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * chore(deps): upgrade gapic-generator-java to 2.4.1 PiperOrigin-RevId: 422607515 Source-Link: https://github.com/googleapis/googleapis/commit/ba2ffd6fe6642e28b4fed2ffae217b4c5f084034 Source-Link: https://github.com/googleapis/googleapis-gen/commit/73ba4add239a619da567ffbd4e5730fdd6de04d3 Copy-Tag: eyJwIjoiLmdpdGh1Yi8uT3dsQm90LnlhbWwiLCJoIjoiNzNiYTRhZGQyMzlhNjE5ZGE1NjdmZmJkNGU1NzMwZmRkNmRlMDRkMyJ9 * 🦉 Updates from OwlBot See https://github.com/googleapis/repo-automation-bots/blob/main/packages/owl-bot/README.md Co-authored-by: Owl Bot --- packages/google-cloud-gkehub/.jsdoc.js | 4 ++-- .../samples/generated/v1/gke_hub.create_feature.js | 4 +++- .../samples/generated/v1/gke_hub.create_membership.js | 1 + .../samples/generated/v1/gke_hub.delete_feature.js | 4 +++- .../samples/generated/v1/gke_hub.delete_membership.js | 1 + .../generated/v1/gke_hub.generate_connect_manifest.js | 1 + .../samples/generated/v1/gke_hub.get_feature.js | 4 +++- .../samples/generated/v1/gke_hub.get_membership.js | 1 + .../samples/generated/v1/gke_hub.list_features.js | 6 ++++-- .../samples/generated/v1/gke_hub.list_memberships.js | 3 ++- .../samples/generated/v1/gke_hub.update_feature.js | 4 +++- .../samples/generated/v1/gke_hub.update_membership.js | 1 + .../samples/generated/v1alpha/gke_hub.create_feature.js | 4 +++- .../samples/generated/v1alpha/gke_hub.delete_feature.js | 4 +++- .../samples/generated/v1alpha/gke_hub.get_feature.js | 4 +++- .../samples/generated/v1alpha/gke_hub.list_features.js | 6 ++++-- .../samples/generated/v1alpha/gke_hub.update_feature.js | 4 +++- .../samples/generated/v1alpha2/gke_hub.create_membership.js | 1 + .../samples/generated/v1alpha2/gke_hub.delete_membership.js | 1 + .../generated/v1alpha2/gke_hub.generate_connect_manifest.js | 1 + .../samples/generated/v1alpha2/gke_hub.get_membership.js | 1 + .../samples/generated/v1alpha2/gke_hub.initialize_hub.js | 1 + .../samples/generated/v1alpha2/gke_hub.list_memberships.js | 3 ++- .../samples/generated/v1alpha2/gke_hub.update_membership.js | 1 + .../samples/generated/v1beta/gke_hub.create_feature.js | 4 +++- .../samples/generated/v1beta/gke_hub.delete_feature.js | 4 +++- .../samples/generated/v1beta/gke_hub.get_feature.js | 4 +++- .../samples/generated/v1beta/gke_hub.list_features.js | 6 ++++-- .../samples/generated/v1beta/gke_hub.update_feature.js | 4 +++- .../v1beta1/gke_hub_membership_service.create_membership.js | 4 ++-- .../v1beta1/gke_hub_membership_service.delete_membership.js | 4 ++-- .../gke_hub_membership_service.generate_connect_manifest.js | 4 ++-- ..._hub_membership_service.generate_exclusivity_manifest.js | 4 ++-- .../v1beta1/gke_hub_membership_service.get_membership.js | 4 ++-- .../v1beta1/gke_hub_membership_service.list_memberships.js | 6 +++--- .../v1beta1/gke_hub_membership_service.update_membership.js | 4 ++-- .../gke_hub_membership_service.validate_exclusivity.js | 4 ++-- packages/google-cloud-gkehub/src/v1/gke_hub_client.ts | 2 +- packages/google-cloud-gkehub/src/v1/index.ts | 2 +- packages/google-cloud-gkehub/src/v1alpha/gke_hub_client.ts | 2 +- packages/google-cloud-gkehub/src/v1alpha/index.ts | 2 +- packages/google-cloud-gkehub/src/v1alpha2/gke_hub_client.ts | 2 +- packages/google-cloud-gkehub/src/v1alpha2/index.ts | 2 +- packages/google-cloud-gkehub/src/v1beta/gke_hub_client.ts | 2 +- packages/google-cloud-gkehub/src/v1beta/index.ts | 2 +- .../src/v1beta1/gke_hub_membership_service_client.ts | 2 +- packages/google-cloud-gkehub/src/v1beta1/index.ts | 2 +- .../system-test/fixtures/sample/src/index.js | 2 +- .../system-test/fixtures/sample/src/index.ts | 2 +- packages/google-cloud-gkehub/system-test/install.ts | 2 +- .../test/gapic_gke_hub_membership_service_v1beta1.ts | 2 +- packages/google-cloud-gkehub/test/gapic_gke_hub_v1.ts | 2 +- packages/google-cloud-gkehub/test/gapic_gke_hub_v1alpha.ts | 2 +- packages/google-cloud-gkehub/test/gapic_gke_hub_v1alpha2.ts | 2 +- packages/google-cloud-gkehub/test/gapic_gke_hub_v1beta.ts | 2 +- 55 files changed, 100 insertions(+), 57 deletions(-) diff --git a/packages/google-cloud-gkehub/.jsdoc.js b/packages/google-cloud-gkehub/.jsdoc.js index d1484d98112..e6d14b1daa9 100644 --- a/packages/google-cloud-gkehub/.jsdoc.js +++ b/packages/google-cloud-gkehub/.jsdoc.js @@ -1,4 +1,4 @@ -// Copyright 2021 Google LLC +// 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. @@ -40,7 +40,7 @@ module.exports = { includePattern: '\\.js$' }, templates: { - copyright: 'Copyright 2021 Google LLC', + copyright: 'Copyright 2022 Google LLC', includeDate: false, sourceFiles: false, systemName: '@google-cloud/gke-hub', diff --git a/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.create_feature.js b/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.create_feature.js index 403f22f915f..de7729a34d3 100644 --- a/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.create_feature.js +++ b/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.create_feature.js @@ -12,6 +12,7 @@ // See the License for the specific language governing permissions and // limitations under the License. + 'use strict'; function main() { @@ -55,7 +56,8 @@ function main() { async function callCreateFeature() { // Construct request - const request = {}; + const request = { + }; // Run request const [operation] = await gkehubClient.createFeature(request); diff --git a/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.create_membership.js b/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.create_membership.js index 63810b59c3d..a5f4b178eb1 100644 --- a/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.create_membership.js +++ b/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.create_membership.js @@ -12,6 +12,7 @@ // See the License for the specific language governing permissions and // limitations under the License. + 'use strict'; function main(parent, membershipId, resource) { diff --git a/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.delete_feature.js b/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.delete_feature.js index 6a54c146a57..33780c1b5b8 100644 --- a/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.delete_feature.js +++ b/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.delete_feature.js @@ -12,6 +12,7 @@ // See the License for the specific language governing permissions and // limitations under the License. + 'use strict'; function main() { @@ -53,7 +54,8 @@ function main() { async function callDeleteFeature() { // Construct request - const request = {}; + const request = { + }; // Run request const [operation] = await gkehubClient.deleteFeature(request); diff --git a/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.delete_membership.js b/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.delete_membership.js index 2a16ecf15dd..bfb1b5ec138 100644 --- a/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.delete_membership.js +++ b/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.delete_membership.js @@ -12,6 +12,7 @@ // See the License for the specific language governing permissions and // limitations under the License. + 'use strict'; function main(name) { diff --git a/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.generate_connect_manifest.js b/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.generate_connect_manifest.js index bf11abbe4f9..231b46890d6 100644 --- a/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.generate_connect_manifest.js +++ b/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.generate_connect_manifest.js @@ -12,6 +12,7 @@ // See the License for the specific language governing permissions and // limitations under the License. + 'use strict'; function main(name) { diff --git a/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.get_feature.js b/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.get_feature.js index 26557f1e9f1..817ab7e36ba 100644 --- a/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.get_feature.js +++ b/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.get_feature.js @@ -12,6 +12,7 @@ // See the License for the specific language governing permissions and // limitations under the License. + 'use strict'; function main() { @@ -33,7 +34,8 @@ function main() { async function callGetFeature() { // Construct request - const request = {}; + const request = { + }; // Run request const response = await gkehubClient.getFeature(request); diff --git a/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.get_membership.js b/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.get_membership.js index 1d2b35f66b4..4d809bfe466 100644 --- a/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.get_membership.js +++ b/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.get_membership.js @@ -12,6 +12,7 @@ // See the License for the specific language governing permissions and // limitations under the License. + 'use strict'; function main(name) { diff --git a/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.list_features.js b/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.list_features.js index 2fd69d6dd11..2e74d1f7884 100644 --- a/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.list_features.js +++ b/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.list_features.js @@ -12,6 +12,7 @@ // See the License for the specific language governing permissions and // limitations under the License. + 'use strict'; function main() { @@ -62,12 +63,13 @@ function main() { async function callListFeatures() { // Construct request - const request = {}; + const request = { + }; // Run request const iterable = await gkehubClient.listFeaturesAsync(request); for await (const response of iterable) { - console.log(response); + console.log(response); } } diff --git a/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.list_memberships.js b/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.list_memberships.js index 59ecf6f062a..51fb880d43d 100644 --- a/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.list_memberships.js +++ b/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.list_memberships.js @@ -12,6 +12,7 @@ // See the License for the specific language governing permissions and // limitations under the License. + 'use strict'; function main(parent) { @@ -71,7 +72,7 @@ function main(parent) { // Run request const iterable = await gkehubClient.listMembershipsAsync(request); for await (const response of iterable) { - console.log(response); + console.log(response); } } diff --git a/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.update_feature.js b/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.update_feature.js index 9fc70a6c47a..90223ecbb97 100644 --- a/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.update_feature.js +++ b/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.update_feature.js @@ -12,6 +12,7 @@ // See the License for the specific language governing permissions and // limitations under the License. + 'use strict'; function main() { @@ -62,7 +63,8 @@ function main() { async function callUpdateFeature() { // Construct request - const request = {}; + const request = { + }; // Run request const [operation] = await gkehubClient.updateFeature(request); diff --git a/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.update_membership.js b/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.update_membership.js index 4366c01d3dc..299fbab11ad 100644 --- a/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.update_membership.js +++ b/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.update_membership.js @@ -12,6 +12,7 @@ // See the License for the specific language governing permissions and // limitations under the License. + 'use strict'; function main(name, updateMask, resource) { diff --git a/packages/google-cloud-gkehub/samples/generated/v1alpha/gke_hub.create_feature.js b/packages/google-cloud-gkehub/samples/generated/v1alpha/gke_hub.create_feature.js index 92be4d3b772..6a6779af692 100644 --- a/packages/google-cloud-gkehub/samples/generated/v1alpha/gke_hub.create_feature.js +++ b/packages/google-cloud-gkehub/samples/generated/v1alpha/gke_hub.create_feature.js @@ -12,6 +12,7 @@ // See the License for the specific language governing permissions and // limitations under the License. + 'use strict'; function main() { @@ -55,7 +56,8 @@ function main() { async function callCreateFeature() { // Construct request - const request = {}; + const request = { + }; // Run request const [operation] = await gkehubClient.createFeature(request); diff --git a/packages/google-cloud-gkehub/samples/generated/v1alpha/gke_hub.delete_feature.js b/packages/google-cloud-gkehub/samples/generated/v1alpha/gke_hub.delete_feature.js index 718a07d79fc..de220f037f4 100644 --- a/packages/google-cloud-gkehub/samples/generated/v1alpha/gke_hub.delete_feature.js +++ b/packages/google-cloud-gkehub/samples/generated/v1alpha/gke_hub.delete_feature.js @@ -12,6 +12,7 @@ // See the License for the specific language governing permissions and // limitations under the License. + 'use strict'; function main() { @@ -53,7 +54,8 @@ function main() { async function callDeleteFeature() { // Construct request - const request = {}; + const request = { + }; // Run request const [operation] = await gkehubClient.deleteFeature(request); diff --git a/packages/google-cloud-gkehub/samples/generated/v1alpha/gke_hub.get_feature.js b/packages/google-cloud-gkehub/samples/generated/v1alpha/gke_hub.get_feature.js index 66617f57cbc..a25221a69e3 100644 --- a/packages/google-cloud-gkehub/samples/generated/v1alpha/gke_hub.get_feature.js +++ b/packages/google-cloud-gkehub/samples/generated/v1alpha/gke_hub.get_feature.js @@ -12,6 +12,7 @@ // See the License for the specific language governing permissions and // limitations under the License. + 'use strict'; function main() { @@ -33,7 +34,8 @@ function main() { async function callGetFeature() { // Construct request - const request = {}; + const request = { + }; // Run request const response = await gkehubClient.getFeature(request); diff --git a/packages/google-cloud-gkehub/samples/generated/v1alpha/gke_hub.list_features.js b/packages/google-cloud-gkehub/samples/generated/v1alpha/gke_hub.list_features.js index 52adca1aa9c..7b98c50f498 100644 --- a/packages/google-cloud-gkehub/samples/generated/v1alpha/gke_hub.list_features.js +++ b/packages/google-cloud-gkehub/samples/generated/v1alpha/gke_hub.list_features.js @@ -12,6 +12,7 @@ // See the License for the specific language governing permissions and // limitations under the License. + 'use strict'; function main() { @@ -62,12 +63,13 @@ function main() { async function callListFeatures() { // Construct request - const request = {}; + const request = { + }; // Run request const iterable = await gkehubClient.listFeaturesAsync(request); for await (const response of iterable) { - console.log(response); + console.log(response); } } diff --git a/packages/google-cloud-gkehub/samples/generated/v1alpha/gke_hub.update_feature.js b/packages/google-cloud-gkehub/samples/generated/v1alpha/gke_hub.update_feature.js index dae3cdbfd55..3f73a40d553 100644 --- a/packages/google-cloud-gkehub/samples/generated/v1alpha/gke_hub.update_feature.js +++ b/packages/google-cloud-gkehub/samples/generated/v1alpha/gke_hub.update_feature.js @@ -12,6 +12,7 @@ // See the License for the specific language governing permissions and // limitations under the License. + 'use strict'; function main() { @@ -62,7 +63,8 @@ function main() { async function callUpdateFeature() { // Construct request - const request = {}; + const request = { + }; // Run request const [operation] = await gkehubClient.updateFeature(request); diff --git a/packages/google-cloud-gkehub/samples/generated/v1alpha2/gke_hub.create_membership.js b/packages/google-cloud-gkehub/samples/generated/v1alpha2/gke_hub.create_membership.js index 1ee9cb56419..bb0e330ef34 100644 --- a/packages/google-cloud-gkehub/samples/generated/v1alpha2/gke_hub.create_membership.js +++ b/packages/google-cloud-gkehub/samples/generated/v1alpha2/gke_hub.create_membership.js @@ -12,6 +12,7 @@ // See the License for the specific language governing permissions and // limitations under the License. + 'use strict'; function main(parent, membershipId, resource) { diff --git a/packages/google-cloud-gkehub/samples/generated/v1alpha2/gke_hub.delete_membership.js b/packages/google-cloud-gkehub/samples/generated/v1alpha2/gke_hub.delete_membership.js index 9b580ae6838..039e04b9aa0 100644 --- a/packages/google-cloud-gkehub/samples/generated/v1alpha2/gke_hub.delete_membership.js +++ b/packages/google-cloud-gkehub/samples/generated/v1alpha2/gke_hub.delete_membership.js @@ -12,6 +12,7 @@ // See the License for the specific language governing permissions and // limitations under the License. + 'use strict'; function main(name) { diff --git a/packages/google-cloud-gkehub/samples/generated/v1alpha2/gke_hub.generate_connect_manifest.js b/packages/google-cloud-gkehub/samples/generated/v1alpha2/gke_hub.generate_connect_manifest.js index e6b6823b292..d4a6f4be3f8 100644 --- a/packages/google-cloud-gkehub/samples/generated/v1alpha2/gke_hub.generate_connect_manifest.js +++ b/packages/google-cloud-gkehub/samples/generated/v1alpha2/gke_hub.generate_connect_manifest.js @@ -12,6 +12,7 @@ // See the License for the specific language governing permissions and // limitations under the License. + 'use strict'; function main(name) { diff --git a/packages/google-cloud-gkehub/samples/generated/v1alpha2/gke_hub.get_membership.js b/packages/google-cloud-gkehub/samples/generated/v1alpha2/gke_hub.get_membership.js index 013f6f230c6..bb75164d904 100644 --- a/packages/google-cloud-gkehub/samples/generated/v1alpha2/gke_hub.get_membership.js +++ b/packages/google-cloud-gkehub/samples/generated/v1alpha2/gke_hub.get_membership.js @@ -12,6 +12,7 @@ // See the License for the specific language governing permissions and // limitations under the License. + 'use strict'; function main(name) { diff --git a/packages/google-cloud-gkehub/samples/generated/v1alpha2/gke_hub.initialize_hub.js b/packages/google-cloud-gkehub/samples/generated/v1alpha2/gke_hub.initialize_hub.js index 01f9ef7c8bb..62504e9f70a 100644 --- a/packages/google-cloud-gkehub/samples/generated/v1alpha2/gke_hub.initialize_hub.js +++ b/packages/google-cloud-gkehub/samples/generated/v1alpha2/gke_hub.initialize_hub.js @@ -12,6 +12,7 @@ // See the License for the specific language governing permissions and // limitations under the License. + 'use strict'; function main(project) { diff --git a/packages/google-cloud-gkehub/samples/generated/v1alpha2/gke_hub.list_memberships.js b/packages/google-cloud-gkehub/samples/generated/v1alpha2/gke_hub.list_memberships.js index eea696aca93..6fe475b730d 100644 --- a/packages/google-cloud-gkehub/samples/generated/v1alpha2/gke_hub.list_memberships.js +++ b/packages/google-cloud-gkehub/samples/generated/v1alpha2/gke_hub.list_memberships.js @@ -12,6 +12,7 @@ // See the License for the specific language governing permissions and // limitations under the License. + 'use strict'; function main(parent) { @@ -71,7 +72,7 @@ function main(parent) { // Run request const iterable = await gkehubClient.listMembershipsAsync(request); for await (const response of iterable) { - console.log(response); + console.log(response); } } diff --git a/packages/google-cloud-gkehub/samples/generated/v1alpha2/gke_hub.update_membership.js b/packages/google-cloud-gkehub/samples/generated/v1alpha2/gke_hub.update_membership.js index cbd399ab3e1..6d3e5a2b908 100644 --- a/packages/google-cloud-gkehub/samples/generated/v1alpha2/gke_hub.update_membership.js +++ b/packages/google-cloud-gkehub/samples/generated/v1alpha2/gke_hub.update_membership.js @@ -12,6 +12,7 @@ // See the License for the specific language governing permissions and // limitations under the License. + 'use strict'; function main(name, updateMask, resource) { diff --git a/packages/google-cloud-gkehub/samples/generated/v1beta/gke_hub.create_feature.js b/packages/google-cloud-gkehub/samples/generated/v1beta/gke_hub.create_feature.js index b730f0ab860..08b469a739b 100644 --- a/packages/google-cloud-gkehub/samples/generated/v1beta/gke_hub.create_feature.js +++ b/packages/google-cloud-gkehub/samples/generated/v1beta/gke_hub.create_feature.js @@ -12,6 +12,7 @@ // See the License for the specific language governing permissions and // limitations under the License. + 'use strict'; function main() { @@ -55,7 +56,8 @@ function main() { async function callCreateFeature() { // Construct request - const request = {}; + const request = { + }; // Run request const [operation] = await gkehubClient.createFeature(request); diff --git a/packages/google-cloud-gkehub/samples/generated/v1beta/gke_hub.delete_feature.js b/packages/google-cloud-gkehub/samples/generated/v1beta/gke_hub.delete_feature.js index a96fba3b3b1..03e5fa86426 100644 --- a/packages/google-cloud-gkehub/samples/generated/v1beta/gke_hub.delete_feature.js +++ b/packages/google-cloud-gkehub/samples/generated/v1beta/gke_hub.delete_feature.js @@ -12,6 +12,7 @@ // See the License for the specific language governing permissions and // limitations under the License. + 'use strict'; function main() { @@ -53,7 +54,8 @@ function main() { async function callDeleteFeature() { // Construct request - const request = {}; + const request = { + }; // Run request const [operation] = await gkehubClient.deleteFeature(request); diff --git a/packages/google-cloud-gkehub/samples/generated/v1beta/gke_hub.get_feature.js b/packages/google-cloud-gkehub/samples/generated/v1beta/gke_hub.get_feature.js index ac59ca22b7f..10109ce67fa 100644 --- a/packages/google-cloud-gkehub/samples/generated/v1beta/gke_hub.get_feature.js +++ b/packages/google-cloud-gkehub/samples/generated/v1beta/gke_hub.get_feature.js @@ -12,6 +12,7 @@ // See the License for the specific language governing permissions and // limitations under the License. + 'use strict'; function main() { @@ -33,7 +34,8 @@ function main() { async function callGetFeature() { // Construct request - const request = {}; + const request = { + }; // Run request const response = await gkehubClient.getFeature(request); diff --git a/packages/google-cloud-gkehub/samples/generated/v1beta/gke_hub.list_features.js b/packages/google-cloud-gkehub/samples/generated/v1beta/gke_hub.list_features.js index 6a7e00969e2..0e9a346240a 100644 --- a/packages/google-cloud-gkehub/samples/generated/v1beta/gke_hub.list_features.js +++ b/packages/google-cloud-gkehub/samples/generated/v1beta/gke_hub.list_features.js @@ -12,6 +12,7 @@ // See the License for the specific language governing permissions and // limitations under the License. + 'use strict'; function main() { @@ -62,12 +63,13 @@ function main() { async function callListFeatures() { // Construct request - const request = {}; + const request = { + }; // Run request const iterable = await gkehubClient.listFeaturesAsync(request); for await (const response of iterable) { - console.log(response); + console.log(response); } } diff --git a/packages/google-cloud-gkehub/samples/generated/v1beta/gke_hub.update_feature.js b/packages/google-cloud-gkehub/samples/generated/v1beta/gke_hub.update_feature.js index e125bb771d9..81da6b8fd57 100644 --- a/packages/google-cloud-gkehub/samples/generated/v1beta/gke_hub.update_feature.js +++ b/packages/google-cloud-gkehub/samples/generated/v1beta/gke_hub.update_feature.js @@ -12,6 +12,7 @@ // See the License for the specific language governing permissions and // limitations under the License. + 'use strict'; function main() { @@ -62,7 +63,8 @@ function main() { async function callUpdateFeature() { // Construct request - const request = {}; + const request = { + }; // Run request const [operation] = await gkehubClient.updateFeature(request); diff --git a/packages/google-cloud-gkehub/samples/generated/v1beta1/gke_hub_membership_service.create_membership.js b/packages/google-cloud-gkehub/samples/generated/v1beta1/gke_hub_membership_service.create_membership.js index 909e73e4206..206ccd83a7c 100644 --- a/packages/google-cloud-gkehub/samples/generated/v1beta1/gke_hub_membership_service.create_membership.js +++ b/packages/google-cloud-gkehub/samples/generated/v1beta1/gke_hub_membership_service.create_membership.js @@ -12,6 +12,7 @@ // See the License for the specific language governing permissions and // limitations under the License. + 'use strict'; function main(parent, membershipId, resource) { @@ -54,8 +55,7 @@ function main(parent, membershipId, resource) { // const requestId = 'abc123' // Imports the Gkehub library - const {GkeHubMembershipServiceClient} = - require('@google-cloud/gke-hub').v1beta1; + const {GkeHubMembershipServiceClient} = require('@google-cloud/gke-hub').v1beta1; // Instantiates a client const gkehubClient = new GkeHubMembershipServiceClient(); diff --git a/packages/google-cloud-gkehub/samples/generated/v1beta1/gke_hub_membership_service.delete_membership.js b/packages/google-cloud-gkehub/samples/generated/v1beta1/gke_hub_membership_service.delete_membership.js index d80bb72dbc0..a65d0d95fa2 100644 --- a/packages/google-cloud-gkehub/samples/generated/v1beta1/gke_hub_membership_service.delete_membership.js +++ b/packages/google-cloud-gkehub/samples/generated/v1beta1/gke_hub_membership_service.delete_membership.js @@ -12,6 +12,7 @@ // See the License for the specific language governing permissions and // limitations under the License. + 'use strict'; function main(name) { @@ -40,8 +41,7 @@ function main(name) { // const requestId = 'abc123' // Imports the Gkehub library - const {GkeHubMembershipServiceClient} = - require('@google-cloud/gke-hub').v1beta1; + const {GkeHubMembershipServiceClient} = require('@google-cloud/gke-hub').v1beta1; // Instantiates a client const gkehubClient = new GkeHubMembershipServiceClient(); diff --git a/packages/google-cloud-gkehub/samples/generated/v1beta1/gke_hub_membership_service.generate_connect_manifest.js b/packages/google-cloud-gkehub/samples/generated/v1beta1/gke_hub_membership_service.generate_connect_manifest.js index 518d6304b4b..fd60c562be2 100644 --- a/packages/google-cloud-gkehub/samples/generated/v1beta1/gke_hub_membership_service.generate_connect_manifest.js +++ b/packages/google-cloud-gkehub/samples/generated/v1beta1/gke_hub_membership_service.generate_connect_manifest.js @@ -12,6 +12,7 @@ // See the License for the specific language governing permissions and // limitations under the License. + 'use strict'; function main(name) { @@ -48,8 +49,7 @@ function main(name) { // const imagePullSecretContent = 'Buffer.from('string')' // Imports the Gkehub library - const {GkeHubMembershipServiceClient} = - require('@google-cloud/gke-hub').v1beta1; + const {GkeHubMembershipServiceClient} = require('@google-cloud/gke-hub').v1beta1; // Instantiates a client const gkehubClient = new GkeHubMembershipServiceClient(); diff --git a/packages/google-cloud-gkehub/samples/generated/v1beta1/gke_hub_membership_service.generate_exclusivity_manifest.js b/packages/google-cloud-gkehub/samples/generated/v1beta1/gke_hub_membership_service.generate_exclusivity_manifest.js index cbc673dc193..90525ef2dca 100644 --- a/packages/google-cloud-gkehub/samples/generated/v1beta1/gke_hub_membership_service.generate_exclusivity_manifest.js +++ b/packages/google-cloud-gkehub/samples/generated/v1beta1/gke_hub_membership_service.generate_exclusivity_manifest.js @@ -12,6 +12,7 @@ // See the License for the specific language governing permissions and // limitations under the License. + 'use strict'; function main(name) { @@ -38,8 +39,7 @@ function main(name) { // const crManifest = 'abc123' // Imports the Gkehub library - const {GkeHubMembershipServiceClient} = - require('@google-cloud/gke-hub').v1beta1; + const {GkeHubMembershipServiceClient} = require('@google-cloud/gke-hub').v1beta1; // Instantiates a client const gkehubClient = new GkeHubMembershipServiceClient(); diff --git a/packages/google-cloud-gkehub/samples/generated/v1beta1/gke_hub_membership_service.get_membership.js b/packages/google-cloud-gkehub/samples/generated/v1beta1/gke_hub_membership_service.get_membership.js index daf2f0ae78b..42d3d71336b 100644 --- a/packages/google-cloud-gkehub/samples/generated/v1beta1/gke_hub_membership_service.get_membership.js +++ b/packages/google-cloud-gkehub/samples/generated/v1beta1/gke_hub_membership_service.get_membership.js @@ -12,6 +12,7 @@ // See the License for the specific language governing permissions and // limitations under the License. + 'use strict'; function main(name) { @@ -26,8 +27,7 @@ function main(name) { // const name = 'abc123' // Imports the Gkehub library - const {GkeHubMembershipServiceClient} = - require('@google-cloud/gke-hub').v1beta1; + const {GkeHubMembershipServiceClient} = require('@google-cloud/gke-hub').v1beta1; // Instantiates a client const gkehubClient = new GkeHubMembershipServiceClient(); diff --git a/packages/google-cloud-gkehub/samples/generated/v1beta1/gke_hub_membership_service.list_memberships.js b/packages/google-cloud-gkehub/samples/generated/v1beta1/gke_hub_membership_service.list_memberships.js index b5506e35402..083d2437ce1 100644 --- a/packages/google-cloud-gkehub/samples/generated/v1beta1/gke_hub_membership_service.list_memberships.js +++ b/packages/google-cloud-gkehub/samples/generated/v1beta1/gke_hub_membership_service.list_memberships.js @@ -12,6 +12,7 @@ // See the License for the specific language governing permissions and // limitations under the License. + 'use strict'; function main(parent) { @@ -57,8 +58,7 @@ function main(parent) { // const orderBy = 'abc123' // Imports the Gkehub library - const {GkeHubMembershipServiceClient} = - require('@google-cloud/gke-hub').v1beta1; + const {GkeHubMembershipServiceClient} = require('@google-cloud/gke-hub').v1beta1; // Instantiates a client const gkehubClient = new GkeHubMembershipServiceClient(); @@ -72,7 +72,7 @@ function main(parent) { // Run request const iterable = await gkehubClient.listMembershipsAsync(request); for await (const response of iterable) { - console.log(response); + console.log(response); } } diff --git a/packages/google-cloud-gkehub/samples/generated/v1beta1/gke_hub_membership_service.update_membership.js b/packages/google-cloud-gkehub/samples/generated/v1beta1/gke_hub_membership_service.update_membership.js index f221a650bdc..3fe8f96d5b6 100644 --- a/packages/google-cloud-gkehub/samples/generated/v1beta1/gke_hub_membership_service.update_membership.js +++ b/packages/google-cloud-gkehub/samples/generated/v1beta1/gke_hub_membership_service.update_membership.js @@ -12,6 +12,7 @@ // See the License for the specific language governing permissions and // limitations under the License. + 'use strict'; function main(name, updateMask, resource) { @@ -56,8 +57,7 @@ function main(name, updateMask, resource) { // const requestId = 'abc123' // Imports the Gkehub library - const {GkeHubMembershipServiceClient} = - require('@google-cloud/gke-hub').v1beta1; + const {GkeHubMembershipServiceClient} = require('@google-cloud/gke-hub').v1beta1; // Instantiates a client const gkehubClient = new GkeHubMembershipServiceClient(); diff --git a/packages/google-cloud-gkehub/samples/generated/v1beta1/gke_hub_membership_service.validate_exclusivity.js b/packages/google-cloud-gkehub/samples/generated/v1beta1/gke_hub_membership_service.validate_exclusivity.js index 8b2cf631da5..06ce481da8d 100644 --- a/packages/google-cloud-gkehub/samples/generated/v1beta1/gke_hub_membership_service.validate_exclusivity.js +++ b/packages/google-cloud-gkehub/samples/generated/v1beta1/gke_hub_membership_service.validate_exclusivity.js @@ -12,6 +12,7 @@ // See the License for the specific language governing permissions and // limitations under the License. + 'use strict'; function main(parent, intendedMembership) { @@ -36,8 +37,7 @@ function main(parent, intendedMembership) { // const intendedMembership = 'abc123' // Imports the Gkehub library - const {GkeHubMembershipServiceClient} = - require('@google-cloud/gke-hub').v1beta1; + const {GkeHubMembershipServiceClient} = require('@google-cloud/gke-hub').v1beta1; // Instantiates a client const gkehubClient = new GkeHubMembershipServiceClient(); diff --git a/packages/google-cloud-gkehub/src/v1/gke_hub_client.ts b/packages/google-cloud-gkehub/src/v1/gke_hub_client.ts index c28b44a3b47..11d423f0298 100644 --- a/packages/google-cloud-gkehub/src/v1/gke_hub_client.ts +++ b/packages/google-cloud-gkehub/src/v1/gke_hub_client.ts @@ -1,4 +1,4 @@ -// Copyright 2021 Google LLC +// 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. diff --git a/packages/google-cloud-gkehub/src/v1/index.ts b/packages/google-cloud-gkehub/src/v1/index.ts index 43cf74c6b34..093f1348ddc 100644 --- a/packages/google-cloud-gkehub/src/v1/index.ts +++ b/packages/google-cloud-gkehub/src/v1/index.ts @@ -1,4 +1,4 @@ -// Copyright 2021 Google LLC +// 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. diff --git a/packages/google-cloud-gkehub/src/v1alpha/gke_hub_client.ts b/packages/google-cloud-gkehub/src/v1alpha/gke_hub_client.ts index b04bdd4c28a..bd9686bfab4 100644 --- a/packages/google-cloud-gkehub/src/v1alpha/gke_hub_client.ts +++ b/packages/google-cloud-gkehub/src/v1alpha/gke_hub_client.ts @@ -1,4 +1,4 @@ -// Copyright 2021 Google LLC +// 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. diff --git a/packages/google-cloud-gkehub/src/v1alpha/index.ts b/packages/google-cloud-gkehub/src/v1alpha/index.ts index 43cf74c6b34..093f1348ddc 100644 --- a/packages/google-cloud-gkehub/src/v1alpha/index.ts +++ b/packages/google-cloud-gkehub/src/v1alpha/index.ts @@ -1,4 +1,4 @@ -// Copyright 2021 Google LLC +// 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. diff --git a/packages/google-cloud-gkehub/src/v1alpha2/gke_hub_client.ts b/packages/google-cloud-gkehub/src/v1alpha2/gke_hub_client.ts index e84baf9376f..e254a84a9b3 100644 --- a/packages/google-cloud-gkehub/src/v1alpha2/gke_hub_client.ts +++ b/packages/google-cloud-gkehub/src/v1alpha2/gke_hub_client.ts @@ -1,4 +1,4 @@ -// Copyright 2021 Google LLC +// 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. diff --git a/packages/google-cloud-gkehub/src/v1alpha2/index.ts b/packages/google-cloud-gkehub/src/v1alpha2/index.ts index 43cf74c6b34..093f1348ddc 100644 --- a/packages/google-cloud-gkehub/src/v1alpha2/index.ts +++ b/packages/google-cloud-gkehub/src/v1alpha2/index.ts @@ -1,4 +1,4 @@ -// Copyright 2021 Google LLC +// 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. diff --git a/packages/google-cloud-gkehub/src/v1beta/gke_hub_client.ts b/packages/google-cloud-gkehub/src/v1beta/gke_hub_client.ts index 383e1e6f738..b2da20f7d32 100644 --- a/packages/google-cloud-gkehub/src/v1beta/gke_hub_client.ts +++ b/packages/google-cloud-gkehub/src/v1beta/gke_hub_client.ts @@ -1,4 +1,4 @@ -// Copyright 2021 Google LLC +// 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. diff --git a/packages/google-cloud-gkehub/src/v1beta/index.ts b/packages/google-cloud-gkehub/src/v1beta/index.ts index 43cf74c6b34..093f1348ddc 100644 --- a/packages/google-cloud-gkehub/src/v1beta/index.ts +++ b/packages/google-cloud-gkehub/src/v1beta/index.ts @@ -1,4 +1,4 @@ -// Copyright 2021 Google LLC +// 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. diff --git a/packages/google-cloud-gkehub/src/v1beta1/gke_hub_membership_service_client.ts b/packages/google-cloud-gkehub/src/v1beta1/gke_hub_membership_service_client.ts index ab23e8b9938..d8b79be85fe 100644 --- a/packages/google-cloud-gkehub/src/v1beta1/gke_hub_membership_service_client.ts +++ b/packages/google-cloud-gkehub/src/v1beta1/gke_hub_membership_service_client.ts @@ -1,4 +1,4 @@ -// Copyright 2021 Google LLC +// 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. diff --git a/packages/google-cloud-gkehub/src/v1beta1/index.ts b/packages/google-cloud-gkehub/src/v1beta1/index.ts index f69e468ae74..c6d9696a94c 100644 --- a/packages/google-cloud-gkehub/src/v1beta1/index.ts +++ b/packages/google-cloud-gkehub/src/v1beta1/index.ts @@ -1,4 +1,4 @@ -// Copyright 2021 Google LLC +// 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. diff --git a/packages/google-cloud-gkehub/system-test/fixtures/sample/src/index.js b/packages/google-cloud-gkehub/system-test/fixtures/sample/src/index.js index a531fbb3c7e..bf0e9b56920 100644 --- a/packages/google-cloud-gkehub/system-test/fixtures/sample/src/index.js +++ b/packages/google-cloud-gkehub/system-test/fixtures/sample/src/index.js @@ -1,4 +1,4 @@ -// Copyright 2021 Google LLC +// 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. diff --git a/packages/google-cloud-gkehub/system-test/fixtures/sample/src/index.ts b/packages/google-cloud-gkehub/system-test/fixtures/sample/src/index.ts index ec7054a6de6..2059936abb4 100644 --- a/packages/google-cloud-gkehub/system-test/fixtures/sample/src/index.ts +++ b/packages/google-cloud-gkehub/system-test/fixtures/sample/src/index.ts @@ -1,4 +1,4 @@ -// Copyright 2021 Google LLC +// 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. diff --git a/packages/google-cloud-gkehub/system-test/install.ts b/packages/google-cloud-gkehub/system-test/install.ts index d2d61c0396f..6dd1eaadafa 100644 --- a/packages/google-cloud-gkehub/system-test/install.ts +++ b/packages/google-cloud-gkehub/system-test/install.ts @@ -1,4 +1,4 @@ -// Copyright 2021 Google LLC +// 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. diff --git a/packages/google-cloud-gkehub/test/gapic_gke_hub_membership_service_v1beta1.ts b/packages/google-cloud-gkehub/test/gapic_gke_hub_membership_service_v1beta1.ts index 13b202dbcbd..45f6e5f82c9 100644 --- a/packages/google-cloud-gkehub/test/gapic_gke_hub_membership_service_v1beta1.ts +++ b/packages/google-cloud-gkehub/test/gapic_gke_hub_membership_service_v1beta1.ts @@ -1,4 +1,4 @@ -// Copyright 2021 Google LLC +// 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. diff --git a/packages/google-cloud-gkehub/test/gapic_gke_hub_v1.ts b/packages/google-cloud-gkehub/test/gapic_gke_hub_v1.ts index 806ab7b252d..1da77b668c6 100644 --- a/packages/google-cloud-gkehub/test/gapic_gke_hub_v1.ts +++ b/packages/google-cloud-gkehub/test/gapic_gke_hub_v1.ts @@ -1,4 +1,4 @@ -// Copyright 2021 Google LLC +// 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. diff --git a/packages/google-cloud-gkehub/test/gapic_gke_hub_v1alpha.ts b/packages/google-cloud-gkehub/test/gapic_gke_hub_v1alpha.ts index bbfda8e9214..ed71ef3ce87 100644 --- a/packages/google-cloud-gkehub/test/gapic_gke_hub_v1alpha.ts +++ b/packages/google-cloud-gkehub/test/gapic_gke_hub_v1alpha.ts @@ -1,4 +1,4 @@ -// Copyright 2021 Google LLC +// 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. diff --git a/packages/google-cloud-gkehub/test/gapic_gke_hub_v1alpha2.ts b/packages/google-cloud-gkehub/test/gapic_gke_hub_v1alpha2.ts index 871d89e3a2a..6b27297a3b3 100644 --- a/packages/google-cloud-gkehub/test/gapic_gke_hub_v1alpha2.ts +++ b/packages/google-cloud-gkehub/test/gapic_gke_hub_v1alpha2.ts @@ -1,4 +1,4 @@ -// Copyright 2021 Google LLC +// 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. diff --git a/packages/google-cloud-gkehub/test/gapic_gke_hub_v1beta.ts b/packages/google-cloud-gkehub/test/gapic_gke_hub_v1beta.ts index 07c34d829fb..af0d1992d98 100644 --- a/packages/google-cloud-gkehub/test/gapic_gke_hub_v1beta.ts +++ b/packages/google-cloud-gkehub/test/gapic_gke_hub_v1beta.ts @@ -1,4 +1,4 @@ -// Copyright 2021 Google LLC +// 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. From 8b611b9d69db44b2057b64be35ff864301bae805 Mon Sep 17 00:00:00 2001 From: "gcf-owl-bot[bot]" <78513119+gcf-owl-bot[bot]@users.noreply.github.com> Date: Sat, 22 Jan 2022 22:25:38 -0800 Subject: [PATCH 56/92] feat: add `kubernetes_resource` field docs: update API annotation (#119) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * feat: add `kubernetes_resource` field docs: update API annotation PiperOrigin-RevId: 423151400 Source-Link: https://github.com/googleapis/googleapis/commit/6f4ad75da0ddb1255534624517c1d74540119d23 Source-Link: https://github.com/googleapis/googleapis-gen/commit/7d0abacb329defdcb47cb0f6b2335864349440ca Copy-Tag: eyJwIjoiLmdpdGh1Yi8uT3dsQm90LnlhbWwiLCJoIjoiN2QwYWJhY2IzMjlkZWZkY2I0N2NiMGY2YjIzMzU4NjQzNDk0NDBjYSJ9 * 🦉 Updates from OwlBot See https://github.com/googleapis/repo-automation-bots/blob/main/packages/owl-bot/README.md Co-authored-by: Owl Bot --- .../google/cloud/gkehub/v1/membership.proto | 83 +- .../google/cloud/gkehub/v1/service.proto | 59 +- .../google-cloud-gkehub/protos/protos.d.ts | 312 +++++++ packages/google-cloud-gkehub/protos/protos.js | 772 ++++++++++++++++++ .../google-cloud-gkehub/protos/protos.json | 119 ++- .../generated/v1/gke_hub.create_feature.js | 2 +- .../generated/v1/gke_hub.delete_feature.js | 2 +- .../generated/v1/gke_hub.get_feature.js | 2 +- .../generated/v1/gke_hub.list_features.js | 2 +- .../generated/v1/gke_hub.update_feature.js | 2 +- .../src/v1/gke_hub_client.ts | 18 +- 11 files changed, 1328 insertions(+), 45 deletions(-) diff --git a/packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1/membership.proto b/packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1/membership.proto index 6699c1f241f..6276098f2f4 100644 --- a/packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1/membership.proto +++ b/packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1/membership.proto @@ -16,10 +16,10 @@ syntax = "proto3"; package google.cloud.gkehub.v1; +import "google/api/annotations.proto"; import "google/api/field_behavior.proto"; import "google/api/resource.proto"; import "google/protobuf/timestamp.proto"; -import "google/api/annotations.proto"; option csharp_namespace = "Google.Cloud.GkeHub.V1"; option go_package = "google.golang.org/genproto/googleapis/cloud/gkehub/v1;gkehub"; @@ -110,13 +110,92 @@ message MembershipEndpoint { // Output only. Useful Kubernetes-specific metadata. KubernetesMetadata kubernetes_metadata = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Optional. The in-cluster Kubernetes Resources that should be applied for a correctly + // registered cluster, in the steady state. These resources: + // + // * Ensure that the cluster is exclusively registered to one and only one + // Hub Membership. + // * Propagate Workload Pool Information available in the Membership + // Authority field. + // * Ensure proper initial configuration of default Hub Features. + KubernetesResource kubernetes_resource = 3 [(google.api.field_behavior) = OPTIONAL]; +} + +// KubernetesResource contains the YAML manifests and configuration for +// Membership Kubernetes resources in the cluster. After CreateMembership or +// UpdateMembership, these resources should be re-applied in the cluster. +message KubernetesResource { + // Input only. The YAML representation of the Membership CR. This field is ignored for GKE + // clusters where Hub can read the CR directly. + // + // Callers should provide the CR that is currently present in the cluster + // during CreateMembership or UpdateMembership, or leave this field empty if + // none exists. The CR manifest is used to validate the cluster has not been + // registered with another Membership. + string membership_cr_manifest = 1 [(google.api.field_behavior) = INPUT_ONLY]; + + // Output only. Additional Kubernetes resources that need to be applied to the cluster + // after Membership creation, and after every update. + // + // This field is only populated in the Membership returned from a successful + // long-running operation from CreateMembership or UpdateMembership. It is not + // populated during normal GetMembership or ListMemberships requests. To get + // the resource manifest after the initial registration, the caller should + // make a UpdateMembership call with an empty field mask. + repeated ResourceManifest membership_resources = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The Kubernetes resources for installing the GKE Connect agent + // + // This field is only populated in the Membership returned from a successful + // long-running operation from CreateMembership or UpdateMembership. It is not + // populated during normal GetMembership or ListMemberships requests. To get + // the resource manifest after the initial registration, the caller should + // make a UpdateMembership call with an empty field mask. + repeated ResourceManifest connect_resources = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Optional. Options for Kubernetes resource generation. + ResourceOptions resource_options = 4 [(google.api.field_behavior) = OPTIONAL]; +} + +// ResourceOptions represent options for Kubernetes resource generation. +message ResourceOptions { + // Optional. The Connect agent version to use for connect_resources. Defaults to the + // latest GKE Connect version. The version must be a currently supported + // version, obsolete versions will be rejected. + string connect_version = 1 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. Use `apiextensions/v1beta1` instead of `apiextensions/v1` for + // CustomResourceDefinition resources. + // This option should be set for clusters with Kubernetes apiserver versions + // <1.16. + bool v1beta1_crd = 2 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. Major version of the Kubernetes cluster. This is only used to determine + // which version to use for the CustomResourceDefinition resources, + // `apiextensions/v1beta1` or`apiextensions/v1`. + string k8s_version = 3 [(google.api.field_behavior) = OPTIONAL]; +} + +// ResourceManifest represents a single Kubernetes resource to be applied to +// the cluster. +message ResourceManifest { + // YAML manifest of the resource. + string manifest = 1; + + // Whether the resource provided in the manifest is `cluster_scoped`. + // If unset, the manifest is assumed to be namespace scoped. + // + // This field is used for REST mapping when applying the resource in a + // cluster. + bool cluster_scoped = 2; } // GkeCluster contains information specific to GKE clusters. message GkeCluster { // Immutable. Self-link of the GCP resource for the GKE cluster. For example: // - // //container.googleapis.com/projects/my-project/locations/us-west1-a/clusters/my-cluster + // //container.googleapis.com/projects/my-project/locations/us-west1-a/clusters/my-cluster // // Zonal clusters are also supported. string resource_link = 1 [(google.api.field_behavior) = IMMUTABLE]; diff --git a/packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1/service.proto b/packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1/service.proto index 388829730ea..6caf805fbcc 100644 --- a/packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1/service.proto +++ b/packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1/service.proto @@ -23,6 +23,7 @@ import "google/api/resource.proto"; import "google/cloud/gkehub/v1/feature.proto"; import "google/cloud/gkehub/v1/membership.proto"; import "google/longrunning/operations.proto"; +import "google/protobuf/empty.proto"; import "google/protobuf/field_mask.proto"; import "google/protobuf/timestamp.proto"; @@ -325,7 +326,12 @@ message DeleteMembershipRequest { message UpdateMembershipRequest { // Required. The Membership resource name in the format // `projects/*/locations/*/memberships/*`. - string name = 1 [(google.api.field_behavior) = REQUIRED]; + string name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "gkehub.googleapis.com/Membership" + } + ]; // Required. Mask of fields to update. google.protobuf.FieldMask update_mask = 2 [(google.api.field_behavior) = REQUIRED]; @@ -362,7 +368,12 @@ message UpdateMembershipRequest { message GenerateConnectManifestRequest { // Required. The Membership resource name the Agent will associate with, in the format // `projects/*/locations/*/memberships/*`. - string name = 1 [(google.api.field_behavior) = REQUIRED]; + string name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "gkehub.googleapis.com/Membership" + } + ]; // Optional. Namespace for GKE Connect agent resources. Defaults to `gke-connect`. // @@ -423,9 +434,13 @@ message TypeMeta { // Request message for `GkeHub.ListFeatures` method. message ListFeaturesRequest { - // The parent (project and location) where the Features will be listed. + // Required. The parent (project and location) where the Features will be listed. // Specified in the format `projects/*/locations/*`. - string parent = 1; + string parent = 1 [ + (google.api.resource_reference) = { + child_type: "gkehub.googleapis.com/Feature" + } + ]; // When requesting a 'page' of resources, `page_size` specifies number of // resources to return. If unspecified or set to 0, all resources will @@ -473,16 +488,24 @@ message ListFeaturesResponse { // Request message for `GkeHub.GetFeature` method. message GetFeatureRequest { - // The Feature resource name in the format + // Required. The Feature resource name in the format // `projects/*/locations/*/features/*` - string name = 1; + string name = 1 [ + (google.api.resource_reference) = { + type: "gkehub.googleapis.com/Feature" + } + ]; } // Request message for the `GkeHub.CreateFeature` method. message CreateFeatureRequest { - // The parent (project and location) where the Feature will be created. + // Required. The parent (project and location) where the Feature will be created. // Specified in the format `projects/*/locations/*`. - string parent = 1; + string parent = 1 [ + (google.api.resource_reference) = { + child_type: "gkehub.googleapis.com/Feature" + } + ]; // The ID of the feature to create. string feature_id = 2; @@ -503,14 +526,18 @@ message CreateFeatureRequest { // // The request ID must be a valid UUID with the exception that zero UUID is // not supported (00000000-0000-0000-0000-000000000000). - string request_id = 4 [(google.api.field_behavior) = OPTIONAL]; + string request_id = 4; } // Request message for `GkeHub.DeleteFeature` method. message DeleteFeatureRequest { - // The Feature resource name in the format + // Required. The Feature resource name in the format // `projects/*/locations/*/features/*`. - string name = 1; + string name = 1 [ + (google.api.resource_reference) = { + type: "gkehub.googleapis.com/Feature" + } + ]; // If set to true, the delete will ignore any outstanding resources for // this Feature (that is, `FeatureState.has_resources` is set to true). These @@ -535,9 +562,13 @@ message DeleteFeatureRequest { // Request message for `GkeHub.UpdateFeature` method. message UpdateFeatureRequest { - // The Feature resource name in the format + // Required. The Feature resource name in the format // `projects/*/locations/*/features/*`. - string name = 1; + string name = 1 [ + (google.api.resource_reference) = { + type: "gkehub.googleapis.com/Feature" + } + ]; // Mask of fields to update. google.protobuf.FieldMask update_mask = 2; @@ -565,7 +596,7 @@ message UpdateFeatureRequest { // // The request ID must be a valid UUID with the exception that zero UUID is // not supported (00000000-0000-0000-0000-000000000000). - string request_id = 4 [(google.api.field_behavior) = OPTIONAL]; + string request_id = 4; } // Represents the metadata of the long-running operation. diff --git a/packages/google-cloud-gkehub/protos/protos.d.ts b/packages/google-cloud-gkehub/protos/protos.d.ts index 35efb910d31..244728262cf 100644 --- a/packages/google-cloud-gkehub/protos/protos.d.ts +++ b/packages/google-cloud-gkehub/protos/protos.d.ts @@ -12182,6 +12182,9 @@ export namespace google { /** MembershipEndpoint kubernetesMetadata */ kubernetesMetadata?: (google.cloud.gkehub.v1.IKubernetesMetadata|null); + + /** MembershipEndpoint kubernetesResource */ + kubernetesResource?: (google.cloud.gkehub.v1.IKubernetesResource|null); } /** Represents a MembershipEndpoint. */ @@ -12199,6 +12202,9 @@ export namespace google { /** MembershipEndpoint kubernetesMetadata. */ public kubernetesMetadata?: (google.cloud.gkehub.v1.IKubernetesMetadata|null); + /** MembershipEndpoint kubernetesResource. */ + public kubernetesResource?: (google.cloud.gkehub.v1.IKubernetesResource|null); + /** * Creates a new MembershipEndpoint instance using the specified properties. * @param [properties] Properties to set @@ -12270,6 +12276,312 @@ export namespace google { public toJSON(): { [k: string]: any }; } + /** Properties of a KubernetesResource. */ + interface IKubernetesResource { + + /** KubernetesResource membershipCrManifest */ + membershipCrManifest?: (string|null); + + /** KubernetesResource membershipResources */ + membershipResources?: (google.cloud.gkehub.v1.IResourceManifest[]|null); + + /** KubernetesResource connectResources */ + connectResources?: (google.cloud.gkehub.v1.IResourceManifest[]|null); + + /** KubernetesResource resourceOptions */ + resourceOptions?: (google.cloud.gkehub.v1.IResourceOptions|null); + } + + /** Represents a KubernetesResource. */ + class KubernetesResource implements IKubernetesResource { + + /** + * Constructs a new KubernetesResource. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.v1.IKubernetesResource); + + /** KubernetesResource membershipCrManifest. */ + public membershipCrManifest: string; + + /** KubernetesResource membershipResources. */ + public membershipResources: google.cloud.gkehub.v1.IResourceManifest[]; + + /** KubernetesResource connectResources. */ + public connectResources: google.cloud.gkehub.v1.IResourceManifest[]; + + /** KubernetesResource resourceOptions. */ + public resourceOptions?: (google.cloud.gkehub.v1.IResourceOptions|null); + + /** + * Creates a new KubernetesResource instance using the specified properties. + * @param [properties] Properties to set + * @returns KubernetesResource instance + */ + public static create(properties?: google.cloud.gkehub.v1.IKubernetesResource): google.cloud.gkehub.v1.KubernetesResource; + + /** + * Encodes the specified KubernetesResource message. Does not implicitly {@link google.cloud.gkehub.v1.KubernetesResource.verify|verify} messages. + * @param message KubernetesResource message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.v1.IKubernetesResource, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified KubernetesResource message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1.KubernetesResource.verify|verify} messages. + * @param message KubernetesResource message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.v1.IKubernetesResource, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a KubernetesResource message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns KubernetesResource + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.v1.KubernetesResource; + + /** + * Decodes a KubernetesResource message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns KubernetesResource + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.v1.KubernetesResource; + + /** + * Verifies a KubernetesResource message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a KubernetesResource message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns KubernetesResource + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.v1.KubernetesResource; + + /** + * Creates a plain object from a KubernetesResource message. Also converts values to other types if specified. + * @param message KubernetesResource + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.v1.KubernetesResource, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this KubernetesResource to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + + /** Properties of a ResourceOptions. */ + interface IResourceOptions { + + /** ResourceOptions connectVersion */ + connectVersion?: (string|null); + + /** ResourceOptions v1beta1Crd */ + v1beta1Crd?: (boolean|null); + + /** ResourceOptions k8sVersion */ + k8sVersion?: (string|null); + } + + /** Represents a ResourceOptions. */ + class ResourceOptions implements IResourceOptions { + + /** + * Constructs a new ResourceOptions. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.v1.IResourceOptions); + + /** ResourceOptions connectVersion. */ + public connectVersion: string; + + /** ResourceOptions v1beta1Crd. */ + public v1beta1Crd: boolean; + + /** ResourceOptions k8sVersion. */ + public k8sVersion: string; + + /** + * Creates a new ResourceOptions instance using the specified properties. + * @param [properties] Properties to set + * @returns ResourceOptions instance + */ + public static create(properties?: google.cloud.gkehub.v1.IResourceOptions): google.cloud.gkehub.v1.ResourceOptions; + + /** + * Encodes the specified ResourceOptions message. Does not implicitly {@link google.cloud.gkehub.v1.ResourceOptions.verify|verify} messages. + * @param message ResourceOptions message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.v1.IResourceOptions, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified ResourceOptions message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1.ResourceOptions.verify|verify} messages. + * @param message ResourceOptions message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.v1.IResourceOptions, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a ResourceOptions message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns ResourceOptions + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.v1.ResourceOptions; + + /** + * Decodes a ResourceOptions message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns ResourceOptions + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.v1.ResourceOptions; + + /** + * Verifies a ResourceOptions message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a ResourceOptions message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns ResourceOptions + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.v1.ResourceOptions; + + /** + * Creates a plain object from a ResourceOptions message. Also converts values to other types if specified. + * @param message ResourceOptions + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.v1.ResourceOptions, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this ResourceOptions to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + + /** Properties of a ResourceManifest. */ + interface IResourceManifest { + + /** ResourceManifest manifest */ + manifest?: (string|null); + + /** ResourceManifest clusterScoped */ + clusterScoped?: (boolean|null); + } + + /** Represents a ResourceManifest. */ + class ResourceManifest implements IResourceManifest { + + /** + * Constructs a new ResourceManifest. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.v1.IResourceManifest); + + /** ResourceManifest manifest. */ + public manifest: string; + + /** ResourceManifest clusterScoped. */ + public clusterScoped: boolean; + + /** + * Creates a new ResourceManifest instance using the specified properties. + * @param [properties] Properties to set + * @returns ResourceManifest instance + */ + public static create(properties?: google.cloud.gkehub.v1.IResourceManifest): google.cloud.gkehub.v1.ResourceManifest; + + /** + * Encodes the specified ResourceManifest message. Does not implicitly {@link google.cloud.gkehub.v1.ResourceManifest.verify|verify} messages. + * @param message ResourceManifest message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.v1.IResourceManifest, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified ResourceManifest message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1.ResourceManifest.verify|verify} messages. + * @param message ResourceManifest message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.v1.IResourceManifest, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a ResourceManifest message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns ResourceManifest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.v1.ResourceManifest; + + /** + * Decodes a ResourceManifest message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns ResourceManifest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.v1.ResourceManifest; + + /** + * Verifies a ResourceManifest message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a ResourceManifest message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns ResourceManifest + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.v1.ResourceManifest; + + /** + * Creates a plain object from a ResourceManifest message. Also converts values to other types if specified. + * @param message ResourceManifest + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.v1.ResourceManifest, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this ResourceManifest to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + /** Properties of a GkeCluster. */ interface IGkeCluster { diff --git a/packages/google-cloud-gkehub/protos/protos.js b/packages/google-cloud-gkehub/protos/protos.js index 98e703010a5..ff9ea3b3ab6 100644 --- a/packages/google-cloud-gkehub/protos/protos.js +++ b/packages/google-cloud-gkehub/protos/protos.js @@ -31699,6 +31699,7 @@ * @interface IMembershipEndpoint * @property {google.cloud.gkehub.v1.IGkeCluster|null} [gkeCluster] MembershipEndpoint gkeCluster * @property {google.cloud.gkehub.v1.IKubernetesMetadata|null} [kubernetesMetadata] MembershipEndpoint kubernetesMetadata + * @property {google.cloud.gkehub.v1.IKubernetesResource|null} [kubernetesResource] MembershipEndpoint kubernetesResource */ /** @@ -31732,6 +31733,14 @@ */ MembershipEndpoint.prototype.kubernetesMetadata = null; + /** + * MembershipEndpoint kubernetesResource. + * @member {google.cloud.gkehub.v1.IKubernetesResource|null|undefined} kubernetesResource + * @memberof google.cloud.gkehub.v1.MembershipEndpoint + * @instance + */ + MembershipEndpoint.prototype.kubernetesResource = null; + /** * Creates a new MembershipEndpoint instance using the specified properties. * @function create @@ -31760,6 +31769,8 @@ $root.google.cloud.gkehub.v1.GkeCluster.encode(message.gkeCluster, writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim(); if (message.kubernetesMetadata != null && Object.hasOwnProperty.call(message, "kubernetesMetadata")) $root.google.cloud.gkehub.v1.KubernetesMetadata.encode(message.kubernetesMetadata, writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim(); + if (message.kubernetesResource != null && Object.hasOwnProperty.call(message, "kubernetesResource")) + $root.google.cloud.gkehub.v1.KubernetesResource.encode(message.kubernetesResource, writer.uint32(/* id 3, wireType 2 =*/26).fork()).ldelim(); return writer; }; @@ -31800,6 +31811,9 @@ case 2: message.kubernetesMetadata = $root.google.cloud.gkehub.v1.KubernetesMetadata.decode(reader, reader.uint32()); break; + case 3: + message.kubernetesResource = $root.google.cloud.gkehub.v1.KubernetesResource.decode(reader, reader.uint32()); + break; default: reader.skipType(tag & 7); break; @@ -31845,6 +31859,11 @@ if (error) return "kubernetesMetadata." + error; } + if (message.kubernetesResource != null && message.hasOwnProperty("kubernetesResource")) { + var error = $root.google.cloud.gkehub.v1.KubernetesResource.verify(message.kubernetesResource); + if (error) + return "kubernetesResource." + error; + } return null; }; @@ -31870,6 +31889,11 @@ throw TypeError(".google.cloud.gkehub.v1.MembershipEndpoint.kubernetesMetadata: object expected"); message.kubernetesMetadata = $root.google.cloud.gkehub.v1.KubernetesMetadata.fromObject(object.kubernetesMetadata); } + if (object.kubernetesResource != null) { + if (typeof object.kubernetesResource !== "object") + throw TypeError(".google.cloud.gkehub.v1.MembershipEndpoint.kubernetesResource: object expected"); + message.kubernetesResource = $root.google.cloud.gkehub.v1.KubernetesResource.fromObject(object.kubernetesResource); + } return message; }; @@ -31889,11 +31913,14 @@ if (options.defaults) { object.gkeCluster = null; object.kubernetesMetadata = null; + object.kubernetesResource = null; } if (message.gkeCluster != null && message.hasOwnProperty("gkeCluster")) object.gkeCluster = $root.google.cloud.gkehub.v1.GkeCluster.toObject(message.gkeCluster, options); if (message.kubernetesMetadata != null && message.hasOwnProperty("kubernetesMetadata")) object.kubernetesMetadata = $root.google.cloud.gkehub.v1.KubernetesMetadata.toObject(message.kubernetesMetadata, options); + if (message.kubernetesResource != null && message.hasOwnProperty("kubernetesResource")) + object.kubernetesResource = $root.google.cloud.gkehub.v1.KubernetesResource.toObject(message.kubernetesResource, options); return object; }; @@ -31911,6 +31938,751 @@ return MembershipEndpoint; })(); + v1.KubernetesResource = (function() { + + /** + * Properties of a KubernetesResource. + * @memberof google.cloud.gkehub.v1 + * @interface IKubernetesResource + * @property {string|null} [membershipCrManifest] KubernetesResource membershipCrManifest + * @property {Array.|null} [membershipResources] KubernetesResource membershipResources + * @property {Array.|null} [connectResources] KubernetesResource connectResources + * @property {google.cloud.gkehub.v1.IResourceOptions|null} [resourceOptions] KubernetesResource resourceOptions + */ + + /** + * Constructs a new KubernetesResource. + * @memberof google.cloud.gkehub.v1 + * @classdesc Represents a KubernetesResource. + * @implements IKubernetesResource + * @constructor + * @param {google.cloud.gkehub.v1.IKubernetesResource=} [properties] Properties to set + */ + function KubernetesResource(properties) { + this.membershipResources = []; + this.connectResources = []; + 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]]; + } + + /** + * KubernetesResource membershipCrManifest. + * @member {string} membershipCrManifest + * @memberof google.cloud.gkehub.v1.KubernetesResource + * @instance + */ + KubernetesResource.prototype.membershipCrManifest = ""; + + /** + * KubernetesResource membershipResources. + * @member {Array.} membershipResources + * @memberof google.cloud.gkehub.v1.KubernetesResource + * @instance + */ + KubernetesResource.prototype.membershipResources = $util.emptyArray; + + /** + * KubernetesResource connectResources. + * @member {Array.} connectResources + * @memberof google.cloud.gkehub.v1.KubernetesResource + * @instance + */ + KubernetesResource.prototype.connectResources = $util.emptyArray; + + /** + * KubernetesResource resourceOptions. + * @member {google.cloud.gkehub.v1.IResourceOptions|null|undefined} resourceOptions + * @memberof google.cloud.gkehub.v1.KubernetesResource + * @instance + */ + KubernetesResource.prototype.resourceOptions = null; + + /** + * Creates a new KubernetesResource instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.v1.KubernetesResource + * @static + * @param {google.cloud.gkehub.v1.IKubernetesResource=} [properties] Properties to set + * @returns {google.cloud.gkehub.v1.KubernetesResource} KubernetesResource instance + */ + KubernetesResource.create = function create(properties) { + return new KubernetesResource(properties); + }; + + /** + * Encodes the specified KubernetesResource message. Does not implicitly {@link google.cloud.gkehub.v1.KubernetesResource.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.v1.KubernetesResource + * @static + * @param {google.cloud.gkehub.v1.IKubernetesResource} message KubernetesResource message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + KubernetesResource.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.membershipCrManifest != null && Object.hasOwnProperty.call(message, "membershipCrManifest")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.membershipCrManifest); + if (message.membershipResources != null && message.membershipResources.length) + for (var i = 0; i < message.membershipResources.length; ++i) + $root.google.cloud.gkehub.v1.ResourceManifest.encode(message.membershipResources[i], writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim(); + if (message.connectResources != null && message.connectResources.length) + for (var i = 0; i < message.connectResources.length; ++i) + $root.google.cloud.gkehub.v1.ResourceManifest.encode(message.connectResources[i], writer.uint32(/* id 3, wireType 2 =*/26).fork()).ldelim(); + if (message.resourceOptions != null && Object.hasOwnProperty.call(message, "resourceOptions")) + $root.google.cloud.gkehub.v1.ResourceOptions.encode(message.resourceOptions, writer.uint32(/* id 4, wireType 2 =*/34).fork()).ldelim(); + return writer; + }; + + /** + * Encodes the specified KubernetesResource message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1.KubernetesResource.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.v1.KubernetesResource + * @static + * @param {google.cloud.gkehub.v1.IKubernetesResource} message KubernetesResource message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + KubernetesResource.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a KubernetesResource message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.v1.KubernetesResource + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.v1.KubernetesResource} KubernetesResource + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + KubernetesResource.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.v1.KubernetesResource(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.membershipCrManifest = reader.string(); + break; + case 2: + if (!(message.membershipResources && message.membershipResources.length)) + message.membershipResources = []; + message.membershipResources.push($root.google.cloud.gkehub.v1.ResourceManifest.decode(reader, reader.uint32())); + break; + case 3: + if (!(message.connectResources && message.connectResources.length)) + message.connectResources = []; + message.connectResources.push($root.google.cloud.gkehub.v1.ResourceManifest.decode(reader, reader.uint32())); + break; + case 4: + message.resourceOptions = $root.google.cloud.gkehub.v1.ResourceOptions.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a KubernetesResource message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.v1.KubernetesResource + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.v1.KubernetesResource} KubernetesResource + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + KubernetesResource.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a KubernetesResource message. + * @function verify + * @memberof google.cloud.gkehub.v1.KubernetesResource + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + KubernetesResource.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.membershipCrManifest != null && message.hasOwnProperty("membershipCrManifest")) + if (!$util.isString(message.membershipCrManifest)) + return "membershipCrManifest: string expected"; + if (message.membershipResources != null && message.hasOwnProperty("membershipResources")) { + if (!Array.isArray(message.membershipResources)) + return "membershipResources: array expected"; + for (var i = 0; i < message.membershipResources.length; ++i) { + var error = $root.google.cloud.gkehub.v1.ResourceManifest.verify(message.membershipResources[i]); + if (error) + return "membershipResources." + error; + } + } + if (message.connectResources != null && message.hasOwnProperty("connectResources")) { + if (!Array.isArray(message.connectResources)) + return "connectResources: array expected"; + for (var i = 0; i < message.connectResources.length; ++i) { + var error = $root.google.cloud.gkehub.v1.ResourceManifest.verify(message.connectResources[i]); + if (error) + return "connectResources." + error; + } + } + if (message.resourceOptions != null && message.hasOwnProperty("resourceOptions")) { + var error = $root.google.cloud.gkehub.v1.ResourceOptions.verify(message.resourceOptions); + if (error) + return "resourceOptions." + error; + } + return null; + }; + + /** + * Creates a KubernetesResource message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.v1.KubernetesResource + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.v1.KubernetesResource} KubernetesResource + */ + KubernetesResource.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.v1.KubernetesResource) + return object; + var message = new $root.google.cloud.gkehub.v1.KubernetesResource(); + if (object.membershipCrManifest != null) + message.membershipCrManifest = String(object.membershipCrManifest); + if (object.membershipResources) { + if (!Array.isArray(object.membershipResources)) + throw TypeError(".google.cloud.gkehub.v1.KubernetesResource.membershipResources: array expected"); + message.membershipResources = []; + for (var i = 0; i < object.membershipResources.length; ++i) { + if (typeof object.membershipResources[i] !== "object") + throw TypeError(".google.cloud.gkehub.v1.KubernetesResource.membershipResources: object expected"); + message.membershipResources[i] = $root.google.cloud.gkehub.v1.ResourceManifest.fromObject(object.membershipResources[i]); + } + } + if (object.connectResources) { + if (!Array.isArray(object.connectResources)) + throw TypeError(".google.cloud.gkehub.v1.KubernetesResource.connectResources: array expected"); + message.connectResources = []; + for (var i = 0; i < object.connectResources.length; ++i) { + if (typeof object.connectResources[i] !== "object") + throw TypeError(".google.cloud.gkehub.v1.KubernetesResource.connectResources: object expected"); + message.connectResources[i] = $root.google.cloud.gkehub.v1.ResourceManifest.fromObject(object.connectResources[i]); + } + } + if (object.resourceOptions != null) { + if (typeof object.resourceOptions !== "object") + throw TypeError(".google.cloud.gkehub.v1.KubernetesResource.resourceOptions: object expected"); + message.resourceOptions = $root.google.cloud.gkehub.v1.ResourceOptions.fromObject(object.resourceOptions); + } + return message; + }; + + /** + * Creates a plain object from a KubernetesResource message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.v1.KubernetesResource + * @static + * @param {google.cloud.gkehub.v1.KubernetesResource} message KubernetesResource + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + KubernetesResource.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.arrays || options.defaults) { + object.membershipResources = []; + object.connectResources = []; + } + if (options.defaults) { + object.membershipCrManifest = ""; + object.resourceOptions = null; + } + if (message.membershipCrManifest != null && message.hasOwnProperty("membershipCrManifest")) + object.membershipCrManifest = message.membershipCrManifest; + if (message.membershipResources && message.membershipResources.length) { + object.membershipResources = []; + for (var j = 0; j < message.membershipResources.length; ++j) + object.membershipResources[j] = $root.google.cloud.gkehub.v1.ResourceManifest.toObject(message.membershipResources[j], options); + } + if (message.connectResources && message.connectResources.length) { + object.connectResources = []; + for (var j = 0; j < message.connectResources.length; ++j) + object.connectResources[j] = $root.google.cloud.gkehub.v1.ResourceManifest.toObject(message.connectResources[j], options); + } + if (message.resourceOptions != null && message.hasOwnProperty("resourceOptions")) + object.resourceOptions = $root.google.cloud.gkehub.v1.ResourceOptions.toObject(message.resourceOptions, options); + return object; + }; + + /** + * Converts this KubernetesResource to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.v1.KubernetesResource + * @instance + * @returns {Object.} JSON object + */ + KubernetesResource.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return KubernetesResource; + })(); + + v1.ResourceOptions = (function() { + + /** + * Properties of a ResourceOptions. + * @memberof google.cloud.gkehub.v1 + * @interface IResourceOptions + * @property {string|null} [connectVersion] ResourceOptions connectVersion + * @property {boolean|null} [v1beta1Crd] ResourceOptions v1beta1Crd + * @property {string|null} [k8sVersion] ResourceOptions k8sVersion + */ + + /** + * Constructs a new ResourceOptions. + * @memberof google.cloud.gkehub.v1 + * @classdesc Represents a ResourceOptions. + * @implements IResourceOptions + * @constructor + * @param {google.cloud.gkehub.v1.IResourceOptions=} [properties] Properties to set + */ + function ResourceOptions(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]]; + } + + /** + * ResourceOptions connectVersion. + * @member {string} connectVersion + * @memberof google.cloud.gkehub.v1.ResourceOptions + * @instance + */ + ResourceOptions.prototype.connectVersion = ""; + + /** + * ResourceOptions v1beta1Crd. + * @member {boolean} v1beta1Crd + * @memberof google.cloud.gkehub.v1.ResourceOptions + * @instance + */ + ResourceOptions.prototype.v1beta1Crd = false; + + /** + * ResourceOptions k8sVersion. + * @member {string} k8sVersion + * @memberof google.cloud.gkehub.v1.ResourceOptions + * @instance + */ + ResourceOptions.prototype.k8sVersion = ""; + + /** + * Creates a new ResourceOptions instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.v1.ResourceOptions + * @static + * @param {google.cloud.gkehub.v1.IResourceOptions=} [properties] Properties to set + * @returns {google.cloud.gkehub.v1.ResourceOptions} ResourceOptions instance + */ + ResourceOptions.create = function create(properties) { + return new ResourceOptions(properties); + }; + + /** + * Encodes the specified ResourceOptions message. Does not implicitly {@link google.cloud.gkehub.v1.ResourceOptions.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.v1.ResourceOptions + * @static + * @param {google.cloud.gkehub.v1.IResourceOptions} message ResourceOptions message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + ResourceOptions.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.connectVersion != null && Object.hasOwnProperty.call(message, "connectVersion")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.connectVersion); + if (message.v1beta1Crd != null && Object.hasOwnProperty.call(message, "v1beta1Crd")) + writer.uint32(/* id 2, wireType 0 =*/16).bool(message.v1beta1Crd); + if (message.k8sVersion != null && Object.hasOwnProperty.call(message, "k8sVersion")) + writer.uint32(/* id 3, wireType 2 =*/26).string(message.k8sVersion); + return writer; + }; + + /** + * Encodes the specified ResourceOptions message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1.ResourceOptions.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.v1.ResourceOptions + * @static + * @param {google.cloud.gkehub.v1.IResourceOptions} message ResourceOptions message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + ResourceOptions.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a ResourceOptions message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.v1.ResourceOptions + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.v1.ResourceOptions} ResourceOptions + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + ResourceOptions.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.v1.ResourceOptions(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.connectVersion = reader.string(); + break; + case 2: + message.v1beta1Crd = reader.bool(); + break; + case 3: + message.k8sVersion = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a ResourceOptions message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.v1.ResourceOptions + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.v1.ResourceOptions} ResourceOptions + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + ResourceOptions.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a ResourceOptions message. + * @function verify + * @memberof google.cloud.gkehub.v1.ResourceOptions + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + ResourceOptions.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.connectVersion != null && message.hasOwnProperty("connectVersion")) + if (!$util.isString(message.connectVersion)) + return "connectVersion: string expected"; + if (message.v1beta1Crd != null && message.hasOwnProperty("v1beta1Crd")) + if (typeof message.v1beta1Crd !== "boolean") + return "v1beta1Crd: boolean expected"; + if (message.k8sVersion != null && message.hasOwnProperty("k8sVersion")) + if (!$util.isString(message.k8sVersion)) + return "k8sVersion: string expected"; + return null; + }; + + /** + * Creates a ResourceOptions message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.v1.ResourceOptions + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.v1.ResourceOptions} ResourceOptions + */ + ResourceOptions.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.v1.ResourceOptions) + return object; + var message = new $root.google.cloud.gkehub.v1.ResourceOptions(); + if (object.connectVersion != null) + message.connectVersion = String(object.connectVersion); + if (object.v1beta1Crd != null) + message.v1beta1Crd = Boolean(object.v1beta1Crd); + if (object.k8sVersion != null) + message.k8sVersion = String(object.k8sVersion); + return message; + }; + + /** + * Creates a plain object from a ResourceOptions message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.v1.ResourceOptions + * @static + * @param {google.cloud.gkehub.v1.ResourceOptions} message ResourceOptions + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + ResourceOptions.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.connectVersion = ""; + object.v1beta1Crd = false; + object.k8sVersion = ""; + } + if (message.connectVersion != null && message.hasOwnProperty("connectVersion")) + object.connectVersion = message.connectVersion; + if (message.v1beta1Crd != null && message.hasOwnProperty("v1beta1Crd")) + object.v1beta1Crd = message.v1beta1Crd; + if (message.k8sVersion != null && message.hasOwnProperty("k8sVersion")) + object.k8sVersion = message.k8sVersion; + return object; + }; + + /** + * Converts this ResourceOptions to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.v1.ResourceOptions + * @instance + * @returns {Object.} JSON object + */ + ResourceOptions.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return ResourceOptions; + })(); + + v1.ResourceManifest = (function() { + + /** + * Properties of a ResourceManifest. + * @memberof google.cloud.gkehub.v1 + * @interface IResourceManifest + * @property {string|null} [manifest] ResourceManifest manifest + * @property {boolean|null} [clusterScoped] ResourceManifest clusterScoped + */ + + /** + * Constructs a new ResourceManifest. + * @memberof google.cloud.gkehub.v1 + * @classdesc Represents a ResourceManifest. + * @implements IResourceManifest + * @constructor + * @param {google.cloud.gkehub.v1.IResourceManifest=} [properties] Properties to set + */ + function ResourceManifest(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]]; + } + + /** + * ResourceManifest manifest. + * @member {string} manifest + * @memberof google.cloud.gkehub.v1.ResourceManifest + * @instance + */ + ResourceManifest.prototype.manifest = ""; + + /** + * ResourceManifest clusterScoped. + * @member {boolean} clusterScoped + * @memberof google.cloud.gkehub.v1.ResourceManifest + * @instance + */ + ResourceManifest.prototype.clusterScoped = false; + + /** + * Creates a new ResourceManifest instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.v1.ResourceManifest + * @static + * @param {google.cloud.gkehub.v1.IResourceManifest=} [properties] Properties to set + * @returns {google.cloud.gkehub.v1.ResourceManifest} ResourceManifest instance + */ + ResourceManifest.create = function create(properties) { + return new ResourceManifest(properties); + }; + + /** + * Encodes the specified ResourceManifest message. Does not implicitly {@link google.cloud.gkehub.v1.ResourceManifest.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.v1.ResourceManifest + * @static + * @param {google.cloud.gkehub.v1.IResourceManifest} message ResourceManifest message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + ResourceManifest.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.manifest != null && Object.hasOwnProperty.call(message, "manifest")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.manifest); + if (message.clusterScoped != null && Object.hasOwnProperty.call(message, "clusterScoped")) + writer.uint32(/* id 2, wireType 0 =*/16).bool(message.clusterScoped); + return writer; + }; + + /** + * Encodes the specified ResourceManifest message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1.ResourceManifest.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.v1.ResourceManifest + * @static + * @param {google.cloud.gkehub.v1.IResourceManifest} message ResourceManifest message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + ResourceManifest.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a ResourceManifest message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.v1.ResourceManifest + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.v1.ResourceManifest} ResourceManifest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + ResourceManifest.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.v1.ResourceManifest(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.manifest = reader.string(); + break; + case 2: + message.clusterScoped = reader.bool(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a ResourceManifest message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.v1.ResourceManifest + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.v1.ResourceManifest} ResourceManifest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + ResourceManifest.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a ResourceManifest message. + * @function verify + * @memberof google.cloud.gkehub.v1.ResourceManifest + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + ResourceManifest.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.manifest != null && message.hasOwnProperty("manifest")) + if (!$util.isString(message.manifest)) + return "manifest: string expected"; + if (message.clusterScoped != null && message.hasOwnProperty("clusterScoped")) + if (typeof message.clusterScoped !== "boolean") + return "clusterScoped: boolean expected"; + return null; + }; + + /** + * Creates a ResourceManifest message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.v1.ResourceManifest + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.v1.ResourceManifest} ResourceManifest + */ + ResourceManifest.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.v1.ResourceManifest) + return object; + var message = new $root.google.cloud.gkehub.v1.ResourceManifest(); + if (object.manifest != null) + message.manifest = String(object.manifest); + if (object.clusterScoped != null) + message.clusterScoped = Boolean(object.clusterScoped); + return message; + }; + + /** + * Creates a plain object from a ResourceManifest message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.v1.ResourceManifest + * @static + * @param {google.cloud.gkehub.v1.ResourceManifest} message ResourceManifest + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + ResourceManifest.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.manifest = ""; + object.clusterScoped = false; + } + if (message.manifest != null && message.hasOwnProperty("manifest")) + object.manifest = message.manifest; + if (message.clusterScoped != null && message.hasOwnProperty("clusterScoped")) + object.clusterScoped = message.clusterScoped; + return object; + }; + + /** + * Converts this ResourceManifest to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.v1.ResourceManifest + * @instance + * @returns {Object.} JSON object + */ + ResourceManifest.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return ResourceManifest; + })(); + v1.GkeCluster = (function() { /** diff --git a/packages/google-cloud-gkehub/protos/protos.json b/packages/google-cloud-gkehub/protos/protos.json index 5492bb8724e..f59f01177ad 100644 --- a/packages/google-cloud-gkehub/protos/protos.json +++ b/packages/google-cloud-gkehub/protos/protos.json @@ -2764,6 +2764,84 @@ "options": { "(google.api.field_behavior)": "OUTPUT_ONLY" } + }, + "kubernetesResource": { + "type": "KubernetesResource", + "id": 3, + "options": { + "(google.api.field_behavior)": "OPTIONAL" + } + } + } + }, + "KubernetesResource": { + "fields": { + "membershipCrManifest": { + "type": "string", + "id": 1, + "options": { + "(google.api.field_behavior)": "INPUT_ONLY" + } + }, + "membershipResources": { + "rule": "repeated", + "type": "ResourceManifest", + "id": 2, + "options": { + "(google.api.field_behavior)": "OUTPUT_ONLY" + } + }, + "connectResources": { + "rule": "repeated", + "type": "ResourceManifest", + "id": 3, + "options": { + "(google.api.field_behavior)": "OUTPUT_ONLY" + } + }, + "resourceOptions": { + "type": "ResourceOptions", + "id": 4, + "options": { + "(google.api.field_behavior)": "OPTIONAL" + } + } + } + }, + "ResourceOptions": { + "fields": { + "connectVersion": { + "type": "string", + "id": 1, + "options": { + "(google.api.field_behavior)": "OPTIONAL" + } + }, + "v1beta1Crd": { + "type": "bool", + "id": 2, + "options": { + "(google.api.field_behavior)": "OPTIONAL" + } + }, + "k8sVersion": { + "type": "string", + "id": 3, + "options": { + "(google.api.field_behavior)": "OPTIONAL" + } + } + } + }, + "ResourceManifest": { + "fields": { + "manifest": { + "type": "string", + "id": 1 + }, + "clusterScoped": { + "type": "bool", + "id": 2 } } }, @@ -3265,7 +3343,8 @@ "type": "string", "id": 1, "options": { - "(google.api.field_behavior)": "REQUIRED" + "(google.api.field_behavior)": "REQUIRED", + "(google.api.resource_reference).type": "gkehub.googleapis.com/Membership" } }, "updateMask": { @@ -3297,7 +3376,8 @@ "type": "string", "id": 1, "options": { - "(google.api.field_behavior)": "REQUIRED" + "(google.api.field_behavior)": "REQUIRED", + "(google.api.resource_reference).type": "gkehub.googleapis.com/Membership" } }, "namespace": { @@ -3381,7 +3461,10 @@ "fields": { "parent": { "type": "string", - "id": 1 + "id": 1, + "options": { + "(google.api.resource_reference).child_type": "gkehub.googleapis.com/Feature" + } }, "pageSize": { "type": "int32", @@ -3418,7 +3501,10 @@ "fields": { "name": { "type": "string", - "id": 1 + "id": 1, + "options": { + "(google.api.resource_reference).type": "gkehub.googleapis.com/Feature" + } } } }, @@ -3426,7 +3512,10 @@ "fields": { "parent": { "type": "string", - "id": 1 + "id": 1, + "options": { + "(google.api.resource_reference).child_type": "gkehub.googleapis.com/Feature" + } }, "featureId": { "type": "string", @@ -3438,10 +3527,7 @@ }, "requestId": { "type": "string", - "id": 4, - "options": { - "(google.api.field_behavior)": "OPTIONAL" - } + "id": 4 } } }, @@ -3449,7 +3535,10 @@ "fields": { "name": { "type": "string", - "id": 1 + "id": 1, + "options": { + "(google.api.resource_reference).type": "gkehub.googleapis.com/Feature" + } }, "force": { "type": "bool", @@ -3468,7 +3557,10 @@ "fields": { "name": { "type": "string", - "id": 1 + "id": 1, + "options": { + "(google.api.resource_reference).type": "gkehub.googleapis.com/Feature" + } }, "updateMask": { "type": "google.protobuf.FieldMask", @@ -3480,10 +3572,7 @@ }, "requestId": { "type": "string", - "id": 4, - "options": { - "(google.api.field_behavior)": "OPTIONAL" - } + "id": 4 } } }, diff --git a/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.create_feature.js b/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.create_feature.js index de7729a34d3..0f785dee320 100644 --- a/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.create_feature.js +++ b/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.create_feature.js @@ -21,7 +21,7 @@ function main() { * TODO(developer): Uncomment these variables before running the sample. */ /** - * The parent (project and location) where the Feature will be created. + * Required. The parent (project and location) where the Feature will be created. * Specified in the format `projects/* /locations/*`. */ // const parent = 'abc123' diff --git a/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.delete_feature.js b/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.delete_feature.js index 33780c1b5b8..b9ddb361e1f 100644 --- a/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.delete_feature.js +++ b/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.delete_feature.js @@ -21,7 +21,7 @@ function main() { * TODO(developer): Uncomment these variables before running the sample. */ /** - * The Feature resource name in the format + * Required. The Feature resource name in the format * `projects/* /locations/* /features/*`. */ // const name = 'abc123' diff --git a/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.get_feature.js b/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.get_feature.js index 817ab7e36ba..dbb73a5aa8c 100644 --- a/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.get_feature.js +++ b/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.get_feature.js @@ -21,7 +21,7 @@ function main() { * TODO(developer): Uncomment these variables before running the sample. */ /** - * The Feature resource name in the format + * Required. The Feature resource name in the format * `projects/* /locations/* /features/*` */ // const name = 'abc123' diff --git a/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.list_features.js b/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.list_features.js index 2e74d1f7884..f404d7722ee 100644 --- a/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.list_features.js +++ b/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.list_features.js @@ -21,7 +21,7 @@ function main() { * TODO(developer): Uncomment these variables before running the sample. */ /** - * The parent (project and location) where the Features will be listed. + * Required. The parent (project and location) where the Features will be listed. * Specified in the format `projects/* /locations/*`. */ // const parent = 'abc123' diff --git a/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.update_feature.js b/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.update_feature.js index 90223ecbb97..282c3d5c002 100644 --- a/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.update_feature.js +++ b/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.update_feature.js @@ -21,7 +21,7 @@ function main() { * TODO(developer): Uncomment these variables before running the sample. */ /** - * The Feature resource name in the format + * Required. The Feature resource name in the format * `projects/* /locations/* /features/*`. */ // const name = 'abc123' diff --git a/packages/google-cloud-gkehub/src/v1/gke_hub_client.ts b/packages/google-cloud-gkehub/src/v1/gke_hub_client.ts index 11d423f0298..a65276ecbd3 100644 --- a/packages/google-cloud-gkehub/src/v1/gke_hub_client.ts +++ b/packages/google-cloud-gkehub/src/v1/gke_hub_client.ts @@ -529,7 +529,7 @@ export class GkeHubClient { * @param {Object} request * The request object that will be sent. * @param {string} request.name - * The Feature resource name in the format + * Required. The Feature resource name in the format * `projects/* /locations/* /features/*` * @param {object} [options] * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. @@ -903,13 +903,13 @@ export class GkeHubClient { * @param {Object} request * The request object that will be sent. * @param {string} request.parent - * The parent (project and location) where the Feature will be created. + * Required. The parent (project and location) where the Feature will be created. * Specified in the format `projects/* /locations/*`. * @param {string} request.featureId * The ID of the feature to create. * @param {google.cloud.gkehub.v1.Feature} request.resource * The Feature resource to create. - * @param {string} [request.requestId] + * @param {string} request.requestId * Optional. A request ID to identify requests. Specify a unique request ID * so that if you must retry your request, the server will know to ignore * the request if it has already been completed. The server will guarantee @@ -1215,7 +1215,7 @@ export class GkeHubClient { * @param {Object} request * The request object that will be sent. * @param {string} request.name - * The Feature resource name in the format + * Required. The Feature resource name in the format * `projects/* /locations/* /features/*`. * @param {boolean} request.force * If set to true, the delete will ignore any outstanding resources for @@ -1534,7 +1534,7 @@ export class GkeHubClient { * @param {Object} request * The request object that will be sent. * @param {string} request.name - * The Feature resource name in the format + * Required. The Feature resource name in the format * `projects/* /locations/* /features/*`. * @param {google.protobuf.FieldMask} request.updateMask * Mask of fields to update. @@ -1547,7 +1547,7 @@ export class GkeHubClient { * value to the empty string. * If you specify the update_mask to be a special path "*", fully replaces all * user-modifiable fields to match `resource`. - * @param {string} [request.requestId] + * @param {string} request.requestId * Optional. A request ID to identify requests. Specify a unique request ID * so that if you must retry your request, the server will know to ignore * the request if it has already been completed. The server will guarantee @@ -1967,7 +1967,7 @@ export class GkeHubClient { * @param {Object} request * The request object that will be sent. * @param {string} request.parent - * The parent (project and location) where the Features will be listed. + * Required. The parent (project and location) where the Features will be listed. * Specified in the format `projects/* /locations/*`. * @param {number} request.pageSize * When requesting a 'page' of resources, `page_size` specifies number of @@ -2084,7 +2084,7 @@ export class GkeHubClient { * @param {Object} request * The request object that will be sent. * @param {string} request.parent - * The parent (project and location) where the Features will be listed. + * Required. The parent (project and location) where the Features will be listed. * Specified in the format `projects/* /locations/*`. * @param {number} request.pageSize * When requesting a 'page' of resources, `page_size` specifies number of @@ -2155,7 +2155,7 @@ export class GkeHubClient { * @param {Object} request * The request object that will be sent. * @param {string} request.parent - * The parent (project and location) where the Features will be listed. + * Required. The parent (project and location) where the Features will be listed. * Specified in the format `projects/* /locations/*`. * @param {number} request.pageSize * When requesting a 'page' of resources, `page_size` specifies number of From 0a6d7956bc89eeb41e3a32e11542817c20d632a9 Mon Sep 17 00:00:00 2001 From: "gcf-owl-bot[bot]" <78513119+gcf-owl-bot[bot]@users.noreply.github.com> Date: Wed, 26 Jan 2022 19:58:26 +0000 Subject: [PATCH 57/92] chore: update v2.12.0 gapic-generator-typescript (#121) - [ ] Regenerate this pull request now. Committer: @summer-ji-eng PiperOrigin-RevId: 424244721 Source-Link: https://github.com/googleapis/googleapis/commit/4b6b01f507ebc3df95fdf8e1d76b0ae0ae33e52c Source-Link: https://github.com/googleapis/googleapis-gen/commit/8ac83fba606d008c7e8a42e7d55b6596ec4be35f Copy-Tag: eyJwIjoiLmdpdGh1Yi8uT3dsQm90LnlhbWwiLCJoIjoiOGFjODNmYmE2MDZkMDA4YzdlOGE0MmU3ZDU1YjY1OTZlYzRiZTM1ZiJ9 --- packages/google-cloud-gkehub/linkinator.config.json | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/packages/google-cloud-gkehub/linkinator.config.json b/packages/google-cloud-gkehub/linkinator.config.json index 0121dfa684f..befd23c8633 100644 --- a/packages/google-cloud-gkehub/linkinator.config.json +++ b/packages/google-cloud-gkehub/linkinator.config.json @@ -3,8 +3,14 @@ "skip": [ "https://codecov.io/gh/googleapis/", "www.googleapis.com", - "img.shields.io" + "img.shields.io", + "https://console.cloud.google.com/cloudshell", + "https://support.google.com" ], "silent": true, - "concurrency": 5 + "concurrency": 5, + "retry": true, + "retryErrors": true, + "retryErrorsCount": 5, + "retryErrorsJitter": 3000 } From 5e2d6b5f9d4da7fcba4dd5446d681391b7f37398 Mon Sep 17 00:00:00 2001 From: WhiteSource Renovate Date: Wed, 2 Feb 2022 17:12:45 +0100 Subject: [PATCH 58/92] chore(deps): update dependency sinon to v13 (#124) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit [![WhiteSource Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com) This PR contains the following updates: | Package | Change | Age | Adoption | Passing | Confidence | |---|---|---|---|---|---| | [sinon](https://sinonjs.org/) ([source](https://togithub.com/sinonjs/sinon)) | [`^12.0.0` -> `^13.0.0`](https://renovatebot.com/diffs/npm/sinon/12.0.1/13.0.1) | [![age](https://badges.renovateapi.com/packages/npm/sinon/13.0.1/age-slim)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://badges.renovateapi.com/packages/npm/sinon/13.0.1/adoption-slim)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://badges.renovateapi.com/packages/npm/sinon/13.0.1/compatibility-slim/12.0.1)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://badges.renovateapi.com/packages/npm/sinon/13.0.1/confidence-slim/12.0.1)](https://docs.renovatebot.com/merge-confidence/) | --- ### Release Notes
sinonjs/sinon ### [`v13.0.1`](https://togithub.com/sinonjs/sinon/blob/HEAD/CHANGES.md#​1301) [Compare Source](https://togithub.com/sinonjs/sinon/compare/v13.0.0...v13.0.1) - [`ec4223f9`](https://togithub.com/sinonjs/sinon/commit/ec4223f94076d809483e3c6a7536cfc1278dd3c9) Bump nise to fix [sinonjs/nise#​193](https://togithub.com/sinonjs/nise/issues/193) (Carl-Erik Kopseng) - [`f329a010`](https://togithub.com/sinonjs/sinon/commit/f329a01040bfa5a79e039419220b21eda56935d6) Add unimported to workflow ([#​2441](https://togithub.com/sinonjs/sinon/issues/2441)) (Morgan Roderick) - [`7f16cec9`](https://togithub.com/sinonjs/sinon/commit/7f16cec968c3c8d4e580267fb00195916d6f827d) Enable updates to same major version (Carl-Erik Kopseng) - [`f784d7ad`](https://togithub.com/sinonjs/sinon/commit/f784d7ad2c86be0fc65477d69f8bdafca846ef2c) Re-introduce new version.sh script to version hook (Joel Bradshaw) > This was inadvertently removed during merge conflicts, and is required > for any of the new release process stuff to work - [`51c508ab`](https://togithub.com/sinonjs/sinon/commit/51c508ab77cf0f9fb8c5305ff626f6a2eada178f) Add dry run mode to `npm version` ([#​2436](https://togithub.com/sinonjs/sinon/issues/2436)) (Joel Bradshaw) > - Add DRY_RUN flag to skip publish/push > > - Allow overriding branch names for testing - [`05341dcf`](https://togithub.com/sinonjs/sinon/commit/05341dcf92ddca4a1d4c90966b1fcdc7039cff18) Update npm version scripts to manage new releases branch (Joel Bradshaw) - [`fe658261`](https://togithub.com/sinonjs/sinon/commit/fe65826171db69ed2986a1060db77944dbc98a6d) Remove release archives from master (Joel Bradshaw) > These archives made it difficult to find things in the GitHub interface, > and take up a lot of space in a checked-out repo for something that is > not useful to most people checking out the repository. > > The main purpose of these archives is to make old versions and > documentation available on the Sinon website that is run out of this > repo. This can be supported by using a separate branch for website > releases, and to maintain the archives. > > Following this commit, the `npm version` scripts will be updated to > automatically handle archiving the releases in the new releases branch > and keeping it up to date with master. > > Also remove the directories we removed from .prettierignore, since they > don't exist any more. *Released by [Carl-Erik Kopseng](https://togithub.com/fatso83) on 2022-02-01.* ### [`v13.0.0`](https://togithub.com/sinonjs/sinon/blob/HEAD/CHANGES.md#​1300) [Compare Source](https://togithub.com/sinonjs/sinon/compare/v12.0.1...v13.0.0) - [`cf3d6c0c`](https://togithub.com/sinonjs/sinon/commit/cf3d6c0cd9689c0ee673b3daa8bf9abd70304392) Upgrade packages ([#​2431](https://togithub.com/sinonjs/sinon/issues/2431)) (Carl-Erik Kopseng) > - Update all @​sinonjs/ packages > > - Upgrade to fake-timers 9 > > - chore: ensure always using latest LTS release - [`41710467`](https://togithub.com/sinonjs/sinon/commit/417104670d575e96a1b645ea40ce763afa76fb1b) Adjust deploy scripts to archive old releases in a separate branch, move existing releases out of master ([#​2426](https://togithub.com/sinonjs/sinon/issues/2426)) (Joel Bradshaw) > Co-authored-by: Carl-Erik Kopseng - [`c80a7266`](https://togithub.com/sinonjs/sinon/commit/c80a72660e89d88b08275eff1028ecb9e26fd8e9) Bump node-fetch from 2.6.1 to 2.6.7 ([#​2430](https://togithub.com/sinonjs/sinon/issues/2430)) (dependabot\[bot]) > Co-authored-by: dependabot\[bot] <49699333+dependabot\[bot][@​users](https://togithub.com/users).noreply.github.com> - [`a00f14a9`](https://togithub.com/sinonjs/sinon/commit/a00f14a97dbe8c65afa89674e16ad73fc7d2fdc0) Add explicit export for `./*` ([#​2413](https://togithub.com/sinonjs/sinon/issues/2413)) (なつき) - [`b82ca7ad`](https://togithub.com/sinonjs/sinon/commit/b82ca7ad9b1add59007771f65a18ee34415de8ca) Bump cached-path-relative from 1.0.2 to 1.1.0 ([#​2428](https://togithub.com/sinonjs/sinon/issues/2428)) (dependabot\[bot]) - [`a9ea1427`](https://togithub.com/sinonjs/sinon/commit/a9ea142716c094ef3c432ecc4089f8207b8dd8b6) Add documentation for assert.calledOnceWithMatch ([#​2424](https://togithub.com/sinonjs/sinon/issues/2424)) (Mathias Schreck) - [`1d5ab86b`](https://togithub.com/sinonjs/sinon/commit/1d5ab86ba60e50dd69593ffed2bffd4b8faa0d38) Be more general in stripping off stack frames to fix Firefox tests ([#​2425](https://togithub.com/sinonjs/sinon/issues/2425)) (Joel Bradshaw) - [`56b06129`](https://togithub.com/sinonjs/sinon/commit/56b06129e223eae690265c37b1113067e2b31bdc) Check call count type ([#​2410](https://togithub.com/sinonjs/sinon/issues/2410)) (Joel Bradshaw) - [`7863e2df`](https://togithub.com/sinonjs/sinon/commit/7863e2dfdbda79e0a32e42af09e6539fc2f2b80f) Fix [#​2414](https://togithub.com/sinonjs/sinon/issues/2414): make Sinon available on homepage (Carl-Erik Kopseng) - [`fabaabdd`](https://togithub.com/sinonjs/sinon/commit/fabaabdda82f39a7f5b75b55bd56cf77b1cd4a8f) Bump nokogiri from 1.11.4 to 1.13.1 ([#​2423](https://togithub.com/sinonjs/sinon/issues/2423)) (dependabot\[bot]) - [`dbc0fbd2`](https://togithub.com/sinonjs/sinon/commit/dbc0fbd263c8419fa47f9c3b20cf47890a242d21) Bump shelljs from 0.8.4 to 0.8.5 ([#​2422](https://togithub.com/sinonjs/sinon/issues/2422)) (dependabot\[bot]) - [`fb8b3d72`](https://togithub.com/sinonjs/sinon/commit/fb8b3d72a85dc8fb0547f859baf3f03a22a039f7) Run Prettier (Carl-Erik Kopseng) - [`12a45939`](https://togithub.com/sinonjs/sinon/commit/12a45939e9b047b6d3663fe55f2eb383ec63c4e1) Fix 2377: Throw error when trying to stub non-configurable or non-writable properties ([#​2417](https://togithub.com/sinonjs/sinon/issues/2417)) (Stuart Dotson) > Fixes issue [#​2377](https://togithub.com/sinonjs/sinon/issues/2377) by throwing an error when trying to stub non-configurable or non-writable properties *Released by [Carl-Erik Kopseng](https://togithub.com/fatso83) on 2022-01-28.*
--- ### Configuration 📅 **Schedule**: "after 9am and before 3pm" (UTC). 🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied. ♻ **Rebasing**: Whenever PR is behind base branch, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about this update again. --- - [ ] If you want to rebase/retry this PR, click this checkbox. --- This PR has been generated by [WhiteSource Renovate](https://renovate.whitesourcesoftware.com). View repository job log [here](https://app.renovatebot.com/dashboard#github/googleapis/nodejs-gke-hub). --- packages/google-cloud-gkehub/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/google-cloud-gkehub/package.json b/packages/google-cloud-gkehub/package.json index 9d16b0a70e8..d3cfde21a35 100644 --- a/packages/google-cloud-gkehub/package.json +++ b/packages/google-cloud-gkehub/package.json @@ -54,7 +54,7 @@ "mocha": "^8.2.1", "null-loader": "^4.0.1", "pack-n-play": "^1.0.0-2", - "sinon": "^12.0.0", + "sinon": "^13.0.0", "ts-loader": "^9.0.0", "typescript": "^4.1.2", "webpack": "^5.9.0", From 786153f36b5d11783a8d46fb9d134525d5f3ce71 Mon Sep 17 00:00:00 2001 From: "gcf-owl-bot[bot]" <78513119+gcf-owl-bot[bot]@users.noreply.github.com> Date: Thu, 3 Feb 2022 22:16:59 +0000 Subject: [PATCH 59/92] docs(nodejs): version support policy edits (#1346) (#126) --- packages/google-cloud-gkehub/README.md | 24 ++++++++++++------------ 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/packages/google-cloud-gkehub/README.md b/packages/google-cloud-gkehub/README.md index 7ba0f991843..60c4318be87 100644 --- a/packages/google-cloud-gkehub/README.md +++ b/packages/google-cloud-gkehub/README.md @@ -98,21 +98,21 @@ also contains samples. 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. -Client libraries targeting some end-of-life versions of Node.js are available, and -can be installed via npm [dist-tags](https://docs.npmjs.com/cli/dist-tag). -The dist-tags follow the naming convention `legacy-(version)`. - -_Legacy Node.js versions are supported as a best effort:_ +Google's client libraries support legacy versions of Node.js runtimes on a +best-efforts basis with the following warnings: -* Legacy versions will not be tested in continuous integration. -* Some security patches may not be able to be backported. -* Dependencies will not be kept up-to-date, and features will not be backported. +* Legacy versions are not tested in continuous integration. +* Some security patches and features cannot be backported. +* Dependencies cannot be kept up-to-date. -#### Legacy tags available - -* `legacy-8`: install client libraries from this dist-tag for versions - compatible with Node.js 8. +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/gke-hub@legacy-8` installs client libraries +for versions compatible with Node.js 8. ## Versioning From d72c1f163ef466c4dece10980180196c6eef05e6 Mon Sep 17 00:00:00 2001 From: "release-please[bot]" <55107282+release-please[bot]@users.noreply.github.com> Date: Tue, 8 Feb 2022 09:28:45 -0800 Subject: [PATCH 60/92] chore(main): release 2.1.0 (#120) Co-authored-by: release-please[bot] <55107282+release-please[bot]@users.noreply.github.com> --- packages/google-cloud-gkehub/CHANGELOG.md | 7 +++++++ packages/google-cloud-gkehub/package.json | 2 +- packages/google-cloud-gkehub/samples/package.json | 2 +- 3 files changed, 9 insertions(+), 2 deletions(-) diff --git a/packages/google-cloud-gkehub/CHANGELOG.md b/packages/google-cloud-gkehub/CHANGELOG.md index e3f4be7260b..02cb40f1ac5 100644 --- a/packages/google-cloud-gkehub/CHANGELOG.md +++ b/packages/google-cloud-gkehub/CHANGELOG.md @@ -1,5 +1,12 @@ # Changelog +## [2.1.0](https://github.com/googleapis/nodejs-gke-hub/compare/v2.0.0...v2.1.0) (2022-02-03) + + +### Features + +* add `kubernetes_resource` field docs: update API annotation ([#119](https://github.com/googleapis/nodejs-gke-hub/issues/119)) ([f8e5fba](https://github.com/googleapis/nodejs-gke-hub/commit/f8e5fba6ec3f51c1c23d793886a316385d6eeab9)) + ## [2.0.0](https://www.github.com/googleapis/nodejs-gke-hub/compare/v1.4.0...v2.0.0) (2021-11-25) diff --git a/packages/google-cloud-gkehub/package.json b/packages/google-cloud-gkehub/package.json index d3cfde21a35..8a797353256 100644 --- a/packages/google-cloud-gkehub/package.json +++ b/packages/google-cloud-gkehub/package.json @@ -1,6 +1,6 @@ { "name": "@google-cloud/gke-hub", - "version": "2.0.0", + "version": "2.1.0", "description": "Gkehub client for Node.js", "repository": "googleapis/nodejs-gke-hub", "license": "Apache-2.0", diff --git a/packages/google-cloud-gkehub/samples/package.json b/packages/google-cloud-gkehub/samples/package.json index d1a5a63ccb7..06d55422dd9 100644 --- a/packages/google-cloud-gkehub/samples/package.json +++ b/packages/google-cloud-gkehub/samples/package.json @@ -13,7 +13,7 @@ "test": "c8 mocha --timeout 600000 test/*.js" }, "dependencies": { - "@google-cloud/gke-hub": "^2.0.0" + "@google-cloud/gke-hub": "^2.1.0" }, "devDependencies": { "c8": "^7.1.0", From 6bb999833aa1af907d09efa513dabaadd23fe211 Mon Sep 17 00:00:00 2001 From: "gcf-owl-bot[bot]" <78513119+gcf-owl-bot[bot]@users.noreply.github.com> Date: Fri, 18 Feb 2022 02:04:55 +0000 Subject: [PATCH 61/92] docs(samples): include metadata file, add exclusions for samples to handwritten libraries (#127) - [ ] Regenerate this pull request now. PiperOrigin-RevId: 429395631 Source-Link: https://github.com/googleapis/googleapis/commit/84594b35af0c38efcd6967e8179d801702ad96ff Source-Link: https://github.com/googleapis/googleapis-gen/commit/ed74f970fd82914874e6b27b04763cfa66bafe9b Copy-Tag: eyJwIjoiLmdpdGh1Yi8uT3dsQm90LnlhbWwiLCJoIjoiZWQ3NGY5NzBmZDgyOTE0ODc0ZTZiMjdiMDQ3NjNjZmE2NmJhZmU5YiJ9 --- .../generated/v1/gke_hub.create_feature.js | 9 +- .../generated/v1/gke_hub.create_membership.js | 9 +- .../generated/v1/gke_hub.delete_feature.js | 9 +- .../generated/v1/gke_hub.delete_membership.js | 9 +- .../v1/gke_hub.generate_connect_manifest.js | 9 +- .../generated/v1/gke_hub.get_feature.js | 9 +- .../generated/v1/gke_hub.get_membership.js | 9 +- .../generated/v1/gke_hub.list_features.js | 9 +- .../generated/v1/gke_hub.list_memberships.js | 9 +- .../generated/v1/gke_hub.update_feature.js | 9 +- .../generated/v1/gke_hub.update_membership.js | 9 +- ...ippet_metadata.google.cloud.gkehub.v1.json | 571 ++++++++++++++++++ .../v1alpha/gke_hub.create_feature.js | 9 +- .../v1alpha/gke_hub.delete_feature.js | 9 +- .../generated/v1alpha/gke_hub.get_feature.js | 9 +- .../v1alpha/gke_hub.list_features.js | 9 +- .../v1alpha/gke_hub.update_feature.js | 9 +- ..._metadata.google.cloud.gkehub.v1alpha.json | 263 ++++++++ .../v1alpha2/gke_hub.create_membership.js | 9 +- .../v1alpha2/gke_hub.delete_membership.js | 9 +- .../gke_hub.generate_connect_manifest.js | 9 +- .../v1alpha2/gke_hub.get_membership.js | 9 +- .../v1alpha2/gke_hub.initialize_hub.js | 9 +- .../v1alpha2/gke_hub.list_memberships.js | 9 +- .../v1alpha2/gke_hub.update_membership.js | 9 +- ...metadata.google.cloud.gkehub.v1alpha2.json | 351 +++++++++++ .../v1beta/gke_hub.create_feature.js | 9 +- .../v1beta/gke_hub.delete_feature.js | 9 +- .../generated/v1beta/gke_hub.get_feature.js | 9 +- .../generated/v1beta/gke_hub.list_features.js | 9 +- .../v1beta/gke_hub.update_feature.js | 9 +- ...t_metadata.google.cloud.gkehub.v1beta.json | 263 ++++++++ ...ub_membership_service.create_membership.js | 9 +- ...ub_membership_service.delete_membership.js | 9 +- ...rship_service.generate_connect_manifest.js | 9 +- ...p_service.generate_exclusivity_manifest.js | 9 +- ...e_hub_membership_service.get_membership.js | 9 +- ...hub_membership_service.list_memberships.js | 9 +- ...ub_membership_service.update_membership.js | 9 +- ...membership_service.validate_exclusivity.js | 9 +- ..._metadata.google.cloud.gkehub.v1beta1.json | 415 +++++++++++++ .../src/v1/gke_hub_client.ts | 5 +- .../src/v1alpha/gke_hub_client.ts | 5 +- .../src/v1alpha2/gke_hub_client.ts | 5 +- .../src/v1beta/gke_hub_client.ts | 5 +- .../gke_hub_membership_service_client.ts | 5 +- ...apic_gke_hub_membership_service_v1beta1.ts | 102 +++- .../test/gapic_gke_hub_v1.ts | 70 ++- .../test/gapic_gke_hub_v1alpha.ts | 35 +- .../test/gapic_gke_hub_v1alpha2.ts | 70 ++- .../test/gapic_gke_hub_v1beta.ts | 35 +- 51 files changed, 2427 insertions(+), 97 deletions(-) create mode 100644 packages/google-cloud-gkehub/samples/generated/v1/snippet_metadata.google.cloud.gkehub.v1.json create mode 100644 packages/google-cloud-gkehub/samples/generated/v1alpha/snippet_metadata.google.cloud.gkehub.v1alpha.json create mode 100644 packages/google-cloud-gkehub/samples/generated/v1alpha2/snippet_metadata.google.cloud.gkehub.v1alpha2.json create mode 100644 packages/google-cloud-gkehub/samples/generated/v1beta/snippet_metadata.google.cloud.gkehub.v1beta.json create mode 100644 packages/google-cloud-gkehub/samples/generated/v1beta1/snippet_metadata.google.cloud.gkehub.v1beta1.json diff --git a/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.create_feature.js b/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.create_feature.js index 0f785dee320..9dd0017c1f5 100644 --- a/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.create_feature.js +++ b/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.create_feature.js @@ -1,16 +1,21 @@ -// Copyright 2021 Google LLC +// 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 +// 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'; diff --git a/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.create_membership.js b/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.create_membership.js index a5f4b178eb1..fd4f6714403 100644 --- a/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.create_membership.js +++ b/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.create_membership.js @@ -1,16 +1,21 @@ -// Copyright 2021 Google LLC +// 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 +// 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'; diff --git a/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.delete_feature.js b/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.delete_feature.js index b9ddb361e1f..96753fb2290 100644 --- a/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.delete_feature.js +++ b/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.delete_feature.js @@ -1,16 +1,21 @@ -// Copyright 2021 Google LLC +// 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 +// 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'; diff --git a/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.delete_membership.js b/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.delete_membership.js index bfb1b5ec138..0f748567a24 100644 --- a/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.delete_membership.js +++ b/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.delete_membership.js @@ -1,16 +1,21 @@ -// Copyright 2021 Google LLC +// 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 +// 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'; diff --git a/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.generate_connect_manifest.js b/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.generate_connect_manifest.js index 231b46890d6..6a51bd659f9 100644 --- a/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.generate_connect_manifest.js +++ b/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.generate_connect_manifest.js @@ -1,16 +1,21 @@ -// Copyright 2021 Google LLC +// 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 +// 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'; diff --git a/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.get_feature.js b/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.get_feature.js index dbb73a5aa8c..9ca8a65ed08 100644 --- a/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.get_feature.js +++ b/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.get_feature.js @@ -1,16 +1,21 @@ -// Copyright 2021 Google LLC +// 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 +// 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'; diff --git a/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.get_membership.js b/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.get_membership.js index 4d809bfe466..172929c7250 100644 --- a/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.get_membership.js +++ b/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.get_membership.js @@ -1,16 +1,21 @@ -// Copyright 2021 Google LLC +// 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 +// 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'; diff --git a/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.list_features.js b/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.list_features.js index f404d7722ee..1713b5b6163 100644 --- a/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.list_features.js +++ b/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.list_features.js @@ -1,16 +1,21 @@ -// Copyright 2021 Google LLC +// 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 +// 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'; diff --git a/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.list_memberships.js b/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.list_memberships.js index 51fb880d43d..b43c83a9045 100644 --- a/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.list_memberships.js +++ b/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.list_memberships.js @@ -1,16 +1,21 @@ -// Copyright 2021 Google LLC +// 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 +// 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'; diff --git a/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.update_feature.js b/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.update_feature.js index 282c3d5c002..846a901684c 100644 --- a/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.update_feature.js +++ b/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.update_feature.js @@ -1,16 +1,21 @@ -// Copyright 2021 Google LLC +// 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 +// 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'; diff --git a/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.update_membership.js b/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.update_membership.js index 299fbab11ad..1effa5a01ec 100644 --- a/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.update_membership.js +++ b/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.update_membership.js @@ -1,16 +1,21 @@ -// Copyright 2021 Google LLC +// 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 +// 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'; diff --git a/packages/google-cloud-gkehub/samples/generated/v1/snippet_metadata.google.cloud.gkehub.v1.json b/packages/google-cloud-gkehub/samples/generated/v1/snippet_metadata.google.cloud.gkehub.v1.json new file mode 100644 index 00000000000..df7a870b707 --- /dev/null +++ b/packages/google-cloud-gkehub/samples/generated/v1/snippet_metadata.google.cloud.gkehub.v1.json @@ -0,0 +1,571 @@ +{ + "clientLibrary": { + "name": "nodejs-gkehub", + "version": "0.1.0", + "language": "TYPESCRIPT", + "apis": [ + { + "id": "google.cloud.gkehub.v1", + "version": "v1" + } + ] + }, + "snippets": [ + { + "regionTag": "gkehub_v1_generated_GkeHub_ListMemberships_async", + "title": "GkeHub listMemberships Sample", + "origin": "API_DEFINITION", + "description": " Lists Memberships in a given project and location.", + "canonical": true, + "file": "gke_hub.list_memberships.js", + "language": "JAVASCRIPT", + "segments": [ + { + "start": 25, + "end": 84, + "type": "FULL" + } + ], + "clientMethod": { + "shortName": "ListMemberships", + "fullName": "google.cloud.gkehub.v1.GkeHub.ListMemberships", + "async": true, + "parameters": [ + { + "name": "parent", + "type": "TYPE_STRING" + }, + { + "name": "page_size", + "type": "TYPE_INT32" + }, + { + "name": "page_token", + "type": "TYPE_STRING" + }, + { + "name": "filter", + "type": "TYPE_STRING" + }, + { + "name": "order_by", + "type": "TYPE_STRING" + } + ], + "resultType": ".google.cloud.gkehub.v1.ListMembershipsResponse", + "client": { + "shortName": "GkeHubClient", + "fullName": "google.cloud.gkehub.v1.GkeHubClient" + }, + "method": { + "shortName": "ListMemberships", + "fullName": "google.cloud.gkehub.v1.GkeHub.ListMemberships", + "service": { + "shortName": "GkeHub", + "fullName": "google.cloud.gkehub.v1.GkeHub" + } + } + } + }, + { + "regionTag": "gkehub_v1_generated_GkeHub_ListFeatures_async", + "title": "GkeHub listFeatures Sample", + "origin": "API_DEFINITION", + "description": " Lists Features in a given project and location.", + "canonical": true, + "file": "gke_hub.list_features.js", + "language": "JAVASCRIPT", + "segments": [ + { + "start": 25, + "end": 81, + "type": "FULL" + } + ], + "clientMethod": { + "shortName": "ListFeatures", + "fullName": "google.cloud.gkehub.v1.GkeHub.ListFeatures", + "async": true, + "parameters": [ + { + "name": "parent", + "type": "TYPE_STRING" + }, + { + "name": "page_size", + "type": "TYPE_INT32" + }, + { + "name": "page_token", + "type": "TYPE_STRING" + }, + { + "name": "filter", + "type": "TYPE_STRING" + }, + { + "name": "order_by", + "type": "TYPE_STRING" + } + ], + "resultType": ".google.cloud.gkehub.v1.ListFeaturesResponse", + "client": { + "shortName": "GkeHubClient", + "fullName": "google.cloud.gkehub.v1.GkeHubClient" + }, + "method": { + "shortName": "ListFeatures", + "fullName": "google.cloud.gkehub.v1.GkeHub.ListFeatures", + "service": { + "shortName": "GkeHub", + "fullName": "google.cloud.gkehub.v1.GkeHub" + } + } + } + }, + { + "regionTag": "gkehub_v1_generated_GkeHub_GetMembership_async", + "title": "GkeHub getMembership Sample", + "origin": "API_DEFINITION", + "description": " Gets the details of a Membership.", + "canonical": true, + "file": "gke_hub.get_membership.js", + "language": "JAVASCRIPT", + "segments": [ + { + "start": 25, + "end": 51, + "type": "FULL" + } + ], + "clientMethod": { + "shortName": "GetMembership", + "fullName": "google.cloud.gkehub.v1.GkeHub.GetMembership", + "async": true, + "parameters": [ + { + "name": "name", + "type": "TYPE_STRING" + } + ], + "resultType": ".google.cloud.gkehub.v1.Membership", + "client": { + "shortName": "GkeHubClient", + "fullName": "google.cloud.gkehub.v1.GkeHubClient" + }, + "method": { + "shortName": "GetMembership", + "fullName": "google.cloud.gkehub.v1.GkeHub.GetMembership", + "service": { + "shortName": "GkeHub", + "fullName": "google.cloud.gkehub.v1.GkeHub" + } + } + } + }, + { + "regionTag": "gkehub_v1_generated_GkeHub_GetFeature_async", + "title": "GkeHub getFeature Sample", + "origin": "API_DEFINITION", + "description": " Gets details of a single Feature.", + "canonical": true, + "file": "gke_hub.get_feature.js", + "language": "JAVASCRIPT", + "segments": [ + { + "start": 25, + "end": 50, + "type": "FULL" + } + ], + "clientMethod": { + "shortName": "GetFeature", + "fullName": "google.cloud.gkehub.v1.GkeHub.GetFeature", + "async": true, + "parameters": [ + { + "name": "name", + "type": "TYPE_STRING" + } + ], + "resultType": ".google.cloud.gkehub.v1.Feature", + "client": { + "shortName": "GkeHubClient", + "fullName": "google.cloud.gkehub.v1.GkeHubClient" + }, + "method": { + "shortName": "GetFeature", + "fullName": "google.cloud.gkehub.v1.GkeHub.GetFeature", + "service": { + "shortName": "GkeHub", + "fullName": "google.cloud.gkehub.v1.GkeHub" + } + } + } + }, + { + "regionTag": "gkehub_v1_generated_GkeHub_CreateMembership_async", + "title": "GkeHub createMembership Sample", + "origin": "API_DEFINITION", + "description": " Creates a new Membership. **This is currently only supported for GKE clusters on Google Cloud**. To register other clusters, follow the instructions at https://cloud.google.com/anthos/multicluster-management/connect/registering-a-cluster.", + "canonical": true, + "file": "gke_hub.create_membership.js", + "language": "JAVASCRIPT", + "segments": [ + { + "start": 25, + "end": 82, + "type": "FULL" + } + ], + "clientMethod": { + "shortName": "CreateMembership", + "fullName": "google.cloud.gkehub.v1.GkeHub.CreateMembership", + "async": true, + "parameters": [ + { + "name": "parent", + "type": "TYPE_STRING" + }, + { + "name": "membership_id", + "type": "TYPE_STRING" + }, + { + "name": "resource", + "type": ".google.cloud.gkehub.v1.Membership" + }, + { + "name": "request_id", + "type": "TYPE_STRING" + } + ], + "resultType": ".google.longrunning.Operation", + "client": { + "shortName": "GkeHubClient", + "fullName": "google.cloud.gkehub.v1.GkeHubClient" + }, + "method": { + "shortName": "CreateMembership", + "fullName": "google.cloud.gkehub.v1.GkeHub.CreateMembership", + "service": { + "shortName": "GkeHub", + "fullName": "google.cloud.gkehub.v1.GkeHub" + } + } + } + }, + { + "regionTag": "gkehub_v1_generated_GkeHub_CreateFeature_async", + "title": "GkeHub createFeature Sample", + "origin": "API_DEFINITION", + "description": " Adds a new Feature.", + "canonical": true, + "file": "gke_hub.create_feature.js", + "language": "JAVASCRIPT", + "segments": [ + { + "start": 25, + "end": 73, + "type": "FULL" + } + ], + "clientMethod": { + "shortName": "CreateFeature", + "fullName": "google.cloud.gkehub.v1.GkeHub.CreateFeature", + "async": true, + "parameters": [ + { + "name": "parent", + "type": "TYPE_STRING" + }, + { + "name": "feature_id", + "type": "TYPE_STRING" + }, + { + "name": "resource", + "type": ".google.cloud.gkehub.v1.Feature" + }, + { + "name": "request_id", + "type": "TYPE_STRING" + } + ], + "resultType": ".google.longrunning.Operation", + "client": { + "shortName": "GkeHubClient", + "fullName": "google.cloud.gkehub.v1.GkeHubClient" + }, + "method": { + "shortName": "CreateFeature", + "fullName": "google.cloud.gkehub.v1.GkeHub.CreateFeature", + "service": { + "shortName": "GkeHub", + "fullName": "google.cloud.gkehub.v1.GkeHub" + } + } + } + }, + { + "regionTag": "gkehub_v1_generated_GkeHub_DeleteMembership_async", + "title": "GkeHub deleteMembership Sample", + "origin": "API_DEFINITION", + "description": " Removes a Membership. **This is currently only supported for GKE clusters on Google Cloud**. To unregister other clusters, follow the instructions at https://cloud.google.com/anthos/multicluster-management/connect/unregistering-a-cluster.", + "canonical": true, + "file": "gke_hub.delete_membership.js", + "language": "JAVASCRIPT", + "segments": [ + { + "start": 25, + "end": 66, + "type": "FULL" + } + ], + "clientMethod": { + "shortName": "DeleteMembership", + "fullName": "google.cloud.gkehub.v1.GkeHub.DeleteMembership", + "async": true, + "parameters": [ + { + "name": "name", + "type": "TYPE_STRING" + }, + { + "name": "request_id", + "type": "TYPE_STRING" + } + ], + "resultType": ".google.longrunning.Operation", + "client": { + "shortName": "GkeHubClient", + "fullName": "google.cloud.gkehub.v1.GkeHubClient" + }, + "method": { + "shortName": "DeleteMembership", + "fullName": "google.cloud.gkehub.v1.GkeHub.DeleteMembership", + "service": { + "shortName": "GkeHub", + "fullName": "google.cloud.gkehub.v1.GkeHub" + } + } + } + }, + { + "regionTag": "gkehub_v1_generated_GkeHub_DeleteFeature_async", + "title": "GkeHub deleteFeature Sample", + "origin": "API_DEFINITION", + "description": " Removes a Feature.", + "canonical": true, + "file": "gke_hub.delete_feature.js", + "language": "JAVASCRIPT", + "segments": [ + { + "start": 25, + "end": 71, + "type": "FULL" + } + ], + "clientMethod": { + "shortName": "DeleteFeature", + "fullName": "google.cloud.gkehub.v1.GkeHub.DeleteFeature", + "async": true, + "parameters": [ + { + "name": "name", + "type": "TYPE_STRING" + }, + { + "name": "force", + "type": "TYPE_BOOL" + }, + { + "name": "request_id", + "type": "TYPE_STRING" + } + ], + "resultType": ".google.longrunning.Operation", + "client": { + "shortName": "GkeHubClient", + "fullName": "google.cloud.gkehub.v1.GkeHubClient" + }, + "method": { + "shortName": "DeleteFeature", + "fullName": "google.cloud.gkehub.v1.GkeHub.DeleteFeature", + "service": { + "shortName": "GkeHub", + "fullName": "google.cloud.gkehub.v1.GkeHub" + } + } + } + }, + { + "regionTag": "gkehub_v1_generated_GkeHub_UpdateMembership_async", + "title": "GkeHub updateMembership Sample", + "origin": "API_DEFINITION", + "description": " Updates an existing Membership.", + "canonical": true, + "file": "gke_hub.update_membership.js", + "language": "JAVASCRIPT", + "segments": [ + { + "start": 25, + "end": 83, + "type": "FULL" + } + ], + "clientMethod": { + "shortName": "UpdateMembership", + "fullName": "google.cloud.gkehub.v1.GkeHub.UpdateMembership", + "async": true, + "parameters": [ + { + "name": "name", + "type": "TYPE_STRING" + }, + { + "name": "update_mask", + "type": ".google.protobuf.FieldMask" + }, + { + "name": "resource", + "type": ".google.cloud.gkehub.v1.Membership" + }, + { + "name": "request_id", + "type": "TYPE_STRING" + } + ], + "resultType": ".google.longrunning.Operation", + "client": { + "shortName": "GkeHubClient", + "fullName": "google.cloud.gkehub.v1.GkeHubClient" + }, + "method": { + "shortName": "UpdateMembership", + "fullName": "google.cloud.gkehub.v1.GkeHub.UpdateMembership", + "service": { + "shortName": "GkeHub", + "fullName": "google.cloud.gkehub.v1.GkeHub" + } + } + } + }, + { + "regionTag": "gkehub_v1_generated_GkeHub_UpdateFeature_async", + "title": "GkeHub updateFeature Sample", + "origin": "API_DEFINITION", + "description": " Updates an existing Feature.", + "canonical": true, + "file": "gke_hub.update_feature.js", + "language": "JAVASCRIPT", + "segments": [ + { + "start": 25, + "end": 80, + "type": "FULL" + } + ], + "clientMethod": { + "shortName": "UpdateFeature", + "fullName": "google.cloud.gkehub.v1.GkeHub.UpdateFeature", + "async": true, + "parameters": [ + { + "name": "name", + "type": "TYPE_STRING" + }, + { + "name": "update_mask", + "type": ".google.protobuf.FieldMask" + }, + { + "name": "resource", + "type": ".google.cloud.gkehub.v1.Feature" + }, + { + "name": "request_id", + "type": "TYPE_STRING" + } + ], + "resultType": ".google.longrunning.Operation", + "client": { + "shortName": "GkeHubClient", + "fullName": "google.cloud.gkehub.v1.GkeHubClient" + }, + "method": { + "shortName": "UpdateFeature", + "fullName": "google.cloud.gkehub.v1.GkeHub.UpdateFeature", + "service": { + "shortName": "GkeHub", + "fullName": "google.cloud.gkehub.v1.GkeHub" + } + } + } + }, + { + "regionTag": "gkehub_v1_generated_GkeHub_GenerateConnectManifest_async", + "title": "GkeHub generateConnectManifest Sample", + "origin": "API_DEFINITION", + "description": " Generates the manifest for deployment of the GKE connect agent. **This method is used internally by Google-provided libraries.** Most clients should not need to call this method directly.", + "canonical": true, + "file": "gke_hub.generate_connect_manifest.js", + "language": "JAVASCRIPT", + "segments": [ + { + "start": 25, + "end": 84, + "type": "FULL" + } + ], + "clientMethod": { + "shortName": "GenerateConnectManifest", + "fullName": "google.cloud.gkehub.v1.GkeHub.GenerateConnectManifest", + "async": true, + "parameters": [ + { + "name": "name", + "type": "TYPE_STRING" + }, + { + "name": "namespace", + "type": "TYPE_STRING" + }, + { + "name": "proxy", + "type": "TYPE_BYTES" + }, + { + "name": "version", + "type": "TYPE_STRING" + }, + { + "name": "is_upgrade", + "type": "TYPE_BOOL" + }, + { + "name": "registry", + "type": "TYPE_STRING" + }, + { + "name": "image_pull_secret_content", + "type": "TYPE_BYTES" + } + ], + "resultType": ".google.cloud.gkehub.v1.GenerateConnectManifestResponse", + "client": { + "shortName": "GkeHubClient", + "fullName": "google.cloud.gkehub.v1.GkeHubClient" + }, + "method": { + "shortName": "GenerateConnectManifest", + "fullName": "google.cloud.gkehub.v1.GkeHub.GenerateConnectManifest", + "service": { + "shortName": "GkeHub", + "fullName": "google.cloud.gkehub.v1.GkeHub" + } + } + } + } + ] +} diff --git a/packages/google-cloud-gkehub/samples/generated/v1alpha/gke_hub.create_feature.js b/packages/google-cloud-gkehub/samples/generated/v1alpha/gke_hub.create_feature.js index 6a6779af692..4879eb92b6a 100644 --- a/packages/google-cloud-gkehub/samples/generated/v1alpha/gke_hub.create_feature.js +++ b/packages/google-cloud-gkehub/samples/generated/v1alpha/gke_hub.create_feature.js @@ -1,16 +1,21 @@ -// Copyright 2021 Google LLC +// 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 +// 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'; diff --git a/packages/google-cloud-gkehub/samples/generated/v1alpha/gke_hub.delete_feature.js b/packages/google-cloud-gkehub/samples/generated/v1alpha/gke_hub.delete_feature.js index de220f037f4..d947c3b4eae 100644 --- a/packages/google-cloud-gkehub/samples/generated/v1alpha/gke_hub.delete_feature.js +++ b/packages/google-cloud-gkehub/samples/generated/v1alpha/gke_hub.delete_feature.js @@ -1,16 +1,21 @@ -// Copyright 2021 Google LLC +// 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 +// 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'; diff --git a/packages/google-cloud-gkehub/samples/generated/v1alpha/gke_hub.get_feature.js b/packages/google-cloud-gkehub/samples/generated/v1alpha/gke_hub.get_feature.js index a25221a69e3..ee4d635ec37 100644 --- a/packages/google-cloud-gkehub/samples/generated/v1alpha/gke_hub.get_feature.js +++ b/packages/google-cloud-gkehub/samples/generated/v1alpha/gke_hub.get_feature.js @@ -1,16 +1,21 @@ -// Copyright 2021 Google LLC +// 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 +// 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'; diff --git a/packages/google-cloud-gkehub/samples/generated/v1alpha/gke_hub.list_features.js b/packages/google-cloud-gkehub/samples/generated/v1alpha/gke_hub.list_features.js index 7b98c50f498..764c68eb2a4 100644 --- a/packages/google-cloud-gkehub/samples/generated/v1alpha/gke_hub.list_features.js +++ b/packages/google-cloud-gkehub/samples/generated/v1alpha/gke_hub.list_features.js @@ -1,16 +1,21 @@ -// Copyright 2021 Google LLC +// 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 +// 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'; diff --git a/packages/google-cloud-gkehub/samples/generated/v1alpha/gke_hub.update_feature.js b/packages/google-cloud-gkehub/samples/generated/v1alpha/gke_hub.update_feature.js index 3f73a40d553..8b84aa2f1dd 100644 --- a/packages/google-cloud-gkehub/samples/generated/v1alpha/gke_hub.update_feature.js +++ b/packages/google-cloud-gkehub/samples/generated/v1alpha/gke_hub.update_feature.js @@ -1,16 +1,21 @@ -// Copyright 2021 Google LLC +// 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 +// 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'; diff --git a/packages/google-cloud-gkehub/samples/generated/v1alpha/snippet_metadata.google.cloud.gkehub.v1alpha.json b/packages/google-cloud-gkehub/samples/generated/v1alpha/snippet_metadata.google.cloud.gkehub.v1alpha.json new file mode 100644 index 00000000000..385d265eaed --- /dev/null +++ b/packages/google-cloud-gkehub/samples/generated/v1alpha/snippet_metadata.google.cloud.gkehub.v1alpha.json @@ -0,0 +1,263 @@ +{ + "clientLibrary": { + "name": "nodejs-gkehub", + "version": "0.1.0", + "language": "TYPESCRIPT", + "apis": [ + { + "id": "google.cloud.gkehub.v1alpha", + "version": "v1alpha" + } + ] + }, + "snippets": [ + { + "regionTag": "gkehub_v1alpha_generated_GkeHub_ListFeatures_async", + "title": "GkeHub listFeatures Sample", + "origin": "API_DEFINITION", + "description": " Lists Features in a given project and location.", + "canonical": true, + "file": "gke_hub.list_features.js", + "language": "JAVASCRIPT", + "segments": [ + { + "start": 25, + "end": 81, + "type": "FULL" + } + ], + "clientMethod": { + "shortName": "ListFeatures", + "fullName": "google.cloud.gkehub.v1alpha.GkeHub.ListFeatures", + "async": true, + "parameters": [ + { + "name": "parent", + "type": "TYPE_STRING" + }, + { + "name": "page_size", + "type": "TYPE_INT32" + }, + { + "name": "page_token", + "type": "TYPE_STRING" + }, + { + "name": "filter", + "type": "TYPE_STRING" + }, + { + "name": "order_by", + "type": "TYPE_STRING" + } + ], + "resultType": ".google.cloud.gkehub.v1alpha.ListFeaturesResponse", + "client": { + "shortName": "GkeHubClient", + "fullName": "google.cloud.gkehub.v1alpha.GkeHubClient" + }, + "method": { + "shortName": "ListFeatures", + "fullName": "google.cloud.gkehub.v1alpha.GkeHub.ListFeatures", + "service": { + "shortName": "GkeHub", + "fullName": "google.cloud.gkehub.v1alpha.GkeHub" + } + } + } + }, + { + "regionTag": "gkehub_v1alpha_generated_GkeHub_GetFeature_async", + "title": "GkeHub getFeature Sample", + "origin": "API_DEFINITION", + "description": " Gets details of a single Feature.", + "canonical": true, + "file": "gke_hub.get_feature.js", + "language": "JAVASCRIPT", + "segments": [ + { + "start": 25, + "end": 50, + "type": "FULL" + } + ], + "clientMethod": { + "shortName": "GetFeature", + "fullName": "google.cloud.gkehub.v1alpha.GkeHub.GetFeature", + "async": true, + "parameters": [ + { + "name": "name", + "type": "TYPE_STRING" + } + ], + "resultType": ".google.cloud.gkehub.v1alpha.Feature", + "client": { + "shortName": "GkeHubClient", + "fullName": "google.cloud.gkehub.v1alpha.GkeHubClient" + }, + "method": { + "shortName": "GetFeature", + "fullName": "google.cloud.gkehub.v1alpha.GkeHub.GetFeature", + "service": { + "shortName": "GkeHub", + "fullName": "google.cloud.gkehub.v1alpha.GkeHub" + } + } + } + }, + { + "regionTag": "gkehub_v1alpha_generated_GkeHub_CreateFeature_async", + "title": "GkeHub createFeature Sample", + "origin": "API_DEFINITION", + "description": " Adds a new Feature.", + "canonical": true, + "file": "gke_hub.create_feature.js", + "language": "JAVASCRIPT", + "segments": [ + { + "start": 25, + "end": 73, + "type": "FULL" + } + ], + "clientMethod": { + "shortName": "CreateFeature", + "fullName": "google.cloud.gkehub.v1alpha.GkeHub.CreateFeature", + "async": true, + "parameters": [ + { + "name": "parent", + "type": "TYPE_STRING" + }, + { + "name": "feature_id", + "type": "TYPE_STRING" + }, + { + "name": "resource", + "type": ".google.cloud.gkehub.v1alpha.Feature" + }, + { + "name": "request_id", + "type": "TYPE_STRING" + } + ], + "resultType": ".google.longrunning.Operation", + "client": { + "shortName": "GkeHubClient", + "fullName": "google.cloud.gkehub.v1alpha.GkeHubClient" + }, + "method": { + "shortName": "CreateFeature", + "fullName": "google.cloud.gkehub.v1alpha.GkeHub.CreateFeature", + "service": { + "shortName": "GkeHub", + "fullName": "google.cloud.gkehub.v1alpha.GkeHub" + } + } + } + }, + { + "regionTag": "gkehub_v1alpha_generated_GkeHub_DeleteFeature_async", + "title": "GkeHub deleteFeature Sample", + "origin": "API_DEFINITION", + "description": " Removes a Feature.", + "canonical": true, + "file": "gke_hub.delete_feature.js", + "language": "JAVASCRIPT", + "segments": [ + { + "start": 25, + "end": 71, + "type": "FULL" + } + ], + "clientMethod": { + "shortName": "DeleteFeature", + "fullName": "google.cloud.gkehub.v1alpha.GkeHub.DeleteFeature", + "async": true, + "parameters": [ + { + "name": "name", + "type": "TYPE_STRING" + }, + { + "name": "force", + "type": "TYPE_BOOL" + }, + { + "name": "request_id", + "type": "TYPE_STRING" + } + ], + "resultType": ".google.longrunning.Operation", + "client": { + "shortName": "GkeHubClient", + "fullName": "google.cloud.gkehub.v1alpha.GkeHubClient" + }, + "method": { + "shortName": "DeleteFeature", + "fullName": "google.cloud.gkehub.v1alpha.GkeHub.DeleteFeature", + "service": { + "shortName": "GkeHub", + "fullName": "google.cloud.gkehub.v1alpha.GkeHub" + } + } + } + }, + { + "regionTag": "gkehub_v1alpha_generated_GkeHub_UpdateFeature_async", + "title": "GkeHub updateFeature Sample", + "origin": "API_DEFINITION", + "description": " Updates an existing Feature.", + "canonical": true, + "file": "gke_hub.update_feature.js", + "language": "JAVASCRIPT", + "segments": [ + { + "start": 25, + "end": 80, + "type": "FULL" + } + ], + "clientMethod": { + "shortName": "UpdateFeature", + "fullName": "google.cloud.gkehub.v1alpha.GkeHub.UpdateFeature", + "async": true, + "parameters": [ + { + "name": "name", + "type": "TYPE_STRING" + }, + { + "name": "update_mask", + "type": ".google.protobuf.FieldMask" + }, + { + "name": "resource", + "type": ".google.cloud.gkehub.v1alpha.Feature" + }, + { + "name": "request_id", + "type": "TYPE_STRING" + } + ], + "resultType": ".google.longrunning.Operation", + "client": { + "shortName": "GkeHubClient", + "fullName": "google.cloud.gkehub.v1alpha.GkeHubClient" + }, + "method": { + "shortName": "UpdateFeature", + "fullName": "google.cloud.gkehub.v1alpha.GkeHub.UpdateFeature", + "service": { + "shortName": "GkeHub", + "fullName": "google.cloud.gkehub.v1alpha.GkeHub" + } + } + } + } + ] +} diff --git a/packages/google-cloud-gkehub/samples/generated/v1alpha2/gke_hub.create_membership.js b/packages/google-cloud-gkehub/samples/generated/v1alpha2/gke_hub.create_membership.js index bb0e330ef34..399a844eb74 100644 --- a/packages/google-cloud-gkehub/samples/generated/v1alpha2/gke_hub.create_membership.js +++ b/packages/google-cloud-gkehub/samples/generated/v1alpha2/gke_hub.create_membership.js @@ -1,16 +1,21 @@ -// Copyright 2021 Google LLC +// 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 +// 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'; diff --git a/packages/google-cloud-gkehub/samples/generated/v1alpha2/gke_hub.delete_membership.js b/packages/google-cloud-gkehub/samples/generated/v1alpha2/gke_hub.delete_membership.js index 039e04b9aa0..7a1a4852d06 100644 --- a/packages/google-cloud-gkehub/samples/generated/v1alpha2/gke_hub.delete_membership.js +++ b/packages/google-cloud-gkehub/samples/generated/v1alpha2/gke_hub.delete_membership.js @@ -1,16 +1,21 @@ -// Copyright 2021 Google LLC +// 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 +// 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'; diff --git a/packages/google-cloud-gkehub/samples/generated/v1alpha2/gke_hub.generate_connect_manifest.js b/packages/google-cloud-gkehub/samples/generated/v1alpha2/gke_hub.generate_connect_manifest.js index d4a6f4be3f8..ef30a1c311d 100644 --- a/packages/google-cloud-gkehub/samples/generated/v1alpha2/gke_hub.generate_connect_manifest.js +++ b/packages/google-cloud-gkehub/samples/generated/v1alpha2/gke_hub.generate_connect_manifest.js @@ -1,16 +1,21 @@ -// Copyright 2021 Google LLC +// 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 +// 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'; diff --git a/packages/google-cloud-gkehub/samples/generated/v1alpha2/gke_hub.get_membership.js b/packages/google-cloud-gkehub/samples/generated/v1alpha2/gke_hub.get_membership.js index bb75164d904..bc821e0e597 100644 --- a/packages/google-cloud-gkehub/samples/generated/v1alpha2/gke_hub.get_membership.js +++ b/packages/google-cloud-gkehub/samples/generated/v1alpha2/gke_hub.get_membership.js @@ -1,16 +1,21 @@ -// Copyright 2021 Google LLC +// 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 +// 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'; diff --git a/packages/google-cloud-gkehub/samples/generated/v1alpha2/gke_hub.initialize_hub.js b/packages/google-cloud-gkehub/samples/generated/v1alpha2/gke_hub.initialize_hub.js index 62504e9f70a..ebcbea1b874 100644 --- a/packages/google-cloud-gkehub/samples/generated/v1alpha2/gke_hub.initialize_hub.js +++ b/packages/google-cloud-gkehub/samples/generated/v1alpha2/gke_hub.initialize_hub.js @@ -1,16 +1,21 @@ -// Copyright 2021 Google LLC +// 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 +// 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'; diff --git a/packages/google-cloud-gkehub/samples/generated/v1alpha2/gke_hub.list_memberships.js b/packages/google-cloud-gkehub/samples/generated/v1alpha2/gke_hub.list_memberships.js index 6fe475b730d..8f79e409f95 100644 --- a/packages/google-cloud-gkehub/samples/generated/v1alpha2/gke_hub.list_memberships.js +++ b/packages/google-cloud-gkehub/samples/generated/v1alpha2/gke_hub.list_memberships.js @@ -1,16 +1,21 @@ -// Copyright 2021 Google LLC +// 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 +// 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'; diff --git a/packages/google-cloud-gkehub/samples/generated/v1alpha2/gke_hub.update_membership.js b/packages/google-cloud-gkehub/samples/generated/v1alpha2/gke_hub.update_membership.js index 6d3e5a2b908..a66ea4fc0ef 100644 --- a/packages/google-cloud-gkehub/samples/generated/v1alpha2/gke_hub.update_membership.js +++ b/packages/google-cloud-gkehub/samples/generated/v1alpha2/gke_hub.update_membership.js @@ -1,16 +1,21 @@ -// Copyright 2021 Google LLC +// 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 +// 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'; diff --git a/packages/google-cloud-gkehub/samples/generated/v1alpha2/snippet_metadata.google.cloud.gkehub.v1alpha2.json b/packages/google-cloud-gkehub/samples/generated/v1alpha2/snippet_metadata.google.cloud.gkehub.v1alpha2.json new file mode 100644 index 00000000000..35be860ba45 --- /dev/null +++ b/packages/google-cloud-gkehub/samples/generated/v1alpha2/snippet_metadata.google.cloud.gkehub.v1alpha2.json @@ -0,0 +1,351 @@ +{ + "clientLibrary": { + "name": "nodejs-gkehub", + "version": "0.1.0", + "language": "TYPESCRIPT", + "apis": [ + { + "id": "google.cloud.gkehub.v1alpha2", + "version": "v1alpha2" + } + ] + }, + "snippets": [ + { + "regionTag": "gkehub_v1alpha2_generated_GkeHub_ListMemberships_async", + "title": "GkeHub listMemberships Sample", + "origin": "API_DEFINITION", + "description": " Lists Memberships in a given project and location.", + "canonical": true, + "file": "gke_hub.list_memberships.js", + "language": "JAVASCRIPT", + "segments": [ + { + "start": 25, + "end": 84, + "type": "FULL" + } + ], + "clientMethod": { + "shortName": "ListMemberships", + "fullName": "google.cloud.gkehub.v1alpha2.GkeHub.ListMemberships", + "async": true, + "parameters": [ + { + "name": "parent", + "type": "TYPE_STRING" + }, + { + "name": "page_size", + "type": "TYPE_INT32" + }, + { + "name": "page_token", + "type": "TYPE_STRING" + }, + { + "name": "filter", + "type": "TYPE_STRING" + }, + { + "name": "order_by", + "type": "TYPE_STRING" + } + ], + "resultType": ".google.cloud.gkehub.v1alpha2.ListMembershipsResponse", + "client": { + "shortName": "GkeHubClient", + "fullName": "google.cloud.gkehub.v1alpha2.GkeHubClient" + }, + "method": { + "shortName": "ListMemberships", + "fullName": "google.cloud.gkehub.v1alpha2.GkeHub.ListMemberships", + "service": { + "shortName": "GkeHub", + "fullName": "google.cloud.gkehub.v1alpha2.GkeHub" + } + } + } + }, + { + "regionTag": "gkehub_v1alpha2_generated_GkeHub_GetMembership_async", + "title": "GkeHub getMembership Sample", + "origin": "API_DEFINITION", + "description": " Gets the details of a Membership.", + "canonical": true, + "file": "gke_hub.get_membership.js", + "language": "JAVASCRIPT", + "segments": [ + { + "start": 25, + "end": 51, + "type": "FULL" + } + ], + "clientMethod": { + "shortName": "GetMembership", + "fullName": "google.cloud.gkehub.v1alpha2.GkeHub.GetMembership", + "async": true, + "parameters": [ + { + "name": "name", + "type": "TYPE_STRING" + } + ], + "resultType": ".google.cloud.gkehub.v1alpha2.Membership", + "client": { + "shortName": "GkeHubClient", + "fullName": "google.cloud.gkehub.v1alpha2.GkeHubClient" + }, + "method": { + "shortName": "GetMembership", + "fullName": "google.cloud.gkehub.v1alpha2.GkeHub.GetMembership", + "service": { + "shortName": "GkeHub", + "fullName": "google.cloud.gkehub.v1alpha2.GkeHub" + } + } + } + }, + { + "regionTag": "gkehub_v1alpha2_generated_GkeHub_CreateMembership_async", + "title": "GkeHub createMembership Sample", + "origin": "API_DEFINITION", + "description": " Creates a new Membership. **This is currently only supported for GKE clusters on Google Cloud**. To register other clusters, follow the instructions at https://cloud.google.com/anthos/multicluster-management/connect/registering-a-cluster.", + "canonical": true, + "file": "gke_hub.create_membership.js", + "language": "JAVASCRIPT", + "segments": [ + { + "start": 25, + "end": 68, + "type": "FULL" + } + ], + "clientMethod": { + "shortName": "CreateMembership", + "fullName": "google.cloud.gkehub.v1alpha2.GkeHub.CreateMembership", + "async": true, + "parameters": [ + { + "name": "parent", + "type": "TYPE_STRING" + }, + { + "name": "membership_id", + "type": "TYPE_STRING" + }, + { + "name": "resource", + "type": ".google.cloud.gkehub.v1alpha2.Membership" + } + ], + "resultType": ".google.longrunning.Operation", + "client": { + "shortName": "GkeHubClient", + "fullName": "google.cloud.gkehub.v1alpha2.GkeHubClient" + }, + "method": { + "shortName": "CreateMembership", + "fullName": "google.cloud.gkehub.v1alpha2.GkeHub.CreateMembership", + "service": { + "shortName": "GkeHub", + "fullName": "google.cloud.gkehub.v1alpha2.GkeHub" + } + } + } + }, + { + "regionTag": "gkehub_v1alpha2_generated_GkeHub_DeleteMembership_async", + "title": "GkeHub deleteMembership Sample", + "origin": "API_DEFINITION", + "description": " Removes a Membership. **This is currently only supported for GKE clusters on Google Cloud**. To unregister other clusters, follow the instructions at https://cloud.google.com/anthos/multicluster-management/connect/unregistering-a-cluster.", + "canonical": true, + "file": "gke_hub.delete_membership.js", + "language": "JAVASCRIPT", + "segments": [ + { + "start": 25, + "end": 52, + "type": "FULL" + } + ], + "clientMethod": { + "shortName": "DeleteMembership", + "fullName": "google.cloud.gkehub.v1alpha2.GkeHub.DeleteMembership", + "async": true, + "parameters": [ + { + "name": "name", + "type": "TYPE_STRING" + } + ], + "resultType": ".google.longrunning.Operation", + "client": { + "shortName": "GkeHubClient", + "fullName": "google.cloud.gkehub.v1alpha2.GkeHubClient" + }, + "method": { + "shortName": "DeleteMembership", + "fullName": "google.cloud.gkehub.v1alpha2.GkeHub.DeleteMembership", + "service": { + "shortName": "GkeHub", + "fullName": "google.cloud.gkehub.v1alpha2.GkeHub" + } + } + } + }, + { + "regionTag": "gkehub_v1alpha2_generated_GkeHub_UpdateMembership_async", + "title": "GkeHub updateMembership Sample", + "origin": "API_DEFINITION", + "description": " Updates an existing Membership.", + "canonical": true, + "file": "gke_hub.update_membership.js", + "language": "JAVASCRIPT", + "segments": [ + { + "start": 25, + "end": 69, + "type": "FULL" + } + ], + "clientMethod": { + "shortName": "UpdateMembership", + "fullName": "google.cloud.gkehub.v1alpha2.GkeHub.UpdateMembership", + "async": true, + "parameters": [ + { + "name": "name", + "type": "TYPE_STRING" + }, + { + "name": "update_mask", + "type": ".google.protobuf.FieldMask" + }, + { + "name": "resource", + "type": ".google.cloud.gkehub.v1alpha2.Membership" + } + ], + "resultType": ".google.longrunning.Operation", + "client": { + "shortName": "GkeHubClient", + "fullName": "google.cloud.gkehub.v1alpha2.GkeHubClient" + }, + "method": { + "shortName": "UpdateMembership", + "fullName": "google.cloud.gkehub.v1alpha2.GkeHub.UpdateMembership", + "service": { + "shortName": "GkeHub", + "fullName": "google.cloud.gkehub.v1alpha2.GkeHub" + } + } + } + }, + { + "regionTag": "gkehub_v1alpha2_generated_GkeHub_GenerateConnectManifest_async", + "title": "GkeHub generateConnectManifest Sample", + "origin": "API_DEFINITION", + "description": " Generates the manifest for deployment of the GKE connect agent. **This method is used internally by Google-provided libraries.** Most clients should not need to call this method directly.", + "canonical": true, + "file": "gke_hub.generate_connect_manifest.js", + "language": "JAVASCRIPT", + "segments": [ + { + "start": 25, + "end": 84, + "type": "FULL" + } + ], + "clientMethod": { + "shortName": "GenerateConnectManifest", + "fullName": "google.cloud.gkehub.v1alpha2.GkeHub.GenerateConnectManifest", + "async": true, + "parameters": [ + { + "name": "name", + "type": "TYPE_STRING" + }, + { + "name": "namespace", + "type": "TYPE_STRING" + }, + { + "name": "proxy", + "type": "TYPE_BYTES" + }, + { + "name": "version", + "type": "TYPE_STRING" + }, + { + "name": "is_upgrade", + "type": "TYPE_BOOL" + }, + { + "name": "registry", + "type": "TYPE_STRING" + }, + { + "name": "image_pull_secret_content", + "type": "TYPE_BYTES" + } + ], + "resultType": ".google.cloud.gkehub.v1alpha2.GenerateConnectManifestResponse", + "client": { + "shortName": "GkeHubClient", + "fullName": "google.cloud.gkehub.v1alpha2.GkeHubClient" + }, + "method": { + "shortName": "GenerateConnectManifest", + "fullName": "google.cloud.gkehub.v1alpha2.GkeHub.GenerateConnectManifest", + "service": { + "shortName": "GkeHub", + "fullName": "google.cloud.gkehub.v1alpha2.GkeHub" + } + } + } + }, + { + "regionTag": "gkehub_v1alpha2_generated_GkeHub_InitializeHub_async", + "title": "GkeHub initializeHub Sample", + "origin": "API_DEFINITION", + "description": " Initializes the Hub in this project, which includes creating the default Hub Service Account and the Hub Workload Identity Pool. Initialization is optional, and happens automatically when the first Membership is created. InitializeHub should be called when the first Membership cannot be registered without these resources. A common example is granting the Hub Service Account access to another project, which requires the account to exist first.", + "canonical": true, + "file": "gke_hub.initialize_hub.js", + "language": "JAVASCRIPT", + "segments": [ + { + "start": 25, + "end": 51, + "type": "FULL" + } + ], + "clientMethod": { + "shortName": "InitializeHub", + "fullName": "google.cloud.gkehub.v1alpha2.GkeHub.InitializeHub", + "async": true, + "parameters": [ + { + "name": "project", + "type": "TYPE_STRING" + } + ], + "resultType": ".google.cloud.gkehub.v1alpha2.InitializeHubResponse", + "client": { + "shortName": "GkeHubClient", + "fullName": "google.cloud.gkehub.v1alpha2.GkeHubClient" + }, + "method": { + "shortName": "InitializeHub", + "fullName": "google.cloud.gkehub.v1alpha2.GkeHub.InitializeHub", + "service": { + "shortName": "GkeHub", + "fullName": "google.cloud.gkehub.v1alpha2.GkeHub" + } + } + } + } + ] +} diff --git a/packages/google-cloud-gkehub/samples/generated/v1beta/gke_hub.create_feature.js b/packages/google-cloud-gkehub/samples/generated/v1beta/gke_hub.create_feature.js index 08b469a739b..6488da2e0df 100644 --- a/packages/google-cloud-gkehub/samples/generated/v1beta/gke_hub.create_feature.js +++ b/packages/google-cloud-gkehub/samples/generated/v1beta/gke_hub.create_feature.js @@ -1,16 +1,21 @@ -// Copyright 2021 Google LLC +// 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 +// 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'; diff --git a/packages/google-cloud-gkehub/samples/generated/v1beta/gke_hub.delete_feature.js b/packages/google-cloud-gkehub/samples/generated/v1beta/gke_hub.delete_feature.js index 03e5fa86426..fa5cf307368 100644 --- a/packages/google-cloud-gkehub/samples/generated/v1beta/gke_hub.delete_feature.js +++ b/packages/google-cloud-gkehub/samples/generated/v1beta/gke_hub.delete_feature.js @@ -1,16 +1,21 @@ -// Copyright 2021 Google LLC +// 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 +// 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'; diff --git a/packages/google-cloud-gkehub/samples/generated/v1beta/gke_hub.get_feature.js b/packages/google-cloud-gkehub/samples/generated/v1beta/gke_hub.get_feature.js index 10109ce67fa..d96062b356a 100644 --- a/packages/google-cloud-gkehub/samples/generated/v1beta/gke_hub.get_feature.js +++ b/packages/google-cloud-gkehub/samples/generated/v1beta/gke_hub.get_feature.js @@ -1,16 +1,21 @@ -// Copyright 2021 Google LLC +// 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 +// 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'; diff --git a/packages/google-cloud-gkehub/samples/generated/v1beta/gke_hub.list_features.js b/packages/google-cloud-gkehub/samples/generated/v1beta/gke_hub.list_features.js index 0e9a346240a..a4ca93b57b9 100644 --- a/packages/google-cloud-gkehub/samples/generated/v1beta/gke_hub.list_features.js +++ b/packages/google-cloud-gkehub/samples/generated/v1beta/gke_hub.list_features.js @@ -1,16 +1,21 @@ -// Copyright 2021 Google LLC +// 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 +// 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'; diff --git a/packages/google-cloud-gkehub/samples/generated/v1beta/gke_hub.update_feature.js b/packages/google-cloud-gkehub/samples/generated/v1beta/gke_hub.update_feature.js index 81da6b8fd57..ded4249cdb5 100644 --- a/packages/google-cloud-gkehub/samples/generated/v1beta/gke_hub.update_feature.js +++ b/packages/google-cloud-gkehub/samples/generated/v1beta/gke_hub.update_feature.js @@ -1,16 +1,21 @@ -// Copyright 2021 Google LLC +// 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 +// 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'; diff --git a/packages/google-cloud-gkehub/samples/generated/v1beta/snippet_metadata.google.cloud.gkehub.v1beta.json b/packages/google-cloud-gkehub/samples/generated/v1beta/snippet_metadata.google.cloud.gkehub.v1beta.json new file mode 100644 index 00000000000..1a16b534fa6 --- /dev/null +++ b/packages/google-cloud-gkehub/samples/generated/v1beta/snippet_metadata.google.cloud.gkehub.v1beta.json @@ -0,0 +1,263 @@ +{ + "clientLibrary": { + "name": "nodejs-gkehub", + "version": "0.1.0", + "language": "TYPESCRIPT", + "apis": [ + { + "id": "google.cloud.gkehub.v1beta", + "version": "v1beta" + } + ] + }, + "snippets": [ + { + "regionTag": "gkehub_v1beta_generated_GkeHub_ListFeatures_async", + "title": "GkeHub listFeatures Sample", + "origin": "API_DEFINITION", + "description": " Lists Features in a given project and location.", + "canonical": true, + "file": "gke_hub.list_features.js", + "language": "JAVASCRIPT", + "segments": [ + { + "start": 25, + "end": 81, + "type": "FULL" + } + ], + "clientMethod": { + "shortName": "ListFeatures", + "fullName": "google.cloud.gkehub.v1beta.GkeHub.ListFeatures", + "async": true, + "parameters": [ + { + "name": "parent", + "type": "TYPE_STRING" + }, + { + "name": "page_size", + "type": "TYPE_INT32" + }, + { + "name": "page_token", + "type": "TYPE_STRING" + }, + { + "name": "filter", + "type": "TYPE_STRING" + }, + { + "name": "order_by", + "type": "TYPE_STRING" + } + ], + "resultType": ".google.cloud.gkehub.v1beta.ListFeaturesResponse", + "client": { + "shortName": "GkeHubClient", + "fullName": "google.cloud.gkehub.v1beta.GkeHubClient" + }, + "method": { + "shortName": "ListFeatures", + "fullName": "google.cloud.gkehub.v1beta.GkeHub.ListFeatures", + "service": { + "shortName": "GkeHub", + "fullName": "google.cloud.gkehub.v1beta.GkeHub" + } + } + } + }, + { + "regionTag": "gkehub_v1beta_generated_GkeHub_GetFeature_async", + "title": "GkeHub getFeature Sample", + "origin": "API_DEFINITION", + "description": " Gets details of a single Feature.", + "canonical": true, + "file": "gke_hub.get_feature.js", + "language": "JAVASCRIPT", + "segments": [ + { + "start": 25, + "end": 50, + "type": "FULL" + } + ], + "clientMethod": { + "shortName": "GetFeature", + "fullName": "google.cloud.gkehub.v1beta.GkeHub.GetFeature", + "async": true, + "parameters": [ + { + "name": "name", + "type": "TYPE_STRING" + } + ], + "resultType": ".google.cloud.gkehub.v1beta.Feature", + "client": { + "shortName": "GkeHubClient", + "fullName": "google.cloud.gkehub.v1beta.GkeHubClient" + }, + "method": { + "shortName": "GetFeature", + "fullName": "google.cloud.gkehub.v1beta.GkeHub.GetFeature", + "service": { + "shortName": "GkeHub", + "fullName": "google.cloud.gkehub.v1beta.GkeHub" + } + } + } + }, + { + "regionTag": "gkehub_v1beta_generated_GkeHub_CreateFeature_async", + "title": "GkeHub createFeature Sample", + "origin": "API_DEFINITION", + "description": " Adds a new Feature.", + "canonical": true, + "file": "gke_hub.create_feature.js", + "language": "JAVASCRIPT", + "segments": [ + { + "start": 25, + "end": 73, + "type": "FULL" + } + ], + "clientMethod": { + "shortName": "CreateFeature", + "fullName": "google.cloud.gkehub.v1beta.GkeHub.CreateFeature", + "async": true, + "parameters": [ + { + "name": "parent", + "type": "TYPE_STRING" + }, + { + "name": "feature_id", + "type": "TYPE_STRING" + }, + { + "name": "resource", + "type": ".google.cloud.gkehub.v1beta.Feature" + }, + { + "name": "request_id", + "type": "TYPE_STRING" + } + ], + "resultType": ".google.longrunning.Operation", + "client": { + "shortName": "GkeHubClient", + "fullName": "google.cloud.gkehub.v1beta.GkeHubClient" + }, + "method": { + "shortName": "CreateFeature", + "fullName": "google.cloud.gkehub.v1beta.GkeHub.CreateFeature", + "service": { + "shortName": "GkeHub", + "fullName": "google.cloud.gkehub.v1beta.GkeHub" + } + } + } + }, + { + "regionTag": "gkehub_v1beta_generated_GkeHub_DeleteFeature_async", + "title": "GkeHub deleteFeature Sample", + "origin": "API_DEFINITION", + "description": " Removes a Feature.", + "canonical": true, + "file": "gke_hub.delete_feature.js", + "language": "JAVASCRIPT", + "segments": [ + { + "start": 25, + "end": 71, + "type": "FULL" + } + ], + "clientMethod": { + "shortName": "DeleteFeature", + "fullName": "google.cloud.gkehub.v1beta.GkeHub.DeleteFeature", + "async": true, + "parameters": [ + { + "name": "name", + "type": "TYPE_STRING" + }, + { + "name": "force", + "type": "TYPE_BOOL" + }, + { + "name": "request_id", + "type": "TYPE_STRING" + } + ], + "resultType": ".google.longrunning.Operation", + "client": { + "shortName": "GkeHubClient", + "fullName": "google.cloud.gkehub.v1beta.GkeHubClient" + }, + "method": { + "shortName": "DeleteFeature", + "fullName": "google.cloud.gkehub.v1beta.GkeHub.DeleteFeature", + "service": { + "shortName": "GkeHub", + "fullName": "google.cloud.gkehub.v1beta.GkeHub" + } + } + } + }, + { + "regionTag": "gkehub_v1beta_generated_GkeHub_UpdateFeature_async", + "title": "GkeHub updateFeature Sample", + "origin": "API_DEFINITION", + "description": " Updates an existing Feature.", + "canonical": true, + "file": "gke_hub.update_feature.js", + "language": "JAVASCRIPT", + "segments": [ + { + "start": 25, + "end": 80, + "type": "FULL" + } + ], + "clientMethod": { + "shortName": "UpdateFeature", + "fullName": "google.cloud.gkehub.v1beta.GkeHub.UpdateFeature", + "async": true, + "parameters": [ + { + "name": "name", + "type": "TYPE_STRING" + }, + { + "name": "update_mask", + "type": ".google.protobuf.FieldMask" + }, + { + "name": "resource", + "type": ".google.cloud.gkehub.v1beta.Feature" + }, + { + "name": "request_id", + "type": "TYPE_STRING" + } + ], + "resultType": ".google.longrunning.Operation", + "client": { + "shortName": "GkeHubClient", + "fullName": "google.cloud.gkehub.v1beta.GkeHubClient" + }, + "method": { + "shortName": "UpdateFeature", + "fullName": "google.cloud.gkehub.v1beta.GkeHub.UpdateFeature", + "service": { + "shortName": "GkeHub", + "fullName": "google.cloud.gkehub.v1beta.GkeHub" + } + } + } + } + ] +} diff --git a/packages/google-cloud-gkehub/samples/generated/v1beta1/gke_hub_membership_service.create_membership.js b/packages/google-cloud-gkehub/samples/generated/v1beta1/gke_hub_membership_service.create_membership.js index 206ccd83a7c..c2091031614 100644 --- a/packages/google-cloud-gkehub/samples/generated/v1beta1/gke_hub_membership_service.create_membership.js +++ b/packages/google-cloud-gkehub/samples/generated/v1beta1/gke_hub_membership_service.create_membership.js @@ -1,16 +1,21 @@ -// Copyright 2021 Google LLC +// 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 +// 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'; diff --git a/packages/google-cloud-gkehub/samples/generated/v1beta1/gke_hub_membership_service.delete_membership.js b/packages/google-cloud-gkehub/samples/generated/v1beta1/gke_hub_membership_service.delete_membership.js index a65d0d95fa2..de5d977efb4 100644 --- a/packages/google-cloud-gkehub/samples/generated/v1beta1/gke_hub_membership_service.delete_membership.js +++ b/packages/google-cloud-gkehub/samples/generated/v1beta1/gke_hub_membership_service.delete_membership.js @@ -1,16 +1,21 @@ -// Copyright 2021 Google LLC +// 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 +// 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'; diff --git a/packages/google-cloud-gkehub/samples/generated/v1beta1/gke_hub_membership_service.generate_connect_manifest.js b/packages/google-cloud-gkehub/samples/generated/v1beta1/gke_hub_membership_service.generate_connect_manifest.js index fd60c562be2..ee6c0dca837 100644 --- a/packages/google-cloud-gkehub/samples/generated/v1beta1/gke_hub_membership_service.generate_connect_manifest.js +++ b/packages/google-cloud-gkehub/samples/generated/v1beta1/gke_hub_membership_service.generate_connect_manifest.js @@ -1,16 +1,21 @@ -// Copyright 2021 Google LLC +// 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 +// 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'; diff --git a/packages/google-cloud-gkehub/samples/generated/v1beta1/gke_hub_membership_service.generate_exclusivity_manifest.js b/packages/google-cloud-gkehub/samples/generated/v1beta1/gke_hub_membership_service.generate_exclusivity_manifest.js index 90525ef2dca..91ea676a014 100644 --- a/packages/google-cloud-gkehub/samples/generated/v1beta1/gke_hub_membership_service.generate_exclusivity_manifest.js +++ b/packages/google-cloud-gkehub/samples/generated/v1beta1/gke_hub_membership_service.generate_exclusivity_manifest.js @@ -1,16 +1,21 @@ -// Copyright 2021 Google LLC +// 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 +// 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'; diff --git a/packages/google-cloud-gkehub/samples/generated/v1beta1/gke_hub_membership_service.get_membership.js b/packages/google-cloud-gkehub/samples/generated/v1beta1/gke_hub_membership_service.get_membership.js index 42d3d71336b..f7c365796a2 100644 --- a/packages/google-cloud-gkehub/samples/generated/v1beta1/gke_hub_membership_service.get_membership.js +++ b/packages/google-cloud-gkehub/samples/generated/v1beta1/gke_hub_membership_service.get_membership.js @@ -1,16 +1,21 @@ -// Copyright 2021 Google LLC +// 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 +// 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'; diff --git a/packages/google-cloud-gkehub/samples/generated/v1beta1/gke_hub_membership_service.list_memberships.js b/packages/google-cloud-gkehub/samples/generated/v1beta1/gke_hub_membership_service.list_memberships.js index 083d2437ce1..5ce348c2f19 100644 --- a/packages/google-cloud-gkehub/samples/generated/v1beta1/gke_hub_membership_service.list_memberships.js +++ b/packages/google-cloud-gkehub/samples/generated/v1beta1/gke_hub_membership_service.list_memberships.js @@ -1,16 +1,21 @@ -// Copyright 2021 Google LLC +// 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 +// 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'; diff --git a/packages/google-cloud-gkehub/samples/generated/v1beta1/gke_hub_membership_service.update_membership.js b/packages/google-cloud-gkehub/samples/generated/v1beta1/gke_hub_membership_service.update_membership.js index 3fe8f96d5b6..84e93fe40cb 100644 --- a/packages/google-cloud-gkehub/samples/generated/v1beta1/gke_hub_membership_service.update_membership.js +++ b/packages/google-cloud-gkehub/samples/generated/v1beta1/gke_hub_membership_service.update_membership.js @@ -1,16 +1,21 @@ -// Copyright 2021 Google LLC +// 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 +// 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'; diff --git a/packages/google-cloud-gkehub/samples/generated/v1beta1/gke_hub_membership_service.validate_exclusivity.js b/packages/google-cloud-gkehub/samples/generated/v1beta1/gke_hub_membership_service.validate_exclusivity.js index 06ce481da8d..37d2d0636f9 100644 --- a/packages/google-cloud-gkehub/samples/generated/v1beta1/gke_hub_membership_service.validate_exclusivity.js +++ b/packages/google-cloud-gkehub/samples/generated/v1beta1/gke_hub_membership_service.validate_exclusivity.js @@ -1,16 +1,21 @@ -// Copyright 2021 Google LLC +// 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 +// 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'; diff --git a/packages/google-cloud-gkehub/samples/generated/v1beta1/snippet_metadata.google.cloud.gkehub.v1beta1.json b/packages/google-cloud-gkehub/samples/generated/v1beta1/snippet_metadata.google.cloud.gkehub.v1beta1.json new file mode 100644 index 00000000000..da458874bfa --- /dev/null +++ b/packages/google-cloud-gkehub/samples/generated/v1beta1/snippet_metadata.google.cloud.gkehub.v1beta1.json @@ -0,0 +1,415 @@ +{ + "clientLibrary": { + "name": "nodejs-gkehub", + "version": "0.1.0", + "language": "TYPESCRIPT", + "apis": [ + { + "id": "google.cloud.gkehub.v1beta1", + "version": "v1beta1" + } + ] + }, + "snippets": [ + { + "regionTag": "gkehub_v1beta1_generated_GkeHubMembershipService_ListMemberships_async", + "title": "GkeHubMembershipService listMemberships Sample", + "origin": "API_DEFINITION", + "description": " Lists Memberships in a given project and location.", + "canonical": true, + "file": "gke_hub_membership_service.list_memberships.js", + "language": "JAVASCRIPT", + "segments": [ + { + "start": 25, + "end": 84, + "type": "FULL" + } + ], + "clientMethod": { + "shortName": "ListMemberships", + "fullName": "google.cloud.gkehub.v1beta1.GkeHubMembershipService.ListMemberships", + "async": true, + "parameters": [ + { + "name": "parent", + "type": "TYPE_STRING" + }, + { + "name": "page_size", + "type": "TYPE_INT32" + }, + { + "name": "page_token", + "type": "TYPE_STRING" + }, + { + "name": "filter", + "type": "TYPE_STRING" + }, + { + "name": "order_by", + "type": "TYPE_STRING" + } + ], + "resultType": ".google.cloud.gkehub.v1beta1.ListMembershipsResponse", + "client": { + "shortName": "GkeHubMembershipServiceClient", + "fullName": "google.cloud.gkehub.v1beta1.GkeHubMembershipServiceClient" + }, + "method": { + "shortName": "ListMemberships", + "fullName": "google.cloud.gkehub.v1beta1.GkeHubMembershipService.ListMemberships", + "service": { + "shortName": "GkeHubMembershipService", + "fullName": "google.cloud.gkehub.v1beta1.GkeHubMembershipService" + } + } + } + }, + { + "regionTag": "gkehub_v1beta1_generated_GkeHubMembershipService_GetMembership_async", + "title": "GkeHubMembershipService getMembership Sample", + "origin": "API_DEFINITION", + "description": " Gets the details of a Membership.", + "canonical": true, + "file": "gke_hub_membership_service.get_membership.js", + "language": "JAVASCRIPT", + "segments": [ + { + "start": 25, + "end": 51, + "type": "FULL" + } + ], + "clientMethod": { + "shortName": "GetMembership", + "fullName": "google.cloud.gkehub.v1beta1.GkeHubMembershipService.GetMembership", + "async": true, + "parameters": [ + { + "name": "name", + "type": "TYPE_STRING" + } + ], + "resultType": ".google.cloud.gkehub.v1beta1.Membership", + "client": { + "shortName": "GkeHubMembershipServiceClient", + "fullName": "google.cloud.gkehub.v1beta1.GkeHubMembershipServiceClient" + }, + "method": { + "shortName": "GetMembership", + "fullName": "google.cloud.gkehub.v1beta1.GkeHubMembershipService.GetMembership", + "service": { + "shortName": "GkeHubMembershipService", + "fullName": "google.cloud.gkehub.v1beta1.GkeHubMembershipService" + } + } + } + }, + { + "regionTag": "gkehub_v1beta1_generated_GkeHubMembershipService_CreateMembership_async", + "title": "GkeHubMembershipService createMembership Sample", + "origin": "API_DEFINITION", + "description": " Creates a new Membership. **This is currently only supported for GKE clusters on Google Cloud**. To register other clusters, follow the instructions at https://cloud.google.com/anthos/multicluster-management/connect/registering-a-cluster.", + "canonical": true, + "file": "gke_hub_membership_service.create_membership.js", + "language": "JAVASCRIPT", + "segments": [ + { + "start": 25, + "end": 82, + "type": "FULL" + } + ], + "clientMethod": { + "shortName": "CreateMembership", + "fullName": "google.cloud.gkehub.v1beta1.GkeHubMembershipService.CreateMembership", + "async": true, + "parameters": [ + { + "name": "parent", + "type": "TYPE_STRING" + }, + { + "name": "membership_id", + "type": "TYPE_STRING" + }, + { + "name": "resource", + "type": ".google.cloud.gkehub.v1beta1.Membership" + }, + { + "name": "request_id", + "type": "TYPE_STRING" + } + ], + "resultType": ".google.longrunning.Operation", + "client": { + "shortName": "GkeHubMembershipServiceClient", + "fullName": "google.cloud.gkehub.v1beta1.GkeHubMembershipServiceClient" + }, + "method": { + "shortName": "CreateMembership", + "fullName": "google.cloud.gkehub.v1beta1.GkeHubMembershipService.CreateMembership", + "service": { + "shortName": "GkeHubMembershipService", + "fullName": "google.cloud.gkehub.v1beta1.GkeHubMembershipService" + } + } + } + }, + { + "regionTag": "gkehub_v1beta1_generated_GkeHubMembershipService_DeleteMembership_async", + "title": "GkeHubMembershipService deleteMembership Sample", + "origin": "API_DEFINITION", + "description": " Removes a Membership. **This is currently only supported for GKE clusters on Google Cloud**. To unregister other clusters, follow the instructions at https://cloud.google.com/anthos/multicluster-management/connect/unregistering-a-cluster.", + "canonical": true, + "file": "gke_hub_membership_service.delete_membership.js", + "language": "JAVASCRIPT", + "segments": [ + { + "start": 25, + "end": 66, + "type": "FULL" + } + ], + "clientMethod": { + "shortName": "DeleteMembership", + "fullName": "google.cloud.gkehub.v1beta1.GkeHubMembershipService.DeleteMembership", + "async": true, + "parameters": [ + { + "name": "name", + "type": "TYPE_STRING" + }, + { + "name": "request_id", + "type": "TYPE_STRING" + } + ], + "resultType": ".google.longrunning.Operation", + "client": { + "shortName": "GkeHubMembershipServiceClient", + "fullName": "google.cloud.gkehub.v1beta1.GkeHubMembershipServiceClient" + }, + "method": { + "shortName": "DeleteMembership", + "fullName": "google.cloud.gkehub.v1beta1.GkeHubMembershipService.DeleteMembership", + "service": { + "shortName": "GkeHubMembershipService", + "fullName": "google.cloud.gkehub.v1beta1.GkeHubMembershipService" + } + } + } + }, + { + "regionTag": "gkehub_v1beta1_generated_GkeHubMembershipService_UpdateMembership_async", + "title": "GkeHubMembershipService updateMembership Sample", + "origin": "API_DEFINITION", + "description": " Updates an existing Membership.", + "canonical": true, + "file": "gke_hub_membership_service.update_membership.js", + "language": "JAVASCRIPT", + "segments": [ + { + "start": 25, + "end": 84, + "type": "FULL" + } + ], + "clientMethod": { + "shortName": "UpdateMembership", + "fullName": "google.cloud.gkehub.v1beta1.GkeHubMembershipService.UpdateMembership", + "async": true, + "parameters": [ + { + "name": "name", + "type": "TYPE_STRING" + }, + { + "name": "update_mask", + "type": ".google.protobuf.FieldMask" + }, + { + "name": "resource", + "type": ".google.cloud.gkehub.v1beta1.Membership" + }, + { + "name": "request_id", + "type": "TYPE_STRING" + } + ], + "resultType": ".google.longrunning.Operation", + "client": { + "shortName": "GkeHubMembershipServiceClient", + "fullName": "google.cloud.gkehub.v1beta1.GkeHubMembershipServiceClient" + }, + "method": { + "shortName": "UpdateMembership", + "fullName": "google.cloud.gkehub.v1beta1.GkeHubMembershipService.UpdateMembership", + "service": { + "shortName": "GkeHubMembershipService", + "fullName": "google.cloud.gkehub.v1beta1.GkeHubMembershipService" + } + } + } + }, + { + "regionTag": "gkehub_v1beta1_generated_GkeHubMembershipService_GenerateConnectManifest_async", + "title": "GkeHubMembershipService generateConnectManifest Sample", + "origin": "API_DEFINITION", + "description": " Generates the manifest for deployment of the GKE connect agent. **This method is used internally by Google-provided libraries.** Most clients should not need to call this method directly.", + "canonical": true, + "file": "gke_hub_membership_service.generate_connect_manifest.js", + "language": "JAVASCRIPT", + "segments": [ + { + "start": 25, + "end": 73, + "type": "FULL" + } + ], + "clientMethod": { + "shortName": "GenerateConnectManifest", + "fullName": "google.cloud.gkehub.v1beta1.GkeHubMembershipService.GenerateConnectManifest", + "async": true, + "parameters": [ + { + "name": "name", + "type": "TYPE_STRING" + }, + { + "name": "connect_agent", + "type": ".google.cloud.gkehub.v1beta1.ConnectAgent" + }, + { + "name": "version", + "type": "TYPE_STRING" + }, + { + "name": "is_upgrade", + "type": "TYPE_BOOL" + }, + { + "name": "registry", + "type": "TYPE_STRING" + }, + { + "name": "image_pull_secret_content", + "type": "TYPE_BYTES" + } + ], + "resultType": ".google.cloud.gkehub.v1beta1.GenerateConnectManifestResponse", + "client": { + "shortName": "GkeHubMembershipServiceClient", + "fullName": "google.cloud.gkehub.v1beta1.GkeHubMembershipServiceClient" + }, + "method": { + "shortName": "GenerateConnectManifest", + "fullName": "google.cloud.gkehub.v1beta1.GkeHubMembershipService.GenerateConnectManifest", + "service": { + "shortName": "GkeHubMembershipService", + "fullName": "google.cloud.gkehub.v1beta1.GkeHubMembershipService" + } + } + } + }, + { + "regionTag": "gkehub_v1beta1_generated_GkeHubMembershipService_ValidateExclusivity_async", + "title": "GkeHubMembershipService validateExclusivity Sample", + "origin": "API_DEFINITION", + "description": " ValidateExclusivity validates the state of exclusivity in the cluster. The validation does not depend on an existing Hub membership resource.", + "canonical": true, + "file": "gke_hub_membership_service.validate_exclusivity.js", + "language": "JAVASCRIPT", + "segments": [ + { + "start": 25, + "end": 62, + "type": "FULL" + } + ], + "clientMethod": { + "shortName": "ValidateExclusivity", + "fullName": "google.cloud.gkehub.v1beta1.GkeHubMembershipService.ValidateExclusivity", + "async": true, + "parameters": [ + { + "name": "parent", + "type": "TYPE_STRING" + }, + { + "name": "cr_manifest", + "type": "TYPE_STRING" + }, + { + "name": "intended_membership", + "type": "TYPE_STRING" + } + ], + "resultType": ".google.cloud.gkehub.v1beta1.ValidateExclusivityResponse", + "client": { + "shortName": "GkeHubMembershipServiceClient", + "fullName": "google.cloud.gkehub.v1beta1.GkeHubMembershipServiceClient" + }, + "method": { + "shortName": "ValidateExclusivity", + "fullName": "google.cloud.gkehub.v1beta1.GkeHubMembershipService.ValidateExclusivity", + "service": { + "shortName": "GkeHubMembershipService", + "fullName": "google.cloud.gkehub.v1beta1.GkeHubMembershipService" + } + } + } + }, + { + "regionTag": "gkehub_v1beta1_generated_GkeHubMembershipService_GenerateExclusivityManifest_async", + "title": "GkeHubMembershipService generateExclusivityManifest Sample", + "origin": "API_DEFINITION", + "description": " GenerateExclusivityManifest generates the manifests to update the exclusivity artifacts in the cluster if needed. Exclusivity artifacts include the Membership custom resource definition (CRD) and the singleton Membership custom resource (CR). Combined with ValidateExclusivity, exclusivity artifacts guarantee that a Kubernetes cluster is only registered to a single GKE Hub. The Membership CRD is versioned, and may require conversion when the GKE Hub API server begins serving a newer version of the CRD and corresponding CR. The response will be the converted CRD and CR if there are any differences between the versions.", + "canonical": true, + "file": "gke_hub_membership_service.generate_exclusivity_manifest.js", + "language": "JAVASCRIPT", + "segments": [ + { + "start": 25, + "end": 63, + "type": "FULL" + } + ], + "clientMethod": { + "shortName": "GenerateExclusivityManifest", + "fullName": "google.cloud.gkehub.v1beta1.GkeHubMembershipService.GenerateExclusivityManifest", + "async": true, + "parameters": [ + { + "name": "name", + "type": "TYPE_STRING" + }, + { + "name": "crd_manifest", + "type": "TYPE_STRING" + }, + { + "name": "cr_manifest", + "type": "TYPE_STRING" + } + ], + "resultType": ".google.cloud.gkehub.v1beta1.GenerateExclusivityManifestResponse", + "client": { + "shortName": "GkeHubMembershipServiceClient", + "fullName": "google.cloud.gkehub.v1beta1.GkeHubMembershipServiceClient" + }, + "method": { + "shortName": "GenerateExclusivityManifest", + "fullName": "google.cloud.gkehub.v1beta1.GkeHubMembershipService.GenerateExclusivityManifest", + "service": { + "shortName": "GkeHubMembershipService", + "fullName": "google.cloud.gkehub.v1beta1.GkeHubMembershipService" + } + } + } + } + ] +} diff --git a/packages/google-cloud-gkehub/src/v1/gke_hub_client.ts b/packages/google-cloud-gkehub/src/v1/gke_hub_client.ts index a65276ecbd3..81aef1c61a3 100644 --- a/packages/google-cloud-gkehub/src/v1/gke_hub_client.ts +++ b/packages/google-cloud-gkehub/src/v1/gke_hub_client.ts @@ -2390,9 +2390,8 @@ export class GkeHubClient { * @returns {Promise} A promise that resolves when the client is closed. */ close(): Promise { - this.initialize(); - if (!this._terminated) { - return this.gkeHubStub!.then(stub => { + if (this.gkeHubStub && !this._terminated) { + return this.gkeHubStub.then(stub => { this._terminated = true; stub.close(); this.operationsClient.close(); diff --git a/packages/google-cloud-gkehub/src/v1alpha/gke_hub_client.ts b/packages/google-cloud-gkehub/src/v1alpha/gke_hub_client.ts index bd9686bfab4..0b34368969c 100644 --- a/packages/google-cloud-gkehub/src/v1alpha/gke_hub_client.ts +++ b/packages/google-cloud-gkehub/src/v1alpha/gke_hub_client.ts @@ -1270,9 +1270,8 @@ export class GkeHubClient { * @returns {Promise} A promise that resolves when the client is closed. */ close(): Promise { - this.initialize(); - if (!this._terminated) { - return this.gkeHubStub!.then(stub => { + if (this.gkeHubStub && !this._terminated) { + return this.gkeHubStub.then(stub => { this._terminated = true; stub.close(); this.operationsClient.close(); diff --git a/packages/google-cloud-gkehub/src/v1alpha2/gke_hub_client.ts b/packages/google-cloud-gkehub/src/v1alpha2/gke_hub_client.ts index e254a84a9b3..8933f42211e 100644 --- a/packages/google-cloud-gkehub/src/v1alpha2/gke_hub_client.ts +++ b/packages/google-cloud-gkehub/src/v1alpha2/gke_hub_client.ts @@ -1548,9 +1548,8 @@ export class GkeHubClient { * @returns {Promise} A promise that resolves when the client is closed. */ close(): Promise { - this.initialize(); - if (!this._terminated) { - return this.gkeHubStub!.then(stub => { + if (this.gkeHubStub && !this._terminated) { + return this.gkeHubStub.then(stub => { this._terminated = true; stub.close(); this.operationsClient.close(); diff --git a/packages/google-cloud-gkehub/src/v1beta/gke_hub_client.ts b/packages/google-cloud-gkehub/src/v1beta/gke_hub_client.ts index b2da20f7d32..a8a5e941200 100644 --- a/packages/google-cloud-gkehub/src/v1beta/gke_hub_client.ts +++ b/packages/google-cloud-gkehub/src/v1beta/gke_hub_client.ts @@ -1270,9 +1270,8 @@ export class GkeHubClient { * @returns {Promise} A promise that resolves when the client is closed. */ close(): Promise { - this.initialize(); - if (!this._terminated) { - return this.gkeHubStub!.then(stub => { + if (this.gkeHubStub && !this._terminated) { + return this.gkeHubStub.then(stub => { this._terminated = true; stub.close(); this.operationsClient.close(); diff --git a/packages/google-cloud-gkehub/src/v1beta1/gke_hub_membership_service_client.ts b/packages/google-cloud-gkehub/src/v1beta1/gke_hub_membership_service_client.ts index d8b79be85fe..6263c0834bb 100644 --- a/packages/google-cloud-gkehub/src/v1beta1/gke_hub_membership_service_client.ts +++ b/packages/google-cloud-gkehub/src/v1beta1/gke_hub_membership_service_client.ts @@ -1646,9 +1646,8 @@ export class GkeHubMembershipServiceClient { * @returns {Promise} A promise that resolves when the client is closed. */ close(): Promise { - this.initialize(); - if (!this._terminated) { - return this.gkeHubMembershipServiceStub!.then(stub => { + if (this.gkeHubMembershipServiceStub && !this._terminated) { + return this.gkeHubMembershipServiceStub.then(stub => { this._terminated = true; stub.close(); this.operationsClient.close(); diff --git a/packages/google-cloud-gkehub/test/gapic_gke_hub_membership_service_v1beta1.ts b/packages/google-cloud-gkehub/test/gapic_gke_hub_membership_service_v1beta1.ts index 45f6e5f82c9..ebe1f5a8b9f 100644 --- a/packages/google-cloud-gkehub/test/gapic_gke_hub_membership_service_v1beta1.ts +++ b/packages/google-cloud-gkehub/test/gapic_gke_hub_membership_service_v1beta1.ts @@ -191,13 +191,29 @@ describe('v1beta1.GkeHubMembershipServiceClient', () => { assert(client.gkeHubMembershipServiceStub); }); - it('has close method', () => { + it('has close method for the initialized client', done => { const client = new gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient({ credentials: {client_email: 'bogus', private_key: 'bogus'}, projectId: 'bogus', }); - client.close(); + client.initialize(); + assert(client.gkeHubMembershipServiceStub); + client.close().then(() => { + done(); + }); + }); + + it('has close method for the non-initialized client', done => { + const client = + new gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + assert.strictEqual(client.gkeHubMembershipServiceStub, undefined); + client.close().then(() => { + done(); + }); }); it('has getProjectId method', async () => { @@ -354,6 +370,25 @@ describe('v1beta1.GkeHubMembershipServiceClient', () => { .calledWith(request, expectedOptions, undefined) ); }); + + it('invokes getMembership with closed client', async () => { + const client = + new gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient( + { + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + } + ); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.gkehub.v1beta1.GetMembershipRequest() + ); + request.name = ''; + const expectedHeaderRequestParams = 'name='; + const expectedError = new Error('The client has already been closed.'); + client.close(); + await assert.rejects(client.getMembership(request), expectedError); + }); }); describe('generateConnectManifest', () => { @@ -478,6 +513,28 @@ describe('v1beta1.GkeHubMembershipServiceClient', () => { .calledWith(request, expectedOptions, undefined) ); }); + + it('invokes generateConnectManifest with closed client', async () => { + const client = + new gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient( + { + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + } + ); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.gkehub.v1beta1.GenerateConnectManifestRequest() + ); + request.name = ''; + const expectedHeaderRequestParams = 'name='; + const expectedError = new Error('The client has already been closed.'); + client.close(); + await assert.rejects( + client.generateConnectManifest(request), + expectedError + ); + }); }); describe('validateExclusivity', () => { @@ -599,6 +656,25 @@ describe('v1beta1.GkeHubMembershipServiceClient', () => { .calledWith(request, expectedOptions, undefined) ); }); + + it('invokes validateExclusivity with closed client', async () => { + const client = + new gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient( + { + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + } + ); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.gkehub.v1beta1.ValidateExclusivityRequest() + ); + request.parent = ''; + const expectedHeaderRequestParams = 'parent='; + const expectedError = new Error('The client has already been closed.'); + client.close(); + await assert.rejects(client.validateExclusivity(request), expectedError); + }); }); describe('generateExclusivityManifest', () => { @@ -723,6 +799,28 @@ describe('v1beta1.GkeHubMembershipServiceClient', () => { .calledWith(request, expectedOptions, undefined) ); }); + + it('invokes generateExclusivityManifest with closed client', async () => { + const client = + new gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient( + { + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + } + ); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.gkehub.v1beta1.GenerateExclusivityManifestRequest() + ); + request.name = ''; + const expectedHeaderRequestParams = 'name='; + const expectedError = new Error('The client has already been closed.'); + client.close(); + await assert.rejects( + client.generateExclusivityManifest(request), + expectedError + ); + }); }); describe('createMembership', () => { diff --git a/packages/google-cloud-gkehub/test/gapic_gke_hub_v1.ts b/packages/google-cloud-gkehub/test/gapic_gke_hub_v1.ts index 1da77b668c6..2ac000a5b20 100644 --- a/packages/google-cloud-gkehub/test/gapic_gke_hub_v1.ts +++ b/packages/google-cloud-gkehub/test/gapic_gke_hub_v1.ts @@ -183,12 +183,27 @@ describe('v1.GkeHubClient', () => { assert(client.gkeHubStub); }); - it('has close method', () => { + it('has close method for the initialized client', done => { const client = new gkehubModule.v1.GkeHubClient({ credentials: {client_email: 'bogus', private_key: 'bogus'}, projectId: 'bogus', }); - client.close(); + client.initialize(); + assert(client.gkeHubStub); + client.close().then(() => { + done(); + }); + }); + + it('has close method for the non-initialized client', done => { + const client = new gkehubModule.v1.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + assert.strictEqual(client.gkeHubStub, undefined); + client.close().then(() => { + done(); + }); }); it('has getProjectId method', async () => { @@ -334,6 +349,22 @@ describe('v1.GkeHubClient', () => { .calledWith(request, expectedOptions, undefined) ); }); + + it('invokes getMembership with closed client', async () => { + const client = new gkehubModule.v1.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.gkehub.v1.GetMembershipRequest() + ); + request.name = ''; + const expectedHeaderRequestParams = 'name='; + const expectedError = new Error('The client has already been closed.'); + client.close(); + await assert.rejects(client.getMembership(request), expectedError); + }); }); describe('getFeature', () => { @@ -445,6 +476,22 @@ describe('v1.GkeHubClient', () => { .calledWith(request, expectedOptions, undefined) ); }); + + it('invokes getFeature with closed client', async () => { + const client = new gkehubModule.v1.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.gkehub.v1.GetFeatureRequest() + ); + request.name = ''; + const expectedHeaderRequestParams = 'name='; + const expectedError = new Error('The client has already been closed.'); + client.close(); + await assert.rejects(client.getFeature(request), expectedError); + }); }); describe('generateConnectManifest', () => { @@ -560,6 +607,25 @@ describe('v1.GkeHubClient', () => { .calledWith(request, expectedOptions, undefined) ); }); + + it('invokes generateConnectManifest with closed client', async () => { + const client = new gkehubModule.v1.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.gkehub.v1.GenerateConnectManifestRequest() + ); + request.name = ''; + const expectedHeaderRequestParams = 'name='; + const expectedError = new Error('The client has already been closed.'); + client.close(); + await assert.rejects( + client.generateConnectManifest(request), + expectedError + ); + }); }); describe('createMembership', () => { diff --git a/packages/google-cloud-gkehub/test/gapic_gke_hub_v1alpha.ts b/packages/google-cloud-gkehub/test/gapic_gke_hub_v1alpha.ts index ed71ef3ce87..6ac6d0e062d 100644 --- a/packages/google-cloud-gkehub/test/gapic_gke_hub_v1alpha.ts +++ b/packages/google-cloud-gkehub/test/gapic_gke_hub_v1alpha.ts @@ -183,12 +183,27 @@ describe('v1alpha.GkeHubClient', () => { assert(client.gkeHubStub); }); - it('has close method', () => { + it('has close method for the initialized client', done => { const client = new gkehubModule.v1alpha.GkeHubClient({ credentials: {client_email: 'bogus', private_key: 'bogus'}, projectId: 'bogus', }); - client.close(); + client.initialize(); + assert(client.gkeHubStub); + client.close().then(() => { + done(); + }); + }); + + it('has close method for the non-initialized client', done => { + const client = new gkehubModule.v1alpha.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + assert.strictEqual(client.gkeHubStub, undefined); + client.close().then(() => { + done(); + }); }); it('has getProjectId method', async () => { @@ -334,6 +349,22 @@ describe('v1alpha.GkeHubClient', () => { .calledWith(request, expectedOptions, undefined) ); }); + + it('invokes getFeature with closed client', async () => { + const client = new gkehubModule.v1alpha.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.gkehub.v1alpha.GetFeatureRequest() + ); + request.name = ''; + const expectedHeaderRequestParams = 'name='; + const expectedError = new Error('The client has already been closed.'); + client.close(); + await assert.rejects(client.getFeature(request), expectedError); + }); }); describe('createFeature', () => { diff --git a/packages/google-cloud-gkehub/test/gapic_gke_hub_v1alpha2.ts b/packages/google-cloud-gkehub/test/gapic_gke_hub_v1alpha2.ts index 6b27297a3b3..8fb93f0c285 100644 --- a/packages/google-cloud-gkehub/test/gapic_gke_hub_v1alpha2.ts +++ b/packages/google-cloud-gkehub/test/gapic_gke_hub_v1alpha2.ts @@ -183,12 +183,27 @@ describe('v1alpha2.GkeHubClient', () => { assert(client.gkeHubStub); }); - it('has close method', () => { + it('has close method for the initialized client', done => { const client = new gkehubModule.v1alpha2.GkeHubClient({ credentials: {client_email: 'bogus', private_key: 'bogus'}, projectId: 'bogus', }); - client.close(); + client.initialize(); + assert(client.gkeHubStub); + client.close().then(() => { + done(); + }); + }); + + it('has close method for the non-initialized client', done => { + const client = new gkehubModule.v1alpha2.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + assert.strictEqual(client.gkeHubStub, undefined); + client.close().then(() => { + done(); + }); }); it('has getProjectId method', async () => { @@ -334,6 +349,22 @@ describe('v1alpha2.GkeHubClient', () => { .calledWith(request, expectedOptions, undefined) ); }); + + it('invokes getMembership with closed client', async () => { + const client = new gkehubModule.v1alpha2.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.gkehub.v1alpha2.GetMembershipRequest() + ); + request.name = ''; + const expectedHeaderRequestParams = 'name='; + const expectedError = new Error('The client has already been closed.'); + client.close(); + await assert.rejects(client.getMembership(request), expectedError); + }); }); describe('generateConnectManifest', () => { @@ -449,6 +480,25 @@ describe('v1alpha2.GkeHubClient', () => { .calledWith(request, expectedOptions, undefined) ); }); + + it('invokes generateConnectManifest with closed client', async () => { + const client = new gkehubModule.v1alpha2.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.gkehub.v1alpha2.GenerateConnectManifestRequest() + ); + request.name = ''; + const expectedHeaderRequestParams = 'name='; + const expectedError = new Error('The client has already been closed.'); + client.close(); + await assert.rejects( + client.generateConnectManifest(request), + expectedError + ); + }); }); describe('initializeHub', () => { @@ -560,6 +610,22 @@ describe('v1alpha2.GkeHubClient', () => { .calledWith(request, expectedOptions, undefined) ); }); + + it('invokes initializeHub with closed client', async () => { + const client = new gkehubModule.v1alpha2.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.gkehub.v1alpha2.InitializeHubRequest() + ); + request.project = ''; + const expectedHeaderRequestParams = 'project='; + const expectedError = new Error('The client has already been closed.'); + client.close(); + await assert.rejects(client.initializeHub(request), expectedError); + }); }); describe('createMembership', () => { diff --git a/packages/google-cloud-gkehub/test/gapic_gke_hub_v1beta.ts b/packages/google-cloud-gkehub/test/gapic_gke_hub_v1beta.ts index af0d1992d98..56cee1e8bed 100644 --- a/packages/google-cloud-gkehub/test/gapic_gke_hub_v1beta.ts +++ b/packages/google-cloud-gkehub/test/gapic_gke_hub_v1beta.ts @@ -183,12 +183,27 @@ describe('v1beta.GkeHubClient', () => { assert(client.gkeHubStub); }); - it('has close method', () => { + it('has close method for the initialized client', done => { const client = new gkehubModule.v1beta.GkeHubClient({ credentials: {client_email: 'bogus', private_key: 'bogus'}, projectId: 'bogus', }); - client.close(); + client.initialize(); + assert(client.gkeHubStub); + client.close().then(() => { + done(); + }); + }); + + it('has close method for the non-initialized client', done => { + const client = new gkehubModule.v1beta.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + assert.strictEqual(client.gkeHubStub, undefined); + client.close().then(() => { + done(); + }); }); it('has getProjectId method', async () => { @@ -334,6 +349,22 @@ describe('v1beta.GkeHubClient', () => { .calledWith(request, expectedOptions, undefined) ); }); + + it('invokes getFeature with closed client', async () => { + const client = new gkehubModule.v1beta.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.gkehub.v1beta.GetFeatureRequest() + ); + request.name = ''; + const expectedHeaderRequestParams = 'name='; + const expectedError = new Error('The client has already been closed.'); + client.close(); + await assert.rejects(client.getFeature(request), expectedError); + }); }); describe('createFeature', () => { From ff0c4d0fc7e94489283a65aeabbe0f8d36a0d38a Mon Sep 17 00:00:00 2001 From: "gcf-owl-bot[bot]" <78513119+gcf-owl-bot[bot]@users.noreply.github.com> Date: Wed, 23 Feb 2022 12:47:33 -0800 Subject: [PATCH 62/92] feat: added support for k8s_version field (#128) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * feat: added support for k8s_version field docs: k8s_version field is not part of resource_options struct Clients now generate the V1 or V1beta1 CRD based on Kubernetes server version. PiperOrigin-RevId: 430496281 Source-Link: https://github.com/googleapis/googleapis/commit/97cf70e32709059130dcf6d6aae1fe052f8eccbd Source-Link: https://github.com/googleapis/googleapis-gen/commit/9e753429777968b43e5661c25ef38565b5e231bf Copy-Tag: eyJwIjoiLmdpdGh1Yi8uT3dsQm90LnlhbWwiLCJoIjoiOWU3NTM0Mjk3Nzc5NjhiNDNlNTY2MWMyNWVmMzg1NjViNWUyMzFiZiJ9 * 🦉 Updates from OwlBot post-processor See https://github.com/googleapis/repo-automation-bots/blob/main/packages/owl-bot/README.md * 🦉 Updates from OwlBot post-processor See https://github.com/googleapis/repo-automation-bots/blob/main/packages/owl-bot/README.md Co-authored-by: Owl Bot --- .../cloud/gkehub/v1alpha2/membership.proto | 13 ++++++++--- .../google-cloud-gkehub/protos/protos.d.ts | 6 +++++ packages/google-cloud-gkehub/protos/protos.js | 22 +++++++++++++++++++ .../google-cloud-gkehub/protos/protos.json | 7 ++++++ 4 files changed, 45 insertions(+), 3 deletions(-) diff --git a/packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1alpha2/membership.proto b/packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1alpha2/membership.proto index 00bf8ef3d4d..bea0dff7574 100644 --- a/packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1alpha2/membership.proto +++ b/packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1alpha2/membership.proto @@ -1,4 +1,4 @@ -// Copyright 2021 Google LLC +// 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. @@ -305,6 +305,11 @@ message ResourceOptions { // This option should be set for clusters with Kubernetes apiserver versions // <1.16. bool v1beta1_crd = 2 [(google.api.field_behavior) = OPTIONAL]; + + // Major version of the Kubernetes cluster. This is only used to determine + // which version to use for the CustomResourceDefinition resources, + // `apiextensions/v1beta1` or`apiextensions/v1`. + string k8s_version = 3 [(google.api.field_behavior) = OPTIONAL]; } // GkeCluster contains information specific to GKE clusters. @@ -562,7 +567,8 @@ message DeleteMembershipRequest { message UpdateMembershipRequest { // Required. The Membership resource name in the format // `projects/*/locations/*/memberships/*`. - string name = 1 [(google.api.field_behavior) = REQUIRED]; + string name = 1 [ + (google.api.field_behavior) = REQUIRED]; // Required. Mask of fields to update. google.protobuf.FieldMask update_mask = 2 [(google.api.field_behavior) = REQUIRED]; @@ -584,7 +590,8 @@ message UpdateMembershipRequest { message GenerateConnectManifestRequest { // Required. The Membership resource name the Agent will associate with, in the format // `projects/*/locations/*/memberships/*`. - string name = 1 [(google.api.field_behavior) = REQUIRED]; + string name = 1 [ + (google.api.field_behavior) = REQUIRED]; // Optional. Namespace for GKE Connect agent resources. Defaults to `gke-connect`. // diff --git a/packages/google-cloud-gkehub/protos/protos.d.ts b/packages/google-cloud-gkehub/protos/protos.d.ts index 244728262cf..7ec32074cc6 100644 --- a/packages/google-cloud-gkehub/protos/protos.d.ts +++ b/packages/google-cloud-gkehub/protos/protos.d.ts @@ -18369,6 +18369,9 @@ export namespace google { /** ResourceOptions v1beta1Crd */ v1beta1Crd?: (boolean|null); + + /** ResourceOptions k8sVersion */ + k8sVersion?: (string|null); } /** Represents a ResourceOptions. */ @@ -18386,6 +18389,9 @@ export namespace google { /** ResourceOptions v1beta1Crd. */ public v1beta1Crd: boolean; + /** ResourceOptions k8sVersion. */ + public k8sVersion: string; + /** * Creates a new ResourceOptions instance using the specified properties. * @param [properties] Properties to set diff --git a/packages/google-cloud-gkehub/protos/protos.js b/packages/google-cloud-gkehub/protos/protos.js index ff9ea3b3ab6..e5312b6e2a6 100644 --- a/packages/google-cloud-gkehub/protos/protos.js +++ b/packages/google-cloud-gkehub/protos/protos.js @@ -46466,6 +46466,7 @@ * @interface IResourceOptions * @property {string|null} [connectVersion] ResourceOptions connectVersion * @property {boolean|null} [v1beta1Crd] ResourceOptions v1beta1Crd + * @property {string|null} [k8sVersion] ResourceOptions k8sVersion */ /** @@ -46499,6 +46500,14 @@ */ ResourceOptions.prototype.v1beta1Crd = false; + /** + * ResourceOptions k8sVersion. + * @member {string} k8sVersion + * @memberof google.cloud.gkehub.v1alpha2.ResourceOptions + * @instance + */ + ResourceOptions.prototype.k8sVersion = ""; + /** * Creates a new ResourceOptions instance using the specified properties. * @function create @@ -46527,6 +46536,8 @@ writer.uint32(/* id 1, wireType 2 =*/10).string(message.connectVersion); if (message.v1beta1Crd != null && Object.hasOwnProperty.call(message, "v1beta1Crd")) writer.uint32(/* id 2, wireType 0 =*/16).bool(message.v1beta1Crd); + if (message.k8sVersion != null && Object.hasOwnProperty.call(message, "k8sVersion")) + writer.uint32(/* id 3, wireType 2 =*/26).string(message.k8sVersion); return writer; }; @@ -46567,6 +46578,9 @@ case 2: message.v1beta1Crd = reader.bool(); break; + case 3: + message.k8sVersion = reader.string(); + break; default: reader.skipType(tag & 7); break; @@ -46608,6 +46622,9 @@ if (message.v1beta1Crd != null && message.hasOwnProperty("v1beta1Crd")) if (typeof message.v1beta1Crd !== "boolean") return "v1beta1Crd: boolean expected"; + if (message.k8sVersion != null && message.hasOwnProperty("k8sVersion")) + if (!$util.isString(message.k8sVersion)) + return "k8sVersion: string expected"; return null; }; @@ -46627,6 +46644,8 @@ message.connectVersion = String(object.connectVersion); if (object.v1beta1Crd != null) message.v1beta1Crd = Boolean(object.v1beta1Crd); + if (object.k8sVersion != null) + message.k8sVersion = String(object.k8sVersion); return message; }; @@ -46646,11 +46665,14 @@ if (options.defaults) { object.connectVersion = ""; object.v1beta1Crd = false; + object.k8sVersion = ""; } if (message.connectVersion != null && message.hasOwnProperty("connectVersion")) object.connectVersion = message.connectVersion; if (message.v1beta1Crd != null && message.hasOwnProperty("v1beta1Crd")) object.v1beta1Crd = message.v1beta1Crd; + if (message.k8sVersion != null && message.hasOwnProperty("k8sVersion")) + object.k8sVersion = message.k8sVersion; return object; }; diff --git a/packages/google-cloud-gkehub/protos/protos.json b/packages/google-cloud-gkehub/protos/protos.json index f59f01177ad..3a149dac181 100644 --- a/packages/google-cloud-gkehub/protos/protos.json +++ b/packages/google-cloud-gkehub/protos/protos.json @@ -4792,6 +4792,13 @@ "options": { "(google.api.field_behavior)": "OPTIONAL" } + }, + "k8sVersion": { + "type": "string", + "id": 3, + "options": { + "(google.api.field_behavior)": "OPTIONAL" + } } } }, From d9ccb5378cfd0592194793134551cbc6723570d7 Mon Sep 17 00:00:00 2001 From: "gcf-owl-bot[bot]" <78513119+gcf-owl-bot[bot]@users.noreply.github.com> Date: Thu, 24 Feb 2022 09:51:37 -0800 Subject: [PATCH 63/92] feat: added support for k8s_version field (#130) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * feat: added support for k8s_version field docs: k8s_version field is not part of resource_options struct Clients now generate the V1 or V1beta1 CRD based on Kubernetes server version. PiperOrigin-RevId: 430569173 Source-Link: https://github.com/googleapis/googleapis/commit/3c171936039b428e935a8186020c221e23b836d9 Source-Link: https://github.com/googleapis/googleapis-gen/commit/ae784406e300bf1c56d50111338b9272fb0473b5 Copy-Tag: eyJwIjoiLmdpdGh1Yi8uT3dsQm90LnlhbWwiLCJoIjoiYWU3ODQ0MDZlMzAwYmYxYzU2ZDUwMTExMzM4YjkyNzJmYjA0NzNiNSJ9 * 🦉 Updates from OwlBot post-processor See https://github.com/googleapis/repo-automation-bots/blob/main/packages/owl-bot/README.md * 🦉 Updates from OwlBot post-processor See https://github.com/googleapis/repo-automation-bots/blob/main/packages/owl-bot/README.md Co-authored-by: Owl Bot --- .../cloud/gkehub/v1beta1/membership.proto | 229 ++++++++++-------- .../google-cloud-gkehub/protos/protos.d.ts | 6 + packages/google-cloud-gkehub/protos/protos.js | 22 ++ .../google-cloud-gkehub/protos/protos.json | 7 + ...ub_membership_service.create_membership.js | 8 +- ...rship_service.generate_connect_manifest.js | 7 +- ...hub_membership_service.list_memberships.js | 14 +- ...ub_membership_service.update_membership.js | 4 +- ...membership_service.validate_exclusivity.js | 13 +- ..._metadata.google.cloud.gkehub.v1beta1.json | 4 +- .../gke_hub_membership_service_client.ts | 77 +++--- 11 files changed, 235 insertions(+), 156 deletions(-) diff --git a/packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1beta1/membership.proto b/packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1beta1/membership.proto index 80dedcc214d..932a650e27d 100644 --- a/packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1beta1/membership.proto +++ b/packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1beta1/membership.proto @@ -1,4 +1,4 @@ -// Copyright 2021 Google LLC +// 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. @@ -33,7 +33,8 @@ option php_namespace = "Google\\Cloud\\GkeHub\\V1beta1"; option ruby_package = "Google::Cloud::GkeHub::V1beta1"; // The GKE Hub MembershipService handles the registration of many Kubernetes -// clusters to Google Cloud, represented with the [Membership][google.cloud.gkehub.v1beta1.Membership] resource. +// clusters to Google Cloud, represented with the +// [Membership][google.cloud.gkehub.v1beta1.Membership] resource. // // GKE Hub is currently only available in the global region. // @@ -42,10 +43,12 @@ option ruby_package = "Google::Cloud::GkeHub::V1beta1"; // with Membership resources. service GkeHubMembershipService { option (google.api.default_host) = "gkehub.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/cloud-platform"; + option (google.api.oauth_scopes) = + "https://www.googleapis.com/auth/cloud-platform"; // Lists Memberships in a given project and location. - rpc ListMemberships(ListMembershipsRequest) returns (ListMembershipsResponse) { + rpc ListMemberships(ListMembershipsRequest) + returns (ListMembershipsResponse) { option (google.api.http) = { get: "/v1beta1/{parent=projects/*/locations/*}/memberships" }; @@ -65,7 +68,8 @@ service GkeHubMembershipService { // **This is currently only supported for GKE clusters on Google Cloud**. // To register other clusters, follow the instructions at // https://cloud.google.com/anthos/multicluster-management/connect/registering-a-cluster. - rpc CreateMembership(CreateMembershipRequest) returns (google.longrunning.Operation) { + rpc CreateMembership(CreateMembershipRequest) + returns (google.longrunning.Operation) { option (google.api.http) = { post: "/v1beta1/{parent=projects/*/locations/*}/memberships" body: "resource" @@ -82,7 +86,8 @@ service GkeHubMembershipService { // **This is currently only supported for GKE clusters on Google Cloud**. // To unregister other clusters, follow the instructions at // https://cloud.google.com/anthos/multicluster-management/connect/unregistering-a-cluster. - rpc DeleteMembership(DeleteMembershipRequest) returns (google.longrunning.Operation) { + rpc DeleteMembership(DeleteMembershipRequest) + returns (google.longrunning.Operation) { option (google.api.http) = { delete: "/v1beta1/{name=projects/*/locations/*/memberships/*}" }; @@ -94,7 +99,8 @@ service GkeHubMembershipService { } // Updates an existing Membership. - rpc UpdateMembership(UpdateMembershipRequest) returns (google.longrunning.Operation) { + rpc UpdateMembership(UpdateMembershipRequest) + returns (google.longrunning.Operation) { option (google.api.http) = { patch: "/v1beta1/{name=projects/*/locations/*/memberships/*}" body: "resource" @@ -110,7 +116,8 @@ service GkeHubMembershipService { // // **This method is used internally by Google-provided libraries.** // Most clients should not need to call this method directly. - rpc GenerateConnectManifest(GenerateConnectManifestRequest) returns (GenerateConnectManifestResponse) { + rpc GenerateConnectManifest(GenerateConnectManifestRequest) + returns (GenerateConnectManifestResponse) { option (google.api.http) = { get: "/v1beta1/{name=projects/*/locations/*/memberships/*}:generateConnectManifest" }; @@ -118,7 +125,8 @@ service GkeHubMembershipService { // ValidateExclusivity validates the state of exclusivity in the cluster. // The validation does not depend on an existing Hub membership resource. - rpc ValidateExclusivity(ValidateExclusivityRequest) returns (ValidateExclusivityResponse) { + rpc ValidateExclusivity(ValidateExclusivityRequest) + returns (ValidateExclusivityResponse) { option (google.api.http) = { get: "/v1beta1/{parent=projects/*/locations/*}/memberships:validateExclusivity" }; @@ -136,7 +144,8 @@ service GkeHubMembershipService { // Hub API server begins serving a newer version of the CRD and // corresponding CR. The response will be the converted CRD and CR if there // are any differences between the versions. - rpc GenerateExclusivityManifest(GenerateExclusivityManifestRequest) returns (GenerateExclusivityManifestResponse) { + rpc GenerateExclusivityManifest(GenerateExclusivityManifestRequest) + returns (GenerateExclusivityManifestResponse) { option (google.api.http) = { get: "/v1beta1/{name=projects/*/locations/*/memberships/*}:generateExclusivityManifest" }; @@ -169,8 +178,9 @@ message Membership { MULTI_CLOUD = 2; } - // Output only. The full, unique name of this Membership resource in the format - // `projects/*/locations/*/memberships/{membership_id}`, set during creation. + // Output only. The full, unique name of this Membership resource in the + // format `projects/*/locations/*/memberships/{membership_id}`, set during + // creation. // // `membership_id` must be a valid RFC 1123 compliant DNS label: // @@ -204,17 +214,21 @@ message Membership { Authority authority = 9 [(google.api.field_behavior) = OPTIONAL]; // Output only. When the Membership was created. - google.protobuf.Timestamp create_time = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; + google.protobuf.Timestamp create_time = 6 + [(google.api.field_behavior) = OUTPUT_ONLY]; // Output only. When the Membership was last updated. - google.protobuf.Timestamp update_time = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; + google.protobuf.Timestamp update_time = 7 + [(google.api.field_behavior) = OUTPUT_ONLY]; // Output only. When the Membership was deleted. - google.protobuf.Timestamp delete_time = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; + google.protobuf.Timestamp delete_time = 8 + [(google.api.field_behavior) = OUTPUT_ONLY]; - // Optional. An externally-generated and managed ID for this Membership. This ID may - // be modified after creation, but this is not recommended. For GKE clusters, - // external_id is managed by the Hub API and updates will be ignored. + // Optional. An externally-generated and managed ID for this Membership. This + // ID may be modified after creation, but this is not recommended. For GKE + // clusters, external_id is managed by the Hub API and updates will be + // ignored. // // The ID must match the regex: `[a-zA-Z0-9][a-zA-Z0-9_\-\.]*` // @@ -222,19 +236,22 @@ message Membership { // set to the UID of the `kube-system` namespace object. string external_id = 10 [(google.api.field_behavior) = OPTIONAL]; - // Output only. For clusters using Connect, the timestamp of the most recent connection - // established with Google Cloud. This time is updated every several minutes, - // not continuously. For clusters that do not use GKE Connect, or that have - // never connected successfully, this field will be unset. - google.protobuf.Timestamp last_connection_time = 11 [(google.api.field_behavior) = OUTPUT_ONLY]; + // Output only. For clusters using Connect, the timestamp of the most recent + // connection established with Google Cloud. This time is updated every + // several minutes, not continuously. For clusters that do not use GKE + // Connect, or that have never connected successfully, this field will be + // unset. + google.protobuf.Timestamp last_connection_time = 11 + [(google.api.field_behavior) = OUTPUT_ONLY]; - // Output only. Google-generated UUID for this resource. This is unique across all - // Membership resources. If a Membership resource is deleted and another + // Output only. Google-generated UUID for this resource. This is unique across + // all Membership resources. If a Membership resource is deleted and another // resource with the same name is created, it gets a different unique_id. string unique_id = 12 [(google.api.field_behavior) = OUTPUT_ONLY]; // Optional. The infrastructure type this Membership is running on. - InfrastructureType infrastructure_type = 13 [(google.api.field_behavior) = OPTIONAL]; + InfrastructureType infrastructure_type = 13 + [(google.api.field_behavior) = OPTIONAL]; } // MembershipEndpoint contains information needed to contact a Kubernetes API, @@ -249,29 +266,32 @@ message MembershipEndpoint { OnPremCluster on_prem_cluster = 7 [(google.api.field_behavior) = OPTIONAL]; // Optional. Specific information for a GKE Multi-Cloud cluster. - MultiCloudCluster multi_cloud_cluster = 8 [(google.api.field_behavior) = OPTIONAL]; + MultiCloudCluster multi_cloud_cluster = 8 + [(google.api.field_behavior) = OPTIONAL]; } // Output only. Useful Kubernetes-specific metadata. - KubernetesMetadata kubernetes_metadata = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; + KubernetesMetadata kubernetes_metadata = 5 + [(google.api.field_behavior) = OUTPUT_ONLY]; - // Optional. The in-cluster Kubernetes Resources that should be applied for a correctly - // registered cluster, in the steady state. These resources: + // Optional. The in-cluster Kubernetes Resources that should be applied for a + // correctly registered cluster, in the steady state. These resources: // // * Ensure that the cluster is exclusively registered to one and only one // Hub Membership. // * Propagate Workload Pool Information available in the Membership // Authority field. // * Ensure proper initial configuration of default Hub Features. - KubernetesResource kubernetes_resource = 6 [(google.api.field_behavior) = OPTIONAL]; + KubernetesResource kubernetes_resource = 6 + [(google.api.field_behavior) = OPTIONAL]; } // KubernetesResource contains the YAML manifests and configuration for // Membership Kubernetes resources in the cluster. After CreateMembership or // UpdateMembership, these resources should be re-applied in the cluster. message KubernetesResource { - // Input only. The YAML representation of the Membership CR. This field is ignored for GKE - // clusters where Hub can read the CR directly. + // Input only. The YAML representation of the Membership CR. This field is + // ignored for GKE clusters where Hub can read the CR directly. // // Callers should provide the CR that is currently present in the cluster // during CreateMembership or UpdateMembership, or leave this field empty if @@ -279,15 +299,16 @@ message KubernetesResource { // registered with another Membership. string membership_cr_manifest = 1 [(google.api.field_behavior) = INPUT_ONLY]; - // Output only. Additional Kubernetes resources that need to be applied to the cluster - // after Membership creation, and after every update. + // Output only. Additional Kubernetes resources that need to be applied to the + // cluster after Membership creation, and after every update. // // This field is only populated in the Membership returned from a successful // long-running operation from CreateMembership or UpdateMembership. It is not // populated during normal GetMembership or ListMemberships requests. To get // the resource manifest after the initial registration, the caller should // make a UpdateMembership call with an empty field mask. - repeated ResourceManifest membership_resources = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; + repeated ResourceManifest membership_resources = 2 + [(google.api.field_behavior) = OUTPUT_ONLY]; // Output only. The Kubernetes resources for installing the GKE Connect agent // @@ -296,7 +317,8 @@ message KubernetesResource { // populated during normal GetMembership or ListMemberships requests. To get // the resource manifest after the initial registration, the caller should // make a UpdateMembership call with an empty field mask. - repeated ResourceManifest connect_resources = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; + repeated ResourceManifest connect_resources = 3 + [(google.api.field_behavior) = OUTPUT_ONLY]; // Optional. Options for Kubernetes resource generation. ResourceOptions resource_options = 4 [(google.api.field_behavior) = OPTIONAL]; @@ -304,9 +326,9 @@ message KubernetesResource { // ResourceOptions represent options for Kubernetes resource generation. message ResourceOptions { - // Optional. The Connect agent version to use for connect_resources. Defaults to the - // latest GKE Connect version. The version must be a currently supported - // version, obsolete versions will be rejected. + // Optional. The Connect agent version to use for connect_resources. Defaults + // to the latest GKE Connect version. The version must be a currently + // supported version, obsolete versions will be rejected. string connect_version = 1 [(google.api.field_behavior) = OPTIONAL]; // Optional. Use `apiextensions/v1beta1` instead of `apiextensions/v1` for @@ -314,6 +336,11 @@ message ResourceOptions { // This option should be set for clusters with Kubernetes apiserver versions // <1.16. bool v1beta1_crd = 2 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. Major version of the Kubernetes cluster. This is only used to + // determine which version to use for the CustomResourceDefinition resources, + // `apiextensions/v1beta1` or`apiextensions/v1`. + string k8s_version = 3 [(google.api.field_behavior) = OPTIONAL]; } // ResourceManifest represents a single Kubernetes resource to be applied to @@ -339,14 +366,15 @@ message GkeCluster { // Zonal clusters are also supported. string resource_link = 1 [(google.api.field_behavior) = IMMUTABLE]; - // Output only. If cluster_missing is set then it denotes that the GKE cluster no longer - // exists in the GKE Control Plane. + // Output only. If cluster_missing is set then it denotes that the GKE cluster + // no longer exists in the GKE Control Plane. bool cluster_missing = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; } // OnPremCluster contains information specific to GKE On-Prem clusters. message OnPremCluster { - // Immutable. Self-link of the GCP resource for the GKE On-Prem cluster. For example: + // Immutable. Self-link of the GCP resource for the GKE On-Prem cluster. For + // example: // // //gkeonprem.googleapis.com/projects/my-project/locations/us-west1-a/vmwareClusters/my-cluster // //gkeonprem.googleapis.com/projects/my-project/locations/us-west1-a/bareMetalClusters/my-cluster @@ -363,8 +391,8 @@ message OnPremCluster { // MultiCloudCluster contains information specific to GKE Multi-Cloud clusters. message MultiCloudCluster { - // Immutable. Self-link of the GCP resource for the GKE Multi-Cloud cluster. For - // example: + // Immutable. Self-link of the GCP resource for the GKE Multi-Cloud cluster. + // For example: // // //gkemulticloud.googleapis.com/projects/my-project/locations/us-west1-a/awsClusters/my-cluster // //gkemulticloud.googleapis.com/projects/my-project/locations/us-west1-a/azureClusters/my-cluster @@ -379,12 +407,14 @@ message MultiCloudCluster { // KubernetesMetadata provides informational metadata for Memberships // representing Kubernetes clusters. message KubernetesMetadata { - // Output only. Kubernetes API server version string as reported by '/version'. - string kubernetes_api_server_version = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Node providerID as reported by the first node in the list of nodes on - // the Kubernetes endpoint. On Kubernetes platforms that support zero-node - // clusters (like GKE-on-GCP), the node_count will be zero and the + // Output only. Kubernetes API server version string as reported by + // '/version'. + string kubernetes_api_server_version = 1 + [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Node providerID as reported by the first node in the list of + // nodes on the Kubernetes endpoint. On Kubernetes platforms that support + // zero-node clusters (like GKE-on-GCP), the node_count will be zero and the // node_provider_id will be empty. string node_provider_id = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; @@ -394,22 +424,23 @@ message KubernetesMetadata { // Output only. vCPU count as reported by Kubernetes nodes resources. int32 vcpu_count = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; - // Output only. The total memory capacity as reported by the sum of all Kubernetes nodes - // resources, defined in MB. + // Output only. The total memory capacity as reported by the sum of all + // Kubernetes nodes resources, defined in MB. int32 memory_mb = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; - // Output only. The time at which these details were last updated. This update_time is - // different from the Membership-level update_time since EndpointDetails are - // updated internally for API consumers. - google.protobuf.Timestamp update_time = 100 [(google.api.field_behavior) = OUTPUT_ONLY]; + // Output only. The time at which these details were last updated. This + // update_time is different from the Membership-level update_time since + // EndpointDetails are updated internally for API consumers. + google.protobuf.Timestamp update_time = 100 + [(google.api.field_behavior) = OUTPUT_ONLY]; } // Authority encodes how Google will recognize identities from this Membership. // See the workload identity documentation for more details: // https://cloud.google.com/kubernetes-engine/docs/how-to/workload-identity message Authority { - // Optional. A JSON Web Token (JWT) issuer URI. `issuer` must start with `https://` and - // be a valid URL with length <2000 characters. + // Optional. A JSON Web Token (JWT) issuer URI. `issuer` must start with + // `https://` and be a valid URL with length <2000 characters. // // If set, then Google will allow valid OIDC tokens from this issuer to // authenticate within the workload_identity_pool. OIDC discovery will be @@ -420,8 +451,8 @@ message Authority { // a new issuer (and re-enabling Workload Identity). string issuer = 1 [(google.api.field_behavior) = OPTIONAL]; - // Output only. The name of the workload identity pool in which `issuer` will be - // recognized. + // Output only. The name of the workload identity pool in which `issuer` will + // be recognized. // // There is a single Workload Identity Pool per Hub that is shared // between all Memberships that belong to that Hub. For a Hub hosted in @@ -429,11 +460,12 @@ message Authority { // although this is subject to change in newer versions of this API. string workload_identity_pool = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; - // Output only. An identity provider that reflects the `issuer` in the workload identity - // pool. + // Output only. An identity provider that reflects the `issuer` in the + // workload identity pool. string identity_provider = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; - // Optional. OIDC verification keys for this Membership in JWKS format (RFC 7517). + // Optional. OIDC verification keys for this Membership in JWKS format (RFC + // 7517). // // When this field is set, OIDC discovery will NOT be performed on `issuer`, // and instead OIDC tokens will be validated using this field. @@ -475,13 +507,13 @@ message MembershipState { // Request message for `GkeHubMembershipService.ListMemberships` method. message ListMembershipsRequest { - // Required. The parent (project and location) where the Memberships will be listed. - // Specified in the format `projects/*/locations/*`. + // Required. The parent (project and location) where the Memberships will be + // listed. Specified in the format `projects/*/locations/*`. string parent = 1 [(google.api.field_behavior) = REQUIRED]; - // Optional. When requesting a 'page' of resources, `page_size` specifies number of - // resources to return. If unspecified or set to 0, all resources will - // be returned. + // Optional. When requesting a 'page' of resources, `page_size` specifies + // number of resources to return. If unspecified or set to 0, all resources + // will be returned. int32 page_size = 2 [(google.api.field_behavior) = OPTIONAL]; // Optional. Token returned by previous call to `ListMemberships` which @@ -489,8 +521,8 @@ message ListMembershipsRequest { // resources. string page_token = 3 [(google.api.field_behavior) = OPTIONAL]; - // Optional. Lists Memberships that match the filter expression, following the syntax - // outlined in https://google.aip.dev/160. + // Optional. Lists Memberships that match the filter expression, following the + // syntax outlined in https://google.aip.dev/160. // // Examples: // @@ -539,12 +571,12 @@ message GetMembershipRequest { // Request message for the `GkeHubMembershipService.CreateMembership` method. message CreateMembershipRequest { - // Required. The parent (project and location) where the Memberships will be created. - // Specified in the format `projects/*/locations/*`. + // Required. The parent (project and location) where the Memberships will be + // created. Specified in the format `projects/*/locations/*`. string parent = 1 [(google.api.field_behavior) = REQUIRED]; - // Required. Client chosen ID for the membership. `membership_id` must be a valid RFC - // 1123 compliant DNS label: + // Required. Client chosen ID for the membership. `membership_id` must be a + // valid RFC 1123 compliant DNS label: // // 1. At most 63 characters in length // 2. It must consist of lower case alphanumeric characters or `-` @@ -601,9 +633,10 @@ message UpdateMembershipRequest { // `projects/[project_id]/locations/global/memberships/[membership_id]` string name = 1 [(google.api.field_behavior) = REQUIRED]; - // Required. Mask of fields to update. At least one field path must be specified in this - // mask. - google.protobuf.FieldMask update_mask = 2 [(google.api.field_behavior) = REQUIRED]; + // Required. Mask of fields to update. At least one field path must be + // specified in this mask. + google.protobuf.FieldMask update_mask = 2 + [(google.api.field_behavior) = REQUIRED]; // Required. Only fields specified in update_mask are updated. // If you specify a field in the update_mask but don't specify its value here @@ -635,14 +668,15 @@ message UpdateMembershipRequest { // method. // . message GenerateConnectManifestRequest { - // Required. The Membership resource name the Agent will associate with, in the format - // `projects/*/locations/*/memberships/*`. + // Required. The Membership resource name the Agent will associate with, in + // the format `projects/*/locations/*/memberships/*`. string name = 1 [(google.api.field_behavior) = REQUIRED]; // Optional. The connect agent to generate manifest for. ConnectAgent connect_agent = 2 [(google.api.field_behavior) = OPTIONAL]; - // Optional. The Connect agent version to use. Defaults to the most current version. + // Optional. The Connect agent version to use. Defaults to the most current + // version. string version = 3 [(google.api.field_behavior) = OPTIONAL]; // Optional. If true, generate the resources for upgrade only. Some resources @@ -690,14 +724,15 @@ message ConnectAgent { // Do not set. string name = 1 [deprecated = true]; - // Optional. URI of a proxy if connectivity from the agent to gkeconnect.googleapis.com - // requires the use of a proxy. Format must be in the form - // `http(s)://{proxy_address}`, depending on the HTTP/HTTPS protocol + // Optional. URI of a proxy if connectivity from the agent to + // gkeconnect.googleapis.com requires the use of a proxy. Format must be in + // the form `http(s)://{proxy_address}`, depending on the HTTP/HTTPS protocol // supported by the proxy. This will direct the connect agent's outbound // traffic through a HTTP(S) proxy. bytes proxy = 2 [(google.api.field_behavior) = OPTIONAL]; - // Optional. Namespace for GKE Connect agent resources. Defaults to `gke-connect`. + // Optional. Namespace for GKE Connect agent resources. Defaults to + // `gke-connect`. // // The Connect Agent is authorized automatically when run in the default // namespace. Otherwise, explicit authorization must be granted with an @@ -708,16 +743,17 @@ message ConnectAgent { // The request to validate the existing state of the membership CR in the // cluster. message ValidateExclusivityRequest { - // Required. The parent (project and location) where the Memberships will be created. - // Specified in the format `projects/*/locations/*`. + // Required. The parent (project and location) where the Memberships will be + // created. Specified in the format `projects/*/locations/*`. string parent = 1 [(google.api.field_behavior) = REQUIRED]; - // Optional. The YAML of the membership CR in the cluster. Empty if the membership - // CR does not exist. + // Optional. The YAML of the membership CR in the cluster. Empty if the + // membership CR does not exist. string cr_manifest = 2 [(google.api.field_behavior) = OPTIONAL]; - // Required. The intended membership name under the `parent`. This method only does - // validation in anticipation of a CreateMembership call with the same name. + // Required. The intended membership name under the `parent`. This method only + // does validation in anticipation of a CreateMembership call with the same + // name. string intended_membership = 3 [(google.api.field_behavior) = REQUIRED]; } @@ -763,10 +799,12 @@ message GenerateExclusivityManifestResponse { // Represents the metadata of the long-running operation. message OperationMetadata { // Output only. The time the operation was created. - google.protobuf.Timestamp create_time = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; + google.protobuf.Timestamp create_time = 1 + [(google.api.field_behavior) = OUTPUT_ONLY]; // Output only. The time the operation finished running. - google.protobuf.Timestamp end_time = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; + google.protobuf.Timestamp end_time = 2 + [(google.api.field_behavior) = OUTPUT_ONLY]; // Output only. Server-defined resource path for the target of the operation. string target = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; @@ -779,8 +817,9 @@ message OperationMetadata { // Output only. Identifies whether the user has requested cancellation // of the operation. Operations that have successfully been cancelled - // have [Operation.error][] value with a [google.rpc.Status.code][google.rpc.Status.code] of 1, - // corresponding to `Code.CANCELLED`. + // have [Operation.error][] value with a + // [google.rpc.Status.code][google.rpc.Status.code] of 1, corresponding to + // `Code.CANCELLED`. bool cancel_requested = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; // Output only. API version used to start the operation. diff --git a/packages/google-cloud-gkehub/protos/protos.d.ts b/packages/google-cloud-gkehub/protos/protos.d.ts index 7ec32074cc6..374f9d98e36 100644 --- a/packages/google-cloud-gkehub/protos/protos.d.ts +++ b/packages/google-cloud-gkehub/protos/protos.d.ts @@ -22726,6 +22726,9 @@ export namespace google { /** ResourceOptions v1beta1Crd */ v1beta1Crd?: (boolean|null); + + /** ResourceOptions k8sVersion */ + k8sVersion?: (string|null); } /** Represents a ResourceOptions. */ @@ -22743,6 +22746,9 @@ export namespace google { /** ResourceOptions v1beta1Crd. */ public v1beta1Crd: boolean; + /** ResourceOptions k8sVersion. */ + public k8sVersion: string; + /** * Creates a new ResourceOptions instance using the specified properties. * @param [properties] Properties to set diff --git a/packages/google-cloud-gkehub/protos/protos.js b/packages/google-cloud-gkehub/protos/protos.js index e5312b6e2a6..642b7126533 100644 --- a/packages/google-cloud-gkehub/protos/protos.js +++ b/packages/google-cloud-gkehub/protos/protos.js @@ -56924,6 +56924,7 @@ * @interface IResourceOptions * @property {string|null} [connectVersion] ResourceOptions connectVersion * @property {boolean|null} [v1beta1Crd] ResourceOptions v1beta1Crd + * @property {string|null} [k8sVersion] ResourceOptions k8sVersion */ /** @@ -56957,6 +56958,14 @@ */ ResourceOptions.prototype.v1beta1Crd = false; + /** + * ResourceOptions k8sVersion. + * @member {string} k8sVersion + * @memberof google.cloud.gkehub.v1beta1.ResourceOptions + * @instance + */ + ResourceOptions.prototype.k8sVersion = ""; + /** * Creates a new ResourceOptions instance using the specified properties. * @function create @@ -56985,6 +56994,8 @@ writer.uint32(/* id 1, wireType 2 =*/10).string(message.connectVersion); if (message.v1beta1Crd != null && Object.hasOwnProperty.call(message, "v1beta1Crd")) writer.uint32(/* id 2, wireType 0 =*/16).bool(message.v1beta1Crd); + if (message.k8sVersion != null && Object.hasOwnProperty.call(message, "k8sVersion")) + writer.uint32(/* id 3, wireType 2 =*/26).string(message.k8sVersion); return writer; }; @@ -57025,6 +57036,9 @@ case 2: message.v1beta1Crd = reader.bool(); break; + case 3: + message.k8sVersion = reader.string(); + break; default: reader.skipType(tag & 7); break; @@ -57066,6 +57080,9 @@ if (message.v1beta1Crd != null && message.hasOwnProperty("v1beta1Crd")) if (typeof message.v1beta1Crd !== "boolean") return "v1beta1Crd: boolean expected"; + if (message.k8sVersion != null && message.hasOwnProperty("k8sVersion")) + if (!$util.isString(message.k8sVersion)) + return "k8sVersion: string expected"; return null; }; @@ -57085,6 +57102,8 @@ message.connectVersion = String(object.connectVersion); if (object.v1beta1Crd != null) message.v1beta1Crd = Boolean(object.v1beta1Crd); + if (object.k8sVersion != null) + message.k8sVersion = String(object.k8sVersion); return message; }; @@ -57104,11 +57123,14 @@ if (options.defaults) { object.connectVersion = ""; object.v1beta1Crd = false; + object.k8sVersion = ""; } if (message.connectVersion != null && message.hasOwnProperty("connectVersion")) object.connectVersion = message.connectVersion; if (message.v1beta1Crd != null && message.hasOwnProperty("v1beta1Crd")) object.v1beta1Crd = message.v1beta1Crd; + if (message.k8sVersion != null && message.hasOwnProperty("k8sVersion")) + object.k8sVersion = message.k8sVersion; return object; }; diff --git a/packages/google-cloud-gkehub/protos/protos.json b/packages/google-cloud-gkehub/protos/protos.json index 3a149dac181..236ba021218 100644 --- a/packages/google-cloud-gkehub/protos/protos.json +++ b/packages/google-cloud-gkehub/protos/protos.json @@ -6155,6 +6155,13 @@ "options": { "(google.api.field_behavior)": "OPTIONAL" } + }, + "k8sVersion": { + "type": "string", + "id": 3, + "options": { + "(google.api.field_behavior)": "OPTIONAL" + } } } }, diff --git a/packages/google-cloud-gkehub/samples/generated/v1beta1/gke_hub_membership_service.create_membership.js b/packages/google-cloud-gkehub/samples/generated/v1beta1/gke_hub_membership_service.create_membership.js index c2091031614..ab7554dcaa6 100644 --- a/packages/google-cloud-gkehub/samples/generated/v1beta1/gke_hub_membership_service.create_membership.js +++ b/packages/google-cloud-gkehub/samples/generated/v1beta1/gke_hub_membership_service.create_membership.js @@ -26,13 +26,13 @@ function main(parent, membershipId, resource) { * TODO(developer): Uncomment these variables before running the sample. */ /** - * Required. The parent (project and location) where the Memberships will be created. - * Specified in the format `projects/* /locations/*`. + * Required. The parent (project and location) where the Memberships will be + * created. Specified in the format `projects/* /locations/*`. */ // const parent = 'abc123' /** - * Required. Client chosen ID for the membership. `membership_id` must be a valid RFC - * 1123 compliant DNS label: + * Required. Client chosen ID for the membership. `membership_id` must be a + * valid RFC 1123 compliant DNS label: * 1. At most 63 characters in length * 2. It must consist of lower case alphanumeric characters or `-` * 3. It must start and end with an alphanumeric character diff --git a/packages/google-cloud-gkehub/samples/generated/v1beta1/gke_hub_membership_service.generate_connect_manifest.js b/packages/google-cloud-gkehub/samples/generated/v1beta1/gke_hub_membership_service.generate_connect_manifest.js index ee6c0dca837..6f023fe4af1 100644 --- a/packages/google-cloud-gkehub/samples/generated/v1beta1/gke_hub_membership_service.generate_connect_manifest.js +++ b/packages/google-cloud-gkehub/samples/generated/v1beta1/gke_hub_membership_service.generate_connect_manifest.js @@ -26,8 +26,8 @@ function main(name) { * TODO(developer): Uncomment these variables before running the sample. */ /** - * Required. The Membership resource name the Agent will associate with, in the format - * `projects/* /locations/* /memberships/*`. + * Required. The Membership resource name the Agent will associate with, in + * the format `projects/* /locations/* /memberships/*`. */ // const name = 'abc123' /** @@ -35,7 +35,8 @@ function main(name) { */ // const connectAgent = {} /** - * Optional. The Connect agent version to use. Defaults to the most current version. + * Optional. The Connect agent version to use. Defaults to the most current + * version. */ // const version = 'abc123' /** diff --git a/packages/google-cloud-gkehub/samples/generated/v1beta1/gke_hub_membership_service.list_memberships.js b/packages/google-cloud-gkehub/samples/generated/v1beta1/gke_hub_membership_service.list_memberships.js index 5ce348c2f19..16562113679 100644 --- a/packages/google-cloud-gkehub/samples/generated/v1beta1/gke_hub_membership_service.list_memberships.js +++ b/packages/google-cloud-gkehub/samples/generated/v1beta1/gke_hub_membership_service.list_memberships.js @@ -26,14 +26,14 @@ function main(parent) { * TODO(developer): Uncomment these variables before running the sample. */ /** - * Required. The parent (project and location) where the Memberships will be listed. - * Specified in the format `projects/* /locations/*`. + * Required. The parent (project and location) where the Memberships will be + * listed. Specified in the format `projects/* /locations/*`. */ // const parent = 'abc123' /** - * Optional. When requesting a 'page' of resources, `page_size` specifies number of - * resources to return. If unspecified or set to 0, all resources will - * be returned. + * Optional. When requesting a 'page' of resources, `page_size` specifies + * number of resources to return. If unspecified or set to 0, all resources + * will be returned. */ // const pageSize = 1234 /** @@ -43,8 +43,8 @@ function main(parent) { */ // const pageToken = 'abc123' /** - * Optional. Lists Memberships that match the filter expression, following the syntax - * outlined in https://google.aip.dev/160. + * Optional. Lists Memberships that match the filter expression, following the + * syntax outlined in https://google.aip.dev/160. * Examples: * - Name is `bar` in project `foo-proj` and location `global`: * name = "projects/foo-proj/locations/global/membership/bar" diff --git a/packages/google-cloud-gkehub/samples/generated/v1beta1/gke_hub_membership_service.update_membership.js b/packages/google-cloud-gkehub/samples/generated/v1beta1/gke_hub_membership_service.update_membership.js index 84e93fe40cb..6bcdd6d7067 100644 --- a/packages/google-cloud-gkehub/samples/generated/v1beta1/gke_hub_membership_service.update_membership.js +++ b/packages/google-cloud-gkehub/samples/generated/v1beta1/gke_hub_membership_service.update_membership.js @@ -31,8 +31,8 @@ function main(name, updateMask, resource) { */ // const name = 'abc123' /** - * Required. Mask of fields to update. At least one field path must be specified in this - * mask. + * Required. Mask of fields to update. At least one field path must be + * specified in this mask. */ // const updateMask = {} /** diff --git a/packages/google-cloud-gkehub/samples/generated/v1beta1/gke_hub_membership_service.validate_exclusivity.js b/packages/google-cloud-gkehub/samples/generated/v1beta1/gke_hub_membership_service.validate_exclusivity.js index 37d2d0636f9..46dabb6c58e 100644 --- a/packages/google-cloud-gkehub/samples/generated/v1beta1/gke_hub_membership_service.validate_exclusivity.js +++ b/packages/google-cloud-gkehub/samples/generated/v1beta1/gke_hub_membership_service.validate_exclusivity.js @@ -26,18 +26,19 @@ function main(parent, intendedMembership) { * TODO(developer): Uncomment these variables before running the sample. */ /** - * Required. The parent (project and location) where the Memberships will be created. - * Specified in the format `projects/* /locations/*`. + * Required. The parent (project and location) where the Memberships will be + * created. Specified in the format `projects/* /locations/*`. */ // const parent = 'abc123' /** - * Optional. The YAML of the membership CR in the cluster. Empty if the membership - * CR does not exist. + * Optional. The YAML of the membership CR in the cluster. Empty if the + * membership CR does not exist. */ // const crManifest = 'abc123' /** - * Required. The intended membership name under the `parent`. This method only does - * validation in anticipation of a CreateMembership call with the same name. + * Required. The intended membership name under the `parent`. This method only + * does validation in anticipation of a CreateMembership call with the same + * name. */ // const intendedMembership = 'abc123' diff --git a/packages/google-cloud-gkehub/samples/generated/v1beta1/snippet_metadata.google.cloud.gkehub.v1beta1.json b/packages/google-cloud-gkehub/samples/generated/v1beta1/snippet_metadata.google.cloud.gkehub.v1beta1.json index da458874bfa..06a10ec2a23 100644 --- a/packages/google-cloud-gkehub/samples/generated/v1beta1/snippet_metadata.google.cloud.gkehub.v1beta1.json +++ b/packages/google-cloud-gkehub/samples/generated/v1beta1/snippet_metadata.google.cloud.gkehub.v1beta1.json @@ -266,7 +266,7 @@ "segments": [ { "start": 25, - "end": 73, + "end": 74, "type": "FULL" } ], @@ -326,7 +326,7 @@ "segments": [ { "start": 25, - "end": 62, + "end": 63, "type": "FULL" } ], diff --git a/packages/google-cloud-gkehub/src/v1beta1/gke_hub_membership_service_client.ts b/packages/google-cloud-gkehub/src/v1beta1/gke_hub_membership_service_client.ts index 6263c0834bb..3a0e2de9335 100644 --- a/packages/google-cloud-gkehub/src/v1beta1/gke_hub_membership_service_client.ts +++ b/packages/google-cloud-gkehub/src/v1beta1/gke_hub_membership_service_client.ts @@ -43,7 +43,8 @@ const version = require('../../../package.json').version; /** * The GKE Hub MembershipService handles the registration of many Kubernetes - * clusters to Google Cloud, represented with the {@link google.cloud.gkehub.v1beta1.Membership|Membership} resource. + * clusters to Google Cloud, represented with the + * {@link google.cloud.gkehub.v1beta1.Membership|Membership} resource. * * GKE Hub is currently only available in the global region. * @@ -484,12 +485,13 @@ export class GkeHubMembershipServiceClient { * @param {Object} request * The request object that will be sent. * @param {string} request.name - * Required. The Membership resource name the Agent will associate with, in the format - * `projects/* /locations/* /memberships/*`. + * Required. The Membership resource name the Agent will associate with, in + * the format `projects/* /locations/* /memberships/*`. * @param {google.cloud.gkehub.v1beta1.ConnectAgent} [request.connectAgent] * Optional. The connect agent to generate manifest for. * @param {string} [request.version] - * Optional. The Connect agent version to use. Defaults to the most current version. + * Optional. The Connect agent version to use. Defaults to the most current + * version. * @param {boolean} [request.isUpgrade] * Optional. If true, generate the resources for upgrade only. Some resources * generated only for installation (e.g. secrets) will be excluded. @@ -599,14 +601,15 @@ export class GkeHubMembershipServiceClient { * @param {Object} request * The request object that will be sent. * @param {string} request.parent - * Required. The parent (project and location) where the Memberships will be created. - * Specified in the format `projects/* /locations/*`. + * Required. The parent (project and location) where the Memberships will be + * created. Specified in the format `projects/* /locations/*`. * @param {string} [request.crManifest] - * Optional. The YAML of the membership CR in the cluster. Empty if the membership - * CR does not exist. + * Optional. The YAML of the membership CR in the cluster. Empty if the + * membership CR does not exist. * @param {string} request.intendedMembership - * Required. The intended membership name under the `parent`. This method only does - * validation in anticipation of a CreateMembership call with the same name. + * Required. The intended membership name under the `parent`. This method only + * does validation in anticipation of a CreateMembership call with the same + * name. * @param {object} [options] * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. * @returns {Promise} - The promise which resolves to an array. @@ -829,11 +832,11 @@ export class GkeHubMembershipServiceClient { * @param {Object} request * The request object that will be sent. * @param {string} request.parent - * Required. The parent (project and location) where the Memberships will be created. - * Specified in the format `projects/* /locations/*`. + * Required. The parent (project and location) where the Memberships will be + * created. Specified in the format `projects/* /locations/*`. * @param {string} request.membershipId - * Required. Client chosen ID for the membership. `membership_id` must be a valid RFC - * 1123 compliant DNS label: + * Required. Client chosen ID for the membership. `membership_id` must be a + * valid RFC 1123 compliant DNS label: * * 1. At most 63 characters in length * 2. It must consist of lower case alphanumeric characters or `-` @@ -1152,8 +1155,8 @@ export class GkeHubMembershipServiceClient { * Required. The membership resource name in the format: * `projects/[project_id]/locations/global/memberships/[membership_id]` * @param {google.protobuf.FieldMask} request.updateMask - * Required. Mask of fields to update. At least one field path must be specified in this - * mask. + * Required. Mask of fields to update. At least one field path must be + * specified in this mask. * @param {google.cloud.gkehub.v1beta1.Membership} request.resource * Required. Only fields specified in update_mask are updated. * If you specify a field in the update_mask but don't specify its value here @@ -1313,19 +1316,19 @@ export class GkeHubMembershipServiceClient { * @param {Object} request * The request object that will be sent. * @param {string} request.parent - * Required. The parent (project and location) where the Memberships will be listed. - * Specified in the format `projects/* /locations/*`. + * Required. The parent (project and location) where the Memberships will be + * listed. Specified in the format `projects/* /locations/*`. * @param {number} [request.pageSize] - * Optional. When requesting a 'page' of resources, `page_size` specifies number of - * resources to return. If unspecified or set to 0, all resources will - * be returned. + * Optional. When requesting a 'page' of resources, `page_size` specifies + * number of resources to return. If unspecified or set to 0, all resources + * will be returned. * @param {string} [request.pageToken] * Optional. Token returned by previous call to `ListMemberships` which * specifies the position in the list from where to continue listing the * resources. * @param {string} [request.filter] - * Optional. Lists Memberships that match the filter expression, following the syntax - * outlined in https://google.aip.dev/160. + * Optional. Lists Memberships that match the filter expression, following the + * syntax outlined in https://google.aip.dev/160. * * Examples: * @@ -1440,19 +1443,19 @@ export class GkeHubMembershipServiceClient { * @param {Object} request * The request object that will be sent. * @param {string} request.parent - * Required. The parent (project and location) where the Memberships will be listed. - * Specified in the format `projects/* /locations/*`. + * Required. The parent (project and location) where the Memberships will be + * listed. Specified in the format `projects/* /locations/*`. * @param {number} [request.pageSize] - * Optional. When requesting a 'page' of resources, `page_size` specifies number of - * resources to return. If unspecified or set to 0, all resources will - * be returned. + * Optional. When requesting a 'page' of resources, `page_size` specifies + * number of resources to return. If unspecified or set to 0, all resources + * will be returned. * @param {string} [request.pageToken] * Optional. Token returned by previous call to `ListMemberships` which * specifies the position in the list from where to continue listing the * resources. * @param {string} [request.filter] - * Optional. Lists Memberships that match the filter expression, following the syntax - * outlined in https://google.aip.dev/160. + * Optional. Lists Memberships that match the filter expression, following the + * syntax outlined in https://google.aip.dev/160. * * Examples: * @@ -1515,19 +1518,19 @@ export class GkeHubMembershipServiceClient { * @param {Object} request * The request object that will be sent. * @param {string} request.parent - * Required. The parent (project and location) where the Memberships will be listed. - * Specified in the format `projects/* /locations/*`. + * Required. The parent (project and location) where the Memberships will be + * listed. Specified in the format `projects/* /locations/*`. * @param {number} [request.pageSize] - * Optional. When requesting a 'page' of resources, `page_size` specifies number of - * resources to return. If unspecified or set to 0, all resources will - * be returned. + * Optional. When requesting a 'page' of resources, `page_size` specifies + * number of resources to return. If unspecified or set to 0, all resources + * will be returned. * @param {string} [request.pageToken] * Optional. Token returned by previous call to `ListMemberships` which * specifies the position in the list from where to continue listing the * resources. * @param {string} [request.filter] - * Optional. Lists Memberships that match the filter expression, following the syntax - * outlined in https://google.aip.dev/160. + * Optional. Lists Memberships that match the filter expression, following the + * syntax outlined in https://google.aip.dev/160. * * Examples: * From d2da7f736f351b348a412a300edcb474e7f3dcbb Mon Sep 17 00:00:00 2001 From: "release-please[bot]" <55107282+release-please[bot]@users.noreply.github.com> Date: Thu, 3 Mar 2022 08:57:38 -0800 Subject: [PATCH 64/92] chore(main): release 2.2.0 (#129) Co-authored-by: release-please[bot] <55107282+release-please[bot]@users.noreply.github.com> --- packages/google-cloud-gkehub/CHANGELOG.md | 8 ++++++++ packages/google-cloud-gkehub/package.json | 2 +- packages/google-cloud-gkehub/samples/package.json | 2 +- 3 files changed, 10 insertions(+), 2 deletions(-) diff --git a/packages/google-cloud-gkehub/CHANGELOG.md b/packages/google-cloud-gkehub/CHANGELOG.md index 02cb40f1ac5..f1a1ed8f202 100644 --- a/packages/google-cloud-gkehub/CHANGELOG.md +++ b/packages/google-cloud-gkehub/CHANGELOG.md @@ -1,5 +1,13 @@ # Changelog +## [2.2.0](https://github.com/googleapis/nodejs-gke-hub/compare/v2.1.0...v2.2.0) (2022-03-02) + + +### Features + +* added support for k8s_version field ([#128](https://github.com/googleapis/nodejs-gke-hub/issues/128)) ([d1d08cb](https://github.com/googleapis/nodejs-gke-hub/commit/d1d08cbbbc52db593078619aef8636dbc32d8dce)) +* added support for k8s_version field ([#130](https://github.com/googleapis/nodejs-gke-hub/issues/130)) ([79f9560](https://github.com/googleapis/nodejs-gke-hub/commit/79f9560d2c078c2b45fc1a6f07d2796fd232df4e)) + ## [2.1.0](https://github.com/googleapis/nodejs-gke-hub/compare/v2.0.0...v2.1.0) (2022-02-03) diff --git a/packages/google-cloud-gkehub/package.json b/packages/google-cloud-gkehub/package.json index 8a797353256..f5319719efe 100644 --- a/packages/google-cloud-gkehub/package.json +++ b/packages/google-cloud-gkehub/package.json @@ -1,6 +1,6 @@ { "name": "@google-cloud/gke-hub", - "version": "2.1.0", + "version": "2.2.0", "description": "Gkehub client for Node.js", "repository": "googleapis/nodejs-gke-hub", "license": "Apache-2.0", diff --git a/packages/google-cloud-gkehub/samples/package.json b/packages/google-cloud-gkehub/samples/package.json index 06d55422dd9..f675d56b656 100644 --- a/packages/google-cloud-gkehub/samples/package.json +++ b/packages/google-cloud-gkehub/samples/package.json @@ -13,7 +13,7 @@ "test": "c8 mocha --timeout 600000 test/*.js" }, "dependencies": { - "@google-cloud/gke-hub": "^2.1.0" + "@google-cloud/gke-hub": "^2.2.0" }, "devDependencies": { "c8": "^7.1.0", From 7ce599e29acb3ae8100bfd6d42f9bbdf5586b103 Mon Sep 17 00:00:00 2001 From: "gcf-owl-bot[bot]" <78513119+gcf-owl-bot[bot]@users.noreply.github.com> Date: Wed, 16 Mar 2022 21:32:34 +0000 Subject: [PATCH 65/92] chore: update v2.14.2 gapic-generator-typescript (#134) - [ ] Regenerate this pull request now. Committer: @summer-ji-eng PiperOrigin-RevId: 434859890 Source-Link: https://github.com/googleapis/googleapis/commit/bc2432d50cba657e95212122e3fa112591b5bec2 Source-Link: https://github.com/googleapis/googleapis-gen/commit/930b673103e92523f8cfed38decd7d3afae8ebe7 Copy-Tag: eyJwIjoiLmdpdGh1Yi8uT3dsQm90LnlhbWwiLCJoIjoiOTMwYjY3MzEwM2U5MjUyM2Y4Y2ZlZDM4ZGVjZDdkM2FmYWU4ZWJlNyJ9 --- .../test/gapic_gke_hub_membership_service_v1beta1.ts | 4 ---- packages/google-cloud-gkehub/test/gapic_gke_hub_v1.ts | 3 --- packages/google-cloud-gkehub/test/gapic_gke_hub_v1alpha.ts | 1 - packages/google-cloud-gkehub/test/gapic_gke_hub_v1alpha2.ts | 3 --- packages/google-cloud-gkehub/test/gapic_gke_hub_v1beta.ts | 1 - 5 files changed, 12 deletions(-) diff --git a/packages/google-cloud-gkehub/test/gapic_gke_hub_membership_service_v1beta1.ts b/packages/google-cloud-gkehub/test/gapic_gke_hub_membership_service_v1beta1.ts index ebe1f5a8b9f..2d6241a1c1c 100644 --- a/packages/google-cloud-gkehub/test/gapic_gke_hub_membership_service_v1beta1.ts +++ b/packages/google-cloud-gkehub/test/gapic_gke_hub_membership_service_v1beta1.ts @@ -384,7 +384,6 @@ describe('v1beta1.GkeHubMembershipServiceClient', () => { new protos.google.cloud.gkehub.v1beta1.GetMembershipRequest() ); request.name = ''; - const expectedHeaderRequestParams = 'name='; const expectedError = new Error('The client has already been closed.'); client.close(); await assert.rejects(client.getMembership(request), expectedError); @@ -527,7 +526,6 @@ describe('v1beta1.GkeHubMembershipServiceClient', () => { new protos.google.cloud.gkehub.v1beta1.GenerateConnectManifestRequest() ); request.name = ''; - const expectedHeaderRequestParams = 'name='; const expectedError = new Error('The client has already been closed.'); client.close(); await assert.rejects( @@ -670,7 +668,6 @@ describe('v1beta1.GkeHubMembershipServiceClient', () => { new protos.google.cloud.gkehub.v1beta1.ValidateExclusivityRequest() ); request.parent = ''; - const expectedHeaderRequestParams = 'parent='; const expectedError = new Error('The client has already been closed.'); client.close(); await assert.rejects(client.validateExclusivity(request), expectedError); @@ -813,7 +810,6 @@ describe('v1beta1.GkeHubMembershipServiceClient', () => { new protos.google.cloud.gkehub.v1beta1.GenerateExclusivityManifestRequest() ); request.name = ''; - const expectedHeaderRequestParams = 'name='; const expectedError = new Error('The client has already been closed.'); client.close(); await assert.rejects( diff --git a/packages/google-cloud-gkehub/test/gapic_gke_hub_v1.ts b/packages/google-cloud-gkehub/test/gapic_gke_hub_v1.ts index 2ac000a5b20..ca50dc18817 100644 --- a/packages/google-cloud-gkehub/test/gapic_gke_hub_v1.ts +++ b/packages/google-cloud-gkehub/test/gapic_gke_hub_v1.ts @@ -360,7 +360,6 @@ describe('v1.GkeHubClient', () => { new protos.google.cloud.gkehub.v1.GetMembershipRequest() ); request.name = ''; - const expectedHeaderRequestParams = 'name='; const expectedError = new Error('The client has already been closed.'); client.close(); await assert.rejects(client.getMembership(request), expectedError); @@ -487,7 +486,6 @@ describe('v1.GkeHubClient', () => { new protos.google.cloud.gkehub.v1.GetFeatureRequest() ); request.name = ''; - const expectedHeaderRequestParams = 'name='; const expectedError = new Error('The client has already been closed.'); client.close(); await assert.rejects(client.getFeature(request), expectedError); @@ -618,7 +616,6 @@ describe('v1.GkeHubClient', () => { new protos.google.cloud.gkehub.v1.GenerateConnectManifestRequest() ); request.name = ''; - const expectedHeaderRequestParams = 'name='; const expectedError = new Error('The client has already been closed.'); client.close(); await assert.rejects( diff --git a/packages/google-cloud-gkehub/test/gapic_gke_hub_v1alpha.ts b/packages/google-cloud-gkehub/test/gapic_gke_hub_v1alpha.ts index 6ac6d0e062d..356564b853f 100644 --- a/packages/google-cloud-gkehub/test/gapic_gke_hub_v1alpha.ts +++ b/packages/google-cloud-gkehub/test/gapic_gke_hub_v1alpha.ts @@ -360,7 +360,6 @@ describe('v1alpha.GkeHubClient', () => { new protos.google.cloud.gkehub.v1alpha.GetFeatureRequest() ); request.name = ''; - const expectedHeaderRequestParams = 'name='; const expectedError = new Error('The client has already been closed.'); client.close(); await assert.rejects(client.getFeature(request), expectedError); diff --git a/packages/google-cloud-gkehub/test/gapic_gke_hub_v1alpha2.ts b/packages/google-cloud-gkehub/test/gapic_gke_hub_v1alpha2.ts index 8fb93f0c285..08667c24b2d 100644 --- a/packages/google-cloud-gkehub/test/gapic_gke_hub_v1alpha2.ts +++ b/packages/google-cloud-gkehub/test/gapic_gke_hub_v1alpha2.ts @@ -360,7 +360,6 @@ describe('v1alpha2.GkeHubClient', () => { new protos.google.cloud.gkehub.v1alpha2.GetMembershipRequest() ); request.name = ''; - const expectedHeaderRequestParams = 'name='; const expectedError = new Error('The client has already been closed.'); client.close(); await assert.rejects(client.getMembership(request), expectedError); @@ -491,7 +490,6 @@ describe('v1alpha2.GkeHubClient', () => { new protos.google.cloud.gkehub.v1alpha2.GenerateConnectManifestRequest() ); request.name = ''; - const expectedHeaderRequestParams = 'name='; const expectedError = new Error('The client has already been closed.'); client.close(); await assert.rejects( @@ -621,7 +619,6 @@ describe('v1alpha2.GkeHubClient', () => { new protos.google.cloud.gkehub.v1alpha2.InitializeHubRequest() ); request.project = ''; - const expectedHeaderRequestParams = 'project='; const expectedError = new Error('The client has already been closed.'); client.close(); await assert.rejects(client.initializeHub(request), expectedError); diff --git a/packages/google-cloud-gkehub/test/gapic_gke_hub_v1beta.ts b/packages/google-cloud-gkehub/test/gapic_gke_hub_v1beta.ts index 56cee1e8bed..6eb39ebc3b9 100644 --- a/packages/google-cloud-gkehub/test/gapic_gke_hub_v1beta.ts +++ b/packages/google-cloud-gkehub/test/gapic_gke_hub_v1beta.ts @@ -360,7 +360,6 @@ describe('v1beta.GkeHubClient', () => { new protos.google.cloud.gkehub.v1beta.GetFeatureRequest() ); request.name = ''; - const expectedHeaderRequestParams = 'name='; const expectedError = new Error('The client has already been closed.'); client.close(); await assert.rejects(client.getFeature(request), expectedError); From 777e3b3d03f544a7d1e7d3bc4c503a20625f34f0 Mon Sep 17 00:00:00 2001 From: "gcf-owl-bot[bot]" <78513119+gcf-owl-bot[bot]@users.noreply.github.com> Date: Wed, 20 Apr 2022 12:40:26 -0700 Subject: [PATCH 66/92] build(node): update client library version in samples metadata (#1356) (#141) * build(node): add feat in node post-processor to add client library version number in snippet metadata Co-authored-by: Benjamin E. Coe Source-Link: https://github.com/googleapis/synthtool/commit/d337b88dd1494365183718a2de0b7b4056b6fdfe Post-Processor: gcr.io/cloud-devrel-public-resources/owlbot-nodejs:latest@sha256:d106724ad2a96daa1b8d88de101ba50bdb30b8df62ffa0aa2b451d93b4556641 Co-authored-by: Owl Bot Co-authored-by: Benjamin E. Coe --- ...ippet_metadata.google.cloud.gkehub.v1.json | 1096 ++++++++--------- ..._metadata.google.cloud.gkehub.v1alpha.json | 504 ++++---- ...metadata.google.cloud.gkehub.v1alpha2.json | 672 +++++----- ...t_metadata.google.cloud.gkehub.v1beta.json | 504 ++++---- ..._metadata.google.cloud.gkehub.v1beta1.json | 796 ++++++------ 5 files changed, 1786 insertions(+), 1786 deletions(-) diff --git a/packages/google-cloud-gkehub/samples/generated/v1/snippet_metadata.google.cloud.gkehub.v1.json b/packages/google-cloud-gkehub/samples/generated/v1/snippet_metadata.google.cloud.gkehub.v1.json index df7a870b707..9870cca7ad5 100644 --- a/packages/google-cloud-gkehub/samples/generated/v1/snippet_metadata.google.cloud.gkehub.v1.json +++ b/packages/google-cloud-gkehub/samples/generated/v1/snippet_metadata.google.cloud.gkehub.v1.json @@ -1,571 +1,571 @@ { - "clientLibrary": { - "name": "nodejs-gkehub", - "version": "0.1.0", - "language": "TYPESCRIPT", - "apis": [ - { - "id": "google.cloud.gkehub.v1", - "version": "v1" - } - ] - }, - "snippets": [ - { - "regionTag": "gkehub_v1_generated_GkeHub_ListMemberships_async", - "title": "GkeHub listMemberships Sample", - "origin": "API_DEFINITION", - "description": " Lists Memberships in a given project and location.", - "canonical": true, - "file": "gke_hub.list_memberships.js", - "language": "JAVASCRIPT", - "segments": [ - { - "start": 25, - "end": 84, - "type": "FULL" - } - ], - "clientMethod": { - "shortName": "ListMemberships", - "fullName": "google.cloud.gkehub.v1.GkeHub.ListMemberships", - "async": true, - "parameters": [ - { - "name": "parent", - "type": "TYPE_STRING" - }, - { - "name": "page_size", - "type": "TYPE_INT32" - }, - { - "name": "page_token", - "type": "TYPE_STRING" - }, - { - "name": "filter", - "type": "TYPE_STRING" - }, - { - "name": "order_by", - "type": "TYPE_STRING" - } - ], - "resultType": ".google.cloud.gkehub.v1.ListMembershipsResponse", - "client": { - "shortName": "GkeHubClient", - "fullName": "google.cloud.gkehub.v1.GkeHubClient" - }, - "method": { - "shortName": "ListMemberships", - "fullName": "google.cloud.gkehub.v1.GkeHub.ListMemberships", - "service": { - "shortName": "GkeHub", - "fullName": "google.cloud.gkehub.v1.GkeHub" - } - } - } + "clientLibrary": { + "name": "nodejs-gkehub", + "version": "2.2.0", + "language": "TYPESCRIPT", + "apis": [ + { + "id": "google.cloud.gkehub.v1", + "version": "v1" + } + ] }, - { - "regionTag": "gkehub_v1_generated_GkeHub_ListFeatures_async", - "title": "GkeHub listFeatures Sample", - "origin": "API_DEFINITION", - "description": " Lists Features in a given project and location.", - "canonical": true, - "file": "gke_hub.list_features.js", - "language": "JAVASCRIPT", - "segments": [ + "snippets": [ { - "start": 25, - "end": 81, - "type": "FULL" - } - ], - "clientMethod": { - "shortName": "ListFeatures", - "fullName": "google.cloud.gkehub.v1.GkeHub.ListFeatures", - "async": true, - "parameters": [ - { - "name": "parent", - "type": "TYPE_STRING" - }, - { - "name": "page_size", - "type": "TYPE_INT32" - }, - { - "name": "page_token", - "type": "TYPE_STRING" - }, - { - "name": "filter", - "type": "TYPE_STRING" - }, - { - "name": "order_by", - "type": "TYPE_STRING" - } - ], - "resultType": ".google.cloud.gkehub.v1.ListFeaturesResponse", - "client": { - "shortName": "GkeHubClient", - "fullName": "google.cloud.gkehub.v1.GkeHubClient" + "regionTag": "gkehub_v1_generated_GkeHub_ListMemberships_async", + "title": "GkeHub listMemberships Sample", + "origin": "API_DEFINITION", + "description": " Lists Memberships in a given project and location.", + "canonical": true, + "file": "gke_hub.list_memberships.js", + "language": "JAVASCRIPT", + "segments": [ + { + "start": 25, + "end": 84, + "type": "FULL" + } + ], + "clientMethod": { + "shortName": "ListMemberships", + "fullName": "google.cloud.gkehub.v1.GkeHub.ListMemberships", + "async": true, + "parameters": [ + { + "name": "parent", + "type": "TYPE_STRING" + }, + { + "name": "page_size", + "type": "TYPE_INT32" + }, + { + "name": "page_token", + "type": "TYPE_STRING" + }, + { + "name": "filter", + "type": "TYPE_STRING" + }, + { + "name": "order_by", + "type": "TYPE_STRING" + } + ], + "resultType": ".google.cloud.gkehub.v1.ListMembershipsResponse", + "client": { + "shortName": "GkeHubClient", + "fullName": "google.cloud.gkehub.v1.GkeHubClient" + }, + "method": { + "shortName": "ListMemberships", + "fullName": "google.cloud.gkehub.v1.GkeHub.ListMemberships", + "service": { + "shortName": "GkeHub", + "fullName": "google.cloud.gkehub.v1.GkeHub" + } + } + } }, - "method": { - "shortName": "ListFeatures", - "fullName": "google.cloud.gkehub.v1.GkeHub.ListFeatures", - "service": { - "shortName": "GkeHub", - "fullName": "google.cloud.gkehub.v1.GkeHub" - } - } - } - }, - { - "regionTag": "gkehub_v1_generated_GkeHub_GetMembership_async", - "title": "GkeHub getMembership Sample", - "origin": "API_DEFINITION", - "description": " Gets the details of a Membership.", - "canonical": true, - "file": "gke_hub.get_membership.js", - "language": "JAVASCRIPT", - "segments": [ { - "start": 25, - "end": 51, - "type": "FULL" - } - ], - "clientMethod": { - "shortName": "GetMembership", - "fullName": "google.cloud.gkehub.v1.GkeHub.GetMembership", - "async": true, - "parameters": [ - { - "name": "name", - "type": "TYPE_STRING" - } - ], - "resultType": ".google.cloud.gkehub.v1.Membership", - "client": { - "shortName": "GkeHubClient", - "fullName": "google.cloud.gkehub.v1.GkeHubClient" + "regionTag": "gkehub_v1_generated_GkeHub_ListFeatures_async", + "title": "GkeHub listFeatures Sample", + "origin": "API_DEFINITION", + "description": " Lists Features in a given project and location.", + "canonical": true, + "file": "gke_hub.list_features.js", + "language": "JAVASCRIPT", + "segments": [ + { + "start": 25, + "end": 81, + "type": "FULL" + } + ], + "clientMethod": { + "shortName": "ListFeatures", + "fullName": "google.cloud.gkehub.v1.GkeHub.ListFeatures", + "async": true, + "parameters": [ + { + "name": "parent", + "type": "TYPE_STRING" + }, + { + "name": "page_size", + "type": "TYPE_INT32" + }, + { + "name": "page_token", + "type": "TYPE_STRING" + }, + { + "name": "filter", + "type": "TYPE_STRING" + }, + { + "name": "order_by", + "type": "TYPE_STRING" + } + ], + "resultType": ".google.cloud.gkehub.v1.ListFeaturesResponse", + "client": { + "shortName": "GkeHubClient", + "fullName": "google.cloud.gkehub.v1.GkeHubClient" + }, + "method": { + "shortName": "ListFeatures", + "fullName": "google.cloud.gkehub.v1.GkeHub.ListFeatures", + "service": { + "shortName": "GkeHub", + "fullName": "google.cloud.gkehub.v1.GkeHub" + } + } + } }, - "method": { - "shortName": "GetMembership", - "fullName": "google.cloud.gkehub.v1.GkeHub.GetMembership", - "service": { - "shortName": "GkeHub", - "fullName": "google.cloud.gkehub.v1.GkeHub" - } - } - } - }, - { - "regionTag": "gkehub_v1_generated_GkeHub_GetFeature_async", - "title": "GkeHub getFeature Sample", - "origin": "API_DEFINITION", - "description": " Gets details of a single Feature.", - "canonical": true, - "file": "gke_hub.get_feature.js", - "language": "JAVASCRIPT", - "segments": [ { - "start": 25, - "end": 50, - "type": "FULL" - } - ], - "clientMethod": { - "shortName": "GetFeature", - "fullName": "google.cloud.gkehub.v1.GkeHub.GetFeature", - "async": true, - "parameters": [ - { - "name": "name", - "type": "TYPE_STRING" - } - ], - "resultType": ".google.cloud.gkehub.v1.Feature", - "client": { - "shortName": "GkeHubClient", - "fullName": "google.cloud.gkehub.v1.GkeHubClient" + "regionTag": "gkehub_v1_generated_GkeHub_GetMembership_async", + "title": "GkeHub getMembership Sample", + "origin": "API_DEFINITION", + "description": " Gets the details of a Membership.", + "canonical": true, + "file": "gke_hub.get_membership.js", + "language": "JAVASCRIPT", + "segments": [ + { + "start": 25, + "end": 51, + "type": "FULL" + } + ], + "clientMethod": { + "shortName": "GetMembership", + "fullName": "google.cloud.gkehub.v1.GkeHub.GetMembership", + "async": true, + "parameters": [ + { + "name": "name", + "type": "TYPE_STRING" + } + ], + "resultType": ".google.cloud.gkehub.v1.Membership", + "client": { + "shortName": "GkeHubClient", + "fullName": "google.cloud.gkehub.v1.GkeHubClient" + }, + "method": { + "shortName": "GetMembership", + "fullName": "google.cloud.gkehub.v1.GkeHub.GetMembership", + "service": { + "shortName": "GkeHub", + "fullName": "google.cloud.gkehub.v1.GkeHub" + } + } + } }, - "method": { - "shortName": "GetFeature", - "fullName": "google.cloud.gkehub.v1.GkeHub.GetFeature", - "service": { - "shortName": "GkeHub", - "fullName": "google.cloud.gkehub.v1.GkeHub" - } - } - } - }, - { - "regionTag": "gkehub_v1_generated_GkeHub_CreateMembership_async", - "title": "GkeHub createMembership Sample", - "origin": "API_DEFINITION", - "description": " Creates a new Membership. **This is currently only supported for GKE clusters on Google Cloud**. To register other clusters, follow the instructions at https://cloud.google.com/anthos/multicluster-management/connect/registering-a-cluster.", - "canonical": true, - "file": "gke_hub.create_membership.js", - "language": "JAVASCRIPT", - "segments": [ { - "start": 25, - "end": 82, - "type": "FULL" - } - ], - "clientMethod": { - "shortName": "CreateMembership", - "fullName": "google.cloud.gkehub.v1.GkeHub.CreateMembership", - "async": true, - "parameters": [ - { - "name": "parent", - "type": "TYPE_STRING" - }, - { - "name": "membership_id", - "type": "TYPE_STRING" - }, - { - "name": "resource", - "type": ".google.cloud.gkehub.v1.Membership" - }, - { - "name": "request_id", - "type": "TYPE_STRING" - } - ], - "resultType": ".google.longrunning.Operation", - "client": { - "shortName": "GkeHubClient", - "fullName": "google.cloud.gkehub.v1.GkeHubClient" + "regionTag": "gkehub_v1_generated_GkeHub_GetFeature_async", + "title": "GkeHub getFeature Sample", + "origin": "API_DEFINITION", + "description": " Gets details of a single Feature.", + "canonical": true, + "file": "gke_hub.get_feature.js", + "language": "JAVASCRIPT", + "segments": [ + { + "start": 25, + "end": 50, + "type": "FULL" + } + ], + "clientMethod": { + "shortName": "GetFeature", + "fullName": "google.cloud.gkehub.v1.GkeHub.GetFeature", + "async": true, + "parameters": [ + { + "name": "name", + "type": "TYPE_STRING" + } + ], + "resultType": ".google.cloud.gkehub.v1.Feature", + "client": { + "shortName": "GkeHubClient", + "fullName": "google.cloud.gkehub.v1.GkeHubClient" + }, + "method": { + "shortName": "GetFeature", + "fullName": "google.cloud.gkehub.v1.GkeHub.GetFeature", + "service": { + "shortName": "GkeHub", + "fullName": "google.cloud.gkehub.v1.GkeHub" + } + } + } }, - "method": { - "shortName": "CreateMembership", - "fullName": "google.cloud.gkehub.v1.GkeHub.CreateMembership", - "service": { - "shortName": "GkeHub", - "fullName": "google.cloud.gkehub.v1.GkeHub" - } - } - } - }, - { - "regionTag": "gkehub_v1_generated_GkeHub_CreateFeature_async", - "title": "GkeHub createFeature Sample", - "origin": "API_DEFINITION", - "description": " Adds a new Feature.", - "canonical": true, - "file": "gke_hub.create_feature.js", - "language": "JAVASCRIPT", - "segments": [ { - "start": 25, - "end": 73, - "type": "FULL" - } - ], - "clientMethod": { - "shortName": "CreateFeature", - "fullName": "google.cloud.gkehub.v1.GkeHub.CreateFeature", - "async": true, - "parameters": [ - { - "name": "parent", - "type": "TYPE_STRING" - }, - { - "name": "feature_id", - "type": "TYPE_STRING" - }, - { - "name": "resource", - "type": ".google.cloud.gkehub.v1.Feature" - }, - { - "name": "request_id", - "type": "TYPE_STRING" - } - ], - "resultType": ".google.longrunning.Operation", - "client": { - "shortName": "GkeHubClient", - "fullName": "google.cloud.gkehub.v1.GkeHubClient" + "regionTag": "gkehub_v1_generated_GkeHub_CreateMembership_async", + "title": "GkeHub createMembership Sample", + "origin": "API_DEFINITION", + "description": " Creates a new Membership. **This is currently only supported for GKE clusters on Google Cloud**. To register other clusters, follow the instructions at https://cloud.google.com/anthos/multicluster-management/connect/registering-a-cluster.", + "canonical": true, + "file": "gke_hub.create_membership.js", + "language": "JAVASCRIPT", + "segments": [ + { + "start": 25, + "end": 82, + "type": "FULL" + } + ], + "clientMethod": { + "shortName": "CreateMembership", + "fullName": "google.cloud.gkehub.v1.GkeHub.CreateMembership", + "async": true, + "parameters": [ + { + "name": "parent", + "type": "TYPE_STRING" + }, + { + "name": "membership_id", + "type": "TYPE_STRING" + }, + { + "name": "resource", + "type": ".google.cloud.gkehub.v1.Membership" + }, + { + "name": "request_id", + "type": "TYPE_STRING" + } + ], + "resultType": ".google.longrunning.Operation", + "client": { + "shortName": "GkeHubClient", + "fullName": "google.cloud.gkehub.v1.GkeHubClient" + }, + "method": { + "shortName": "CreateMembership", + "fullName": "google.cloud.gkehub.v1.GkeHub.CreateMembership", + "service": { + "shortName": "GkeHub", + "fullName": "google.cloud.gkehub.v1.GkeHub" + } + } + } }, - "method": { - "shortName": "CreateFeature", - "fullName": "google.cloud.gkehub.v1.GkeHub.CreateFeature", - "service": { - "shortName": "GkeHub", - "fullName": "google.cloud.gkehub.v1.GkeHub" - } - } - } - }, - { - "regionTag": "gkehub_v1_generated_GkeHub_DeleteMembership_async", - "title": "GkeHub deleteMembership Sample", - "origin": "API_DEFINITION", - "description": " Removes a Membership. **This is currently only supported for GKE clusters on Google Cloud**. To unregister other clusters, follow the instructions at https://cloud.google.com/anthos/multicluster-management/connect/unregistering-a-cluster.", - "canonical": true, - "file": "gke_hub.delete_membership.js", - "language": "JAVASCRIPT", - "segments": [ { - "start": 25, - "end": 66, - "type": "FULL" - } - ], - "clientMethod": { - "shortName": "DeleteMembership", - "fullName": "google.cloud.gkehub.v1.GkeHub.DeleteMembership", - "async": true, - "parameters": [ - { - "name": "name", - "type": "TYPE_STRING" - }, - { - "name": "request_id", - "type": "TYPE_STRING" - } - ], - "resultType": ".google.longrunning.Operation", - "client": { - "shortName": "GkeHubClient", - "fullName": "google.cloud.gkehub.v1.GkeHubClient" + "regionTag": "gkehub_v1_generated_GkeHub_CreateFeature_async", + "title": "GkeHub createFeature Sample", + "origin": "API_DEFINITION", + "description": " Adds a new Feature.", + "canonical": true, + "file": "gke_hub.create_feature.js", + "language": "JAVASCRIPT", + "segments": [ + { + "start": 25, + "end": 73, + "type": "FULL" + } + ], + "clientMethod": { + "shortName": "CreateFeature", + "fullName": "google.cloud.gkehub.v1.GkeHub.CreateFeature", + "async": true, + "parameters": [ + { + "name": "parent", + "type": "TYPE_STRING" + }, + { + "name": "feature_id", + "type": "TYPE_STRING" + }, + { + "name": "resource", + "type": ".google.cloud.gkehub.v1.Feature" + }, + { + "name": "request_id", + "type": "TYPE_STRING" + } + ], + "resultType": ".google.longrunning.Operation", + "client": { + "shortName": "GkeHubClient", + "fullName": "google.cloud.gkehub.v1.GkeHubClient" + }, + "method": { + "shortName": "CreateFeature", + "fullName": "google.cloud.gkehub.v1.GkeHub.CreateFeature", + "service": { + "shortName": "GkeHub", + "fullName": "google.cloud.gkehub.v1.GkeHub" + } + } + } }, - "method": { - "shortName": "DeleteMembership", - "fullName": "google.cloud.gkehub.v1.GkeHub.DeleteMembership", - "service": { - "shortName": "GkeHub", - "fullName": "google.cloud.gkehub.v1.GkeHub" - } - } - } - }, - { - "regionTag": "gkehub_v1_generated_GkeHub_DeleteFeature_async", - "title": "GkeHub deleteFeature Sample", - "origin": "API_DEFINITION", - "description": " Removes a Feature.", - "canonical": true, - "file": "gke_hub.delete_feature.js", - "language": "JAVASCRIPT", - "segments": [ { - "start": 25, - "end": 71, - "type": "FULL" - } - ], - "clientMethod": { - "shortName": "DeleteFeature", - "fullName": "google.cloud.gkehub.v1.GkeHub.DeleteFeature", - "async": true, - "parameters": [ - { - "name": "name", - "type": "TYPE_STRING" - }, - { - "name": "force", - "type": "TYPE_BOOL" - }, - { - "name": "request_id", - "type": "TYPE_STRING" - } - ], - "resultType": ".google.longrunning.Operation", - "client": { - "shortName": "GkeHubClient", - "fullName": "google.cloud.gkehub.v1.GkeHubClient" + "regionTag": "gkehub_v1_generated_GkeHub_DeleteMembership_async", + "title": "GkeHub deleteMembership Sample", + "origin": "API_DEFINITION", + "description": " Removes a Membership. **This is currently only supported for GKE clusters on Google Cloud**. To unregister other clusters, follow the instructions at https://cloud.google.com/anthos/multicluster-management/connect/unregistering-a-cluster.", + "canonical": true, + "file": "gke_hub.delete_membership.js", + "language": "JAVASCRIPT", + "segments": [ + { + "start": 25, + "end": 66, + "type": "FULL" + } + ], + "clientMethod": { + "shortName": "DeleteMembership", + "fullName": "google.cloud.gkehub.v1.GkeHub.DeleteMembership", + "async": true, + "parameters": [ + { + "name": "name", + "type": "TYPE_STRING" + }, + { + "name": "request_id", + "type": "TYPE_STRING" + } + ], + "resultType": ".google.longrunning.Operation", + "client": { + "shortName": "GkeHubClient", + "fullName": "google.cloud.gkehub.v1.GkeHubClient" + }, + "method": { + "shortName": "DeleteMembership", + "fullName": "google.cloud.gkehub.v1.GkeHub.DeleteMembership", + "service": { + "shortName": "GkeHub", + "fullName": "google.cloud.gkehub.v1.GkeHub" + } + } + } }, - "method": { - "shortName": "DeleteFeature", - "fullName": "google.cloud.gkehub.v1.GkeHub.DeleteFeature", - "service": { - "shortName": "GkeHub", - "fullName": "google.cloud.gkehub.v1.GkeHub" - } - } - } - }, - { - "regionTag": "gkehub_v1_generated_GkeHub_UpdateMembership_async", - "title": "GkeHub updateMembership Sample", - "origin": "API_DEFINITION", - "description": " Updates an existing Membership.", - "canonical": true, - "file": "gke_hub.update_membership.js", - "language": "JAVASCRIPT", - "segments": [ { - "start": 25, - "end": 83, - "type": "FULL" - } - ], - "clientMethod": { - "shortName": "UpdateMembership", - "fullName": "google.cloud.gkehub.v1.GkeHub.UpdateMembership", - "async": true, - "parameters": [ - { - "name": "name", - "type": "TYPE_STRING" - }, - { - "name": "update_mask", - "type": ".google.protobuf.FieldMask" - }, - { - "name": "resource", - "type": ".google.cloud.gkehub.v1.Membership" - }, - { - "name": "request_id", - "type": "TYPE_STRING" - } - ], - "resultType": ".google.longrunning.Operation", - "client": { - "shortName": "GkeHubClient", - "fullName": "google.cloud.gkehub.v1.GkeHubClient" + "regionTag": "gkehub_v1_generated_GkeHub_DeleteFeature_async", + "title": "GkeHub deleteFeature Sample", + "origin": "API_DEFINITION", + "description": " Removes a Feature.", + "canonical": true, + "file": "gke_hub.delete_feature.js", + "language": "JAVASCRIPT", + "segments": [ + { + "start": 25, + "end": 71, + "type": "FULL" + } + ], + "clientMethod": { + "shortName": "DeleteFeature", + "fullName": "google.cloud.gkehub.v1.GkeHub.DeleteFeature", + "async": true, + "parameters": [ + { + "name": "name", + "type": "TYPE_STRING" + }, + { + "name": "force", + "type": "TYPE_BOOL" + }, + { + "name": "request_id", + "type": "TYPE_STRING" + } + ], + "resultType": ".google.longrunning.Operation", + "client": { + "shortName": "GkeHubClient", + "fullName": "google.cloud.gkehub.v1.GkeHubClient" + }, + "method": { + "shortName": "DeleteFeature", + "fullName": "google.cloud.gkehub.v1.GkeHub.DeleteFeature", + "service": { + "shortName": "GkeHub", + "fullName": "google.cloud.gkehub.v1.GkeHub" + } + } + } }, - "method": { - "shortName": "UpdateMembership", - "fullName": "google.cloud.gkehub.v1.GkeHub.UpdateMembership", - "service": { - "shortName": "GkeHub", - "fullName": "google.cloud.gkehub.v1.GkeHub" - } - } - } - }, - { - "regionTag": "gkehub_v1_generated_GkeHub_UpdateFeature_async", - "title": "GkeHub updateFeature Sample", - "origin": "API_DEFINITION", - "description": " Updates an existing Feature.", - "canonical": true, - "file": "gke_hub.update_feature.js", - "language": "JAVASCRIPT", - "segments": [ { - "start": 25, - "end": 80, - "type": "FULL" - } - ], - "clientMethod": { - "shortName": "UpdateFeature", - "fullName": "google.cloud.gkehub.v1.GkeHub.UpdateFeature", - "async": true, - "parameters": [ - { - "name": "name", - "type": "TYPE_STRING" - }, - { - "name": "update_mask", - "type": ".google.protobuf.FieldMask" - }, - { - "name": "resource", - "type": ".google.cloud.gkehub.v1.Feature" - }, - { - "name": "request_id", - "type": "TYPE_STRING" - } - ], - "resultType": ".google.longrunning.Operation", - "client": { - "shortName": "GkeHubClient", - "fullName": "google.cloud.gkehub.v1.GkeHubClient" + "regionTag": "gkehub_v1_generated_GkeHub_UpdateMembership_async", + "title": "GkeHub updateMembership Sample", + "origin": "API_DEFINITION", + "description": " Updates an existing Membership.", + "canonical": true, + "file": "gke_hub.update_membership.js", + "language": "JAVASCRIPT", + "segments": [ + { + "start": 25, + "end": 83, + "type": "FULL" + } + ], + "clientMethod": { + "shortName": "UpdateMembership", + "fullName": "google.cloud.gkehub.v1.GkeHub.UpdateMembership", + "async": true, + "parameters": [ + { + "name": "name", + "type": "TYPE_STRING" + }, + { + "name": "update_mask", + "type": ".google.protobuf.FieldMask" + }, + { + "name": "resource", + "type": ".google.cloud.gkehub.v1.Membership" + }, + { + "name": "request_id", + "type": "TYPE_STRING" + } + ], + "resultType": ".google.longrunning.Operation", + "client": { + "shortName": "GkeHubClient", + "fullName": "google.cloud.gkehub.v1.GkeHubClient" + }, + "method": { + "shortName": "UpdateMembership", + "fullName": "google.cloud.gkehub.v1.GkeHub.UpdateMembership", + "service": { + "shortName": "GkeHub", + "fullName": "google.cloud.gkehub.v1.GkeHub" + } + } + } }, - "method": { - "shortName": "UpdateFeature", - "fullName": "google.cloud.gkehub.v1.GkeHub.UpdateFeature", - "service": { - "shortName": "GkeHub", - "fullName": "google.cloud.gkehub.v1.GkeHub" - } - } - } - }, - { - "regionTag": "gkehub_v1_generated_GkeHub_GenerateConnectManifest_async", - "title": "GkeHub generateConnectManifest Sample", - "origin": "API_DEFINITION", - "description": " Generates the manifest for deployment of the GKE connect agent. **This method is used internally by Google-provided libraries.** Most clients should not need to call this method directly.", - "canonical": true, - "file": "gke_hub.generate_connect_manifest.js", - "language": "JAVASCRIPT", - "segments": [ { - "start": 25, - "end": 84, - "type": "FULL" - } - ], - "clientMethod": { - "shortName": "GenerateConnectManifest", - "fullName": "google.cloud.gkehub.v1.GkeHub.GenerateConnectManifest", - "async": true, - "parameters": [ - { - "name": "name", - "type": "TYPE_STRING" - }, - { - "name": "namespace", - "type": "TYPE_STRING" - }, - { - "name": "proxy", - "type": "TYPE_BYTES" - }, - { - "name": "version", - "type": "TYPE_STRING" - }, - { - "name": "is_upgrade", - "type": "TYPE_BOOL" - }, - { - "name": "registry", - "type": "TYPE_STRING" - }, - { - "name": "image_pull_secret_content", - "type": "TYPE_BYTES" - } - ], - "resultType": ".google.cloud.gkehub.v1.GenerateConnectManifestResponse", - "client": { - "shortName": "GkeHubClient", - "fullName": "google.cloud.gkehub.v1.GkeHubClient" + "regionTag": "gkehub_v1_generated_GkeHub_UpdateFeature_async", + "title": "GkeHub updateFeature Sample", + "origin": "API_DEFINITION", + "description": " Updates an existing Feature.", + "canonical": true, + "file": "gke_hub.update_feature.js", + "language": "JAVASCRIPT", + "segments": [ + { + "start": 25, + "end": 80, + "type": "FULL" + } + ], + "clientMethod": { + "shortName": "UpdateFeature", + "fullName": "google.cloud.gkehub.v1.GkeHub.UpdateFeature", + "async": true, + "parameters": [ + { + "name": "name", + "type": "TYPE_STRING" + }, + { + "name": "update_mask", + "type": ".google.protobuf.FieldMask" + }, + { + "name": "resource", + "type": ".google.cloud.gkehub.v1.Feature" + }, + { + "name": "request_id", + "type": "TYPE_STRING" + } + ], + "resultType": ".google.longrunning.Operation", + "client": { + "shortName": "GkeHubClient", + "fullName": "google.cloud.gkehub.v1.GkeHubClient" + }, + "method": { + "shortName": "UpdateFeature", + "fullName": "google.cloud.gkehub.v1.GkeHub.UpdateFeature", + "service": { + "shortName": "GkeHub", + "fullName": "google.cloud.gkehub.v1.GkeHub" + } + } + } }, - "method": { - "shortName": "GenerateConnectManifest", - "fullName": "google.cloud.gkehub.v1.GkeHub.GenerateConnectManifest", - "service": { - "shortName": "GkeHub", - "fullName": "google.cloud.gkehub.v1.GkeHub" - } + { + "regionTag": "gkehub_v1_generated_GkeHub_GenerateConnectManifest_async", + "title": "GkeHub generateConnectManifest Sample", + "origin": "API_DEFINITION", + "description": " Generates the manifest for deployment of the GKE connect agent. **This method is used internally by Google-provided libraries.** Most clients should not need to call this method directly.", + "canonical": true, + "file": "gke_hub.generate_connect_manifest.js", + "language": "JAVASCRIPT", + "segments": [ + { + "start": 25, + "end": 84, + "type": "FULL" + } + ], + "clientMethod": { + "shortName": "GenerateConnectManifest", + "fullName": "google.cloud.gkehub.v1.GkeHub.GenerateConnectManifest", + "async": true, + "parameters": [ + { + "name": "name", + "type": "TYPE_STRING" + }, + { + "name": "namespace", + "type": "TYPE_STRING" + }, + { + "name": "proxy", + "type": "TYPE_BYTES" + }, + { + "name": "version", + "type": "TYPE_STRING" + }, + { + "name": "is_upgrade", + "type": "TYPE_BOOL" + }, + { + "name": "registry", + "type": "TYPE_STRING" + }, + { + "name": "image_pull_secret_content", + "type": "TYPE_BYTES" + } + ], + "resultType": ".google.cloud.gkehub.v1.GenerateConnectManifestResponse", + "client": { + "shortName": "GkeHubClient", + "fullName": "google.cloud.gkehub.v1.GkeHubClient" + }, + "method": { + "shortName": "GenerateConnectManifest", + "fullName": "google.cloud.gkehub.v1.GkeHub.GenerateConnectManifest", + "service": { + "shortName": "GkeHub", + "fullName": "google.cloud.gkehub.v1.GkeHub" + } + } + } } - } - } - ] -} + ] +} \ No newline at end of file diff --git a/packages/google-cloud-gkehub/samples/generated/v1alpha/snippet_metadata.google.cloud.gkehub.v1alpha.json b/packages/google-cloud-gkehub/samples/generated/v1alpha/snippet_metadata.google.cloud.gkehub.v1alpha.json index 385d265eaed..9fa5c6ef33a 100644 --- a/packages/google-cloud-gkehub/samples/generated/v1alpha/snippet_metadata.google.cloud.gkehub.v1alpha.json +++ b/packages/google-cloud-gkehub/samples/generated/v1alpha/snippet_metadata.google.cloud.gkehub.v1alpha.json @@ -1,263 +1,263 @@ { - "clientLibrary": { - "name": "nodejs-gkehub", - "version": "0.1.0", - "language": "TYPESCRIPT", - "apis": [ - { - "id": "google.cloud.gkehub.v1alpha", - "version": "v1alpha" - } - ] - }, - "snippets": [ - { - "regionTag": "gkehub_v1alpha_generated_GkeHub_ListFeatures_async", - "title": "GkeHub listFeatures Sample", - "origin": "API_DEFINITION", - "description": " Lists Features in a given project and location.", - "canonical": true, - "file": "gke_hub.list_features.js", - "language": "JAVASCRIPT", - "segments": [ - { - "start": 25, - "end": 81, - "type": "FULL" - } - ], - "clientMethod": { - "shortName": "ListFeatures", - "fullName": "google.cloud.gkehub.v1alpha.GkeHub.ListFeatures", - "async": true, - "parameters": [ - { - "name": "parent", - "type": "TYPE_STRING" - }, - { - "name": "page_size", - "type": "TYPE_INT32" - }, - { - "name": "page_token", - "type": "TYPE_STRING" - }, - { - "name": "filter", - "type": "TYPE_STRING" - }, - { - "name": "order_by", - "type": "TYPE_STRING" - } - ], - "resultType": ".google.cloud.gkehub.v1alpha.ListFeaturesResponse", - "client": { - "shortName": "GkeHubClient", - "fullName": "google.cloud.gkehub.v1alpha.GkeHubClient" - }, - "method": { - "shortName": "ListFeatures", - "fullName": "google.cloud.gkehub.v1alpha.GkeHub.ListFeatures", - "service": { - "shortName": "GkeHub", - "fullName": "google.cloud.gkehub.v1alpha.GkeHub" - } - } - } + "clientLibrary": { + "name": "nodejs-gkehub", + "version": "2.2.0", + "language": "TYPESCRIPT", + "apis": [ + { + "id": "google.cloud.gkehub.v1alpha", + "version": "v1alpha" + } + ] }, - { - "regionTag": "gkehub_v1alpha_generated_GkeHub_GetFeature_async", - "title": "GkeHub getFeature Sample", - "origin": "API_DEFINITION", - "description": " Gets details of a single Feature.", - "canonical": true, - "file": "gke_hub.get_feature.js", - "language": "JAVASCRIPT", - "segments": [ + "snippets": [ { - "start": 25, - "end": 50, - "type": "FULL" - } - ], - "clientMethod": { - "shortName": "GetFeature", - "fullName": "google.cloud.gkehub.v1alpha.GkeHub.GetFeature", - "async": true, - "parameters": [ - { - "name": "name", - "type": "TYPE_STRING" - } - ], - "resultType": ".google.cloud.gkehub.v1alpha.Feature", - "client": { - "shortName": "GkeHubClient", - "fullName": "google.cloud.gkehub.v1alpha.GkeHubClient" + "regionTag": "gkehub_v1alpha_generated_GkeHub_ListFeatures_async", + "title": "GkeHub listFeatures Sample", + "origin": "API_DEFINITION", + "description": " Lists Features in a given project and location.", + "canonical": true, + "file": "gke_hub.list_features.js", + "language": "JAVASCRIPT", + "segments": [ + { + "start": 25, + "end": 81, + "type": "FULL" + } + ], + "clientMethod": { + "shortName": "ListFeatures", + "fullName": "google.cloud.gkehub.v1alpha.GkeHub.ListFeatures", + "async": true, + "parameters": [ + { + "name": "parent", + "type": "TYPE_STRING" + }, + { + "name": "page_size", + "type": "TYPE_INT32" + }, + { + "name": "page_token", + "type": "TYPE_STRING" + }, + { + "name": "filter", + "type": "TYPE_STRING" + }, + { + "name": "order_by", + "type": "TYPE_STRING" + } + ], + "resultType": ".google.cloud.gkehub.v1alpha.ListFeaturesResponse", + "client": { + "shortName": "GkeHubClient", + "fullName": "google.cloud.gkehub.v1alpha.GkeHubClient" + }, + "method": { + "shortName": "ListFeatures", + "fullName": "google.cloud.gkehub.v1alpha.GkeHub.ListFeatures", + "service": { + "shortName": "GkeHub", + "fullName": "google.cloud.gkehub.v1alpha.GkeHub" + } + } + } }, - "method": { - "shortName": "GetFeature", - "fullName": "google.cloud.gkehub.v1alpha.GkeHub.GetFeature", - "service": { - "shortName": "GkeHub", - "fullName": "google.cloud.gkehub.v1alpha.GkeHub" - } - } - } - }, - { - "regionTag": "gkehub_v1alpha_generated_GkeHub_CreateFeature_async", - "title": "GkeHub createFeature Sample", - "origin": "API_DEFINITION", - "description": " Adds a new Feature.", - "canonical": true, - "file": "gke_hub.create_feature.js", - "language": "JAVASCRIPT", - "segments": [ { - "start": 25, - "end": 73, - "type": "FULL" - } - ], - "clientMethod": { - "shortName": "CreateFeature", - "fullName": "google.cloud.gkehub.v1alpha.GkeHub.CreateFeature", - "async": true, - "parameters": [ - { - "name": "parent", - "type": "TYPE_STRING" - }, - { - "name": "feature_id", - "type": "TYPE_STRING" - }, - { - "name": "resource", - "type": ".google.cloud.gkehub.v1alpha.Feature" - }, - { - "name": "request_id", - "type": "TYPE_STRING" - } - ], - "resultType": ".google.longrunning.Operation", - "client": { - "shortName": "GkeHubClient", - "fullName": "google.cloud.gkehub.v1alpha.GkeHubClient" + "regionTag": "gkehub_v1alpha_generated_GkeHub_GetFeature_async", + "title": "GkeHub getFeature Sample", + "origin": "API_DEFINITION", + "description": " Gets details of a single Feature.", + "canonical": true, + "file": "gke_hub.get_feature.js", + "language": "JAVASCRIPT", + "segments": [ + { + "start": 25, + "end": 50, + "type": "FULL" + } + ], + "clientMethod": { + "shortName": "GetFeature", + "fullName": "google.cloud.gkehub.v1alpha.GkeHub.GetFeature", + "async": true, + "parameters": [ + { + "name": "name", + "type": "TYPE_STRING" + } + ], + "resultType": ".google.cloud.gkehub.v1alpha.Feature", + "client": { + "shortName": "GkeHubClient", + "fullName": "google.cloud.gkehub.v1alpha.GkeHubClient" + }, + "method": { + "shortName": "GetFeature", + "fullName": "google.cloud.gkehub.v1alpha.GkeHub.GetFeature", + "service": { + "shortName": "GkeHub", + "fullName": "google.cloud.gkehub.v1alpha.GkeHub" + } + } + } }, - "method": { - "shortName": "CreateFeature", - "fullName": "google.cloud.gkehub.v1alpha.GkeHub.CreateFeature", - "service": { - "shortName": "GkeHub", - "fullName": "google.cloud.gkehub.v1alpha.GkeHub" - } - } - } - }, - { - "regionTag": "gkehub_v1alpha_generated_GkeHub_DeleteFeature_async", - "title": "GkeHub deleteFeature Sample", - "origin": "API_DEFINITION", - "description": " Removes a Feature.", - "canonical": true, - "file": "gke_hub.delete_feature.js", - "language": "JAVASCRIPT", - "segments": [ { - "start": 25, - "end": 71, - "type": "FULL" - } - ], - "clientMethod": { - "shortName": "DeleteFeature", - "fullName": "google.cloud.gkehub.v1alpha.GkeHub.DeleteFeature", - "async": true, - "parameters": [ - { - "name": "name", - "type": "TYPE_STRING" - }, - { - "name": "force", - "type": "TYPE_BOOL" - }, - { - "name": "request_id", - "type": "TYPE_STRING" - } - ], - "resultType": ".google.longrunning.Operation", - "client": { - "shortName": "GkeHubClient", - "fullName": "google.cloud.gkehub.v1alpha.GkeHubClient" + "regionTag": "gkehub_v1alpha_generated_GkeHub_CreateFeature_async", + "title": "GkeHub createFeature Sample", + "origin": "API_DEFINITION", + "description": " Adds a new Feature.", + "canonical": true, + "file": "gke_hub.create_feature.js", + "language": "JAVASCRIPT", + "segments": [ + { + "start": 25, + "end": 73, + "type": "FULL" + } + ], + "clientMethod": { + "shortName": "CreateFeature", + "fullName": "google.cloud.gkehub.v1alpha.GkeHub.CreateFeature", + "async": true, + "parameters": [ + { + "name": "parent", + "type": "TYPE_STRING" + }, + { + "name": "feature_id", + "type": "TYPE_STRING" + }, + { + "name": "resource", + "type": ".google.cloud.gkehub.v1alpha.Feature" + }, + { + "name": "request_id", + "type": "TYPE_STRING" + } + ], + "resultType": ".google.longrunning.Operation", + "client": { + "shortName": "GkeHubClient", + "fullName": "google.cloud.gkehub.v1alpha.GkeHubClient" + }, + "method": { + "shortName": "CreateFeature", + "fullName": "google.cloud.gkehub.v1alpha.GkeHub.CreateFeature", + "service": { + "shortName": "GkeHub", + "fullName": "google.cloud.gkehub.v1alpha.GkeHub" + } + } + } }, - "method": { - "shortName": "DeleteFeature", - "fullName": "google.cloud.gkehub.v1alpha.GkeHub.DeleteFeature", - "service": { - "shortName": "GkeHub", - "fullName": "google.cloud.gkehub.v1alpha.GkeHub" - } - } - } - }, - { - "regionTag": "gkehub_v1alpha_generated_GkeHub_UpdateFeature_async", - "title": "GkeHub updateFeature Sample", - "origin": "API_DEFINITION", - "description": " Updates an existing Feature.", - "canonical": true, - "file": "gke_hub.update_feature.js", - "language": "JAVASCRIPT", - "segments": [ { - "start": 25, - "end": 80, - "type": "FULL" - } - ], - "clientMethod": { - "shortName": "UpdateFeature", - "fullName": "google.cloud.gkehub.v1alpha.GkeHub.UpdateFeature", - "async": true, - "parameters": [ - { - "name": "name", - "type": "TYPE_STRING" - }, - { - "name": "update_mask", - "type": ".google.protobuf.FieldMask" - }, - { - "name": "resource", - "type": ".google.cloud.gkehub.v1alpha.Feature" - }, - { - "name": "request_id", - "type": "TYPE_STRING" - } - ], - "resultType": ".google.longrunning.Operation", - "client": { - "shortName": "GkeHubClient", - "fullName": "google.cloud.gkehub.v1alpha.GkeHubClient" + "regionTag": "gkehub_v1alpha_generated_GkeHub_DeleteFeature_async", + "title": "GkeHub deleteFeature Sample", + "origin": "API_DEFINITION", + "description": " Removes a Feature.", + "canonical": true, + "file": "gke_hub.delete_feature.js", + "language": "JAVASCRIPT", + "segments": [ + { + "start": 25, + "end": 71, + "type": "FULL" + } + ], + "clientMethod": { + "shortName": "DeleteFeature", + "fullName": "google.cloud.gkehub.v1alpha.GkeHub.DeleteFeature", + "async": true, + "parameters": [ + { + "name": "name", + "type": "TYPE_STRING" + }, + { + "name": "force", + "type": "TYPE_BOOL" + }, + { + "name": "request_id", + "type": "TYPE_STRING" + } + ], + "resultType": ".google.longrunning.Operation", + "client": { + "shortName": "GkeHubClient", + "fullName": "google.cloud.gkehub.v1alpha.GkeHubClient" + }, + "method": { + "shortName": "DeleteFeature", + "fullName": "google.cloud.gkehub.v1alpha.GkeHub.DeleteFeature", + "service": { + "shortName": "GkeHub", + "fullName": "google.cloud.gkehub.v1alpha.GkeHub" + } + } + } }, - "method": { - "shortName": "UpdateFeature", - "fullName": "google.cloud.gkehub.v1alpha.GkeHub.UpdateFeature", - "service": { - "shortName": "GkeHub", - "fullName": "google.cloud.gkehub.v1alpha.GkeHub" - } + { + "regionTag": "gkehub_v1alpha_generated_GkeHub_UpdateFeature_async", + "title": "GkeHub updateFeature Sample", + "origin": "API_DEFINITION", + "description": " Updates an existing Feature.", + "canonical": true, + "file": "gke_hub.update_feature.js", + "language": "JAVASCRIPT", + "segments": [ + { + "start": 25, + "end": 80, + "type": "FULL" + } + ], + "clientMethod": { + "shortName": "UpdateFeature", + "fullName": "google.cloud.gkehub.v1alpha.GkeHub.UpdateFeature", + "async": true, + "parameters": [ + { + "name": "name", + "type": "TYPE_STRING" + }, + { + "name": "update_mask", + "type": ".google.protobuf.FieldMask" + }, + { + "name": "resource", + "type": ".google.cloud.gkehub.v1alpha.Feature" + }, + { + "name": "request_id", + "type": "TYPE_STRING" + } + ], + "resultType": ".google.longrunning.Operation", + "client": { + "shortName": "GkeHubClient", + "fullName": "google.cloud.gkehub.v1alpha.GkeHubClient" + }, + "method": { + "shortName": "UpdateFeature", + "fullName": "google.cloud.gkehub.v1alpha.GkeHub.UpdateFeature", + "service": { + "shortName": "GkeHub", + "fullName": "google.cloud.gkehub.v1alpha.GkeHub" + } + } + } } - } - } - ] -} + ] +} \ No newline at end of file diff --git a/packages/google-cloud-gkehub/samples/generated/v1alpha2/snippet_metadata.google.cloud.gkehub.v1alpha2.json b/packages/google-cloud-gkehub/samples/generated/v1alpha2/snippet_metadata.google.cloud.gkehub.v1alpha2.json index 35be860ba45..b291f0999bc 100644 --- a/packages/google-cloud-gkehub/samples/generated/v1alpha2/snippet_metadata.google.cloud.gkehub.v1alpha2.json +++ b/packages/google-cloud-gkehub/samples/generated/v1alpha2/snippet_metadata.google.cloud.gkehub.v1alpha2.json @@ -1,351 +1,351 @@ { - "clientLibrary": { - "name": "nodejs-gkehub", - "version": "0.1.0", - "language": "TYPESCRIPT", - "apis": [ - { - "id": "google.cloud.gkehub.v1alpha2", - "version": "v1alpha2" - } - ] - }, - "snippets": [ - { - "regionTag": "gkehub_v1alpha2_generated_GkeHub_ListMemberships_async", - "title": "GkeHub listMemberships Sample", - "origin": "API_DEFINITION", - "description": " Lists Memberships in a given project and location.", - "canonical": true, - "file": "gke_hub.list_memberships.js", - "language": "JAVASCRIPT", - "segments": [ - { - "start": 25, - "end": 84, - "type": "FULL" - } - ], - "clientMethod": { - "shortName": "ListMemberships", - "fullName": "google.cloud.gkehub.v1alpha2.GkeHub.ListMemberships", - "async": true, - "parameters": [ - { - "name": "parent", - "type": "TYPE_STRING" - }, - { - "name": "page_size", - "type": "TYPE_INT32" - }, - { - "name": "page_token", - "type": "TYPE_STRING" - }, - { - "name": "filter", - "type": "TYPE_STRING" - }, - { - "name": "order_by", - "type": "TYPE_STRING" - } - ], - "resultType": ".google.cloud.gkehub.v1alpha2.ListMembershipsResponse", - "client": { - "shortName": "GkeHubClient", - "fullName": "google.cloud.gkehub.v1alpha2.GkeHubClient" - }, - "method": { - "shortName": "ListMemberships", - "fullName": "google.cloud.gkehub.v1alpha2.GkeHub.ListMemberships", - "service": { - "shortName": "GkeHub", - "fullName": "google.cloud.gkehub.v1alpha2.GkeHub" - } - } - } + "clientLibrary": { + "name": "nodejs-gkehub", + "version": "2.2.0", + "language": "TYPESCRIPT", + "apis": [ + { + "id": "google.cloud.gkehub.v1alpha2", + "version": "v1alpha2" + } + ] }, - { - "regionTag": "gkehub_v1alpha2_generated_GkeHub_GetMembership_async", - "title": "GkeHub getMembership Sample", - "origin": "API_DEFINITION", - "description": " Gets the details of a Membership.", - "canonical": true, - "file": "gke_hub.get_membership.js", - "language": "JAVASCRIPT", - "segments": [ + "snippets": [ { - "start": 25, - "end": 51, - "type": "FULL" - } - ], - "clientMethod": { - "shortName": "GetMembership", - "fullName": "google.cloud.gkehub.v1alpha2.GkeHub.GetMembership", - "async": true, - "parameters": [ - { - "name": "name", - "type": "TYPE_STRING" - } - ], - "resultType": ".google.cloud.gkehub.v1alpha2.Membership", - "client": { - "shortName": "GkeHubClient", - "fullName": "google.cloud.gkehub.v1alpha2.GkeHubClient" + "regionTag": "gkehub_v1alpha2_generated_GkeHub_ListMemberships_async", + "title": "GkeHub listMemberships Sample", + "origin": "API_DEFINITION", + "description": " Lists Memberships in a given project and location.", + "canonical": true, + "file": "gke_hub.list_memberships.js", + "language": "JAVASCRIPT", + "segments": [ + { + "start": 25, + "end": 84, + "type": "FULL" + } + ], + "clientMethod": { + "shortName": "ListMemberships", + "fullName": "google.cloud.gkehub.v1alpha2.GkeHub.ListMemberships", + "async": true, + "parameters": [ + { + "name": "parent", + "type": "TYPE_STRING" + }, + { + "name": "page_size", + "type": "TYPE_INT32" + }, + { + "name": "page_token", + "type": "TYPE_STRING" + }, + { + "name": "filter", + "type": "TYPE_STRING" + }, + { + "name": "order_by", + "type": "TYPE_STRING" + } + ], + "resultType": ".google.cloud.gkehub.v1alpha2.ListMembershipsResponse", + "client": { + "shortName": "GkeHubClient", + "fullName": "google.cloud.gkehub.v1alpha2.GkeHubClient" + }, + "method": { + "shortName": "ListMemberships", + "fullName": "google.cloud.gkehub.v1alpha2.GkeHub.ListMemberships", + "service": { + "shortName": "GkeHub", + "fullName": "google.cloud.gkehub.v1alpha2.GkeHub" + } + } + } }, - "method": { - "shortName": "GetMembership", - "fullName": "google.cloud.gkehub.v1alpha2.GkeHub.GetMembership", - "service": { - "shortName": "GkeHub", - "fullName": "google.cloud.gkehub.v1alpha2.GkeHub" - } - } - } - }, - { - "regionTag": "gkehub_v1alpha2_generated_GkeHub_CreateMembership_async", - "title": "GkeHub createMembership Sample", - "origin": "API_DEFINITION", - "description": " Creates a new Membership. **This is currently only supported for GKE clusters on Google Cloud**. To register other clusters, follow the instructions at https://cloud.google.com/anthos/multicluster-management/connect/registering-a-cluster.", - "canonical": true, - "file": "gke_hub.create_membership.js", - "language": "JAVASCRIPT", - "segments": [ { - "start": 25, - "end": 68, - "type": "FULL" - } - ], - "clientMethod": { - "shortName": "CreateMembership", - "fullName": "google.cloud.gkehub.v1alpha2.GkeHub.CreateMembership", - "async": true, - "parameters": [ - { - "name": "parent", - "type": "TYPE_STRING" - }, - { - "name": "membership_id", - "type": "TYPE_STRING" - }, - { - "name": "resource", - "type": ".google.cloud.gkehub.v1alpha2.Membership" - } - ], - "resultType": ".google.longrunning.Operation", - "client": { - "shortName": "GkeHubClient", - "fullName": "google.cloud.gkehub.v1alpha2.GkeHubClient" + "regionTag": "gkehub_v1alpha2_generated_GkeHub_GetMembership_async", + "title": "GkeHub getMembership Sample", + "origin": "API_DEFINITION", + "description": " Gets the details of a Membership.", + "canonical": true, + "file": "gke_hub.get_membership.js", + "language": "JAVASCRIPT", + "segments": [ + { + "start": 25, + "end": 51, + "type": "FULL" + } + ], + "clientMethod": { + "shortName": "GetMembership", + "fullName": "google.cloud.gkehub.v1alpha2.GkeHub.GetMembership", + "async": true, + "parameters": [ + { + "name": "name", + "type": "TYPE_STRING" + } + ], + "resultType": ".google.cloud.gkehub.v1alpha2.Membership", + "client": { + "shortName": "GkeHubClient", + "fullName": "google.cloud.gkehub.v1alpha2.GkeHubClient" + }, + "method": { + "shortName": "GetMembership", + "fullName": "google.cloud.gkehub.v1alpha2.GkeHub.GetMembership", + "service": { + "shortName": "GkeHub", + "fullName": "google.cloud.gkehub.v1alpha2.GkeHub" + } + } + } }, - "method": { - "shortName": "CreateMembership", - "fullName": "google.cloud.gkehub.v1alpha2.GkeHub.CreateMembership", - "service": { - "shortName": "GkeHub", - "fullName": "google.cloud.gkehub.v1alpha2.GkeHub" - } - } - } - }, - { - "regionTag": "gkehub_v1alpha2_generated_GkeHub_DeleteMembership_async", - "title": "GkeHub deleteMembership Sample", - "origin": "API_DEFINITION", - "description": " Removes a Membership. **This is currently only supported for GKE clusters on Google Cloud**. To unregister other clusters, follow the instructions at https://cloud.google.com/anthos/multicluster-management/connect/unregistering-a-cluster.", - "canonical": true, - "file": "gke_hub.delete_membership.js", - "language": "JAVASCRIPT", - "segments": [ { - "start": 25, - "end": 52, - "type": "FULL" - } - ], - "clientMethod": { - "shortName": "DeleteMembership", - "fullName": "google.cloud.gkehub.v1alpha2.GkeHub.DeleteMembership", - "async": true, - "parameters": [ - { - "name": "name", - "type": "TYPE_STRING" - } - ], - "resultType": ".google.longrunning.Operation", - "client": { - "shortName": "GkeHubClient", - "fullName": "google.cloud.gkehub.v1alpha2.GkeHubClient" + "regionTag": "gkehub_v1alpha2_generated_GkeHub_CreateMembership_async", + "title": "GkeHub createMembership Sample", + "origin": "API_DEFINITION", + "description": " Creates a new Membership. **This is currently only supported for GKE clusters on Google Cloud**. To register other clusters, follow the instructions at https://cloud.google.com/anthos/multicluster-management/connect/registering-a-cluster.", + "canonical": true, + "file": "gke_hub.create_membership.js", + "language": "JAVASCRIPT", + "segments": [ + { + "start": 25, + "end": 68, + "type": "FULL" + } + ], + "clientMethod": { + "shortName": "CreateMembership", + "fullName": "google.cloud.gkehub.v1alpha2.GkeHub.CreateMembership", + "async": true, + "parameters": [ + { + "name": "parent", + "type": "TYPE_STRING" + }, + { + "name": "membership_id", + "type": "TYPE_STRING" + }, + { + "name": "resource", + "type": ".google.cloud.gkehub.v1alpha2.Membership" + } + ], + "resultType": ".google.longrunning.Operation", + "client": { + "shortName": "GkeHubClient", + "fullName": "google.cloud.gkehub.v1alpha2.GkeHubClient" + }, + "method": { + "shortName": "CreateMembership", + "fullName": "google.cloud.gkehub.v1alpha2.GkeHub.CreateMembership", + "service": { + "shortName": "GkeHub", + "fullName": "google.cloud.gkehub.v1alpha2.GkeHub" + } + } + } }, - "method": { - "shortName": "DeleteMembership", - "fullName": "google.cloud.gkehub.v1alpha2.GkeHub.DeleteMembership", - "service": { - "shortName": "GkeHub", - "fullName": "google.cloud.gkehub.v1alpha2.GkeHub" - } - } - } - }, - { - "regionTag": "gkehub_v1alpha2_generated_GkeHub_UpdateMembership_async", - "title": "GkeHub updateMembership Sample", - "origin": "API_DEFINITION", - "description": " Updates an existing Membership.", - "canonical": true, - "file": "gke_hub.update_membership.js", - "language": "JAVASCRIPT", - "segments": [ { - "start": 25, - "end": 69, - "type": "FULL" - } - ], - "clientMethod": { - "shortName": "UpdateMembership", - "fullName": "google.cloud.gkehub.v1alpha2.GkeHub.UpdateMembership", - "async": true, - "parameters": [ - { - "name": "name", - "type": "TYPE_STRING" - }, - { - "name": "update_mask", - "type": ".google.protobuf.FieldMask" - }, - { - "name": "resource", - "type": ".google.cloud.gkehub.v1alpha2.Membership" - } - ], - "resultType": ".google.longrunning.Operation", - "client": { - "shortName": "GkeHubClient", - "fullName": "google.cloud.gkehub.v1alpha2.GkeHubClient" + "regionTag": "gkehub_v1alpha2_generated_GkeHub_DeleteMembership_async", + "title": "GkeHub deleteMembership Sample", + "origin": "API_DEFINITION", + "description": " Removes a Membership. **This is currently only supported for GKE clusters on Google Cloud**. To unregister other clusters, follow the instructions at https://cloud.google.com/anthos/multicluster-management/connect/unregistering-a-cluster.", + "canonical": true, + "file": "gke_hub.delete_membership.js", + "language": "JAVASCRIPT", + "segments": [ + { + "start": 25, + "end": 52, + "type": "FULL" + } + ], + "clientMethod": { + "shortName": "DeleteMembership", + "fullName": "google.cloud.gkehub.v1alpha2.GkeHub.DeleteMembership", + "async": true, + "parameters": [ + { + "name": "name", + "type": "TYPE_STRING" + } + ], + "resultType": ".google.longrunning.Operation", + "client": { + "shortName": "GkeHubClient", + "fullName": "google.cloud.gkehub.v1alpha2.GkeHubClient" + }, + "method": { + "shortName": "DeleteMembership", + "fullName": "google.cloud.gkehub.v1alpha2.GkeHub.DeleteMembership", + "service": { + "shortName": "GkeHub", + "fullName": "google.cloud.gkehub.v1alpha2.GkeHub" + } + } + } }, - "method": { - "shortName": "UpdateMembership", - "fullName": "google.cloud.gkehub.v1alpha2.GkeHub.UpdateMembership", - "service": { - "shortName": "GkeHub", - "fullName": "google.cloud.gkehub.v1alpha2.GkeHub" - } - } - } - }, - { - "regionTag": "gkehub_v1alpha2_generated_GkeHub_GenerateConnectManifest_async", - "title": "GkeHub generateConnectManifest Sample", - "origin": "API_DEFINITION", - "description": " Generates the manifest for deployment of the GKE connect agent. **This method is used internally by Google-provided libraries.** Most clients should not need to call this method directly.", - "canonical": true, - "file": "gke_hub.generate_connect_manifest.js", - "language": "JAVASCRIPT", - "segments": [ { - "start": 25, - "end": 84, - "type": "FULL" - } - ], - "clientMethod": { - "shortName": "GenerateConnectManifest", - "fullName": "google.cloud.gkehub.v1alpha2.GkeHub.GenerateConnectManifest", - "async": true, - "parameters": [ - { - "name": "name", - "type": "TYPE_STRING" - }, - { - "name": "namespace", - "type": "TYPE_STRING" - }, - { - "name": "proxy", - "type": "TYPE_BYTES" - }, - { - "name": "version", - "type": "TYPE_STRING" - }, - { - "name": "is_upgrade", - "type": "TYPE_BOOL" - }, - { - "name": "registry", - "type": "TYPE_STRING" - }, - { - "name": "image_pull_secret_content", - "type": "TYPE_BYTES" - } - ], - "resultType": ".google.cloud.gkehub.v1alpha2.GenerateConnectManifestResponse", - "client": { - "shortName": "GkeHubClient", - "fullName": "google.cloud.gkehub.v1alpha2.GkeHubClient" + "regionTag": "gkehub_v1alpha2_generated_GkeHub_UpdateMembership_async", + "title": "GkeHub updateMembership Sample", + "origin": "API_DEFINITION", + "description": " Updates an existing Membership.", + "canonical": true, + "file": "gke_hub.update_membership.js", + "language": "JAVASCRIPT", + "segments": [ + { + "start": 25, + "end": 69, + "type": "FULL" + } + ], + "clientMethod": { + "shortName": "UpdateMembership", + "fullName": "google.cloud.gkehub.v1alpha2.GkeHub.UpdateMembership", + "async": true, + "parameters": [ + { + "name": "name", + "type": "TYPE_STRING" + }, + { + "name": "update_mask", + "type": ".google.protobuf.FieldMask" + }, + { + "name": "resource", + "type": ".google.cloud.gkehub.v1alpha2.Membership" + } + ], + "resultType": ".google.longrunning.Operation", + "client": { + "shortName": "GkeHubClient", + "fullName": "google.cloud.gkehub.v1alpha2.GkeHubClient" + }, + "method": { + "shortName": "UpdateMembership", + "fullName": "google.cloud.gkehub.v1alpha2.GkeHub.UpdateMembership", + "service": { + "shortName": "GkeHub", + "fullName": "google.cloud.gkehub.v1alpha2.GkeHub" + } + } + } }, - "method": { - "shortName": "GenerateConnectManifest", - "fullName": "google.cloud.gkehub.v1alpha2.GkeHub.GenerateConnectManifest", - "service": { - "shortName": "GkeHub", - "fullName": "google.cloud.gkehub.v1alpha2.GkeHub" - } - } - } - }, - { - "regionTag": "gkehub_v1alpha2_generated_GkeHub_InitializeHub_async", - "title": "GkeHub initializeHub Sample", - "origin": "API_DEFINITION", - "description": " Initializes the Hub in this project, which includes creating the default Hub Service Account and the Hub Workload Identity Pool. Initialization is optional, and happens automatically when the first Membership is created. InitializeHub should be called when the first Membership cannot be registered without these resources. A common example is granting the Hub Service Account access to another project, which requires the account to exist first.", - "canonical": true, - "file": "gke_hub.initialize_hub.js", - "language": "JAVASCRIPT", - "segments": [ { - "start": 25, - "end": 51, - "type": "FULL" - } - ], - "clientMethod": { - "shortName": "InitializeHub", - "fullName": "google.cloud.gkehub.v1alpha2.GkeHub.InitializeHub", - "async": true, - "parameters": [ - { - "name": "project", - "type": "TYPE_STRING" - } - ], - "resultType": ".google.cloud.gkehub.v1alpha2.InitializeHubResponse", - "client": { - "shortName": "GkeHubClient", - "fullName": "google.cloud.gkehub.v1alpha2.GkeHubClient" + "regionTag": "gkehub_v1alpha2_generated_GkeHub_GenerateConnectManifest_async", + "title": "GkeHub generateConnectManifest Sample", + "origin": "API_DEFINITION", + "description": " Generates the manifest for deployment of the GKE connect agent. **This method is used internally by Google-provided libraries.** Most clients should not need to call this method directly.", + "canonical": true, + "file": "gke_hub.generate_connect_manifest.js", + "language": "JAVASCRIPT", + "segments": [ + { + "start": 25, + "end": 84, + "type": "FULL" + } + ], + "clientMethod": { + "shortName": "GenerateConnectManifest", + "fullName": "google.cloud.gkehub.v1alpha2.GkeHub.GenerateConnectManifest", + "async": true, + "parameters": [ + { + "name": "name", + "type": "TYPE_STRING" + }, + { + "name": "namespace", + "type": "TYPE_STRING" + }, + { + "name": "proxy", + "type": "TYPE_BYTES" + }, + { + "name": "version", + "type": "TYPE_STRING" + }, + { + "name": "is_upgrade", + "type": "TYPE_BOOL" + }, + { + "name": "registry", + "type": "TYPE_STRING" + }, + { + "name": "image_pull_secret_content", + "type": "TYPE_BYTES" + } + ], + "resultType": ".google.cloud.gkehub.v1alpha2.GenerateConnectManifestResponse", + "client": { + "shortName": "GkeHubClient", + "fullName": "google.cloud.gkehub.v1alpha2.GkeHubClient" + }, + "method": { + "shortName": "GenerateConnectManifest", + "fullName": "google.cloud.gkehub.v1alpha2.GkeHub.GenerateConnectManifest", + "service": { + "shortName": "GkeHub", + "fullName": "google.cloud.gkehub.v1alpha2.GkeHub" + } + } + } }, - "method": { - "shortName": "InitializeHub", - "fullName": "google.cloud.gkehub.v1alpha2.GkeHub.InitializeHub", - "service": { - "shortName": "GkeHub", - "fullName": "google.cloud.gkehub.v1alpha2.GkeHub" - } + { + "regionTag": "gkehub_v1alpha2_generated_GkeHub_InitializeHub_async", + "title": "GkeHub initializeHub Sample", + "origin": "API_DEFINITION", + "description": " Initializes the Hub in this project, which includes creating the default Hub Service Account and the Hub Workload Identity Pool. Initialization is optional, and happens automatically when the first Membership is created. InitializeHub should be called when the first Membership cannot be registered without these resources. A common example is granting the Hub Service Account access to another project, which requires the account to exist first.", + "canonical": true, + "file": "gke_hub.initialize_hub.js", + "language": "JAVASCRIPT", + "segments": [ + { + "start": 25, + "end": 51, + "type": "FULL" + } + ], + "clientMethod": { + "shortName": "InitializeHub", + "fullName": "google.cloud.gkehub.v1alpha2.GkeHub.InitializeHub", + "async": true, + "parameters": [ + { + "name": "project", + "type": "TYPE_STRING" + } + ], + "resultType": ".google.cloud.gkehub.v1alpha2.InitializeHubResponse", + "client": { + "shortName": "GkeHubClient", + "fullName": "google.cloud.gkehub.v1alpha2.GkeHubClient" + }, + "method": { + "shortName": "InitializeHub", + "fullName": "google.cloud.gkehub.v1alpha2.GkeHub.InitializeHub", + "service": { + "shortName": "GkeHub", + "fullName": "google.cloud.gkehub.v1alpha2.GkeHub" + } + } + } } - } - } - ] -} + ] +} \ No newline at end of file diff --git a/packages/google-cloud-gkehub/samples/generated/v1beta/snippet_metadata.google.cloud.gkehub.v1beta.json b/packages/google-cloud-gkehub/samples/generated/v1beta/snippet_metadata.google.cloud.gkehub.v1beta.json index 1a16b534fa6..7a25fcca005 100644 --- a/packages/google-cloud-gkehub/samples/generated/v1beta/snippet_metadata.google.cloud.gkehub.v1beta.json +++ b/packages/google-cloud-gkehub/samples/generated/v1beta/snippet_metadata.google.cloud.gkehub.v1beta.json @@ -1,263 +1,263 @@ { - "clientLibrary": { - "name": "nodejs-gkehub", - "version": "0.1.0", - "language": "TYPESCRIPT", - "apis": [ - { - "id": "google.cloud.gkehub.v1beta", - "version": "v1beta" - } - ] - }, - "snippets": [ - { - "regionTag": "gkehub_v1beta_generated_GkeHub_ListFeatures_async", - "title": "GkeHub listFeatures Sample", - "origin": "API_DEFINITION", - "description": " Lists Features in a given project and location.", - "canonical": true, - "file": "gke_hub.list_features.js", - "language": "JAVASCRIPT", - "segments": [ - { - "start": 25, - "end": 81, - "type": "FULL" - } - ], - "clientMethod": { - "shortName": "ListFeatures", - "fullName": "google.cloud.gkehub.v1beta.GkeHub.ListFeatures", - "async": true, - "parameters": [ - { - "name": "parent", - "type": "TYPE_STRING" - }, - { - "name": "page_size", - "type": "TYPE_INT32" - }, - { - "name": "page_token", - "type": "TYPE_STRING" - }, - { - "name": "filter", - "type": "TYPE_STRING" - }, - { - "name": "order_by", - "type": "TYPE_STRING" - } - ], - "resultType": ".google.cloud.gkehub.v1beta.ListFeaturesResponse", - "client": { - "shortName": "GkeHubClient", - "fullName": "google.cloud.gkehub.v1beta.GkeHubClient" - }, - "method": { - "shortName": "ListFeatures", - "fullName": "google.cloud.gkehub.v1beta.GkeHub.ListFeatures", - "service": { - "shortName": "GkeHub", - "fullName": "google.cloud.gkehub.v1beta.GkeHub" - } - } - } + "clientLibrary": { + "name": "nodejs-gkehub", + "version": "2.2.0", + "language": "TYPESCRIPT", + "apis": [ + { + "id": "google.cloud.gkehub.v1beta", + "version": "v1beta" + } + ] }, - { - "regionTag": "gkehub_v1beta_generated_GkeHub_GetFeature_async", - "title": "GkeHub getFeature Sample", - "origin": "API_DEFINITION", - "description": " Gets details of a single Feature.", - "canonical": true, - "file": "gke_hub.get_feature.js", - "language": "JAVASCRIPT", - "segments": [ + "snippets": [ { - "start": 25, - "end": 50, - "type": "FULL" - } - ], - "clientMethod": { - "shortName": "GetFeature", - "fullName": "google.cloud.gkehub.v1beta.GkeHub.GetFeature", - "async": true, - "parameters": [ - { - "name": "name", - "type": "TYPE_STRING" - } - ], - "resultType": ".google.cloud.gkehub.v1beta.Feature", - "client": { - "shortName": "GkeHubClient", - "fullName": "google.cloud.gkehub.v1beta.GkeHubClient" + "regionTag": "gkehub_v1beta_generated_GkeHub_ListFeatures_async", + "title": "GkeHub listFeatures Sample", + "origin": "API_DEFINITION", + "description": " Lists Features in a given project and location.", + "canonical": true, + "file": "gke_hub.list_features.js", + "language": "JAVASCRIPT", + "segments": [ + { + "start": 25, + "end": 81, + "type": "FULL" + } + ], + "clientMethod": { + "shortName": "ListFeatures", + "fullName": "google.cloud.gkehub.v1beta.GkeHub.ListFeatures", + "async": true, + "parameters": [ + { + "name": "parent", + "type": "TYPE_STRING" + }, + { + "name": "page_size", + "type": "TYPE_INT32" + }, + { + "name": "page_token", + "type": "TYPE_STRING" + }, + { + "name": "filter", + "type": "TYPE_STRING" + }, + { + "name": "order_by", + "type": "TYPE_STRING" + } + ], + "resultType": ".google.cloud.gkehub.v1beta.ListFeaturesResponse", + "client": { + "shortName": "GkeHubClient", + "fullName": "google.cloud.gkehub.v1beta.GkeHubClient" + }, + "method": { + "shortName": "ListFeatures", + "fullName": "google.cloud.gkehub.v1beta.GkeHub.ListFeatures", + "service": { + "shortName": "GkeHub", + "fullName": "google.cloud.gkehub.v1beta.GkeHub" + } + } + } }, - "method": { - "shortName": "GetFeature", - "fullName": "google.cloud.gkehub.v1beta.GkeHub.GetFeature", - "service": { - "shortName": "GkeHub", - "fullName": "google.cloud.gkehub.v1beta.GkeHub" - } - } - } - }, - { - "regionTag": "gkehub_v1beta_generated_GkeHub_CreateFeature_async", - "title": "GkeHub createFeature Sample", - "origin": "API_DEFINITION", - "description": " Adds a new Feature.", - "canonical": true, - "file": "gke_hub.create_feature.js", - "language": "JAVASCRIPT", - "segments": [ { - "start": 25, - "end": 73, - "type": "FULL" - } - ], - "clientMethod": { - "shortName": "CreateFeature", - "fullName": "google.cloud.gkehub.v1beta.GkeHub.CreateFeature", - "async": true, - "parameters": [ - { - "name": "parent", - "type": "TYPE_STRING" - }, - { - "name": "feature_id", - "type": "TYPE_STRING" - }, - { - "name": "resource", - "type": ".google.cloud.gkehub.v1beta.Feature" - }, - { - "name": "request_id", - "type": "TYPE_STRING" - } - ], - "resultType": ".google.longrunning.Operation", - "client": { - "shortName": "GkeHubClient", - "fullName": "google.cloud.gkehub.v1beta.GkeHubClient" + "regionTag": "gkehub_v1beta_generated_GkeHub_GetFeature_async", + "title": "GkeHub getFeature Sample", + "origin": "API_DEFINITION", + "description": " Gets details of a single Feature.", + "canonical": true, + "file": "gke_hub.get_feature.js", + "language": "JAVASCRIPT", + "segments": [ + { + "start": 25, + "end": 50, + "type": "FULL" + } + ], + "clientMethod": { + "shortName": "GetFeature", + "fullName": "google.cloud.gkehub.v1beta.GkeHub.GetFeature", + "async": true, + "parameters": [ + { + "name": "name", + "type": "TYPE_STRING" + } + ], + "resultType": ".google.cloud.gkehub.v1beta.Feature", + "client": { + "shortName": "GkeHubClient", + "fullName": "google.cloud.gkehub.v1beta.GkeHubClient" + }, + "method": { + "shortName": "GetFeature", + "fullName": "google.cloud.gkehub.v1beta.GkeHub.GetFeature", + "service": { + "shortName": "GkeHub", + "fullName": "google.cloud.gkehub.v1beta.GkeHub" + } + } + } }, - "method": { - "shortName": "CreateFeature", - "fullName": "google.cloud.gkehub.v1beta.GkeHub.CreateFeature", - "service": { - "shortName": "GkeHub", - "fullName": "google.cloud.gkehub.v1beta.GkeHub" - } - } - } - }, - { - "regionTag": "gkehub_v1beta_generated_GkeHub_DeleteFeature_async", - "title": "GkeHub deleteFeature Sample", - "origin": "API_DEFINITION", - "description": " Removes a Feature.", - "canonical": true, - "file": "gke_hub.delete_feature.js", - "language": "JAVASCRIPT", - "segments": [ { - "start": 25, - "end": 71, - "type": "FULL" - } - ], - "clientMethod": { - "shortName": "DeleteFeature", - "fullName": "google.cloud.gkehub.v1beta.GkeHub.DeleteFeature", - "async": true, - "parameters": [ - { - "name": "name", - "type": "TYPE_STRING" - }, - { - "name": "force", - "type": "TYPE_BOOL" - }, - { - "name": "request_id", - "type": "TYPE_STRING" - } - ], - "resultType": ".google.longrunning.Operation", - "client": { - "shortName": "GkeHubClient", - "fullName": "google.cloud.gkehub.v1beta.GkeHubClient" + "regionTag": "gkehub_v1beta_generated_GkeHub_CreateFeature_async", + "title": "GkeHub createFeature Sample", + "origin": "API_DEFINITION", + "description": " Adds a new Feature.", + "canonical": true, + "file": "gke_hub.create_feature.js", + "language": "JAVASCRIPT", + "segments": [ + { + "start": 25, + "end": 73, + "type": "FULL" + } + ], + "clientMethod": { + "shortName": "CreateFeature", + "fullName": "google.cloud.gkehub.v1beta.GkeHub.CreateFeature", + "async": true, + "parameters": [ + { + "name": "parent", + "type": "TYPE_STRING" + }, + { + "name": "feature_id", + "type": "TYPE_STRING" + }, + { + "name": "resource", + "type": ".google.cloud.gkehub.v1beta.Feature" + }, + { + "name": "request_id", + "type": "TYPE_STRING" + } + ], + "resultType": ".google.longrunning.Operation", + "client": { + "shortName": "GkeHubClient", + "fullName": "google.cloud.gkehub.v1beta.GkeHubClient" + }, + "method": { + "shortName": "CreateFeature", + "fullName": "google.cloud.gkehub.v1beta.GkeHub.CreateFeature", + "service": { + "shortName": "GkeHub", + "fullName": "google.cloud.gkehub.v1beta.GkeHub" + } + } + } }, - "method": { - "shortName": "DeleteFeature", - "fullName": "google.cloud.gkehub.v1beta.GkeHub.DeleteFeature", - "service": { - "shortName": "GkeHub", - "fullName": "google.cloud.gkehub.v1beta.GkeHub" - } - } - } - }, - { - "regionTag": "gkehub_v1beta_generated_GkeHub_UpdateFeature_async", - "title": "GkeHub updateFeature Sample", - "origin": "API_DEFINITION", - "description": " Updates an existing Feature.", - "canonical": true, - "file": "gke_hub.update_feature.js", - "language": "JAVASCRIPT", - "segments": [ { - "start": 25, - "end": 80, - "type": "FULL" - } - ], - "clientMethod": { - "shortName": "UpdateFeature", - "fullName": "google.cloud.gkehub.v1beta.GkeHub.UpdateFeature", - "async": true, - "parameters": [ - { - "name": "name", - "type": "TYPE_STRING" - }, - { - "name": "update_mask", - "type": ".google.protobuf.FieldMask" - }, - { - "name": "resource", - "type": ".google.cloud.gkehub.v1beta.Feature" - }, - { - "name": "request_id", - "type": "TYPE_STRING" - } - ], - "resultType": ".google.longrunning.Operation", - "client": { - "shortName": "GkeHubClient", - "fullName": "google.cloud.gkehub.v1beta.GkeHubClient" + "regionTag": "gkehub_v1beta_generated_GkeHub_DeleteFeature_async", + "title": "GkeHub deleteFeature Sample", + "origin": "API_DEFINITION", + "description": " Removes a Feature.", + "canonical": true, + "file": "gke_hub.delete_feature.js", + "language": "JAVASCRIPT", + "segments": [ + { + "start": 25, + "end": 71, + "type": "FULL" + } + ], + "clientMethod": { + "shortName": "DeleteFeature", + "fullName": "google.cloud.gkehub.v1beta.GkeHub.DeleteFeature", + "async": true, + "parameters": [ + { + "name": "name", + "type": "TYPE_STRING" + }, + { + "name": "force", + "type": "TYPE_BOOL" + }, + { + "name": "request_id", + "type": "TYPE_STRING" + } + ], + "resultType": ".google.longrunning.Operation", + "client": { + "shortName": "GkeHubClient", + "fullName": "google.cloud.gkehub.v1beta.GkeHubClient" + }, + "method": { + "shortName": "DeleteFeature", + "fullName": "google.cloud.gkehub.v1beta.GkeHub.DeleteFeature", + "service": { + "shortName": "GkeHub", + "fullName": "google.cloud.gkehub.v1beta.GkeHub" + } + } + } }, - "method": { - "shortName": "UpdateFeature", - "fullName": "google.cloud.gkehub.v1beta.GkeHub.UpdateFeature", - "service": { - "shortName": "GkeHub", - "fullName": "google.cloud.gkehub.v1beta.GkeHub" - } + { + "regionTag": "gkehub_v1beta_generated_GkeHub_UpdateFeature_async", + "title": "GkeHub updateFeature Sample", + "origin": "API_DEFINITION", + "description": " Updates an existing Feature.", + "canonical": true, + "file": "gke_hub.update_feature.js", + "language": "JAVASCRIPT", + "segments": [ + { + "start": 25, + "end": 80, + "type": "FULL" + } + ], + "clientMethod": { + "shortName": "UpdateFeature", + "fullName": "google.cloud.gkehub.v1beta.GkeHub.UpdateFeature", + "async": true, + "parameters": [ + { + "name": "name", + "type": "TYPE_STRING" + }, + { + "name": "update_mask", + "type": ".google.protobuf.FieldMask" + }, + { + "name": "resource", + "type": ".google.cloud.gkehub.v1beta.Feature" + }, + { + "name": "request_id", + "type": "TYPE_STRING" + } + ], + "resultType": ".google.longrunning.Operation", + "client": { + "shortName": "GkeHubClient", + "fullName": "google.cloud.gkehub.v1beta.GkeHubClient" + }, + "method": { + "shortName": "UpdateFeature", + "fullName": "google.cloud.gkehub.v1beta.GkeHub.UpdateFeature", + "service": { + "shortName": "GkeHub", + "fullName": "google.cloud.gkehub.v1beta.GkeHub" + } + } + } } - } - } - ] -} + ] +} \ No newline at end of file diff --git a/packages/google-cloud-gkehub/samples/generated/v1beta1/snippet_metadata.google.cloud.gkehub.v1beta1.json b/packages/google-cloud-gkehub/samples/generated/v1beta1/snippet_metadata.google.cloud.gkehub.v1beta1.json index 06a10ec2a23..a4f353e6b28 100644 --- a/packages/google-cloud-gkehub/samples/generated/v1beta1/snippet_metadata.google.cloud.gkehub.v1beta1.json +++ b/packages/google-cloud-gkehub/samples/generated/v1beta1/snippet_metadata.google.cloud.gkehub.v1beta1.json @@ -1,415 +1,415 @@ { - "clientLibrary": { - "name": "nodejs-gkehub", - "version": "0.1.0", - "language": "TYPESCRIPT", - "apis": [ - { - "id": "google.cloud.gkehub.v1beta1", - "version": "v1beta1" - } - ] - }, - "snippets": [ - { - "regionTag": "gkehub_v1beta1_generated_GkeHubMembershipService_ListMemberships_async", - "title": "GkeHubMembershipService listMemberships Sample", - "origin": "API_DEFINITION", - "description": " Lists Memberships in a given project and location.", - "canonical": true, - "file": "gke_hub_membership_service.list_memberships.js", - "language": "JAVASCRIPT", - "segments": [ - { - "start": 25, - "end": 84, - "type": "FULL" - } - ], - "clientMethod": { - "shortName": "ListMemberships", - "fullName": "google.cloud.gkehub.v1beta1.GkeHubMembershipService.ListMemberships", - "async": true, - "parameters": [ - { - "name": "parent", - "type": "TYPE_STRING" - }, - { - "name": "page_size", - "type": "TYPE_INT32" - }, - { - "name": "page_token", - "type": "TYPE_STRING" - }, - { - "name": "filter", - "type": "TYPE_STRING" - }, - { - "name": "order_by", - "type": "TYPE_STRING" - } - ], - "resultType": ".google.cloud.gkehub.v1beta1.ListMembershipsResponse", - "client": { - "shortName": "GkeHubMembershipServiceClient", - "fullName": "google.cloud.gkehub.v1beta1.GkeHubMembershipServiceClient" - }, - "method": { - "shortName": "ListMemberships", - "fullName": "google.cloud.gkehub.v1beta1.GkeHubMembershipService.ListMemberships", - "service": { - "shortName": "GkeHubMembershipService", - "fullName": "google.cloud.gkehub.v1beta1.GkeHubMembershipService" - } - } - } + "clientLibrary": { + "name": "nodejs-gkehub", + "version": "2.2.0", + "language": "TYPESCRIPT", + "apis": [ + { + "id": "google.cloud.gkehub.v1beta1", + "version": "v1beta1" + } + ] }, - { - "regionTag": "gkehub_v1beta1_generated_GkeHubMembershipService_GetMembership_async", - "title": "GkeHubMembershipService getMembership Sample", - "origin": "API_DEFINITION", - "description": " Gets the details of a Membership.", - "canonical": true, - "file": "gke_hub_membership_service.get_membership.js", - "language": "JAVASCRIPT", - "segments": [ + "snippets": [ { - "start": 25, - "end": 51, - "type": "FULL" - } - ], - "clientMethod": { - "shortName": "GetMembership", - "fullName": "google.cloud.gkehub.v1beta1.GkeHubMembershipService.GetMembership", - "async": true, - "parameters": [ - { - "name": "name", - "type": "TYPE_STRING" - } - ], - "resultType": ".google.cloud.gkehub.v1beta1.Membership", - "client": { - "shortName": "GkeHubMembershipServiceClient", - "fullName": "google.cloud.gkehub.v1beta1.GkeHubMembershipServiceClient" + "regionTag": "gkehub_v1beta1_generated_GkeHubMembershipService_ListMemberships_async", + "title": "GkeHubMembershipService listMemberships Sample", + "origin": "API_DEFINITION", + "description": " Lists Memberships in a given project and location.", + "canonical": true, + "file": "gke_hub_membership_service.list_memberships.js", + "language": "JAVASCRIPT", + "segments": [ + { + "start": 25, + "end": 84, + "type": "FULL" + } + ], + "clientMethod": { + "shortName": "ListMemberships", + "fullName": "google.cloud.gkehub.v1beta1.GkeHubMembershipService.ListMemberships", + "async": true, + "parameters": [ + { + "name": "parent", + "type": "TYPE_STRING" + }, + { + "name": "page_size", + "type": "TYPE_INT32" + }, + { + "name": "page_token", + "type": "TYPE_STRING" + }, + { + "name": "filter", + "type": "TYPE_STRING" + }, + { + "name": "order_by", + "type": "TYPE_STRING" + } + ], + "resultType": ".google.cloud.gkehub.v1beta1.ListMembershipsResponse", + "client": { + "shortName": "GkeHubMembershipServiceClient", + "fullName": "google.cloud.gkehub.v1beta1.GkeHubMembershipServiceClient" + }, + "method": { + "shortName": "ListMemberships", + "fullName": "google.cloud.gkehub.v1beta1.GkeHubMembershipService.ListMemberships", + "service": { + "shortName": "GkeHubMembershipService", + "fullName": "google.cloud.gkehub.v1beta1.GkeHubMembershipService" + } + } + } }, - "method": { - "shortName": "GetMembership", - "fullName": "google.cloud.gkehub.v1beta1.GkeHubMembershipService.GetMembership", - "service": { - "shortName": "GkeHubMembershipService", - "fullName": "google.cloud.gkehub.v1beta1.GkeHubMembershipService" - } - } - } - }, - { - "regionTag": "gkehub_v1beta1_generated_GkeHubMembershipService_CreateMembership_async", - "title": "GkeHubMembershipService createMembership Sample", - "origin": "API_DEFINITION", - "description": " Creates a new Membership. **This is currently only supported for GKE clusters on Google Cloud**. To register other clusters, follow the instructions at https://cloud.google.com/anthos/multicluster-management/connect/registering-a-cluster.", - "canonical": true, - "file": "gke_hub_membership_service.create_membership.js", - "language": "JAVASCRIPT", - "segments": [ { - "start": 25, - "end": 82, - "type": "FULL" - } - ], - "clientMethod": { - "shortName": "CreateMembership", - "fullName": "google.cloud.gkehub.v1beta1.GkeHubMembershipService.CreateMembership", - "async": true, - "parameters": [ - { - "name": "parent", - "type": "TYPE_STRING" - }, - { - "name": "membership_id", - "type": "TYPE_STRING" - }, - { - "name": "resource", - "type": ".google.cloud.gkehub.v1beta1.Membership" - }, - { - "name": "request_id", - "type": "TYPE_STRING" - } - ], - "resultType": ".google.longrunning.Operation", - "client": { - "shortName": "GkeHubMembershipServiceClient", - "fullName": "google.cloud.gkehub.v1beta1.GkeHubMembershipServiceClient" + "regionTag": "gkehub_v1beta1_generated_GkeHubMembershipService_GetMembership_async", + "title": "GkeHubMembershipService getMembership Sample", + "origin": "API_DEFINITION", + "description": " Gets the details of a Membership.", + "canonical": true, + "file": "gke_hub_membership_service.get_membership.js", + "language": "JAVASCRIPT", + "segments": [ + { + "start": 25, + "end": 51, + "type": "FULL" + } + ], + "clientMethod": { + "shortName": "GetMembership", + "fullName": "google.cloud.gkehub.v1beta1.GkeHubMembershipService.GetMembership", + "async": true, + "parameters": [ + { + "name": "name", + "type": "TYPE_STRING" + } + ], + "resultType": ".google.cloud.gkehub.v1beta1.Membership", + "client": { + "shortName": "GkeHubMembershipServiceClient", + "fullName": "google.cloud.gkehub.v1beta1.GkeHubMembershipServiceClient" + }, + "method": { + "shortName": "GetMembership", + "fullName": "google.cloud.gkehub.v1beta1.GkeHubMembershipService.GetMembership", + "service": { + "shortName": "GkeHubMembershipService", + "fullName": "google.cloud.gkehub.v1beta1.GkeHubMembershipService" + } + } + } }, - "method": { - "shortName": "CreateMembership", - "fullName": "google.cloud.gkehub.v1beta1.GkeHubMembershipService.CreateMembership", - "service": { - "shortName": "GkeHubMembershipService", - "fullName": "google.cloud.gkehub.v1beta1.GkeHubMembershipService" - } - } - } - }, - { - "regionTag": "gkehub_v1beta1_generated_GkeHubMembershipService_DeleteMembership_async", - "title": "GkeHubMembershipService deleteMembership Sample", - "origin": "API_DEFINITION", - "description": " Removes a Membership. **This is currently only supported for GKE clusters on Google Cloud**. To unregister other clusters, follow the instructions at https://cloud.google.com/anthos/multicluster-management/connect/unregistering-a-cluster.", - "canonical": true, - "file": "gke_hub_membership_service.delete_membership.js", - "language": "JAVASCRIPT", - "segments": [ { - "start": 25, - "end": 66, - "type": "FULL" - } - ], - "clientMethod": { - "shortName": "DeleteMembership", - "fullName": "google.cloud.gkehub.v1beta1.GkeHubMembershipService.DeleteMembership", - "async": true, - "parameters": [ - { - "name": "name", - "type": "TYPE_STRING" - }, - { - "name": "request_id", - "type": "TYPE_STRING" - } - ], - "resultType": ".google.longrunning.Operation", - "client": { - "shortName": "GkeHubMembershipServiceClient", - "fullName": "google.cloud.gkehub.v1beta1.GkeHubMembershipServiceClient" + "regionTag": "gkehub_v1beta1_generated_GkeHubMembershipService_CreateMembership_async", + "title": "GkeHubMembershipService createMembership Sample", + "origin": "API_DEFINITION", + "description": " Creates a new Membership. **This is currently only supported for GKE clusters on Google Cloud**. To register other clusters, follow the instructions at https://cloud.google.com/anthos/multicluster-management/connect/registering-a-cluster.", + "canonical": true, + "file": "gke_hub_membership_service.create_membership.js", + "language": "JAVASCRIPT", + "segments": [ + { + "start": 25, + "end": 82, + "type": "FULL" + } + ], + "clientMethod": { + "shortName": "CreateMembership", + "fullName": "google.cloud.gkehub.v1beta1.GkeHubMembershipService.CreateMembership", + "async": true, + "parameters": [ + { + "name": "parent", + "type": "TYPE_STRING" + }, + { + "name": "membership_id", + "type": "TYPE_STRING" + }, + { + "name": "resource", + "type": ".google.cloud.gkehub.v1beta1.Membership" + }, + { + "name": "request_id", + "type": "TYPE_STRING" + } + ], + "resultType": ".google.longrunning.Operation", + "client": { + "shortName": "GkeHubMembershipServiceClient", + "fullName": "google.cloud.gkehub.v1beta1.GkeHubMembershipServiceClient" + }, + "method": { + "shortName": "CreateMembership", + "fullName": "google.cloud.gkehub.v1beta1.GkeHubMembershipService.CreateMembership", + "service": { + "shortName": "GkeHubMembershipService", + "fullName": "google.cloud.gkehub.v1beta1.GkeHubMembershipService" + } + } + } }, - "method": { - "shortName": "DeleteMembership", - "fullName": "google.cloud.gkehub.v1beta1.GkeHubMembershipService.DeleteMembership", - "service": { - "shortName": "GkeHubMembershipService", - "fullName": "google.cloud.gkehub.v1beta1.GkeHubMembershipService" - } - } - } - }, - { - "regionTag": "gkehub_v1beta1_generated_GkeHubMembershipService_UpdateMembership_async", - "title": "GkeHubMembershipService updateMembership Sample", - "origin": "API_DEFINITION", - "description": " Updates an existing Membership.", - "canonical": true, - "file": "gke_hub_membership_service.update_membership.js", - "language": "JAVASCRIPT", - "segments": [ { - "start": 25, - "end": 84, - "type": "FULL" - } - ], - "clientMethod": { - "shortName": "UpdateMembership", - "fullName": "google.cloud.gkehub.v1beta1.GkeHubMembershipService.UpdateMembership", - "async": true, - "parameters": [ - { - "name": "name", - "type": "TYPE_STRING" - }, - { - "name": "update_mask", - "type": ".google.protobuf.FieldMask" - }, - { - "name": "resource", - "type": ".google.cloud.gkehub.v1beta1.Membership" - }, - { - "name": "request_id", - "type": "TYPE_STRING" - } - ], - "resultType": ".google.longrunning.Operation", - "client": { - "shortName": "GkeHubMembershipServiceClient", - "fullName": "google.cloud.gkehub.v1beta1.GkeHubMembershipServiceClient" + "regionTag": "gkehub_v1beta1_generated_GkeHubMembershipService_DeleteMembership_async", + "title": "GkeHubMembershipService deleteMembership Sample", + "origin": "API_DEFINITION", + "description": " Removes a Membership. **This is currently only supported for GKE clusters on Google Cloud**. To unregister other clusters, follow the instructions at https://cloud.google.com/anthos/multicluster-management/connect/unregistering-a-cluster.", + "canonical": true, + "file": "gke_hub_membership_service.delete_membership.js", + "language": "JAVASCRIPT", + "segments": [ + { + "start": 25, + "end": 66, + "type": "FULL" + } + ], + "clientMethod": { + "shortName": "DeleteMembership", + "fullName": "google.cloud.gkehub.v1beta1.GkeHubMembershipService.DeleteMembership", + "async": true, + "parameters": [ + { + "name": "name", + "type": "TYPE_STRING" + }, + { + "name": "request_id", + "type": "TYPE_STRING" + } + ], + "resultType": ".google.longrunning.Operation", + "client": { + "shortName": "GkeHubMembershipServiceClient", + "fullName": "google.cloud.gkehub.v1beta1.GkeHubMembershipServiceClient" + }, + "method": { + "shortName": "DeleteMembership", + "fullName": "google.cloud.gkehub.v1beta1.GkeHubMembershipService.DeleteMembership", + "service": { + "shortName": "GkeHubMembershipService", + "fullName": "google.cloud.gkehub.v1beta1.GkeHubMembershipService" + } + } + } }, - "method": { - "shortName": "UpdateMembership", - "fullName": "google.cloud.gkehub.v1beta1.GkeHubMembershipService.UpdateMembership", - "service": { - "shortName": "GkeHubMembershipService", - "fullName": "google.cloud.gkehub.v1beta1.GkeHubMembershipService" - } - } - } - }, - { - "regionTag": "gkehub_v1beta1_generated_GkeHubMembershipService_GenerateConnectManifest_async", - "title": "GkeHubMembershipService generateConnectManifest Sample", - "origin": "API_DEFINITION", - "description": " Generates the manifest for deployment of the GKE connect agent. **This method is used internally by Google-provided libraries.** Most clients should not need to call this method directly.", - "canonical": true, - "file": "gke_hub_membership_service.generate_connect_manifest.js", - "language": "JAVASCRIPT", - "segments": [ { - "start": 25, - "end": 74, - "type": "FULL" - } - ], - "clientMethod": { - "shortName": "GenerateConnectManifest", - "fullName": "google.cloud.gkehub.v1beta1.GkeHubMembershipService.GenerateConnectManifest", - "async": true, - "parameters": [ - { - "name": "name", - "type": "TYPE_STRING" - }, - { - "name": "connect_agent", - "type": ".google.cloud.gkehub.v1beta1.ConnectAgent" - }, - { - "name": "version", - "type": "TYPE_STRING" - }, - { - "name": "is_upgrade", - "type": "TYPE_BOOL" - }, - { - "name": "registry", - "type": "TYPE_STRING" - }, - { - "name": "image_pull_secret_content", - "type": "TYPE_BYTES" - } - ], - "resultType": ".google.cloud.gkehub.v1beta1.GenerateConnectManifestResponse", - "client": { - "shortName": "GkeHubMembershipServiceClient", - "fullName": "google.cloud.gkehub.v1beta1.GkeHubMembershipServiceClient" + "regionTag": "gkehub_v1beta1_generated_GkeHubMembershipService_UpdateMembership_async", + "title": "GkeHubMembershipService updateMembership Sample", + "origin": "API_DEFINITION", + "description": " Updates an existing Membership.", + "canonical": true, + "file": "gke_hub_membership_service.update_membership.js", + "language": "JAVASCRIPT", + "segments": [ + { + "start": 25, + "end": 84, + "type": "FULL" + } + ], + "clientMethod": { + "shortName": "UpdateMembership", + "fullName": "google.cloud.gkehub.v1beta1.GkeHubMembershipService.UpdateMembership", + "async": true, + "parameters": [ + { + "name": "name", + "type": "TYPE_STRING" + }, + { + "name": "update_mask", + "type": ".google.protobuf.FieldMask" + }, + { + "name": "resource", + "type": ".google.cloud.gkehub.v1beta1.Membership" + }, + { + "name": "request_id", + "type": "TYPE_STRING" + } + ], + "resultType": ".google.longrunning.Operation", + "client": { + "shortName": "GkeHubMembershipServiceClient", + "fullName": "google.cloud.gkehub.v1beta1.GkeHubMembershipServiceClient" + }, + "method": { + "shortName": "UpdateMembership", + "fullName": "google.cloud.gkehub.v1beta1.GkeHubMembershipService.UpdateMembership", + "service": { + "shortName": "GkeHubMembershipService", + "fullName": "google.cloud.gkehub.v1beta1.GkeHubMembershipService" + } + } + } }, - "method": { - "shortName": "GenerateConnectManifest", - "fullName": "google.cloud.gkehub.v1beta1.GkeHubMembershipService.GenerateConnectManifest", - "service": { - "shortName": "GkeHubMembershipService", - "fullName": "google.cloud.gkehub.v1beta1.GkeHubMembershipService" - } - } - } - }, - { - "regionTag": "gkehub_v1beta1_generated_GkeHubMembershipService_ValidateExclusivity_async", - "title": "GkeHubMembershipService validateExclusivity Sample", - "origin": "API_DEFINITION", - "description": " ValidateExclusivity validates the state of exclusivity in the cluster. The validation does not depend on an existing Hub membership resource.", - "canonical": true, - "file": "gke_hub_membership_service.validate_exclusivity.js", - "language": "JAVASCRIPT", - "segments": [ { - "start": 25, - "end": 63, - "type": "FULL" - } - ], - "clientMethod": { - "shortName": "ValidateExclusivity", - "fullName": "google.cloud.gkehub.v1beta1.GkeHubMembershipService.ValidateExclusivity", - "async": true, - "parameters": [ - { - "name": "parent", - "type": "TYPE_STRING" - }, - { - "name": "cr_manifest", - "type": "TYPE_STRING" - }, - { - "name": "intended_membership", - "type": "TYPE_STRING" - } - ], - "resultType": ".google.cloud.gkehub.v1beta1.ValidateExclusivityResponse", - "client": { - "shortName": "GkeHubMembershipServiceClient", - "fullName": "google.cloud.gkehub.v1beta1.GkeHubMembershipServiceClient" + "regionTag": "gkehub_v1beta1_generated_GkeHubMembershipService_GenerateConnectManifest_async", + "title": "GkeHubMembershipService generateConnectManifest Sample", + "origin": "API_DEFINITION", + "description": " Generates the manifest for deployment of the GKE connect agent. **This method is used internally by Google-provided libraries.** Most clients should not need to call this method directly.", + "canonical": true, + "file": "gke_hub_membership_service.generate_connect_manifest.js", + "language": "JAVASCRIPT", + "segments": [ + { + "start": 25, + "end": 74, + "type": "FULL" + } + ], + "clientMethod": { + "shortName": "GenerateConnectManifest", + "fullName": "google.cloud.gkehub.v1beta1.GkeHubMembershipService.GenerateConnectManifest", + "async": true, + "parameters": [ + { + "name": "name", + "type": "TYPE_STRING" + }, + { + "name": "connect_agent", + "type": ".google.cloud.gkehub.v1beta1.ConnectAgent" + }, + { + "name": "version", + "type": "TYPE_STRING" + }, + { + "name": "is_upgrade", + "type": "TYPE_BOOL" + }, + { + "name": "registry", + "type": "TYPE_STRING" + }, + { + "name": "image_pull_secret_content", + "type": "TYPE_BYTES" + } + ], + "resultType": ".google.cloud.gkehub.v1beta1.GenerateConnectManifestResponse", + "client": { + "shortName": "GkeHubMembershipServiceClient", + "fullName": "google.cloud.gkehub.v1beta1.GkeHubMembershipServiceClient" + }, + "method": { + "shortName": "GenerateConnectManifest", + "fullName": "google.cloud.gkehub.v1beta1.GkeHubMembershipService.GenerateConnectManifest", + "service": { + "shortName": "GkeHubMembershipService", + "fullName": "google.cloud.gkehub.v1beta1.GkeHubMembershipService" + } + } + } }, - "method": { - "shortName": "ValidateExclusivity", - "fullName": "google.cloud.gkehub.v1beta1.GkeHubMembershipService.ValidateExclusivity", - "service": { - "shortName": "GkeHubMembershipService", - "fullName": "google.cloud.gkehub.v1beta1.GkeHubMembershipService" - } - } - } - }, - { - "regionTag": "gkehub_v1beta1_generated_GkeHubMembershipService_GenerateExclusivityManifest_async", - "title": "GkeHubMembershipService generateExclusivityManifest Sample", - "origin": "API_DEFINITION", - "description": " GenerateExclusivityManifest generates the manifests to update the exclusivity artifacts in the cluster if needed. Exclusivity artifacts include the Membership custom resource definition (CRD) and the singleton Membership custom resource (CR). Combined with ValidateExclusivity, exclusivity artifacts guarantee that a Kubernetes cluster is only registered to a single GKE Hub. The Membership CRD is versioned, and may require conversion when the GKE Hub API server begins serving a newer version of the CRD and corresponding CR. The response will be the converted CRD and CR if there are any differences between the versions.", - "canonical": true, - "file": "gke_hub_membership_service.generate_exclusivity_manifest.js", - "language": "JAVASCRIPT", - "segments": [ { - "start": 25, - "end": 63, - "type": "FULL" - } - ], - "clientMethod": { - "shortName": "GenerateExclusivityManifest", - "fullName": "google.cloud.gkehub.v1beta1.GkeHubMembershipService.GenerateExclusivityManifest", - "async": true, - "parameters": [ - { - "name": "name", - "type": "TYPE_STRING" - }, - { - "name": "crd_manifest", - "type": "TYPE_STRING" - }, - { - "name": "cr_manifest", - "type": "TYPE_STRING" - } - ], - "resultType": ".google.cloud.gkehub.v1beta1.GenerateExclusivityManifestResponse", - "client": { - "shortName": "GkeHubMembershipServiceClient", - "fullName": "google.cloud.gkehub.v1beta1.GkeHubMembershipServiceClient" + "regionTag": "gkehub_v1beta1_generated_GkeHubMembershipService_ValidateExclusivity_async", + "title": "GkeHubMembershipService validateExclusivity Sample", + "origin": "API_DEFINITION", + "description": " ValidateExclusivity validates the state of exclusivity in the cluster. The validation does not depend on an existing Hub membership resource.", + "canonical": true, + "file": "gke_hub_membership_service.validate_exclusivity.js", + "language": "JAVASCRIPT", + "segments": [ + { + "start": 25, + "end": 63, + "type": "FULL" + } + ], + "clientMethod": { + "shortName": "ValidateExclusivity", + "fullName": "google.cloud.gkehub.v1beta1.GkeHubMembershipService.ValidateExclusivity", + "async": true, + "parameters": [ + { + "name": "parent", + "type": "TYPE_STRING" + }, + { + "name": "cr_manifest", + "type": "TYPE_STRING" + }, + { + "name": "intended_membership", + "type": "TYPE_STRING" + } + ], + "resultType": ".google.cloud.gkehub.v1beta1.ValidateExclusivityResponse", + "client": { + "shortName": "GkeHubMembershipServiceClient", + "fullName": "google.cloud.gkehub.v1beta1.GkeHubMembershipServiceClient" + }, + "method": { + "shortName": "ValidateExclusivity", + "fullName": "google.cloud.gkehub.v1beta1.GkeHubMembershipService.ValidateExclusivity", + "service": { + "shortName": "GkeHubMembershipService", + "fullName": "google.cloud.gkehub.v1beta1.GkeHubMembershipService" + } + } + } }, - "method": { - "shortName": "GenerateExclusivityManifest", - "fullName": "google.cloud.gkehub.v1beta1.GkeHubMembershipService.GenerateExclusivityManifest", - "service": { - "shortName": "GkeHubMembershipService", - "fullName": "google.cloud.gkehub.v1beta1.GkeHubMembershipService" - } + { + "regionTag": "gkehub_v1beta1_generated_GkeHubMembershipService_GenerateExclusivityManifest_async", + "title": "GkeHubMembershipService generateExclusivityManifest Sample", + "origin": "API_DEFINITION", + "description": " GenerateExclusivityManifest generates the manifests to update the exclusivity artifacts in the cluster if needed. Exclusivity artifacts include the Membership custom resource definition (CRD) and the singleton Membership custom resource (CR). Combined with ValidateExclusivity, exclusivity artifacts guarantee that a Kubernetes cluster is only registered to a single GKE Hub. The Membership CRD is versioned, and may require conversion when the GKE Hub API server begins serving a newer version of the CRD and corresponding CR. The response will be the converted CRD and CR if there are any differences between the versions.", + "canonical": true, + "file": "gke_hub_membership_service.generate_exclusivity_manifest.js", + "language": "JAVASCRIPT", + "segments": [ + { + "start": 25, + "end": 63, + "type": "FULL" + } + ], + "clientMethod": { + "shortName": "GenerateExclusivityManifest", + "fullName": "google.cloud.gkehub.v1beta1.GkeHubMembershipService.GenerateExclusivityManifest", + "async": true, + "parameters": [ + { + "name": "name", + "type": "TYPE_STRING" + }, + { + "name": "crd_manifest", + "type": "TYPE_STRING" + }, + { + "name": "cr_manifest", + "type": "TYPE_STRING" + } + ], + "resultType": ".google.cloud.gkehub.v1beta1.GenerateExclusivityManifestResponse", + "client": { + "shortName": "GkeHubMembershipServiceClient", + "fullName": "google.cloud.gkehub.v1beta1.GkeHubMembershipServiceClient" + }, + "method": { + "shortName": "GenerateExclusivityManifest", + "fullName": "google.cloud.gkehub.v1beta1.GkeHubMembershipService.GenerateExclusivityManifest", + "service": { + "shortName": "GkeHubMembershipService", + "fullName": "google.cloud.gkehub.v1beta1.GkeHubMembershipService" + } + } + } } - } - } - ] -} + ] +} \ No newline at end of file From 30342463ed1830ba2b8aad91fd81d28982761872 Mon Sep 17 00:00:00 2001 From: "gcf-owl-bot[bot]" <78513119+gcf-owl-bot[bot]@users.noreply.github.com> Date: Fri, 29 Apr 2022 09:33:59 -0700 Subject: [PATCH 67/92] chore: remove unused imports (#142) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * chore: remove unused imports PiperOrigin-RevId: 445221559 Source-Link: https://github.com/googleapis/googleapis/commit/62d27df4c3186cdd4695a104da92d0636c8b8b2f Source-Link: https://github.com/googleapis/googleapis-gen/commit/6e0e083f1b7dd756e825e86e508a366bcd3ddab1 Copy-Tag: eyJwIjoiLmdpdGh1Yi8uT3dsQm90LnlhbWwiLCJoIjoiNmUwZTA4M2YxYjdkZDc1NmU4MjVlODZlNTA4YTM2NmJjZDNkZGFiMSJ9 * 🦉 Updates from OwlBot post-processor See https://github.com/googleapis/repo-automation-bots/blob/main/packages/owl-bot/README.md Co-authored-by: Owl Bot --- .../configmanagement/configmanagement.proto | 1 - .../google/cloud/gkehub/v1/feature.proto | 1 - .../google/cloud/gkehub/v1/membership.proto | 1 - .../multiclusteringress.proto | 2 - .../google/cloud/gkehub/v1/service.proto | 1 - .../google-cloud-gkehub/protos/protos.d.ts | 500 ++--- packages/google-cloud-gkehub/protos/protos.js | 1812 ++++++++--------- .../google-cloud-gkehub/protos/protos.json | 174 +- 8 files changed, 1243 insertions(+), 1249 deletions(-) diff --git a/packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1/configmanagement/configmanagement.proto b/packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1/configmanagement/configmanagement.proto index ab0b3560ddb..4dc0b4216a9 100644 --- a/packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1/configmanagement/configmanagement.proto +++ b/packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1/configmanagement/configmanagement.proto @@ -17,7 +17,6 @@ syntax = "proto3"; package google.cloud.gkehub.configmanagement.v1; import "google/protobuf/timestamp.proto"; -import "google/api/annotations.proto"; option csharp_namespace = "Google.Cloud.GkeHub.ConfigManagement.V1"; option go_package = "google.golang.org/genproto/googleapis/cloud/gkehub/configmanagement/v1;configmanagement"; diff --git a/packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1/feature.proto b/packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1/feature.proto index 6a07b33c99c..402f500d93a 100644 --- a/packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1/feature.proto +++ b/packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1/feature.proto @@ -21,7 +21,6 @@ import "google/api/resource.proto"; import "google/cloud/gkehub/v1/configmanagement/configmanagement.proto"; import "google/cloud/gkehub/v1/multiclusteringress/multiclusteringress.proto"; import "google/protobuf/timestamp.proto"; -import "google/api/annotations.proto"; option csharp_namespace = "Google.Cloud.GkeHub.V1"; option go_package = "google.golang.org/genproto/googleapis/cloud/gkehub/v1;gkehub"; diff --git a/packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1/membership.proto b/packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1/membership.proto index 6276098f2f4..c7f9c9f23a2 100644 --- a/packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1/membership.proto +++ b/packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1/membership.proto @@ -16,7 +16,6 @@ syntax = "proto3"; package google.cloud.gkehub.v1; -import "google/api/annotations.proto"; import "google/api/field_behavior.proto"; import "google/api/resource.proto"; import "google/protobuf/timestamp.proto"; diff --git a/packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1/multiclusteringress/multiclusteringress.proto b/packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1/multiclusteringress/multiclusteringress.proto index 1649cd64657..5beb548a6e1 100644 --- a/packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1/multiclusteringress/multiclusteringress.proto +++ b/packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1/multiclusteringress/multiclusteringress.proto @@ -16,8 +16,6 @@ syntax = "proto3"; package google.cloud.gkehub.multiclusteringress.v1; -import "google/api/annotations.proto"; - option csharp_namespace = "Google.Cloud.GkeHub.MultiClusterIngress.V1"; option go_package = "google.golang.org/genproto/googleapis/cloud/gkehub/multiclusteringress/v1;multiclusteringress"; option java_multiple_files = true; diff --git a/packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1/service.proto b/packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1/service.proto index 6caf805fbcc..484a2e1d201 100644 --- a/packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1/service.proto +++ b/packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1/service.proto @@ -23,7 +23,6 @@ import "google/api/resource.proto"; import "google/cloud/gkehub/v1/feature.proto"; import "google/cloud/gkehub/v1/membership.proto"; import "google/longrunning/operations.proto"; -import "google/protobuf/empty.proto"; import "google/protobuf/field_mask.proto"; import "google/protobuf/timestamp.proto"; diff --git a/packages/google-cloud-gkehub/protos/protos.d.ts b/packages/google-cloud-gkehub/protos/protos.d.ts index 374f9d98e36..c6ce6cb6c9a 100644 --- a/packages/google-cloud-gkehub/protos/protos.d.ts +++ b/packages/google-cloud-gkehub/protos/protos.d.ts @@ -25197,6 +25197,256 @@ export namespace google { /** Namespace api. */ namespace api { + /** 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 }; + } + + 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 }; + } + /** Properties of a Http. */ interface IHttp { @@ -25535,256 +25785,6 @@ export namespace google { */ public toJSON(): { [k: string]: any }; } - - /** 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 }; - } - - 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 }; - } } /** Namespace longrunning. */ diff --git a/packages/google-cloud-gkehub/protos/protos.js b/packages/google-cloud-gkehub/protos/protos.js index 642b7126533..38573574e8a 100644 --- a/packages/google-cloud-gkehub/protos/protos.js +++ b/packages/google-cloud-gkehub/protos/protos.js @@ -62734,26 +62734,58 @@ */ var api = {}; - api.Http = (function() { + /** + * FieldBehavior enum. + * @name google.api.FieldBehavior + * @enum {number} + * @property {number} FIELD_BEHAVIOR_UNSPECIFIED=0 FIELD_BEHAVIOR_UNSPECIFIED value + * @property {number} OPTIONAL=1 OPTIONAL value + * @property {number} REQUIRED=2 REQUIRED value + * @property {number} OUTPUT_ONLY=3 OUTPUT_ONLY value + * @property {number} INPUT_ONLY=4 INPUT_ONLY value + * @property {number} IMMUTABLE=5 IMMUTABLE value + * @property {number} UNORDERED_LIST=6 UNORDERED_LIST value + * @property {number} NON_EMPTY_DEFAULT=7 NON_EMPTY_DEFAULT value + */ + api.FieldBehavior = (function() { + var valuesById = {}, values = Object.create(valuesById); + values[valuesById[0] = "FIELD_BEHAVIOR_UNSPECIFIED"] = 0; + values[valuesById[1] = "OPTIONAL"] = 1; + values[valuesById[2] = "REQUIRED"] = 2; + values[valuesById[3] = "OUTPUT_ONLY"] = 3; + values[valuesById[4] = "INPUT_ONLY"] = 4; + values[valuesById[5] = "IMMUTABLE"] = 5; + values[valuesById[6] = "UNORDERED_LIST"] = 6; + values[valuesById[7] = "NON_EMPTY_DEFAULT"] = 7; + return values; + })(); + + api.ResourceDescriptor = (function() { /** - * Properties of a Http. + * Properties of a ResourceDescriptor. * @memberof google.api - * @interface IHttp - * @property {Array.|null} [rules] Http rules - * @property {boolean|null} [fullyDecodeReservedExpansion] Http fullyDecodeReservedExpansion + * @interface IResourceDescriptor + * @property {string|null} [type] ResourceDescriptor type + * @property {Array.|null} [pattern] ResourceDescriptor pattern + * @property {string|null} [nameField] ResourceDescriptor nameField + * @property {google.api.ResourceDescriptor.History|null} [history] ResourceDescriptor history + * @property {string|null} [plural] ResourceDescriptor plural + * @property {string|null} [singular] ResourceDescriptor singular + * @property {Array.|null} [style] ResourceDescriptor style */ /** - * Constructs a new Http. + * Constructs a new ResourceDescriptor. * @memberof google.api - * @classdesc Represents a Http. - * @implements IHttp + * @classdesc Represents a ResourceDescriptor. + * @implements IResourceDescriptor * @constructor - * @param {google.api.IHttp=} [properties] Properties to set + * @param {google.api.IResourceDescriptor=} [properties] Properties to set */ - function Http(properties) { - this.rules = []; + function ResourceDescriptor(properties) { + this.pattern = []; + this.style = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) if (properties[keys[i]] != null) @@ -62761,91 +62793,167 @@ } /** - * Http rules. - * @member {Array.} rules - * @memberof google.api.Http + * ResourceDescriptor type. + * @member {string} type + * @memberof google.api.ResourceDescriptor * @instance */ - Http.prototype.rules = $util.emptyArray; + ResourceDescriptor.prototype.type = ""; /** - * Http fullyDecodeReservedExpansion. - * @member {boolean} fullyDecodeReservedExpansion - * @memberof google.api.Http + * ResourceDescriptor pattern. + * @member {Array.} pattern + * @memberof google.api.ResourceDescriptor * @instance */ - Http.prototype.fullyDecodeReservedExpansion = false; + ResourceDescriptor.prototype.pattern = $util.emptyArray; /** - * Creates a new Http instance using the specified properties. + * ResourceDescriptor nameField. + * @member {string} nameField + * @memberof google.api.ResourceDescriptor + * @instance + */ + ResourceDescriptor.prototype.nameField = ""; + + /** + * ResourceDescriptor history. + * @member {google.api.ResourceDescriptor.History} history + * @memberof google.api.ResourceDescriptor + * @instance + */ + ResourceDescriptor.prototype.history = 0; + + /** + * ResourceDescriptor plural. + * @member {string} plural + * @memberof google.api.ResourceDescriptor + * @instance + */ + ResourceDescriptor.prototype.plural = ""; + + /** + * ResourceDescriptor singular. + * @member {string} singular + * @memberof google.api.ResourceDescriptor + * @instance + */ + ResourceDescriptor.prototype.singular = ""; + + /** + * ResourceDescriptor style. + * @member {Array.} style + * @memberof google.api.ResourceDescriptor + * @instance + */ + ResourceDescriptor.prototype.style = $util.emptyArray; + + /** + * Creates a new ResourceDescriptor instance using the specified properties. * @function create - * @memberof google.api.Http + * @memberof google.api.ResourceDescriptor * @static - * @param {google.api.IHttp=} [properties] Properties to set - * @returns {google.api.Http} Http instance + * @param {google.api.IResourceDescriptor=} [properties] Properties to set + * @returns {google.api.ResourceDescriptor} ResourceDescriptor instance */ - Http.create = function create(properties) { - return new Http(properties); + ResourceDescriptor.create = function create(properties) { + return new ResourceDescriptor(properties); }; /** - * Encodes the specified Http message. Does not implicitly {@link google.api.Http.verify|verify} messages. + * Encodes the specified ResourceDescriptor message. Does not implicitly {@link google.api.ResourceDescriptor.verify|verify} messages. * @function encode - * @memberof google.api.Http + * @memberof google.api.ResourceDescriptor * @static - * @param {google.api.IHttp} message Http message or plain object to encode + * @param {google.api.IResourceDescriptor} message ResourceDescriptor message or plain object to encode * @param {$protobuf.Writer} [writer] Writer to encode to * @returns {$protobuf.Writer} Writer */ - Http.encode = function encode(message, writer) { + ResourceDescriptor.encode = function encode(message, writer) { if (!writer) writer = $Writer.create(); - if (message.rules != null && message.rules.length) - for (var i = 0; i < message.rules.length; ++i) - $root.google.api.HttpRule.encode(message.rules[i], writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim(); - if (message.fullyDecodeReservedExpansion != null && Object.hasOwnProperty.call(message, "fullyDecodeReservedExpansion")) - writer.uint32(/* id 2, wireType 0 =*/16).bool(message.fullyDecodeReservedExpansion); + if (message.type != null && Object.hasOwnProperty.call(message, "type")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.type); + if (message.pattern != null && message.pattern.length) + for (var i = 0; i < message.pattern.length; ++i) + writer.uint32(/* id 2, wireType 2 =*/18).string(message.pattern[i]); + if (message.nameField != null && Object.hasOwnProperty.call(message, "nameField")) + writer.uint32(/* id 3, wireType 2 =*/26).string(message.nameField); + if (message.history != null && Object.hasOwnProperty.call(message, "history")) + writer.uint32(/* id 4, wireType 0 =*/32).int32(message.history); + if (message.plural != null && Object.hasOwnProperty.call(message, "plural")) + writer.uint32(/* id 5, wireType 2 =*/42).string(message.plural); + if (message.singular != null && Object.hasOwnProperty.call(message, "singular")) + writer.uint32(/* id 6, wireType 2 =*/50).string(message.singular); + if (message.style != null && message.style.length) { + writer.uint32(/* id 10, wireType 2 =*/82).fork(); + for (var i = 0; i < message.style.length; ++i) + writer.int32(message.style[i]); + writer.ldelim(); + } return writer; }; /** - * Encodes the specified Http message, length delimited. Does not implicitly {@link google.api.Http.verify|verify} messages. + * Encodes the specified ResourceDescriptor message, length delimited. Does not implicitly {@link google.api.ResourceDescriptor.verify|verify} messages. * @function encodeDelimited - * @memberof google.api.Http + * @memberof google.api.ResourceDescriptor * @static - * @param {google.api.IHttp} message Http message or plain object to encode + * @param {google.api.IResourceDescriptor} message ResourceDescriptor message or plain object to encode * @param {$protobuf.Writer} [writer] Writer to encode to * @returns {$protobuf.Writer} Writer */ - Http.encodeDelimited = function encodeDelimited(message, writer) { + ResourceDescriptor.encodeDelimited = function encodeDelimited(message, writer) { return this.encode(message, writer).ldelim(); }; /** - * Decodes a Http message from the specified reader or buffer. + * Decodes a ResourceDescriptor message from the specified reader or buffer. * @function decode - * @memberof google.api.Http + * @memberof google.api.ResourceDescriptor * @static * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from * @param {number} [length] Message length if known beforehand - * @returns {google.api.Http} Http + * @returns {google.api.ResourceDescriptor} ResourceDescriptor * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Http.decode = function decode(reader, length) { + ResourceDescriptor.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.api.Http(); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.api.ResourceDescriptor(); while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { case 1: - if (!(message.rules && message.rules.length)) - message.rules = []; - message.rules.push($root.google.api.HttpRule.decode(reader, reader.uint32())); + message.type = reader.string(); break; case 2: - message.fullyDecodeReservedExpansion = reader.bool(); + if (!(message.pattern && message.pattern.length)) + message.pattern = []; + message.pattern.push(reader.string()); + break; + case 3: + message.nameField = reader.string(); + break; + case 4: + message.history = reader.int32(); + break; + case 5: + message.plural = reader.string(); + break; + case 6: + message.singular = reader.string(); + break; + case 10: + if (!(message.style && message.style.length)) + message.style = []; + if ((tag & 7) === 2) { + var end2 = reader.uint32() + reader.pos; + while (reader.pos < end2) + message.style.push(reader.int32()); + } else + message.style.push(reader.int32()); break; default: reader.skipType(tag & 7); @@ -62856,353 +62964,335 @@ }; /** - * Decodes a Http message from the specified reader or buffer, length delimited. + * Decodes a ResourceDescriptor message from the specified reader or buffer, length delimited. * @function decodeDelimited - * @memberof google.api.Http + * @memberof google.api.ResourceDescriptor * @static * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {google.api.Http} Http + * @returns {google.api.ResourceDescriptor} ResourceDescriptor * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Http.decodeDelimited = function decodeDelimited(reader) { + ResourceDescriptor.decodeDelimited = function decodeDelimited(reader) { if (!(reader instanceof $Reader)) reader = new $Reader(reader); return this.decode(reader, reader.uint32()); }; /** - * Verifies a Http message. + * Verifies a ResourceDescriptor message. * @function verify - * @memberof google.api.Http + * @memberof google.api.ResourceDescriptor * @static * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Http.verify = function verify(message) { + ResourceDescriptor.verify = function verify(message) { if (typeof message !== "object" || message === null) return "object expected"; - if (message.rules != null && message.hasOwnProperty("rules")) { - if (!Array.isArray(message.rules)) - return "rules: array expected"; - for (var i = 0; i < message.rules.length; ++i) { - var error = $root.google.api.HttpRule.verify(message.rules[i]); - if (error) - return "rules." + error; - } + if (message.type != null && message.hasOwnProperty("type")) + if (!$util.isString(message.type)) + return "type: string expected"; + if (message.pattern != null && message.hasOwnProperty("pattern")) { + if (!Array.isArray(message.pattern)) + return "pattern: array expected"; + for (var i = 0; i < message.pattern.length; ++i) + if (!$util.isString(message.pattern[i])) + return "pattern: string[] expected"; } - if (message.fullyDecodeReservedExpansion != null && message.hasOwnProperty("fullyDecodeReservedExpansion")) - if (typeof message.fullyDecodeReservedExpansion !== "boolean") - return "fullyDecodeReservedExpansion: boolean expected"; - return null; - }; - - /** - * Creates a Http message from a plain object. Also converts values to their respective internal types. - * @function fromObject - * @memberof google.api.Http - * @static - * @param {Object.} object Plain object - * @returns {google.api.Http} Http - */ - Http.fromObject = function fromObject(object) { - if (object instanceof $root.google.api.Http) - return object; - var message = new $root.google.api.Http(); - if (object.rules) { - if (!Array.isArray(object.rules)) - throw TypeError(".google.api.Http.rules: array expected"); - message.rules = []; - for (var i = 0; i < object.rules.length; ++i) { - if (typeof object.rules[i] !== "object") - throw TypeError(".google.api.Http.rules: object expected"); - message.rules[i] = $root.google.api.HttpRule.fromObject(object.rules[i]); + if (message.nameField != null && message.hasOwnProperty("nameField")) + if (!$util.isString(message.nameField)) + return "nameField: string expected"; + if (message.history != null && message.hasOwnProperty("history")) + switch (message.history) { + default: + return "history: enum value expected"; + case 0: + case 1: + case 2: + break; } + if (message.plural != null && message.hasOwnProperty("plural")) + if (!$util.isString(message.plural)) + return "plural: string expected"; + if (message.singular != null && message.hasOwnProperty("singular")) + if (!$util.isString(message.singular)) + return "singular: string expected"; + if (message.style != null && message.hasOwnProperty("style")) { + if (!Array.isArray(message.style)) + return "style: array expected"; + for (var i = 0; i < message.style.length; ++i) + switch (message.style[i]) { + default: + return "style: enum value[] expected"; + case 0: + case 1: + break; + } + } + return null; + }; + + /** + * Creates a ResourceDescriptor message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.api.ResourceDescriptor + * @static + * @param {Object.} object Plain object + * @returns {google.api.ResourceDescriptor} ResourceDescriptor + */ + ResourceDescriptor.fromObject = function fromObject(object) { + if (object instanceof $root.google.api.ResourceDescriptor) + return object; + var message = new $root.google.api.ResourceDescriptor(); + if (object.type != null) + message.type = String(object.type); + if (object.pattern) { + if (!Array.isArray(object.pattern)) + throw TypeError(".google.api.ResourceDescriptor.pattern: array expected"); + message.pattern = []; + for (var i = 0; i < object.pattern.length; ++i) + message.pattern[i] = String(object.pattern[i]); + } + if (object.nameField != null) + message.nameField = String(object.nameField); + switch (object.history) { + case "HISTORY_UNSPECIFIED": + case 0: + message.history = 0; + break; + case "ORIGINALLY_SINGLE_PATTERN": + case 1: + message.history = 1; + break; + case "FUTURE_MULTI_PATTERN": + case 2: + message.history = 2; + break; + } + if (object.plural != null) + message.plural = String(object.plural); + if (object.singular != null) + message.singular = String(object.singular); + if (object.style) { + if (!Array.isArray(object.style)) + throw TypeError(".google.api.ResourceDescriptor.style: array expected"); + message.style = []; + for (var i = 0; i < object.style.length; ++i) + switch (object.style[i]) { + default: + case "STYLE_UNSPECIFIED": + case 0: + message.style[i] = 0; + break; + case "DECLARATIVE_FRIENDLY": + case 1: + message.style[i] = 1; + break; + } } - if (object.fullyDecodeReservedExpansion != null) - message.fullyDecodeReservedExpansion = Boolean(object.fullyDecodeReservedExpansion); return message; }; /** - * Creates a plain object from a Http message. Also converts values to other types if specified. + * Creates a plain object from a ResourceDescriptor message. Also converts values to other types if specified. * @function toObject - * @memberof google.api.Http + * @memberof google.api.ResourceDescriptor * @static - * @param {google.api.Http} message Http + * @param {google.api.ResourceDescriptor} message ResourceDescriptor * @param {$protobuf.IConversionOptions} [options] Conversion options * @returns {Object.} Plain object */ - Http.toObject = function toObject(message, options) { + ResourceDescriptor.toObject = function toObject(message, options) { if (!options) options = {}; var object = {}; - if (options.arrays || options.defaults) - object.rules = []; - if (options.defaults) - object.fullyDecodeReservedExpansion = false; - if (message.rules && message.rules.length) { - object.rules = []; - for (var j = 0; j < message.rules.length; ++j) - object.rules[j] = $root.google.api.HttpRule.toObject(message.rules[j], options); + if (options.arrays || options.defaults) { + object.pattern = []; + object.style = []; + } + if (options.defaults) { + object.type = ""; + object.nameField = ""; + object.history = options.enums === String ? "HISTORY_UNSPECIFIED" : 0; + object.plural = ""; + object.singular = ""; + } + if (message.type != null && message.hasOwnProperty("type")) + object.type = message.type; + if (message.pattern && message.pattern.length) { + object.pattern = []; + for (var j = 0; j < message.pattern.length; ++j) + object.pattern[j] = message.pattern[j]; + } + if (message.nameField != null && message.hasOwnProperty("nameField")) + object.nameField = message.nameField; + if (message.history != null && message.hasOwnProperty("history")) + object.history = options.enums === String ? $root.google.api.ResourceDescriptor.History[message.history] : message.history; + if (message.plural != null && message.hasOwnProperty("plural")) + object.plural = message.plural; + if (message.singular != null && message.hasOwnProperty("singular")) + object.singular = message.singular; + if (message.style && message.style.length) { + object.style = []; + for (var j = 0; j < message.style.length; ++j) + object.style[j] = options.enums === String ? $root.google.api.ResourceDescriptor.Style[message.style[j]] : message.style[j]; } - if (message.fullyDecodeReservedExpansion != null && message.hasOwnProperty("fullyDecodeReservedExpansion")) - object.fullyDecodeReservedExpansion = message.fullyDecodeReservedExpansion; return object; }; /** - * Converts this Http to JSON. + * Converts this ResourceDescriptor to JSON. * @function toJSON - * @memberof google.api.Http + * @memberof google.api.ResourceDescriptor * @instance * @returns {Object.} JSON object */ - Http.prototype.toJSON = function toJSON() { + ResourceDescriptor.prototype.toJSON = function toJSON() { return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; - return Http; - })(); - - api.HttpRule = (function() { - - /** - * Properties of a HttpRule. - * @memberof google.api - * @interface IHttpRule - * @property {string|null} [selector] HttpRule selector - * @property {string|null} [get] HttpRule get - * @property {string|null} [put] HttpRule put - * @property {string|null} [post] HttpRule post - * @property {string|null} ["delete"] HttpRule delete - * @property {string|null} [patch] HttpRule patch - * @property {google.api.ICustomHttpPattern|null} [custom] HttpRule custom - * @property {string|null} [body] HttpRule body - * @property {string|null} [responseBody] HttpRule responseBody - * @property {Array.|null} [additionalBindings] HttpRule additionalBindings - */ - - /** - * Constructs a new HttpRule. - * @memberof google.api - * @classdesc Represents a HttpRule. - * @implements IHttpRule - * @constructor - * @param {google.api.IHttpRule=} [properties] Properties to set - */ - function HttpRule(properties) { - this.additionalBindings = []; - 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]]; - } - - /** - * HttpRule selector. - * @member {string} selector - * @memberof google.api.HttpRule - * @instance - */ - HttpRule.prototype.selector = ""; - - /** - * HttpRule get. - * @member {string|null|undefined} get - * @memberof google.api.HttpRule - * @instance - */ - HttpRule.prototype.get = null; - - /** - * HttpRule put. - * @member {string|null|undefined} put - * @memberof google.api.HttpRule - * @instance - */ - HttpRule.prototype.put = null; - /** - * HttpRule post. - * @member {string|null|undefined} post - * @memberof google.api.HttpRule - * @instance + * History enum. + * @name google.api.ResourceDescriptor.History + * @enum {number} + * @property {number} HISTORY_UNSPECIFIED=0 HISTORY_UNSPECIFIED value + * @property {number} ORIGINALLY_SINGLE_PATTERN=1 ORIGINALLY_SINGLE_PATTERN value + * @property {number} FUTURE_MULTI_PATTERN=2 FUTURE_MULTI_PATTERN value */ - HttpRule.prototype.post = null; + ResourceDescriptor.History = (function() { + var valuesById = {}, values = Object.create(valuesById); + values[valuesById[0] = "HISTORY_UNSPECIFIED"] = 0; + values[valuesById[1] = "ORIGINALLY_SINGLE_PATTERN"] = 1; + values[valuesById[2] = "FUTURE_MULTI_PATTERN"] = 2; + return values; + })(); /** - * HttpRule delete. - * @member {string|null|undefined} delete - * @memberof google.api.HttpRule - * @instance + * Style enum. + * @name google.api.ResourceDescriptor.Style + * @enum {number} + * @property {number} STYLE_UNSPECIFIED=0 STYLE_UNSPECIFIED value + * @property {number} DECLARATIVE_FRIENDLY=1 DECLARATIVE_FRIENDLY value */ - HttpRule.prototype["delete"] = null; + ResourceDescriptor.Style = (function() { + var valuesById = {}, values = Object.create(valuesById); + values[valuesById[0] = "STYLE_UNSPECIFIED"] = 0; + values[valuesById[1] = "DECLARATIVE_FRIENDLY"] = 1; + return values; + })(); - /** - * HttpRule patch. - * @member {string|null|undefined} patch - * @memberof google.api.HttpRule - * @instance - */ - HttpRule.prototype.patch = null; + return ResourceDescriptor; + })(); - /** - * HttpRule custom. - * @member {google.api.ICustomHttpPattern|null|undefined} custom - * @memberof google.api.HttpRule - * @instance - */ - HttpRule.prototype.custom = null; + api.ResourceReference = (function() { /** - * HttpRule body. - * @member {string} body - * @memberof google.api.HttpRule - * @instance + * Properties of a ResourceReference. + * @memberof google.api + * @interface IResourceReference + * @property {string|null} [type] ResourceReference type + * @property {string|null} [childType] ResourceReference childType */ - HttpRule.prototype.body = ""; - - /** - * HttpRule responseBody. - * @member {string} responseBody - * @memberof google.api.HttpRule - * @instance + + /** + * Constructs a new ResourceReference. + * @memberof google.api + * @classdesc Represents a ResourceReference. + * @implements IResourceReference + * @constructor + * @param {google.api.IResourceReference=} [properties] Properties to set */ - HttpRule.prototype.responseBody = ""; + function ResourceReference(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]]; + } /** - * HttpRule additionalBindings. - * @member {Array.} additionalBindings - * @memberof google.api.HttpRule + * ResourceReference type. + * @member {string} type + * @memberof google.api.ResourceReference * @instance */ - HttpRule.prototype.additionalBindings = $util.emptyArray; - - // OneOf field names bound to virtual getters and setters - var $oneOfFields; + ResourceReference.prototype.type = ""; /** - * HttpRule pattern. - * @member {"get"|"put"|"post"|"delete"|"patch"|"custom"|undefined} pattern - * @memberof google.api.HttpRule + * ResourceReference childType. + * @member {string} childType + * @memberof google.api.ResourceReference * @instance */ - Object.defineProperty(HttpRule.prototype, "pattern", { - get: $util.oneOfGetter($oneOfFields = ["get", "put", "post", "delete", "patch", "custom"]), - set: $util.oneOfSetter($oneOfFields) - }); + ResourceReference.prototype.childType = ""; /** - * Creates a new HttpRule instance using the specified properties. + * Creates a new ResourceReference instance using the specified properties. * @function create - * @memberof google.api.HttpRule + * @memberof google.api.ResourceReference * @static - * @param {google.api.IHttpRule=} [properties] Properties to set - * @returns {google.api.HttpRule} HttpRule instance + * @param {google.api.IResourceReference=} [properties] Properties to set + * @returns {google.api.ResourceReference} ResourceReference instance */ - HttpRule.create = function create(properties) { - return new HttpRule(properties); + ResourceReference.create = function create(properties) { + return new ResourceReference(properties); }; /** - * Encodes the specified HttpRule message. Does not implicitly {@link google.api.HttpRule.verify|verify} messages. + * Encodes the specified ResourceReference message. Does not implicitly {@link google.api.ResourceReference.verify|verify} messages. * @function encode - * @memberof google.api.HttpRule + * @memberof google.api.ResourceReference * @static - * @param {google.api.IHttpRule} message HttpRule message or plain object to encode + * @param {google.api.IResourceReference} message ResourceReference message or plain object to encode * @param {$protobuf.Writer} [writer] Writer to encode to * @returns {$protobuf.Writer} Writer */ - HttpRule.encode = function encode(message, writer) { + ResourceReference.encode = function encode(message, writer) { if (!writer) writer = $Writer.create(); - if (message.selector != null && Object.hasOwnProperty.call(message, "selector")) - writer.uint32(/* id 1, wireType 2 =*/10).string(message.selector); - if (message.get != null && Object.hasOwnProperty.call(message, "get")) - writer.uint32(/* id 2, wireType 2 =*/18).string(message.get); - if (message.put != null && Object.hasOwnProperty.call(message, "put")) - writer.uint32(/* id 3, wireType 2 =*/26).string(message.put); - if (message.post != null && Object.hasOwnProperty.call(message, "post")) - writer.uint32(/* id 4, wireType 2 =*/34).string(message.post); - if (message["delete"] != null && Object.hasOwnProperty.call(message, "delete")) - writer.uint32(/* id 5, wireType 2 =*/42).string(message["delete"]); - if (message.patch != null && Object.hasOwnProperty.call(message, "patch")) - writer.uint32(/* id 6, wireType 2 =*/50).string(message.patch); - if (message.body != null && Object.hasOwnProperty.call(message, "body")) - writer.uint32(/* id 7, wireType 2 =*/58).string(message.body); - if (message.custom != null && Object.hasOwnProperty.call(message, "custom")) - $root.google.api.CustomHttpPattern.encode(message.custom, writer.uint32(/* id 8, wireType 2 =*/66).fork()).ldelim(); - if (message.additionalBindings != null && message.additionalBindings.length) - for (var i = 0; i < message.additionalBindings.length; ++i) - $root.google.api.HttpRule.encode(message.additionalBindings[i], writer.uint32(/* id 11, wireType 2 =*/90).fork()).ldelim(); - if (message.responseBody != null && Object.hasOwnProperty.call(message, "responseBody")) - writer.uint32(/* id 12, wireType 2 =*/98).string(message.responseBody); + if (message.type != null && Object.hasOwnProperty.call(message, "type")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.type); + if (message.childType != null && Object.hasOwnProperty.call(message, "childType")) + writer.uint32(/* id 2, wireType 2 =*/18).string(message.childType); return writer; }; /** - * Encodes the specified HttpRule message, length delimited. Does not implicitly {@link google.api.HttpRule.verify|verify} messages. + * Encodes the specified ResourceReference message, length delimited. Does not implicitly {@link google.api.ResourceReference.verify|verify} messages. * @function encodeDelimited - * @memberof google.api.HttpRule + * @memberof google.api.ResourceReference * @static - * @param {google.api.IHttpRule} message HttpRule message or plain object to encode + * @param {google.api.IResourceReference} message ResourceReference message or plain object to encode * @param {$protobuf.Writer} [writer] Writer to encode to * @returns {$protobuf.Writer} Writer */ - HttpRule.encodeDelimited = function encodeDelimited(message, writer) { + ResourceReference.encodeDelimited = function encodeDelimited(message, writer) { return this.encode(message, writer).ldelim(); }; /** - * Decodes a HttpRule message from the specified reader or buffer. + * Decodes a ResourceReference message from the specified reader or buffer. * @function decode - * @memberof google.api.HttpRule + * @memberof google.api.ResourceReference * @static * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from * @param {number} [length] Message length if known beforehand - * @returns {google.api.HttpRule} HttpRule + * @returns {google.api.ResourceReference} ResourceReference * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - HttpRule.decode = function decode(reader, length) { + ResourceReference.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.api.HttpRule(); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.api.ResourceReference(); while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { case 1: - message.selector = reader.string(); + message.type = reader.string(); break; case 2: - message.get = reader.string(); - break; - case 3: - message.put = reader.string(); - break; - case 4: - message.post = reader.string(); - break; - case 5: - message["delete"] = reader.string(); - break; - case 6: - message.patch = reader.string(); - break; - case 8: - message.custom = $root.google.api.CustomHttpPattern.decode(reader, reader.uint32()); - break; - case 7: - message.body = reader.string(); - break; - case 12: - message.responseBody = reader.string(); - break; - case 11: - if (!(message.additionalBindings && message.additionalBindings.length)) - message.additionalBindings = []; - message.additionalBindings.push($root.google.api.HttpRule.decode(reader, reader.uint32())); + message.childType = reader.string(); break; default: reader.skipType(tag & 7); @@ -63213,240 +63303,118 @@ }; /** - * Decodes a HttpRule message from the specified reader or buffer, length delimited. + * Decodes a ResourceReference message from the specified reader or buffer, length delimited. * @function decodeDelimited - * @memberof google.api.HttpRule + * @memberof google.api.ResourceReference * @static * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {google.api.HttpRule} HttpRule + * @returns {google.api.ResourceReference} ResourceReference * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - HttpRule.decodeDelimited = function decodeDelimited(reader) { + ResourceReference.decodeDelimited = function decodeDelimited(reader) { if (!(reader instanceof $Reader)) reader = new $Reader(reader); return this.decode(reader, reader.uint32()); }; /** - * Verifies a HttpRule message. + * Verifies a ResourceReference message. * @function verify - * @memberof google.api.HttpRule - * @static - * @param {Object.} message Plain object to verify - * @returns {string|null} `null` if valid, otherwise the reason why it is not - */ - HttpRule.verify = function verify(message) { - if (typeof message !== "object" || message === null) - return "object expected"; - var properties = {}; - if (message.selector != null && message.hasOwnProperty("selector")) - if (!$util.isString(message.selector)) - return "selector: string expected"; - if (message.get != null && message.hasOwnProperty("get")) { - properties.pattern = 1; - if (!$util.isString(message.get)) - return "get: string expected"; - } - if (message.put != null && message.hasOwnProperty("put")) { - if (properties.pattern === 1) - return "pattern: multiple values"; - properties.pattern = 1; - if (!$util.isString(message.put)) - return "put: string expected"; - } - if (message.post != null && message.hasOwnProperty("post")) { - if (properties.pattern === 1) - return "pattern: multiple values"; - properties.pattern = 1; - if (!$util.isString(message.post)) - return "post: string expected"; - } - if (message["delete"] != null && message.hasOwnProperty("delete")) { - if (properties.pattern === 1) - return "pattern: multiple values"; - properties.pattern = 1; - if (!$util.isString(message["delete"])) - return "delete: string expected"; - } - if (message.patch != null && message.hasOwnProperty("patch")) { - if (properties.pattern === 1) - return "pattern: multiple values"; - properties.pattern = 1; - if (!$util.isString(message.patch)) - return "patch: string expected"; - } - if (message.custom != null && message.hasOwnProperty("custom")) { - if (properties.pattern === 1) - return "pattern: multiple values"; - properties.pattern = 1; - { - var error = $root.google.api.CustomHttpPattern.verify(message.custom); - if (error) - return "custom." + error; - } - } - if (message.body != null && message.hasOwnProperty("body")) - if (!$util.isString(message.body)) - return "body: string expected"; - if (message.responseBody != null && message.hasOwnProperty("responseBody")) - if (!$util.isString(message.responseBody)) - return "responseBody: string expected"; - if (message.additionalBindings != null && message.hasOwnProperty("additionalBindings")) { - if (!Array.isArray(message.additionalBindings)) - return "additionalBindings: array expected"; - for (var i = 0; i < message.additionalBindings.length; ++i) { - var error = $root.google.api.HttpRule.verify(message.additionalBindings[i]); - if (error) - return "additionalBindings." + error; - } - } - return null; - }; - - /** - * Creates a HttpRule message from a plain object. Also converts values to their respective internal types. - * @function fromObject - * @memberof google.api.HttpRule + * @memberof google.api.ResourceReference * @static - * @param {Object.} object Plain object - * @returns {google.api.HttpRule} HttpRule - */ - HttpRule.fromObject = function fromObject(object) { - if (object instanceof $root.google.api.HttpRule) - return object; - var message = new $root.google.api.HttpRule(); - if (object.selector != null) - message.selector = String(object.selector); - if (object.get != null) - message.get = String(object.get); - if (object.put != null) - message.put = String(object.put); - if (object.post != null) - message.post = String(object.post); - if (object["delete"] != null) - message["delete"] = String(object["delete"]); - if (object.patch != null) - message.patch = String(object.patch); - if (object.custom != null) { - if (typeof object.custom !== "object") - throw TypeError(".google.api.HttpRule.custom: object expected"); - message.custom = $root.google.api.CustomHttpPattern.fromObject(object.custom); - } - if (object.body != null) - message.body = String(object.body); - if (object.responseBody != null) - message.responseBody = String(object.responseBody); - if (object.additionalBindings) { - if (!Array.isArray(object.additionalBindings)) - throw TypeError(".google.api.HttpRule.additionalBindings: array expected"); - message.additionalBindings = []; - for (var i = 0; i < object.additionalBindings.length; ++i) { - if (typeof object.additionalBindings[i] !== "object") - throw TypeError(".google.api.HttpRule.additionalBindings: object expected"); - message.additionalBindings[i] = $root.google.api.HttpRule.fromObject(object.additionalBindings[i]); - } - } + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + ResourceReference.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.type != null && message.hasOwnProperty("type")) + if (!$util.isString(message.type)) + return "type: string expected"; + if (message.childType != null && message.hasOwnProperty("childType")) + if (!$util.isString(message.childType)) + return "childType: string expected"; + return null; + }; + + /** + * Creates a ResourceReference message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.api.ResourceReference + * @static + * @param {Object.} object Plain object + * @returns {google.api.ResourceReference} ResourceReference + */ + ResourceReference.fromObject = function fromObject(object) { + if (object instanceof $root.google.api.ResourceReference) + return object; + var message = new $root.google.api.ResourceReference(); + if (object.type != null) + message.type = String(object.type); + if (object.childType != null) + message.childType = String(object.childType); return message; }; /** - * Creates a plain object from a HttpRule message. Also converts values to other types if specified. + * Creates a plain object from a ResourceReference message. Also converts values to other types if specified. * @function toObject - * @memberof google.api.HttpRule + * @memberof google.api.ResourceReference * @static - * @param {google.api.HttpRule} message HttpRule + * @param {google.api.ResourceReference} message ResourceReference * @param {$protobuf.IConversionOptions} [options] Conversion options * @returns {Object.} Plain object */ - HttpRule.toObject = function toObject(message, options) { + ResourceReference.toObject = function toObject(message, options) { if (!options) options = {}; var object = {}; - if (options.arrays || options.defaults) - object.additionalBindings = []; if (options.defaults) { - object.selector = ""; - object.body = ""; - object.responseBody = ""; - } - if (message.selector != null && message.hasOwnProperty("selector")) - object.selector = message.selector; - if (message.get != null && message.hasOwnProperty("get")) { - object.get = message.get; - if (options.oneofs) - object.pattern = "get"; - } - if (message.put != null && message.hasOwnProperty("put")) { - object.put = message.put; - if (options.oneofs) - object.pattern = "put"; - } - if (message.post != null && message.hasOwnProperty("post")) { - object.post = message.post; - if (options.oneofs) - object.pattern = "post"; - } - if (message["delete"] != null && message.hasOwnProperty("delete")) { - object["delete"] = message["delete"]; - if (options.oneofs) - object.pattern = "delete"; - } - if (message.patch != null && message.hasOwnProperty("patch")) { - object.patch = message.patch; - if (options.oneofs) - object.pattern = "patch"; - } - if (message.body != null && message.hasOwnProperty("body")) - object.body = message.body; - if (message.custom != null && message.hasOwnProperty("custom")) { - object.custom = $root.google.api.CustomHttpPattern.toObject(message.custom, options); - if (options.oneofs) - object.pattern = "custom"; - } - if (message.additionalBindings && message.additionalBindings.length) { - object.additionalBindings = []; - for (var j = 0; j < message.additionalBindings.length; ++j) - object.additionalBindings[j] = $root.google.api.HttpRule.toObject(message.additionalBindings[j], options); + object.type = ""; + object.childType = ""; } - if (message.responseBody != null && message.hasOwnProperty("responseBody")) - object.responseBody = message.responseBody; + if (message.type != null && message.hasOwnProperty("type")) + object.type = message.type; + if (message.childType != null && message.hasOwnProperty("childType")) + object.childType = message.childType; return object; }; /** - * Converts this HttpRule to JSON. + * Converts this ResourceReference to JSON. * @function toJSON - * @memberof google.api.HttpRule + * @memberof google.api.ResourceReference * @instance * @returns {Object.} JSON object */ - HttpRule.prototype.toJSON = function toJSON() { + ResourceReference.prototype.toJSON = function toJSON() { return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; - return HttpRule; + return ResourceReference; })(); - api.CustomHttpPattern = (function() { + api.Http = (function() { /** - * Properties of a CustomHttpPattern. + * Properties of a Http. * @memberof google.api - * @interface ICustomHttpPattern - * @property {string|null} [kind] CustomHttpPattern kind - * @property {string|null} [path] CustomHttpPattern path + * @interface IHttp + * @property {Array.|null} [rules] Http rules + * @property {boolean|null} [fullyDecodeReservedExpansion] Http fullyDecodeReservedExpansion */ /** - * Constructs a new CustomHttpPattern. + * Constructs a new Http. * @memberof google.api - * @classdesc Represents a CustomHttpPattern. - * @implements ICustomHttpPattern + * @classdesc Represents a Http. + * @implements IHttp * @constructor - * @param {google.api.ICustomHttpPattern=} [properties] Properties to set + * @param {google.api.IHttp=} [properties] Properties to set */ - function CustomHttpPattern(properties) { + function Http(properties) { + this.rules = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) if (properties[keys[i]] != null) @@ -63454,88 +63422,91 @@ } /** - * CustomHttpPattern kind. - * @member {string} kind - * @memberof google.api.CustomHttpPattern + * Http rules. + * @member {Array.} rules + * @memberof google.api.Http * @instance */ - CustomHttpPattern.prototype.kind = ""; + Http.prototype.rules = $util.emptyArray; /** - * CustomHttpPattern path. - * @member {string} path - * @memberof google.api.CustomHttpPattern + * Http fullyDecodeReservedExpansion. + * @member {boolean} fullyDecodeReservedExpansion + * @memberof google.api.Http * @instance */ - CustomHttpPattern.prototype.path = ""; + Http.prototype.fullyDecodeReservedExpansion = false; /** - * Creates a new CustomHttpPattern instance using the specified properties. + * Creates a new Http instance using the specified properties. * @function create - * @memberof google.api.CustomHttpPattern + * @memberof google.api.Http * @static - * @param {google.api.ICustomHttpPattern=} [properties] Properties to set - * @returns {google.api.CustomHttpPattern} CustomHttpPattern instance + * @param {google.api.IHttp=} [properties] Properties to set + * @returns {google.api.Http} Http instance */ - CustomHttpPattern.create = function create(properties) { - return new CustomHttpPattern(properties); + Http.create = function create(properties) { + return new Http(properties); }; /** - * Encodes the specified CustomHttpPattern message. Does not implicitly {@link google.api.CustomHttpPattern.verify|verify} messages. + * Encodes the specified Http message. Does not implicitly {@link google.api.Http.verify|verify} messages. * @function encode - * @memberof google.api.CustomHttpPattern + * @memberof google.api.Http * @static - * @param {google.api.ICustomHttpPattern} message CustomHttpPattern message or plain object to encode + * @param {google.api.IHttp} message Http message or plain object to encode * @param {$protobuf.Writer} [writer] Writer to encode to * @returns {$protobuf.Writer} Writer */ - CustomHttpPattern.encode = function encode(message, writer) { + Http.encode = function encode(message, writer) { if (!writer) writer = $Writer.create(); - if (message.kind != null && Object.hasOwnProperty.call(message, "kind")) - writer.uint32(/* id 1, wireType 2 =*/10).string(message.kind); - if (message.path != null && Object.hasOwnProperty.call(message, "path")) - writer.uint32(/* id 2, wireType 2 =*/18).string(message.path); + if (message.rules != null && message.rules.length) + for (var i = 0; i < message.rules.length; ++i) + $root.google.api.HttpRule.encode(message.rules[i], writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim(); + if (message.fullyDecodeReservedExpansion != null && Object.hasOwnProperty.call(message, "fullyDecodeReservedExpansion")) + writer.uint32(/* id 2, wireType 0 =*/16).bool(message.fullyDecodeReservedExpansion); return writer; }; /** - * Encodes the specified CustomHttpPattern message, length delimited. Does not implicitly {@link google.api.CustomHttpPattern.verify|verify} messages. + * Encodes the specified Http message, length delimited. Does not implicitly {@link google.api.Http.verify|verify} messages. * @function encodeDelimited - * @memberof google.api.CustomHttpPattern + * @memberof google.api.Http * @static - * @param {google.api.ICustomHttpPattern} message CustomHttpPattern message or plain object to encode + * @param {google.api.IHttp} message Http message or plain object to encode * @param {$protobuf.Writer} [writer] Writer to encode to * @returns {$protobuf.Writer} Writer */ - CustomHttpPattern.encodeDelimited = function encodeDelimited(message, writer) { + Http.encodeDelimited = function encodeDelimited(message, writer) { return this.encode(message, writer).ldelim(); }; /** - * Decodes a CustomHttpPattern message from the specified reader or buffer. + * Decodes a Http message from the specified reader or buffer. * @function decode - * @memberof google.api.CustomHttpPattern + * @memberof google.api.Http * @static * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from * @param {number} [length] Message length if known beforehand - * @returns {google.api.CustomHttpPattern} CustomHttpPattern + * @returns {google.api.Http} Http * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - CustomHttpPattern.decode = function decode(reader, length) { + Http.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.api.CustomHttpPattern(); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.api.Http(); while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { case 1: - message.kind = reader.string(); + if (!(message.rules && message.rules.length)) + message.rules = []; + message.rules.push($root.google.api.HttpRule.decode(reader, reader.uint32())); break; case 2: - message.path = reader.string(); + message.fullyDecodeReservedExpansion = reader.bool(); break; default: reader.skipType(tag & 7); @@ -63546,150 +63517,143 @@ }; /** - * Decodes a CustomHttpPattern message from the specified reader or buffer, length delimited. + * Decodes a Http message from the specified reader or buffer, length delimited. * @function decodeDelimited - * @memberof google.api.CustomHttpPattern + * @memberof google.api.Http * @static * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {google.api.CustomHttpPattern} CustomHttpPattern + * @returns {google.api.Http} Http * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - CustomHttpPattern.decodeDelimited = function decodeDelimited(reader) { + Http.decodeDelimited = function decodeDelimited(reader) { if (!(reader instanceof $Reader)) reader = new $Reader(reader); return this.decode(reader, reader.uint32()); }; /** - * Verifies a CustomHttpPattern message. + * Verifies a Http message. * @function verify - * @memberof google.api.CustomHttpPattern + * @memberof google.api.Http * @static * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - CustomHttpPattern.verify = function verify(message) { + Http.verify = function verify(message) { if (typeof message !== "object" || message === null) return "object expected"; - if (message.kind != null && message.hasOwnProperty("kind")) - if (!$util.isString(message.kind)) - return "kind: string expected"; - if (message.path != null && message.hasOwnProperty("path")) - if (!$util.isString(message.path)) - return "path: string expected"; + if (message.rules != null && message.hasOwnProperty("rules")) { + if (!Array.isArray(message.rules)) + return "rules: array expected"; + for (var i = 0; i < message.rules.length; ++i) { + var error = $root.google.api.HttpRule.verify(message.rules[i]); + if (error) + return "rules." + error; + } + } + if (message.fullyDecodeReservedExpansion != null && message.hasOwnProperty("fullyDecodeReservedExpansion")) + if (typeof message.fullyDecodeReservedExpansion !== "boolean") + return "fullyDecodeReservedExpansion: boolean expected"; return null; }; /** - * Creates a CustomHttpPattern message from a plain object. Also converts values to their respective internal types. + * Creates a Http message from a plain object. Also converts values to their respective internal types. * @function fromObject - * @memberof google.api.CustomHttpPattern + * @memberof google.api.Http * @static * @param {Object.} object Plain object - * @returns {google.api.CustomHttpPattern} CustomHttpPattern + * @returns {google.api.Http} Http */ - CustomHttpPattern.fromObject = function fromObject(object) { - if (object instanceof $root.google.api.CustomHttpPattern) + Http.fromObject = function fromObject(object) { + if (object instanceof $root.google.api.Http) return object; - var message = new $root.google.api.CustomHttpPattern(); - if (object.kind != null) - message.kind = String(object.kind); - if (object.path != null) - message.path = String(object.path); + var message = new $root.google.api.Http(); + if (object.rules) { + if (!Array.isArray(object.rules)) + throw TypeError(".google.api.Http.rules: array expected"); + message.rules = []; + for (var i = 0; i < object.rules.length; ++i) { + if (typeof object.rules[i] !== "object") + throw TypeError(".google.api.Http.rules: object expected"); + message.rules[i] = $root.google.api.HttpRule.fromObject(object.rules[i]); + } + } + if (object.fullyDecodeReservedExpansion != null) + message.fullyDecodeReservedExpansion = Boolean(object.fullyDecodeReservedExpansion); return message; }; /** - * Creates a plain object from a CustomHttpPattern message. Also converts values to other types if specified. + * Creates a plain object from a Http message. Also converts values to other types if specified. * @function toObject - * @memberof google.api.CustomHttpPattern + * @memberof google.api.Http * @static - * @param {google.api.CustomHttpPattern} message CustomHttpPattern + * @param {google.api.Http} message Http * @param {$protobuf.IConversionOptions} [options] Conversion options * @returns {Object.} Plain object */ - CustomHttpPattern.toObject = function toObject(message, options) { + Http.toObject = function toObject(message, options) { if (!options) options = {}; var object = {}; - if (options.defaults) { - object.kind = ""; - object.path = ""; + if (options.arrays || options.defaults) + object.rules = []; + if (options.defaults) + object.fullyDecodeReservedExpansion = false; + if (message.rules && message.rules.length) { + object.rules = []; + for (var j = 0; j < message.rules.length; ++j) + object.rules[j] = $root.google.api.HttpRule.toObject(message.rules[j], options); } - if (message.kind != null && message.hasOwnProperty("kind")) - object.kind = message.kind; - if (message.path != null && message.hasOwnProperty("path")) - object.path = message.path; + if (message.fullyDecodeReservedExpansion != null && message.hasOwnProperty("fullyDecodeReservedExpansion")) + object.fullyDecodeReservedExpansion = message.fullyDecodeReservedExpansion; return object; }; /** - * Converts this CustomHttpPattern to JSON. + * Converts this Http to JSON. * @function toJSON - * @memberof google.api.CustomHttpPattern + * @memberof google.api.Http * @instance * @returns {Object.} JSON object */ - CustomHttpPattern.prototype.toJSON = function toJSON() { + Http.prototype.toJSON = function toJSON() { return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; - return CustomHttpPattern; - })(); - - /** - * FieldBehavior enum. - * @name google.api.FieldBehavior - * @enum {number} - * @property {number} FIELD_BEHAVIOR_UNSPECIFIED=0 FIELD_BEHAVIOR_UNSPECIFIED value - * @property {number} OPTIONAL=1 OPTIONAL value - * @property {number} REQUIRED=2 REQUIRED value - * @property {number} OUTPUT_ONLY=3 OUTPUT_ONLY value - * @property {number} INPUT_ONLY=4 INPUT_ONLY value - * @property {number} IMMUTABLE=5 IMMUTABLE value - * @property {number} UNORDERED_LIST=6 UNORDERED_LIST value - * @property {number} NON_EMPTY_DEFAULT=7 NON_EMPTY_DEFAULT value - */ - api.FieldBehavior = (function() { - var valuesById = {}, values = Object.create(valuesById); - values[valuesById[0] = "FIELD_BEHAVIOR_UNSPECIFIED"] = 0; - values[valuesById[1] = "OPTIONAL"] = 1; - values[valuesById[2] = "REQUIRED"] = 2; - values[valuesById[3] = "OUTPUT_ONLY"] = 3; - values[valuesById[4] = "INPUT_ONLY"] = 4; - values[valuesById[5] = "IMMUTABLE"] = 5; - values[valuesById[6] = "UNORDERED_LIST"] = 6; - values[valuesById[7] = "NON_EMPTY_DEFAULT"] = 7; - return values; + return Http; })(); - api.ResourceDescriptor = (function() { + api.HttpRule = (function() { /** - * Properties of a ResourceDescriptor. + * Properties of a HttpRule. * @memberof google.api - * @interface IResourceDescriptor - * @property {string|null} [type] ResourceDescriptor type - * @property {Array.|null} [pattern] ResourceDescriptor pattern - * @property {string|null} [nameField] ResourceDescriptor nameField - * @property {google.api.ResourceDescriptor.History|null} [history] ResourceDescriptor history - * @property {string|null} [plural] ResourceDescriptor plural - * @property {string|null} [singular] ResourceDescriptor singular - * @property {Array.|null} [style] ResourceDescriptor style + * @interface IHttpRule + * @property {string|null} [selector] HttpRule selector + * @property {string|null} [get] HttpRule get + * @property {string|null} [put] HttpRule put + * @property {string|null} [post] HttpRule post + * @property {string|null} ["delete"] HttpRule delete + * @property {string|null} [patch] HttpRule patch + * @property {google.api.ICustomHttpPattern|null} [custom] HttpRule custom + * @property {string|null} [body] HttpRule body + * @property {string|null} [responseBody] HttpRule responseBody + * @property {Array.|null} [additionalBindings] HttpRule additionalBindings */ /** - * Constructs a new ResourceDescriptor. + * Constructs a new HttpRule. * @memberof google.api - * @classdesc Represents a ResourceDescriptor. - * @implements IResourceDescriptor + * @classdesc Represents a HttpRule. + * @implements IHttpRule * @constructor - * @param {google.api.IResourceDescriptor=} [properties] Properties to set + * @param {google.api.IHttpRule=} [properties] Properties to set */ - function ResourceDescriptor(properties) { - this.pattern = []; - this.style = []; + function HttpRule(properties) { + this.additionalBindings = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) if (properties[keys[i]] != null) @@ -63697,167 +63661,209 @@ } /** - * ResourceDescriptor type. - * @member {string} type - * @memberof google.api.ResourceDescriptor + * HttpRule selector. + * @member {string} selector + * @memberof google.api.HttpRule * @instance */ - ResourceDescriptor.prototype.type = ""; + HttpRule.prototype.selector = ""; /** - * ResourceDescriptor pattern. - * @member {Array.} pattern - * @memberof google.api.ResourceDescriptor + * HttpRule get. + * @member {string|null|undefined} get + * @memberof google.api.HttpRule * @instance */ - ResourceDescriptor.prototype.pattern = $util.emptyArray; + HttpRule.prototype.get = null; /** - * ResourceDescriptor nameField. - * @member {string} nameField - * @memberof google.api.ResourceDescriptor + * HttpRule put. + * @member {string|null|undefined} put + * @memberof google.api.HttpRule * @instance */ - ResourceDescriptor.prototype.nameField = ""; + HttpRule.prototype.put = null; /** - * ResourceDescriptor history. - * @member {google.api.ResourceDescriptor.History} history - * @memberof google.api.ResourceDescriptor + * HttpRule post. + * @member {string|null|undefined} post + * @memberof google.api.HttpRule * @instance */ - ResourceDescriptor.prototype.history = 0; + HttpRule.prototype.post = null; /** - * ResourceDescriptor plural. - * @member {string} plural - * @memberof google.api.ResourceDescriptor + * HttpRule delete. + * @member {string|null|undefined} delete + * @memberof google.api.HttpRule * @instance */ - ResourceDescriptor.prototype.plural = ""; + HttpRule.prototype["delete"] = null; /** - * ResourceDescriptor singular. - * @member {string} singular - * @memberof google.api.ResourceDescriptor + * HttpRule patch. + * @member {string|null|undefined} patch + * @memberof google.api.HttpRule * @instance */ - ResourceDescriptor.prototype.singular = ""; + HttpRule.prototype.patch = null; /** - * ResourceDescriptor style. - * @member {Array.} style - * @memberof google.api.ResourceDescriptor + * HttpRule custom. + * @member {google.api.ICustomHttpPattern|null|undefined} custom + * @memberof google.api.HttpRule * @instance */ - ResourceDescriptor.prototype.style = $util.emptyArray; + HttpRule.prototype.custom = null; /** - * Creates a new ResourceDescriptor instance using the specified properties. + * HttpRule body. + * @member {string} body + * @memberof google.api.HttpRule + * @instance + */ + HttpRule.prototype.body = ""; + + /** + * HttpRule responseBody. + * @member {string} responseBody + * @memberof google.api.HttpRule + * @instance + */ + HttpRule.prototype.responseBody = ""; + + /** + * HttpRule additionalBindings. + * @member {Array.} additionalBindings + * @memberof google.api.HttpRule + * @instance + */ + HttpRule.prototype.additionalBindings = $util.emptyArray; + + // OneOf field names bound to virtual getters and setters + var $oneOfFields; + + /** + * HttpRule pattern. + * @member {"get"|"put"|"post"|"delete"|"patch"|"custom"|undefined} pattern + * @memberof google.api.HttpRule + * @instance + */ + Object.defineProperty(HttpRule.prototype, "pattern", { + get: $util.oneOfGetter($oneOfFields = ["get", "put", "post", "delete", "patch", "custom"]), + set: $util.oneOfSetter($oneOfFields) + }); + + /** + * Creates a new HttpRule instance using the specified properties. * @function create - * @memberof google.api.ResourceDescriptor + * @memberof google.api.HttpRule * @static - * @param {google.api.IResourceDescriptor=} [properties] Properties to set - * @returns {google.api.ResourceDescriptor} ResourceDescriptor instance + * @param {google.api.IHttpRule=} [properties] Properties to set + * @returns {google.api.HttpRule} HttpRule instance */ - ResourceDescriptor.create = function create(properties) { - return new ResourceDescriptor(properties); + HttpRule.create = function create(properties) { + return new HttpRule(properties); }; /** - * Encodes the specified ResourceDescriptor message. Does not implicitly {@link google.api.ResourceDescriptor.verify|verify} messages. + * Encodes the specified HttpRule message. Does not implicitly {@link google.api.HttpRule.verify|verify} messages. * @function encode - * @memberof google.api.ResourceDescriptor + * @memberof google.api.HttpRule * @static - * @param {google.api.IResourceDescriptor} message ResourceDescriptor message or plain object to encode + * @param {google.api.IHttpRule} message HttpRule message or plain object to encode * @param {$protobuf.Writer} [writer] Writer to encode to * @returns {$protobuf.Writer} Writer */ - ResourceDescriptor.encode = function encode(message, writer) { + HttpRule.encode = function encode(message, writer) { if (!writer) writer = $Writer.create(); - if (message.type != null && Object.hasOwnProperty.call(message, "type")) - writer.uint32(/* id 1, wireType 2 =*/10).string(message.type); - if (message.pattern != null && message.pattern.length) - for (var i = 0; i < message.pattern.length; ++i) - writer.uint32(/* id 2, wireType 2 =*/18).string(message.pattern[i]); - if (message.nameField != null && Object.hasOwnProperty.call(message, "nameField")) - writer.uint32(/* id 3, wireType 2 =*/26).string(message.nameField); - if (message.history != null && Object.hasOwnProperty.call(message, "history")) - writer.uint32(/* id 4, wireType 0 =*/32).int32(message.history); - if (message.plural != null && Object.hasOwnProperty.call(message, "plural")) - writer.uint32(/* id 5, wireType 2 =*/42).string(message.plural); - if (message.singular != null && Object.hasOwnProperty.call(message, "singular")) - writer.uint32(/* id 6, wireType 2 =*/50).string(message.singular); - if (message.style != null && message.style.length) { - writer.uint32(/* id 10, wireType 2 =*/82).fork(); - for (var i = 0; i < message.style.length; ++i) - writer.int32(message.style[i]); - writer.ldelim(); - } + if (message.selector != null && Object.hasOwnProperty.call(message, "selector")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.selector); + if (message.get != null && Object.hasOwnProperty.call(message, "get")) + writer.uint32(/* id 2, wireType 2 =*/18).string(message.get); + if (message.put != null && Object.hasOwnProperty.call(message, "put")) + writer.uint32(/* id 3, wireType 2 =*/26).string(message.put); + if (message.post != null && Object.hasOwnProperty.call(message, "post")) + writer.uint32(/* id 4, wireType 2 =*/34).string(message.post); + if (message["delete"] != null && Object.hasOwnProperty.call(message, "delete")) + writer.uint32(/* id 5, wireType 2 =*/42).string(message["delete"]); + if (message.patch != null && Object.hasOwnProperty.call(message, "patch")) + writer.uint32(/* id 6, wireType 2 =*/50).string(message.patch); + if (message.body != null && Object.hasOwnProperty.call(message, "body")) + writer.uint32(/* id 7, wireType 2 =*/58).string(message.body); + if (message.custom != null && Object.hasOwnProperty.call(message, "custom")) + $root.google.api.CustomHttpPattern.encode(message.custom, writer.uint32(/* id 8, wireType 2 =*/66).fork()).ldelim(); + if (message.additionalBindings != null && message.additionalBindings.length) + for (var i = 0; i < message.additionalBindings.length; ++i) + $root.google.api.HttpRule.encode(message.additionalBindings[i], writer.uint32(/* id 11, wireType 2 =*/90).fork()).ldelim(); + if (message.responseBody != null && Object.hasOwnProperty.call(message, "responseBody")) + writer.uint32(/* id 12, wireType 2 =*/98).string(message.responseBody); return writer; }; /** - * Encodes the specified ResourceDescriptor message, length delimited. Does not implicitly {@link google.api.ResourceDescriptor.verify|verify} messages. + * Encodes the specified HttpRule message, length delimited. Does not implicitly {@link google.api.HttpRule.verify|verify} messages. * @function encodeDelimited - * @memberof google.api.ResourceDescriptor + * @memberof google.api.HttpRule * @static - * @param {google.api.IResourceDescriptor} message ResourceDescriptor message or plain object to encode + * @param {google.api.IHttpRule} message HttpRule message or plain object to encode * @param {$protobuf.Writer} [writer] Writer to encode to * @returns {$protobuf.Writer} Writer */ - ResourceDescriptor.encodeDelimited = function encodeDelimited(message, writer) { + HttpRule.encodeDelimited = function encodeDelimited(message, writer) { return this.encode(message, writer).ldelim(); }; /** - * Decodes a ResourceDescriptor message from the specified reader or buffer. + * Decodes a HttpRule message from the specified reader or buffer. * @function decode - * @memberof google.api.ResourceDescriptor + * @memberof google.api.HttpRule * @static * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from * @param {number} [length] Message length if known beforehand - * @returns {google.api.ResourceDescriptor} ResourceDescriptor + * @returns {google.api.HttpRule} HttpRule * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ResourceDescriptor.decode = function decode(reader, length) { + HttpRule.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.api.ResourceDescriptor(); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.api.HttpRule(); while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { case 1: - message.type = reader.string(); + message.selector = reader.string(); break; case 2: - if (!(message.pattern && message.pattern.length)) - message.pattern = []; - message.pattern.push(reader.string()); + message.get = reader.string(); break; case 3: - message.nameField = reader.string(); + message.put = reader.string(); break; case 4: - message.history = reader.int32(); + message.post = reader.string(); break; case 5: - message.plural = reader.string(); + message["delete"] = reader.string(); break; case 6: - message.singular = reader.string(); + message.patch = reader.string(); break; - case 10: - if (!(message.style && message.style.length)) - message.style = []; - if ((tag & 7) === 2) { - var end2 = reader.uint32() + reader.pos; - while (reader.pos < end2) - message.style.push(reader.int32()); - } else - message.style.push(reader.int32()); + case 8: + message.custom = $root.google.api.CustomHttpPattern.decode(reader, reader.uint32()); + break; + case 7: + message.body = reader.string(); + break; + case 12: + message.responseBody = reader.string(); + break; + case 11: + if (!(message.additionalBindings && message.additionalBindings.length)) + message.additionalBindings = []; + message.additionalBindings.push($root.google.api.HttpRule.decode(reader, reader.uint32())); break; default: reader.skipType(tag & 7); @@ -63868,246 +63874,240 @@ }; /** - * Decodes a ResourceDescriptor message from the specified reader or buffer, length delimited. + * Decodes a HttpRule message from the specified reader or buffer, length delimited. * @function decodeDelimited - * @memberof google.api.ResourceDescriptor + * @memberof google.api.HttpRule * @static * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {google.api.ResourceDescriptor} ResourceDescriptor + * @returns {google.api.HttpRule} HttpRule * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ResourceDescriptor.decodeDelimited = function decodeDelimited(reader) { + HttpRule.decodeDelimited = function decodeDelimited(reader) { if (!(reader instanceof $Reader)) reader = new $Reader(reader); return this.decode(reader, reader.uint32()); }; /** - * Verifies a ResourceDescriptor message. + * Verifies a HttpRule message. * @function verify - * @memberof google.api.ResourceDescriptor + * @memberof google.api.HttpRule * @static * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ResourceDescriptor.verify = function verify(message) { + HttpRule.verify = function verify(message) { if (typeof message !== "object" || message === null) return "object expected"; - if (message.type != null && message.hasOwnProperty("type")) - if (!$util.isString(message.type)) - return "type: string expected"; - if (message.pattern != null && message.hasOwnProperty("pattern")) { - if (!Array.isArray(message.pattern)) - return "pattern: array expected"; - for (var i = 0; i < message.pattern.length; ++i) - if (!$util.isString(message.pattern[i])) - return "pattern: string[] expected"; + var properties = {}; + if (message.selector != null && message.hasOwnProperty("selector")) + if (!$util.isString(message.selector)) + return "selector: string expected"; + if (message.get != null && message.hasOwnProperty("get")) { + properties.pattern = 1; + if (!$util.isString(message.get)) + return "get: string expected"; } - if (message.nameField != null && message.hasOwnProperty("nameField")) - if (!$util.isString(message.nameField)) - return "nameField: string expected"; - if (message.history != null && message.hasOwnProperty("history")) - switch (message.history) { - default: - return "history: enum value expected"; - case 0: - case 1: - case 2: - break; + if (message.put != null && message.hasOwnProperty("put")) { + if (properties.pattern === 1) + return "pattern: multiple values"; + properties.pattern = 1; + if (!$util.isString(message.put)) + return "put: string expected"; + } + if (message.post != null && message.hasOwnProperty("post")) { + if (properties.pattern === 1) + return "pattern: multiple values"; + properties.pattern = 1; + if (!$util.isString(message.post)) + return "post: string expected"; + } + if (message["delete"] != null && message.hasOwnProperty("delete")) { + if (properties.pattern === 1) + return "pattern: multiple values"; + properties.pattern = 1; + if (!$util.isString(message["delete"])) + return "delete: string expected"; + } + if (message.patch != null && message.hasOwnProperty("patch")) { + if (properties.pattern === 1) + return "pattern: multiple values"; + properties.pattern = 1; + if (!$util.isString(message.patch)) + return "patch: string expected"; + } + if (message.custom != null && message.hasOwnProperty("custom")) { + if (properties.pattern === 1) + return "pattern: multiple values"; + properties.pattern = 1; + { + var error = $root.google.api.CustomHttpPattern.verify(message.custom); + if (error) + return "custom." + error; + } + } + if (message.body != null && message.hasOwnProperty("body")) + if (!$util.isString(message.body)) + return "body: string expected"; + if (message.responseBody != null && message.hasOwnProperty("responseBody")) + if (!$util.isString(message.responseBody)) + return "responseBody: string expected"; + if (message.additionalBindings != null && message.hasOwnProperty("additionalBindings")) { + if (!Array.isArray(message.additionalBindings)) + return "additionalBindings: array expected"; + for (var i = 0; i < message.additionalBindings.length; ++i) { + var error = $root.google.api.HttpRule.verify(message.additionalBindings[i]); + if (error) + return "additionalBindings." + error; } - if (message.plural != null && message.hasOwnProperty("plural")) - if (!$util.isString(message.plural)) - return "plural: string expected"; - if (message.singular != null && message.hasOwnProperty("singular")) - if (!$util.isString(message.singular)) - return "singular: string expected"; - if (message.style != null && message.hasOwnProperty("style")) { - if (!Array.isArray(message.style)) - return "style: array expected"; - for (var i = 0; i < message.style.length; ++i) - switch (message.style[i]) { - default: - return "style: enum value[] expected"; - case 0: - case 1: - break; - } } return null; }; /** - * Creates a ResourceDescriptor message from a plain object. Also converts values to their respective internal types. + * Creates a HttpRule message from a plain object. Also converts values to their respective internal types. * @function fromObject - * @memberof google.api.ResourceDescriptor + * @memberof google.api.HttpRule * @static * @param {Object.} object Plain object - * @returns {google.api.ResourceDescriptor} ResourceDescriptor + * @returns {google.api.HttpRule} HttpRule */ - ResourceDescriptor.fromObject = function fromObject(object) { - if (object instanceof $root.google.api.ResourceDescriptor) + HttpRule.fromObject = function fromObject(object) { + if (object instanceof $root.google.api.HttpRule) return object; - var message = new $root.google.api.ResourceDescriptor(); - if (object.type != null) - message.type = String(object.type); - if (object.pattern) { - if (!Array.isArray(object.pattern)) - throw TypeError(".google.api.ResourceDescriptor.pattern: array expected"); - message.pattern = []; - for (var i = 0; i < object.pattern.length; ++i) - message.pattern[i] = String(object.pattern[i]); - } - if (object.nameField != null) - message.nameField = String(object.nameField); - switch (object.history) { - case "HISTORY_UNSPECIFIED": - case 0: - message.history = 0; - break; - case "ORIGINALLY_SINGLE_PATTERN": - case 1: - message.history = 1; - break; - case "FUTURE_MULTI_PATTERN": - case 2: - message.history = 2; - break; + var message = new $root.google.api.HttpRule(); + if (object.selector != null) + message.selector = String(object.selector); + if (object.get != null) + message.get = String(object.get); + if (object.put != null) + message.put = String(object.put); + if (object.post != null) + message.post = String(object.post); + if (object["delete"] != null) + message["delete"] = String(object["delete"]); + if (object.patch != null) + message.patch = String(object.patch); + if (object.custom != null) { + if (typeof object.custom !== "object") + throw TypeError(".google.api.HttpRule.custom: object expected"); + message.custom = $root.google.api.CustomHttpPattern.fromObject(object.custom); } - if (object.plural != null) - message.plural = String(object.plural); - if (object.singular != null) - message.singular = String(object.singular); - if (object.style) { - if (!Array.isArray(object.style)) - throw TypeError(".google.api.ResourceDescriptor.style: array expected"); - message.style = []; - for (var i = 0; i < object.style.length; ++i) - switch (object.style[i]) { - default: - case "STYLE_UNSPECIFIED": - case 0: - message.style[i] = 0; - break; - case "DECLARATIVE_FRIENDLY": - case 1: - message.style[i] = 1; - break; - } + if (object.body != null) + message.body = String(object.body); + if (object.responseBody != null) + message.responseBody = String(object.responseBody); + if (object.additionalBindings) { + if (!Array.isArray(object.additionalBindings)) + throw TypeError(".google.api.HttpRule.additionalBindings: array expected"); + message.additionalBindings = []; + for (var i = 0; i < object.additionalBindings.length; ++i) { + if (typeof object.additionalBindings[i] !== "object") + throw TypeError(".google.api.HttpRule.additionalBindings: object expected"); + message.additionalBindings[i] = $root.google.api.HttpRule.fromObject(object.additionalBindings[i]); + } } return message; }; /** - * Creates a plain object from a ResourceDescriptor message. Also converts values to other types if specified. + * Creates a plain object from a HttpRule message. Also converts values to other types if specified. * @function toObject - * @memberof google.api.ResourceDescriptor + * @memberof google.api.HttpRule * @static - * @param {google.api.ResourceDescriptor} message ResourceDescriptor + * @param {google.api.HttpRule} message HttpRule * @param {$protobuf.IConversionOptions} [options] Conversion options * @returns {Object.} Plain object */ - ResourceDescriptor.toObject = function toObject(message, options) { + HttpRule.toObject = function toObject(message, options) { if (!options) options = {}; var object = {}; - if (options.arrays || options.defaults) { - object.pattern = []; - object.style = []; + if (options.arrays || options.defaults) + object.additionalBindings = []; + if (options.defaults) { + object.selector = ""; + object.body = ""; + object.responseBody = ""; + } + if (message.selector != null && message.hasOwnProperty("selector")) + object.selector = message.selector; + if (message.get != null && message.hasOwnProperty("get")) { + object.get = message.get; + if (options.oneofs) + object.pattern = "get"; } - if (options.defaults) { - object.type = ""; - object.nameField = ""; - object.history = options.enums === String ? "HISTORY_UNSPECIFIED" : 0; - object.plural = ""; - object.singular = ""; + if (message.put != null && message.hasOwnProperty("put")) { + object.put = message.put; + if (options.oneofs) + object.pattern = "put"; } - if (message.type != null && message.hasOwnProperty("type")) - object.type = message.type; - if (message.pattern && message.pattern.length) { - object.pattern = []; - for (var j = 0; j < message.pattern.length; ++j) - object.pattern[j] = message.pattern[j]; + if (message.post != null && message.hasOwnProperty("post")) { + object.post = message.post; + if (options.oneofs) + object.pattern = "post"; } - if (message.nameField != null && message.hasOwnProperty("nameField")) - object.nameField = message.nameField; - if (message.history != null && message.hasOwnProperty("history")) - object.history = options.enums === String ? $root.google.api.ResourceDescriptor.History[message.history] : message.history; - if (message.plural != null && message.hasOwnProperty("plural")) - object.plural = message.plural; - if (message.singular != null && message.hasOwnProperty("singular")) - object.singular = message.singular; - if (message.style && message.style.length) { - object.style = []; - for (var j = 0; j < message.style.length; ++j) - object.style[j] = options.enums === String ? $root.google.api.ResourceDescriptor.Style[message.style[j]] : message.style[j]; + if (message["delete"] != null && message.hasOwnProperty("delete")) { + object["delete"] = message["delete"]; + if (options.oneofs) + object.pattern = "delete"; + } + if (message.patch != null && message.hasOwnProperty("patch")) { + object.patch = message.patch; + if (options.oneofs) + object.pattern = "patch"; + } + if (message.body != null && message.hasOwnProperty("body")) + object.body = message.body; + if (message.custom != null && message.hasOwnProperty("custom")) { + object.custom = $root.google.api.CustomHttpPattern.toObject(message.custom, options); + if (options.oneofs) + object.pattern = "custom"; + } + if (message.additionalBindings && message.additionalBindings.length) { + object.additionalBindings = []; + for (var j = 0; j < message.additionalBindings.length; ++j) + object.additionalBindings[j] = $root.google.api.HttpRule.toObject(message.additionalBindings[j], options); } + if (message.responseBody != null && message.hasOwnProperty("responseBody")) + object.responseBody = message.responseBody; return object; }; /** - * Converts this ResourceDescriptor to JSON. + * Converts this HttpRule to JSON. * @function toJSON - * @memberof google.api.ResourceDescriptor + * @memberof google.api.HttpRule * @instance * @returns {Object.} JSON object */ - ResourceDescriptor.prototype.toJSON = function toJSON() { + HttpRule.prototype.toJSON = function toJSON() { return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; - /** - * History enum. - * @name google.api.ResourceDescriptor.History - * @enum {number} - * @property {number} HISTORY_UNSPECIFIED=0 HISTORY_UNSPECIFIED value - * @property {number} ORIGINALLY_SINGLE_PATTERN=1 ORIGINALLY_SINGLE_PATTERN value - * @property {number} FUTURE_MULTI_PATTERN=2 FUTURE_MULTI_PATTERN value - */ - ResourceDescriptor.History = (function() { - var valuesById = {}, values = Object.create(valuesById); - values[valuesById[0] = "HISTORY_UNSPECIFIED"] = 0; - values[valuesById[1] = "ORIGINALLY_SINGLE_PATTERN"] = 1; - values[valuesById[2] = "FUTURE_MULTI_PATTERN"] = 2; - return values; - })(); - - /** - * Style enum. - * @name google.api.ResourceDescriptor.Style - * @enum {number} - * @property {number} STYLE_UNSPECIFIED=0 STYLE_UNSPECIFIED value - * @property {number} DECLARATIVE_FRIENDLY=1 DECLARATIVE_FRIENDLY value - */ - ResourceDescriptor.Style = (function() { - var valuesById = {}, values = Object.create(valuesById); - values[valuesById[0] = "STYLE_UNSPECIFIED"] = 0; - values[valuesById[1] = "DECLARATIVE_FRIENDLY"] = 1; - return values; - })(); - - return ResourceDescriptor; + return HttpRule; })(); - api.ResourceReference = (function() { + api.CustomHttpPattern = (function() { /** - * Properties of a ResourceReference. + * Properties of a CustomHttpPattern. * @memberof google.api - * @interface IResourceReference - * @property {string|null} [type] ResourceReference type - * @property {string|null} [childType] ResourceReference childType + * @interface ICustomHttpPattern + * @property {string|null} [kind] CustomHttpPattern kind + * @property {string|null} [path] CustomHttpPattern path */ /** - * Constructs a new ResourceReference. + * Constructs a new CustomHttpPattern. * @memberof google.api - * @classdesc Represents a ResourceReference. - * @implements IResourceReference + * @classdesc Represents a CustomHttpPattern. + * @implements ICustomHttpPattern * @constructor - * @param {google.api.IResourceReference=} [properties] Properties to set + * @param {google.api.ICustomHttpPattern=} [properties] Properties to set */ - function ResourceReference(properties) { + function CustomHttpPattern(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) if (properties[keys[i]] != null) @@ -64115,88 +64115,88 @@ } /** - * ResourceReference type. - * @member {string} type - * @memberof google.api.ResourceReference + * CustomHttpPattern kind. + * @member {string} kind + * @memberof google.api.CustomHttpPattern * @instance */ - ResourceReference.prototype.type = ""; + CustomHttpPattern.prototype.kind = ""; /** - * ResourceReference childType. - * @member {string} childType - * @memberof google.api.ResourceReference + * CustomHttpPattern path. + * @member {string} path + * @memberof google.api.CustomHttpPattern * @instance */ - ResourceReference.prototype.childType = ""; + CustomHttpPattern.prototype.path = ""; /** - * Creates a new ResourceReference instance using the specified properties. + * Creates a new CustomHttpPattern instance using the specified properties. * @function create - * @memberof google.api.ResourceReference + * @memberof google.api.CustomHttpPattern * @static - * @param {google.api.IResourceReference=} [properties] Properties to set - * @returns {google.api.ResourceReference} ResourceReference instance + * @param {google.api.ICustomHttpPattern=} [properties] Properties to set + * @returns {google.api.CustomHttpPattern} CustomHttpPattern instance */ - ResourceReference.create = function create(properties) { - return new ResourceReference(properties); + CustomHttpPattern.create = function create(properties) { + return new CustomHttpPattern(properties); }; /** - * Encodes the specified ResourceReference message. Does not implicitly {@link google.api.ResourceReference.verify|verify} messages. + * Encodes the specified CustomHttpPattern message. Does not implicitly {@link google.api.CustomHttpPattern.verify|verify} messages. * @function encode - * @memberof google.api.ResourceReference + * @memberof google.api.CustomHttpPattern * @static - * @param {google.api.IResourceReference} message ResourceReference message or plain object to encode + * @param {google.api.ICustomHttpPattern} message CustomHttpPattern message or plain object to encode * @param {$protobuf.Writer} [writer] Writer to encode to * @returns {$protobuf.Writer} Writer */ - ResourceReference.encode = function encode(message, writer) { + CustomHttpPattern.encode = function encode(message, writer) { if (!writer) writer = $Writer.create(); - if (message.type != null && Object.hasOwnProperty.call(message, "type")) - writer.uint32(/* id 1, wireType 2 =*/10).string(message.type); - if (message.childType != null && Object.hasOwnProperty.call(message, "childType")) - writer.uint32(/* id 2, wireType 2 =*/18).string(message.childType); + if (message.kind != null && Object.hasOwnProperty.call(message, "kind")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.kind); + if (message.path != null && Object.hasOwnProperty.call(message, "path")) + writer.uint32(/* id 2, wireType 2 =*/18).string(message.path); return writer; }; /** - * Encodes the specified ResourceReference message, length delimited. Does not implicitly {@link google.api.ResourceReference.verify|verify} messages. + * Encodes the specified CustomHttpPattern message, length delimited. Does not implicitly {@link google.api.CustomHttpPattern.verify|verify} messages. * @function encodeDelimited - * @memberof google.api.ResourceReference + * @memberof google.api.CustomHttpPattern * @static - * @param {google.api.IResourceReference} message ResourceReference message or plain object to encode + * @param {google.api.ICustomHttpPattern} message CustomHttpPattern message or plain object to encode * @param {$protobuf.Writer} [writer] Writer to encode to * @returns {$protobuf.Writer} Writer */ - ResourceReference.encodeDelimited = function encodeDelimited(message, writer) { + CustomHttpPattern.encodeDelimited = function encodeDelimited(message, writer) { return this.encode(message, writer).ldelim(); }; /** - * Decodes a ResourceReference message from the specified reader or buffer. + * Decodes a CustomHttpPattern message from the specified reader or buffer. * @function decode - * @memberof google.api.ResourceReference + * @memberof google.api.CustomHttpPattern * @static * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from * @param {number} [length] Message length if known beforehand - * @returns {google.api.ResourceReference} ResourceReference + * @returns {google.api.CustomHttpPattern} CustomHttpPattern * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ResourceReference.decode = function decode(reader, length) { + CustomHttpPattern.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.api.ResourceReference(); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.api.CustomHttpPattern(); while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { case 1: - message.type = reader.string(); + message.kind = reader.string(); break; case 2: - message.childType = reader.string(); + message.path = reader.string(); break; default: reader.skipType(tag & 7); @@ -64207,96 +64207,96 @@ }; /** - * Decodes a ResourceReference message from the specified reader or buffer, length delimited. + * Decodes a CustomHttpPattern message from the specified reader or buffer, length delimited. * @function decodeDelimited - * @memberof google.api.ResourceReference + * @memberof google.api.CustomHttpPattern * @static * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {google.api.ResourceReference} ResourceReference + * @returns {google.api.CustomHttpPattern} CustomHttpPattern * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ResourceReference.decodeDelimited = function decodeDelimited(reader) { + CustomHttpPattern.decodeDelimited = function decodeDelimited(reader) { if (!(reader instanceof $Reader)) reader = new $Reader(reader); return this.decode(reader, reader.uint32()); }; /** - * Verifies a ResourceReference message. + * Verifies a CustomHttpPattern message. * @function verify - * @memberof google.api.ResourceReference + * @memberof google.api.CustomHttpPattern * @static * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ResourceReference.verify = function verify(message) { + CustomHttpPattern.verify = function verify(message) { if (typeof message !== "object" || message === null) return "object expected"; - if (message.type != null && message.hasOwnProperty("type")) - if (!$util.isString(message.type)) - return "type: string expected"; - if (message.childType != null && message.hasOwnProperty("childType")) - if (!$util.isString(message.childType)) - return "childType: string expected"; + if (message.kind != null && message.hasOwnProperty("kind")) + if (!$util.isString(message.kind)) + return "kind: string expected"; + if (message.path != null && message.hasOwnProperty("path")) + if (!$util.isString(message.path)) + return "path: string expected"; return null; }; /** - * Creates a ResourceReference message from a plain object. Also converts values to their respective internal types. + * Creates a CustomHttpPattern message from a plain object. Also converts values to their respective internal types. * @function fromObject - * @memberof google.api.ResourceReference + * @memberof google.api.CustomHttpPattern * @static * @param {Object.} object Plain object - * @returns {google.api.ResourceReference} ResourceReference + * @returns {google.api.CustomHttpPattern} CustomHttpPattern */ - ResourceReference.fromObject = function fromObject(object) { - if (object instanceof $root.google.api.ResourceReference) + CustomHttpPattern.fromObject = function fromObject(object) { + if (object instanceof $root.google.api.CustomHttpPattern) return object; - var message = new $root.google.api.ResourceReference(); - if (object.type != null) - message.type = String(object.type); - if (object.childType != null) - message.childType = String(object.childType); + var message = new $root.google.api.CustomHttpPattern(); + if (object.kind != null) + message.kind = String(object.kind); + if (object.path != null) + message.path = String(object.path); return message; }; /** - * Creates a plain object from a ResourceReference message. Also converts values to other types if specified. + * Creates a plain object from a CustomHttpPattern message. Also converts values to other types if specified. * @function toObject - * @memberof google.api.ResourceReference + * @memberof google.api.CustomHttpPattern * @static - * @param {google.api.ResourceReference} message ResourceReference + * @param {google.api.CustomHttpPattern} message CustomHttpPattern * @param {$protobuf.IConversionOptions} [options] Conversion options * @returns {Object.} Plain object */ - ResourceReference.toObject = function toObject(message, options) { + CustomHttpPattern.toObject = function toObject(message, options) { if (!options) options = {}; var object = {}; if (options.defaults) { - object.type = ""; - object.childType = ""; + object.kind = ""; + object.path = ""; } - if (message.type != null && message.hasOwnProperty("type")) - object.type = message.type; - if (message.childType != null && message.hasOwnProperty("childType")) - object.childType = message.childType; + if (message.kind != null && message.hasOwnProperty("kind")) + object.kind = message.kind; + if (message.path != null && message.hasOwnProperty("path")) + object.path = message.path; return object; }; /** - * Converts this ResourceReference to JSON. + * Converts this CustomHttpPattern to JSON. * @function toJSON - * @memberof google.api.ResourceReference + * @memberof google.api.CustomHttpPattern * @instance * @returns {Object.} JSON object */ - ResourceReference.prototype.toJSON = function toJSON() { + CustomHttpPattern.prototype.toJSON = function toJSON() { return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; - return ResourceReference; + return CustomHttpPattern; })(); return api; diff --git a/packages/google-cloud-gkehub/protos/protos.json b/packages/google-cloud-gkehub/protos/protos.json index 236ba021218..db9064ad21e 100644 --- a/packages/google-cloud-gkehub/protos/protos.json +++ b/packages/google-cloud-gkehub/protos/protos.json @@ -6746,93 +6746,6 @@ "cc_enable_arenas": true }, "nested": { - "http": { - "type": "HttpRule", - "id": 72295728, - "extend": "google.protobuf.MethodOptions" - }, - "Http": { - "fields": { - "rules": { - "rule": "repeated", - "type": "HttpRule", - "id": 1 - }, - "fullyDecodeReservedExpansion": { - "type": "bool", - "id": 2 - } - } - }, - "HttpRule": { - "oneofs": { - "pattern": { - "oneof": [ - "get", - "put", - "post", - "delete", - "patch", - "custom" - ] - } - }, - "fields": { - "selector": { - "type": "string", - "id": 1 - }, - "get": { - "type": "string", - "id": 2 - }, - "put": { - "type": "string", - "id": 3 - }, - "post": { - "type": "string", - "id": 4 - }, - "delete": { - "type": "string", - "id": 5 - }, - "patch": { - "type": "string", - "id": 6 - }, - "custom": { - "type": "CustomHttpPattern", - "id": 8 - }, - "body": { - "type": "string", - "id": 7 - }, - "responseBody": { - "type": "string", - "id": 12 - }, - "additionalBindings": { - "rule": "repeated", - "type": "HttpRule", - "id": 11 - } - } - }, - "CustomHttpPattern": { - "fields": { - "kind": { - "type": "string", - "id": 1 - }, - "path": { - "type": "string", - "id": 2 - } - } - }, "fieldBehavior": { "rule": "repeated", "type": "google.api.FieldBehavior", @@ -6928,6 +6841,93 @@ } } }, + "http": { + "type": "HttpRule", + "id": 72295728, + "extend": "google.protobuf.MethodOptions" + }, + "Http": { + "fields": { + "rules": { + "rule": "repeated", + "type": "HttpRule", + "id": 1 + }, + "fullyDecodeReservedExpansion": { + "type": "bool", + "id": 2 + } + } + }, + "HttpRule": { + "oneofs": { + "pattern": { + "oneof": [ + "get", + "put", + "post", + "delete", + "patch", + "custom" + ] + } + }, + "fields": { + "selector": { + "type": "string", + "id": 1 + }, + "get": { + "type": "string", + "id": 2 + }, + "put": { + "type": "string", + "id": 3 + }, + "post": { + "type": "string", + "id": 4 + }, + "delete": { + "type": "string", + "id": 5 + }, + "patch": { + "type": "string", + "id": 6 + }, + "custom": { + "type": "CustomHttpPattern", + "id": 8 + }, + "body": { + "type": "string", + "id": 7 + }, + "responseBody": { + "type": "string", + "id": 12 + }, + "additionalBindings": { + "rule": "repeated", + "type": "HttpRule", + "id": 11 + } + } + }, + "CustomHttpPattern": { + "fields": { + "kind": { + "type": "string", + "id": 1 + }, + "path": { + "type": "string", + "id": 2 + } + } + }, "methodSignature": { "rule": "repeated", "type": "string", From 3668055154cd3b48231261874caddf7bed9407cf Mon Sep 17 00:00:00 2001 From: WhiteSource Renovate Date: Tue, 3 May 2022 03:24:30 +0200 Subject: [PATCH 68/92] chore(deps): update dependency @types/mocha to v9 (#143) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit [![WhiteSource Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com) This PR contains the following updates: | Package | Change | Age | Adoption | Passing | Confidence | |---|---|---|---|---|---| | [@types/mocha](https://togithub.com/DefinitelyTyped/DefinitelyTyped) | [`^8.0.4` -> `^9.0.0`](https://renovatebot.com/diffs/npm/@types%2fmocha/8.2.3/9.1.1) | [![age](https://badges.renovateapi.com/packages/npm/@types%2fmocha/9.1.1/age-slim)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://badges.renovateapi.com/packages/npm/@types%2fmocha/9.1.1/adoption-slim)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://badges.renovateapi.com/packages/npm/@types%2fmocha/9.1.1/compatibility-slim/8.2.3)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://badges.renovateapi.com/packages/npm/@types%2fmocha/9.1.1/confidence-slim/8.2.3)](https://docs.renovatebot.com/merge-confidence/) | --- ### Configuration 📅 **Schedule**: "after 9am and before 3pm" (UTC). 🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied. ♻ **Rebasing**: Whenever PR is behind base branch, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about this update again. --- - [ ] If you want to rebase/retry this PR, click this checkbox. --- This PR has been generated by [WhiteSource Renovate](https://renovate.whitesourcesoftware.com). View repository job log [here](https://app.renovatebot.com/dashboard#github/googleapis/nodejs-gke-hub). --- packages/google-cloud-gkehub/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/google-cloud-gkehub/package.json b/packages/google-cloud-gkehub/package.json index f5319719efe..fe9f80411e1 100644 --- a/packages/google-cloud-gkehub/package.json +++ b/packages/google-cloud-gkehub/package.json @@ -42,7 +42,7 @@ "google-gax": "^2.24.1" }, "devDependencies": { - "@types/mocha": "^8.0.4", + "@types/mocha": "^9.0.0", "@types/node": "^16.0.0", "@types/sinon": "^10.0.0", "c8": "^7.3.5", From 8096078ac3854d79e6c090d3dd44814741a4bf8b Mon Sep 17 00:00:00 2001 From: WhiteSource Renovate Date: Mon, 9 May 2022 17:36:23 +0200 Subject: [PATCH 69/92] chore(deps): update dependency sinon to v14 (#146) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit [![WhiteSource Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com) This PR contains the following updates: | Package | Change | Age | Adoption | Passing | Confidence | |---|---|---|---|---|---| | [sinon](https://sinonjs.org/) ([source](https://togithub.com/sinonjs/sinon)) | [`^13.0.0` -> `^14.0.0`](https://renovatebot.com/diffs/npm/sinon/13.0.2/14.0.0) | [![age](https://badges.renovateapi.com/packages/npm/sinon/14.0.0/age-slim)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://badges.renovateapi.com/packages/npm/sinon/14.0.0/adoption-slim)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://badges.renovateapi.com/packages/npm/sinon/14.0.0/compatibility-slim/13.0.2)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://badges.renovateapi.com/packages/npm/sinon/14.0.0/confidence-slim/13.0.2)](https://docs.renovatebot.com/merge-confidence/) | --- ### Release Notes
sinonjs/sinon ### [`v14.0.0`](https://togithub.com/sinonjs/sinon/blob/HEAD/CHANGES.md#​1400) [Compare Source](https://togithub.com/sinonjs/sinon/compare/v13.0.2...v14.0.0) - [`c2bbd826`](https://togithub.com/sinonjs/sinon/commit/c2bbd82641444eb5b32822489ae40f185afbbf00) Drop node 12 (Morgan Roderick) > And embrace Node 18 > > See https://nodejs.org/en/about/releases/ *Released by Morgan Roderick on 2022-05-07.*
--- ### Configuration 📅 **Schedule**: "after 9am and before 3pm" (UTC). 🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied. ♻ **Rebasing**: Whenever PR is behind base branch, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about this update again. --- - [ ] If you want to rebase/retry this PR, click this checkbox. --- This PR has been generated by [WhiteSource Renovate](https://renovate.whitesourcesoftware.com). View repository job log [here](https://app.renovatebot.com/dashboard#github/googleapis/nodejs-gke-hub). --- packages/google-cloud-gkehub/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/google-cloud-gkehub/package.json b/packages/google-cloud-gkehub/package.json index fe9f80411e1..24aec43f14a 100644 --- a/packages/google-cloud-gkehub/package.json +++ b/packages/google-cloud-gkehub/package.json @@ -54,7 +54,7 @@ "mocha": "^8.2.1", "null-loader": "^4.0.1", "pack-n-play": "^1.0.0-2", - "sinon": "^13.0.0", + "sinon": "^14.0.0", "ts-loader": "^9.0.0", "typescript": "^4.1.2", "webpack": "^5.9.0", From fb47b1c90664c74d27778ca5c5ad455b223e4c00 Mon Sep 17 00:00:00 2001 From: sofisl <55454395+sofisl@users.noreply.github.com> Date: Fri, 20 May 2022 11:32:46 -0700 Subject: [PATCH 70/92] build!: update library to use Node 12 (#147) * build!: Update library to use Node 12 --- packages/google-cloud-gkehub/package.json | 10 +++++----- packages/google-cloud-gkehub/samples/package.json | 4 ++-- 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/packages/google-cloud-gkehub/package.json b/packages/google-cloud-gkehub/package.json index 24aec43f14a..f78718933e8 100644 --- a/packages/google-cloud-gkehub/package.json +++ b/packages/google-cloud-gkehub/package.json @@ -39,28 +39,28 @@ "prelint": "cd samples; npm link ../; npm i" }, "dependencies": { - "google-gax": "^2.24.1" + "google-gax": "^3.0.1" }, "devDependencies": { "@types/mocha": "^9.0.0", "@types/node": "^16.0.0", "@types/sinon": "^10.0.0", "c8": "^7.3.5", - "gts": "^3.0.3", + "gts": "^3.1.0", "jsdoc": "^3.6.6", "jsdoc-fresh": "^1.0.2", "jsdoc-region-tag": "^1.0.6", "linkinator": "^2.7.0", - "mocha": "^8.2.1", + "mocha": "^9.2.2", "null-loader": "^4.0.1", "pack-n-play": "^1.0.0-2", "sinon": "^14.0.0", "ts-loader": "^9.0.0", - "typescript": "^4.1.2", + "typescript": "^4.6.4", "webpack": "^5.9.0", "webpack-cli": "^4.2.0" }, "engines": { - "node": ">=10.0.0" + "node": ">=12.0.0" } } diff --git a/packages/google-cloud-gkehub/samples/package.json b/packages/google-cloud-gkehub/samples/package.json index f675d56b656..bb0b2d5f352 100644 --- a/packages/google-cloud-gkehub/samples/package.json +++ b/packages/google-cloud-gkehub/samples/package.json @@ -4,7 +4,7 @@ "license": "Apache-2.0", "author": "Google LLC", "engines": { - "node": ">=10" + "node": ">=12.0.0" }, "files": [ "*.js" @@ -20,4 +20,4 @@ "chai": "^4.2.0", "mocha": "^8.0.0" } -} +} \ No newline at end of file From b7b33f0e1638ee0676256abbbe268d1065cea450 Mon Sep 17 00:00:00 2001 From: "gcf-owl-bot[bot]" <78513119+gcf-owl-bot[bot]@users.noreply.github.com> Date: Fri, 3 Jun 2022 09:54:41 -0700 Subject: [PATCH 71/92] feat: add EdgeCluster as a new membershipEndpoint type (#150) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * feat: add EdgeCluster as a new membershipEndpoint type feat: add ApplianceCluster as a new membershipEndpoint type feat: add c++ rules in BUILD file doc: add API annotations doc: minor changes on code and doc format PiperOrigin-RevId: 451205950 Source-Link: https://github.com/googleapis/googleapis/commit/06f21c4414877584f191bcb75796a3c52cfb762d Source-Link: https://github.com/googleapis/googleapis-gen/commit/5572dd07684852bebfc13c001c50d9c47685321d Copy-Tag: eyJwIjoiLmdpdGh1Yi8uT3dsQm90LnlhbWwiLCJoIjoiNTU3MmRkMDc2ODQ4NTJiZWJmYzEzYzAwMWM1MGQ5YzQ3Njg1MzIxZCJ9 * 🦉 Updates from OwlBot post-processor See https://github.com/googleapis/repo-automation-bots/blob/main/packages/owl-bot/README.md Co-authored-by: Owl Bot --- .../cloud/gkehub/v1beta1/membership.proto | 317 +++--- .../google-cloud-gkehub/protos/protos.d.ts | 194 +++- packages/google-cloud-gkehub/protos/protos.js | 446 +++++++- .../google-cloud-gkehub/protos/protos.json | 64 +- ...ub_membership_service.create_membership.js | 8 +- ...rship_service.generate_connect_manifest.js | 7 +- ...hub_membership_service.list_memberships.js | 14 +- ...ub_membership_service.update_membership.js | 4 +- ...membership_service.validate_exclusivity.js | 13 +- ..._metadata.google.cloud.gkehub.v1beta1.json | 4 +- .../gke_hub_membership_service_client.ts | 550 +++++++++- ...apic_gke_hub_membership_service_v1beta1.ts | 997 +++++++++++++++++- 12 files changed, 2397 insertions(+), 221 deletions(-) diff --git a/packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1beta1/membership.proto b/packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1beta1/membership.proto index 932a650e27d..6fa0360c0d7 100644 --- a/packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1beta1/membership.proto +++ b/packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1beta1/membership.proto @@ -33,8 +33,7 @@ option php_namespace = "Google\\Cloud\\GkeHub\\V1beta1"; option ruby_package = "Google::Cloud::GkeHub::V1beta1"; // The GKE Hub MembershipService handles the registration of many Kubernetes -// clusters to Google Cloud, represented with the -// [Membership][google.cloud.gkehub.v1beta1.Membership] resource. +// clusters to Google Cloud, represented with the [Membership][google.cloud.gkehub.v1beta1.Membership] resource. // // GKE Hub is currently only available in the global region. // @@ -43,12 +42,10 @@ option ruby_package = "Google::Cloud::GkeHub::V1beta1"; // with Membership resources. service GkeHubMembershipService { option (google.api.default_host) = "gkehub.googleapis.com"; - option (google.api.oauth_scopes) = - "https://www.googleapis.com/auth/cloud-platform"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/cloud-platform"; // Lists Memberships in a given project and location. - rpc ListMemberships(ListMembershipsRequest) - returns (ListMembershipsResponse) { + rpc ListMemberships(ListMembershipsRequest) returns (ListMembershipsResponse) { option (google.api.http) = { get: "/v1beta1/{parent=projects/*/locations/*}/memberships" }; @@ -68,8 +65,7 @@ service GkeHubMembershipService { // **This is currently only supported for GKE clusters on Google Cloud**. // To register other clusters, follow the instructions at // https://cloud.google.com/anthos/multicluster-management/connect/registering-a-cluster. - rpc CreateMembership(CreateMembershipRequest) - returns (google.longrunning.Operation) { + rpc CreateMembership(CreateMembershipRequest) returns (google.longrunning.Operation) { option (google.api.http) = { post: "/v1beta1/{parent=projects/*/locations/*}/memberships" body: "resource" @@ -86,8 +82,7 @@ service GkeHubMembershipService { // **This is currently only supported for GKE clusters on Google Cloud**. // To unregister other clusters, follow the instructions at // https://cloud.google.com/anthos/multicluster-management/connect/unregistering-a-cluster. - rpc DeleteMembership(DeleteMembershipRequest) - returns (google.longrunning.Operation) { + rpc DeleteMembership(DeleteMembershipRequest) returns (google.longrunning.Operation) { option (google.api.http) = { delete: "/v1beta1/{name=projects/*/locations/*/memberships/*}" }; @@ -99,8 +94,7 @@ service GkeHubMembershipService { } // Updates an existing Membership. - rpc UpdateMembership(UpdateMembershipRequest) - returns (google.longrunning.Operation) { + rpc UpdateMembership(UpdateMembershipRequest) returns (google.longrunning.Operation) { option (google.api.http) = { patch: "/v1beta1/{name=projects/*/locations/*/memberships/*}" body: "resource" @@ -116,8 +110,7 @@ service GkeHubMembershipService { // // **This method is used internally by Google-provided libraries.** // Most clients should not need to call this method directly. - rpc GenerateConnectManifest(GenerateConnectManifestRequest) - returns (GenerateConnectManifestResponse) { + rpc GenerateConnectManifest(GenerateConnectManifestRequest) returns (GenerateConnectManifestResponse) { option (google.api.http) = { get: "/v1beta1/{name=projects/*/locations/*/memberships/*}:generateConnectManifest" }; @@ -125,8 +118,7 @@ service GkeHubMembershipService { // ValidateExclusivity validates the state of exclusivity in the cluster. // The validation does not depend on an existing Hub membership resource. - rpc ValidateExclusivity(ValidateExclusivityRequest) - returns (ValidateExclusivityResponse) { + rpc ValidateExclusivity(ValidateExclusivityRequest) returns (ValidateExclusivityResponse) { option (google.api.http) = { get: "/v1beta1/{parent=projects/*/locations/*}/memberships:validateExclusivity" }; @@ -144,8 +136,7 @@ service GkeHubMembershipService { // Hub API server begins serving a newer version of the CRD and // corresponding CR. The response will be the converted CRD and CR if there // are any differences between the versions. - rpc GenerateExclusivityManifest(GenerateExclusivityManifestRequest) - returns (GenerateExclusivityManifestResponse) { + rpc GenerateExclusivityManifest(GenerateExclusivityManifestRequest) returns (GenerateExclusivityManifestResponse) { option (google.api.http) = { get: "/v1beta1/{name=projects/*/locations/*/memberships/*}:generateExclusivityManifest" }; @@ -178,9 +169,8 @@ message Membership { MULTI_CLOUD = 2; } - // Output only. The full, unique name of this Membership resource in the - // format `projects/*/locations/*/memberships/{membership_id}`, set during - // creation. + // Output only. The full, unique name of this Membership resource in the format + // `projects/*/locations/*/memberships/{membership_id}`, set during creation. // // `membership_id` must be a valid RFC 1123 compliant DNS label: // @@ -214,21 +204,17 @@ message Membership { Authority authority = 9 [(google.api.field_behavior) = OPTIONAL]; // Output only. When the Membership was created. - google.protobuf.Timestamp create_time = 6 - [(google.api.field_behavior) = OUTPUT_ONLY]; + google.protobuf.Timestamp create_time = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; // Output only. When the Membership was last updated. - google.protobuf.Timestamp update_time = 7 - [(google.api.field_behavior) = OUTPUT_ONLY]; + google.protobuf.Timestamp update_time = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; // Output only. When the Membership was deleted. - google.protobuf.Timestamp delete_time = 8 - [(google.api.field_behavior) = OUTPUT_ONLY]; + google.protobuf.Timestamp delete_time = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; - // Optional. An externally-generated and managed ID for this Membership. This - // ID may be modified after creation, but this is not recommended. For GKE - // clusters, external_id is managed by the Hub API and updates will be - // ignored. + // Optional. An externally-generated and managed ID for this Membership. This ID may + // be modified after creation, but this is not recommended. For GKE clusters, + // external_id is managed by the Hub API and updates will be ignored. // // The ID must match the regex: `[a-zA-Z0-9][a-zA-Z0-9_\-\.]*` // @@ -236,22 +222,19 @@ message Membership { // set to the UID of the `kube-system` namespace object. string external_id = 10 [(google.api.field_behavior) = OPTIONAL]; - // Output only. For clusters using Connect, the timestamp of the most recent - // connection established with Google Cloud. This time is updated every - // several minutes, not continuously. For clusters that do not use GKE - // Connect, or that have never connected successfully, this field will be - // unset. - google.protobuf.Timestamp last_connection_time = 11 - [(google.api.field_behavior) = OUTPUT_ONLY]; + // Output only. For clusters using Connect, the timestamp of the most recent connection + // established with Google Cloud. This time is updated every several minutes, + // not continuously. For clusters that do not use GKE Connect, or that have + // never connected successfully, this field will be unset. + google.protobuf.Timestamp last_connection_time = 11 [(google.api.field_behavior) = OUTPUT_ONLY]; - // Output only. Google-generated UUID for this resource. This is unique across - // all Membership resources. If a Membership resource is deleted and another + // Output only. Google-generated UUID for this resource. This is unique across all + // Membership resources. If a Membership resource is deleted and another // resource with the same name is created, it gets a different unique_id. string unique_id = 12 [(google.api.field_behavior) = OUTPUT_ONLY]; // Optional. The infrastructure type this Membership is running on. - InfrastructureType infrastructure_type = 13 - [(google.api.field_behavior) = OPTIONAL]; + InfrastructureType infrastructure_type = 13 [(google.api.field_behavior) = OPTIONAL]; } // MembershipEndpoint contains information needed to contact a Kubernetes API, @@ -262,36 +245,41 @@ message MembershipEndpoint { // Optional. Specific information for a GKE-on-GCP cluster. GkeCluster gke_cluster = 4 [(google.api.field_behavior) = OPTIONAL]; - // Optional. Specific information for a GKE On-Prem cluster. + // Optional. Specific information for a GKE On-Prem cluster. An onprem user-cluster + // who has no resourceLink is not allowed to use this field, it should have + // a nil "type" instead. OnPremCluster on_prem_cluster = 7 [(google.api.field_behavior) = OPTIONAL]; // Optional. Specific information for a GKE Multi-Cloud cluster. - MultiCloudCluster multi_cloud_cluster = 8 - [(google.api.field_behavior) = OPTIONAL]; + MultiCloudCluster multi_cloud_cluster = 8 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. Specific information for a Google Edge cluster. + EdgeCluster edge_cluster = 9 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. Specific information for a GDC Edge Appliance cluster. + ApplianceCluster appliance_cluster = 10 [(google.api.field_behavior) = OPTIONAL]; } // Output only. Useful Kubernetes-specific metadata. - KubernetesMetadata kubernetes_metadata = 5 - [(google.api.field_behavior) = OUTPUT_ONLY]; + KubernetesMetadata kubernetes_metadata = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; - // Optional. The in-cluster Kubernetes Resources that should be applied for a - // correctly registered cluster, in the steady state. These resources: + // Optional. The in-cluster Kubernetes Resources that should be applied for a correctly + // registered cluster, in the steady state. These resources: // // * Ensure that the cluster is exclusively registered to one and only one // Hub Membership. // * Propagate Workload Pool Information available in the Membership // Authority field. // * Ensure proper initial configuration of default Hub Features. - KubernetesResource kubernetes_resource = 6 - [(google.api.field_behavior) = OPTIONAL]; + KubernetesResource kubernetes_resource = 6 [(google.api.field_behavior) = OPTIONAL]; } // KubernetesResource contains the YAML manifests and configuration for // Membership Kubernetes resources in the cluster. After CreateMembership or // UpdateMembership, these resources should be re-applied in the cluster. message KubernetesResource { - // Input only. The YAML representation of the Membership CR. This field is - // ignored for GKE clusters where Hub can read the CR directly. + // Input only. The YAML representation of the Membership CR. This field is ignored for GKE + // clusters where Hub can read the CR directly. // // Callers should provide the CR that is currently present in the cluster // during CreateMembership or UpdateMembership, or leave this field empty if @@ -299,16 +287,15 @@ message KubernetesResource { // registered with another Membership. string membership_cr_manifest = 1 [(google.api.field_behavior) = INPUT_ONLY]; - // Output only. Additional Kubernetes resources that need to be applied to the - // cluster after Membership creation, and after every update. + // Output only. Additional Kubernetes resources that need to be applied to the cluster + // after Membership creation, and after every update. // // This field is only populated in the Membership returned from a successful // long-running operation from CreateMembership or UpdateMembership. It is not // populated during normal GetMembership or ListMemberships requests. To get // the resource manifest after the initial registration, the caller should // make a UpdateMembership call with an empty field mask. - repeated ResourceManifest membership_resources = 2 - [(google.api.field_behavior) = OUTPUT_ONLY]; + repeated ResourceManifest membership_resources = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; // Output only. The Kubernetes resources for installing the GKE Connect agent // @@ -317,8 +304,7 @@ message KubernetesResource { // populated during normal GetMembership or ListMemberships requests. To get // the resource manifest after the initial registration, the caller should // make a UpdateMembership call with an empty field mask. - repeated ResourceManifest connect_resources = 3 - [(google.api.field_behavior) = OUTPUT_ONLY]; + repeated ResourceManifest connect_resources = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; // Optional. Options for Kubernetes resource generation. ResourceOptions resource_options = 4 [(google.api.field_behavior) = OPTIONAL]; @@ -326,9 +312,9 @@ message KubernetesResource { // ResourceOptions represent options for Kubernetes resource generation. message ResourceOptions { - // Optional. The Connect agent version to use for connect_resources. Defaults - // to the latest GKE Connect version. The version must be a currently - // supported version, obsolete versions will be rejected. + // Optional. The Connect agent version to use for connect_resources. Defaults to the + // latest GKE Connect version. The version must be a currently supported + // version, obsolete versions will be rejected. string connect_version = 1 [(google.api.field_behavior) = OPTIONAL]; // Optional. Use `apiextensions/v1beta1` instead of `apiextensions/v1` for @@ -337,8 +323,8 @@ message ResourceOptions { // <1.16. bool v1beta1_crd = 2 [(google.api.field_behavior) = OPTIONAL]; - // Optional. Major version of the Kubernetes cluster. This is only used to - // determine which version to use for the CustomResourceDefinition resources, + // Optional. Major version of the Kubernetes cluster. This is only used to determine + // which version to use for the CustomResourceDefinition resources, // `apiextensions/v1beta1` or`apiextensions/v1`. string k8s_version = 3 [(google.api.field_behavior) = OPTIONAL]; } @@ -366,15 +352,14 @@ message GkeCluster { // Zonal clusters are also supported. string resource_link = 1 [(google.api.field_behavior) = IMMUTABLE]; - // Output only. If cluster_missing is set then it denotes that the GKE cluster - // no longer exists in the GKE Control Plane. + // Output only. If cluster_missing is set then it denotes that the GKE cluster no longer + // exists in the GKE Control Plane. bool cluster_missing = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; } // OnPremCluster contains information specific to GKE On-Prem clusters. message OnPremCluster { - // Immutable. Self-link of the GCP resource for the GKE On-Prem cluster. For - // example: + // Immutable. Self-link of the GCP resource for the GKE On-Prem cluster. For example: // // //gkeonprem.googleapis.com/projects/my-project/locations/us-west1-a/vmwareClusters/my-cluster // //gkeonprem.googleapis.com/projects/my-project/locations/us-west1-a/bareMetalClusters/my-cluster @@ -391,8 +376,8 @@ message OnPremCluster { // MultiCloudCluster contains information specific to GKE Multi-Cloud clusters. message MultiCloudCluster { - // Immutable. Self-link of the GCP resource for the GKE Multi-Cloud cluster. - // For example: + // Immutable. Self-link of the GCP resource for the GKE Multi-Cloud cluster. For + // example: // // //gkemulticloud.googleapis.com/projects/my-project/locations/us-west1-a/awsClusters/my-cluster // //gkemulticloud.googleapis.com/projects/my-project/locations/us-west1-a/azureClusters/my-cluster @@ -404,17 +389,34 @@ message MultiCloudCluster { bool cluster_missing = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; } +// EdgeCluster contains information specific to Google Edge Clusters. +message EdgeCluster { + // Immutable. Self-link of the GCP resource for the Edge Cluster. For + // example: + // + // //edgecontainer.googleapis.com/projects/my-project/locations/us-west1-a/clusters/my-cluster + string resource_link = 1 [(google.api.field_behavior) = IMMUTABLE]; +} + +// ApplianceCluster contains information specific to GDC Edge Appliance +// Clusters. +message ApplianceCluster { + // Immutable. Self-link of the GCP resource for the Appliance Cluster. For + // example: + // + // //transferappliance.googleapis.com/projects/my-project/locations/us-west1-a/appliances/my-appliance + string resource_link = 1 [(google.api.field_behavior) = IMMUTABLE]; +} + // KubernetesMetadata provides informational metadata for Memberships // representing Kubernetes clusters. message KubernetesMetadata { - // Output only. Kubernetes API server version string as reported by - // '/version'. - string kubernetes_api_server_version = 1 - [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Node providerID as reported by the first node in the list of - // nodes on the Kubernetes endpoint. On Kubernetes platforms that support - // zero-node clusters (like GKE-on-GCP), the node_count will be zero and the + // Output only. Kubernetes API server version string as reported by '/version'. + string kubernetes_api_server_version = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Node providerID as reported by the first node in the list of nodes on + // the Kubernetes endpoint. On Kubernetes platforms that support zero-node + // clusters (like GKE-on-GCP), the node_count will be zero and the // node_provider_id will be empty. string node_provider_id = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; @@ -424,23 +426,22 @@ message KubernetesMetadata { // Output only. vCPU count as reported by Kubernetes nodes resources. int32 vcpu_count = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; - // Output only. The total memory capacity as reported by the sum of all - // Kubernetes nodes resources, defined in MB. + // Output only. The total memory capacity as reported by the sum of all Kubernetes nodes + // resources, defined in MB. int32 memory_mb = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; - // Output only. The time at which these details were last updated. This - // update_time is different from the Membership-level update_time since - // EndpointDetails are updated internally for API consumers. - google.protobuf.Timestamp update_time = 100 - [(google.api.field_behavior) = OUTPUT_ONLY]; + // Output only. The time at which these details were last updated. This update_time is + // different from the Membership-level update_time since EndpointDetails are + // updated internally for API consumers. + google.protobuf.Timestamp update_time = 100 [(google.api.field_behavior) = OUTPUT_ONLY]; } // Authority encodes how Google will recognize identities from this Membership. // See the workload identity documentation for more details: // https://cloud.google.com/kubernetes-engine/docs/how-to/workload-identity message Authority { - // Optional. A JSON Web Token (JWT) issuer URI. `issuer` must start with - // `https://` and be a valid URL with length <2000 characters. + // Optional. A JSON Web Token (JWT) issuer URI. `issuer` must start with `https://` and + // be a valid URL with length <2000 characters. // // If set, then Google will allow valid OIDC tokens from this issuer to // authenticate within the workload_identity_pool. OIDC discovery will be @@ -451,8 +452,8 @@ message Authority { // a new issuer (and re-enabling Workload Identity). string issuer = 1 [(google.api.field_behavior) = OPTIONAL]; - // Output only. The name of the workload identity pool in which `issuer` will - // be recognized. + // Output only. The name of the workload identity pool in which `issuer` will be + // recognized. // // There is a single Workload Identity Pool per Hub that is shared // between all Memberships that belong to that Hub. For a Hub hosted in @@ -460,12 +461,11 @@ message Authority { // although this is subject to change in newer versions of this API. string workload_identity_pool = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; - // Output only. An identity provider that reflects the `issuer` in the - // workload identity pool. + // Output only. An identity provider that reflects the `issuer` in the workload identity + // pool. string identity_provider = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; - // Optional. OIDC verification keys for this Membership in JWKS format (RFC - // 7517). + // Optional. OIDC verification keys for this Membership in JWKS format (RFC 7517). // // When this field is set, OIDC discovery will NOT be performed on `issuer`, // and instead OIDC tokens will be validated using this field. @@ -507,13 +507,18 @@ message MembershipState { // Request message for `GkeHubMembershipService.ListMemberships` method. message ListMembershipsRequest { - // Required. The parent (project and location) where the Memberships will be - // listed. Specified in the format `projects/*/locations/*`. - string parent = 1 [(google.api.field_behavior) = REQUIRED]; - - // Optional. When requesting a 'page' of resources, `page_size` specifies - // number of resources to return. If unspecified or set to 0, all resources - // will be returned. + // Required. The parent (project and location) where the Memberships will be listed. + // Specified in the format `projects/*/locations/*`. + string parent = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + child_type: "gkehub.googleapis.com/Membership" + } + ]; + + // Optional. When requesting a 'page' of resources, `page_size` specifies number of + // resources to return. If unspecified or set to 0, all resources will + // be returned. int32 page_size = 2 [(google.api.field_behavior) = OPTIONAL]; // Optional. Token returned by previous call to `ListMemberships` which @@ -521,8 +526,8 @@ message ListMembershipsRequest { // resources. string page_token = 3 [(google.api.field_behavior) = OPTIONAL]; - // Optional. Lists Memberships that match the filter expression, following the - // syntax outlined in https://google.aip.dev/160. + // Optional. Lists Memberships that match the filter expression, following the syntax + // outlined in https://google.aip.dev/160. // // Examples: // @@ -566,17 +571,27 @@ message ListMembershipsResponse { message GetMembershipRequest { // Required. The Membership resource name in the format // `projects/*/locations/*/memberships/*`. - string name = 1 [(google.api.field_behavior) = REQUIRED]; + string name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "gkehub.googleapis.com/Membership" + } + ]; } // Request message for the `GkeHubMembershipService.CreateMembership` method. message CreateMembershipRequest { - // Required. The parent (project and location) where the Memberships will be - // created. Specified in the format `projects/*/locations/*`. - string parent = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. Client chosen ID for the membership. `membership_id` must be a - // valid RFC 1123 compliant DNS label: + // Required. The parent (project and location) where the Memberships will be created. + // Specified in the format `projects/*/locations/*`. + string parent = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + child_type: "gkehub.googleapis.com/Membership" + } + ]; + + // Required. Client chosen ID for the membership. `membership_id` must be a valid RFC + // 1123 compliant DNS label: // // 1. At most 63 characters in length // 2. It must consist of lower case alphanumeric characters or `-` @@ -609,7 +624,12 @@ message CreateMembershipRequest { message DeleteMembershipRequest { // Required. The Membership resource name in the format // `projects/*/locations/*/memberships/*`. - string name = 1 [(google.api.field_behavior) = REQUIRED]; + string name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "gkehub.googleapis.com/Membership" + } + ]; // Optional. A request ID to identify requests. Specify a unique request ID // so that if you must retry your request, the server will know to ignore @@ -631,12 +651,16 @@ message DeleteMembershipRequest { message UpdateMembershipRequest { // Required. The membership resource name in the format: // `projects/[project_id]/locations/global/memberships/[membership_id]` - string name = 1 [(google.api.field_behavior) = REQUIRED]; + string name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "gkehub.googleapis.com/Membership" + } + ]; - // Required. Mask of fields to update. At least one field path must be - // specified in this mask. - google.protobuf.FieldMask update_mask = 2 - [(google.api.field_behavior) = REQUIRED]; + // Required. Mask of fields to update. At least one field path must be specified in this + // mask. + google.protobuf.FieldMask update_mask = 2 [(google.api.field_behavior) = REQUIRED]; // Required. Only fields specified in update_mask are updated. // If you specify a field in the update_mask but don't specify its value here @@ -668,15 +692,19 @@ message UpdateMembershipRequest { // method. // . message GenerateConnectManifestRequest { - // Required. The Membership resource name the Agent will associate with, in - // the format `projects/*/locations/*/memberships/*`. - string name = 1 [(google.api.field_behavior) = REQUIRED]; + // Required. The Membership resource name the Agent will associate with, in the format + // `projects/*/locations/*/memberships/*`. + string name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "gkehub.googleapis.com/Membership" + } + ]; // Optional. The connect agent to generate manifest for. ConnectAgent connect_agent = 2 [(google.api.field_behavior) = OPTIONAL]; - // Optional. The Connect agent version to use. Defaults to the most current - // version. + // Optional. The Connect agent version to use. Defaults to the most current version. string version = 3 [(google.api.field_behavior) = OPTIONAL]; // Optional. If true, generate the resources for upgrade only. Some resources @@ -724,15 +752,14 @@ message ConnectAgent { // Do not set. string name = 1 [deprecated = true]; - // Optional. URI of a proxy if connectivity from the agent to - // gkeconnect.googleapis.com requires the use of a proxy. Format must be in - // the form `http(s)://{proxy_address}`, depending on the HTTP/HTTPS protocol + // Optional. URI of a proxy if connectivity from the agent to gkeconnect.googleapis.com + // requires the use of a proxy. Format must be in the form + // `http(s)://{proxy_address}`, depending on the HTTP/HTTPS protocol // supported by the proxy. This will direct the connect agent's outbound // traffic through a HTTP(S) proxy. bytes proxy = 2 [(google.api.field_behavior) = OPTIONAL]; - // Optional. Namespace for GKE Connect agent resources. Defaults to - // `gke-connect`. + // Optional. Namespace for GKE Connect agent resources. Defaults to `gke-connect`. // // The Connect Agent is authorized automatically when run in the default // namespace. Otherwise, explicit authorization must be granted with an @@ -743,17 +770,21 @@ message ConnectAgent { // The request to validate the existing state of the membership CR in the // cluster. message ValidateExclusivityRequest { - // Required. The parent (project and location) where the Memberships will be - // created. Specified in the format `projects/*/locations/*`. - string parent = 1 [(google.api.field_behavior) = REQUIRED]; - - // Optional. The YAML of the membership CR in the cluster. Empty if the - // membership CR does not exist. + // Required. The parent (project and location) where the Memberships will be created. + // Specified in the format `projects/*/locations/*`. + string parent = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + child_type: "gkehub.googleapis.com/Membership" + } + ]; + + // Optional. The YAML of the membership CR in the cluster. Empty if the membership + // CR does not exist. string cr_manifest = 2 [(google.api.field_behavior) = OPTIONAL]; - // Required. The intended membership name under the `parent`. This method only - // does validation in anticipation of a CreateMembership call with the same - // name. + // Required. The intended membership name under the `parent`. This method only does + // validation in anticipation of a CreateMembership call with the same name. string intended_membership = 3 [(google.api.field_behavior) = REQUIRED]; } @@ -772,7 +803,12 @@ message ValidateExclusivityResponse { message GenerateExclusivityManifestRequest { // Required. The Membership resource name in the format // `projects/*/locations/*/memberships/*`. - string name = 1 [(google.api.field_behavior) = REQUIRED]; + string name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "gkehub.googleapis.com/Membership" + } + ]; // Optional. The YAML manifest of the membership CRD retrieved by // `kubectl get customresourcedefinitions membership`. @@ -799,12 +835,10 @@ message GenerateExclusivityManifestResponse { // Represents the metadata of the long-running operation. message OperationMetadata { // Output only. The time the operation was created. - google.protobuf.Timestamp create_time = 1 - [(google.api.field_behavior) = OUTPUT_ONLY]; + google.protobuf.Timestamp create_time = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; // Output only. The time the operation finished running. - google.protobuf.Timestamp end_time = 2 - [(google.api.field_behavior) = OUTPUT_ONLY]; + google.protobuf.Timestamp end_time = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; // Output only. Server-defined resource path for the target of the operation. string target = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; @@ -817,9 +851,8 @@ message OperationMetadata { // Output only. Identifies whether the user has requested cancellation // of the operation. Operations that have successfully been cancelled - // have [Operation.error][] value with a - // [google.rpc.Status.code][google.rpc.Status.code] of 1, corresponding to - // `Code.CANCELLED`. + // have [Operation.error][] value with a [google.rpc.Status.code][google.rpc.Status.code] of 1, + // corresponding to `Code.CANCELLED`. bool cancel_requested = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; // Output only. API version used to start the operation. diff --git a/packages/google-cloud-gkehub/protos/protos.d.ts b/packages/google-cloud-gkehub/protos/protos.d.ts index c6ce6cb6c9a..016395d017b 100644 --- a/packages/google-cloud-gkehub/protos/protos.d.ts +++ b/packages/google-cloud-gkehub/protos/protos.d.ts @@ -22505,6 +22505,12 @@ export namespace google { /** MembershipEndpoint multiCloudCluster */ multiCloudCluster?: (google.cloud.gkehub.v1beta1.IMultiCloudCluster|null); + /** MembershipEndpoint edgeCluster */ + edgeCluster?: (google.cloud.gkehub.v1beta1.IEdgeCluster|null); + + /** MembershipEndpoint applianceCluster */ + applianceCluster?: (google.cloud.gkehub.v1beta1.IApplianceCluster|null); + /** MembershipEndpoint kubernetesMetadata */ kubernetesMetadata?: (google.cloud.gkehub.v1beta1.IKubernetesMetadata|null); @@ -22530,6 +22536,12 @@ export namespace google { /** MembershipEndpoint multiCloudCluster. */ public multiCloudCluster?: (google.cloud.gkehub.v1beta1.IMultiCloudCluster|null); + /** MembershipEndpoint edgeCluster. */ + public edgeCluster?: (google.cloud.gkehub.v1beta1.IEdgeCluster|null); + + /** MembershipEndpoint applianceCluster. */ + public applianceCluster?: (google.cloud.gkehub.v1beta1.IApplianceCluster|null); + /** MembershipEndpoint kubernetesMetadata. */ public kubernetesMetadata?: (google.cloud.gkehub.v1beta1.IKubernetesMetadata|null); @@ -22537,7 +22549,7 @@ export namespace google { public kubernetesResource?: (google.cloud.gkehub.v1beta1.IKubernetesResource|null); /** MembershipEndpoint type. */ - public type?: ("gkeCluster"|"onPremCluster"|"multiCloudCluster"); + public type?: ("gkeCluster"|"onPremCluster"|"multiCloudCluster"|"edgeCluster"|"applianceCluster"); /** * Creates a new MembershipEndpoint instance using the specified properties. @@ -23210,6 +23222,186 @@ export namespace google { public toJSON(): { [k: string]: any }; } + /** Properties of an EdgeCluster. */ + interface IEdgeCluster { + + /** EdgeCluster resourceLink */ + resourceLink?: (string|null); + } + + /** Represents an EdgeCluster. */ + class EdgeCluster implements IEdgeCluster { + + /** + * Constructs a new EdgeCluster. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.v1beta1.IEdgeCluster); + + /** EdgeCluster resourceLink. */ + public resourceLink: string; + + /** + * Creates a new EdgeCluster instance using the specified properties. + * @param [properties] Properties to set + * @returns EdgeCluster instance + */ + public static create(properties?: google.cloud.gkehub.v1beta1.IEdgeCluster): google.cloud.gkehub.v1beta1.EdgeCluster; + + /** + * Encodes the specified EdgeCluster message. Does not implicitly {@link google.cloud.gkehub.v1beta1.EdgeCluster.verify|verify} messages. + * @param message EdgeCluster message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.v1beta1.IEdgeCluster, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified EdgeCluster message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta1.EdgeCluster.verify|verify} messages. + * @param message EdgeCluster message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.v1beta1.IEdgeCluster, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes an EdgeCluster message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns EdgeCluster + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.v1beta1.EdgeCluster; + + /** + * Decodes an EdgeCluster message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns EdgeCluster + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.v1beta1.EdgeCluster; + + /** + * Verifies an EdgeCluster message. + * @param message Plain 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 EdgeCluster message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns EdgeCluster + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.v1beta1.EdgeCluster; + + /** + * Creates a plain object from an EdgeCluster message. Also converts values to other types if specified. + * @param message EdgeCluster + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.v1beta1.EdgeCluster, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this EdgeCluster to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + + /** Properties of an ApplianceCluster. */ + interface IApplianceCluster { + + /** ApplianceCluster resourceLink */ + resourceLink?: (string|null); + } + + /** Represents an ApplianceCluster. */ + class ApplianceCluster implements IApplianceCluster { + + /** + * Constructs a new ApplianceCluster. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.gkehub.v1beta1.IApplianceCluster); + + /** ApplianceCluster resourceLink. */ + public resourceLink: string; + + /** + * Creates a new ApplianceCluster instance using the specified properties. + * @param [properties] Properties to set + * @returns ApplianceCluster instance + */ + public static create(properties?: google.cloud.gkehub.v1beta1.IApplianceCluster): google.cloud.gkehub.v1beta1.ApplianceCluster; + + /** + * Encodes the specified ApplianceCluster message. Does not implicitly {@link google.cloud.gkehub.v1beta1.ApplianceCluster.verify|verify} messages. + * @param message ApplianceCluster message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.gkehub.v1beta1.IApplianceCluster, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified ApplianceCluster message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta1.ApplianceCluster.verify|verify} messages. + * @param message ApplianceCluster message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.gkehub.v1beta1.IApplianceCluster, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes an ApplianceCluster message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns ApplianceCluster + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.gkehub.v1beta1.ApplianceCluster; + + /** + * Decodes an ApplianceCluster message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns ApplianceCluster + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.gkehub.v1beta1.ApplianceCluster; + + /** + * Verifies an ApplianceCluster message. + * @param message Plain 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 ApplianceCluster message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns ApplianceCluster + */ + public static fromObject(object: { [k: string]: any }): google.cloud.gkehub.v1beta1.ApplianceCluster; + + /** + * Creates a plain object from an ApplianceCluster message. Also converts values to other types if specified. + * @param message ApplianceCluster + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.gkehub.v1beta1.ApplianceCluster, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this ApplianceCluster to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + /** Properties of a KubernetesMetadata. */ interface IKubernetesMetadata { diff --git a/packages/google-cloud-gkehub/protos/protos.js b/packages/google-cloud-gkehub/protos/protos.js index 38573574e8a..5ee08fa35d6 100644 --- a/packages/google-cloud-gkehub/protos/protos.js +++ b/packages/google-cloud-gkehub/protos/protos.js @@ -56287,6 +56287,8 @@ * @property {google.cloud.gkehub.v1beta1.IGkeCluster|null} [gkeCluster] MembershipEndpoint gkeCluster * @property {google.cloud.gkehub.v1beta1.IOnPremCluster|null} [onPremCluster] MembershipEndpoint onPremCluster * @property {google.cloud.gkehub.v1beta1.IMultiCloudCluster|null} [multiCloudCluster] MembershipEndpoint multiCloudCluster + * @property {google.cloud.gkehub.v1beta1.IEdgeCluster|null} [edgeCluster] MembershipEndpoint edgeCluster + * @property {google.cloud.gkehub.v1beta1.IApplianceCluster|null} [applianceCluster] MembershipEndpoint applianceCluster * @property {google.cloud.gkehub.v1beta1.IKubernetesMetadata|null} [kubernetesMetadata] MembershipEndpoint kubernetesMetadata * @property {google.cloud.gkehub.v1beta1.IKubernetesResource|null} [kubernetesResource] MembershipEndpoint kubernetesResource */ @@ -56330,6 +56332,22 @@ */ MembershipEndpoint.prototype.multiCloudCluster = null; + /** + * MembershipEndpoint edgeCluster. + * @member {google.cloud.gkehub.v1beta1.IEdgeCluster|null|undefined} edgeCluster + * @memberof google.cloud.gkehub.v1beta1.MembershipEndpoint + * @instance + */ + MembershipEndpoint.prototype.edgeCluster = null; + + /** + * MembershipEndpoint applianceCluster. + * @member {google.cloud.gkehub.v1beta1.IApplianceCluster|null|undefined} applianceCluster + * @memberof google.cloud.gkehub.v1beta1.MembershipEndpoint + * @instance + */ + MembershipEndpoint.prototype.applianceCluster = null; + /** * MembershipEndpoint kubernetesMetadata. * @member {google.cloud.gkehub.v1beta1.IKubernetesMetadata|null|undefined} kubernetesMetadata @@ -56351,12 +56369,12 @@ /** * MembershipEndpoint type. - * @member {"gkeCluster"|"onPremCluster"|"multiCloudCluster"|undefined} type + * @member {"gkeCluster"|"onPremCluster"|"multiCloudCluster"|"edgeCluster"|"applianceCluster"|undefined} type * @memberof google.cloud.gkehub.v1beta1.MembershipEndpoint * @instance */ Object.defineProperty(MembershipEndpoint.prototype, "type", { - get: $util.oneOfGetter($oneOfFields = ["gkeCluster", "onPremCluster", "multiCloudCluster"]), + get: $util.oneOfGetter($oneOfFields = ["gkeCluster", "onPremCluster", "multiCloudCluster", "edgeCluster", "applianceCluster"]), set: $util.oneOfSetter($oneOfFields) }); @@ -56394,6 +56412,10 @@ $root.google.cloud.gkehub.v1beta1.OnPremCluster.encode(message.onPremCluster, writer.uint32(/* id 7, wireType 2 =*/58).fork()).ldelim(); if (message.multiCloudCluster != null && Object.hasOwnProperty.call(message, "multiCloudCluster")) $root.google.cloud.gkehub.v1beta1.MultiCloudCluster.encode(message.multiCloudCluster, writer.uint32(/* id 8, wireType 2 =*/66).fork()).ldelim(); + if (message.edgeCluster != null && Object.hasOwnProperty.call(message, "edgeCluster")) + $root.google.cloud.gkehub.v1beta1.EdgeCluster.encode(message.edgeCluster, writer.uint32(/* id 9, wireType 2 =*/74).fork()).ldelim(); + if (message.applianceCluster != null && Object.hasOwnProperty.call(message, "applianceCluster")) + $root.google.cloud.gkehub.v1beta1.ApplianceCluster.encode(message.applianceCluster, writer.uint32(/* id 10, wireType 2 =*/82).fork()).ldelim(); return writer; }; @@ -56437,6 +56459,12 @@ case 8: message.multiCloudCluster = $root.google.cloud.gkehub.v1beta1.MultiCloudCluster.decode(reader, reader.uint32()); break; + case 9: + message.edgeCluster = $root.google.cloud.gkehub.v1beta1.EdgeCluster.decode(reader, reader.uint32()); + break; + case 10: + message.applianceCluster = $root.google.cloud.gkehub.v1beta1.ApplianceCluster.decode(reader, reader.uint32()); + break; case 5: message.kubernetesMetadata = $root.google.cloud.gkehub.v1beta1.KubernetesMetadata.decode(reader, reader.uint32()); break; @@ -56507,6 +56535,26 @@ return "multiCloudCluster." + error; } } + if (message.edgeCluster != null && message.hasOwnProperty("edgeCluster")) { + if (properties.type === 1) + return "type: multiple values"; + properties.type = 1; + { + var error = $root.google.cloud.gkehub.v1beta1.EdgeCluster.verify(message.edgeCluster); + if (error) + return "edgeCluster." + error; + } + } + if (message.applianceCluster != null && message.hasOwnProperty("applianceCluster")) { + if (properties.type === 1) + return "type: multiple values"; + properties.type = 1; + { + var error = $root.google.cloud.gkehub.v1beta1.ApplianceCluster.verify(message.applianceCluster); + if (error) + return "applianceCluster." + error; + } + } if (message.kubernetesMetadata != null && message.hasOwnProperty("kubernetesMetadata")) { var error = $root.google.cloud.gkehub.v1beta1.KubernetesMetadata.verify(message.kubernetesMetadata); if (error) @@ -56547,6 +56595,16 @@ throw TypeError(".google.cloud.gkehub.v1beta1.MembershipEndpoint.multiCloudCluster: object expected"); message.multiCloudCluster = $root.google.cloud.gkehub.v1beta1.MultiCloudCluster.fromObject(object.multiCloudCluster); } + if (object.edgeCluster != null) { + if (typeof object.edgeCluster !== "object") + throw TypeError(".google.cloud.gkehub.v1beta1.MembershipEndpoint.edgeCluster: object expected"); + message.edgeCluster = $root.google.cloud.gkehub.v1beta1.EdgeCluster.fromObject(object.edgeCluster); + } + if (object.applianceCluster != null) { + if (typeof object.applianceCluster !== "object") + throw TypeError(".google.cloud.gkehub.v1beta1.MembershipEndpoint.applianceCluster: object expected"); + message.applianceCluster = $root.google.cloud.gkehub.v1beta1.ApplianceCluster.fromObject(object.applianceCluster); + } if (object.kubernetesMetadata != null) { if (typeof object.kubernetesMetadata !== "object") throw TypeError(".google.cloud.gkehub.v1beta1.MembershipEndpoint.kubernetesMetadata: object expected"); @@ -56596,6 +56654,16 @@ if (options.oneofs) object.type = "multiCloudCluster"; } + if (message.edgeCluster != null && message.hasOwnProperty("edgeCluster")) { + object.edgeCluster = $root.google.cloud.gkehub.v1beta1.EdgeCluster.toObject(message.edgeCluster, options); + if (options.oneofs) + object.type = "edgeCluster"; + } + if (message.applianceCluster != null && message.hasOwnProperty("applianceCluster")) { + object.applianceCluster = $root.google.cloud.gkehub.v1beta1.ApplianceCluster.toObject(message.applianceCluster, options); + if (options.oneofs) + object.type = "applianceCluster"; + } return object; }; @@ -58010,6 +58078,380 @@ return MultiCloudCluster; })(); + v1beta1.EdgeCluster = (function() { + + /** + * Properties of an EdgeCluster. + * @memberof google.cloud.gkehub.v1beta1 + * @interface IEdgeCluster + * @property {string|null} [resourceLink] EdgeCluster resourceLink + */ + + /** + * Constructs a new EdgeCluster. + * @memberof google.cloud.gkehub.v1beta1 + * @classdesc Represents an EdgeCluster. + * @implements IEdgeCluster + * @constructor + * @param {google.cloud.gkehub.v1beta1.IEdgeCluster=} [properties] Properties to set + */ + function EdgeCluster(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]]; + } + + /** + * EdgeCluster resourceLink. + * @member {string} resourceLink + * @memberof google.cloud.gkehub.v1beta1.EdgeCluster + * @instance + */ + EdgeCluster.prototype.resourceLink = ""; + + /** + * Creates a new EdgeCluster instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.v1beta1.EdgeCluster + * @static + * @param {google.cloud.gkehub.v1beta1.IEdgeCluster=} [properties] Properties to set + * @returns {google.cloud.gkehub.v1beta1.EdgeCluster} EdgeCluster instance + */ + EdgeCluster.create = function create(properties) { + return new EdgeCluster(properties); + }; + + /** + * Encodes the specified EdgeCluster message. Does not implicitly {@link google.cloud.gkehub.v1beta1.EdgeCluster.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.v1beta1.EdgeCluster + * @static + * @param {google.cloud.gkehub.v1beta1.IEdgeCluster} message EdgeCluster message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + EdgeCluster.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.resourceLink != null && Object.hasOwnProperty.call(message, "resourceLink")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.resourceLink); + return writer; + }; + + /** + * Encodes the specified EdgeCluster message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta1.EdgeCluster.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.v1beta1.EdgeCluster + * @static + * @param {google.cloud.gkehub.v1beta1.IEdgeCluster} message EdgeCluster message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + EdgeCluster.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes an EdgeCluster message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.v1beta1.EdgeCluster + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.v1beta1.EdgeCluster} EdgeCluster + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + EdgeCluster.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.v1beta1.EdgeCluster(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.resourceLink = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes an EdgeCluster message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.v1beta1.EdgeCluster + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.v1beta1.EdgeCluster} EdgeCluster + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + EdgeCluster.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies an EdgeCluster message. + * @function verify + * @memberof google.cloud.gkehub.v1beta1.EdgeCluster + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + EdgeCluster.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.resourceLink != null && message.hasOwnProperty("resourceLink")) + if (!$util.isString(message.resourceLink)) + return "resourceLink: string expected"; + return null; + }; + + /** + * Creates an EdgeCluster message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.v1beta1.EdgeCluster + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.v1beta1.EdgeCluster} EdgeCluster + */ + EdgeCluster.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.v1beta1.EdgeCluster) + return object; + var message = new $root.google.cloud.gkehub.v1beta1.EdgeCluster(); + if (object.resourceLink != null) + message.resourceLink = String(object.resourceLink); + return message; + }; + + /** + * Creates a plain object from an EdgeCluster message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.v1beta1.EdgeCluster + * @static + * @param {google.cloud.gkehub.v1beta1.EdgeCluster} message EdgeCluster + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + EdgeCluster.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) + object.resourceLink = ""; + if (message.resourceLink != null && message.hasOwnProperty("resourceLink")) + object.resourceLink = message.resourceLink; + return object; + }; + + /** + * Converts this EdgeCluster to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.v1beta1.EdgeCluster + * @instance + * @returns {Object.} JSON object + */ + EdgeCluster.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return EdgeCluster; + })(); + + v1beta1.ApplianceCluster = (function() { + + /** + * Properties of an ApplianceCluster. + * @memberof google.cloud.gkehub.v1beta1 + * @interface IApplianceCluster + * @property {string|null} [resourceLink] ApplianceCluster resourceLink + */ + + /** + * Constructs a new ApplianceCluster. + * @memberof google.cloud.gkehub.v1beta1 + * @classdesc Represents an ApplianceCluster. + * @implements IApplianceCluster + * @constructor + * @param {google.cloud.gkehub.v1beta1.IApplianceCluster=} [properties] Properties to set + */ + function ApplianceCluster(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]]; + } + + /** + * ApplianceCluster resourceLink. + * @member {string} resourceLink + * @memberof google.cloud.gkehub.v1beta1.ApplianceCluster + * @instance + */ + ApplianceCluster.prototype.resourceLink = ""; + + /** + * Creates a new ApplianceCluster instance using the specified properties. + * @function create + * @memberof google.cloud.gkehub.v1beta1.ApplianceCluster + * @static + * @param {google.cloud.gkehub.v1beta1.IApplianceCluster=} [properties] Properties to set + * @returns {google.cloud.gkehub.v1beta1.ApplianceCluster} ApplianceCluster instance + */ + ApplianceCluster.create = function create(properties) { + return new ApplianceCluster(properties); + }; + + /** + * Encodes the specified ApplianceCluster message. Does not implicitly {@link google.cloud.gkehub.v1beta1.ApplianceCluster.verify|verify} messages. + * @function encode + * @memberof google.cloud.gkehub.v1beta1.ApplianceCluster + * @static + * @param {google.cloud.gkehub.v1beta1.IApplianceCluster} message ApplianceCluster message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + ApplianceCluster.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.resourceLink != null && Object.hasOwnProperty.call(message, "resourceLink")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.resourceLink); + return writer; + }; + + /** + * Encodes the specified ApplianceCluster message, length delimited. Does not implicitly {@link google.cloud.gkehub.v1beta1.ApplianceCluster.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.gkehub.v1beta1.ApplianceCluster + * @static + * @param {google.cloud.gkehub.v1beta1.IApplianceCluster} message ApplianceCluster message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + ApplianceCluster.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes an ApplianceCluster message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.gkehub.v1beta1.ApplianceCluster + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.gkehub.v1beta1.ApplianceCluster} ApplianceCluster + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + ApplianceCluster.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.gkehub.v1beta1.ApplianceCluster(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.resourceLink = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes an ApplianceCluster message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.gkehub.v1beta1.ApplianceCluster + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.gkehub.v1beta1.ApplianceCluster} ApplianceCluster + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + ApplianceCluster.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies an ApplianceCluster message. + * @function verify + * @memberof google.cloud.gkehub.v1beta1.ApplianceCluster + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + ApplianceCluster.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.resourceLink != null && message.hasOwnProperty("resourceLink")) + if (!$util.isString(message.resourceLink)) + return "resourceLink: string expected"; + return null; + }; + + /** + * Creates an ApplianceCluster message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.gkehub.v1beta1.ApplianceCluster + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.gkehub.v1beta1.ApplianceCluster} ApplianceCluster + */ + ApplianceCluster.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.gkehub.v1beta1.ApplianceCluster) + return object; + var message = new $root.google.cloud.gkehub.v1beta1.ApplianceCluster(); + if (object.resourceLink != null) + message.resourceLink = String(object.resourceLink); + return message; + }; + + /** + * Creates a plain object from an ApplianceCluster message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.gkehub.v1beta1.ApplianceCluster + * @static + * @param {google.cloud.gkehub.v1beta1.ApplianceCluster} message ApplianceCluster + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + ApplianceCluster.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) + object.resourceLink = ""; + if (message.resourceLink != null && message.hasOwnProperty("resourceLink")) + object.resourceLink = message.resourceLink; + return object; + }; + + /** + * Converts this ApplianceCluster to JSON. + * @function toJSON + * @memberof google.cloud.gkehub.v1beta1.ApplianceCluster + * @instance + * @returns {Object.} JSON object + */ + ApplianceCluster.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return ApplianceCluster; + })(); + v1beta1.KubernetesMetadata = (function() { /** diff --git a/packages/google-cloud-gkehub/protos/protos.json b/packages/google-cloud-gkehub/protos/protos.json index db9064ad21e..7f2b95e96f7 100644 --- a/packages/google-cloud-gkehub/protos/protos.json +++ b/packages/google-cloud-gkehub/protos/protos.json @@ -6064,7 +6064,9 @@ "oneof": [ "gkeCluster", "onPremCluster", - "multiCloudCluster" + "multiCloudCluster", + "edgeCluster", + "applianceCluster" ] } }, @@ -6090,6 +6092,20 @@ "(google.api.field_behavior)": "OPTIONAL" } }, + "edgeCluster": { + "type": "EdgeCluster", + "id": 9, + "options": { + "(google.api.field_behavior)": "OPTIONAL" + } + }, + "applianceCluster": { + "type": "ApplianceCluster", + "id": 10, + "options": { + "(google.api.field_behavior)": "OPTIONAL" + } + }, "kubernetesMetadata": { "type": "KubernetesMetadata", "id": 5, @@ -6238,6 +6254,28 @@ } } }, + "EdgeCluster": { + "fields": { + "resourceLink": { + "type": "string", + "id": 1, + "options": { + "(google.api.field_behavior)": "IMMUTABLE" + } + } + } + }, + "ApplianceCluster": { + "fields": { + "resourceLink": { + "type": "string", + "id": 1, + "options": { + "(google.api.field_behavior)": "IMMUTABLE" + } + } + } + }, "KubernetesMetadata": { "fields": { "kubernetesApiServerVersion": { @@ -6359,7 +6397,8 @@ "type": "string", "id": 1, "options": { - "(google.api.field_behavior)": "REQUIRED" + "(google.api.field_behavior)": "REQUIRED", + "(google.api.resource_reference).child_type": "gkehub.googleapis.com/Membership" } }, "pageSize": { @@ -6416,7 +6455,8 @@ "type": "string", "id": 1, "options": { - "(google.api.field_behavior)": "REQUIRED" + "(google.api.field_behavior)": "REQUIRED", + "(google.api.resource_reference).type": "gkehub.googleapis.com/Membership" } } } @@ -6427,7 +6467,8 @@ "type": "string", "id": 1, "options": { - "(google.api.field_behavior)": "REQUIRED" + "(google.api.field_behavior)": "REQUIRED", + "(google.api.resource_reference).child_type": "gkehub.googleapis.com/Membership" } }, "membershipId": { @@ -6459,7 +6500,8 @@ "type": "string", "id": 1, "options": { - "(google.api.field_behavior)": "REQUIRED" + "(google.api.field_behavior)": "REQUIRED", + "(google.api.resource_reference).type": "gkehub.googleapis.com/Membership" } }, "requestId": { @@ -6477,7 +6519,8 @@ "type": "string", "id": 1, "options": { - "(google.api.field_behavior)": "REQUIRED" + "(google.api.field_behavior)": "REQUIRED", + "(google.api.resource_reference).type": "gkehub.googleapis.com/Membership" } }, "updateMask": { @@ -6509,7 +6552,8 @@ "type": "string", "id": 1, "options": { - "(google.api.field_behavior)": "REQUIRED" + "(google.api.field_behavior)": "REQUIRED", + "(google.api.resource_reference).type": "gkehub.googleapis.com/Membership" } }, "connectAgent": { @@ -6613,7 +6657,8 @@ "type": "string", "id": 1, "options": { - "(google.api.field_behavior)": "REQUIRED" + "(google.api.field_behavior)": "REQUIRED", + "(google.api.resource_reference).child_type": "gkehub.googleapis.com/Membership" } }, "crManifest": { @@ -6646,7 +6691,8 @@ "type": "string", "id": 1, "options": { - "(google.api.field_behavior)": "REQUIRED" + "(google.api.field_behavior)": "REQUIRED", + "(google.api.resource_reference).type": "gkehub.googleapis.com/Membership" } }, "crdManifest": { diff --git a/packages/google-cloud-gkehub/samples/generated/v1beta1/gke_hub_membership_service.create_membership.js b/packages/google-cloud-gkehub/samples/generated/v1beta1/gke_hub_membership_service.create_membership.js index ab7554dcaa6..c2091031614 100644 --- a/packages/google-cloud-gkehub/samples/generated/v1beta1/gke_hub_membership_service.create_membership.js +++ b/packages/google-cloud-gkehub/samples/generated/v1beta1/gke_hub_membership_service.create_membership.js @@ -26,13 +26,13 @@ function main(parent, membershipId, resource) { * TODO(developer): Uncomment these variables before running the sample. */ /** - * Required. The parent (project and location) where the Memberships will be - * created. Specified in the format `projects/* /locations/*`. + * Required. The parent (project and location) where the Memberships will be created. + * Specified in the format `projects/* /locations/*`. */ // const parent = 'abc123' /** - * Required. Client chosen ID for the membership. `membership_id` must be a - * valid RFC 1123 compliant DNS label: + * Required. Client chosen ID for the membership. `membership_id` must be a valid RFC + * 1123 compliant DNS label: * 1. At most 63 characters in length * 2. It must consist of lower case alphanumeric characters or `-` * 3. It must start and end with an alphanumeric character diff --git a/packages/google-cloud-gkehub/samples/generated/v1beta1/gke_hub_membership_service.generate_connect_manifest.js b/packages/google-cloud-gkehub/samples/generated/v1beta1/gke_hub_membership_service.generate_connect_manifest.js index 6f023fe4af1..ee6c0dca837 100644 --- a/packages/google-cloud-gkehub/samples/generated/v1beta1/gke_hub_membership_service.generate_connect_manifest.js +++ b/packages/google-cloud-gkehub/samples/generated/v1beta1/gke_hub_membership_service.generate_connect_manifest.js @@ -26,8 +26,8 @@ function main(name) { * TODO(developer): Uncomment these variables before running the sample. */ /** - * Required. The Membership resource name the Agent will associate with, in - * the format `projects/* /locations/* /memberships/*`. + * Required. The Membership resource name the Agent will associate with, in the format + * `projects/* /locations/* /memberships/*`. */ // const name = 'abc123' /** @@ -35,8 +35,7 @@ function main(name) { */ // const connectAgent = {} /** - * Optional. The Connect agent version to use. Defaults to the most current - * version. + * Optional. The Connect agent version to use. Defaults to the most current version. */ // const version = 'abc123' /** diff --git a/packages/google-cloud-gkehub/samples/generated/v1beta1/gke_hub_membership_service.list_memberships.js b/packages/google-cloud-gkehub/samples/generated/v1beta1/gke_hub_membership_service.list_memberships.js index 16562113679..5ce348c2f19 100644 --- a/packages/google-cloud-gkehub/samples/generated/v1beta1/gke_hub_membership_service.list_memberships.js +++ b/packages/google-cloud-gkehub/samples/generated/v1beta1/gke_hub_membership_service.list_memberships.js @@ -26,14 +26,14 @@ function main(parent) { * TODO(developer): Uncomment these variables before running the sample. */ /** - * Required. The parent (project and location) where the Memberships will be - * listed. Specified in the format `projects/* /locations/*`. + * Required. The parent (project and location) where the Memberships will be listed. + * Specified in the format `projects/* /locations/*`. */ // const parent = 'abc123' /** - * Optional. When requesting a 'page' of resources, `page_size` specifies - * number of resources to return. If unspecified or set to 0, all resources - * will be returned. + * Optional. When requesting a 'page' of resources, `page_size` specifies number of + * resources to return. If unspecified or set to 0, all resources will + * be returned. */ // const pageSize = 1234 /** @@ -43,8 +43,8 @@ function main(parent) { */ // const pageToken = 'abc123' /** - * Optional. Lists Memberships that match the filter expression, following the - * syntax outlined in https://google.aip.dev/160. + * Optional. Lists Memberships that match the filter expression, following the syntax + * outlined in https://google.aip.dev/160. * Examples: * - Name is `bar` in project `foo-proj` and location `global`: * name = "projects/foo-proj/locations/global/membership/bar" diff --git a/packages/google-cloud-gkehub/samples/generated/v1beta1/gke_hub_membership_service.update_membership.js b/packages/google-cloud-gkehub/samples/generated/v1beta1/gke_hub_membership_service.update_membership.js index 6bcdd6d7067..84e93fe40cb 100644 --- a/packages/google-cloud-gkehub/samples/generated/v1beta1/gke_hub_membership_service.update_membership.js +++ b/packages/google-cloud-gkehub/samples/generated/v1beta1/gke_hub_membership_service.update_membership.js @@ -31,8 +31,8 @@ function main(name, updateMask, resource) { */ // const name = 'abc123' /** - * Required. Mask of fields to update. At least one field path must be - * specified in this mask. + * Required. Mask of fields to update. At least one field path must be specified in this + * mask. */ // const updateMask = {} /** diff --git a/packages/google-cloud-gkehub/samples/generated/v1beta1/gke_hub_membership_service.validate_exclusivity.js b/packages/google-cloud-gkehub/samples/generated/v1beta1/gke_hub_membership_service.validate_exclusivity.js index 46dabb6c58e..37d2d0636f9 100644 --- a/packages/google-cloud-gkehub/samples/generated/v1beta1/gke_hub_membership_service.validate_exclusivity.js +++ b/packages/google-cloud-gkehub/samples/generated/v1beta1/gke_hub_membership_service.validate_exclusivity.js @@ -26,19 +26,18 @@ function main(parent, intendedMembership) { * TODO(developer): Uncomment these variables before running the sample. */ /** - * Required. The parent (project and location) where the Memberships will be - * created. Specified in the format `projects/* /locations/*`. + * Required. The parent (project and location) where the Memberships will be created. + * Specified in the format `projects/* /locations/*`. */ // const parent = 'abc123' /** - * Optional. The YAML of the membership CR in the cluster. Empty if the - * membership CR does not exist. + * Optional. The YAML of the membership CR in the cluster. Empty if the membership + * CR does not exist. */ // const crManifest = 'abc123' /** - * Required. The intended membership name under the `parent`. This method only - * does validation in anticipation of a CreateMembership call with the same - * name. + * Required. The intended membership name under the `parent`. This method only does + * validation in anticipation of a CreateMembership call with the same name. */ // const intendedMembership = 'abc123' diff --git a/packages/google-cloud-gkehub/samples/generated/v1beta1/snippet_metadata.google.cloud.gkehub.v1beta1.json b/packages/google-cloud-gkehub/samples/generated/v1beta1/snippet_metadata.google.cloud.gkehub.v1beta1.json index a4f353e6b28..563c3f826cb 100644 --- a/packages/google-cloud-gkehub/samples/generated/v1beta1/snippet_metadata.google.cloud.gkehub.v1beta1.json +++ b/packages/google-cloud-gkehub/samples/generated/v1beta1/snippet_metadata.google.cloud.gkehub.v1beta1.json @@ -266,7 +266,7 @@ "segments": [ { "start": 25, - "end": 74, + "end": 73, "type": "FULL" } ], @@ -326,7 +326,7 @@ "segments": [ { "start": 25, - "end": 63, + "end": 62, "type": "FULL" } ], diff --git a/packages/google-cloud-gkehub/src/v1beta1/gke_hub_membership_service_client.ts b/packages/google-cloud-gkehub/src/v1beta1/gke_hub_membership_service_client.ts index 3a0e2de9335..21b75b92f8c 100644 --- a/packages/google-cloud-gkehub/src/v1beta1/gke_hub_membership_service_client.ts +++ b/packages/google-cloud-gkehub/src/v1beta1/gke_hub_membership_service_client.ts @@ -26,6 +26,10 @@ import { LROperation, PaginationCallback, GaxCall, + IamClient, + IamProtos, + LocationsClient, + LocationProtos, } from 'google-gax'; import {Transform} from 'stream'; @@ -43,8 +47,7 @@ const version = require('../../../package.json').version; /** * The GKE Hub MembershipService handles the registration of many Kubernetes - * clusters to Google Cloud, represented with the - * {@link google.cloud.gkehub.v1beta1.Membership|Membership} resource. + * clusters to Google Cloud, represented with the {@link google.cloud.gkehub.v1beta1.Membership|Membership} resource. * * GKE Hub is currently only available in the global region. * @@ -71,6 +74,8 @@ export class GkeHubMembershipServiceClient { }; warn: (code: string, message: string, warnType?: string) => void; innerApiCalls: {[name: string]: Function}; + iamClient: IamClient; + locationsClient: LocationsClient; pathTemplates: {[name: string]: gax.PathTemplate}; operationsClient: gax.OperationsClient; gkeHubMembershipServiceStub?: Promise<{[name: string]: Function}>; @@ -152,6 +157,9 @@ export class GkeHubMembershipServiceClient { if (servicePath === staticMembers.servicePath) { this.auth.defaultScopes = staticMembers.scopes; } + this.iamClient = new IamClient(this._gaxGrpc, opts); + + this.locationsClient = new LocationsClient(this._gaxGrpc, opts); // Determine the client header string. const clientHeader = [`gax/${this._gaxModule.version}`, `gapic/${version}`]; @@ -175,9 +183,15 @@ export class GkeHubMembershipServiceClient { // identifiers to uniquely identify resources within the API. // Create useful helper objects for these. this.pathTemplates = { + locationPathTemplate: new this._gaxModule.PathTemplate( + 'projects/{project}/locations/{location}' + ), membershipPathTemplate: new this._gaxModule.PathTemplate( 'projects/{project}/locations/{location}/memberships/{membership}' ), + projectPathTemplate: new this._gaxModule.PathTemplate( + 'projects/{project}' + ), }; // Some of the methods on this service return "paged" results, @@ -485,13 +499,12 @@ export class GkeHubMembershipServiceClient { * @param {Object} request * The request object that will be sent. * @param {string} request.name - * Required. The Membership resource name the Agent will associate with, in - * the format `projects/* /locations/* /memberships/*`. + * Required. The Membership resource name the Agent will associate with, in the format + * `projects/* /locations/* /memberships/*`. * @param {google.cloud.gkehub.v1beta1.ConnectAgent} [request.connectAgent] * Optional. The connect agent to generate manifest for. * @param {string} [request.version] - * Optional. The Connect agent version to use. Defaults to the most current - * version. + * Optional. The Connect agent version to use. Defaults to the most current version. * @param {boolean} [request.isUpgrade] * Optional. If true, generate the resources for upgrade only. Some resources * generated only for installation (e.g. secrets) will be excluded. @@ -601,15 +614,14 @@ export class GkeHubMembershipServiceClient { * @param {Object} request * The request object that will be sent. * @param {string} request.parent - * Required. The parent (project and location) where the Memberships will be - * created. Specified in the format `projects/* /locations/*`. + * Required. The parent (project and location) where the Memberships will be created. + * Specified in the format `projects/* /locations/*`. * @param {string} [request.crManifest] - * Optional. The YAML of the membership CR in the cluster. Empty if the - * membership CR does not exist. + * Optional. The YAML of the membership CR in the cluster. Empty if the membership + * CR does not exist. * @param {string} request.intendedMembership - * Required. The intended membership name under the `parent`. This method only - * does validation in anticipation of a CreateMembership call with the same - * name. + * Required. The intended membership name under the `parent`. This method only does + * validation in anticipation of a CreateMembership call with the same name. * @param {object} [options] * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. * @returns {Promise} - The promise which resolves to an array. @@ -832,11 +844,11 @@ export class GkeHubMembershipServiceClient { * @param {Object} request * The request object that will be sent. * @param {string} request.parent - * Required. The parent (project and location) where the Memberships will be - * created. Specified in the format `projects/* /locations/*`. + * Required. The parent (project and location) where the Memberships will be created. + * Specified in the format `projects/* /locations/*`. * @param {string} request.membershipId - * Required. Client chosen ID for the membership. `membership_id` must be a - * valid RFC 1123 compliant DNS label: + * Required. Client chosen ID for the membership. `membership_id` must be a valid RFC + * 1123 compliant DNS label: * * 1. At most 63 characters in length * 2. It must consist of lower case alphanumeric characters or `-` @@ -1155,8 +1167,8 @@ export class GkeHubMembershipServiceClient { * Required. The membership resource name in the format: * `projects/[project_id]/locations/global/memberships/[membership_id]` * @param {google.protobuf.FieldMask} request.updateMask - * Required. Mask of fields to update. At least one field path must be - * specified in this mask. + * Required. Mask of fields to update. At least one field path must be specified in this + * mask. * @param {google.cloud.gkehub.v1beta1.Membership} request.resource * Required. Only fields specified in update_mask are updated. * If you specify a field in the update_mask but don't specify its value here @@ -1316,19 +1328,19 @@ export class GkeHubMembershipServiceClient { * @param {Object} request * The request object that will be sent. * @param {string} request.parent - * Required. The parent (project and location) where the Memberships will be - * listed. Specified in the format `projects/* /locations/*`. + * Required. The parent (project and location) where the Memberships will be listed. + * Specified in the format `projects/* /locations/*`. * @param {number} [request.pageSize] - * Optional. When requesting a 'page' of resources, `page_size` specifies - * number of resources to return. If unspecified or set to 0, all resources - * will be returned. + * Optional. When requesting a 'page' of resources, `page_size` specifies number of + * resources to return. If unspecified or set to 0, all resources will + * be returned. * @param {string} [request.pageToken] * Optional. Token returned by previous call to `ListMemberships` which * specifies the position in the list from where to continue listing the * resources. * @param {string} [request.filter] - * Optional. Lists Memberships that match the filter expression, following the - * syntax outlined in https://google.aip.dev/160. + * Optional. Lists Memberships that match the filter expression, following the syntax + * outlined in https://google.aip.dev/160. * * Examples: * @@ -1443,19 +1455,19 @@ export class GkeHubMembershipServiceClient { * @param {Object} request * The request object that will be sent. * @param {string} request.parent - * Required. The parent (project and location) where the Memberships will be - * listed. Specified in the format `projects/* /locations/*`. + * Required. The parent (project and location) where the Memberships will be listed. + * Specified in the format `projects/* /locations/*`. * @param {number} [request.pageSize] - * Optional. When requesting a 'page' of resources, `page_size` specifies - * number of resources to return. If unspecified or set to 0, all resources - * will be returned. + * Optional. When requesting a 'page' of resources, `page_size` specifies number of + * resources to return. If unspecified or set to 0, all resources will + * be returned. * @param {string} [request.pageToken] * Optional. Token returned by previous call to `ListMemberships` which * specifies the position in the list from where to continue listing the * resources. * @param {string} [request.filter] - * Optional. Lists Memberships that match the filter expression, following the - * syntax outlined in https://google.aip.dev/160. + * Optional. Lists Memberships that match the filter expression, following the syntax + * outlined in https://google.aip.dev/160. * * Examples: * @@ -1518,19 +1530,19 @@ export class GkeHubMembershipServiceClient { * @param {Object} request * The request object that will be sent. * @param {string} request.parent - * Required. The parent (project and location) where the Memberships will be - * listed. Specified in the format `projects/* /locations/*`. + * Required. The parent (project and location) where the Memberships will be listed. + * Specified in the format `projects/* /locations/*`. * @param {number} [request.pageSize] - * Optional. When requesting a 'page' of resources, `page_size` specifies - * number of resources to return. If unspecified or set to 0, all resources - * will be returned. + * Optional. When requesting a 'page' of resources, `page_size` specifies number of + * resources to return. If unspecified or set to 0, all resources will + * be returned. * @param {string} [request.pageToken] * Optional. Token returned by previous call to `ListMemberships` which * specifies the position in the list from where to continue listing the * resources. * @param {string} [request.filter] - * Optional. Lists Memberships that match the filter expression, following the - * syntax outlined in https://google.aip.dev/160. + * Optional. Lists Memberships that match the filter expression, following the syntax + * outlined in https://google.aip.dev/160. * * Examples: * @@ -1586,10 +1598,443 @@ export class GkeHubMembershipServiceClient { callSettings ) as AsyncIterable; } + /** + * Gets the access control policy for a resource. Returns an empty policy + * if the resource exists and does not have a policy set. + * + * @param {Object} request + * The request object that will be sent. + * @param {string} request.resource + * REQUIRED: The resource for which the policy is being requested. + * See the operation documentation for the appropriate value for this field. + * @param {Object} [request.options] + * OPTIONAL: A `GetPolicyOptions` object for specifying options to + * `GetIamPolicy`. This field is only used by Cloud IAM. + * + * This object should have the same structure as [GetPolicyOptions]{@link google.iam.v1.GetPolicyOptions} + * @param {Object} [options] + * Optional parameters. You can override the default settings for this call, e.g, timeout, + * retries, paginations, etc. See [gax.CallOptions]{@link https://googleapis.github.io/gax-nodejs/interfaces/CallOptions.html} for the details. + * @param {function(?Error, ?Object)} [callback] + * The function which will be called with the result of the API call. + * + * The second parameter to the callback is an object representing [Policy]{@link google.iam.v1.Policy}. + * @returns {Promise} - The promise which resolves to an array. + * The first element of the array is an object representing [Policy]{@link google.iam.v1.Policy}. + * The promise has a method named "cancel" which cancels the ongoing API call. + */ + getIamPolicy( + request: IamProtos.google.iam.v1.GetIamPolicyRequest, + options?: + | gax.CallOptions + | Callback< + IamProtos.google.iam.v1.Policy, + IamProtos.google.iam.v1.GetIamPolicyRequest | null | undefined, + {} | null | undefined + >, + callback?: Callback< + IamProtos.google.iam.v1.Policy, + IamProtos.google.iam.v1.GetIamPolicyRequest | null | undefined, + {} | null | undefined + > + ): Promise { + return this.iamClient.getIamPolicy(request, options, callback); + } + + /** + * Returns permissions that a caller has on the specified resource. If the + * resource does not exist, this will return an empty set of + * permissions, not a NOT_FOUND error. + * + * Note: This operation is designed to be used for building + * permission-aware UIs and command-line tools, not for authorization + * checking. This operation may "fail open" without warning. + * + * @param {Object} request + * The request object that will be sent. + * @param {string} request.resource + * REQUIRED: The resource for which the policy detail is being requested. + * See the operation documentation for the appropriate value for this field. + * @param {string[]} request.permissions + * The set of permissions to check for the `resource`. Permissions with + * wildcards (such as '*' or 'storage.*') are not allowed. For more + * information see + * [IAM Overview](https://cloud.google.com/iam/docs/overview#permissions). + * @param {Object} [options] + * Optional parameters. You can override the default settings for this call, e.g, timeout, + * retries, paginations, etc. See [gax.CallOptions]{@link https://googleapis.github.io/gax-nodejs/interfaces/CallOptions.html} for the details. + * @param {function(?Error, ?Object)} [callback] + * The function which will be called with the result of the API call. + * + * The second parameter to the callback is an object representing [TestIamPermissionsResponse]{@link google.iam.v1.TestIamPermissionsResponse}. + * @returns {Promise} - The promise which resolves to an array. + * The first element of the array is an object representing [TestIamPermissionsResponse]{@link google.iam.v1.TestIamPermissionsResponse}. + * The promise has a method named "cancel" which cancels the ongoing API call. + */ + setIamPolicy( + request: IamProtos.google.iam.v1.SetIamPolicyRequest, + options?: + | gax.CallOptions + | Callback< + IamProtos.google.iam.v1.Policy, + IamProtos.google.iam.v1.SetIamPolicyRequest | null | undefined, + {} | null | undefined + >, + callback?: Callback< + IamProtos.google.iam.v1.Policy, + IamProtos.google.iam.v1.SetIamPolicyRequest | null | undefined, + {} | null | undefined + > + ): Promise { + return this.iamClient.setIamPolicy(request, options, callback); + } + + /** + * Returns permissions that a caller has on the specified resource. If the + * resource does not exist, this will return an empty set of + * permissions, not a NOT_FOUND error. + * + * Note: This operation is designed to be used for building + * permission-aware UIs and command-line tools, not for authorization + * checking. This operation may "fail open" without warning. + * + * @param {Object} request + * The request object that will be sent. + * @param {string} request.resource + * REQUIRED: The resource for which the policy detail is being requested. + * See the operation documentation for the appropriate value for this field. + * @param {string[]} request.permissions + * The set of permissions to check for the `resource`. Permissions with + * wildcards (such as '*' or 'storage.*') are not allowed. For more + * information see + * [IAM Overview](https://cloud.google.com/iam/docs/overview#permissions). + * @param {Object} [options] + * Optional parameters. You can override the default settings for this call, e.g, timeout, + * retries, paginations, etc. See [gax.CallOptions]{@link https://googleapis.github.io/gax-nodejs/interfaces/CallOptions.html} for the details. + * @param {function(?Error, ?Object)} [callback] + * The function which will be called with the result of the API call. + * + * The second parameter to the callback is an object representing [TestIamPermissionsResponse]{@link google.iam.v1.TestIamPermissionsResponse}. + * @returns {Promise} - The promise which resolves to an array. + * The first element of the array is an object representing [TestIamPermissionsResponse]{@link google.iam.v1.TestIamPermissionsResponse}. + * The promise has a method named "cancel" which cancels the ongoing API call. + * + */ + testIamPermissions( + request: IamProtos.google.iam.v1.TestIamPermissionsRequest, + options?: + | gax.CallOptions + | Callback< + IamProtos.google.iam.v1.TestIamPermissionsResponse, + IamProtos.google.iam.v1.TestIamPermissionsRequest | null | undefined, + {} | null | undefined + >, + callback?: Callback< + IamProtos.google.iam.v1.TestIamPermissionsResponse, + IamProtos.google.iam.v1.TestIamPermissionsRequest | null | undefined, + {} | null | undefined + > + ): Promise { + return this.iamClient.testIamPermissions(request, options, callback); + } + + /** + * Gets information about a location. + * + * @param {Object} request + * The request object that will be sent. + * @param {string} request.name + * Resource name for the location. + * @param {object} [options] + * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. + * @returns {Promise} - The promise which resolves to an array. + * The first element of the array is an object representing [Location]{@link google.cloud.location.Location}. + * Please see the + * [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods) + * for more details and examples. + * @example + * ``` + * const [response] = await client.getLocation(request); + * ``` + */ + getLocation( + request: LocationProtos.google.cloud.location.IGetLocationRequest, + options?: + | gax.CallOptions + | Callback< + LocationProtos.google.cloud.location.ILocation, + | LocationProtos.google.cloud.location.IGetLocationRequest + | null + | undefined, + {} | null | undefined + >, + callback?: Callback< + LocationProtos.google.cloud.location.ILocation, + | LocationProtos.google.cloud.location.IGetLocationRequest + | null + | undefined, + {} | null | undefined + > + ): Promise { + return this.locationsClient.getLocation(request, options, callback); + } + + /** + * Lists information about the supported locations for this service. Returns an iterable object. + * + * `for`-`await`-`of` syntax is used with the iterable to get response elements on-demand. + * @param {Object} request + * The request object that will be sent. + * @param {string} request.name + * The resource that owns the locations collection, if applicable. + * @param {string} request.filter + * The standard list filter. + * @param {number} request.pageSize + * The standard list page size. + * @param {string} request.pageToken + * The standard list page token. + * @param {object} [options] + * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. + * @returns {Object} + * An iterable Object that allows [async iteration](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Iteration_protocols). + * When you iterate the returned iterable, each element will be an object representing + * [Location]{@link google.cloud.location.Location}. The API will be called under the hood as needed, once per the page, + * so you can stop the iteration when you don't need more results. + * Please see the + * [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#auto-pagination) + * for more details and examples. + * @example + * ``` + * const iterable = client.listLocationsAsync(request); + * for await (const response of iterable) { + * // process response + * } + * ``` + */ + listLocationsAsync( + request: LocationProtos.google.cloud.location.IListLocationsRequest, + options?: CallOptions + ): AsyncIterable { + return this.locationsClient.listLocationsAsync(request, options); + } + + /** + * Gets the latest state of a long-running operation. Clients can use this + * method to poll the operation result at intervals as recommended by the API + * service. + * + * @param {Object} request - The request object that will be sent. + * @param {string} request.name - The name of the operation resource. + * @param {Object=} options + * Optional parameters. You can override the default settings for this call, + * e.g, timeout, retries, paginations, etc. See [gax.CallOptions]{@link + * https://googleapis.github.io/gax-nodejs/global.html#CallOptions} for the + * details. + * @param {function(?Error, ?Object)=} callback + * The function which will be called with the result of the API call. + * + * The second parameter to the callback is an object representing + * [google.longrunning.Operation]{@link + * external:"google.longrunning.Operation"}. + * @return {Promise} - The promise which resolves to an array. + * The first element of the array is an object representing + * [google.longrunning.Operation]{@link + * external:"google.longrunning.Operation"}. The promise has a method named + * "cancel" which cancels the ongoing API call. + * + * @example + * ``` + * const client = longrunning.operationsClient(); + * const name = ''; + * const [response] = await client.getOperation({name}); + * // doThingsWith(response) + * ``` + */ + getOperation( + request: protos.google.longrunning.GetOperationRequest, + options?: + | gax.CallOptions + | Callback< + protos.google.longrunning.Operation, + protos.google.longrunning.GetOperationRequest, + {} | null | undefined + >, + callback?: Callback< + protos.google.longrunning.Operation, + protos.google.longrunning.GetOperationRequest, + {} | null | undefined + > + ): Promise<[protos.google.longrunning.Operation]> { + return this.operationsClient.getOperation(request, options, callback); + } + /** + * Lists operations that match the specified filter in the request. If the + * server doesn't support this method, it returns `UNIMPLEMENTED`. Returns an iterable object. + * + * For-await-of syntax is used with the iterable to recursively get response element on-demand. + * + * @param {Object} request - The request object that will be sent. + * @param {string} request.name - The name of the operation collection. + * @param {string} request.filter - The standard list filter. + * @param {number=} request.pageSize - + * The maximum number of resources contained in the underlying API + * response. If page streaming is performed per-resource, this + * parameter does not affect the return value. If page streaming is + * performed per-page, this determines the maximum number of + * resources in a page. + * @param {Object=} options + * Optional parameters. You can override the default settings for this call, + * e.g, timeout, retries, paginations, etc. See [gax.CallOptions]{@link + * https://googleapis.github.io/gax-nodejs/global.html#CallOptions} for the + * details. + * @returns {Object} + * An iterable Object that conforms to @link https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Iteration_protocols. + * + * @example + * ``` + * const client = longrunning.operationsClient(); + * for await (const response of client.listOperationsAsync(request)); + * // doThingsWith(response) + * ``` + */ + listOperationsAsync( + request: protos.google.longrunning.ListOperationsRequest, + options?: gax.CallOptions + ): AsyncIterable { + return this.operationsClient.listOperationsAsync(request, options); + } + /** + * Starts asynchronous cancellation on a long-running operation. The server + * makes a best effort to cancel the operation, but success is not + * guaranteed. If the server doesn't support this method, it returns + * `google.rpc.Code.UNIMPLEMENTED`. Clients can use + * {@link Operations.GetOperation} or + * other methods to check whether the cancellation succeeded or whether the + * operation completed despite cancellation. On successful cancellation, + * the operation is not deleted; instead, it becomes an operation with + * an {@link Operation.error} value with a {@link google.rpc.Status.code} of + * 1, corresponding to `Code.CANCELLED`. + * + * @param {Object} request - The request object that will be sent. + * @param {string} request.name - The name of the operation resource to be cancelled. + * @param {Object=} options + * Optional parameters. You can override the default settings for this call, + * e.g, timeout, retries, paginations, etc. See [gax.CallOptions]{@link + * https://googleapis.github.io/gax-nodejs/global.html#CallOptions} for the + * details. + * @param {function(?Error)=} callback + * The function which will be called with the result of the API call. + * @return {Promise} - The promise which resolves when API call finishes. + * The promise has a method named "cancel" which cancels the ongoing API + * call. + * + * @example + * ``` + * const client = longrunning.operationsClient(); + * await client.cancelOperation({name: ''}); + * ``` + */ + cancelOperation( + request: protos.google.longrunning.CancelOperationRequest, + options?: + | gax.CallOptions + | Callback< + protos.google.protobuf.Empty, + protos.google.longrunning.CancelOperationRequest, + {} | undefined | null + >, + callback?: Callback< + protos.google.longrunning.CancelOperationRequest, + protos.google.protobuf.Empty, + {} | undefined | null + > + ): Promise { + return this.operationsClient.cancelOperation(request, options, callback); + } + + /** + * Deletes a long-running operation. This method indicates that the client is + * no longer interested in the operation result. It does not cancel the + * operation. If the server doesn't support this method, it returns + * `google.rpc.Code.UNIMPLEMENTED`. + * + * @param {Object} request - The request object that will be sent. + * @param {string} request.name - The name of the operation resource to be deleted. + * @param {Object=} options + * Optional parameters. You can override the default settings for this call, + * e.g, timeout, retries, paginations, etc. See [gax.CallOptions]{@link + * https://googleapis.github.io/gax-nodejs/global.html#CallOptions} for the + * details. + * @param {function(?Error)=} callback + * The function which will be called with the result of the API call. + * @return {Promise} - The promise which resolves when API call finishes. + * The promise has a method named "cancel" which cancels the ongoing API + * call. + * + * @example + * ``` + * const client = longrunning.operationsClient(); + * await client.deleteOperation({name: ''}); + * ``` + */ + deleteOperation( + request: protos.google.longrunning.DeleteOperationRequest, + options?: + | gax.CallOptions + | Callback< + protos.google.protobuf.Empty, + protos.google.longrunning.DeleteOperationRequest, + {} | null | undefined + >, + callback?: Callback< + protos.google.protobuf.Empty, + protos.google.longrunning.DeleteOperationRequest, + {} | null | undefined + > + ): Promise { + return this.operationsClient.deleteOperation(request, options, callback); + } + // -------------------- // -- Path templates -- // -------------------- + /** + * Return a fully-qualified location resource name string. + * + * @param {string} project + * @param {string} location + * @returns {string} Resource name string. + */ + locationPath(project: string, location: string) { + return this.pathTemplates.locationPathTemplate.render({ + project: project, + location: location, + }); + } + + /** + * Parse the project from Location resource. + * + * @param {string} locationName + * A fully-qualified path representing Location resource. + * @returns {string} A string representing the project. + */ + matchProjectFromLocationName(locationName: string) { + return this.pathTemplates.locationPathTemplate.match(locationName).project; + } + + /** + * Parse the location from Location resource. + * + * @param {string} locationName + * A fully-qualified path representing Location resource. + * @returns {string} A string representing the location. + */ + matchLocationFromLocationName(locationName: string) { + return this.pathTemplates.locationPathTemplate.match(locationName).location; + } + /** * Return a fully-qualified membership resource name string. * @@ -1642,6 +2087,29 @@ export class GkeHubMembershipServiceClient { .membership; } + /** + * Return a fully-qualified project resource name string. + * + * @param {string} project + * @returns {string} Resource name string. + */ + projectPath(project: string) { + return this.pathTemplates.projectPathTemplate.render({ + project: project, + }); + } + + /** + * Parse the project from Project resource. + * + * @param {string} projectName + * A fully-qualified path representing Project resource. + * @returns {string} A string representing the project. + */ + matchProjectFromProjectName(projectName: string) { + return this.pathTemplates.projectPathTemplate.match(projectName).project; + } + /** * Terminate the gRPC channel and close the client. * @@ -1653,6 +2121,8 @@ export class GkeHubMembershipServiceClient { return this.gkeHubMembershipServiceStub.then(stub => { this._terminated = true; stub.close(); + this.iamClient.close(); + this.locationsClient.close(); this.operationsClient.close(); }); } diff --git a/packages/google-cloud-gkehub/test/gapic_gke_hub_membership_service_v1beta1.ts b/packages/google-cloud-gkehub/test/gapic_gke_hub_membership_service_v1beta1.ts index 2d6241a1c1c..5ca082163dd 100644 --- a/packages/google-cloud-gkehub/test/gapic_gke_hub_membership_service_v1beta1.ts +++ b/packages/google-cloud-gkehub/test/gapic_gke_hub_membership_service_v1beta1.ts @@ -25,7 +25,13 @@ import * as gkehubmembershipserviceModule from '../src'; import {PassThrough} from 'stream'; -import {protobuf, LROperation, operationsProtos} from 'google-gax'; +import { + protobuf, + LROperation, + operationsProtos, + IamProtos, + LocationProtos, +} from 'google-gax'; function generateSampleMessage(instance: T) { const filledObject = ( @@ -1780,8 +1786,956 @@ describe('v1beta1.GkeHubMembershipServiceClient', () => { ); }); }); + describe('getIamPolicy', () => { + it('invokes getIamPolicy without error', async () => { + const client = + new gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient( + { + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + } + ); + client.initialize(); + const request = generateSampleMessage( + new IamProtos.google.iam.v1.GetIamPolicyRequest() + ); + request.resource = ''; + const expectedHeaderRequestParams = 'resource='; + const expectedOptions = { + otherArgs: { + headers: { + 'x-goog-request-params': expectedHeaderRequestParams, + }, + }, + }; + const expectedResponse = generateSampleMessage( + new IamProtos.google.iam.v1.Policy() + ); + client.iamClient.getIamPolicy = stubSimpleCall(expectedResponse); + const response = await client.getIamPolicy(request, expectedOptions); + assert.deepStrictEqual(response, [expectedResponse]); + assert( + (client.iamClient.getIamPolicy as SinonStub) + .getCall(0) + .calledWith(request, expectedOptions, undefined) + ); + }); + it('invokes getIamPolicy without error using callback', async () => { + const client = + new gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient( + { + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + } + ); + client.initialize(); + const request = generateSampleMessage( + new IamProtos.google.iam.v1.GetIamPolicyRequest() + ); + request.resource = ''; + const expectedHeaderRequestParams = 'resource='; + const expectedOptions = { + otherArgs: { + headers: { + 'x-goog-request-params': expectedHeaderRequestParams, + }, + }, + }; + const expectedResponse = generateSampleMessage( + new IamProtos.google.iam.v1.Policy() + ); + client.iamClient.getIamPolicy = sinon + .stub() + .callsArgWith(2, null, expectedResponse); + const promise = new Promise((resolve, reject) => { + client.getIamPolicy( + request, + expectedOptions, + ( + err?: Error | null, + result?: IamProtos.google.iam.v1.Policy | null + ) => { + if (err) { + reject(err); + } else { + resolve(result); + } + } + ); + }); + const response = await promise; + assert.deepStrictEqual(response, expectedResponse); + assert((client.iamClient.getIamPolicy as SinonStub).getCall(0)); + }); + it('invokes getIamPolicy with error', async () => { + const client = + new gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient( + { + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + } + ); + client.initialize(); + const request = generateSampleMessage( + new IamProtos.google.iam.v1.GetIamPolicyRequest() + ); + request.resource = ''; + const expectedHeaderRequestParams = 'resource='; + const expectedOptions = { + otherArgs: { + headers: { + 'x-goog-request-params': expectedHeaderRequestParams, + }, + }, + }; + const expectedError = new Error('expected'); + client.iamClient.getIamPolicy = stubSimpleCall(undefined, expectedError); + await assert.rejects( + client.getIamPolicy(request, expectedOptions), + expectedError + ); + assert( + (client.iamClient.getIamPolicy as SinonStub) + .getCall(0) + .calledWith(request, expectedOptions, undefined) + ); + }); + }); + describe('setIamPolicy', () => { + it('invokes setIamPolicy without error', async () => { + const client = + new gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient( + { + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + } + ); + client.initialize(); + const request = generateSampleMessage( + new IamProtos.google.iam.v1.SetIamPolicyRequest() + ); + request.resource = ''; + const expectedHeaderRequestParams = 'resource='; + const expectedOptions = { + otherArgs: { + headers: { + 'x-goog-request-params': expectedHeaderRequestParams, + }, + }, + }; + const expectedResponse = generateSampleMessage( + new IamProtos.google.iam.v1.Policy() + ); + client.iamClient.setIamPolicy = stubSimpleCall(expectedResponse); + const response = await client.setIamPolicy(request, expectedOptions); + assert.deepStrictEqual(response, [expectedResponse]); + assert( + (client.iamClient.setIamPolicy as SinonStub) + .getCall(0) + .calledWith(request, expectedOptions, undefined) + ); + }); + it('invokes setIamPolicy without error using callback', async () => { + const client = + new gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient( + { + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + } + ); + client.initialize(); + const request = generateSampleMessage( + new IamProtos.google.iam.v1.SetIamPolicyRequest() + ); + request.resource = ''; + const expectedHeaderRequestParams = 'resource='; + const expectedOptions = { + otherArgs: { + headers: { + 'x-goog-request-params': expectedHeaderRequestParams, + }, + }, + }; + const expectedResponse = generateSampleMessage( + new IamProtos.google.iam.v1.Policy() + ); + client.iamClient.setIamPolicy = sinon + .stub() + .callsArgWith(2, null, expectedResponse); + const promise = new Promise((resolve, reject) => { + client.setIamPolicy( + request, + expectedOptions, + ( + err?: Error | null, + result?: IamProtos.google.iam.v1.Policy | null + ) => { + if (err) { + reject(err); + } else { + resolve(result); + } + } + ); + }); + const response = await promise; + assert.deepStrictEqual(response, expectedResponse); + assert((client.iamClient.setIamPolicy as SinonStub).getCall(0)); + }); + it('invokes setIamPolicy with error', async () => { + const client = + new gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient( + { + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + } + ); + client.initialize(); + const request = generateSampleMessage( + new IamProtos.google.iam.v1.SetIamPolicyRequest() + ); + request.resource = ''; + const expectedHeaderRequestParams = 'resource='; + const expectedOptions = { + otherArgs: { + headers: { + 'x-goog-request-params': expectedHeaderRequestParams, + }, + }, + }; + const expectedError = new Error('expected'); + client.iamClient.setIamPolicy = stubSimpleCall(undefined, expectedError); + await assert.rejects( + client.setIamPolicy(request, expectedOptions), + expectedError + ); + assert( + (client.iamClient.setIamPolicy as SinonStub) + .getCall(0) + .calledWith(request, expectedOptions, undefined) + ); + }); + }); + describe('testIamPermissions', () => { + it('invokes testIamPermissions without error', async () => { + const client = + new gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient( + { + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + } + ); + client.initialize(); + const request = generateSampleMessage( + new IamProtos.google.iam.v1.TestIamPermissionsRequest() + ); + request.resource = ''; + const expectedHeaderRequestParams = 'resource='; + const expectedOptions = { + otherArgs: { + headers: { + 'x-goog-request-params': expectedHeaderRequestParams, + }, + }, + }; + const expectedResponse = generateSampleMessage( + new IamProtos.google.iam.v1.TestIamPermissionsResponse() + ); + client.iamClient.testIamPermissions = stubSimpleCall(expectedResponse); + const response = await client.testIamPermissions( + request, + expectedOptions + ); + assert.deepStrictEqual(response, [expectedResponse]); + assert( + (client.iamClient.testIamPermissions as SinonStub) + .getCall(0) + .calledWith(request, expectedOptions, undefined) + ); + }); + it('invokes testIamPermissions without error using callback', async () => { + const client = + new gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient( + { + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + } + ); + client.initialize(); + const request = generateSampleMessage( + new IamProtos.google.iam.v1.TestIamPermissionsRequest() + ); + request.resource = ''; + const expectedHeaderRequestParams = 'resource='; + const expectedOptions = { + otherArgs: { + headers: { + 'x-goog-request-params': expectedHeaderRequestParams, + }, + }, + }; + const expectedResponse = generateSampleMessage( + new IamProtos.google.iam.v1.TestIamPermissionsResponse() + ); + client.iamClient.testIamPermissions = sinon + .stub() + .callsArgWith(2, null, expectedResponse); + const promise = new Promise((resolve, reject) => { + client.testIamPermissions( + request, + expectedOptions, + ( + err?: Error | null, + result?: IamProtos.google.iam.v1.TestIamPermissionsResponse | null + ) => { + if (err) { + reject(err); + } else { + resolve(result); + } + } + ); + }); + const response = await promise; + assert.deepStrictEqual(response, expectedResponse); + assert((client.iamClient.testIamPermissions as SinonStub).getCall(0)); + }); + it('invokes testIamPermissions with error', async () => { + const client = + new gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient( + { + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + } + ); + client.initialize(); + const request = generateSampleMessage( + new IamProtos.google.iam.v1.TestIamPermissionsRequest() + ); + request.resource = ''; + const expectedHeaderRequestParams = 'resource='; + const expectedOptions = { + otherArgs: { + headers: { + 'x-goog-request-params': expectedHeaderRequestParams, + }, + }, + }; + const expectedError = new Error('expected'); + client.iamClient.testIamPermissions = stubSimpleCall( + undefined, + expectedError + ); + await assert.rejects( + client.testIamPermissions(request, expectedOptions), + expectedError + ); + assert( + (client.iamClient.testIamPermissions as SinonStub) + .getCall(0) + .calledWith(request, expectedOptions, undefined) + ); + }); + }); + describe('getLocation', () => { + it('invokes getLocation without error', async () => { + const client = + new gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient( + { + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + } + ); + client.initialize(); + const request = generateSampleMessage( + new LocationProtos.google.cloud.location.GetLocationRequest() + ); + request.name = ''; + const expectedHeaderRequestParams = 'name='; + const expectedOptions = { + otherArgs: { + headers: { + 'x-goog-request-params': expectedHeaderRequestParams, + }, + }, + }; + const expectedResponse = generateSampleMessage( + new LocationProtos.google.cloud.location.Location() + ); + client.locationsClient.getLocation = stubSimpleCall(expectedResponse); + const response = await client.getLocation(request, expectedOptions); + assert.deepStrictEqual(response, [expectedResponse]); + assert( + (client.locationsClient.getLocation as SinonStub) + .getCall(0) + .calledWith(request, expectedOptions, undefined) + ); + }); + it('invokes getLocation without error using callback', async () => { + const client = + new gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient( + { + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + } + ); + client.initialize(); + const request = generateSampleMessage( + new LocationProtos.google.cloud.location.GetLocationRequest() + ); + request.name = ''; + const expectedHeaderRequestParams = 'name='; + const expectedOptions = { + otherArgs: { + headers: { + 'x-goog-request-params': expectedHeaderRequestParams, + }, + }, + }; + const expectedResponse = generateSampleMessage( + new LocationProtos.google.cloud.location.Location() + ); + client.locationsClient.getLocation = sinon + .stub() + .callsArgWith(2, null, expectedResponse); + const promise = new Promise((resolve, reject) => { + client.getLocation( + request, + expectedOptions, + ( + err?: Error | null, + result?: LocationProtos.google.cloud.location.ILocation | null + ) => { + if (err) { + reject(err); + } else { + resolve(result); + } + } + ); + }); + const response = await promise; + assert.deepStrictEqual(response, expectedResponse); + assert((client.locationsClient.getLocation as SinonStub).getCall(0)); + }); + it('invokes getLocation with error', async () => { + const client = + new gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient( + { + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + } + ); + client.initialize(); + const request = generateSampleMessage( + new LocationProtos.google.cloud.location.GetLocationRequest() + ); + request.name = ''; + const expectedHeaderRequestParams = 'name='; + const expectedOptions = { + otherArgs: { + headers: { + 'x-goog-request-params': expectedHeaderRequestParams, + }, + }, + }; + const expectedError = new Error('expected'); + client.locationsClient.getLocation = stubSimpleCall( + undefined, + expectedError + ); + await assert.rejects( + client.getLocation(request, expectedOptions), + expectedError + ); + assert( + (client.locationsClient.getLocation as SinonStub) + .getCall(0) + .calledWith(request, expectedOptions, undefined) + ); + }); + }); + describe('listLocationsAsync', () => { + it('uses async iteration with listLocations without error', async () => { + const client = + new gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient( + { + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + } + ); + client.initialize(); + const request = generateSampleMessage( + new LocationProtos.google.cloud.location.ListLocationsRequest() + ); + request.name = ''; + const expectedHeaderRequestParams = 'name='; + const expectedResponse = [ + generateSampleMessage( + new LocationProtos.google.cloud.location.Location() + ), + generateSampleMessage( + new LocationProtos.google.cloud.location.Location() + ), + generateSampleMessage( + new LocationProtos.google.cloud.location.Location() + ), + ]; + client.locationsClient.descriptors.page.listLocations.asyncIterate = + stubAsyncIterationCall(expectedResponse); + const responses: LocationProtos.google.cloud.location.ILocation[] = []; + const iterable = client.listLocationsAsync(request); + for await (const resource of iterable) { + responses.push(resource!); + } + assert.deepStrictEqual(responses, expectedResponse); + assert.deepStrictEqual( + ( + client.locationsClient.descriptors.page.listLocations + .asyncIterate as SinonStub + ).getCall(0).args[1], + request + ); + assert.strictEqual( + ( + client.locationsClient.descriptors.page.listLocations + .asyncIterate as SinonStub + ).getCall(0).args[2].otherArgs.headers['x-goog-request-params'], + expectedHeaderRequestParams + ); + }); + it('uses async iteration with listLocations with error', async () => { + const client = + new gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient( + { + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + } + ); + client.initialize(); + const request = generateSampleMessage( + new LocationProtos.google.cloud.location.ListLocationsRequest() + ); + request.name = ''; + const expectedHeaderRequestParams = 'name='; + const expectedError = new Error('expected'); + client.locationsClient.descriptors.page.listLocations.asyncIterate = + stubAsyncIterationCall(undefined, expectedError); + const iterable = client.listLocationsAsync(request); + await assert.rejects(async () => { + const responses: LocationProtos.google.cloud.location.ILocation[] = []; + for await (const resource of iterable) { + responses.push(resource!); + } + }); + assert.deepStrictEqual( + ( + client.locationsClient.descriptors.page.listLocations + .asyncIterate as SinonStub + ).getCall(0).args[1], + request + ); + assert.strictEqual( + ( + client.locationsClient.descriptors.page.listLocations + .asyncIterate as SinonStub + ).getCall(0).args[2].otherArgs.headers['x-goog-request-params'], + expectedHeaderRequestParams + ); + }); + }); + describe('getOperation', () => { + it('invokes getOperation without error', async () => { + const client = + new gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient( + { + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + } + ); + client.initialize(); + const request = generateSampleMessage( + new operationsProtos.google.longrunning.GetOperationRequest() + ); + const expectedResponse = generateSampleMessage( + new operationsProtos.google.longrunning.Operation() + ); + client.operationsClient.getOperation = stubSimpleCall(expectedResponse); + const response = await client.getOperation(request); + assert.deepStrictEqual(response, [expectedResponse]); + assert( + (client.operationsClient.getOperation as SinonStub) + .getCall(0) + .calledWith(request) + ); + }); + it('invokes getOperation without error using callback', async () => { + const client = + new gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient( + { + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + } + ); + const request = generateSampleMessage( + new operationsProtos.google.longrunning.GetOperationRequest() + ); + const expectedResponse = generateSampleMessage( + new operationsProtos.google.longrunning.Operation() + ); + client.operationsClient.getOperation = sinon + .stub() + .callsArgWith(2, null, expectedResponse); + const promise = new Promise((resolve, reject) => { + client.operationsClient.getOperation( + request, + undefined, + ( + err?: Error | null, + result?: operationsProtos.google.longrunning.Operation | null + ) => { + if (err) { + reject(err); + } else { + resolve(result); + } + } + ); + }); + const response = await promise; + assert.deepStrictEqual(response, expectedResponse); + assert((client.operationsClient.getOperation as SinonStub).getCall(0)); + }); + it('invokes getOperation with error', async () => { + const client = + new gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient( + { + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + } + ); + const request = generateSampleMessage( + new operationsProtos.google.longrunning.GetOperationRequest() + ); + const expectedError = new Error('expected'); + client.operationsClient.getOperation = stubSimpleCall( + undefined, + expectedError + ); + await assert.rejects(async () => { + await client.getOperation(request); + }, expectedError); + assert( + (client.operationsClient.getOperation as SinonStub) + .getCall(0) + .calledWith(request) + ); + }); + }); + describe('cancelOperation', () => { + it('invokes cancelOperation without error', async () => { + const client = + new gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient( + { + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + } + ); + client.initialize(); + const request = generateSampleMessage( + new operationsProtos.google.longrunning.CancelOperationRequest() + ); + const expectedResponse = generateSampleMessage( + new protos.google.protobuf.Empty() + ); + client.operationsClient.cancelOperation = + stubSimpleCall(expectedResponse); + const response = await client.cancelOperation(request); + assert.deepStrictEqual(response, [expectedResponse]); + assert( + (client.operationsClient.cancelOperation as SinonStub) + .getCall(0) + .calledWith(request) + ); + }); + it('invokes cancelOperation without error using callback', async () => { + const client = + new gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient( + { + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + } + ); + const request = generateSampleMessage( + new operationsProtos.google.longrunning.CancelOperationRequest() + ); + const expectedResponse = generateSampleMessage( + new protos.google.protobuf.Empty() + ); + client.operationsClient.cancelOperation = sinon + .stub() + .callsArgWith(2, null, expectedResponse); + const promise = new Promise((resolve, reject) => { + client.operationsClient.cancelOperation( + request, + undefined, + ( + err?: Error | null, + result?: protos.google.protobuf.Empty | null + ) => { + if (err) { + reject(err); + } else { + resolve(result); + } + } + ); + }); + const response = await promise; + assert.deepStrictEqual(response, expectedResponse); + assert((client.operationsClient.cancelOperation as SinonStub).getCall(0)); + }); + it('invokes cancelOperation with error', async () => { + const client = + new gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient( + { + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + } + ); + const request = generateSampleMessage( + new operationsProtos.google.longrunning.CancelOperationRequest() + ); + const expectedError = new Error('expected'); + client.operationsClient.cancelOperation = stubSimpleCall( + undefined, + expectedError + ); + await assert.rejects(async () => { + await client.cancelOperation(request); + }, expectedError); + assert( + (client.operationsClient.cancelOperation as SinonStub) + .getCall(0) + .calledWith(request) + ); + }); + }); + describe('deleteOperation', () => { + it('invokes deleteOperation without error', async () => { + const client = + new gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient( + { + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + } + ); + client.initialize(); + const request = generateSampleMessage( + new operationsProtos.google.longrunning.DeleteOperationRequest() + ); + const expectedResponse = generateSampleMessage( + new protos.google.protobuf.Empty() + ); + client.operationsClient.deleteOperation = + stubSimpleCall(expectedResponse); + const response = await client.deleteOperation(request); + assert.deepStrictEqual(response, [expectedResponse]); + assert( + (client.operationsClient.deleteOperation as SinonStub) + .getCall(0) + .calledWith(request) + ); + }); + it('invokes deleteOperation without error using callback', async () => { + const client = + new gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient( + { + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + } + ); + const request = generateSampleMessage( + new operationsProtos.google.longrunning.DeleteOperationRequest() + ); + const expectedResponse = generateSampleMessage( + new protos.google.protobuf.Empty() + ); + client.operationsClient.deleteOperation = sinon + .stub() + .callsArgWith(2, null, expectedResponse); + const promise = new Promise((resolve, reject) => { + client.operationsClient.deleteOperation( + request, + undefined, + ( + err?: Error | null, + result?: protos.google.protobuf.Empty | null + ) => { + if (err) { + reject(err); + } else { + resolve(result); + } + } + ); + }); + const response = await promise; + assert.deepStrictEqual(response, expectedResponse); + assert((client.operationsClient.deleteOperation as SinonStub).getCall(0)); + }); + it('invokes deleteOperation with error', async () => { + const client = + new gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient( + { + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + } + ); + const request = generateSampleMessage( + new operationsProtos.google.longrunning.DeleteOperationRequest() + ); + const expectedError = new Error('expected'); + client.operationsClient.deleteOperation = stubSimpleCall( + undefined, + expectedError + ); + await assert.rejects(async () => { + await client.deleteOperation(request); + }, expectedError); + assert( + (client.operationsClient.deleteOperation as SinonStub) + .getCall(0) + .calledWith(request) + ); + }); + }); + describe('listOperationsAsync', () => { + it('uses async iteration with listOperations without error', async () => { + const client = + new gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient( + { + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + } + ); + const request = generateSampleMessage( + new operationsProtos.google.longrunning.ListOperationsRequest() + ); + const expectedResponse = [ + generateSampleMessage( + new operationsProtos.google.longrunning.ListOperationsResponse() + ), + generateSampleMessage( + new operationsProtos.google.longrunning.ListOperationsResponse() + ), + generateSampleMessage( + new operationsProtos.google.longrunning.ListOperationsResponse() + ), + ]; + client.operationsClient.descriptor.listOperations.asyncIterate = + stubAsyncIterationCall(expectedResponse); + const responses: operationsProtos.google.longrunning.ListOperationsResponse[] = + []; + const iterable = client.operationsClient.listOperationsAsync(request); + for await (const resource of iterable) { + responses.push(resource!); + } + assert.deepStrictEqual(responses, expectedResponse); + assert.deepStrictEqual( + ( + client.operationsClient.descriptor.listOperations + .asyncIterate as SinonStub + ).getCall(0).args[1], + request + ); + }); + it('uses async iteration with listOperations with error', async () => { + const client = + new gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient( + { + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + } + ); + client.initialize(); + const request = generateSampleMessage( + new operationsProtos.google.longrunning.ListOperationsRequest() + ); + const expectedError = new Error('expected'); + client.operationsClient.descriptor.listOperations.asyncIterate = + stubAsyncIterationCall(undefined, expectedError); + const iterable = client.operationsClient.listOperationsAsync(request); + await assert.rejects(async () => { + const responses: operationsProtos.google.longrunning.ListOperationsResponse[] = + []; + for await (const resource of iterable) { + responses.push(resource!); + } + }); + assert.deepStrictEqual( + ( + client.operationsClient.descriptor.listOperations + .asyncIterate as SinonStub + ).getCall(0).args[1], + request + ); + }); + }); describe('Path templates', () => { + describe('location', () => { + const fakePath = '/rendered/path/location'; + const expectedParameters = { + project: 'projectValue', + location: 'locationValue', + }; + const client = + new gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient( + { + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + } + ); + client.initialize(); + client.pathTemplates.locationPathTemplate.render = sinon + .stub() + .returns(fakePath); + client.pathTemplates.locationPathTemplate.match = sinon + .stub() + .returns(expectedParameters); + + it('locationPath', () => { + const result = client.locationPath('projectValue', 'locationValue'); + assert.strictEqual(result, fakePath); + assert( + (client.pathTemplates.locationPathTemplate.render as SinonStub) + .getCall(-1) + .calledWith(expectedParameters) + ); + }); + + it('matchProjectFromLocationName', () => { + const result = client.matchProjectFromLocationName(fakePath); + assert.strictEqual(result, 'projectValue'); + assert( + (client.pathTemplates.locationPathTemplate.match as SinonStub) + .getCall(-1) + .calledWith(fakePath) + ); + }); + + it('matchLocationFromLocationName', () => { + const result = client.matchLocationFromLocationName(fakePath); + assert.strictEqual(result, 'locationValue'); + assert( + (client.pathTemplates.locationPathTemplate.match as SinonStub) + .getCall(-1) + .calledWith(fakePath) + ); + }); + }); + describe('membership', () => { const fakePath = '/rendered/path/membership'; const expectedParameters = { @@ -1848,5 +2802,46 @@ describe('v1beta1.GkeHubMembershipServiceClient', () => { ); }); }); + + describe('project', () => { + const fakePath = '/rendered/path/project'; + const expectedParameters = { + project: 'projectValue', + }; + const client = + new gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient( + { + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + } + ); + client.initialize(); + client.pathTemplates.projectPathTemplate.render = sinon + .stub() + .returns(fakePath); + client.pathTemplates.projectPathTemplate.match = sinon + .stub() + .returns(expectedParameters); + + it('projectPath', () => { + const result = client.projectPath('projectValue'); + assert.strictEqual(result, fakePath); + assert( + (client.pathTemplates.projectPathTemplate.render as SinonStub) + .getCall(-1) + .calledWith(expectedParameters) + ); + }); + + it('matchProjectFromProjectName', () => { + const result = client.matchProjectFromProjectName(fakePath); + assert.strictEqual(result, 'projectValue'); + assert( + (client.pathTemplates.projectPathTemplate.match as SinonStub) + .getCall(-1) + .calledWith(fakePath) + ); + }); + }); }); }); From dd3df1211f2a1b78ef154a4af992de7b4d6789ef Mon Sep 17 00:00:00 2001 From: "release-please[bot]" <55107282+release-please[bot]@users.noreply.github.com> Date: Mon, 6 Jun 2022 11:58:50 -0400 Subject: [PATCH 72/92] chore(main): release 3.0.0 (#149) See https://github.com/googleapis/repo-automation-bots/blob/main/packages/owl-bot/README.md Co-authored-by: release-please[bot] <55107282+release-please[bot]@users.noreply.github.com> Co-authored-by: Owl Bot --- packages/google-cloud-gkehub/CHANGELOG.md | 16 ++++++++++++++++ packages/google-cloud-gkehub/package.json | 2 +- .../snippet_metadata.google.cloud.gkehub.v1.json | 2 +- ...pet_metadata.google.cloud.gkehub.v1alpha.json | 2 +- ...et_metadata.google.cloud.gkehub.v1alpha2.json | 2 +- ...ppet_metadata.google.cloud.gkehub.v1beta.json | 2 +- ...pet_metadata.google.cloud.gkehub.v1beta1.json | 2 +- .../google-cloud-gkehub/samples/package.json | 2 +- 8 files changed, 23 insertions(+), 7 deletions(-) diff --git a/packages/google-cloud-gkehub/CHANGELOG.md b/packages/google-cloud-gkehub/CHANGELOG.md index f1a1ed8f202..b1f115a6eaf 100644 --- a/packages/google-cloud-gkehub/CHANGELOG.md +++ b/packages/google-cloud-gkehub/CHANGELOG.md @@ -1,5 +1,21 @@ # Changelog +## [3.0.0](https://github.com/googleapis/nodejs-gke-hub/compare/v2.2.0...v3.0.0) (2022-06-03) + + +### ⚠ BREAKING CHANGES + +* update library to use Node 12 (#147) + +### Features + +* add EdgeCluster as a new membershipEndpoint type ([#150](https://github.com/googleapis/nodejs-gke-hub/issues/150)) ([b5b72e9](https://github.com/googleapis/nodejs-gke-hub/commit/b5b72e96152cb46948491cf875e30c7461e8d963)) + + +### Build System + +* update library to use Node 12 ([#147](https://github.com/googleapis/nodejs-gke-hub/issues/147)) ([e8dc2ab](https://github.com/googleapis/nodejs-gke-hub/commit/e8dc2ab795a2e5830d31bb856d91d1496eea8408)) + ## [2.2.0](https://github.com/googleapis/nodejs-gke-hub/compare/v2.1.0...v2.2.0) (2022-03-02) diff --git a/packages/google-cloud-gkehub/package.json b/packages/google-cloud-gkehub/package.json index f78718933e8..e64fe37ea9d 100644 --- a/packages/google-cloud-gkehub/package.json +++ b/packages/google-cloud-gkehub/package.json @@ -1,6 +1,6 @@ { "name": "@google-cloud/gke-hub", - "version": "2.2.0", + "version": "3.0.0", "description": "Gkehub client for Node.js", "repository": "googleapis/nodejs-gke-hub", "license": "Apache-2.0", diff --git a/packages/google-cloud-gkehub/samples/generated/v1/snippet_metadata.google.cloud.gkehub.v1.json b/packages/google-cloud-gkehub/samples/generated/v1/snippet_metadata.google.cloud.gkehub.v1.json index 9870cca7ad5..5f0da40652c 100644 --- a/packages/google-cloud-gkehub/samples/generated/v1/snippet_metadata.google.cloud.gkehub.v1.json +++ b/packages/google-cloud-gkehub/samples/generated/v1/snippet_metadata.google.cloud.gkehub.v1.json @@ -1,7 +1,7 @@ { "clientLibrary": { "name": "nodejs-gkehub", - "version": "2.2.0", + "version": "3.0.0", "language": "TYPESCRIPT", "apis": [ { diff --git a/packages/google-cloud-gkehub/samples/generated/v1alpha/snippet_metadata.google.cloud.gkehub.v1alpha.json b/packages/google-cloud-gkehub/samples/generated/v1alpha/snippet_metadata.google.cloud.gkehub.v1alpha.json index 9fa5c6ef33a..4675a70c999 100644 --- a/packages/google-cloud-gkehub/samples/generated/v1alpha/snippet_metadata.google.cloud.gkehub.v1alpha.json +++ b/packages/google-cloud-gkehub/samples/generated/v1alpha/snippet_metadata.google.cloud.gkehub.v1alpha.json @@ -1,7 +1,7 @@ { "clientLibrary": { "name": "nodejs-gkehub", - "version": "2.2.0", + "version": "3.0.0", "language": "TYPESCRIPT", "apis": [ { diff --git a/packages/google-cloud-gkehub/samples/generated/v1alpha2/snippet_metadata.google.cloud.gkehub.v1alpha2.json b/packages/google-cloud-gkehub/samples/generated/v1alpha2/snippet_metadata.google.cloud.gkehub.v1alpha2.json index b291f0999bc..c4b8152bcec 100644 --- a/packages/google-cloud-gkehub/samples/generated/v1alpha2/snippet_metadata.google.cloud.gkehub.v1alpha2.json +++ b/packages/google-cloud-gkehub/samples/generated/v1alpha2/snippet_metadata.google.cloud.gkehub.v1alpha2.json @@ -1,7 +1,7 @@ { "clientLibrary": { "name": "nodejs-gkehub", - "version": "2.2.0", + "version": "3.0.0", "language": "TYPESCRIPT", "apis": [ { diff --git a/packages/google-cloud-gkehub/samples/generated/v1beta/snippet_metadata.google.cloud.gkehub.v1beta.json b/packages/google-cloud-gkehub/samples/generated/v1beta/snippet_metadata.google.cloud.gkehub.v1beta.json index 7a25fcca005..fb93fb8c61c 100644 --- a/packages/google-cloud-gkehub/samples/generated/v1beta/snippet_metadata.google.cloud.gkehub.v1beta.json +++ b/packages/google-cloud-gkehub/samples/generated/v1beta/snippet_metadata.google.cloud.gkehub.v1beta.json @@ -1,7 +1,7 @@ { "clientLibrary": { "name": "nodejs-gkehub", - "version": "2.2.0", + "version": "3.0.0", "language": "TYPESCRIPT", "apis": [ { diff --git a/packages/google-cloud-gkehub/samples/generated/v1beta1/snippet_metadata.google.cloud.gkehub.v1beta1.json b/packages/google-cloud-gkehub/samples/generated/v1beta1/snippet_metadata.google.cloud.gkehub.v1beta1.json index 563c3f826cb..cfd2428cdfd 100644 --- a/packages/google-cloud-gkehub/samples/generated/v1beta1/snippet_metadata.google.cloud.gkehub.v1beta1.json +++ b/packages/google-cloud-gkehub/samples/generated/v1beta1/snippet_metadata.google.cloud.gkehub.v1beta1.json @@ -1,7 +1,7 @@ { "clientLibrary": { "name": "nodejs-gkehub", - "version": "2.2.0", + "version": "3.0.0", "language": "TYPESCRIPT", "apis": [ { diff --git a/packages/google-cloud-gkehub/samples/package.json b/packages/google-cloud-gkehub/samples/package.json index bb0b2d5f352..38c8e6d538b 100644 --- a/packages/google-cloud-gkehub/samples/package.json +++ b/packages/google-cloud-gkehub/samples/package.json @@ -13,7 +13,7 @@ "test": "c8 mocha --timeout 600000 test/*.js" }, "dependencies": { - "@google-cloud/gke-hub": "^2.2.0" + "@google-cloud/gke-hub": "^3.0.0" }, "devDependencies": { "c8": "^7.1.0", From 81b6e0a07664947a51a4d36818052c3e80aaa031 Mon Sep 17 00:00:00 2001 From: WhiteSource Renovate Date: Fri, 10 Jun 2022 17:00:22 +0200 Subject: [PATCH 73/92] chore(deps): update dependency jsdoc-fresh to v2 (#154) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit [![Mend Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com) This PR contains the following updates: | Package | Change | Age | Adoption | Passing | Confidence | |---|---|---|---|---|---| | [jsdoc-fresh](https://togithub.com/googleapis/jsdoc-fresh) | [`^1.0.2` -> `^2.0.0`](https://renovatebot.com/diffs/npm/jsdoc-fresh/1.1.1/2.0.0) | [![age](https://badges.renovateapi.com/packages/npm/jsdoc-fresh/2.0.0/age-slim)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://badges.renovateapi.com/packages/npm/jsdoc-fresh/2.0.0/adoption-slim)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://badges.renovateapi.com/packages/npm/jsdoc-fresh/2.0.0/compatibility-slim/1.1.1)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://badges.renovateapi.com/packages/npm/jsdoc-fresh/2.0.0/confidence-slim/1.1.1)](https://docs.renovatebot.com/merge-confidence/) | --- ### Release Notes
googleapis/jsdoc-fresh ### [`v2.0.0`](https://togithub.com/googleapis/jsdoc-fresh/blob/HEAD/CHANGELOG.md#​200-httpsgithubcomgoogleapisjsdoc-freshcomparev111v200-2022-05-18) [Compare Source](https://togithub.com/googleapis/jsdoc-fresh/compare/v1.1.1...v2.0.0) ##### ⚠ BREAKING CHANGES - update library to use Node 12 ([#​108](https://togithub.com/googleapis/jsdoc-fresh/issues/108)) ##### Build System - update library to use Node 12 ([#​108](https://togithub.com/googleapis/jsdoc-fresh/issues/108)) ([e61c223](https://togithub.com/googleapis/jsdoc-fresh/commit/e61c2238db8900e339e5fe7fb8aea09642290182)) ##### [1.1.1](https://www.github.com/googleapis/jsdoc-fresh/compare/v1.1.0...v1.1.1) (2021-08-11) ##### Bug Fixes - **build:** migrate to using main branch ([#​83](https://www.togithub.com/googleapis/jsdoc-fresh/issues/83)) ([9474adb](https://www.github.com/googleapis/jsdoc-fresh/commit/9474adbf0d559d319ff207397ba2be6b557999ac))
--- ### Configuration 📅 **Schedule**: Branch creation - "after 9am and before 3pm" (UTC), Automerge - At any time (no schedule defined). 🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied. ♻ **Rebasing**: Whenever PR is behind base branch, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about this update again. --- - [ ] If you want to rebase/retry this PR, click this checkbox. --- This PR has been generated by [Mend Renovate](https://www.mend.io/free-developer-tools/renovate/). View repository job log [here](https://app.renovatebot.com/dashboard#github/googleapis/nodejs-gke-hub). --- packages/google-cloud-gkehub/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/google-cloud-gkehub/package.json b/packages/google-cloud-gkehub/package.json index e64fe37ea9d..645958d5da7 100644 --- a/packages/google-cloud-gkehub/package.json +++ b/packages/google-cloud-gkehub/package.json @@ -48,7 +48,7 @@ "c8": "^7.3.5", "gts": "^3.1.0", "jsdoc": "^3.6.6", - "jsdoc-fresh": "^1.0.2", + "jsdoc-fresh": "^2.0.0", "jsdoc-region-tag": "^1.0.6", "linkinator": "^2.7.0", "mocha": "^9.2.2", From f3241f609d21b6d8ed748cc64e65ba2838f58016 Mon Sep 17 00:00:00 2001 From: WhiteSource Renovate Date: Fri, 10 Jun 2022 17:30:17 +0200 Subject: [PATCH 74/92] chore(deps): update dependency jsdoc-region-tag to v2 (#155) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit [![Mend Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com) This PR contains the following updates: | Package | Change | Age | Adoption | Passing | Confidence | |---|---|---|---|---|---| | [jsdoc-region-tag](https://togithub.com/googleapis/jsdoc-region-tag) | [`^1.0.6` -> `^2.0.0`](https://renovatebot.com/diffs/npm/jsdoc-region-tag/1.3.1/2.0.0) | [![age](https://badges.renovateapi.com/packages/npm/jsdoc-region-tag/2.0.0/age-slim)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://badges.renovateapi.com/packages/npm/jsdoc-region-tag/2.0.0/adoption-slim)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://badges.renovateapi.com/packages/npm/jsdoc-region-tag/2.0.0/compatibility-slim/1.3.1)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://badges.renovateapi.com/packages/npm/jsdoc-region-tag/2.0.0/confidence-slim/1.3.1)](https://docs.renovatebot.com/merge-confidence/) | --- ### Release Notes
googleapis/jsdoc-region-tag ### [`v2.0.0`](https://togithub.com/googleapis/jsdoc-region-tag/blob/HEAD/CHANGELOG.md#​200-httpsgithubcomgoogleapisjsdoc-region-tagcomparev131v200-2022-05-20) [Compare Source](https://togithub.com/googleapis/jsdoc-region-tag/compare/v1.3.1...v2.0.0) ##### ⚠ BREAKING CHANGES - update library to use Node 12 ([#​107](https://togithub.com/googleapis/jsdoc-region-tag/issues/107)) ##### Build System - update library to use Node 12 ([#​107](https://togithub.com/googleapis/jsdoc-region-tag/issues/107)) ([5b51796](https://togithub.com/googleapis/jsdoc-region-tag/commit/5b51796771984cf8b978990025f14faa03c19923)) ##### [1.3.1](https://www.github.com/googleapis/jsdoc-region-tag/compare/v1.3.0...v1.3.1) (2021-08-11) ##### Bug Fixes - **build:** migrate to using main branch ([#​79](https://www.togithub.com/googleapis/jsdoc-region-tag/issues/79)) ([5050615](https://www.github.com/googleapis/jsdoc-region-tag/commit/50506150b7758592df5e389c6a5c3d82b3b20881))
--- ### Configuration 📅 **Schedule**: Branch creation - "after 9am and before 3pm" (UTC), Automerge - At any time (no schedule defined). 🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied. ♻ **Rebasing**: Whenever PR is behind base branch, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about this update again. --- - [ ] If you want to rebase/retry this PR, click this checkbox. --- This PR has been generated by [Mend Renovate](https://www.mend.io/free-developer-tools/renovate/). View repository job log [here](https://app.renovatebot.com/dashboard#github/googleapis/nodejs-gke-hub). --- packages/google-cloud-gkehub/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/google-cloud-gkehub/package.json b/packages/google-cloud-gkehub/package.json index 645958d5da7..8010eceb335 100644 --- a/packages/google-cloud-gkehub/package.json +++ b/packages/google-cloud-gkehub/package.json @@ -49,7 +49,7 @@ "gts": "^3.1.0", "jsdoc": "^3.6.6", "jsdoc-fresh": "^2.0.0", - "jsdoc-region-tag": "^1.0.6", + "jsdoc-region-tag": "^2.0.0", "linkinator": "^2.7.0", "mocha": "^9.2.2", "null-loader": "^4.0.1", From 8b35bd39a5d72048e72e26f0b3b7665df6730bd7 Mon Sep 17 00:00:00 2001 From: "gcf-owl-bot[bot]" <78513119+gcf-owl-bot[bot]@users.noreply.github.com> Date: Wed, 15 Jun 2022 12:44:28 -0700 Subject: [PATCH 75/92] feat: add ClusterType field in MembershipEndpoint.OnPremCluster (#156) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * feat: add ClusterType field in MembershipEndpoint.OnPremCluster PiperOrigin-RevId: 455120505 Source-Link: https://github.com/googleapis/googleapis/commit/49e6a7ed565e4318817623413ca6b791d35085c8 Source-Link: https://github.com/googleapis/googleapis-gen/commit/dc2045f572e4bdf59d506c1fcf9663931d7c2543 Copy-Tag: eyJwIjoiLmdpdGh1Yi8uT3dsQm90LnlhbWwiLCJoIjoiZGMyMDQ1ZjU3MmU0YmRmNTlkNTA2YzFmY2Y5NjYzOTMxZDdjMjU0MyJ9 * 🦉 Updates from OwlBot post-processor See https://github.com/googleapis/repo-automation-bots/blob/main/packages/owl-bot/README.md Co-authored-by: Owl Bot --- .../cloud/gkehub/v1beta1/membership.proto | 21 ++++++ .../google-cloud-gkehub/protos/protos.d.ts | 18 +++++ packages/google-cloud-gkehub/protos/protos.js | 70 +++++++++++++++++++ .../google-cloud-gkehub/protos/protos.json | 18 +++++ 4 files changed, 127 insertions(+) diff --git a/packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1beta1/membership.proto b/packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1beta1/membership.proto index 6fa0360c0d7..a8567263c2a 100644 --- a/packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1beta1/membership.proto +++ b/packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1beta1/membership.proto @@ -359,6 +359,24 @@ message GkeCluster { // OnPremCluster contains information specific to GKE On-Prem clusters. message OnPremCluster { + // ClusterType describes on prem cluster's type. + enum ClusterType { + // The ClusterType is not set. + CLUSTERTYPE_UNSPECIFIED = 0; + + // The ClusterType is bootstrap cluster. + BOOTSTRAP = 1; + + // The ClusterType is baremetal hybrid cluster. + HYBRID = 2; + + // The ClusterType is baremetal standalone cluster. + STANDALONE = 3; + + // The ClusterType is user cluster. + USER = 4; + } + // Immutable. Self-link of the GCP resource for the GKE On-Prem cluster. For example: // // //gkeonprem.googleapis.com/projects/my-project/locations/us-west1-a/vmwareClusters/my-cluster @@ -372,6 +390,9 @@ message OnPremCluster { // Immutable. Whether the cluster is an admin cluster. bool admin_cluster = 3 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. The on prem cluster's type. + ClusterType cluster_type = 4 [(google.api.field_behavior) = IMMUTABLE]; } // MultiCloudCluster contains information specific to GKE Multi-Cloud clusters. diff --git a/packages/google-cloud-gkehub/protos/protos.d.ts b/packages/google-cloud-gkehub/protos/protos.d.ts index 016395d017b..c79d176b67f 100644 --- a/packages/google-cloud-gkehub/protos/protos.d.ts +++ b/packages/google-cloud-gkehub/protos/protos.d.ts @@ -23035,6 +23035,9 @@ export namespace google { /** OnPremCluster adminCluster */ adminCluster?: (boolean|null); + + /** OnPremCluster clusterType */ + clusterType?: (google.cloud.gkehub.v1beta1.OnPremCluster.ClusterType|keyof typeof google.cloud.gkehub.v1beta1.OnPremCluster.ClusterType|null); } /** Represents an OnPremCluster. */ @@ -23055,6 +23058,9 @@ export namespace google { /** OnPremCluster adminCluster. */ public adminCluster: boolean; + /** OnPremCluster clusterType. */ + public clusterType: (google.cloud.gkehub.v1beta1.OnPremCluster.ClusterType|keyof typeof google.cloud.gkehub.v1beta1.OnPremCluster.ClusterType); + /** * Creates a new OnPremCluster instance using the specified properties. * @param [properties] Properties to set @@ -23126,6 +23132,18 @@ export namespace google { public toJSON(): { [k: string]: any }; } + namespace OnPremCluster { + + /** ClusterType enum. */ + enum ClusterType { + CLUSTERTYPE_UNSPECIFIED = 0, + BOOTSTRAP = 1, + HYBRID = 2, + STANDALONE = 3, + USER = 4 + } + } + /** Properties of a MultiCloudCluster. */ interface IMultiCloudCluster { diff --git a/packages/google-cloud-gkehub/protos/protos.js b/packages/google-cloud-gkehub/protos/protos.js index 5ee08fa35d6..a427417c018 100644 --- a/packages/google-cloud-gkehub/protos/protos.js +++ b/packages/google-cloud-gkehub/protos/protos.js @@ -57645,6 +57645,7 @@ * @property {string|null} [resourceLink] OnPremCluster resourceLink * @property {boolean|null} [clusterMissing] OnPremCluster clusterMissing * @property {boolean|null} [adminCluster] OnPremCluster adminCluster + * @property {google.cloud.gkehub.v1beta1.OnPremCluster.ClusterType|null} [clusterType] OnPremCluster clusterType */ /** @@ -57686,6 +57687,14 @@ */ OnPremCluster.prototype.adminCluster = false; + /** + * OnPremCluster clusterType. + * @member {google.cloud.gkehub.v1beta1.OnPremCluster.ClusterType} clusterType + * @memberof google.cloud.gkehub.v1beta1.OnPremCluster + * @instance + */ + OnPremCluster.prototype.clusterType = 0; + /** * Creates a new OnPremCluster instance using the specified properties. * @function create @@ -57716,6 +57725,8 @@ writer.uint32(/* id 2, wireType 0 =*/16).bool(message.clusterMissing); if (message.adminCluster != null && Object.hasOwnProperty.call(message, "adminCluster")) writer.uint32(/* id 3, wireType 0 =*/24).bool(message.adminCluster); + if (message.clusterType != null && Object.hasOwnProperty.call(message, "clusterType")) + writer.uint32(/* id 4, wireType 0 =*/32).int32(message.clusterType); return writer; }; @@ -57759,6 +57770,9 @@ case 3: message.adminCluster = reader.bool(); break; + case 4: + message.clusterType = reader.int32(); + break; default: reader.skipType(tag & 7); break; @@ -57803,6 +57817,17 @@ if (message.adminCluster != null && message.hasOwnProperty("adminCluster")) if (typeof message.adminCluster !== "boolean") return "adminCluster: boolean expected"; + if (message.clusterType != null && message.hasOwnProperty("clusterType")) + switch (message.clusterType) { + default: + return "clusterType: enum value expected"; + case 0: + case 1: + case 2: + case 3: + case 4: + break; + } return null; }; @@ -57824,6 +57849,28 @@ message.clusterMissing = Boolean(object.clusterMissing); if (object.adminCluster != null) message.adminCluster = Boolean(object.adminCluster); + switch (object.clusterType) { + case "CLUSTERTYPE_UNSPECIFIED": + case 0: + message.clusterType = 0; + break; + case "BOOTSTRAP": + case 1: + message.clusterType = 1; + break; + case "HYBRID": + case 2: + message.clusterType = 2; + break; + case "STANDALONE": + case 3: + message.clusterType = 3; + break; + case "USER": + case 4: + message.clusterType = 4; + break; + } return message; }; @@ -57844,6 +57891,7 @@ object.resourceLink = ""; object.clusterMissing = false; object.adminCluster = false; + object.clusterType = options.enums === String ? "CLUSTERTYPE_UNSPECIFIED" : 0; } if (message.resourceLink != null && message.hasOwnProperty("resourceLink")) object.resourceLink = message.resourceLink; @@ -57851,6 +57899,8 @@ object.clusterMissing = message.clusterMissing; if (message.adminCluster != null && message.hasOwnProperty("adminCluster")) object.adminCluster = message.adminCluster; + if (message.clusterType != null && message.hasOwnProperty("clusterType")) + object.clusterType = options.enums === String ? $root.google.cloud.gkehub.v1beta1.OnPremCluster.ClusterType[message.clusterType] : message.clusterType; return object; }; @@ -57865,6 +57915,26 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * ClusterType enum. + * @name google.cloud.gkehub.v1beta1.OnPremCluster.ClusterType + * @enum {number} + * @property {number} CLUSTERTYPE_UNSPECIFIED=0 CLUSTERTYPE_UNSPECIFIED value + * @property {number} BOOTSTRAP=1 BOOTSTRAP value + * @property {number} HYBRID=2 HYBRID value + * @property {number} STANDALONE=3 STANDALONE value + * @property {number} USER=4 USER value + */ + OnPremCluster.ClusterType = (function() { + var valuesById = {}, values = Object.create(valuesById); + values[valuesById[0] = "CLUSTERTYPE_UNSPECIFIED"] = 0; + values[valuesById[1] = "BOOTSTRAP"] = 1; + values[valuesById[2] = "HYBRID"] = 2; + values[valuesById[3] = "STANDALONE"] = 3; + values[valuesById[4] = "USER"] = 4; + return values; + })(); + return OnPremCluster; })(); diff --git a/packages/google-cloud-gkehub/protos/protos.json b/packages/google-cloud-gkehub/protos/protos.json index 7f2b95e96f7..a63bd1cee24 100644 --- a/packages/google-cloud-gkehub/protos/protos.json +++ b/packages/google-cloud-gkehub/protos/protos.json @@ -6233,6 +6233,24 @@ "options": { "(google.api.field_behavior)": "IMMUTABLE" } + }, + "clusterType": { + "type": "ClusterType", + "id": 4, + "options": { + "(google.api.field_behavior)": "IMMUTABLE" + } + } + }, + "nested": { + "ClusterType": { + "values": { + "CLUSTERTYPE_UNSPECIFIED": 0, + "BOOTSTRAP": 1, + "HYBRID": 2, + "STANDALONE": 3, + "USER": 4 + } } } }, From 1d355688a9a38809cfc7c41717d2ffa308146cce Mon Sep 17 00:00:00 2001 From: "release-please[bot]" <55107282+release-please[bot]@users.noreply.github.com> Date: Wed, 15 Jun 2022 13:31:55 -0700 Subject: [PATCH 76/92] chore(main): release 3.1.0 (#157) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * chore(main): release 3.1.0 * 🦉 Updates from OwlBot post-processor See https://github.com/googleapis/repo-automation-bots/blob/main/packages/owl-bot/README.md Co-authored-by: release-please[bot] <55107282+release-please[bot]@users.noreply.github.com> Co-authored-by: Owl Bot --- packages/google-cloud-gkehub/CHANGELOG.md | 7 +++++++ packages/google-cloud-gkehub/package.json | 2 +- .../v1/snippet_metadata.google.cloud.gkehub.v1.json | 2 +- .../snippet_metadata.google.cloud.gkehub.v1alpha.json | 2 +- .../snippet_metadata.google.cloud.gkehub.v1alpha2.json | 2 +- .../snippet_metadata.google.cloud.gkehub.v1beta.json | 2 +- .../snippet_metadata.google.cloud.gkehub.v1beta1.json | 2 +- packages/google-cloud-gkehub/samples/package.json | 2 +- 8 files changed, 14 insertions(+), 7 deletions(-) diff --git a/packages/google-cloud-gkehub/CHANGELOG.md b/packages/google-cloud-gkehub/CHANGELOG.md index b1f115a6eaf..e65af5d9970 100644 --- a/packages/google-cloud-gkehub/CHANGELOG.md +++ b/packages/google-cloud-gkehub/CHANGELOG.md @@ -1,5 +1,12 @@ # Changelog +## [3.1.0](https://github.com/googleapis/nodejs-gke-hub/compare/v3.0.0...v3.1.0) (2022-06-15) + + +### Features + +* add ClusterType field in MembershipEndpoint.OnPremCluster ([#156](https://github.com/googleapis/nodejs-gke-hub/issues/156)) ([ec72f19](https://github.com/googleapis/nodejs-gke-hub/commit/ec72f19c414dde851b05506ba3f7944772322d8c)) + ## [3.0.0](https://github.com/googleapis/nodejs-gke-hub/compare/v2.2.0...v3.0.0) (2022-06-03) diff --git a/packages/google-cloud-gkehub/package.json b/packages/google-cloud-gkehub/package.json index 8010eceb335..3bc9665981d 100644 --- a/packages/google-cloud-gkehub/package.json +++ b/packages/google-cloud-gkehub/package.json @@ -1,6 +1,6 @@ { "name": "@google-cloud/gke-hub", - "version": "3.0.0", + "version": "3.1.0", "description": "Gkehub client for Node.js", "repository": "googleapis/nodejs-gke-hub", "license": "Apache-2.0", diff --git a/packages/google-cloud-gkehub/samples/generated/v1/snippet_metadata.google.cloud.gkehub.v1.json b/packages/google-cloud-gkehub/samples/generated/v1/snippet_metadata.google.cloud.gkehub.v1.json index 5f0da40652c..02e4b202b95 100644 --- a/packages/google-cloud-gkehub/samples/generated/v1/snippet_metadata.google.cloud.gkehub.v1.json +++ b/packages/google-cloud-gkehub/samples/generated/v1/snippet_metadata.google.cloud.gkehub.v1.json @@ -1,7 +1,7 @@ { "clientLibrary": { "name": "nodejs-gkehub", - "version": "3.0.0", + "version": "3.1.0", "language": "TYPESCRIPT", "apis": [ { diff --git a/packages/google-cloud-gkehub/samples/generated/v1alpha/snippet_metadata.google.cloud.gkehub.v1alpha.json b/packages/google-cloud-gkehub/samples/generated/v1alpha/snippet_metadata.google.cloud.gkehub.v1alpha.json index 4675a70c999..273ea60a855 100644 --- a/packages/google-cloud-gkehub/samples/generated/v1alpha/snippet_metadata.google.cloud.gkehub.v1alpha.json +++ b/packages/google-cloud-gkehub/samples/generated/v1alpha/snippet_metadata.google.cloud.gkehub.v1alpha.json @@ -1,7 +1,7 @@ { "clientLibrary": { "name": "nodejs-gkehub", - "version": "3.0.0", + "version": "3.1.0", "language": "TYPESCRIPT", "apis": [ { diff --git a/packages/google-cloud-gkehub/samples/generated/v1alpha2/snippet_metadata.google.cloud.gkehub.v1alpha2.json b/packages/google-cloud-gkehub/samples/generated/v1alpha2/snippet_metadata.google.cloud.gkehub.v1alpha2.json index c4b8152bcec..70de9c7ed68 100644 --- a/packages/google-cloud-gkehub/samples/generated/v1alpha2/snippet_metadata.google.cloud.gkehub.v1alpha2.json +++ b/packages/google-cloud-gkehub/samples/generated/v1alpha2/snippet_metadata.google.cloud.gkehub.v1alpha2.json @@ -1,7 +1,7 @@ { "clientLibrary": { "name": "nodejs-gkehub", - "version": "3.0.0", + "version": "3.1.0", "language": "TYPESCRIPT", "apis": [ { diff --git a/packages/google-cloud-gkehub/samples/generated/v1beta/snippet_metadata.google.cloud.gkehub.v1beta.json b/packages/google-cloud-gkehub/samples/generated/v1beta/snippet_metadata.google.cloud.gkehub.v1beta.json index fb93fb8c61c..0f9944b4ec8 100644 --- a/packages/google-cloud-gkehub/samples/generated/v1beta/snippet_metadata.google.cloud.gkehub.v1beta.json +++ b/packages/google-cloud-gkehub/samples/generated/v1beta/snippet_metadata.google.cloud.gkehub.v1beta.json @@ -1,7 +1,7 @@ { "clientLibrary": { "name": "nodejs-gkehub", - "version": "3.0.0", + "version": "3.1.0", "language": "TYPESCRIPT", "apis": [ { diff --git a/packages/google-cloud-gkehub/samples/generated/v1beta1/snippet_metadata.google.cloud.gkehub.v1beta1.json b/packages/google-cloud-gkehub/samples/generated/v1beta1/snippet_metadata.google.cloud.gkehub.v1beta1.json index cfd2428cdfd..0b71d36e234 100644 --- a/packages/google-cloud-gkehub/samples/generated/v1beta1/snippet_metadata.google.cloud.gkehub.v1beta1.json +++ b/packages/google-cloud-gkehub/samples/generated/v1beta1/snippet_metadata.google.cloud.gkehub.v1beta1.json @@ -1,7 +1,7 @@ { "clientLibrary": { "name": "nodejs-gkehub", - "version": "3.0.0", + "version": "3.1.0", "language": "TYPESCRIPT", "apis": [ { diff --git a/packages/google-cloud-gkehub/samples/package.json b/packages/google-cloud-gkehub/samples/package.json index 38c8e6d538b..3a9504ff4e9 100644 --- a/packages/google-cloud-gkehub/samples/package.json +++ b/packages/google-cloud-gkehub/samples/package.json @@ -13,7 +13,7 @@ "test": "c8 mocha --timeout 600000 test/*.js" }, "dependencies": { - "@google-cloud/gke-hub": "^3.0.0" + "@google-cloud/gke-hub": "^3.1.0" }, "devDependencies": { "c8": "^7.1.0", From 24b45cbf5e5f68925d082d4b38ee98f9b11fbc9b Mon Sep 17 00:00:00 2001 From: "gcf-owl-bot[bot]" <78513119+gcf-owl-bot[bot]@users.noreply.github.com> Date: Thu, 30 Jun 2022 14:54:27 -0700 Subject: [PATCH 77/92] feat: support regapic LRO (#158) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * feat: support regapic LRO Use gapic-generator-typescript v2.15.1. PiperOrigin-RevId: 456946341 Source-Link: https://github.com/googleapis/googleapis/commit/88fd18d9d3b872b3d06a3d9392879f50b5bf3ce5 Source-Link: https://github.com/googleapis/googleapis-gen/commit/accfa371f667439313335c64042b063c1c53102e Copy-Tag: eyJwIjoiLmdpdGh1Yi8uT3dsQm90LnlhbWwiLCJoIjoiYWNjZmEzNzFmNjY3NDM5MzEzMzM1YzY0MDQyYjA2M2MxYzUzMTAyZSJ9 * 🦉 Updates from OwlBot post-processor See https://github.com/googleapis/repo-automation-bots/blob/main/packages/owl-bot/README.md Co-authored-by: Owl Bot --- .../src/v1/gke_hub_client.ts | 84 ++++++++++++++++--- .../src/v1alpha/gke_hub_client.ts | 84 ++++++++++++++++--- .../src/v1alpha2/gke_hub_client.ts | 67 ++++++++++++--- .../src/v1beta/gke_hub_client.ts | 84 ++++++++++++++++--- .../gke_hub_membership_service_client.ts | 67 ++++++++++++--- 5 files changed, 326 insertions(+), 60 deletions(-) diff --git a/packages/google-cloud-gkehub/src/v1/gke_hub_client.ts b/packages/google-cloud-gkehub/src/v1/gke_hub_client.ts index 81aef1c61a3..e47bbaeb652 100644 --- a/packages/google-cloud-gkehub/src/v1/gke_hub_client.ts +++ b/packages/google-cloud-gkehub/src/v1/gke_hub_client.ts @@ -23,6 +23,7 @@ import { CallOptions, Descriptors, ClientOptions, + GrpcClientOptions, LROperation, PaginationCallback, GaxCall, @@ -85,7 +86,7 @@ export class GkeHubClient { * * @param {object} [options] - The configuration object. * The options accepted by the constructor are described in detail - * in [this document](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#creating-the-client-instance). + * in [this document](https://github.com/googleapis/gax-nodejs/blob/main/client-libraries.md#creating-the-client-instance). * The common options are: * @param {object} [options.credentials] - Credentials object. * @param {string} [options.credentials.client_email] @@ -108,11 +109,10 @@ export class GkeHubClient { * API remote host. * @param {gax.ClientConfig} [options.clientConfig] - Client configuration override. * Follows the structure of {@link gapicConfig}. - * @param {boolean} [options.fallback] - Use HTTP fallback mode. - * In fallback mode, a special browser-compatible transport implementation is used - * instead of gRPC transport. In browser context (if the `window` object is defined) - * the fallback mode is enabled automatically; set `options.fallback` to `false` - * if you need to override this behavior. + * @param {boolean | "rest"} [options.fallback] - Use HTTP fallback mode. + * Pass "rest" to use HTTP/1.1 REST API instead of gRPC. + * For more information, please check the + * {@link https://github.com/googleapis/gax-nodejs/blob/main/client-libraries.md#http11-rest-api-mode documentation}. */ constructor(opts?: ClientOptions) { // Ensure that options include all the required fields. @@ -210,16 +210,76 @@ export class GkeHubClient { }; const protoFilesRoot = this._gaxModule.protobuf.Root.fromJSON(jsonProtos); - // This API contains "long-running operations", which return a // an Operation object that allows for tracking of the operation, // rather than holding a request open. - + const lroOptions: GrpcClientOptions = { + auth: this.auth, + grpc: 'grpc' in this._gaxGrpc ? this._gaxGrpc.grpc : undefined, + }; + if (opts.fallback === 'rest') { + lroOptions.protoJson = protoFilesRoot; + lroOptions.httpRules = [ + { + selector: 'google.cloud.location.Locations.GetLocation', + get: '/v1/{name=projects/*/locations/*}', + }, + { + selector: 'google.cloud.location.Locations.ListLocations', + get: '/v1/{name=projects/*}/locations', + }, + { + selector: 'google.iam.v1.IAMPolicy.GetIamPolicy', + get: '/v1/{resource=projects/*/locations/*/memberships/*}:getIamPolicy', + additional_bindings: [ + { + get: '/v1/{resource=projects/*/locations/*/features/*}:getIamPolicy', + }, + ], + }, + { + selector: 'google.iam.v1.IAMPolicy.SetIamPolicy', + post: '/v1/{resource=projects/*/locations/*/memberships/*}:setIamPolicy', + body: '*', + additional_bindings: [ + { + post: '/v1/{resource=projects/*/locations/*/features/*}:setIamPolicy', + body: '*', + }, + ], + }, + { + selector: 'google.iam.v1.IAMPolicy.TestIamPermissions', + post: '/v1/{resource=projects/*/locations/*/memberships/*}:testIamPermissions', + body: '*', + additional_bindings: [ + { + post: '/v1/{resource=projects/*/locations/*/features/*}:testIamPermissions', + body: '*', + }, + ], + }, + { + selector: 'google.longrunning.Operations.CancelOperation', + post: '/v1/{name=projects/*/locations/*/operations/*}:cancel', + body: '*', + }, + { + selector: 'google.longrunning.Operations.DeleteOperation', + delete: '/v1/{name=projects/*/locations/*/operations/*}', + }, + { + selector: 'google.longrunning.Operations.GetOperation', + get: '/v1/{name=projects/*/locations/*/operations/*}', + }, + { + selector: 'google.longrunning.Operations.ListOperations', + get: '/v1/{name=projects/*/locations/*}/operations', + }, + ]; + } this.operationsClient = this._gaxModule - .lro({ - auth: this.auth, - grpc: 'grpc' in this._gaxGrpc ? this._gaxGrpc.grpc : undefined, - }) + .lro(lroOptions) .operationsClient(opts); const createMembershipResponse = protoFilesRoot.lookup( '.google.cloud.gkehub.v1.Membership' diff --git a/packages/google-cloud-gkehub/src/v1alpha/gke_hub_client.ts b/packages/google-cloud-gkehub/src/v1alpha/gke_hub_client.ts index 0b34368969c..b007d343eef 100644 --- a/packages/google-cloud-gkehub/src/v1alpha/gke_hub_client.ts +++ b/packages/google-cloud-gkehub/src/v1alpha/gke_hub_client.ts @@ -23,6 +23,7 @@ import { CallOptions, Descriptors, ClientOptions, + GrpcClientOptions, LROperation, PaginationCallback, GaxCall, @@ -85,7 +86,7 @@ export class GkeHubClient { * * @param {object} [options] - The configuration object. * The options accepted by the constructor are described in detail - * in [this document](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#creating-the-client-instance). + * in [this document](https://github.com/googleapis/gax-nodejs/blob/main/client-libraries.md#creating-the-client-instance). * The common options are: * @param {object} [options.credentials] - Credentials object. * @param {string} [options.credentials.client_email] @@ -108,11 +109,10 @@ export class GkeHubClient { * API remote host. * @param {gax.ClientConfig} [options.clientConfig] - Client configuration override. * Follows the structure of {@link gapicConfig}. - * @param {boolean} [options.fallback] - Use HTTP fallback mode. - * In fallback mode, a special browser-compatible transport implementation is used - * instead of gRPC transport. In browser context (if the `window` object is defined) - * the fallback mode is enabled automatically; set `options.fallback` to `false` - * if you need to override this behavior. + * @param {boolean | "rest"} [options.fallback] - Use HTTP fallback mode. + * Pass "rest" to use HTTP/1.1 REST API instead of gRPC. + * For more information, please check the + * {@link https://github.com/googleapis/gax-nodejs/blob/main/client-libraries.md#http11-rest-api-mode documentation}. */ constructor(opts?: ClientOptions) { // Ensure that options include all the required fields. @@ -196,16 +196,76 @@ export class GkeHubClient { }; const protoFilesRoot = this._gaxModule.protobuf.Root.fromJSON(jsonProtos); - // This API contains "long-running operations", which return a // an Operation object that allows for tracking of the operation, // rather than holding a request open. - + const lroOptions: GrpcClientOptions = { + auth: this.auth, + grpc: 'grpc' in this._gaxGrpc ? this._gaxGrpc.grpc : undefined, + }; + if (opts.fallback === 'rest') { + lroOptions.protoJson = protoFilesRoot; + lroOptions.httpRules = [ + { + selector: 'google.cloud.location.Locations.GetLocation', + get: '/v1alpha/{name=projects/*/locations/*}', + }, + { + selector: 'google.cloud.location.Locations.ListLocations', + get: '/v1alpha/{name=projects/*}/locations', + }, + { + selector: 'google.iam.v1.IAMPolicy.GetIamPolicy', + get: '/v1alpha/{resource=projects/*/locations/*/memberships/*}:getIamPolicy', + additional_bindings: [ + { + get: '/v1alpha/{resource=projects/*/locations/*/features/*}:getIamPolicy', + }, + ], + }, + { + selector: 'google.iam.v1.IAMPolicy.SetIamPolicy', + post: '/v1alpha/{resource=projects/*/locations/*/memberships/*}:setIamPolicy', + body: '*', + additional_bindings: [ + { + post: '/v1alpha/{resource=projects/*/locations/*/features/*}:setIamPolicy', + body: '*', + }, + ], + }, + { + selector: 'google.iam.v1.IAMPolicy.TestIamPermissions', + post: '/v1alpha/{resource=projects/*/locations/*/memberships/*}:testIamPermissions', + body: '*', + additional_bindings: [ + { + post: '/v1alpha/{resource=projects/*/locations/*/features/*}:testIamPermissions', + body: '*', + }, + ], + }, + { + selector: 'google.longrunning.Operations.CancelOperation', + post: '/v1alpha/{name=projects/*/locations/*/operations/*}:cancel', + body: '*', + }, + { + selector: 'google.longrunning.Operations.DeleteOperation', + delete: '/v1alpha/{name=projects/*/locations/*/operations/*}', + }, + { + selector: 'google.longrunning.Operations.GetOperation', + get: '/v1alpha/{name=projects/*/locations/*/operations/*}', + }, + { + selector: 'google.longrunning.Operations.ListOperations', + get: '/v1alpha/{name=projects/*/locations/*}/operations', + }, + ]; + } this.operationsClient = this._gaxModule - .lro({ - auth: this.auth, - grpc: 'grpc' in this._gaxGrpc ? this._gaxGrpc.grpc : undefined, - }) + .lro(lroOptions) .operationsClient(opts); const createFeatureResponse = protoFilesRoot.lookup( '.google.cloud.gkehub.v1alpha.Feature' diff --git a/packages/google-cloud-gkehub/src/v1alpha2/gke_hub_client.ts b/packages/google-cloud-gkehub/src/v1alpha2/gke_hub_client.ts index 8933f42211e..7ebb8d21823 100644 --- a/packages/google-cloud-gkehub/src/v1alpha2/gke_hub_client.ts +++ b/packages/google-cloud-gkehub/src/v1alpha2/gke_hub_client.ts @@ -23,6 +23,7 @@ import { CallOptions, Descriptors, ClientOptions, + GrpcClientOptions, LROperation, PaginationCallback, GaxCall, @@ -79,7 +80,7 @@ export class GkeHubClient { * * @param {object} [options] - The configuration object. * The options accepted by the constructor are described in detail - * in [this document](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#creating-the-client-instance). + * in [this document](https://github.com/googleapis/gax-nodejs/blob/main/client-libraries.md#creating-the-client-instance). * The common options are: * @param {object} [options.credentials] - Credentials object. * @param {string} [options.credentials.client_email] @@ -102,11 +103,10 @@ export class GkeHubClient { * API remote host. * @param {gax.ClientConfig} [options.clientConfig] - Client configuration override. * Follows the structure of {@link gapicConfig}. - * @param {boolean} [options.fallback] - Use HTTP fallback mode. - * In fallback mode, a special browser-compatible transport implementation is used - * instead of gRPC transport. In browser context (if the `window` object is defined) - * the fallback mode is enabled automatically; set `options.fallback` to `false` - * if you need to override this behavior. + * @param {boolean | "rest"} [options.fallback] - Use HTTP fallback mode. + * Pass "rest" to use HTTP/1.1 REST API instead of gRPC. + * For more information, please check the + * {@link https://github.com/googleapis/gax-nodejs/blob/main/client-libraries.md#http11-rest-api-mode documentation}. */ constructor(opts?: ClientOptions) { // Ensure that options include all the required fields. @@ -196,16 +196,59 @@ export class GkeHubClient { }; const protoFilesRoot = this._gaxModule.protobuf.Root.fromJSON(jsonProtos); - // This API contains "long-running operations", which return a // an Operation object that allows for tracking of the operation, // rather than holding a request open. - + const lroOptions: GrpcClientOptions = { + auth: this.auth, + grpc: 'grpc' in this._gaxGrpc ? this._gaxGrpc.grpc : undefined, + }; + if (opts.fallback === 'rest') { + lroOptions.protoJson = protoFilesRoot; + lroOptions.httpRules = [ + { + selector: 'google.cloud.location.Locations.GetLocation', + get: '/v1alpha2/{name=projects/*/locations/*}', + }, + { + selector: 'google.cloud.location.Locations.ListLocations', + get: '/v1alpha2/{name=projects/*}/locations', + }, + { + selector: 'google.iam.v1.IAMPolicy.GetIamPolicy', + get: '/v1alpha2/{resource=projects/*/locations/*/memberships/*}:getIamPolicy', + }, + { + selector: 'google.iam.v1.IAMPolicy.SetIamPolicy', + post: '/v1alpha2/{resource=projects/*/locations/*/memberships/*}:setIamPolicy', + body: '*', + }, + { + selector: 'google.iam.v1.IAMPolicy.TestIamPermissions', + post: '/v1alpha2/{resource=projects/*/locations/*/memberships/*}:testIamPermissions', + body: '*', + }, + { + selector: 'google.longrunning.Operations.CancelOperation', + post: '/v1alpha2/{name=projects/*/locations/*/operations/*}:cancel', + body: '*', + }, + { + selector: 'google.longrunning.Operations.DeleteOperation', + delete: '/v1alpha2/{name=projects/*/locations/*/operations/*}', + }, + { + selector: 'google.longrunning.Operations.GetOperation', + get: '/v1alpha2/{name=projects/*/locations/*/operations/*}', + }, + { + selector: 'google.longrunning.Operations.ListOperations', + get: '/v1alpha2/{name=projects/*/locations/*}/operations', + }, + ]; + } this.operationsClient = this._gaxModule - .lro({ - auth: this.auth, - grpc: 'grpc' in this._gaxGrpc ? this._gaxGrpc.grpc : undefined, - }) + .lro(lroOptions) .operationsClient(opts); const createMembershipResponse = protoFilesRoot.lookup( '.google.cloud.gkehub.v1alpha2.Membership' diff --git a/packages/google-cloud-gkehub/src/v1beta/gke_hub_client.ts b/packages/google-cloud-gkehub/src/v1beta/gke_hub_client.ts index a8a5e941200..814aca54bbd 100644 --- a/packages/google-cloud-gkehub/src/v1beta/gke_hub_client.ts +++ b/packages/google-cloud-gkehub/src/v1beta/gke_hub_client.ts @@ -23,6 +23,7 @@ import { CallOptions, Descriptors, ClientOptions, + GrpcClientOptions, LROperation, PaginationCallback, GaxCall, @@ -85,7 +86,7 @@ export class GkeHubClient { * * @param {object} [options] - The configuration object. * The options accepted by the constructor are described in detail - * in [this document](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#creating-the-client-instance). + * in [this document](https://github.com/googleapis/gax-nodejs/blob/main/client-libraries.md#creating-the-client-instance). * The common options are: * @param {object} [options.credentials] - Credentials object. * @param {string} [options.credentials.client_email] @@ -108,11 +109,10 @@ export class GkeHubClient { * API remote host. * @param {gax.ClientConfig} [options.clientConfig] - Client configuration override. * Follows the structure of {@link gapicConfig}. - * @param {boolean} [options.fallback] - Use HTTP fallback mode. - * In fallback mode, a special browser-compatible transport implementation is used - * instead of gRPC transport. In browser context (if the `window` object is defined) - * the fallback mode is enabled automatically; set `options.fallback` to `false` - * if you need to override this behavior. + * @param {boolean | "rest"} [options.fallback] - Use HTTP fallback mode. + * Pass "rest" to use HTTP/1.1 REST API instead of gRPC. + * For more information, please check the + * {@link https://github.com/googleapis/gax-nodejs/blob/main/client-libraries.md#http11-rest-api-mode documentation}. */ constructor(opts?: ClientOptions) { // Ensure that options include all the required fields. @@ -196,16 +196,76 @@ export class GkeHubClient { }; const protoFilesRoot = this._gaxModule.protobuf.Root.fromJSON(jsonProtos); - // This API contains "long-running operations", which return a // an Operation object that allows for tracking of the operation, // rather than holding a request open. - + const lroOptions: GrpcClientOptions = { + auth: this.auth, + grpc: 'grpc' in this._gaxGrpc ? this._gaxGrpc.grpc : undefined, + }; + if (opts.fallback === 'rest') { + lroOptions.protoJson = protoFilesRoot; + lroOptions.httpRules = [ + { + selector: 'google.cloud.location.Locations.GetLocation', + get: '/v1beta/{name=projects/*/locations/*}', + }, + { + selector: 'google.cloud.location.Locations.ListLocations', + get: '/v1beta/{name=projects/*}/locations', + }, + { + selector: 'google.iam.v1.IAMPolicy.GetIamPolicy', + get: '/v1beta/{resource=projects/*/locations/*/memberships/*}:getIamPolicy', + additional_bindings: [ + { + get: '/v1beta/{resource=projects/*/locations/*/features/*}:getIamPolicy', + }, + ], + }, + { + selector: 'google.iam.v1.IAMPolicy.SetIamPolicy', + post: '/v1beta/{resource=projects/*/locations/*/memberships/*}:setIamPolicy', + body: '*', + additional_bindings: [ + { + post: '/v1beta/{resource=projects/*/locations/*/features/*}:setIamPolicy', + body: '*', + }, + ], + }, + { + selector: 'google.iam.v1.IAMPolicy.TestIamPermissions', + post: '/v1beta/{resource=projects/*/locations/*/memberships/*}:testIamPermissions', + body: '*', + additional_bindings: [ + { + post: '/v1beta/{resource=projects/*/locations/*/features/*}:testIamPermissions', + body: '*', + }, + ], + }, + { + selector: 'google.longrunning.Operations.CancelOperation', + post: '/v1beta/{name=projects/*/locations/*/operations/*}:cancel', + body: '*', + }, + { + selector: 'google.longrunning.Operations.DeleteOperation', + delete: '/v1beta/{name=projects/*/locations/*/operations/*}', + }, + { + selector: 'google.longrunning.Operations.GetOperation', + get: '/v1beta/{name=projects/*/locations/*/operations/*}', + }, + { + selector: 'google.longrunning.Operations.ListOperations', + get: '/v1beta/{name=projects/*/locations/*}/operations', + }, + ]; + } this.operationsClient = this._gaxModule - .lro({ - auth: this.auth, - grpc: 'grpc' in this._gaxGrpc ? this._gaxGrpc.grpc : undefined, - }) + .lro(lroOptions) .operationsClient(opts); const createFeatureResponse = protoFilesRoot.lookup( '.google.cloud.gkehub.v1beta.Feature' diff --git a/packages/google-cloud-gkehub/src/v1beta1/gke_hub_membership_service_client.ts b/packages/google-cloud-gkehub/src/v1beta1/gke_hub_membership_service_client.ts index 21b75b92f8c..7d73a69534b 100644 --- a/packages/google-cloud-gkehub/src/v1beta1/gke_hub_membership_service_client.ts +++ b/packages/google-cloud-gkehub/src/v1beta1/gke_hub_membership_service_client.ts @@ -23,6 +23,7 @@ import { CallOptions, Descriptors, ClientOptions, + GrpcClientOptions, LROperation, PaginationCallback, GaxCall, @@ -85,7 +86,7 @@ export class GkeHubMembershipServiceClient { * * @param {object} [options] - The configuration object. * The options accepted by the constructor are described in detail - * in [this document](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#creating-the-client-instance). + * in [this document](https://github.com/googleapis/gax-nodejs/blob/main/client-libraries.md#creating-the-client-instance). * The common options are: * @param {object} [options.credentials] - Credentials object. * @param {string} [options.credentials.client_email] @@ -108,11 +109,10 @@ export class GkeHubMembershipServiceClient { * API remote host. * @param {gax.ClientConfig} [options.clientConfig] - Client configuration override. * Follows the structure of {@link gapicConfig}. - * @param {boolean} [options.fallback] - Use HTTP fallback mode. - * In fallback mode, a special browser-compatible transport implementation is used - * instead of gRPC transport. In browser context (if the `window` object is defined) - * the fallback mode is enabled automatically; set `options.fallback` to `false` - * if you need to override this behavior. + * @param {boolean | "rest"} [options.fallback] - Use HTTP fallback mode. + * Pass "rest" to use HTTP/1.1 REST API instead of gRPC. + * For more information, please check the + * {@link https://github.com/googleapis/gax-nodejs/blob/main/client-libraries.md#http11-rest-api-mode documentation}. */ constructor(opts?: ClientOptions) { // Ensure that options include all the required fields. @@ -206,16 +206,59 @@ export class GkeHubMembershipServiceClient { }; const protoFilesRoot = this._gaxModule.protobuf.Root.fromJSON(jsonProtos); - // This API contains "long-running operations", which return a // an Operation object that allows for tracking of the operation, // rather than holding a request open. - + const lroOptions: GrpcClientOptions = { + auth: this.auth, + grpc: 'grpc' in this._gaxGrpc ? this._gaxGrpc.grpc : undefined, + }; + if (opts.fallback === 'rest') { + lroOptions.protoJson = protoFilesRoot; + lroOptions.httpRules = [ + { + selector: 'google.cloud.location.Locations.GetLocation', + get: '/v1beta1/{name=projects/*/locations/*}', + }, + { + selector: 'google.cloud.location.Locations.ListLocations', + get: '/v1beta1/{name=projects/*}/locations', + }, + { + selector: 'google.iam.v1.IAMPolicy.GetIamPolicy', + get: '/v1beta1/{resource=projects/*/locations/*/memberships/*}:getIamPolicy', + }, + { + selector: 'google.iam.v1.IAMPolicy.SetIamPolicy', + post: '/v1beta1/{resource=projects/*/locations/*/memberships/*}:setIamPolicy', + body: '*', + }, + { + selector: 'google.iam.v1.IAMPolicy.TestIamPermissions', + post: '/v1beta1/{resource=projects/*/locations/*/memberships/*}:testIamPermissions', + body: '*', + }, + { + selector: 'google.longrunning.Operations.CancelOperation', + post: '/v1beta1/{name=projects/*/locations/*/operations/*}:cancel', + body: '*', + }, + { + selector: 'google.longrunning.Operations.DeleteOperation', + delete: '/v1beta1/{name=projects/*/locations/*/operations/*}', + }, + { + selector: 'google.longrunning.Operations.GetOperation', + get: '/v1beta1/{name=projects/*/locations/*/operations/*}', + }, + { + selector: 'google.longrunning.Operations.ListOperations', + get: '/v1beta1/{name=projects/*/locations/*}/operations', + }, + ]; + } this.operationsClient = this._gaxModule - .lro({ - auth: this.auth, - grpc: 'grpc' in this._gaxGrpc ? this._gaxGrpc.grpc : undefined, - }) + .lro(lroOptions) .operationsClient(opts); const createMembershipResponse = protoFilesRoot.lookup( '.google.cloud.gkehub.v1beta1.Membership' From 447215c1beff580bcfe209c61e460f2e16d4dc55 Mon Sep 17 00:00:00 2001 From: "release-please[bot]" <55107282+release-please[bot]@users.noreply.github.com> Date: Mon, 4 Jul 2022 15:45:27 -0400 Subject: [PATCH 78/92] chore(main): release 3.2.0 (#159) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * chore(main): release 3.2.0 * 🦉 Updates from OwlBot post-processor See https://github.com/googleapis/repo-automation-bots/blob/main/packages/owl-bot/README.md Co-authored-by: release-please[bot] <55107282+release-please[bot]@users.noreply.github.com> Co-authored-by: Owl Bot --- packages/google-cloud-gkehub/CHANGELOG.md | 7 +++++++ packages/google-cloud-gkehub/package.json | 2 +- .../v1/snippet_metadata.google.cloud.gkehub.v1.json | 2 +- .../snippet_metadata.google.cloud.gkehub.v1alpha.json | 2 +- .../snippet_metadata.google.cloud.gkehub.v1alpha2.json | 2 +- .../snippet_metadata.google.cloud.gkehub.v1beta.json | 2 +- .../snippet_metadata.google.cloud.gkehub.v1beta1.json | 2 +- packages/google-cloud-gkehub/samples/package.json | 2 +- 8 files changed, 14 insertions(+), 7 deletions(-) diff --git a/packages/google-cloud-gkehub/CHANGELOG.md b/packages/google-cloud-gkehub/CHANGELOG.md index e65af5d9970..c78c432b22c 100644 --- a/packages/google-cloud-gkehub/CHANGELOG.md +++ b/packages/google-cloud-gkehub/CHANGELOG.md @@ -1,5 +1,12 @@ # Changelog +## [3.2.0](https://github.com/googleapis/nodejs-gke-hub/compare/v3.1.0...v3.2.0) (2022-06-30) + + +### Features + +* support regapic LRO ([#158](https://github.com/googleapis/nodejs-gke-hub/issues/158)) ([8565d02](https://github.com/googleapis/nodejs-gke-hub/commit/8565d02508ed1273b9656f662104db0b99d3bf71)) + ## [3.1.0](https://github.com/googleapis/nodejs-gke-hub/compare/v3.0.0...v3.1.0) (2022-06-15) diff --git a/packages/google-cloud-gkehub/package.json b/packages/google-cloud-gkehub/package.json index 3bc9665981d..1b1ed6daaf6 100644 --- a/packages/google-cloud-gkehub/package.json +++ b/packages/google-cloud-gkehub/package.json @@ -1,6 +1,6 @@ { "name": "@google-cloud/gke-hub", - "version": "3.1.0", + "version": "3.2.0", "description": "Gkehub client for Node.js", "repository": "googleapis/nodejs-gke-hub", "license": "Apache-2.0", diff --git a/packages/google-cloud-gkehub/samples/generated/v1/snippet_metadata.google.cloud.gkehub.v1.json b/packages/google-cloud-gkehub/samples/generated/v1/snippet_metadata.google.cloud.gkehub.v1.json index 02e4b202b95..e5875e5aa5f 100644 --- a/packages/google-cloud-gkehub/samples/generated/v1/snippet_metadata.google.cloud.gkehub.v1.json +++ b/packages/google-cloud-gkehub/samples/generated/v1/snippet_metadata.google.cloud.gkehub.v1.json @@ -1,7 +1,7 @@ { "clientLibrary": { "name": "nodejs-gkehub", - "version": "3.1.0", + "version": "3.2.0", "language": "TYPESCRIPT", "apis": [ { diff --git a/packages/google-cloud-gkehub/samples/generated/v1alpha/snippet_metadata.google.cloud.gkehub.v1alpha.json b/packages/google-cloud-gkehub/samples/generated/v1alpha/snippet_metadata.google.cloud.gkehub.v1alpha.json index 273ea60a855..2141197e5fa 100644 --- a/packages/google-cloud-gkehub/samples/generated/v1alpha/snippet_metadata.google.cloud.gkehub.v1alpha.json +++ b/packages/google-cloud-gkehub/samples/generated/v1alpha/snippet_metadata.google.cloud.gkehub.v1alpha.json @@ -1,7 +1,7 @@ { "clientLibrary": { "name": "nodejs-gkehub", - "version": "3.1.0", + "version": "3.2.0", "language": "TYPESCRIPT", "apis": [ { diff --git a/packages/google-cloud-gkehub/samples/generated/v1alpha2/snippet_metadata.google.cloud.gkehub.v1alpha2.json b/packages/google-cloud-gkehub/samples/generated/v1alpha2/snippet_metadata.google.cloud.gkehub.v1alpha2.json index 70de9c7ed68..c47ee04d1a9 100644 --- a/packages/google-cloud-gkehub/samples/generated/v1alpha2/snippet_metadata.google.cloud.gkehub.v1alpha2.json +++ b/packages/google-cloud-gkehub/samples/generated/v1alpha2/snippet_metadata.google.cloud.gkehub.v1alpha2.json @@ -1,7 +1,7 @@ { "clientLibrary": { "name": "nodejs-gkehub", - "version": "3.1.0", + "version": "3.2.0", "language": "TYPESCRIPT", "apis": [ { diff --git a/packages/google-cloud-gkehub/samples/generated/v1beta/snippet_metadata.google.cloud.gkehub.v1beta.json b/packages/google-cloud-gkehub/samples/generated/v1beta/snippet_metadata.google.cloud.gkehub.v1beta.json index 0f9944b4ec8..e2798009537 100644 --- a/packages/google-cloud-gkehub/samples/generated/v1beta/snippet_metadata.google.cloud.gkehub.v1beta.json +++ b/packages/google-cloud-gkehub/samples/generated/v1beta/snippet_metadata.google.cloud.gkehub.v1beta.json @@ -1,7 +1,7 @@ { "clientLibrary": { "name": "nodejs-gkehub", - "version": "3.1.0", + "version": "3.2.0", "language": "TYPESCRIPT", "apis": [ { diff --git a/packages/google-cloud-gkehub/samples/generated/v1beta1/snippet_metadata.google.cloud.gkehub.v1beta1.json b/packages/google-cloud-gkehub/samples/generated/v1beta1/snippet_metadata.google.cloud.gkehub.v1beta1.json index 0b71d36e234..a4b714d0e49 100644 --- a/packages/google-cloud-gkehub/samples/generated/v1beta1/snippet_metadata.google.cloud.gkehub.v1beta1.json +++ b/packages/google-cloud-gkehub/samples/generated/v1beta1/snippet_metadata.google.cloud.gkehub.v1beta1.json @@ -1,7 +1,7 @@ { "clientLibrary": { "name": "nodejs-gkehub", - "version": "3.1.0", + "version": "3.2.0", "language": "TYPESCRIPT", "apis": [ { diff --git a/packages/google-cloud-gkehub/samples/package.json b/packages/google-cloud-gkehub/samples/package.json index 3a9504ff4e9..aa68474773d 100644 --- a/packages/google-cloud-gkehub/samples/package.json +++ b/packages/google-cloud-gkehub/samples/package.json @@ -13,7 +13,7 @@ "test": "c8 mocha --timeout 600000 test/*.js" }, "dependencies": { - "@google-cloud/gke-hub": "^3.1.0" + "@google-cloud/gke-hub": "^3.2.0" }, "devDependencies": { "c8": "^7.1.0", From 04b5fecebf9655f48d3a76964411f33771a28698 Mon Sep 17 00:00:00 2001 From: WhiteSource Renovate Date: Wed, 13 Jul 2022 02:00:39 +0200 Subject: [PATCH 79/92] chore(deps): update dependency linkinator to v4 (#161) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit [![Mend Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com) This PR contains the following updates: | Package | Change | Age | Adoption | Passing | Confidence | |---|---|---|---|---|---| | [linkinator](https://togithub.com/JustinBeckwith/linkinator) | [`^2.7.0` -> `^4.0.0`](https://renovatebot.com/diffs/npm/linkinator/2.16.2/4.0.2) | [![age](https://badges.renovateapi.com/packages/npm/linkinator/4.0.2/age-slim)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://badges.renovateapi.com/packages/npm/linkinator/4.0.2/adoption-slim)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://badges.renovateapi.com/packages/npm/linkinator/4.0.2/compatibility-slim/2.16.2)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://badges.renovateapi.com/packages/npm/linkinator/4.0.2/confidence-slim/2.16.2)](https://docs.renovatebot.com/merge-confidence/) | --- ### Release Notes
JustinBeckwith/linkinator ### [`v4.0.2`](https://togithub.com/JustinBeckwith/linkinator/releases/tag/v4.0.2) [Compare Source](https://togithub.com/JustinBeckwith/linkinator/compare/v4.0.1...v4.0.2) ##### Bug Fixes - address srcset parsing with multiple spaces ([#​512](https://togithub.com/JustinBeckwith/linkinator/issues/512)) ([fefb5b6](https://togithub.com/JustinBeckwith/linkinator/commit/fefb5b6734fc4ab335793358c5f491338ecbeb90)) ### [`v4.0.1`](https://togithub.com/JustinBeckwith/linkinator/releases/tag/v4.0.1) [Compare Source](https://togithub.com/JustinBeckwith/linkinator/compare/v4.0.0...v4.0.1) ##### Bug Fixes - properly parse srcset attribute ([#​510](https://togithub.com/JustinBeckwith/linkinator/issues/510)) ([9a8a83c](https://togithub.com/JustinBeckwith/linkinator/commit/9a8a83c35182b3cd4daee62a00f156767fe5c6a7)) ### [`v4.0.0`](https://togithub.com/JustinBeckwith/linkinator/releases/tag/v4.0.0) [Compare Source](https://togithub.com/JustinBeckwith/linkinator/compare/v3.1.0...v4.0.0) ##### Features - create new release with notes ([#​508](https://togithub.com/JustinBeckwith/linkinator/issues/508)) ([2cab633](https://togithub.com/JustinBeckwith/linkinator/commit/2cab633c9659eb10794a4bac06f8b0acdc3e2c0c)) ##### BREAKING CHANGES - The commits in [#​507](https://togithub.com/JustinBeckwith/linkinator/issues/507) and [#​506](https://togithub.com/JustinBeckwith/linkinator/issues/506) both had breaking changes. They included dropping support for Node.js 12.x and updating the CSV export to be streaming, and to use a new way of writing the CSV file. This is an empty to commit using the `BREAKING CHANGE` format in the commit message to ensure a release is triggered. ### [`v3.1.0`](https://togithub.com/JustinBeckwith/linkinator/releases/tag/v3.1.0) [Compare Source](https://togithub.com/JustinBeckwith/linkinator/compare/v3.0.6...v3.1.0) ##### Features - allow --skip to be defined multiple times ([#​399](https://togithub.com/JustinBeckwith/linkinator/issues/399)) ([5ca5a46](https://togithub.com/JustinBeckwith/linkinator/commit/5ca5a461508e688de12e5ae6b4cfb6565f832ebf)) ### [`v3.0.6`](https://togithub.com/JustinBeckwith/linkinator/releases/tag/v3.0.6) [Compare Source](https://togithub.com/JustinBeckwith/linkinator/compare/v3.0.5...v3.0.6) ##### Bug Fixes - **deps:** upgrade node-glob to v8 ([#​397](https://togithub.com/JustinBeckwith/linkinator/issues/397)) ([d334dc6](https://togithub.com/JustinBeckwith/linkinator/commit/d334dc6734cd7c2b73d7ed3dea0550a6c3072ad5)) ### [`v3.0.5`](https://togithub.com/JustinBeckwith/linkinator/releases/tag/v3.0.5) [Compare Source](https://togithub.com/JustinBeckwith/linkinator/compare/v3.0.4...v3.0.5) ##### Bug Fixes - **deps:** upgrade to htmlparser2 v8.0.1 ([#​396](https://togithub.com/JustinBeckwith/linkinator/issues/396)) ([ba3b9a8](https://togithub.com/JustinBeckwith/linkinator/commit/ba3b9a8a9b19d39af6ed91790135e833b80c1eb6)) ### [`v3.0.4`](https://togithub.com/JustinBeckwith/linkinator/releases/tag/v3.0.4) [Compare Source](https://togithub.com/JustinBeckwith/linkinator/compare/v3.0.3...v3.0.4) ##### Bug Fixes - **deps:** update dependency gaxios to v5 ([#​391](https://togithub.com/JustinBeckwith/linkinator/issues/391)) ([48af50e](https://togithub.com/JustinBeckwith/linkinator/commit/48af50e787731204aeb7eff41325c62291311e45)) ### [`v3.0.3`](https://togithub.com/JustinBeckwith/linkinator/releases/tag/v3.0.3) [Compare Source](https://togithub.com/JustinBeckwith/linkinator/compare/v3.0.2...v3.0.3) ##### Bug Fixes - export getConfig from index ([#​371](https://togithub.com/JustinBeckwith/linkinator/issues/371)) ([0bc0355](https://togithub.com/JustinBeckwith/linkinator/commit/0bc0355c7e2ea457f247e6b52d1577b8c4ecb3a1)) ### [`v3.0.2`](https://togithub.com/JustinBeckwith/linkinator/releases/tag/v3.0.2) [Compare Source](https://togithub.com/JustinBeckwith/linkinator/compare/v3.0.1...v3.0.2) ##### Bug Fixes - allow server root with trailing slash ([#​370](https://togithub.com/JustinBeckwith/linkinator/issues/370)) ([8adf6b0](https://togithub.com/JustinBeckwith/linkinator/commit/8adf6b025fda250e38461f1cdad40fe08c3b3b7c)) ### [`v3.0.1`](https://togithub.com/JustinBeckwith/linkinator/releases/tag/v3.0.1) [Compare Source](https://togithub.com/JustinBeckwith/linkinator/compare/v3.0.0...v3.0.1) ##### Bug Fixes - decode path parts in local web server ([#​369](https://togithub.com/JustinBeckwith/linkinator/issues/369)) ([4696a0c](https://togithub.com/JustinBeckwith/linkinator/commit/4696a0c38c341b178ed815f47371fca955979feb)) ### [`v3.0.0`](https://togithub.com/JustinBeckwith/linkinator/releases/tag/v3.0.0) [Compare Source](https://togithub.com/JustinBeckwith/linkinator/compare/v2.16.2...v3.0.0) ##### Bug Fixes - **deps:** update dependency chalk to v5 ([#​362](https://togithub.com/JustinBeckwith/linkinator/issues/362)) ([4b17a8d](https://togithub.com/JustinBeckwith/linkinator/commit/4b17a8d87b649eaf813428f8ee6955e1d21dae4f)) - feat!: convert to es modules, drop node 10 ([#​359](https://togithub.com/JustinBeckwith/linkinator/issues/359)) ([efee299](https://togithub.com/JustinBeckwith/linkinator/commit/efee299ab8a805accef751eecf8538915a4e7783)), closes [#​359](https://togithub.com/JustinBeckwith/linkinator/issues/359) ##### BREAKING CHANGES - this module now requires node.js 12 and above, and has moved to es modules by default.
--- ### Configuration 📅 **Schedule**: Branch creation - "after 9am and before 3pm" (UTC), Automerge - At any time (no schedule defined). 🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied. ♻ **Rebasing**: Whenever PR is behind base branch, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about this update again. --- - [ ] If you want to rebase/retry this PR, click this checkbox. --- This PR has been generated by [Mend Renovate](https://www.mend.io/free-developer-tools/renovate/). View repository job log [here](https://app.renovatebot.com/dashboard#github/googleapis/nodejs-gke-hub). --- packages/google-cloud-gkehub/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/google-cloud-gkehub/package.json b/packages/google-cloud-gkehub/package.json index 1b1ed6daaf6..b7d22487fb4 100644 --- a/packages/google-cloud-gkehub/package.json +++ b/packages/google-cloud-gkehub/package.json @@ -50,7 +50,7 @@ "jsdoc": "^3.6.6", "jsdoc-fresh": "^2.0.0", "jsdoc-region-tag": "^2.0.0", - "linkinator": "^2.7.0", + "linkinator": "^4.0.0", "mocha": "^9.2.2", "null-loader": "^4.0.1", "pack-n-play": "^1.0.0-2", From 0076c535414c3653145273c366d19fba864987a5 Mon Sep 17 00:00:00 2001 From: "gcf-owl-bot[bot]" <78513119+gcf-owl-bot[bot]@users.noreply.github.com> Date: Fri, 19 Aug 2022 20:24:14 +0000 Subject: [PATCH 80/92] chore: remove unused proto imports (#162) - [ ] Regenerate this pull request now. PiperOrigin-RevId: 468735472 Source-Link: https://github.com/googleapis/googleapis/commit/cfa1b3782da7ccae31673d45401a0b79d2d4a84b Source-Link: https://github.com/googleapis/googleapis-gen/commit/09b7666656510f5b00b893f003a0ba5766f9e250 Copy-Tag: eyJwIjoiLmdpdGh1Yi8uT3dsQm90LnlhbWwiLCJoIjoiMDliNzY2NjY1NjUxMGY1YjAwYjg5M2YwMDNhMGJhNTc2NmY5ZTI1MCJ9 --- .../gkehub/v1alpha/cloudauditlogging/cloudauditlogging.proto | 1 - .../cloud/gkehub/v1alpha/configmanagement/configmanagement.proto | 1 - .../protos/google/cloud/gkehub/v1alpha/feature.proto | 1 - .../protos/google/cloud/gkehub/v1alpha/metering/metering.proto | 1 - .../gkehub/v1alpha/multiclusteringress/multiclusteringress.proto | 1 - .../protos/google/cloud/gkehub/v1alpha/service.proto | 1 - .../google/cloud/gkehub/v1alpha/servicemesh/servicemesh.proto | 1 - .../cloud/gkehub/v1beta/configmanagement/configmanagement.proto | 1 - .../protos/google/cloud/gkehub/v1beta/feature.proto | 1 - .../protos/google/cloud/gkehub/v1beta/metering/metering.proto | 1 - .../gkehub/v1beta/multiclusteringress/multiclusteringress.proto | 1 - .../protos/google/cloud/gkehub/v1beta/service.proto | 1 - 12 files changed, 12 deletions(-) diff --git a/packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1alpha/cloudauditlogging/cloudauditlogging.proto b/packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1alpha/cloudauditlogging/cloudauditlogging.proto index 19c70be5e7e..f0f060ab1b1 100644 --- a/packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1alpha/cloudauditlogging/cloudauditlogging.proto +++ b/packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1alpha/cloudauditlogging/cloudauditlogging.proto @@ -16,7 +16,6 @@ syntax = "proto3"; package google.cloud.gkehub.cloudauditlogging.v1alpha; -import "google/api/annotations.proto"; option csharp_namespace = "Google.Cloud.GkeHub.CloudAuditLogging.V1Alpha"; option go_package = "google.golang.org/genproto/googleapis/cloud/gkehub/cloudauditlogging/v1alpha;cloudauditlogging"; diff --git a/packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1alpha/configmanagement/configmanagement.proto b/packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1alpha/configmanagement/configmanagement.proto index 1f06f30432b..11f60814d91 100644 --- a/packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1alpha/configmanagement/configmanagement.proto +++ b/packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1alpha/configmanagement/configmanagement.proto @@ -17,7 +17,6 @@ syntax = "proto3"; package google.cloud.gkehub.configmanagement.v1alpha; import "google/protobuf/timestamp.proto"; -import "google/api/annotations.proto"; option csharp_namespace = "Google.Cloud.GkeHub.ConfigManagement.V1Alpha"; option go_package = "google.golang.org/genproto/googleapis/cloud/gkehub/configmanagement/v1alpha;configmanagement"; diff --git a/packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1alpha/feature.proto b/packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1alpha/feature.proto index 1bfad32f702..7ebbd5eabb9 100644 --- a/packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1alpha/feature.proto +++ b/packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1alpha/feature.proto @@ -24,7 +24,6 @@ import "google/cloud/gkehub/v1alpha/metering/metering.proto"; import "google/cloud/gkehub/v1alpha/multiclusteringress/multiclusteringress.proto"; import "google/cloud/gkehub/v1alpha/servicemesh/servicemesh.proto"; import "google/protobuf/timestamp.proto"; -import "google/api/annotations.proto"; option csharp_namespace = "Google.Cloud.GkeHub.V1Alpha"; option go_package = "google.golang.org/genproto/googleapis/cloud/gkehub/v1alpha;gkehub"; diff --git a/packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1alpha/metering/metering.proto b/packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1alpha/metering/metering.proto index 2e630bd02e6..96ee3d9fc54 100644 --- a/packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1alpha/metering/metering.proto +++ b/packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1alpha/metering/metering.proto @@ -17,7 +17,6 @@ syntax = "proto3"; package google.cloud.gkehub.metering.v1alpha; import "google/protobuf/timestamp.proto"; -import "google/api/annotations.proto"; option csharp_namespace = "Google.Cloud.GkeHub.Metering.V1Alpha"; option go_package = "google.golang.org/genproto/googleapis/cloud/gkehub/metering/v1alpha;metering"; diff --git a/packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1alpha/multiclusteringress/multiclusteringress.proto b/packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1alpha/multiclusteringress/multiclusteringress.proto index f6418c10ade..c8f409066f6 100644 --- a/packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1alpha/multiclusteringress/multiclusteringress.proto +++ b/packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1alpha/multiclusteringress/multiclusteringress.proto @@ -16,7 +16,6 @@ syntax = "proto3"; package google.cloud.gkehub.multiclusteringress.v1alpha; -import "google/api/annotations.proto"; option csharp_namespace = "Google.Cloud.GkeHub.MultiClusterIngress.V1Alpha"; option go_package = "google.golang.org/genproto/googleapis/cloud/gkehub/multiclusteringress/v1alpha;multiclusteringress"; diff --git a/packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1alpha/service.proto b/packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1alpha/service.proto index 3764fa8cbbc..7bbf9c76819 100644 --- a/packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1alpha/service.proto +++ b/packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1alpha/service.proto @@ -19,7 +19,6 @@ package google.cloud.gkehub.v1alpha; import "google/api/annotations.proto"; import "google/api/client.proto"; import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; import "google/cloud/gkehub/v1alpha/feature.proto"; import "google/longrunning/operations.proto"; import "google/protobuf/field_mask.proto"; diff --git a/packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1alpha/servicemesh/servicemesh.proto b/packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1alpha/servicemesh/servicemesh.proto index e200e4fc1db..7c898c8af43 100644 --- a/packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1alpha/servicemesh/servicemesh.proto +++ b/packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1alpha/servicemesh/servicemesh.proto @@ -18,7 +18,6 @@ package google.cloud.gkehub.servicemesh.v1alpha; import "google/api/field_behavior.proto"; import "google/protobuf/struct.proto"; -import "google/api/annotations.proto"; option csharp_namespace = "Google.Cloud.GkeHub.ServiceMesh.V1Alpha"; option go_package = "google.golang.org/genproto/googleapis/cloud/gkehub/servicemesh/v1alpha;servicemesh"; diff --git a/packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1beta/configmanagement/configmanagement.proto b/packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1beta/configmanagement/configmanagement.proto index 103aa69dc85..89df90f40ab 100644 --- a/packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1beta/configmanagement/configmanagement.proto +++ b/packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1beta/configmanagement/configmanagement.proto @@ -17,7 +17,6 @@ syntax = "proto3"; package google.cloud.gkehub.configmanagement.v1beta; import "google/protobuf/timestamp.proto"; -import "google/api/annotations.proto"; option csharp_namespace = "Google.Cloud.GkeHub.ConfigManagement.V1Beta"; option go_package = "google.golang.org/genproto/googleapis/cloud/gkehub/configmanagement/v1beta;configmanagement"; diff --git a/packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1beta/feature.proto b/packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1beta/feature.proto index 82c032c8943..b847f9920d1 100644 --- a/packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1beta/feature.proto +++ b/packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1beta/feature.proto @@ -22,7 +22,6 @@ import "google/cloud/gkehub/v1beta/configmanagement/configmanagement.proto"; import "google/cloud/gkehub/v1beta/metering/metering.proto"; import "google/cloud/gkehub/v1beta/multiclusteringress/multiclusteringress.proto"; import "google/protobuf/timestamp.proto"; -import "google/api/annotations.proto"; option csharp_namespace = "Google.Cloud.GkeHub.V1Beta"; option go_package = "google.golang.org/genproto/googleapis/cloud/gkehub/v1beta;gkehub"; diff --git a/packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1beta/metering/metering.proto b/packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1beta/metering/metering.proto index 948be8f1b8a..26fce8bc070 100644 --- a/packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1beta/metering/metering.proto +++ b/packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1beta/metering/metering.proto @@ -17,7 +17,6 @@ syntax = "proto3"; package google.cloud.gkehub.metering.v1beta; import "google/protobuf/timestamp.proto"; -import "google/api/annotations.proto"; option csharp_namespace = "Google.Cloud.GkeHub.Metering.V1Beta"; option go_package = "google.golang.org/genproto/googleapis/cloud/gkehub/metering/v1beta;metering"; diff --git a/packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1beta/multiclusteringress/multiclusteringress.proto b/packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1beta/multiclusteringress/multiclusteringress.proto index 6391de2e177..450f2bd7c8c 100644 --- a/packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1beta/multiclusteringress/multiclusteringress.proto +++ b/packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1beta/multiclusteringress/multiclusteringress.proto @@ -16,7 +16,6 @@ syntax = "proto3"; package google.cloud.gkehub.multiclusteringress.v1beta; -import "google/api/annotations.proto"; option csharp_namespace = "Google.Cloud.GkeHub.MultiClusterIngress.V1Beta"; option go_package = "google.golang.org/genproto/googleapis/cloud/gkehub/multiclusteringress/v1beta;multiclusteringress"; diff --git a/packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1beta/service.proto b/packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1beta/service.proto index 5d28318d16c..57b6a72dab2 100644 --- a/packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1beta/service.proto +++ b/packages/google-cloud-gkehub/protos/google/cloud/gkehub/v1beta/service.proto @@ -19,7 +19,6 @@ package google.cloud.gkehub.v1beta; import "google/api/annotations.proto"; import "google/api/client.proto"; import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; import "google/cloud/gkehub/v1beta/feature.proto"; import "google/longrunning/operations.proto"; import "google/protobuf/field_mask.proto"; From 86cff7da018da89cc33589835e103ba018c7b303 Mon Sep 17 00:00:00 2001 From: "gcf-owl-bot[bot]" <78513119+gcf-owl-bot[bot]@users.noreply.github.com> Date: Tue, 23 Aug 2022 00:14:18 +0000 Subject: [PATCH 81/92] fix: better support for fallback mode (#163) - [ ] Regenerate this pull request now. PiperOrigin-RevId: 468790263 Source-Link: https://github.com/googleapis/googleapis/commit/873ab456273d105245df0fb82a6c17a814553b80 Source-Link: https://github.com/googleapis/googleapis-gen/commit/cb6f37aeff2a3472e40a7bbace8c67d75e24bee5 Copy-Tag: eyJwIjoiLmdpdGh1Yi8uT3dsQm90LnlhbWwiLCJoIjoiY2I2ZjM3YWVmZjJhMzQ3MmU0MGE3YmJhY2U4YzY3ZDc1ZTI0YmVlNSJ9 --- .../generated/v1/gke_hub.create_feature.js | 3 + .../generated/v1/gke_hub.create_membership.js | 3 + .../generated/v1/gke_hub.delete_feature.js | 3 + .../generated/v1/gke_hub.delete_membership.js | 3 + .../v1/gke_hub.generate_connect_manifest.js | 3 + .../generated/v1/gke_hub.get_feature.js | 3 + .../generated/v1/gke_hub.get_membership.js | 3 + .../generated/v1/gke_hub.list_features.js | 3 + .../generated/v1/gke_hub.list_memberships.js | 3 + .../generated/v1/gke_hub.update_feature.js | 3 + .../generated/v1/gke_hub.update_membership.js | 3 + ...ippet_metadata.google.cloud.gkehub.v1.json | 22 +- .../v1alpha/gke_hub.create_feature.js | 3 + .../v1alpha/gke_hub.delete_feature.js | 3 + .../generated/v1alpha/gke_hub.get_feature.js | 3 + .../v1alpha/gke_hub.list_features.js | 3 + .../v1alpha/gke_hub.update_feature.js | 3 + ..._metadata.google.cloud.gkehub.v1alpha.json | 10 +- .../v1alpha2/gke_hub.create_membership.js | 3 + .../v1alpha2/gke_hub.delete_membership.js | 3 + .../gke_hub.generate_connect_manifest.js | 3 + .../v1alpha2/gke_hub.get_membership.js | 3 + .../v1alpha2/gke_hub.initialize_hub.js | 3 + .../v1alpha2/gke_hub.list_memberships.js | 3 + .../v1alpha2/gke_hub.update_membership.js | 3 + ...metadata.google.cloud.gkehub.v1alpha2.json | 14 +- .../v1beta/gke_hub.create_feature.js | 3 + .../v1beta/gke_hub.delete_feature.js | 3 + .../generated/v1beta/gke_hub.get_feature.js | 3 + .../generated/v1beta/gke_hub.list_features.js | 3 + .../v1beta/gke_hub.update_feature.js | 3 + ...t_metadata.google.cloud.gkehub.v1beta.json | 10 +- ...ub_membership_service.create_membership.js | 3 + ...ub_membership_service.delete_membership.js | 3 + ...rship_service.generate_connect_manifest.js | 3 + ...p_service.generate_exclusivity_manifest.js | 3 + ...e_hub_membership_service.get_membership.js | 3 + ...hub_membership_service.list_memberships.js | 3 + ...ub_membership_service.update_membership.js | 3 + ...membership_service.validate_exclusivity.js | 3 + ..._metadata.google.cloud.gkehub.v1beta1.json | 16 +- .../src/v1/gke_hub_client.ts | 24 +-- .../src/v1alpha/gke_hub_client.ts | 14 +- .../src/v1alpha2/gke_hub_client.ts | 14 +- .../src/v1beta/gke_hub_client.ts | 14 +- .../gke_hub_membership_service_client.ts | 14 +- ...apic_gke_hub_membership_service_v1beta1.ts | 195 ++++++++++-------- .../test/gapic_gke_hub_v1.ts | 156 +++++++------- .../test/gapic_gke_hub_v1alpha.ts | 156 +++++++------- .../test/gapic_gke_hub_v1alpha2.ts | 156 +++++++------- .../test/gapic_gke_hub_v1beta.ts | 156 +++++++------- 51 files changed, 605 insertions(+), 474 deletions(-) diff --git a/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.create_feature.js b/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.create_feature.js index 9dd0017c1f5..a2d4201ade8 100644 --- a/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.create_feature.js +++ b/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.create_feature.js @@ -23,6 +23,9 @@ function main() { // [START gkehub_v1_generated_GkeHub_CreateFeature_async] /** + * This snippet has been automatically generated and should be regarded as a code template only. + * It will require modifications to work. + * It may require correct/in-range values for request initialization. * TODO(developer): Uncomment these variables before running the sample. */ /** diff --git a/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.create_membership.js b/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.create_membership.js index fd4f6714403..79b007ff9ad 100644 --- a/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.create_membership.js +++ b/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.create_membership.js @@ -23,6 +23,9 @@ function main(parent, membershipId, resource) { // [START gkehub_v1_generated_GkeHub_CreateMembership_async] /** + * This snippet has been automatically generated and should be regarded as a code template only. + * It will require modifications to work. + * It may require correct/in-range values for request initialization. * TODO(developer): Uncomment these variables before running the sample. */ /** diff --git a/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.delete_feature.js b/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.delete_feature.js index 96753fb2290..aaf6176a9fb 100644 --- a/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.delete_feature.js +++ b/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.delete_feature.js @@ -23,6 +23,9 @@ function main() { // [START gkehub_v1_generated_GkeHub_DeleteFeature_async] /** + * This snippet has been automatically generated and should be regarded as a code template only. + * It will require modifications to work. + * It may require correct/in-range values for request initialization. * TODO(developer): Uncomment these variables before running the sample. */ /** diff --git a/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.delete_membership.js b/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.delete_membership.js index 0f748567a24..0feaa4109c7 100644 --- a/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.delete_membership.js +++ b/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.delete_membership.js @@ -23,6 +23,9 @@ function main(name) { // [START gkehub_v1_generated_GkeHub_DeleteMembership_async] /** + * This snippet has been automatically generated and should be regarded as a code template only. + * It will require modifications to work. + * It may require correct/in-range values for request initialization. * TODO(developer): Uncomment these variables before running the sample. */ /** diff --git a/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.generate_connect_manifest.js b/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.generate_connect_manifest.js index 6a51bd659f9..bb5fad55288 100644 --- a/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.generate_connect_manifest.js +++ b/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.generate_connect_manifest.js @@ -23,6 +23,9 @@ function main(name) { // [START gkehub_v1_generated_GkeHub_GenerateConnectManifest_async] /** + * This snippet has been automatically generated and should be regarded as a code template only. + * It will require modifications to work. + * It may require correct/in-range values for request initialization. * TODO(developer): Uncomment these variables before running the sample. */ /** diff --git a/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.get_feature.js b/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.get_feature.js index 9ca8a65ed08..7b927d70e0b 100644 --- a/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.get_feature.js +++ b/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.get_feature.js @@ -23,6 +23,9 @@ function main() { // [START gkehub_v1_generated_GkeHub_GetFeature_async] /** + * This snippet has been automatically generated and should be regarded as a code template only. + * It will require modifications to work. + * It may require correct/in-range values for request initialization. * TODO(developer): Uncomment these variables before running the sample. */ /** diff --git a/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.get_membership.js b/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.get_membership.js index 172929c7250..66ede7c5078 100644 --- a/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.get_membership.js +++ b/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.get_membership.js @@ -23,6 +23,9 @@ function main(name) { // [START gkehub_v1_generated_GkeHub_GetMembership_async] /** + * This snippet has been automatically generated and should be regarded as a code template only. + * It will require modifications to work. + * It may require correct/in-range values for request initialization. * TODO(developer): Uncomment these variables before running the sample. */ /** diff --git a/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.list_features.js b/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.list_features.js index 1713b5b6163..ca8078bc8e2 100644 --- a/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.list_features.js +++ b/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.list_features.js @@ -23,6 +23,9 @@ function main() { // [START gkehub_v1_generated_GkeHub_ListFeatures_async] /** + * This snippet has been automatically generated and should be regarded as a code template only. + * It will require modifications to work. + * It may require correct/in-range values for request initialization. * TODO(developer): Uncomment these variables before running the sample. */ /** diff --git a/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.list_memberships.js b/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.list_memberships.js index b43c83a9045..52361412552 100644 --- a/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.list_memberships.js +++ b/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.list_memberships.js @@ -23,6 +23,9 @@ function main(parent) { // [START gkehub_v1_generated_GkeHub_ListMemberships_async] /** + * This snippet has been automatically generated and should be regarded as a code template only. + * It will require modifications to work. + * It may require correct/in-range values for request initialization. * TODO(developer): Uncomment these variables before running the sample. */ /** diff --git a/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.update_feature.js b/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.update_feature.js index 846a901684c..135a07776d8 100644 --- a/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.update_feature.js +++ b/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.update_feature.js @@ -23,6 +23,9 @@ function main() { // [START gkehub_v1_generated_GkeHub_UpdateFeature_async] /** + * This snippet has been automatically generated and should be regarded as a code template only. + * It will require modifications to work. + * It may require correct/in-range values for request initialization. * TODO(developer): Uncomment these variables before running the sample. */ /** diff --git a/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.update_membership.js b/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.update_membership.js index 1effa5a01ec..888809dafc6 100644 --- a/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.update_membership.js +++ b/packages/google-cloud-gkehub/samples/generated/v1/gke_hub.update_membership.js @@ -23,6 +23,9 @@ function main(name, updateMask, resource) { // [START gkehub_v1_generated_GkeHub_UpdateMembership_async] /** + * This snippet has been automatically generated and should be regarded as a code template only. + * It will require modifications to work. + * It may require correct/in-range values for request initialization. * TODO(developer): Uncomment these variables before running the sample. */ /** diff --git a/packages/google-cloud-gkehub/samples/generated/v1/snippet_metadata.google.cloud.gkehub.v1.json b/packages/google-cloud-gkehub/samples/generated/v1/snippet_metadata.google.cloud.gkehub.v1.json index e5875e5aa5f..491a3dc4cf0 100644 --- a/packages/google-cloud-gkehub/samples/generated/v1/snippet_metadata.google.cloud.gkehub.v1.json +++ b/packages/google-cloud-gkehub/samples/generated/v1/snippet_metadata.google.cloud.gkehub.v1.json @@ -22,7 +22,7 @@ "segments": [ { "start": 25, - "end": 84, + "end": 87, "type": "FULL" } ], @@ -78,7 +78,7 @@ "segments": [ { "start": 25, - "end": 81, + "end": 84, "type": "FULL" } ], @@ -134,7 +134,7 @@ "segments": [ { "start": 25, - "end": 51, + "end": 54, "type": "FULL" } ], @@ -174,7 +174,7 @@ "segments": [ { "start": 25, - "end": 50, + "end": 53, "type": "FULL" } ], @@ -214,7 +214,7 @@ "segments": [ { "start": 25, - "end": 82, + "end": 85, "type": "FULL" } ], @@ -266,7 +266,7 @@ "segments": [ { "start": 25, - "end": 73, + "end": 76, "type": "FULL" } ], @@ -318,7 +318,7 @@ "segments": [ { "start": 25, - "end": 66, + "end": 69, "type": "FULL" } ], @@ -362,7 +362,7 @@ "segments": [ { "start": 25, - "end": 71, + "end": 74, "type": "FULL" } ], @@ -410,7 +410,7 @@ "segments": [ { "start": 25, - "end": 83, + "end": 86, "type": "FULL" } ], @@ -462,7 +462,7 @@ "segments": [ { "start": 25, - "end": 80, + "end": 83, "type": "FULL" } ], @@ -514,7 +514,7 @@ "segments": [ { "start": 25, - "end": 84, + "end": 87, "type": "FULL" } ], diff --git a/packages/google-cloud-gkehub/samples/generated/v1alpha/gke_hub.create_feature.js b/packages/google-cloud-gkehub/samples/generated/v1alpha/gke_hub.create_feature.js index 4879eb92b6a..9002c717b07 100644 --- a/packages/google-cloud-gkehub/samples/generated/v1alpha/gke_hub.create_feature.js +++ b/packages/google-cloud-gkehub/samples/generated/v1alpha/gke_hub.create_feature.js @@ -23,6 +23,9 @@ function main() { // [START gkehub_v1alpha_generated_GkeHub_CreateFeature_async] /** + * This snippet has been automatically generated and should be regarded as a code template only. + * It will require modifications to work. + * It may require correct/in-range values for request initialization. * TODO(developer): Uncomment these variables before running the sample. */ /** diff --git a/packages/google-cloud-gkehub/samples/generated/v1alpha/gke_hub.delete_feature.js b/packages/google-cloud-gkehub/samples/generated/v1alpha/gke_hub.delete_feature.js index d947c3b4eae..34f29fd32cb 100644 --- a/packages/google-cloud-gkehub/samples/generated/v1alpha/gke_hub.delete_feature.js +++ b/packages/google-cloud-gkehub/samples/generated/v1alpha/gke_hub.delete_feature.js @@ -23,6 +23,9 @@ function main() { // [START gkehub_v1alpha_generated_GkeHub_DeleteFeature_async] /** + * This snippet has been automatically generated and should be regarded as a code template only. + * It will require modifications to work. + * It may require correct/in-range values for request initialization. * TODO(developer): Uncomment these variables before running the sample. */ /** diff --git a/packages/google-cloud-gkehub/samples/generated/v1alpha/gke_hub.get_feature.js b/packages/google-cloud-gkehub/samples/generated/v1alpha/gke_hub.get_feature.js index ee4d635ec37..b29fed202a2 100644 --- a/packages/google-cloud-gkehub/samples/generated/v1alpha/gke_hub.get_feature.js +++ b/packages/google-cloud-gkehub/samples/generated/v1alpha/gke_hub.get_feature.js @@ -23,6 +23,9 @@ function main() { // [START gkehub_v1alpha_generated_GkeHub_GetFeature_async] /** + * This snippet has been automatically generated and should be regarded as a code template only. + * It will require modifications to work. + * It may require correct/in-range values for request initialization. * TODO(developer): Uncomment these variables before running the sample. */ /** diff --git a/packages/google-cloud-gkehub/samples/generated/v1alpha/gke_hub.list_features.js b/packages/google-cloud-gkehub/samples/generated/v1alpha/gke_hub.list_features.js index 764c68eb2a4..b3bae3dfa3c 100644 --- a/packages/google-cloud-gkehub/samples/generated/v1alpha/gke_hub.list_features.js +++ b/packages/google-cloud-gkehub/samples/generated/v1alpha/gke_hub.list_features.js @@ -23,6 +23,9 @@ function main() { // [START gkehub_v1alpha_generated_GkeHub_ListFeatures_async] /** + * This snippet has been automatically generated and should be regarded as a code template only. + * It will require modifications to work. + * It may require correct/in-range values for request initialization. * TODO(developer): Uncomment these variables before running the sample. */ /** diff --git a/packages/google-cloud-gkehub/samples/generated/v1alpha/gke_hub.update_feature.js b/packages/google-cloud-gkehub/samples/generated/v1alpha/gke_hub.update_feature.js index 8b84aa2f1dd..ae5e18edf8b 100644 --- a/packages/google-cloud-gkehub/samples/generated/v1alpha/gke_hub.update_feature.js +++ b/packages/google-cloud-gkehub/samples/generated/v1alpha/gke_hub.update_feature.js @@ -23,6 +23,9 @@ function main() { // [START gkehub_v1alpha_generated_GkeHub_UpdateFeature_async] /** + * This snippet has been automatically generated and should be regarded as a code template only. + * It will require modifications to work. + * It may require correct/in-range values for request initialization. * TODO(developer): Uncomment these variables before running the sample. */ /** diff --git a/packages/google-cloud-gkehub/samples/generated/v1alpha/snippet_metadata.google.cloud.gkehub.v1alpha.json b/packages/google-cloud-gkehub/samples/generated/v1alpha/snippet_metadata.google.cloud.gkehub.v1alpha.json index 2141197e5fa..644b2572463 100644 --- a/packages/google-cloud-gkehub/samples/generated/v1alpha/snippet_metadata.google.cloud.gkehub.v1alpha.json +++ b/packages/google-cloud-gkehub/samples/generated/v1alpha/snippet_metadata.google.cloud.gkehub.v1alpha.json @@ -22,7 +22,7 @@ "segments": [ { "start": 25, - "end": 81, + "end": 84, "type": "FULL" } ], @@ -78,7 +78,7 @@ "segments": [ { "start": 25, - "end": 50, + "end": 53, "type": "FULL" } ], @@ -118,7 +118,7 @@ "segments": [ { "start": 25, - "end": 73, + "end": 76, "type": "FULL" } ], @@ -170,7 +170,7 @@ "segments": [ { "start": 25, - "end": 71, + "end": 74, "type": "FULL" } ], @@ -218,7 +218,7 @@ "segments": [ { "start": 25, - "end": 80, + "end": 83, "type": "FULL" } ], diff --git a/packages/google-cloud-gkehub/samples/generated/v1alpha2/gke_hub.create_membership.js b/packages/google-cloud-gkehub/samples/generated/v1alpha2/gke_hub.create_membership.js index 399a844eb74..f43e84f29cb 100644 --- a/packages/google-cloud-gkehub/samples/generated/v1alpha2/gke_hub.create_membership.js +++ b/packages/google-cloud-gkehub/samples/generated/v1alpha2/gke_hub.create_membership.js @@ -23,6 +23,9 @@ function main(parent, membershipId, resource) { // [START gkehub_v1alpha2_generated_GkeHub_CreateMembership_async] /** + * This snippet has been automatically generated and should be regarded as a code template only. + * It will require modifications to work. + * It may require correct/in-range values for request initialization. * TODO(developer): Uncomment these variables before running the sample. */ /** diff --git a/packages/google-cloud-gkehub/samples/generated/v1alpha2/gke_hub.delete_membership.js b/packages/google-cloud-gkehub/samples/generated/v1alpha2/gke_hub.delete_membership.js index 7a1a4852d06..00de308b104 100644 --- a/packages/google-cloud-gkehub/samples/generated/v1alpha2/gke_hub.delete_membership.js +++ b/packages/google-cloud-gkehub/samples/generated/v1alpha2/gke_hub.delete_membership.js @@ -23,6 +23,9 @@ function main(name) { // [START gkehub_v1alpha2_generated_GkeHub_DeleteMembership_async] /** + * This snippet has been automatically generated and should be regarded as a code template only. + * It will require modifications to work. + * It may require correct/in-range values for request initialization. * TODO(developer): Uncomment these variables before running the sample. */ /** diff --git a/packages/google-cloud-gkehub/samples/generated/v1alpha2/gke_hub.generate_connect_manifest.js b/packages/google-cloud-gkehub/samples/generated/v1alpha2/gke_hub.generate_connect_manifest.js index ef30a1c311d..ddb502490c2 100644 --- a/packages/google-cloud-gkehub/samples/generated/v1alpha2/gke_hub.generate_connect_manifest.js +++ b/packages/google-cloud-gkehub/samples/generated/v1alpha2/gke_hub.generate_connect_manifest.js @@ -23,6 +23,9 @@ function main(name) { // [START gkehub_v1alpha2_generated_GkeHub_GenerateConnectManifest_async] /** + * This snippet has been automatically generated and should be regarded as a code template only. + * It will require modifications to work. + * It may require correct/in-range values for request initialization. * TODO(developer): Uncomment these variables before running the sample. */ /** diff --git a/packages/google-cloud-gkehub/samples/generated/v1alpha2/gke_hub.get_membership.js b/packages/google-cloud-gkehub/samples/generated/v1alpha2/gke_hub.get_membership.js index bc821e0e597..8adb4b06dff 100644 --- a/packages/google-cloud-gkehub/samples/generated/v1alpha2/gke_hub.get_membership.js +++ b/packages/google-cloud-gkehub/samples/generated/v1alpha2/gke_hub.get_membership.js @@ -23,6 +23,9 @@ function main(name) { // [START gkehub_v1alpha2_generated_GkeHub_GetMembership_async] /** + * This snippet has been automatically generated and should be regarded as a code template only. + * It will require modifications to work. + * It may require correct/in-range values for request initialization. * TODO(developer): Uncomment these variables before running the sample. */ /** diff --git a/packages/google-cloud-gkehub/samples/generated/v1alpha2/gke_hub.initialize_hub.js b/packages/google-cloud-gkehub/samples/generated/v1alpha2/gke_hub.initialize_hub.js index ebcbea1b874..557b6a32324 100644 --- a/packages/google-cloud-gkehub/samples/generated/v1alpha2/gke_hub.initialize_hub.js +++ b/packages/google-cloud-gkehub/samples/generated/v1alpha2/gke_hub.initialize_hub.js @@ -23,6 +23,9 @@ function main(project) { // [START gkehub_v1alpha2_generated_GkeHub_InitializeHub_async] /** + * This snippet has been automatically generated and should be regarded as a code template only. + * It will require modifications to work. + * It may require correct/in-range values for request initialization. * TODO(developer): Uncomment these variables before running the sample. */ /** diff --git a/packages/google-cloud-gkehub/samples/generated/v1alpha2/gke_hub.list_memberships.js b/packages/google-cloud-gkehub/samples/generated/v1alpha2/gke_hub.list_memberships.js index 8f79e409f95..a6dba6bb1ea 100644 --- a/packages/google-cloud-gkehub/samples/generated/v1alpha2/gke_hub.list_memberships.js +++ b/packages/google-cloud-gkehub/samples/generated/v1alpha2/gke_hub.list_memberships.js @@ -23,6 +23,9 @@ function main(parent) { // [START gkehub_v1alpha2_generated_GkeHub_ListMemberships_async] /** + * This snippet has been automatically generated and should be regarded as a code template only. + * It will require modifications to work. + * It may require correct/in-range values for request initialization. * TODO(developer): Uncomment these variables before running the sample. */ /** diff --git a/packages/google-cloud-gkehub/samples/generated/v1alpha2/gke_hub.update_membership.js b/packages/google-cloud-gkehub/samples/generated/v1alpha2/gke_hub.update_membership.js index a66ea4fc0ef..febdb3b30f9 100644 --- a/packages/google-cloud-gkehub/samples/generated/v1alpha2/gke_hub.update_membership.js +++ b/packages/google-cloud-gkehub/samples/generated/v1alpha2/gke_hub.update_membership.js @@ -23,6 +23,9 @@ function main(name, updateMask, resource) { // [START gkehub_v1alpha2_generated_GkeHub_UpdateMembership_async] /** + * This snippet has been automatically generated and should be regarded as a code template only. + * It will require modifications to work. + * It may require correct/in-range values for request initialization. * TODO(developer): Uncomment these variables before running the sample. */ /** diff --git a/packages/google-cloud-gkehub/samples/generated/v1alpha2/snippet_metadata.google.cloud.gkehub.v1alpha2.json b/packages/google-cloud-gkehub/samples/generated/v1alpha2/snippet_metadata.google.cloud.gkehub.v1alpha2.json index c47ee04d1a9..b5a196c9f93 100644 --- a/packages/google-cloud-gkehub/samples/generated/v1alpha2/snippet_metadata.google.cloud.gkehub.v1alpha2.json +++ b/packages/google-cloud-gkehub/samples/generated/v1alpha2/snippet_metadata.google.cloud.gkehub.v1alpha2.json @@ -22,7 +22,7 @@ "segments": [ { "start": 25, - "end": 84, + "end": 87, "type": "FULL" } ], @@ -78,7 +78,7 @@ "segments": [ { "start": 25, - "end": 51, + "end": 54, "type": "FULL" } ], @@ -118,7 +118,7 @@ "segments": [ { "start": 25, - "end": 68, + "end": 71, "type": "FULL" } ], @@ -166,7 +166,7 @@ "segments": [ { "start": 25, - "end": 52, + "end": 55, "type": "FULL" } ], @@ -206,7 +206,7 @@ "segments": [ { "start": 25, - "end": 69, + "end": 72, "type": "FULL" } ], @@ -254,7 +254,7 @@ "segments": [ { "start": 25, - "end": 84, + "end": 87, "type": "FULL" } ], @@ -318,7 +318,7 @@ "segments": [ { "start": 25, - "end": 51, + "end": 54, "type": "FULL" } ], diff --git a/packages/google-cloud-gkehub/samples/generated/v1beta/gke_hub.create_feature.js b/packages/google-cloud-gkehub/samples/generated/v1beta/gke_hub.create_feature.js index 6488da2e0df..4a247baa967 100644 --- a/packages/google-cloud-gkehub/samples/generated/v1beta/gke_hub.create_feature.js +++ b/packages/google-cloud-gkehub/samples/generated/v1beta/gke_hub.create_feature.js @@ -23,6 +23,9 @@ function main() { // [START gkehub_v1beta_generated_GkeHub_CreateFeature_async] /** + * This snippet has been automatically generated and should be regarded as a code template only. + * It will require modifications to work. + * It may require correct/in-range values for request initialization. * TODO(developer): Uncomment these variables before running the sample. */ /** diff --git a/packages/google-cloud-gkehub/samples/generated/v1beta/gke_hub.delete_feature.js b/packages/google-cloud-gkehub/samples/generated/v1beta/gke_hub.delete_feature.js index fa5cf307368..81e8642cf4e 100644 --- a/packages/google-cloud-gkehub/samples/generated/v1beta/gke_hub.delete_feature.js +++ b/packages/google-cloud-gkehub/samples/generated/v1beta/gke_hub.delete_feature.js @@ -23,6 +23,9 @@ function main() { // [START gkehub_v1beta_generated_GkeHub_DeleteFeature_async] /** + * This snippet has been automatically generated and should be regarded as a code template only. + * It will require modifications to work. + * It may require correct/in-range values for request initialization. * TODO(developer): Uncomment these variables before running the sample. */ /** diff --git a/packages/google-cloud-gkehub/samples/generated/v1beta/gke_hub.get_feature.js b/packages/google-cloud-gkehub/samples/generated/v1beta/gke_hub.get_feature.js index d96062b356a..6a1f4769dea 100644 --- a/packages/google-cloud-gkehub/samples/generated/v1beta/gke_hub.get_feature.js +++ b/packages/google-cloud-gkehub/samples/generated/v1beta/gke_hub.get_feature.js @@ -23,6 +23,9 @@ function main() { // [START gkehub_v1beta_generated_GkeHub_GetFeature_async] /** + * This snippet has been automatically generated and should be regarded as a code template only. + * It will require modifications to work. + * It may require correct/in-range values for request initialization. * TODO(developer): Uncomment these variables before running the sample. */ /** diff --git a/packages/google-cloud-gkehub/samples/generated/v1beta/gke_hub.list_features.js b/packages/google-cloud-gkehub/samples/generated/v1beta/gke_hub.list_features.js index a4ca93b57b9..3234d6ef5bf 100644 --- a/packages/google-cloud-gkehub/samples/generated/v1beta/gke_hub.list_features.js +++ b/packages/google-cloud-gkehub/samples/generated/v1beta/gke_hub.list_features.js @@ -23,6 +23,9 @@ function main() { // [START gkehub_v1beta_generated_GkeHub_ListFeatures_async] /** + * This snippet has been automatically generated and should be regarded as a code template only. + * It will require modifications to work. + * It may require correct/in-range values for request initialization. * TODO(developer): Uncomment these variables before running the sample. */ /** diff --git a/packages/google-cloud-gkehub/samples/generated/v1beta/gke_hub.update_feature.js b/packages/google-cloud-gkehub/samples/generated/v1beta/gke_hub.update_feature.js index ded4249cdb5..e58fed2a1ea 100644 --- a/packages/google-cloud-gkehub/samples/generated/v1beta/gke_hub.update_feature.js +++ b/packages/google-cloud-gkehub/samples/generated/v1beta/gke_hub.update_feature.js @@ -23,6 +23,9 @@ function main() { // [START gkehub_v1beta_generated_GkeHub_UpdateFeature_async] /** + * This snippet has been automatically generated and should be regarded as a code template only. + * It will require modifications to work. + * It may require correct/in-range values for request initialization. * TODO(developer): Uncomment these variables before running the sample. */ /** diff --git a/packages/google-cloud-gkehub/samples/generated/v1beta/snippet_metadata.google.cloud.gkehub.v1beta.json b/packages/google-cloud-gkehub/samples/generated/v1beta/snippet_metadata.google.cloud.gkehub.v1beta.json index e2798009537..023bf63dcf5 100644 --- a/packages/google-cloud-gkehub/samples/generated/v1beta/snippet_metadata.google.cloud.gkehub.v1beta.json +++ b/packages/google-cloud-gkehub/samples/generated/v1beta/snippet_metadata.google.cloud.gkehub.v1beta.json @@ -22,7 +22,7 @@ "segments": [ { "start": 25, - "end": 81, + "end": 84, "type": "FULL" } ], @@ -78,7 +78,7 @@ "segments": [ { "start": 25, - "end": 50, + "end": 53, "type": "FULL" } ], @@ -118,7 +118,7 @@ "segments": [ { "start": 25, - "end": 73, + "end": 76, "type": "FULL" } ], @@ -170,7 +170,7 @@ "segments": [ { "start": 25, - "end": 71, + "end": 74, "type": "FULL" } ], @@ -218,7 +218,7 @@ "segments": [ { "start": 25, - "end": 80, + "end": 83, "type": "FULL" } ], diff --git a/packages/google-cloud-gkehub/samples/generated/v1beta1/gke_hub_membership_service.create_membership.js b/packages/google-cloud-gkehub/samples/generated/v1beta1/gke_hub_membership_service.create_membership.js index c2091031614..23c03b6d9d2 100644 --- a/packages/google-cloud-gkehub/samples/generated/v1beta1/gke_hub_membership_service.create_membership.js +++ b/packages/google-cloud-gkehub/samples/generated/v1beta1/gke_hub_membership_service.create_membership.js @@ -23,6 +23,9 @@ function main(parent, membershipId, resource) { // [START gkehub_v1beta1_generated_GkeHubMembershipService_CreateMembership_async] /** + * This snippet has been automatically generated and should be regarded as a code template only. + * It will require modifications to work. + * It may require correct/in-range values for request initialization. * TODO(developer): Uncomment these variables before running the sample. */ /** diff --git a/packages/google-cloud-gkehub/samples/generated/v1beta1/gke_hub_membership_service.delete_membership.js b/packages/google-cloud-gkehub/samples/generated/v1beta1/gke_hub_membership_service.delete_membership.js index de5d977efb4..c65cccd3334 100644 --- a/packages/google-cloud-gkehub/samples/generated/v1beta1/gke_hub_membership_service.delete_membership.js +++ b/packages/google-cloud-gkehub/samples/generated/v1beta1/gke_hub_membership_service.delete_membership.js @@ -23,6 +23,9 @@ function main(name) { // [START gkehub_v1beta1_generated_GkeHubMembershipService_DeleteMembership_async] /** + * This snippet has been automatically generated and should be regarded as a code template only. + * It will require modifications to work. + * It may require correct/in-range values for request initialization. * TODO(developer): Uncomment these variables before running the sample. */ /** diff --git a/packages/google-cloud-gkehub/samples/generated/v1beta1/gke_hub_membership_service.generate_connect_manifest.js b/packages/google-cloud-gkehub/samples/generated/v1beta1/gke_hub_membership_service.generate_connect_manifest.js index ee6c0dca837..a511d0b94f5 100644 --- a/packages/google-cloud-gkehub/samples/generated/v1beta1/gke_hub_membership_service.generate_connect_manifest.js +++ b/packages/google-cloud-gkehub/samples/generated/v1beta1/gke_hub_membership_service.generate_connect_manifest.js @@ -23,6 +23,9 @@ function main(name) { // [START gkehub_v1beta1_generated_GkeHubMembershipService_GenerateConnectManifest_async] /** + * This snippet has been automatically generated and should be regarded as a code template only. + * It will require modifications to work. + * It may require correct/in-range values for request initialization. * TODO(developer): Uncomment these variables before running the sample. */ /** diff --git a/packages/google-cloud-gkehub/samples/generated/v1beta1/gke_hub_membership_service.generate_exclusivity_manifest.js b/packages/google-cloud-gkehub/samples/generated/v1beta1/gke_hub_membership_service.generate_exclusivity_manifest.js index 91ea676a014..73e046732da 100644 --- a/packages/google-cloud-gkehub/samples/generated/v1beta1/gke_hub_membership_service.generate_exclusivity_manifest.js +++ b/packages/google-cloud-gkehub/samples/generated/v1beta1/gke_hub_membership_service.generate_exclusivity_manifest.js @@ -23,6 +23,9 @@ function main(name) { // [START gkehub_v1beta1_generated_GkeHubMembershipService_GenerateExclusivityManifest_async] /** + * This snippet has been automatically generated and should be regarded as a code template only. + * It will require modifications to work. + * It may require correct/in-range values for request initialization. * TODO(developer): Uncomment these variables before running the sample. */ /** diff --git a/packages/google-cloud-gkehub/samples/generated/v1beta1/gke_hub_membership_service.get_membership.js b/packages/google-cloud-gkehub/samples/generated/v1beta1/gke_hub_membership_service.get_membership.js index f7c365796a2..acf69619d40 100644 --- a/packages/google-cloud-gkehub/samples/generated/v1beta1/gke_hub_membership_service.get_membership.js +++ b/packages/google-cloud-gkehub/samples/generated/v1beta1/gke_hub_membership_service.get_membership.js @@ -23,6 +23,9 @@ function main(name) { // [START gkehub_v1beta1_generated_GkeHubMembershipService_GetMembership_async] /** + * This snippet has been automatically generated and should be regarded as a code template only. + * It will require modifications to work. + * It may require correct/in-range values for request initialization. * TODO(developer): Uncomment these variables before running the sample. */ /** diff --git a/packages/google-cloud-gkehub/samples/generated/v1beta1/gke_hub_membership_service.list_memberships.js b/packages/google-cloud-gkehub/samples/generated/v1beta1/gke_hub_membership_service.list_memberships.js index 5ce348c2f19..f9719da08b4 100644 --- a/packages/google-cloud-gkehub/samples/generated/v1beta1/gke_hub_membership_service.list_memberships.js +++ b/packages/google-cloud-gkehub/samples/generated/v1beta1/gke_hub_membership_service.list_memberships.js @@ -23,6 +23,9 @@ function main(parent) { // [START gkehub_v1beta1_generated_GkeHubMembershipService_ListMemberships_async] /** + * This snippet has been automatically generated and should be regarded as a code template only. + * It will require modifications to work. + * It may require correct/in-range values for request initialization. * TODO(developer): Uncomment these variables before running the sample. */ /** diff --git a/packages/google-cloud-gkehub/samples/generated/v1beta1/gke_hub_membership_service.update_membership.js b/packages/google-cloud-gkehub/samples/generated/v1beta1/gke_hub_membership_service.update_membership.js index 84e93fe40cb..27eecf66532 100644 --- a/packages/google-cloud-gkehub/samples/generated/v1beta1/gke_hub_membership_service.update_membership.js +++ b/packages/google-cloud-gkehub/samples/generated/v1beta1/gke_hub_membership_service.update_membership.js @@ -23,6 +23,9 @@ function main(name, updateMask, resource) { // [START gkehub_v1beta1_generated_GkeHubMembershipService_UpdateMembership_async] /** + * This snippet has been automatically generated and should be regarded as a code template only. + * It will require modifications to work. + * It may require correct/in-range values for request initialization. * TODO(developer): Uncomment these variables before running the sample. */ /** diff --git a/packages/google-cloud-gkehub/samples/generated/v1beta1/gke_hub_membership_service.validate_exclusivity.js b/packages/google-cloud-gkehub/samples/generated/v1beta1/gke_hub_membership_service.validate_exclusivity.js index 37d2d0636f9..6219cf35412 100644 --- a/packages/google-cloud-gkehub/samples/generated/v1beta1/gke_hub_membership_service.validate_exclusivity.js +++ b/packages/google-cloud-gkehub/samples/generated/v1beta1/gke_hub_membership_service.validate_exclusivity.js @@ -23,6 +23,9 @@ function main(parent, intendedMembership) { // [START gkehub_v1beta1_generated_GkeHubMembershipService_ValidateExclusivity_async] /** + * This snippet has been automatically generated and should be regarded as a code template only. + * It will require modifications to work. + * It may require correct/in-range values for request initialization. * TODO(developer): Uncomment these variables before running the sample. */ /** diff --git a/packages/google-cloud-gkehub/samples/generated/v1beta1/snippet_metadata.google.cloud.gkehub.v1beta1.json b/packages/google-cloud-gkehub/samples/generated/v1beta1/snippet_metadata.google.cloud.gkehub.v1beta1.json index a4b714d0e49..bf9f08bb04a 100644 --- a/packages/google-cloud-gkehub/samples/generated/v1beta1/snippet_metadata.google.cloud.gkehub.v1beta1.json +++ b/packages/google-cloud-gkehub/samples/generated/v1beta1/snippet_metadata.google.cloud.gkehub.v1beta1.json @@ -22,7 +22,7 @@ "segments": [ { "start": 25, - "end": 84, + "end": 87, "type": "FULL" } ], @@ -78,7 +78,7 @@ "segments": [ { "start": 25, - "end": 51, + "end": 54, "type": "FULL" } ], @@ -118,7 +118,7 @@ "segments": [ { "start": 25, - "end": 82, + "end": 85, "type": "FULL" } ], @@ -170,7 +170,7 @@ "segments": [ { "start": 25, - "end": 66, + "end": 69, "type": "FULL" } ], @@ -214,7 +214,7 @@ "segments": [ { "start": 25, - "end": 84, + "end": 87, "type": "FULL" } ], @@ -266,7 +266,7 @@ "segments": [ { "start": 25, - "end": 73, + "end": 76, "type": "FULL" } ], @@ -326,7 +326,7 @@ "segments": [ { "start": 25, - "end": 62, + "end": 65, "type": "FULL" } ], @@ -374,7 +374,7 @@ "segments": [ { "start": 25, - "end": 63, + "end": 66, "type": "FULL" } ], diff --git a/packages/google-cloud-gkehub/src/v1/gke_hub_client.ts b/packages/google-cloud-gkehub/src/v1/gke_hub_client.ts index e47bbaeb652..af5b95d5d6a 100644 --- a/packages/google-cloud-gkehub/src/v1/gke_hub_client.ts +++ b/packages/google-cloud-gkehub/src/v1/gke_hub_client.ts @@ -30,7 +30,6 @@ import { } from 'google-gax'; import {Transform} from 'stream'; -import {RequestType} from 'google-gax/build/src/apitypes'; import * as protos from '../../protos/protos'; import jsonProtos = require('../../protos/protos.json'); /** @@ -435,7 +434,8 @@ export class GkeHubClient { const apiCall = this._gaxModule.createApiCall( callPromise, this._defaults[methodName], - descriptor + descriptor, + this._opts.fallback ); this.innerApiCalls[methodName] = apiCall; @@ -950,7 +950,7 @@ export class GkeHubClient { const decodeOperation = new gax.Operation( operation, this.descriptors.longrunning.createMembership, - gax.createDefaultBackoffSettings() + this._gaxModule.createDefaultBackoffSettings() ); return decodeOperation as LROperation< protos.google.cloud.gkehub.v1.Membership, @@ -1106,7 +1106,7 @@ export class GkeHubClient { const decodeOperation = new gax.Operation( operation, this.descriptors.longrunning.createFeature, - gax.createDefaultBackoffSettings() + this._gaxModule.createDefaultBackoffSettings() ); return decodeOperation as LROperation< protos.google.cloud.gkehub.v1.Feature, @@ -1262,7 +1262,7 @@ export class GkeHubClient { const decodeOperation = new gax.Operation( operation, this.descriptors.longrunning.deleteMembership, - gax.createDefaultBackoffSettings() + this._gaxModule.createDefaultBackoffSettings() ); return decodeOperation as LROperation< protos.google.protobuf.Empty, @@ -1418,7 +1418,7 @@ export class GkeHubClient { const decodeOperation = new gax.Operation( operation, this.descriptors.longrunning.deleteFeature, - gax.createDefaultBackoffSettings() + this._gaxModule.createDefaultBackoffSettings() ); return decodeOperation as LROperation< protos.google.protobuf.Empty, @@ -1581,7 +1581,7 @@ export class GkeHubClient { const decodeOperation = new gax.Operation( operation, this.descriptors.longrunning.updateMembership, - gax.createDefaultBackoffSettings() + this._gaxModule.createDefaultBackoffSettings() ); return decodeOperation as LROperation< protos.google.cloud.gkehub.v1.Membership, @@ -1744,7 +1744,7 @@ export class GkeHubClient { const decodeOperation = new gax.Operation( operation, this.descriptors.longrunning.updateFeature, - gax.createDefaultBackoffSettings() + this._gaxModule.createDefaultBackoffSettings() ); return decodeOperation as LROperation< protos.google.cloud.gkehub.v1.Feature, @@ -1940,7 +1940,7 @@ export class GkeHubClient { const callSettings = defaultCallSettings.merge(options); this.initialize(); return this.descriptors.page.listMemberships.createStream( - this.innerApiCalls.listMemberships as gax.GaxCall, + this.innerApiCalls.listMemberships as GaxCall, request, callSettings ); @@ -2017,7 +2017,7 @@ export class GkeHubClient { this.initialize(); return this.descriptors.page.listMemberships.asyncIterate( this.innerApiCalls['listMemberships'] as GaxCall, - request as unknown as RequestType, + request as {}, callSettings ) as AsyncIterable; } @@ -2202,7 +2202,7 @@ export class GkeHubClient { const callSettings = defaultCallSettings.merge(options); this.initialize(); return this.descriptors.page.listFeatures.createStream( - this.innerApiCalls.listFeatures as gax.GaxCall, + this.innerApiCalls.listFeatures as GaxCall, request, callSettings ); @@ -2275,7 +2275,7 @@ export class GkeHubClient { this.initialize(); return this.descriptors.page.listFeatures.asyncIterate( this.innerApiCalls['listFeatures'] as GaxCall, - request as unknown as RequestType, + request as {}, callSettings ) as AsyncIterable; } diff --git a/packages/google-cloud-gkehub/src/v1alpha/gke_hub_client.ts b/packages/google-cloud-gkehub/src/v1alpha/gke_hub_client.ts index b007d343eef..3ba8c139102 100644 --- a/packages/google-cloud-gkehub/src/v1alpha/gke_hub_client.ts +++ b/packages/google-cloud-gkehub/src/v1alpha/gke_hub_client.ts @@ -30,7 +30,6 @@ import { } from 'google-gax'; import {Transform} from 'stream'; -import {RequestType} from 'google-gax/build/src/apitypes'; import * as protos from '../../protos/protos'; import jsonProtos = require('../../protos/protos.json'); /** @@ -382,7 +381,8 @@ export class GkeHubClient { const apiCall = this._gaxModule.createApiCall( callPromise, this._defaults[methodName], - descriptor + descriptor, + this._opts.fallback ); this.innerApiCalls[methodName] = apiCall; @@ -680,7 +680,7 @@ export class GkeHubClient { const decodeOperation = new gax.Operation( operation, this.descriptors.longrunning.createFeature, - gax.createDefaultBackoffSettings() + this._gaxModule.createDefaultBackoffSettings() ); return decodeOperation as LROperation< protos.google.cloud.gkehub.v1alpha.Feature, @@ -836,7 +836,7 @@ export class GkeHubClient { const decodeOperation = new gax.Operation( operation, this.descriptors.longrunning.deleteFeature, - gax.createDefaultBackoffSettings() + this._gaxModule.createDefaultBackoffSettings() ); return decodeOperation as LROperation< protos.google.protobuf.Empty, @@ -999,7 +999,7 @@ export class GkeHubClient { const decodeOperation = new gax.Operation( operation, this.descriptors.longrunning.updateFeature, - gax.createDefaultBackoffSettings() + this._gaxModule.createDefaultBackoffSettings() ); return decodeOperation as LROperation< protos.google.cloud.gkehub.v1alpha.Feature, @@ -1193,7 +1193,7 @@ export class GkeHubClient { const callSettings = defaultCallSettings.merge(options); this.initialize(); return this.descriptors.page.listFeatures.createStream( - this.innerApiCalls.listFeatures as gax.GaxCall, + this.innerApiCalls.listFeatures as GaxCall, request, callSettings ); @@ -1266,7 +1266,7 @@ export class GkeHubClient { this.initialize(); return this.descriptors.page.listFeatures.asyncIterate( this.innerApiCalls['listFeatures'] as GaxCall, - request as unknown as RequestType, + request as {}, callSettings ) as AsyncIterable; } diff --git a/packages/google-cloud-gkehub/src/v1alpha2/gke_hub_client.ts b/packages/google-cloud-gkehub/src/v1alpha2/gke_hub_client.ts index 7ebb8d21823..e315ef2ba4d 100644 --- a/packages/google-cloud-gkehub/src/v1alpha2/gke_hub_client.ts +++ b/packages/google-cloud-gkehub/src/v1alpha2/gke_hub_client.ts @@ -30,7 +30,6 @@ import { } from 'google-gax'; import {Transform} from 'stream'; -import {RequestType} from 'google-gax/build/src/apitypes'; import * as protos from '../../protos/protos'; import jsonProtos = require('../../protos/protos.json'); /** @@ -367,7 +366,8 @@ export class GkeHubClient { const apiCall = this._gaxModule.createApiCall( callPromise, this._defaults[methodName], - descriptor + descriptor, + this._opts.fallback ); this.innerApiCalls[methodName] = apiCall; @@ -895,7 +895,7 @@ export class GkeHubClient { const decodeOperation = new gax.Operation( operation, this.descriptors.longrunning.createMembership, - gax.createDefaultBackoffSettings() + this._gaxModule.createDefaultBackoffSettings() ); return decodeOperation as LROperation< protos.google.cloud.gkehub.v1alpha2.Membership, @@ -1037,7 +1037,7 @@ export class GkeHubClient { const decodeOperation = new gax.Operation( operation, this.descriptors.longrunning.deleteMembership, - gax.createDefaultBackoffSettings() + this._gaxModule.createDefaultBackoffSettings() ); return decodeOperation as LROperation< protos.google.protobuf.Empty, @@ -1186,7 +1186,7 @@ export class GkeHubClient { const decodeOperation = new gax.Operation( operation, this.descriptors.longrunning.updateMembership, - gax.createDefaultBackoffSettings() + this._gaxModule.createDefaultBackoffSettings() ); return decodeOperation as LROperation< protos.google.cloud.gkehub.v1alpha2.Membership, @@ -1388,7 +1388,7 @@ export class GkeHubClient { const callSettings = defaultCallSettings.merge(options); this.initialize(); return this.descriptors.page.listMemberships.createStream( - this.innerApiCalls.listMemberships as gax.GaxCall, + this.innerApiCalls.listMemberships as GaxCall, request, callSettings ); @@ -1465,7 +1465,7 @@ export class GkeHubClient { this.initialize(); return this.descriptors.page.listMemberships.asyncIterate( this.innerApiCalls['listMemberships'] as GaxCall, - request as unknown as RequestType, + request as {}, callSettings ) as AsyncIterable; } diff --git a/packages/google-cloud-gkehub/src/v1beta/gke_hub_client.ts b/packages/google-cloud-gkehub/src/v1beta/gke_hub_client.ts index 814aca54bbd..f4211ca047b 100644 --- a/packages/google-cloud-gkehub/src/v1beta/gke_hub_client.ts +++ b/packages/google-cloud-gkehub/src/v1beta/gke_hub_client.ts @@ -30,7 +30,6 @@ import { } from 'google-gax'; import {Transform} from 'stream'; -import {RequestType} from 'google-gax/build/src/apitypes'; import * as protos from '../../protos/protos'; import jsonProtos = require('../../protos/protos.json'); /** @@ -382,7 +381,8 @@ export class GkeHubClient { const apiCall = this._gaxModule.createApiCall( callPromise, this._defaults[methodName], - descriptor + descriptor, + this._opts.fallback ); this.innerApiCalls[methodName] = apiCall; @@ -680,7 +680,7 @@ export class GkeHubClient { const decodeOperation = new gax.Operation( operation, this.descriptors.longrunning.createFeature, - gax.createDefaultBackoffSettings() + this._gaxModule.createDefaultBackoffSettings() ); return decodeOperation as LROperation< protos.google.cloud.gkehub.v1beta.Feature, @@ -836,7 +836,7 @@ export class GkeHubClient { const decodeOperation = new gax.Operation( operation, this.descriptors.longrunning.deleteFeature, - gax.createDefaultBackoffSettings() + this._gaxModule.createDefaultBackoffSettings() ); return decodeOperation as LROperation< protos.google.protobuf.Empty, @@ -999,7 +999,7 @@ export class GkeHubClient { const decodeOperation = new gax.Operation( operation, this.descriptors.longrunning.updateFeature, - gax.createDefaultBackoffSettings() + this._gaxModule.createDefaultBackoffSettings() ); return decodeOperation as LROperation< protos.google.cloud.gkehub.v1beta.Feature, @@ -1193,7 +1193,7 @@ export class GkeHubClient { const callSettings = defaultCallSettings.merge(options); this.initialize(); return this.descriptors.page.listFeatures.createStream( - this.innerApiCalls.listFeatures as gax.GaxCall, + this.innerApiCalls.listFeatures as GaxCall, request, callSettings ); @@ -1266,7 +1266,7 @@ export class GkeHubClient { this.initialize(); return this.descriptors.page.listFeatures.asyncIterate( this.innerApiCalls['listFeatures'] as GaxCall, - request as unknown as RequestType, + request as {}, callSettings ) as AsyncIterable; } diff --git a/packages/google-cloud-gkehub/src/v1beta1/gke_hub_membership_service_client.ts b/packages/google-cloud-gkehub/src/v1beta1/gke_hub_membership_service_client.ts index 7d73a69534b..d3bfc73408e 100644 --- a/packages/google-cloud-gkehub/src/v1beta1/gke_hub_membership_service_client.ts +++ b/packages/google-cloud-gkehub/src/v1beta1/gke_hub_membership_service_client.ts @@ -34,7 +34,6 @@ import { } from 'google-gax'; import {Transform} from 'stream'; -import {RequestType} from 'google-gax/build/src/apitypes'; import * as protos from '../../protos/protos'; import jsonProtos = require('../../protos/protos.json'); /** @@ -379,7 +378,8 @@ export class GkeHubMembershipServiceClient { const apiCall = this._gaxModule.createApiCall( callPromise, this._defaults[methodName], - descriptor + descriptor, + this._opts.fallback ); this.innerApiCalls[methodName] = apiCall; @@ -1038,7 +1038,7 @@ export class GkeHubMembershipServiceClient { const decodeOperation = new gax.Operation( operation, this.descriptors.longrunning.createMembership, - gax.createDefaultBackoffSettings() + this._gaxModule.createDefaultBackoffSettings() ); return decodeOperation as LROperation< protos.google.cloud.gkehub.v1beta1.Membership, @@ -1194,7 +1194,7 @@ export class GkeHubMembershipServiceClient { const decodeOperation = new gax.Operation( operation, this.descriptors.longrunning.deleteMembership, - gax.createDefaultBackoffSettings() + this._gaxModule.createDefaultBackoffSettings() ); return decodeOperation as LROperation< protos.google.protobuf.Empty, @@ -1358,7 +1358,7 @@ export class GkeHubMembershipServiceClient { const decodeOperation = new gax.Operation( operation, this.descriptors.longrunning.updateMembership, - gax.createDefaultBackoffSettings() + this._gaxModule.createDefaultBackoffSettings() ); return decodeOperation as LROperation< protos.google.cloud.gkehub.v1beta1.Membership, @@ -1560,7 +1560,7 @@ export class GkeHubMembershipServiceClient { const callSettings = defaultCallSettings.merge(options); this.initialize(); return this.descriptors.page.listMemberships.createStream( - this.innerApiCalls.listMemberships as gax.GaxCall, + this.innerApiCalls.listMemberships as GaxCall, request, callSettings ); @@ -1637,7 +1637,7 @@ export class GkeHubMembershipServiceClient { this.initialize(); return this.descriptors.page.listMemberships.asyncIterate( this.innerApiCalls['listMemberships'] as GaxCall, - request as unknown as RequestType, + request as {}, callSettings ) as AsyncIterable; } diff --git a/packages/google-cloud-gkehub/test/gapic_gke_hub_membership_service_v1beta1.ts b/packages/google-cloud-gkehub/test/gapic_gke_hub_membership_service_v1beta1.ts index 5ca082163dd..fe30a4aba3f 100644 --- a/packages/google-cloud-gkehub/test/gapic_gke_hub_membership_service_v1beta1.ts +++ b/packages/google-cloud-gkehub/test/gapic_gke_hub_membership_service_v1beta1.ts @@ -151,111 +151,126 @@ function stubAsyncIterationCall( } describe('v1beta1.GkeHubMembershipServiceClient', () => { - it('has servicePath', () => { - const servicePath = - gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient - .servicePath; - assert(servicePath); - }); + describe('Common methods', () => { + it('has servicePath', () => { + const servicePath = + gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient + .servicePath; + assert(servicePath); + }); - it('has apiEndpoint', () => { - const apiEndpoint = - gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient - .apiEndpoint; - assert(apiEndpoint); - }); + it('has apiEndpoint', () => { + const apiEndpoint = + gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient + .apiEndpoint; + assert(apiEndpoint); + }); - it('has port', () => { - const port = - gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient.port; - assert(port); - assert(typeof port === 'number'); - }); + it('has port', () => { + const port = + gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient + .port; + assert(port); + assert(typeof port === 'number'); + }); - it('should create a client with no option', () => { - const client = - new gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient(); - assert(client); - }); + it('should create a client with no option', () => { + const client = + new gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient(); + assert(client); + }); - it('should create a client with gRPC fallback', () => { - const client = - new gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient({ - fallback: true, - }); - assert(client); - }); + it('should create a client with gRPC fallback', () => { + const client = + new gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient( + { + fallback: true, + } + ); + assert(client); + }); - it('has initialize method and supports deferred initialization', async () => { - const client = - new gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - assert.strictEqual(client.gkeHubMembershipServiceStub, undefined); - await client.initialize(); - assert(client.gkeHubMembershipServiceStub); - }); + it('has initialize method and supports deferred initialization', async () => { + const client = + new gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient( + { + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + } + ); + assert.strictEqual(client.gkeHubMembershipServiceStub, undefined); + await client.initialize(); + assert(client.gkeHubMembershipServiceStub); + }); - it('has close method for the initialized client', done => { - const client = - new gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', + it('has close method for the initialized client', done => { + const client = + new gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient( + { + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + } + ); + client.initialize(); + assert(client.gkeHubMembershipServiceStub); + client.close().then(() => { + done(); }); - client.initialize(); - assert(client.gkeHubMembershipServiceStub); - client.close().then(() => { - done(); }); - }); - it('has close method for the non-initialized client', done => { - const client = - new gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', + it('has close method for the non-initialized client', done => { + const client = + new gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient( + { + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + } + ); + assert.strictEqual(client.gkeHubMembershipServiceStub, undefined); + client.close().then(() => { + done(); }); - assert.strictEqual(client.gkeHubMembershipServiceStub, undefined); - client.close().then(() => { - done(); }); - }); - it('has getProjectId method', async () => { - const fakeProjectId = 'fake-project-id'; - const client = - new gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - client.auth.getProjectId = sinon.stub().resolves(fakeProjectId); - const result = await client.getProjectId(); - assert.strictEqual(result, fakeProjectId); - assert((client.auth.getProjectId as SinonStub).calledWithExactly()); - }); + it('has getProjectId method', async () => { + const fakeProjectId = 'fake-project-id'; + const client = + new gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient( + { + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + } + ); + client.auth.getProjectId = sinon.stub().resolves(fakeProjectId); + const result = await client.getProjectId(); + assert.strictEqual(result, fakeProjectId); + assert((client.auth.getProjectId as SinonStub).calledWithExactly()); + }); - it('has getProjectId method with callback', async () => { - const fakeProjectId = 'fake-project-id'; - const client = - new gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - client.auth.getProjectId = sinon - .stub() - .callsArgWith(0, null, fakeProjectId); - const promise = new Promise((resolve, reject) => { - client.getProjectId((err?: Error | null, projectId?: string | null) => { - if (err) { - reject(err); - } else { - resolve(projectId); - } + it('has getProjectId method with callback', async () => { + const fakeProjectId = 'fake-project-id'; + const client = + new gkehubmembershipserviceModule.v1beta1.GkeHubMembershipServiceClient( + { + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + } + ); + client.auth.getProjectId = sinon + .stub() + .callsArgWith(0, null, fakeProjectId); + const promise = new Promise((resolve, reject) => { + client.getProjectId((err?: Error | null, projectId?: string | null) => { + if (err) { + reject(err); + } else { + resolve(projectId); + } + }); }); + const result = await promise; + assert.strictEqual(result, fakeProjectId); }); - const result = await promise; - assert.strictEqual(result, fakeProjectId); }); describe('getMembership', () => { diff --git a/packages/google-cloud-gkehub/test/gapic_gke_hub_v1.ts b/packages/google-cloud-gkehub/test/gapic_gke_hub_v1.ts index ca50dc18817..2ecdc3b1742 100644 --- a/packages/google-cloud-gkehub/test/gapic_gke_hub_v1.ts +++ b/packages/google-cloud-gkehub/test/gapic_gke_hub_v1.ts @@ -145,99 +145,101 @@ function stubAsyncIterationCall( } describe('v1.GkeHubClient', () => { - it('has servicePath', () => { - const servicePath = gkehubModule.v1.GkeHubClient.servicePath; - assert(servicePath); - }); - - it('has apiEndpoint', () => { - const apiEndpoint = gkehubModule.v1.GkeHubClient.apiEndpoint; - assert(apiEndpoint); - }); - - it('has port', () => { - const port = gkehubModule.v1.GkeHubClient.port; - assert(port); - assert(typeof port === 'number'); - }); + describe('Common methods', () => { + it('has servicePath', () => { + const servicePath = gkehubModule.v1.GkeHubClient.servicePath; + assert(servicePath); + }); - it('should create a client with no option', () => { - const client = new gkehubModule.v1.GkeHubClient(); - assert(client); - }); + it('has apiEndpoint', () => { + const apiEndpoint = gkehubModule.v1.GkeHubClient.apiEndpoint; + assert(apiEndpoint); + }); - it('should create a client with gRPC fallback', () => { - const client = new gkehubModule.v1.GkeHubClient({ - fallback: true, + it('has port', () => { + const port = gkehubModule.v1.GkeHubClient.port; + assert(port); + assert(typeof port === 'number'); }); - assert(client); - }); - it('has initialize method and supports deferred initialization', async () => { - const client = new gkehubModule.v1.GkeHubClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', + it('should create a client with no option', () => { + const client = new gkehubModule.v1.GkeHubClient(); + assert(client); }); - assert.strictEqual(client.gkeHubStub, undefined); - await client.initialize(); - assert(client.gkeHubStub); - }); - it('has close method for the initialized client', done => { - const client = new gkehubModule.v1.GkeHubClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', + it('should create a client with gRPC fallback', () => { + const client = new gkehubModule.v1.GkeHubClient({ + fallback: true, + }); + assert(client); }); - client.initialize(); - assert(client.gkeHubStub); - client.close().then(() => { - done(); + + it('has initialize method and supports deferred initialization', async () => { + const client = new gkehubModule.v1.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + assert.strictEqual(client.gkeHubStub, undefined); + await client.initialize(); + assert(client.gkeHubStub); }); - }); - it('has close method for the non-initialized client', done => { - const client = new gkehubModule.v1.GkeHubClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', + it('has close method for the initialized client', done => { + const client = new gkehubModule.v1.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + assert(client.gkeHubStub); + client.close().then(() => { + done(); + }); }); - assert.strictEqual(client.gkeHubStub, undefined); - client.close().then(() => { - done(); + + it('has close method for the non-initialized client', done => { + const client = new gkehubModule.v1.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + assert.strictEqual(client.gkeHubStub, undefined); + client.close().then(() => { + done(); + }); }); - }); - it('has getProjectId method', async () => { - const fakeProjectId = 'fake-project-id'; - const client = new gkehubModule.v1.GkeHubClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', + it('has getProjectId method', async () => { + const fakeProjectId = 'fake-project-id'; + const client = new gkehubModule.v1.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.auth.getProjectId = sinon.stub().resolves(fakeProjectId); + const result = await client.getProjectId(); + assert.strictEqual(result, fakeProjectId); + assert((client.auth.getProjectId as SinonStub).calledWithExactly()); }); - client.auth.getProjectId = sinon.stub().resolves(fakeProjectId); - const result = await client.getProjectId(); - assert.strictEqual(result, fakeProjectId); - assert((client.auth.getProjectId as SinonStub).calledWithExactly()); - }); - it('has getProjectId method with callback', async () => { - const fakeProjectId = 'fake-project-id'; - const client = new gkehubModule.v1.GkeHubClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', - }); - client.auth.getProjectId = sinon - .stub() - .callsArgWith(0, null, fakeProjectId); - const promise = new Promise((resolve, reject) => { - client.getProjectId((err?: Error | null, projectId?: string | null) => { - if (err) { - reject(err); - } else { - resolve(projectId); - } + it('has getProjectId method with callback', async () => { + const fakeProjectId = 'fake-project-id'; + const client = new gkehubModule.v1.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.auth.getProjectId = sinon + .stub() + .callsArgWith(0, null, fakeProjectId); + const promise = new Promise((resolve, reject) => { + client.getProjectId((err?: Error | null, projectId?: string | null) => { + if (err) { + reject(err); + } else { + resolve(projectId); + } + }); }); + const result = await promise; + assert.strictEqual(result, fakeProjectId); }); - const result = await promise; - assert.strictEqual(result, fakeProjectId); }); describe('getMembership', () => { diff --git a/packages/google-cloud-gkehub/test/gapic_gke_hub_v1alpha.ts b/packages/google-cloud-gkehub/test/gapic_gke_hub_v1alpha.ts index 356564b853f..bd50c781006 100644 --- a/packages/google-cloud-gkehub/test/gapic_gke_hub_v1alpha.ts +++ b/packages/google-cloud-gkehub/test/gapic_gke_hub_v1alpha.ts @@ -145,99 +145,101 @@ function stubAsyncIterationCall( } describe('v1alpha.GkeHubClient', () => { - it('has servicePath', () => { - const servicePath = gkehubModule.v1alpha.GkeHubClient.servicePath; - assert(servicePath); - }); - - it('has apiEndpoint', () => { - const apiEndpoint = gkehubModule.v1alpha.GkeHubClient.apiEndpoint; - assert(apiEndpoint); - }); - - it('has port', () => { - const port = gkehubModule.v1alpha.GkeHubClient.port; - assert(port); - assert(typeof port === 'number'); - }); - - it('should create a client with no option', () => { - const client = new gkehubModule.v1alpha.GkeHubClient(); - assert(client); - }); + describe('Common methods', () => { + it('has servicePath', () => { + const servicePath = gkehubModule.v1alpha.GkeHubClient.servicePath; + assert(servicePath); + }); - it('should create a client with gRPC fallback', () => { - const client = new gkehubModule.v1alpha.GkeHubClient({ - fallback: true, + it('has apiEndpoint', () => { + const apiEndpoint = gkehubModule.v1alpha.GkeHubClient.apiEndpoint; + assert(apiEndpoint); }); - assert(client); - }); - it('has initialize method and supports deferred initialization', async () => { - const client = new gkehubModule.v1alpha.GkeHubClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', + it('has port', () => { + const port = gkehubModule.v1alpha.GkeHubClient.port; + assert(port); + assert(typeof port === 'number'); }); - assert.strictEqual(client.gkeHubStub, undefined); - await client.initialize(); - assert(client.gkeHubStub); - }); - it('has close method for the initialized client', done => { - const client = new gkehubModule.v1alpha.GkeHubClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', + it('should create a client with no option', () => { + const client = new gkehubModule.v1alpha.GkeHubClient(); + assert(client); }); - client.initialize(); - assert(client.gkeHubStub); - client.close().then(() => { - done(); + + it('should create a client with gRPC fallback', () => { + const client = new gkehubModule.v1alpha.GkeHubClient({ + fallback: true, + }); + assert(client); }); - }); - it('has close method for the non-initialized client', done => { - const client = new gkehubModule.v1alpha.GkeHubClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', + it('has initialize method and supports deferred initialization', async () => { + const client = new gkehubModule.v1alpha.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + assert.strictEqual(client.gkeHubStub, undefined); + await client.initialize(); + assert(client.gkeHubStub); }); - assert.strictEqual(client.gkeHubStub, undefined); - client.close().then(() => { - done(); + + it('has close method for the initialized client', done => { + const client = new gkehubModule.v1alpha.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + assert(client.gkeHubStub); + client.close().then(() => { + done(); + }); }); - }); - it('has getProjectId method', async () => { - const fakeProjectId = 'fake-project-id'; - const client = new gkehubModule.v1alpha.GkeHubClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', + it('has close method for the non-initialized client', done => { + const client = new gkehubModule.v1alpha.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + assert.strictEqual(client.gkeHubStub, undefined); + client.close().then(() => { + done(); + }); }); - client.auth.getProjectId = sinon.stub().resolves(fakeProjectId); - const result = await client.getProjectId(); - assert.strictEqual(result, fakeProjectId); - assert((client.auth.getProjectId as SinonStub).calledWithExactly()); - }); - it('has getProjectId method with callback', async () => { - const fakeProjectId = 'fake-project-id'; - const client = new gkehubModule.v1alpha.GkeHubClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', + it('has getProjectId method', async () => { + const fakeProjectId = 'fake-project-id'; + const client = new gkehubModule.v1alpha.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.auth.getProjectId = sinon.stub().resolves(fakeProjectId); + const result = await client.getProjectId(); + assert.strictEqual(result, fakeProjectId); + assert((client.auth.getProjectId as SinonStub).calledWithExactly()); }); - client.auth.getProjectId = sinon - .stub() - .callsArgWith(0, null, fakeProjectId); - const promise = new Promise((resolve, reject) => { - client.getProjectId((err?: Error | null, projectId?: string | null) => { - if (err) { - reject(err); - } else { - resolve(projectId); - } + + it('has getProjectId method with callback', async () => { + const fakeProjectId = 'fake-project-id'; + const client = new gkehubModule.v1alpha.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.auth.getProjectId = sinon + .stub() + .callsArgWith(0, null, fakeProjectId); + const promise = new Promise((resolve, reject) => { + client.getProjectId((err?: Error | null, projectId?: string | null) => { + if (err) { + reject(err); + } else { + resolve(projectId); + } + }); }); + const result = await promise; + assert.strictEqual(result, fakeProjectId); }); - const result = await promise; - assert.strictEqual(result, fakeProjectId); }); describe('getFeature', () => { diff --git a/packages/google-cloud-gkehub/test/gapic_gke_hub_v1alpha2.ts b/packages/google-cloud-gkehub/test/gapic_gke_hub_v1alpha2.ts index 08667c24b2d..aea0b3b748b 100644 --- a/packages/google-cloud-gkehub/test/gapic_gke_hub_v1alpha2.ts +++ b/packages/google-cloud-gkehub/test/gapic_gke_hub_v1alpha2.ts @@ -145,99 +145,101 @@ function stubAsyncIterationCall( } describe('v1alpha2.GkeHubClient', () => { - it('has servicePath', () => { - const servicePath = gkehubModule.v1alpha2.GkeHubClient.servicePath; - assert(servicePath); - }); - - it('has apiEndpoint', () => { - const apiEndpoint = gkehubModule.v1alpha2.GkeHubClient.apiEndpoint; - assert(apiEndpoint); - }); - - it('has port', () => { - const port = gkehubModule.v1alpha2.GkeHubClient.port; - assert(port); - assert(typeof port === 'number'); - }); - - it('should create a client with no option', () => { - const client = new gkehubModule.v1alpha2.GkeHubClient(); - assert(client); - }); + describe('Common methods', () => { + it('has servicePath', () => { + const servicePath = gkehubModule.v1alpha2.GkeHubClient.servicePath; + assert(servicePath); + }); - it('should create a client with gRPC fallback', () => { - const client = new gkehubModule.v1alpha2.GkeHubClient({ - fallback: true, + it('has apiEndpoint', () => { + const apiEndpoint = gkehubModule.v1alpha2.GkeHubClient.apiEndpoint; + assert(apiEndpoint); }); - assert(client); - }); - it('has initialize method and supports deferred initialization', async () => { - const client = new gkehubModule.v1alpha2.GkeHubClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', + it('has port', () => { + const port = gkehubModule.v1alpha2.GkeHubClient.port; + assert(port); + assert(typeof port === 'number'); }); - assert.strictEqual(client.gkeHubStub, undefined); - await client.initialize(); - assert(client.gkeHubStub); - }); - it('has close method for the initialized client', done => { - const client = new gkehubModule.v1alpha2.GkeHubClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', + it('should create a client with no option', () => { + const client = new gkehubModule.v1alpha2.GkeHubClient(); + assert(client); }); - client.initialize(); - assert(client.gkeHubStub); - client.close().then(() => { - done(); + + it('should create a client with gRPC fallback', () => { + const client = new gkehubModule.v1alpha2.GkeHubClient({ + fallback: true, + }); + assert(client); }); - }); - it('has close method for the non-initialized client', done => { - const client = new gkehubModule.v1alpha2.GkeHubClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', + it('has initialize method and supports deferred initialization', async () => { + const client = new gkehubModule.v1alpha2.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + assert.strictEqual(client.gkeHubStub, undefined); + await client.initialize(); + assert(client.gkeHubStub); }); - assert.strictEqual(client.gkeHubStub, undefined); - client.close().then(() => { - done(); + + it('has close method for the initialized client', done => { + const client = new gkehubModule.v1alpha2.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + assert(client.gkeHubStub); + client.close().then(() => { + done(); + }); }); - }); - it('has getProjectId method', async () => { - const fakeProjectId = 'fake-project-id'; - const client = new gkehubModule.v1alpha2.GkeHubClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', + it('has close method for the non-initialized client', done => { + const client = new gkehubModule.v1alpha2.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + assert.strictEqual(client.gkeHubStub, undefined); + client.close().then(() => { + done(); + }); }); - client.auth.getProjectId = sinon.stub().resolves(fakeProjectId); - const result = await client.getProjectId(); - assert.strictEqual(result, fakeProjectId); - assert((client.auth.getProjectId as SinonStub).calledWithExactly()); - }); - it('has getProjectId method with callback', async () => { - const fakeProjectId = 'fake-project-id'; - const client = new gkehubModule.v1alpha2.GkeHubClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', + it('has getProjectId method', async () => { + const fakeProjectId = 'fake-project-id'; + const client = new gkehubModule.v1alpha2.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.auth.getProjectId = sinon.stub().resolves(fakeProjectId); + const result = await client.getProjectId(); + assert.strictEqual(result, fakeProjectId); + assert((client.auth.getProjectId as SinonStub).calledWithExactly()); }); - client.auth.getProjectId = sinon - .stub() - .callsArgWith(0, null, fakeProjectId); - const promise = new Promise((resolve, reject) => { - client.getProjectId((err?: Error | null, projectId?: string | null) => { - if (err) { - reject(err); - } else { - resolve(projectId); - } + + it('has getProjectId method with callback', async () => { + const fakeProjectId = 'fake-project-id'; + const client = new gkehubModule.v1alpha2.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.auth.getProjectId = sinon + .stub() + .callsArgWith(0, null, fakeProjectId); + const promise = new Promise((resolve, reject) => { + client.getProjectId((err?: Error | null, projectId?: string | null) => { + if (err) { + reject(err); + } else { + resolve(projectId); + } + }); }); + const result = await promise; + assert.strictEqual(result, fakeProjectId); }); - const result = await promise; - assert.strictEqual(result, fakeProjectId); }); describe('getMembership', () => { diff --git a/packages/google-cloud-gkehub/test/gapic_gke_hub_v1beta.ts b/packages/google-cloud-gkehub/test/gapic_gke_hub_v1beta.ts index 6eb39ebc3b9..6de7a0b348c 100644 --- a/packages/google-cloud-gkehub/test/gapic_gke_hub_v1beta.ts +++ b/packages/google-cloud-gkehub/test/gapic_gke_hub_v1beta.ts @@ -145,99 +145,101 @@ function stubAsyncIterationCall( } describe('v1beta.GkeHubClient', () => { - it('has servicePath', () => { - const servicePath = gkehubModule.v1beta.GkeHubClient.servicePath; - assert(servicePath); - }); - - it('has apiEndpoint', () => { - const apiEndpoint = gkehubModule.v1beta.GkeHubClient.apiEndpoint; - assert(apiEndpoint); - }); - - it('has port', () => { - const port = gkehubModule.v1beta.GkeHubClient.port; - assert(port); - assert(typeof port === 'number'); - }); - - it('should create a client with no option', () => { - const client = new gkehubModule.v1beta.GkeHubClient(); - assert(client); - }); + describe('Common methods', () => { + it('has servicePath', () => { + const servicePath = gkehubModule.v1beta.GkeHubClient.servicePath; + assert(servicePath); + }); - it('should create a client with gRPC fallback', () => { - const client = new gkehubModule.v1beta.GkeHubClient({ - fallback: true, + it('has apiEndpoint', () => { + const apiEndpoint = gkehubModule.v1beta.GkeHubClient.apiEndpoint; + assert(apiEndpoint); }); - assert(client); - }); - it('has initialize method and supports deferred initialization', async () => { - const client = new gkehubModule.v1beta.GkeHubClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', + it('has port', () => { + const port = gkehubModule.v1beta.GkeHubClient.port; + assert(port); + assert(typeof port === 'number'); }); - assert.strictEqual(client.gkeHubStub, undefined); - await client.initialize(); - assert(client.gkeHubStub); - }); - it('has close method for the initialized client', done => { - const client = new gkehubModule.v1beta.GkeHubClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', + it('should create a client with no option', () => { + const client = new gkehubModule.v1beta.GkeHubClient(); + assert(client); }); - client.initialize(); - assert(client.gkeHubStub); - client.close().then(() => { - done(); + + it('should create a client with gRPC fallback', () => { + const client = new gkehubModule.v1beta.GkeHubClient({ + fallback: true, + }); + assert(client); }); - }); - it('has close method for the non-initialized client', done => { - const client = new gkehubModule.v1beta.GkeHubClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', + it('has initialize method and supports deferred initialization', async () => { + const client = new gkehubModule.v1beta.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + assert.strictEqual(client.gkeHubStub, undefined); + await client.initialize(); + assert(client.gkeHubStub); }); - assert.strictEqual(client.gkeHubStub, undefined); - client.close().then(() => { - done(); + + it('has close method for the initialized client', done => { + const client = new gkehubModule.v1beta.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + assert(client.gkeHubStub); + client.close().then(() => { + done(); + }); }); - }); - it('has getProjectId method', async () => { - const fakeProjectId = 'fake-project-id'; - const client = new gkehubModule.v1beta.GkeHubClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', + it('has close method for the non-initialized client', done => { + const client = new gkehubModule.v1beta.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + assert.strictEqual(client.gkeHubStub, undefined); + client.close().then(() => { + done(); + }); }); - client.auth.getProjectId = sinon.stub().resolves(fakeProjectId); - const result = await client.getProjectId(); - assert.strictEqual(result, fakeProjectId); - assert((client.auth.getProjectId as SinonStub).calledWithExactly()); - }); - it('has getProjectId method with callback', async () => { - const fakeProjectId = 'fake-project-id'; - const client = new gkehubModule.v1beta.GkeHubClient({ - credentials: {client_email: 'bogus', private_key: 'bogus'}, - projectId: 'bogus', + it('has getProjectId method', async () => { + const fakeProjectId = 'fake-project-id'; + const client = new gkehubModule.v1beta.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.auth.getProjectId = sinon.stub().resolves(fakeProjectId); + const result = await client.getProjectId(); + assert.strictEqual(result, fakeProjectId); + assert((client.auth.getProjectId as SinonStub).calledWithExactly()); }); - client.auth.getProjectId = sinon - .stub() - .callsArgWith(0, null, fakeProjectId); - const promise = new Promise((resolve, reject) => { - client.getProjectId((err?: Error | null, projectId?: string | null) => { - if (err) { - reject(err); - } else { - resolve(projectId); - } + + it('has getProjectId method with callback', async () => { + const fakeProjectId = 'fake-project-id'; + const client = new gkehubModule.v1beta.GkeHubClient({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.auth.getProjectId = sinon + .stub() + .callsArgWith(0, null, fakeProjectId); + const promise = new Promise((resolve, reject) => { + client.getProjectId((err?: Error | null, projectId?: string | null) => { + if (err) { + reject(err); + } else { + resolve(projectId); + } + }); }); + const result = await promise; + assert.strictEqual(result, fakeProjectId); }); - const result = await promise; - assert.strictEqual(result, fakeProjectId); }); describe('getFeature', () => { From 5d6c06278b50d4474fd9db92c5eaf337c215de76 Mon Sep 17 00:00:00 2001 From: "gcf-owl-bot[bot]" <78513119+gcf-owl-bot[bot]@users.noreply.github.com> Date: Tue, 23 Aug 2022 07:32:12 +0000 Subject: [PATCH 82/92] fix: change import long to require (#164) Source-Link: https://github.com/googleapis/synthtool/commit/d229a1258999f599a90a9b674a1c5541e00db588 Post-Processor: gcr.io/cloud-devrel-public-resources/owlbot-nodejs:latest@sha256:74ab2b3c71ef27e6d8b69b1d0a0c9d31447777b79ac3cd4be82c265b45f37e5e --- .../google-cloud-gkehub/protos/protos.d.ts | 1815 ++- packages/google-cloud-gkehub/protos/protos.js | 10603 +++++++++++----- .../google-cloud-gkehub/protos/protos.json | 24 + 3 files changed, 9395 insertions(+), 3047 deletions(-) diff --git a/packages/google-cloud-gkehub/protos/protos.d.ts b/packages/google-cloud-gkehub/protos/protos.d.ts index c79d176b67f..44b4cd7bbbe 100644 --- a/packages/google-cloud-gkehub/protos/protos.d.ts +++ b/packages/google-cloud-gkehub/protos/protos.d.ts @@ -12,7 +12,7 @@ // See the License for the specific language governing permissions and // limitations under the License. -import * as Long from "long"; +import Long = require("long"); import {protobuf as $protobuf} from "google-gax"; /** Namespace google. */ export namespace google { @@ -114,6 +114,13 @@ export namespace google { * @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 FileDescriptorSet. */ @@ -204,6 +211,13 @@ export namespace google { * @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. */ @@ -244,6 +258,9 @@ export namespace google { /** FileDescriptorProto syntax */ syntax?: (string|null); + + /** FileDescriptorProto edition */ + edition?: (string|null); } /** Represents a FileDescriptorProto. */ @@ -291,6 +308,9 @@ export namespace google { /** FileDescriptorProto syntax. */ public syntax: string; + /** FileDescriptorProto edition. */ + public edition: string; + /** * Creates a new FileDescriptorProto instance using the specified properties. * @param [properties] Properties to set @@ -360,6 +380,13 @@ export namespace google { * @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. */ @@ -504,6 +531,13 @@ export namespace google { * @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 { @@ -608,6 +642,13 @@ export namespace google { * @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. */ @@ -704,6 +745,13 @@ export namespace google { * @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; } } @@ -795,6 +843,13 @@ export namespace google { * @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. */ @@ -945,6 +1000,13 @@ export namespace google { * @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 { @@ -1073,6 +1135,13 @@ export namespace google { * @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. */ @@ -1187,6 +1256,13 @@ export namespace google { * @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 { @@ -1285,6 +1361,13 @@ export namespace google { * @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; } } @@ -1388,6 +1471,13 @@ export namespace google { * @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. */ @@ -1490,6 +1580,13 @@ export namespace google { * @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. */ @@ -1610,6 +1707,13 @@ export namespace google { * @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. */ @@ -1823,6 +1927,13 @@ export namespace google { * @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 { @@ -1950,6 +2061,13 @@ export namespace google { * @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. */ @@ -1967,6 +2085,9 @@ export namespace google { /** FieldOptions lazy */ lazy?: (boolean|null); + /** FieldOptions unverifiedLazy */ + unverifiedLazy?: (boolean|null); + /** FieldOptions deprecated */ deprecated?: (boolean|null); @@ -2004,6 +2125,9 @@ export namespace google { /** FieldOptions lazy. */ public lazy: boolean; + /** FieldOptions unverifiedLazy. */ + public unverifiedLazy: boolean; + /** FieldOptions deprecated. */ public deprecated: boolean; @@ -2082,6 +2206,13 @@ export namespace google { * @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 { @@ -2189,6 +2320,13 @@ export namespace google { * @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. */ @@ -2291,6 +2429,13 @@ export namespace google { * @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. */ @@ -2387,6 +2532,13 @@ export namespace google { * @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. */ @@ -2489,6 +2641,13 @@ export namespace google { * @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. */ @@ -2600,6 +2759,13 @@ export namespace google { * @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 { @@ -2736,6 +2902,13 @@ export namespace google { * @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 { @@ -2834,6 +3007,13 @@ export namespace google { * @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; } } @@ -2925,6 +3105,13 @@ export namespace google { * @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 { @@ -3041,6 +3228,13 @@ export namespace google { * @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; } } @@ -3132,6 +3326,13 @@ export namespace google { * @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 { @@ -3150,6 +3351,9 @@ export namespace google { /** Annotation end */ end?: (number|null); + + /** Annotation semantic */ + semantic?: (google.protobuf.GeneratedCodeInfo.Annotation.Semantic|keyof typeof google.protobuf.GeneratedCodeInfo.Annotation.Semantic|null); } /** Represents an Annotation. */ @@ -3173,6 +3377,9 @@ export namespace google { /** 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 @@ -3242,6 +3449,23 @@ export namespace google { * @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 + } } } @@ -3339,6 +3563,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for Any + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a Duration. */ @@ -3435,6 +3666,13 @@ export namespace google { * @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. */ @@ -3519,6 +3757,13 @@ export namespace google { * @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 FieldMask. */ @@ -3609,6 +3854,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for FieldMask + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a Struct. */ @@ -3699,6 +3951,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for Struct + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a Value. */ @@ -3822,6 +4081,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for Value + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } /** NullValue enum. */ @@ -3917,6 +4183,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for ListValue + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } } @@ -4058,6 +4331,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for MembershipState + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a MembershipSpec. */ @@ -4166,6 +4446,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for MembershipSpec + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a ConfigSync. */ @@ -4262,6 +4549,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for ConfigSync + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a GitConfig. */ @@ -4394,6 +4688,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for GitConfig + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a PolicyController. */ @@ -4520,6 +4821,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for PolicyController + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a HierarchyControllerConfig. */ @@ -4622,6 +4930,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for HierarchyControllerConfig + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a HierarchyControllerDeploymentState. */ @@ -4718,6 +5033,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for HierarchyControllerDeploymentState + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a HierarchyControllerVersion. */ @@ -4814,6 +5136,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for HierarchyControllerVersion + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a HierarchyControllerState. */ @@ -4910,6 +5239,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for HierarchyControllerState + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of an OperatorState. */ @@ -5012,6 +5348,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for OperatorState + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of an InstallError. */ @@ -5102,6 +5445,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for InstallError + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a ConfigSyncState. */ @@ -5204,6 +5554,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for ConfigSyncState + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a ConfigSyncVersion. */ @@ -5324,6 +5681,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for ConfigSyncVersion + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a ConfigSyncDeploymentState. */ @@ -5444,6 +5808,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for ConfigSyncDeploymentState + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a SyncState. */ @@ -5570,6 +5941,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for SyncState + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } namespace SyncState { @@ -5687,6 +6065,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for SyncError + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of an ErrorResource. */ @@ -5795,6 +6180,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for ErrorResource + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a GroupVersionKind. */ @@ -5897,6 +6289,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for GroupVersionKind + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a PolicyControllerState. */ @@ -5993,6 +6392,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for PolicyControllerState + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a PolicyControllerVersion. */ @@ -6083,6 +6489,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for PolicyControllerVersion + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a GatekeeperDeploymentState. */ @@ -6179,6 +6592,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for GatekeeperDeploymentState + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } } @@ -6317,6 +6737,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for MembershipState + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a MembershipSpec. */ @@ -6431,6 +6858,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for MembershipSpec + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a ConfigSync. */ @@ -6527,6 +6961,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for ConfigSync + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a GitConfig. */ @@ -6659,6 +7100,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for GitConfig + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a PolicyController. */ @@ -6791,6 +7239,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for PolicyController + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a BinauthzConfig. */ @@ -6881,6 +7336,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for BinauthzConfig + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a HierarchyControllerConfig. */ @@ -6983,6 +7445,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for HierarchyControllerConfig + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a HierarchyControllerDeploymentState. */ @@ -7079,6 +7548,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for HierarchyControllerDeploymentState + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a HierarchyControllerVersion. */ @@ -7175,6 +7651,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for HierarchyControllerVersion + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a HierarchyControllerState. */ @@ -7271,6 +7754,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for HierarchyControllerState + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of an OperatorState. */ @@ -7373,6 +7863,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for OperatorState + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of an InstallError. */ @@ -7463,6 +7960,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for InstallError + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a ConfigSyncState. */ @@ -7565,6 +8069,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for ConfigSyncState + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a ConfigSyncVersion. */ @@ -7685,6 +8196,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for ConfigSyncVersion + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a ConfigSyncDeploymentState. */ @@ -7805,6 +8323,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for ConfigSyncDeploymentState + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a SyncState. */ @@ -7931,6 +8456,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for SyncState + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } namespace SyncState { @@ -8048,6 +8580,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for SyncError + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of an ErrorResource. */ @@ -8156,6 +8695,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for ErrorResource + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a GroupVersionKind. */ @@ -8258,6 +8804,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for GroupVersionKind + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a PolicyControllerState. */ @@ -8354,6 +8907,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for PolicyControllerState + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a PolicyControllerVersion. */ @@ -8444,6 +9004,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for PolicyControllerVersion + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a BinauthzState. */ @@ -8540,6 +9107,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for BinauthzState + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a BinauthzVersion. */ @@ -8630,6 +9204,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for BinauthzVersion + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a GatekeeperDeploymentState. */ @@ -8732,6 +9313,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for GatekeeperDeploymentState + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } } @@ -8870,6 +9458,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for MembershipState + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a MembershipSpec. */ @@ -8984,6 +9579,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for MembershipSpec + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a ConfigSync. */ @@ -9080,6 +9682,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for ConfigSync + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a GitConfig. */ @@ -9212,6 +9821,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for GitConfig + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a PolicyController. */ @@ -9338,6 +9954,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for PolicyController + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a BinauthzConfig. */ @@ -9428,6 +10051,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for BinauthzConfig + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a HierarchyControllerConfig. */ @@ -9530,6 +10160,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for HierarchyControllerConfig + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a HierarchyControllerDeploymentState. */ @@ -9626,6 +10263,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for HierarchyControllerDeploymentState + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a HierarchyControllerVersion. */ @@ -9722,6 +10366,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for HierarchyControllerVersion + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a HierarchyControllerState. */ @@ -9818,6 +10469,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for HierarchyControllerState + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of an OperatorState. */ @@ -9920,6 +10578,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for OperatorState + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of an InstallError. */ @@ -10010,6 +10675,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for InstallError + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a ConfigSyncState. */ @@ -10112,6 +10784,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for ConfigSyncState + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a ConfigSyncVersion. */ @@ -10232,6 +10911,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for ConfigSyncVersion + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a ConfigSyncDeploymentState. */ @@ -10352,6 +11038,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for ConfigSyncDeploymentState + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a SyncState. */ @@ -10478,6 +11171,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for SyncState + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } namespace SyncState { @@ -10595,6 +11295,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for SyncError + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of an ErrorResource. */ @@ -10703,6 +11410,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for ErrorResource + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a GroupVersionKind. */ @@ -10805,6 +11519,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for GroupVersionKind + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a PolicyControllerState. */ @@ -10901,6 +11622,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for PolicyControllerState + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a PolicyControllerVersion. */ @@ -10991,6 +11719,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for PolicyControllerVersion + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a BinauthzState. */ @@ -11087,6 +11822,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for BinauthzState + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a BinauthzVersion. */ @@ -11177,6 +11919,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for BinauthzVersion + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a GatekeeperDeploymentState. */ @@ -11273,6 +12022,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for GatekeeperDeploymentState + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } } } @@ -11422,6 +12178,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for Feature + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a FeatureResourceState. */ @@ -11512,6 +12275,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for FeatureResourceState + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } namespace FeatureResourceState { @@ -11627,6 +12397,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for FeatureState + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } namespace FeatureState { @@ -11731,6 +12508,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for CommonFeatureSpec + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a CommonFeatureState. */ @@ -11821,6 +12605,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for CommonFeatureState + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a MembershipFeatureSpec. */ @@ -11914,6 +12705,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for MembershipFeatureSpec + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a MembershipFeatureState. */ @@ -12013,6 +12811,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for MembershipFeatureState + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a Membership. */ @@ -12172,6 +12977,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for Membership + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a MembershipEndpoint. */ @@ -12274,6 +13086,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for MembershipEndpoint + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a KubernetesResource. */ @@ -12382,6 +13201,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for KubernetesResource + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a ResourceOptions. */ @@ -12484,6 +13310,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for ResourceOptions + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a ResourceManifest. */ @@ -12580,6 +13413,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for ResourceManifest + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a GkeCluster. */ @@ -12670,6 +13510,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for GkeCluster + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a KubernetesMetadata. */ @@ -12790,6 +13637,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for KubernetesMetadata + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a MembershipState. */ @@ -12880,6 +13734,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for MembershipState + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } namespace MembershipState { @@ -13001,6 +13862,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for Authority + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } /** Represents a GkeHub */ @@ -13181,77 +14049,77 @@ export namespace google { namespace GkeHub { /** - * Callback as used by {@link google.cloud.gkehub.v1.GkeHub#listMemberships}. + * Callback as used by {@link google.cloud.gkehub.v1.GkeHub|listMemberships}. * @param error Error, if any * @param [response] ListMembershipsResponse */ type ListMembershipsCallback = (error: (Error|null), response?: google.cloud.gkehub.v1.ListMembershipsResponse) => void; /** - * Callback as used by {@link google.cloud.gkehub.v1.GkeHub#listFeatures}. + * Callback as used by {@link google.cloud.gkehub.v1.GkeHub|listFeatures}. * @param error Error, if any * @param [response] ListFeaturesResponse */ type ListFeaturesCallback = (error: (Error|null), response?: google.cloud.gkehub.v1.ListFeaturesResponse) => void; /** - * Callback as used by {@link google.cloud.gkehub.v1.GkeHub#getMembership}. + * Callback as used by {@link google.cloud.gkehub.v1.GkeHub|getMembership}. * @param error Error, if any * @param [response] Membership */ type GetMembershipCallback = (error: (Error|null), response?: google.cloud.gkehub.v1.Membership) => void; /** - * Callback as used by {@link google.cloud.gkehub.v1.GkeHub#getFeature}. + * Callback as used by {@link google.cloud.gkehub.v1.GkeHub|getFeature}. * @param error Error, if any * @param [response] Feature */ type GetFeatureCallback = (error: (Error|null), response?: google.cloud.gkehub.v1.Feature) => void; /** - * Callback as used by {@link google.cloud.gkehub.v1.GkeHub#createMembership}. + * Callback as used by {@link google.cloud.gkehub.v1.GkeHub|createMembership}. * @param error Error, if any * @param [response] Operation */ type CreateMembershipCallback = (error: (Error|null), response?: google.longrunning.Operation) => void; /** - * Callback as used by {@link google.cloud.gkehub.v1.GkeHub#createFeature}. + * Callback as used by {@link google.cloud.gkehub.v1.GkeHub|createFeature}. * @param error Error, if any * @param [response] Operation */ type CreateFeatureCallback = (error: (Error|null), response?: google.longrunning.Operation) => void; /** - * Callback as used by {@link google.cloud.gkehub.v1.GkeHub#deleteMembership}. + * Callback as used by {@link google.cloud.gkehub.v1.GkeHub|deleteMembership}. * @param error Error, if any * @param [response] Operation */ type DeleteMembershipCallback = (error: (Error|null), response?: google.longrunning.Operation) => void; /** - * Callback as used by {@link google.cloud.gkehub.v1.GkeHub#deleteFeature}. + * Callback as used by {@link google.cloud.gkehub.v1.GkeHub|deleteFeature}. * @param error Error, if any * @param [response] Operation */ type DeleteFeatureCallback = (error: (Error|null), response?: google.longrunning.Operation) => void; /** - * Callback as used by {@link google.cloud.gkehub.v1.GkeHub#updateMembership}. + * Callback as used by {@link google.cloud.gkehub.v1.GkeHub|updateMembership}. * @param error Error, if any * @param [response] Operation */ type UpdateMembershipCallback = (error: (Error|null), response?: google.longrunning.Operation) => void; /** - * Callback as used by {@link google.cloud.gkehub.v1.GkeHub#updateFeature}. + * Callback as used by {@link google.cloud.gkehub.v1.GkeHub|updateFeature}. * @param error Error, if any * @param [response] Operation */ type UpdateFeatureCallback = (error: (Error|null), response?: google.longrunning.Operation) => void; /** - * Callback as used by {@link google.cloud.gkehub.v1.GkeHub#generateConnectManifest}. + * Callback as used by {@link google.cloud.gkehub.v1.GkeHub|generateConnectManifest}. * @param error Error, if any * @param [response] GenerateConnectManifestResponse */ @@ -13370,6 +14238,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for ListMembershipsRequest + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a ListMembershipsResponse. */ @@ -13472,6 +14347,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for ListMembershipsResponse + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a GetMembershipRequest. */ @@ -13562,6 +14444,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for GetMembershipRequest + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a CreateMembershipRequest. */ @@ -13670,6 +14559,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for CreateMembershipRequest + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a DeleteMembershipRequest. */ @@ -13766,6 +14662,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for DeleteMembershipRequest + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of an UpdateMembershipRequest. */ @@ -13874,6 +14777,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for UpdateMembershipRequest + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a GenerateConnectManifestRequest. */ @@ -14000,6 +14910,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for GenerateConnectManifestRequest + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a GenerateConnectManifestResponse. */ @@ -14090,6 +15007,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for GenerateConnectManifestResponse + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a ConnectAgentResource. */ @@ -14186,6 +15110,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for ConnectAgentResource + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a TypeMeta. */ @@ -14282,6 +15213,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for TypeMeta + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a ListFeaturesRequest. */ @@ -14396,6 +15334,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for ListFeaturesRequest + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a ListFeaturesResponse. */ @@ -14492,6 +15437,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for ListFeaturesResponse + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a GetFeatureRequest. */ @@ -14582,6 +15534,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for GetFeatureRequest + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a CreateFeatureRequest. */ @@ -14690,6 +15649,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for CreateFeatureRequest + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a DeleteFeatureRequest. */ @@ -14792,6 +15758,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for DeleteFeatureRequest + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of an UpdateFeatureRequest. */ @@ -14900,6 +15873,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for UpdateFeatureRequest + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of an OperationMetadata. */ @@ -15026,6 +16006,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for OperationMetadata + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } } @@ -15123,6 +16110,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for FeatureSpec + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } } @@ -15230,6 +16224,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for FeatureSpec + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } } @@ -15337,6 +16338,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for FeatureSpec + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } } } @@ -15435,6 +16443,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for FeatureSpec + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } } } @@ -15584,6 +16599,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for Feature + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a FeatureResourceState. */ @@ -15674,6 +16696,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for FeatureResourceState + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } namespace FeatureResourceState { @@ -15789,6 +16818,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for FeatureState + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } namespace FeatureState { @@ -15899,6 +16935,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for CommonFeatureSpec + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a CommonFeatureState. */ @@ -15998,6 +17041,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for CommonFeatureState + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a MembershipFeatureSpec. */ @@ -16091,6 +17141,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for MembershipFeatureSpec + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a MembershipFeatureState. */ @@ -16202,6 +17259,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for MembershipFeatureState + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } /** Represents a GkeHub */ @@ -16298,35 +17362,35 @@ export namespace google { namespace GkeHub { /** - * Callback as used by {@link google.cloud.gkehub.v1alpha.GkeHub#listFeatures}. + * Callback as used by {@link google.cloud.gkehub.v1alpha.GkeHub|listFeatures}. * @param error Error, if any * @param [response] ListFeaturesResponse */ type ListFeaturesCallback = (error: (Error|null), response?: google.cloud.gkehub.v1alpha.ListFeaturesResponse) => void; /** - * Callback as used by {@link google.cloud.gkehub.v1alpha.GkeHub#getFeature}. + * Callback as used by {@link google.cloud.gkehub.v1alpha.GkeHub|getFeature}. * @param error Error, if any * @param [response] Feature */ type GetFeatureCallback = (error: (Error|null), response?: google.cloud.gkehub.v1alpha.Feature) => void; /** - * Callback as used by {@link google.cloud.gkehub.v1alpha.GkeHub#createFeature}. + * Callback as used by {@link google.cloud.gkehub.v1alpha.GkeHub|createFeature}. * @param error Error, if any * @param [response] Operation */ type CreateFeatureCallback = (error: (Error|null), response?: google.longrunning.Operation) => void; /** - * Callback as used by {@link google.cloud.gkehub.v1alpha.GkeHub#deleteFeature}. + * Callback as used by {@link google.cloud.gkehub.v1alpha.GkeHub|deleteFeature}. * @param error Error, if any * @param [response] Operation */ type DeleteFeatureCallback = (error: (Error|null), response?: google.longrunning.Operation) => void; /** - * Callback as used by {@link google.cloud.gkehub.v1alpha.GkeHub#updateFeature}. + * Callback as used by {@link google.cloud.gkehub.v1alpha.GkeHub|updateFeature}. * @param error Error, if any * @param [response] Operation */ @@ -16445,6 +17509,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for ListFeaturesRequest + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a ListFeaturesResponse. */ @@ -16541,6 +17612,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for ListFeaturesResponse + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a GetFeatureRequest. */ @@ -16631,6 +17709,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for GetFeatureRequest + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a CreateFeatureRequest. */ @@ -16739,6 +17824,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for CreateFeatureRequest + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a DeleteFeatureRequest. */ @@ -16841,6 +17933,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for DeleteFeatureRequest + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of an UpdateFeatureRequest. */ @@ -16949,6 +18048,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for UpdateFeatureRequest + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of an OperationMetadata. */ @@ -17075,6 +18181,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for OperationMetadata + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } } @@ -17178,6 +18291,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for MembershipState + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } } @@ -17278,6 +18398,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for MembershipState + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } } } @@ -17375,7 +18502,14 @@ export namespace google { * Converts this FeatureState to JSON. * @returns JSON object */ - public toJSON(): { [k: string]: any }; + public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for FeatureState + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a MembershipState. */ @@ -17466,6 +18600,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for MembershipState + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of an AnalysisMessageBase. */ @@ -17568,6 +18709,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for AnalysisMessageBase + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } namespace AnalysisMessageBase { @@ -17666,6 +18814,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for Type + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } /** Level enum. */ @@ -17783,6 +18938,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for AnalysisMessage + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } } } @@ -17912,49 +19074,49 @@ export namespace google { namespace GkeHub { /** - * Callback as used by {@link google.cloud.gkehub.v1alpha2.GkeHub#listMemberships}. + * Callback as used by {@link google.cloud.gkehub.v1alpha2.GkeHub|listMemberships}. * @param error Error, if any * @param [response] ListMembershipsResponse */ type ListMembershipsCallback = (error: (Error|null), response?: google.cloud.gkehub.v1alpha2.ListMembershipsResponse) => void; /** - * Callback as used by {@link google.cloud.gkehub.v1alpha2.GkeHub#getMembership}. + * Callback as used by {@link google.cloud.gkehub.v1alpha2.GkeHub|getMembership}. * @param error Error, if any * @param [response] Membership */ type GetMembershipCallback = (error: (Error|null), response?: google.cloud.gkehub.v1alpha2.Membership) => void; /** - * Callback as used by {@link google.cloud.gkehub.v1alpha2.GkeHub#createMembership}. + * Callback as used by {@link google.cloud.gkehub.v1alpha2.GkeHub|createMembership}. * @param error Error, if any * @param [response] Operation */ type CreateMembershipCallback = (error: (Error|null), response?: google.longrunning.Operation) => void; /** - * Callback as used by {@link google.cloud.gkehub.v1alpha2.GkeHub#deleteMembership}. + * Callback as used by {@link google.cloud.gkehub.v1alpha2.GkeHub|deleteMembership}. * @param error Error, if any * @param [response] Operation */ type DeleteMembershipCallback = (error: (Error|null), response?: google.longrunning.Operation) => void; /** - * Callback as used by {@link google.cloud.gkehub.v1alpha2.GkeHub#updateMembership}. + * Callback as used by {@link google.cloud.gkehub.v1alpha2.GkeHub|updateMembership}. * @param error Error, if any * @param [response] Operation */ type UpdateMembershipCallback = (error: (Error|null), response?: google.longrunning.Operation) => void; /** - * Callback as used by {@link google.cloud.gkehub.v1alpha2.GkeHub#generateConnectManifest}. + * Callback as used by {@link google.cloud.gkehub.v1alpha2.GkeHub|generateConnectManifest}. * @param error Error, if any * @param [response] GenerateConnectManifestResponse */ type GenerateConnectManifestCallback = (error: (Error|null), response?: google.cloud.gkehub.v1alpha2.GenerateConnectManifestResponse) => void; /** - * Callback as used by {@link google.cloud.gkehub.v1alpha2.GkeHub#initializeHub}. + * Callback as used by {@link google.cloud.gkehub.v1alpha2.GkeHub|initializeHub}. * @param error Error, if any * @param [response] InitializeHubResponse */ @@ -18124,6 +19286,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for Membership + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } namespace Membership { @@ -18251,6 +19420,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for MembershipEndpoint + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a KubernetesResource. */ @@ -18359,6 +19535,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for KubernetesResource + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a ResourceOptions. */ @@ -18461,6 +19644,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for ResourceOptions + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a GkeCluster. */ @@ -18557,6 +19747,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for GkeCluster + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of an OnPremCluster. */ @@ -18659,6 +19856,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for OnPremCluster + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a MultiCloudCluster. */ @@ -18755,6 +19959,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for MultiCloudCluster + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a KubernetesMetadata. */ @@ -18875,6 +20086,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for KubernetesMetadata + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of an Authority. */ @@ -18983,6 +20201,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for Authority + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a MembershipState. */ @@ -19073,6 +20298,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for MembershipState + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } namespace MembershipState { @@ -19200,6 +20432,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for ListMembershipsRequest + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a ListMembershipsResponse. */ @@ -19302,6 +20541,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for ListMembershipsResponse + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a GetMembershipRequest. */ @@ -19392,6 +20638,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for GetMembershipRequest + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a CreateMembershipRequest. */ @@ -19494,6 +20747,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for CreateMembershipRequest + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a DeleteMembershipRequest. */ @@ -19584,6 +20844,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for DeleteMembershipRequest + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of an UpdateMembershipRequest. */ @@ -19686,6 +20953,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for UpdateMembershipRequest + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a GenerateConnectManifestRequest. */ @@ -19812,6 +21086,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for GenerateConnectManifestRequest + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a GenerateConnectManifestResponse. */ @@ -19902,6 +21183,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for GenerateConnectManifestResponse + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a ConnectAgentResource. */ @@ -19998,6 +21286,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for ConnectAgentResource + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a ResourceManifest. */ @@ -20094,6 +21389,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for ResourceManifest + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a TypeMeta. */ @@ -20190,6 +21492,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for TypeMeta + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of an InitializeHubRequest. */ @@ -20280,6 +21589,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for InitializeHubRequest + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of an InitializeHubResponse. */ @@ -20376,6 +21692,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for InitializeHubResponse + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of an OperationMetadata. */ @@ -20502,6 +21825,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for OperationMetadata + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } } @@ -20650,6 +21980,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for Feature + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a FeatureResourceState. */ @@ -20740,6 +22077,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for FeatureResourceState + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } namespace FeatureResourceState { @@ -20855,6 +22199,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for FeatureState + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } namespace FeatureState { @@ -20959,6 +22310,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for CommonFeatureSpec + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a CommonFeatureState. */ @@ -21049,6 +22407,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for CommonFeatureState + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a MembershipFeatureSpec. */ @@ -21142,6 +22507,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for MembershipFeatureSpec + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a MembershipFeatureState. */ @@ -21247,6 +22619,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for MembershipFeatureState + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } /** Represents a GkeHub */ @@ -21343,35 +22722,35 @@ export namespace google { namespace GkeHub { /** - * Callback as used by {@link google.cloud.gkehub.v1beta.GkeHub#listFeatures}. + * Callback as used by {@link google.cloud.gkehub.v1beta.GkeHub|listFeatures}. * @param error Error, if any * @param [response] ListFeaturesResponse */ type ListFeaturesCallback = (error: (Error|null), response?: google.cloud.gkehub.v1beta.ListFeaturesResponse) => void; /** - * Callback as used by {@link google.cloud.gkehub.v1beta.GkeHub#getFeature}. + * Callback as used by {@link google.cloud.gkehub.v1beta.GkeHub|getFeature}. * @param error Error, if any * @param [response] Feature */ type GetFeatureCallback = (error: (Error|null), response?: google.cloud.gkehub.v1beta.Feature) => void; /** - * Callback as used by {@link google.cloud.gkehub.v1beta.GkeHub#createFeature}. + * Callback as used by {@link google.cloud.gkehub.v1beta.GkeHub|createFeature}. * @param error Error, if any * @param [response] Operation */ type CreateFeatureCallback = (error: (Error|null), response?: google.longrunning.Operation) => void; /** - * Callback as used by {@link google.cloud.gkehub.v1beta.GkeHub#deleteFeature}. + * Callback as used by {@link google.cloud.gkehub.v1beta.GkeHub|deleteFeature}. * @param error Error, if any * @param [response] Operation */ type DeleteFeatureCallback = (error: (Error|null), response?: google.longrunning.Operation) => void; /** - * Callback as used by {@link google.cloud.gkehub.v1beta.GkeHub#updateFeature}. + * Callback as used by {@link google.cloud.gkehub.v1beta.GkeHub|updateFeature}. * @param error Error, if any * @param [response] Operation */ @@ -21490,6 +22869,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for ListFeaturesRequest + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a ListFeaturesResponse. */ @@ -21586,6 +22972,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for ListFeaturesResponse + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a GetFeatureRequest. */ @@ -21676,6 +23069,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for GetFeatureRequest + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a CreateFeatureRequest. */ @@ -21784,6 +23184,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for CreateFeatureRequest + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a DeleteFeatureRequest. */ @@ -21886,6 +23293,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for DeleteFeatureRequest + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of an UpdateFeatureRequest. */ @@ -21994,6 +23408,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for UpdateFeatureRequest + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of an OperationMetadata. */ @@ -22120,6 +23541,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for OperationMetadata + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } } @@ -22262,56 +23690,56 @@ export namespace google { namespace GkeHubMembershipService { /** - * Callback as used by {@link google.cloud.gkehub.v1beta1.GkeHubMembershipService#listMemberships}. + * Callback as used by {@link google.cloud.gkehub.v1beta1.GkeHubMembershipService|listMemberships}. * @param error Error, if any * @param [response] ListMembershipsResponse */ type ListMembershipsCallback = (error: (Error|null), response?: google.cloud.gkehub.v1beta1.ListMembershipsResponse) => void; /** - * Callback as used by {@link google.cloud.gkehub.v1beta1.GkeHubMembershipService#getMembership}. + * Callback as used by {@link google.cloud.gkehub.v1beta1.GkeHubMembershipService|getMembership}. * @param error Error, if any * @param [response] Membership */ type GetMembershipCallback = (error: (Error|null), response?: google.cloud.gkehub.v1beta1.Membership) => void; /** - * Callback as used by {@link google.cloud.gkehub.v1beta1.GkeHubMembershipService#createMembership}. + * Callback as used by {@link google.cloud.gkehub.v1beta1.GkeHubMembershipService|createMembership}. * @param error Error, if any * @param [response] Operation */ type CreateMembershipCallback = (error: (Error|null), response?: google.longrunning.Operation) => void; /** - * Callback as used by {@link google.cloud.gkehub.v1beta1.GkeHubMembershipService#deleteMembership}. + * Callback as used by {@link google.cloud.gkehub.v1beta1.GkeHubMembershipService|deleteMembership}. * @param error Error, if any * @param [response] Operation */ type DeleteMembershipCallback = (error: (Error|null), response?: google.longrunning.Operation) => void; /** - * Callback as used by {@link google.cloud.gkehub.v1beta1.GkeHubMembershipService#updateMembership}. + * Callback as used by {@link google.cloud.gkehub.v1beta1.GkeHubMembershipService|updateMembership}. * @param error Error, if any * @param [response] Operation */ type UpdateMembershipCallback = (error: (Error|null), response?: google.longrunning.Operation) => void; /** - * Callback as used by {@link google.cloud.gkehub.v1beta1.GkeHubMembershipService#generateConnectManifest}. + * Callback as used by {@link google.cloud.gkehub.v1beta1.GkeHubMembershipService|generateConnectManifest}. * @param error Error, if any * @param [response] GenerateConnectManifestResponse */ type GenerateConnectManifestCallback = (error: (Error|null), response?: google.cloud.gkehub.v1beta1.GenerateConnectManifestResponse) => void; /** - * Callback as used by {@link google.cloud.gkehub.v1beta1.GkeHubMembershipService#validateExclusivity}. + * Callback as used by {@link google.cloud.gkehub.v1beta1.GkeHubMembershipService|validateExclusivity}. * @param error Error, if any * @param [response] ValidateExclusivityResponse */ type ValidateExclusivityCallback = (error: (Error|null), response?: google.cloud.gkehub.v1beta1.ValidateExclusivityResponse) => void; /** - * Callback as used by {@link google.cloud.gkehub.v1beta1.GkeHubMembershipService#generateExclusivityManifest}. + * Callback as used by {@link google.cloud.gkehub.v1beta1.GkeHubMembershipService|generateExclusivityManifest}. * @param error Error, if any * @param [response] GenerateExclusivityManifestResponse */ @@ -22481,6 +23909,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for Membership + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } namespace Membership { @@ -22620,6 +24055,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for MembershipEndpoint + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a KubernetesResource. */ @@ -22728,6 +24170,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for KubernetesResource + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a ResourceOptions. */ @@ -22830,6 +24279,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for ResourceOptions + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a ResourceManifest. */ @@ -22926,6 +24382,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for ResourceManifest + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a GkeCluster. */ @@ -23022,6 +24485,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for GkeCluster + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of an OnPremCluster. */ @@ -23130,6 +24600,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for OnPremCluster + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } namespace OnPremCluster { @@ -23238,6 +24715,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for MultiCloudCluster + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of an EdgeCluster. */ @@ -23328,6 +24812,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for EdgeCluster + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of an ApplianceCluster. */ @@ -23418,6 +24909,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for ApplianceCluster + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a KubernetesMetadata. */ @@ -23538,6 +25036,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for KubernetesMetadata + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of an Authority. */ @@ -23646,6 +25151,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for Authority + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a MembershipState. */ @@ -23748,6 +25260,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for MembershipState + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } namespace MembershipState { @@ -23875,6 +25394,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for ListMembershipsRequest + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a ListMembershipsResponse. */ @@ -23977,6 +25503,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for ListMembershipsResponse + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a GetMembershipRequest. */ @@ -24067,6 +25600,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for GetMembershipRequest + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a CreateMembershipRequest. */ @@ -24175,6 +25715,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for CreateMembershipRequest + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a DeleteMembershipRequest. */ @@ -24271,6 +25818,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for DeleteMembershipRequest + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of an UpdateMembershipRequest. */ @@ -24379,6 +25933,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for UpdateMembershipRequest + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a GenerateConnectManifestRequest. */ @@ -24499,6 +26060,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for GenerateConnectManifestRequest + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a GenerateConnectManifestResponse. */ @@ -24589,6 +26157,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for GenerateConnectManifestResponse + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a ConnectAgentResource. */ @@ -24685,6 +26260,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for ConnectAgentResource + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a TypeMeta. */ @@ -24781,6 +26363,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for TypeMeta + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a ConnectAgent. */ @@ -24883,6 +26472,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for ConnectAgent + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a ValidateExclusivityRequest. */ @@ -24985,6 +26581,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for ValidateExclusivityRequest + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a ValidateExclusivityResponse. */ @@ -25075,6 +26678,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for ValidateExclusivityResponse + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a GenerateExclusivityManifestRequest. */ @@ -25177,6 +26787,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for GenerateExclusivityManifestRequest + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a GenerateExclusivityManifestResponse. */ @@ -25273,6 +26890,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for GenerateExclusivityManifestResponse + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of an OperationMetadata. */ @@ -25399,6 +27023,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for OperationMetadata + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } } } @@ -25543,6 +27174,13 @@ export namespace google { * @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 { @@ -25655,6 +27293,13 @@ export namespace google { * @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; } /** Properties of a Http. */ @@ -25751,6 +27396,13 @@ export namespace google { * @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. */ @@ -25898,6 +27550,13 @@ export namespace google { * @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. */ @@ -25994,6 +27653,13 @@ export namespace google { * @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; } } @@ -26094,35 +27760,35 @@ export namespace google { namespace Operations { /** - * Callback as used by {@link google.longrunning.Operations#listOperations}. + * Callback as used by {@link google.longrunning.Operations|listOperations}. * @param error Error, if any * @param [response] ListOperationsResponse */ type ListOperationsCallback = (error: (Error|null), response?: google.longrunning.ListOperationsResponse) => void; /** - * Callback as used by {@link google.longrunning.Operations#getOperation}. + * Callback as used by {@link google.longrunning.Operations|getOperation}. * @param error Error, if any * @param [response] Operation */ type GetOperationCallback = (error: (Error|null), response?: google.longrunning.Operation) => void; /** - * Callback as used by {@link google.longrunning.Operations#deleteOperation}. + * Callback as used by {@link google.longrunning.Operations|deleteOperation}. * @param error Error, if any * @param [response] Empty */ type DeleteOperationCallback = (error: (Error|null), response?: google.protobuf.Empty) => void; /** - * Callback as used by {@link google.longrunning.Operations#cancelOperation}. + * Callback as used by {@link google.longrunning.Operations|cancelOperation}. * @param error Error, if any * @param [response] Empty */ type CancelOperationCallback = (error: (Error|null), response?: google.protobuf.Empty) => void; /** - * Callback as used by {@link google.longrunning.Operations#waitOperation}. + * Callback as used by {@link google.longrunning.Operations|waitOperation}. * @param error Error, if any * @param [response] Operation */ @@ -26244,6 +27910,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for Operation + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a GetOperationRequest. */ @@ -26334,6 +28007,13 @@ export namespace google { * @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. */ @@ -26442,6 +28122,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for ListOperationsRequest + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a ListOperationsResponse. */ @@ -26538,6 +28225,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for ListOperationsResponse + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a CancelOperationRequest. */ @@ -26628,6 +28322,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for CancelOperationRequest + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a DeleteOperationRequest. */ @@ -26718,6 +28419,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for DeleteOperationRequest + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a WaitOperationRequest. */ @@ -26814,6 +28522,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for WaitOperationRequest + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of an OperationInfo. */ @@ -26910,6 +28625,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for OperationInfo + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } } @@ -27016,6 +28738,13 @@ export namespace google { * @returns JSON object */ public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for Status + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; } } } diff --git a/packages/google-cloud-gkehub/protos/protos.js b/packages/google-cloud-gkehub/protos/protos.js index a427417c018..347f77713e6 100644 --- a/packages/google-cloud-gkehub/protos/protos.js +++ b/packages/google-cloud-gkehub/protos/protos.js @@ -151,12 +151,14 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.seconds = reader.int64(); - break; - case 2: - message.nanos = reader.int32(); - break; + case 1: { + message.seconds = reader.int64(); + break; + } + case 2: { + message.nanos = reader.int32(); + break; + } default: reader.skipType(tag & 7); break; @@ -269,6 +271,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for Timestamp + * @function getTypeUrl + * @memberof google.protobuf.Timestamp + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + Timestamp.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.protobuf.Timestamp"; + }; + return Timestamp; })(); @@ -366,11 +383,12 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - if (!(message.file && message.file.length)) - message.file = []; - message.file.push($root.google.protobuf.FileDescriptorProto.decode(reader, reader.uint32())); - break; + case 1: { + if (!(message.file && message.file.length)) + message.file = []; + message.file.push($root.google.protobuf.FileDescriptorProto.decode(reader, reader.uint32())); + break; + } default: reader.skipType(tag & 7); break; @@ -477,6 +495,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for FileDescriptorSet + * @function getTypeUrl + * @memberof google.protobuf.FileDescriptorSet + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + FileDescriptorSet.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.protobuf.FileDescriptorSet"; + }; + return FileDescriptorSet; })(); @@ -498,6 +531,7 @@ * @property {google.protobuf.IFileOptions|null} [options] FileDescriptorProto options * @property {google.protobuf.ISourceCodeInfo|null} [sourceCodeInfo] FileDescriptorProto sourceCodeInfo * @property {string|null} [syntax] FileDescriptorProto syntax + * @property {string|null} [edition] FileDescriptorProto edition */ /** @@ -618,6 +652,14 @@ */ FileDescriptorProto.prototype.syntax = ""; + /** + * FileDescriptorProto edition. + * @member {string} edition + * @memberof google.protobuf.FileDescriptorProto + * @instance + */ + FileDescriptorProto.prototype.edition = ""; + /** * Creates a new FileDescriptorProto instance using the specified properties. * @function create @@ -673,6 +715,8 @@ writer.uint32(/* id 11, wireType 0 =*/88).int32(message.weakDependency[i]); if (message.syntax != null && Object.hasOwnProperty.call(message, "syntax")) writer.uint32(/* id 12, wireType 2 =*/98).string(message.syntax); + if (message.edition != null && Object.hasOwnProperty.call(message, "edition")) + writer.uint32(/* id 13, wireType 2 =*/106).string(message.edition); return writer; }; @@ -707,66 +751,82 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.name = reader.string(); - break; - case 2: - message["package"] = reader.string(); - break; - case 3: - if (!(message.dependency && message.dependency.length)) - message.dependency = []; - message.dependency.push(reader.string()); - break; - case 10: - if (!(message.publicDependency && message.publicDependency.length)) - message.publicDependency = []; - if ((tag & 7) === 2) { - var end2 = reader.uint32() + reader.pos; - while (reader.pos < end2) + case 1: { + message.name = reader.string(); + break; + } + case 2: { + message["package"] = reader.string(); + break; + } + case 3: { + if (!(message.dependency && message.dependency.length)) + message.dependency = []; + message.dependency.push(reader.string()); + break; + } + case 10: { + if (!(message.publicDependency && message.publicDependency.length)) + message.publicDependency = []; + if ((tag & 7) === 2) { + var end2 = reader.uint32() + reader.pos; + while (reader.pos < end2) + message.publicDependency.push(reader.int32()); + } else message.publicDependency.push(reader.int32()); - } else - message.publicDependency.push(reader.int32()); - break; - case 11: - if (!(message.weakDependency && message.weakDependency.length)) - message.weakDependency = []; - if ((tag & 7) === 2) { - var end2 = reader.uint32() + reader.pos; - while (reader.pos < end2) + break; + } + case 11: { + if (!(message.weakDependency && message.weakDependency.length)) + message.weakDependency = []; + if ((tag & 7) === 2) { + var end2 = reader.uint32() + reader.pos; + while (reader.pos < end2) + message.weakDependency.push(reader.int32()); + } else message.weakDependency.push(reader.int32()); - } else - message.weakDependency.push(reader.int32()); - break; - case 4: - if (!(message.messageType && message.messageType.length)) - message.messageType = []; - message.messageType.push($root.google.protobuf.DescriptorProto.decode(reader, reader.uint32())); - break; - case 5: - if (!(message.enumType && message.enumType.length)) - message.enumType = []; - message.enumType.push($root.google.protobuf.EnumDescriptorProto.decode(reader, reader.uint32())); - break; - case 6: - if (!(message.service && message.service.length)) - message.service = []; - message.service.push($root.google.protobuf.ServiceDescriptorProto.decode(reader, reader.uint32())); - break; - case 7: - if (!(message.extension && message.extension.length)) - message.extension = []; - message.extension.push($root.google.protobuf.FieldDescriptorProto.decode(reader, reader.uint32())); - break; - case 8: - message.options = $root.google.protobuf.FileOptions.decode(reader, reader.uint32()); - break; - case 9: - message.sourceCodeInfo = $root.google.protobuf.SourceCodeInfo.decode(reader, reader.uint32()); - break; - case 12: - message.syntax = reader.string(); - break; + break; + } + case 4: { + if (!(message.messageType && message.messageType.length)) + message.messageType = []; + message.messageType.push($root.google.protobuf.DescriptorProto.decode(reader, reader.uint32())); + break; + } + case 5: { + if (!(message.enumType && message.enumType.length)) + message.enumType = []; + message.enumType.push($root.google.protobuf.EnumDescriptorProto.decode(reader, reader.uint32())); + break; + } + case 6: { + if (!(message.service && message.service.length)) + message.service = []; + message.service.push($root.google.protobuf.ServiceDescriptorProto.decode(reader, reader.uint32())); + break; + } + case 7: { + if (!(message.extension && message.extension.length)) + message.extension = []; + message.extension.push($root.google.protobuf.FieldDescriptorProto.decode(reader, reader.uint32())); + break; + } + case 8: { + message.options = $root.google.protobuf.FileOptions.decode(reader, reader.uint32()); + break; + } + case 9: { + message.sourceCodeInfo = $root.google.protobuf.SourceCodeInfo.decode(reader, reader.uint32()); + break; + } + case 12: { + message.syntax = reader.string(); + break; + } + case 13: { + message.edition = reader.string(); + break; + } default: reader.skipType(tag & 7); break; @@ -878,6 +938,9 @@ if (message.syntax != null && message.hasOwnProperty("syntax")) if (!$util.isString(message.syntax)) return "syntax: string expected"; + if (message.edition != null && message.hasOwnProperty("edition")) + if (!$util.isString(message.edition)) + return "edition: string expected"; return null; }; @@ -970,6 +1033,8 @@ } if (object.syntax != null) message.syntax = String(object.syntax); + if (object.edition != null) + message.edition = String(object.edition); return message; }; @@ -1001,6 +1066,7 @@ object.options = null; object.sourceCodeInfo = null; object.syntax = ""; + object.edition = ""; } if (message.name != null && message.hasOwnProperty("name")) object.name = message.name; @@ -1047,6 +1113,8 @@ } if (message.syntax != null && message.hasOwnProperty("syntax")) object.syntax = message.syntax; + if (message.edition != null && message.hasOwnProperty("edition")) + object.edition = message.edition; return object; }; @@ -1061,6 +1129,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for FileDescriptorProto + * @function getTypeUrl + * @memberof google.protobuf.FileDescriptorProto + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + FileDescriptorProto.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.protobuf.FileDescriptorProto"; + }; + return FileDescriptorProto; })(); @@ -1271,52 +1354,62 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.name = reader.string(); - break; - case 2: - if (!(message.field && message.field.length)) - message.field = []; - message.field.push($root.google.protobuf.FieldDescriptorProto.decode(reader, reader.uint32())); - break; - case 6: - if (!(message.extension && message.extension.length)) - message.extension = []; - message.extension.push($root.google.protobuf.FieldDescriptorProto.decode(reader, reader.uint32())); - break; - case 3: - if (!(message.nestedType && message.nestedType.length)) - message.nestedType = []; - message.nestedType.push($root.google.protobuf.DescriptorProto.decode(reader, reader.uint32())); - break; - case 4: - if (!(message.enumType && message.enumType.length)) - message.enumType = []; - message.enumType.push($root.google.protobuf.EnumDescriptorProto.decode(reader, reader.uint32())); - break; - case 5: - if (!(message.extensionRange && message.extensionRange.length)) - message.extensionRange = []; - message.extensionRange.push($root.google.protobuf.DescriptorProto.ExtensionRange.decode(reader, reader.uint32())); - break; - case 8: - if (!(message.oneofDecl && message.oneofDecl.length)) - message.oneofDecl = []; - message.oneofDecl.push($root.google.protobuf.OneofDescriptorProto.decode(reader, reader.uint32())); - break; - case 7: - message.options = $root.google.protobuf.MessageOptions.decode(reader, reader.uint32()); - break; - case 9: - if (!(message.reservedRange && message.reservedRange.length)) - message.reservedRange = []; - message.reservedRange.push($root.google.protobuf.DescriptorProto.ReservedRange.decode(reader, reader.uint32())); - break; - case 10: - if (!(message.reservedName && message.reservedName.length)) - message.reservedName = []; - message.reservedName.push(reader.string()); - break; + case 1: { + message.name = reader.string(); + break; + } + case 2: { + if (!(message.field && message.field.length)) + message.field = []; + message.field.push($root.google.protobuf.FieldDescriptorProto.decode(reader, reader.uint32())); + break; + } + case 6: { + if (!(message.extension && message.extension.length)) + message.extension = []; + message.extension.push($root.google.protobuf.FieldDescriptorProto.decode(reader, reader.uint32())); + break; + } + case 3: { + if (!(message.nestedType && message.nestedType.length)) + message.nestedType = []; + message.nestedType.push($root.google.protobuf.DescriptorProto.decode(reader, reader.uint32())); + break; + } + case 4: { + if (!(message.enumType && message.enumType.length)) + message.enumType = []; + message.enumType.push($root.google.protobuf.EnumDescriptorProto.decode(reader, reader.uint32())); + break; + } + case 5: { + if (!(message.extensionRange && message.extensionRange.length)) + message.extensionRange = []; + message.extensionRange.push($root.google.protobuf.DescriptorProto.ExtensionRange.decode(reader, reader.uint32())); + break; + } + case 8: { + if (!(message.oneofDecl && message.oneofDecl.length)) + message.oneofDecl = []; + message.oneofDecl.push($root.google.protobuf.OneofDescriptorProto.decode(reader, reader.uint32())); + break; + } + case 7: { + message.options = $root.google.protobuf.MessageOptions.decode(reader, reader.uint32()); + break; + } + case 9: { + if (!(message.reservedRange && message.reservedRange.length)) + message.reservedRange = []; + message.reservedRange.push($root.google.protobuf.DescriptorProto.ReservedRange.decode(reader, reader.uint32())); + break; + } + case 10: { + if (!(message.reservedName && message.reservedName.length)) + message.reservedName = []; + message.reservedName.push(reader.string()); + break; + } default: reader.skipType(tag & 7); break; @@ -1617,6 +1710,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for DescriptorProto + * @function getTypeUrl + * @memberof google.protobuf.DescriptorProto + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + DescriptorProto.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.protobuf.DescriptorProto"; + }; + DescriptorProto.ExtensionRange = (function() { /** @@ -1731,15 +1839,18 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.start = reader.int32(); - break; - case 2: - message.end = reader.int32(); - break; - case 3: - message.options = $root.google.protobuf.ExtensionRangeOptions.decode(reader, reader.uint32()); - break; + case 1: { + message.start = reader.int32(); + break; + } + case 2: { + message.end = reader.int32(); + break; + } + case 3: { + message.options = $root.google.protobuf.ExtensionRangeOptions.decode(reader, reader.uint32()); + break; + } default: reader.skipType(tag & 7); break; @@ -1851,6 +1962,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for ExtensionRange + * @function getTypeUrl + * @memberof google.protobuf.DescriptorProto.ExtensionRange + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + ExtensionRange.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.protobuf.DescriptorProto.ExtensionRange"; + }; + return ExtensionRange; })(); @@ -1957,12 +2083,14 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.start = reader.int32(); - break; - case 2: - message.end = reader.int32(); - break; + case 1: { + message.start = reader.int32(); + break; + } + case 2: { + message.end = reader.int32(); + break; + } default: reader.skipType(tag & 7); break; @@ -2061,6 +2189,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for ReservedRange + * @function getTypeUrl + * @memberof google.protobuf.DescriptorProto.ReservedRange + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + ReservedRange.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.protobuf.DescriptorProto.ReservedRange"; + }; + return ReservedRange; })(); @@ -2161,11 +2304,12 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 999: - if (!(message.uninterpretedOption && message.uninterpretedOption.length)) - message.uninterpretedOption = []; - message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32())); - break; + case 999: { + if (!(message.uninterpretedOption && message.uninterpretedOption.length)) + message.uninterpretedOption = []; + message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32())); + break; + } default: reader.skipType(tag & 7); break; @@ -2272,6 +2416,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for ExtensionRangeOptions + * @function getTypeUrl + * @memberof google.protobuf.ExtensionRangeOptions + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + ExtensionRangeOptions.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.protobuf.ExtensionRangeOptions"; + }; + return ExtensionRangeOptions; })(); @@ -2477,39 +2636,50 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.name = reader.string(); - break; - case 3: - message.number = reader.int32(); - break; - case 4: - message.label = reader.int32(); - break; - case 5: - message.type = reader.int32(); - break; - case 6: - message.typeName = reader.string(); - break; - case 2: - message.extendee = reader.string(); - break; - case 7: - message.defaultValue = reader.string(); - break; - case 9: - message.oneofIndex = reader.int32(); - break; - case 10: - message.jsonName = reader.string(); - break; - case 8: - message.options = $root.google.protobuf.FieldOptions.decode(reader, reader.uint32()); - break; - case 17: - message.proto3Optional = reader.bool(); - break; + case 1: { + message.name = reader.string(); + break; + } + case 3: { + message.number = reader.int32(); + break; + } + case 4: { + message.label = reader.int32(); + break; + } + case 5: { + message.type = reader.int32(); + break; + } + case 6: { + message.typeName = reader.string(); + break; + } + case 2: { + message.extendee = reader.string(); + break; + } + case 7: { + message.defaultValue = reader.string(); + break; + } + case 9: { + message.oneofIndex = reader.int32(); + break; + } + case 10: { + message.jsonName = reader.string(); + break; + } + case 8: { + message.options = $root.google.protobuf.FieldOptions.decode(reader, reader.uint32()); + break; + } + case 17: { + message.proto3Optional = reader.bool(); + break; + } default: reader.skipType(tag & 7); break; @@ -2796,6 +2966,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for FieldDescriptorProto + * @function getTypeUrl + * @memberof google.protobuf.FieldDescriptorProto + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + FieldDescriptorProto.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.protobuf.FieldDescriptorProto"; + }; + /** * Type enum. * @name google.protobuf.FieldDescriptorProto.Type @@ -2964,12 +3149,14 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.name = reader.string(); - break; - case 2: - message.options = $root.google.protobuf.OneofOptions.decode(reader, reader.uint32()); - break; + case 1: { + message.name = reader.string(); + break; + } + case 2: { + message.options = $root.google.protobuf.OneofOptions.decode(reader, reader.uint32()); + break; + } default: reader.skipType(tag & 7); break; @@ -3073,6 +3260,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for OneofDescriptorProto + * @function getTypeUrl + * @memberof google.protobuf.OneofDescriptorProto + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + OneofDescriptorProto.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.protobuf.OneofDescriptorProto"; + }; + return OneofDescriptorProto; })(); @@ -3218,27 +3420,32 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.name = reader.string(); - break; - case 2: - if (!(message.value && message.value.length)) - message.value = []; - message.value.push($root.google.protobuf.EnumValueDescriptorProto.decode(reader, reader.uint32())); - break; - case 3: - message.options = $root.google.protobuf.EnumOptions.decode(reader, reader.uint32()); - break; - case 4: - if (!(message.reservedRange && message.reservedRange.length)) - message.reservedRange = []; - message.reservedRange.push($root.google.protobuf.EnumDescriptorProto.EnumReservedRange.decode(reader, reader.uint32())); - break; - case 5: - if (!(message.reservedName && message.reservedName.length)) - message.reservedName = []; - message.reservedName.push(reader.string()); - break; + case 1: { + message.name = reader.string(); + break; + } + case 2: { + if (!(message.value && message.value.length)) + message.value = []; + message.value.push($root.google.protobuf.EnumValueDescriptorProto.decode(reader, reader.uint32())); + break; + } + case 3: { + message.options = $root.google.protobuf.EnumOptions.decode(reader, reader.uint32()); + break; + } + case 4: { + if (!(message.reservedRange && message.reservedRange.length)) + message.reservedRange = []; + message.reservedRange.push($root.google.protobuf.EnumDescriptorProto.EnumReservedRange.decode(reader, reader.uint32())); + break; + } + case 5: { + if (!(message.reservedName && message.reservedName.length)) + message.reservedName = []; + message.reservedName.push(reader.string()); + break; + } default: reader.skipType(tag & 7); break; @@ -3414,6 +3621,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for EnumDescriptorProto + * @function getTypeUrl + * @memberof google.protobuf.EnumDescriptorProto + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + EnumDescriptorProto.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.protobuf.EnumDescriptorProto"; + }; + EnumDescriptorProto.EnumReservedRange = (function() { /** @@ -3517,12 +3739,14 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.start = reader.int32(); - break; - case 2: - message.end = reader.int32(); - break; + case 1: { + message.start = reader.int32(); + break; + } + case 2: { + message.end = reader.int32(); + break; + } default: reader.skipType(tag & 7); break; @@ -3621,6 +3845,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for EnumReservedRange + * @function getTypeUrl + * @memberof google.protobuf.EnumDescriptorProto.EnumReservedRange + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + EnumReservedRange.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.protobuf.EnumDescriptorProto.EnumReservedRange"; + }; + return EnumReservedRange; })(); @@ -3741,15 +3980,18 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.name = reader.string(); - break; - case 2: - message.number = reader.int32(); - break; - case 3: - message.options = $root.google.protobuf.EnumValueOptions.decode(reader, reader.uint32()); - break; + case 1: { + message.name = reader.string(); + break; + } + case 2: { + message.number = reader.int32(); + break; + } + case 3: { + message.options = $root.google.protobuf.EnumValueOptions.decode(reader, reader.uint32()); + break; + } default: reader.skipType(tag & 7); break; @@ -3861,6 +4103,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for EnumValueDescriptorProto + * @function getTypeUrl + * @memberof google.protobuf.EnumValueDescriptorProto + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + EnumValueDescriptorProto.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.protobuf.EnumValueDescriptorProto"; + }; + return EnumValueDescriptorProto; })(); @@ -3980,17 +4237,20 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.name = reader.string(); - break; - case 2: - if (!(message.method && message.method.length)) - message.method = []; - message.method.push($root.google.protobuf.MethodDescriptorProto.decode(reader, reader.uint32())); - break; - case 3: - message.options = $root.google.protobuf.ServiceOptions.decode(reader, reader.uint32()); - break; + case 1: { + message.name = reader.string(); + break; + } + case 2: { + if (!(message.method && message.method.length)) + message.method = []; + message.method.push($root.google.protobuf.MethodDescriptorProto.decode(reader, reader.uint32())); + break; + } + case 3: { + message.options = $root.google.protobuf.ServiceOptions.decode(reader, reader.uint32()); + break; + } default: reader.skipType(tag & 7); break; @@ -4120,6 +4380,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for ServiceDescriptorProto + * @function getTypeUrl + * @memberof google.protobuf.ServiceDescriptorProto + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + ServiceDescriptorProto.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.protobuf.ServiceDescriptorProto"; + }; + return ServiceDescriptorProto; })(); @@ -4270,24 +4545,30 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.name = reader.string(); - break; - case 2: - message.inputType = reader.string(); - break; - case 3: - message.outputType = reader.string(); - break; - case 4: - message.options = $root.google.protobuf.MethodOptions.decode(reader, reader.uint32()); - break; - case 5: - message.clientStreaming = reader.bool(); - break; - case 6: - message.serverStreaming = reader.bool(); - break; + case 1: { + message.name = reader.string(); + break; + } + case 2: { + message.inputType = reader.string(); + break; + } + case 3: { + message.outputType = reader.string(); + break; + } + case 4: { + message.options = $root.google.protobuf.MethodOptions.decode(reader, reader.uint32()); + break; + } + case 5: { + message.clientStreaming = reader.bool(); + break; + } + case 6: { + message.serverStreaming = reader.bool(); + break; + } default: reader.skipType(tag & 7); break; @@ -4423,6 +4704,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for MethodDescriptorProto + * @function getTypeUrl + * @memberof google.protobuf.MethodDescriptorProto + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + MethodDescriptorProto.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.protobuf.MethodDescriptorProto"; + }; + return MethodDescriptorProto; })(); @@ -4753,76 +5049,98 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.javaPackage = reader.string(); - break; - case 8: - message.javaOuterClassname = reader.string(); - break; - case 10: - message.javaMultipleFiles = reader.bool(); - break; - case 20: - message.javaGenerateEqualsAndHash = reader.bool(); - break; - case 27: - message.javaStringCheckUtf8 = reader.bool(); - break; - case 9: - message.optimizeFor = reader.int32(); - break; - case 11: - message.goPackage = reader.string(); - break; - case 16: - message.ccGenericServices = reader.bool(); - break; - case 17: - message.javaGenericServices = reader.bool(); - break; - case 18: - message.pyGenericServices = reader.bool(); - break; - case 42: - message.phpGenericServices = reader.bool(); - break; - case 23: - message.deprecated = reader.bool(); - break; - case 31: - message.ccEnableArenas = reader.bool(); - break; - case 36: - message.objcClassPrefix = reader.string(); - break; - case 37: - message.csharpNamespace = reader.string(); - break; - case 39: - message.swiftPrefix = reader.string(); - break; - case 40: - message.phpClassPrefix = reader.string(); - break; - case 41: - message.phpNamespace = reader.string(); - break; - case 44: - message.phpMetadataNamespace = reader.string(); - break; - case 45: - message.rubyPackage = reader.string(); - break; - case 999: - if (!(message.uninterpretedOption && message.uninterpretedOption.length)) - message.uninterpretedOption = []; - message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32())); - break; - case 1053: - if (!(message[".google.api.resourceDefinition"] && message[".google.api.resourceDefinition"].length)) - message[".google.api.resourceDefinition"] = []; - message[".google.api.resourceDefinition"].push($root.google.api.ResourceDescriptor.decode(reader, reader.uint32())); - break; + case 1: { + message.javaPackage = reader.string(); + break; + } + case 8: { + message.javaOuterClassname = reader.string(); + break; + } + case 10: { + message.javaMultipleFiles = reader.bool(); + break; + } + case 20: { + message.javaGenerateEqualsAndHash = reader.bool(); + break; + } + case 27: { + message.javaStringCheckUtf8 = reader.bool(); + break; + } + case 9: { + message.optimizeFor = reader.int32(); + break; + } + case 11: { + message.goPackage = reader.string(); + break; + } + case 16: { + message.ccGenericServices = reader.bool(); + break; + } + case 17: { + message.javaGenericServices = reader.bool(); + break; + } + case 18: { + message.pyGenericServices = reader.bool(); + break; + } + case 42: { + message.phpGenericServices = reader.bool(); + break; + } + case 23: { + message.deprecated = reader.bool(); + break; + } + case 31: { + message.ccEnableArenas = reader.bool(); + break; + } + case 36: { + message.objcClassPrefix = reader.string(); + break; + } + case 37: { + message.csharpNamespace = reader.string(); + break; + } + case 39: { + message.swiftPrefix = reader.string(); + break; + } + case 40: { + message.phpClassPrefix = reader.string(); + break; + } + case 41: { + message.phpNamespace = reader.string(); + break; + } + case 44: { + message.phpMetadataNamespace = reader.string(); + break; + } + case 45: { + message.rubyPackage = reader.string(); + break; + } + case 999: { + if (!(message.uninterpretedOption && message.uninterpretedOption.length)) + message.uninterpretedOption = []; + message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32())); + break; + } + case 1053: { + if (!(message[".google.api.resourceDefinition"] && message[".google.api.resourceDefinition"].length)) + message[".google.api.resourceDefinition"] = []; + message[".google.api.resourceDefinition"].push($root.google.api.ResourceDescriptor.decode(reader, reader.uint32())); + break; + } default: reader.skipType(tag & 7); break; @@ -5135,6 +5453,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for FileOptions + * @function getTypeUrl + * @memberof google.protobuf.FileOptions + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + FileOptions.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.protobuf.FileOptions"; + }; + /** * OptimizeMode enum. * @name google.protobuf.FileOptions.OptimizeMode @@ -5303,26 +5636,32 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.messageSetWireFormat = reader.bool(); - break; - case 2: - message.noStandardDescriptorAccessor = reader.bool(); - break; - case 3: - message.deprecated = reader.bool(); - break; - case 7: - message.mapEntry = reader.bool(); - break; - case 999: - if (!(message.uninterpretedOption && message.uninterpretedOption.length)) - message.uninterpretedOption = []; - message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32())); - break; - case 1053: - message[".google.api.resource"] = $root.google.api.ResourceDescriptor.decode(reader, reader.uint32()); - break; + case 1: { + message.messageSetWireFormat = reader.bool(); + break; + } + case 2: { + message.noStandardDescriptorAccessor = reader.bool(); + break; + } + case 3: { + message.deprecated = reader.bool(); + break; + } + case 7: { + message.mapEntry = reader.bool(); + break; + } + case 999: { + if (!(message.uninterpretedOption && message.uninterpretedOption.length)) + message.uninterpretedOption = []; + message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32())); + break; + } + case 1053: { + message[".google.api.resource"] = $root.google.api.ResourceDescriptor.decode(reader, reader.uint32()); + break; + } default: reader.skipType(tag & 7); break; @@ -5476,6 +5815,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for MessageOptions + * @function getTypeUrl + * @memberof google.protobuf.MessageOptions + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + MessageOptions.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.protobuf.MessageOptions"; + }; + return MessageOptions; })(); @@ -5489,6 +5843,7 @@ * @property {boolean|null} [packed] FieldOptions packed * @property {google.protobuf.FieldOptions.JSType|null} [jstype] FieldOptions jstype * @property {boolean|null} [lazy] FieldOptions lazy + * @property {boolean|null} [unverifiedLazy] FieldOptions unverifiedLazy * @property {boolean|null} [deprecated] FieldOptions deprecated * @property {boolean|null} [weak] FieldOptions weak * @property {Array.|null} [uninterpretedOption] FieldOptions uninterpretedOption @@ -5545,6 +5900,14 @@ */ FieldOptions.prototype.lazy = false; + /** + * FieldOptions unverifiedLazy. + * @member {boolean} unverifiedLazy + * @memberof google.protobuf.FieldOptions + * @instance + */ + FieldOptions.prototype.unverifiedLazy = false; + /** * FieldOptions deprecated. * @member {boolean} deprecated @@ -5621,6 +5984,8 @@ writer.uint32(/* id 6, wireType 0 =*/48).int32(message.jstype); if (message.weak != null && Object.hasOwnProperty.call(message, "weak")) writer.uint32(/* id 10, wireType 0 =*/80).bool(message.weak); + if (message.unverifiedLazy != null && Object.hasOwnProperty.call(message, "unverifiedLazy")) + writer.uint32(/* id 15, wireType 0 =*/120).bool(message.unverifiedLazy); if (message.uninterpretedOption != null && message.uninterpretedOption.length) for (var i = 0; i < message.uninterpretedOption.length; ++i) $root.google.protobuf.UninterpretedOption.encode(message.uninterpretedOption[i], writer.uint32(/* id 999, wireType 2 =*/7994).fork()).ldelim(); @@ -5666,42 +6031,55 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.ctype = reader.int32(); - break; - case 2: - message.packed = reader.bool(); - break; - case 6: - message.jstype = reader.int32(); - break; - case 5: - message.lazy = reader.bool(); - break; - case 3: - message.deprecated = reader.bool(); - break; - case 10: - message.weak = reader.bool(); - break; - case 999: - if (!(message.uninterpretedOption && message.uninterpretedOption.length)) - message.uninterpretedOption = []; - message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32())); - break; - case 1052: - if (!(message[".google.api.fieldBehavior"] && message[".google.api.fieldBehavior"].length)) - message[".google.api.fieldBehavior"] = []; - if ((tag & 7) === 2) { - var end2 = reader.uint32() + reader.pos; - while (reader.pos < end2) + case 1: { + message.ctype = reader.int32(); + break; + } + case 2: { + message.packed = reader.bool(); + break; + } + case 6: { + message.jstype = reader.int32(); + break; + } + case 5: { + message.lazy = reader.bool(); + break; + } + case 15: { + message.unverifiedLazy = reader.bool(); + break; + } + case 3: { + message.deprecated = reader.bool(); + break; + } + case 10: { + message.weak = reader.bool(); + break; + } + case 999: { + if (!(message.uninterpretedOption && message.uninterpretedOption.length)) + message.uninterpretedOption = []; + message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32())); + break; + } + case 1052: { + if (!(message[".google.api.fieldBehavior"] && message[".google.api.fieldBehavior"].length)) + message[".google.api.fieldBehavior"] = []; + if ((tag & 7) === 2) { + var end2 = reader.uint32() + reader.pos; + while (reader.pos < end2) + message[".google.api.fieldBehavior"].push(reader.int32()); + } else message[".google.api.fieldBehavior"].push(reader.int32()); - } else - message[".google.api.fieldBehavior"].push(reader.int32()); - break; - case 1055: - message[".google.api.resourceReference"] = $root.google.api.ResourceReference.decode(reader, reader.uint32()); - break; + break; + } + case 1055: { + message[".google.api.resourceReference"] = $root.google.api.ResourceReference.decode(reader, reader.uint32()); + break; + } default: reader.skipType(tag & 7); break; @@ -5761,6 +6139,9 @@ if (message.lazy != null && message.hasOwnProperty("lazy")) if (typeof message.lazy !== "boolean") return "lazy: boolean expected"; + if (message.unverifiedLazy != null && message.hasOwnProperty("unverifiedLazy")) + if (typeof message.unverifiedLazy !== "boolean") + return "unverifiedLazy: boolean expected"; if (message.deprecated != null && message.hasOwnProperty("deprecated")) if (typeof message.deprecated !== "boolean") return "deprecated: boolean expected"; @@ -5846,6 +6227,8 @@ } if (object.lazy != null) message.lazy = Boolean(object.lazy); + if (object.unverifiedLazy != null) + message.unverifiedLazy = Boolean(object.unverifiedLazy); if (object.deprecated != null) message.deprecated = Boolean(object.deprecated); if (object.weak != null) @@ -5933,6 +6316,7 @@ object.lazy = false; object.jstype = options.enums === String ? "JS_NORMAL" : 0; object.weak = false; + object.unverifiedLazy = false; object[".google.api.resourceReference"] = null; } if (message.ctype != null && message.hasOwnProperty("ctype")) @@ -5947,6 +6331,8 @@ object.jstype = options.enums === String ? $root.google.protobuf.FieldOptions.JSType[message.jstype] : message.jstype; if (message.weak != null && message.hasOwnProperty("weak")) object.weak = message.weak; + if (message.unverifiedLazy != null && message.hasOwnProperty("unverifiedLazy")) + object.unverifiedLazy = message.unverifiedLazy; if (message.uninterpretedOption && message.uninterpretedOption.length) { object.uninterpretedOption = []; for (var j = 0; j < message.uninterpretedOption.length; ++j) @@ -5973,6 +6359,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for FieldOptions + * @function getTypeUrl + * @memberof google.protobuf.FieldOptions + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + FieldOptions.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.protobuf.FieldOptions"; + }; + /** * CType enum. * @name google.protobuf.FieldOptions.CType @@ -6102,11 +6503,12 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 999: - if (!(message.uninterpretedOption && message.uninterpretedOption.length)) - message.uninterpretedOption = []; - message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32())); - break; + case 999: { + if (!(message.uninterpretedOption && message.uninterpretedOption.length)) + message.uninterpretedOption = []; + message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32())); + break; + } default: reader.skipType(tag & 7); break; @@ -6213,6 +6615,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for OneofOptions + * @function getTypeUrl + * @memberof google.protobuf.OneofOptions + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + OneofOptions.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.protobuf.OneofOptions"; + }; + return OneofOptions; })(); @@ -6332,17 +6749,20 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 2: - message.allowAlias = reader.bool(); - break; - case 3: - message.deprecated = reader.bool(); - break; - case 999: - if (!(message.uninterpretedOption && message.uninterpretedOption.length)) - message.uninterpretedOption = []; - message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32())); - break; + case 2: { + message.allowAlias = reader.bool(); + break; + } + case 3: { + message.deprecated = reader.bool(); + break; + } + case 999: { + if (!(message.uninterpretedOption && message.uninterpretedOption.length)) + message.uninterpretedOption = []; + message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32())); + break; + } default: reader.skipType(tag & 7); break; @@ -6467,6 +6887,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for EnumOptions + * @function getTypeUrl + * @memberof google.protobuf.EnumOptions + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + EnumOptions.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.protobuf.EnumOptions"; + }; + return EnumOptions; })(); @@ -6575,14 +7010,16 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.deprecated = reader.bool(); - break; - case 999: - if (!(message.uninterpretedOption && message.uninterpretedOption.length)) - message.uninterpretedOption = []; - message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32())); - break; + case 1: { + message.deprecated = reader.bool(); + break; + } + case 999: { + if (!(message.uninterpretedOption && message.uninterpretedOption.length)) + message.uninterpretedOption = []; + message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32())); + break; + } default: reader.skipType(tag & 7); break; @@ -6698,6 +7135,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for EnumValueOptions + * @function getTypeUrl + * @memberof google.protobuf.EnumValueOptions + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + EnumValueOptions.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.protobuf.EnumValueOptions"; + }; + return EnumValueOptions; })(); @@ -6828,20 +7280,24 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 33: - message.deprecated = reader.bool(); - break; - case 999: - if (!(message.uninterpretedOption && message.uninterpretedOption.length)) - message.uninterpretedOption = []; - message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32())); - break; - case 1049: - message[".google.api.defaultHost"] = reader.string(); - break; - case 1050: - message[".google.api.oauthScopes"] = reader.string(); - break; + case 33: { + message.deprecated = reader.bool(); + break; + } + case 999: { + if (!(message.uninterpretedOption && message.uninterpretedOption.length)) + message.uninterpretedOption = []; + message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32())); + break; + } + case 1049: { + message[".google.api.defaultHost"] = reader.string(); + break; + } + case 1050: { + message[".google.api.oauthScopes"] = reader.string(); + break; + } default: reader.skipType(tag & 7); break; @@ -6974,6 +7430,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for ServiceOptions + * @function getTypeUrl + * @memberof google.protobuf.ServiceOptions + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + ServiceOptions.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.protobuf.ServiceOptions"; + }; + return ServiceOptions; })(); @@ -7128,28 +7599,34 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 33: - message.deprecated = reader.bool(); - break; - case 34: - message.idempotencyLevel = reader.int32(); - break; - case 999: - if (!(message.uninterpretedOption && message.uninterpretedOption.length)) - message.uninterpretedOption = []; - message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32())); - break; - case 72295728: - message[".google.api.http"] = $root.google.api.HttpRule.decode(reader, reader.uint32()); - break; - case 1051: - if (!(message[".google.api.methodSignature"] && message[".google.api.methodSignature"].length)) - message[".google.api.methodSignature"] = []; - message[".google.api.methodSignature"].push(reader.string()); - break; - case 1049: - message[".google.longrunning.operationInfo"] = $root.google.longrunning.OperationInfo.decode(reader, reader.uint32()); - break; + case 33: { + message.deprecated = reader.bool(); + break; + } + case 34: { + message.idempotencyLevel = reader.int32(); + break; + } + case 999: { + if (!(message.uninterpretedOption && message.uninterpretedOption.length)) + message.uninterpretedOption = []; + message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32())); + break; + } + case 72295728: { + message[".google.api.http"] = $root.google.api.HttpRule.decode(reader, reader.uint32()); + break; + } + case 1051: { + if (!(message[".google.api.methodSignature"] && message[".google.api.methodSignature"].length)) + message[".google.api.methodSignature"] = []; + message[".google.api.methodSignature"].push(reader.string()); + break; + } + case 1049: { + message[".google.longrunning.operationInfo"] = $root.google.longrunning.OperationInfo.decode(reader, reader.uint32()); + break; + } default: reader.skipType(tag & 7); break; @@ -7339,6 +7816,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for MethodOptions + * @function getTypeUrl + * @memberof google.protobuf.MethodOptions + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + MethodOptions.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.protobuf.MethodOptions"; + }; + /** * IdempotencyLevel enum. * @name google.protobuf.MethodOptions.IdempotencyLevel @@ -7518,29 +8010,36 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 2: - if (!(message.name && message.name.length)) - message.name = []; - message.name.push($root.google.protobuf.UninterpretedOption.NamePart.decode(reader, reader.uint32())); - break; - case 3: - message.identifierValue = reader.string(); - break; - case 4: - message.positiveIntValue = reader.uint64(); - break; - case 5: - message.negativeIntValue = reader.int64(); - break; - case 6: - message.doubleValue = reader.double(); - break; - case 7: - message.stringValue = reader.bytes(); - break; - case 8: - message.aggregateValue = reader.string(); - break; + case 2: { + if (!(message.name && message.name.length)) + message.name = []; + message.name.push($root.google.protobuf.UninterpretedOption.NamePart.decode(reader, reader.uint32())); + break; + } + case 3: { + message.identifierValue = reader.string(); + break; + } + case 4: { + message.positiveIntValue = reader.uint64(); + break; + } + case 5: { + message.negativeIntValue = reader.int64(); + break; + } + case 6: { + message.doubleValue = reader.double(); + break; + } + case 7: { + message.stringValue = reader.bytes(); + break; + } + case 8: { + message.aggregateValue = reader.string(); + break; + } default: reader.skipType(tag & 7); break; @@ -7653,7 +8152,7 @@ if (object.stringValue != null) if (typeof object.stringValue === "string") $util.base64.decode(object.stringValue, message.stringValue = $util.newBuffer($util.base64.length(object.stringValue)), 0); - else if (object.stringValue.length) + else if (object.stringValue.length >= 0) message.stringValue = object.stringValue; if (object.aggregateValue != null) message.aggregateValue = String(object.aggregateValue); @@ -7734,6 +8233,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for UninterpretedOption + * @function getTypeUrl + * @memberof google.protobuf.UninterpretedOption + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + UninterpretedOption.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.protobuf.UninterpretedOption"; + }; + UninterpretedOption.NamePart = (function() { /** @@ -7835,12 +8349,14 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.namePart = reader.string(); - break; - case 2: - message.isExtension = reader.bool(); - break; + case 1: { + message.namePart = reader.string(); + break; + } + case 2: { + message.isExtension = reader.bool(); + break; + } default: reader.skipType(tag & 7); break; @@ -7941,6 +8457,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for NamePart + * @function getTypeUrl + * @memberof google.protobuf.UninterpretedOption.NamePart + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + NamePart.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.protobuf.UninterpretedOption.NamePart"; + }; + return NamePart; })(); @@ -8041,11 +8572,12 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - if (!(message.location && message.location.length)) - message.location = []; - message.location.push($root.google.protobuf.SourceCodeInfo.Location.decode(reader, reader.uint32())); - break; + case 1: { + if (!(message.location && message.location.length)) + message.location = []; + message.location.push($root.google.protobuf.SourceCodeInfo.Location.decode(reader, reader.uint32())); + break; + } default: reader.skipType(tag & 7); break; @@ -8152,6 +8684,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for SourceCodeInfo + * @function getTypeUrl + * @memberof google.protobuf.SourceCodeInfo + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + SourceCodeInfo.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.protobuf.SourceCodeInfo"; + }; + SourceCodeInfo.Location = (function() { /** @@ -8300,37 +8847,42 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - if (!(message.path && message.path.length)) - message.path = []; - if ((tag & 7) === 2) { - var end2 = reader.uint32() + reader.pos; - while (reader.pos < end2) + case 1: { + if (!(message.path && message.path.length)) + message.path = []; + if ((tag & 7) === 2) { + var end2 = reader.uint32() + reader.pos; + while (reader.pos < end2) + message.path.push(reader.int32()); + } else message.path.push(reader.int32()); - } else - message.path.push(reader.int32()); - break; - case 2: - if (!(message.span && message.span.length)) - message.span = []; - if ((tag & 7) === 2) { - var end2 = reader.uint32() + reader.pos; - while (reader.pos < end2) + break; + } + case 2: { + if (!(message.span && message.span.length)) + message.span = []; + if ((tag & 7) === 2) { + var end2 = reader.uint32() + reader.pos; + while (reader.pos < end2) + message.span.push(reader.int32()); + } else message.span.push(reader.int32()); - } else - message.span.push(reader.int32()); - break; - case 3: - message.leadingComments = reader.string(); - break; - case 4: - message.trailingComments = reader.string(); - break; - case 6: - if (!(message.leadingDetachedComments && message.leadingDetachedComments.length)) - message.leadingDetachedComments = []; - message.leadingDetachedComments.push(reader.string()); - break; + break; + } + case 3: { + message.leadingComments = reader.string(); + break; + } + case 4: { + message.trailingComments = reader.string(); + break; + } + case 6: { + if (!(message.leadingDetachedComments && message.leadingDetachedComments.length)) + message.leadingDetachedComments = []; + message.leadingDetachedComments.push(reader.string()); + break; + } default: reader.skipType(tag & 7); break; @@ -8491,6 +9043,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for Location + * @function getTypeUrl + * @memberof google.protobuf.SourceCodeInfo.Location + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + Location.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.protobuf.SourceCodeInfo.Location"; + }; + return Location; })(); @@ -8591,11 +9158,12 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - if (!(message.annotation && message.annotation.length)) - message.annotation = []; - message.annotation.push($root.google.protobuf.GeneratedCodeInfo.Annotation.decode(reader, reader.uint32())); - break; + case 1: { + if (!(message.annotation && message.annotation.length)) + message.annotation = []; + message.annotation.push($root.google.protobuf.GeneratedCodeInfo.Annotation.decode(reader, reader.uint32())); + break; + } default: reader.skipType(tag & 7); break; @@ -8702,6 +9270,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for GeneratedCodeInfo + * @function getTypeUrl + * @memberof google.protobuf.GeneratedCodeInfo + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + GeneratedCodeInfo.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.protobuf.GeneratedCodeInfo"; + }; + GeneratedCodeInfo.Annotation = (function() { /** @@ -8712,6 +9295,7 @@ * @property {string|null} [sourceFile] Annotation sourceFile * @property {number|null} [begin] Annotation begin * @property {number|null} [end] Annotation end + * @property {google.protobuf.GeneratedCodeInfo.Annotation.Semantic|null} [semantic] Annotation semantic */ /** @@ -8762,6 +9346,14 @@ */ Annotation.prototype.end = 0; + /** + * Annotation semantic. + * @member {google.protobuf.GeneratedCodeInfo.Annotation.Semantic} semantic + * @memberof google.protobuf.GeneratedCodeInfo.Annotation + * @instance + */ + Annotation.prototype.semantic = 0; + /** * Creates a new Annotation instance using the specified properties. * @function create @@ -8798,6 +9390,8 @@ writer.uint32(/* id 3, wireType 0 =*/24).int32(message.begin); if (message.end != null && Object.hasOwnProperty.call(message, "end")) writer.uint32(/* id 4, wireType 0 =*/32).int32(message.end); + if (message.semantic != null && Object.hasOwnProperty.call(message, "semantic")) + writer.uint32(/* id 5, wireType 0 =*/40).int32(message.semantic); return writer; }; @@ -8832,25 +9426,33 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - if (!(message.path && message.path.length)) - message.path = []; - if ((tag & 7) === 2) { - var end2 = reader.uint32() + reader.pos; - while (reader.pos < end2) + case 1: { + if (!(message.path && message.path.length)) + message.path = []; + if ((tag & 7) === 2) { + var end2 = reader.uint32() + reader.pos; + while (reader.pos < end2) + message.path.push(reader.int32()); + } else message.path.push(reader.int32()); - } else - message.path.push(reader.int32()); - break; - case 2: - message.sourceFile = reader.string(); - break; - case 3: - message.begin = reader.int32(); - break; - case 4: - message.end = reader.int32(); - break; + break; + } + case 2: { + message.sourceFile = reader.string(); + break; + } + case 3: { + message.begin = reader.int32(); + break; + } + case 4: { + message.end = reader.int32(); + break; + } + case 5: { + message.semantic = reader.int32(); + break; + } default: reader.skipType(tag & 7); break; @@ -8902,6 +9504,15 @@ if (message.end != null && message.hasOwnProperty("end")) if (!$util.isInteger(message.end)) return "end: integer expected"; + if (message.semantic != null && message.hasOwnProperty("semantic")) + switch (message.semantic) { + default: + return "semantic: enum value expected"; + case 0: + case 1: + case 2: + break; + } return null; }; @@ -8930,6 +9541,20 @@ message.begin = object.begin | 0; if (object.end != null) message.end = object.end | 0; + switch (object.semantic) { + case "NONE": + case 0: + message.semantic = 0; + break; + case "SET": + case 1: + message.semantic = 1; + break; + case "ALIAS": + case 2: + message.semantic = 2; + break; + } return message; }; @@ -8952,6 +9577,7 @@ object.sourceFile = ""; object.begin = 0; object.end = 0; + object.semantic = options.enums === String ? "NONE" : 0; } if (message.path && message.path.length) { object.path = []; @@ -8964,6 +9590,8 @@ object.begin = message.begin; if (message.end != null && message.hasOwnProperty("end")) object.end = message.end; + if (message.semantic != null && message.hasOwnProperty("semantic")) + object.semantic = options.enums === String ? $root.google.protobuf.GeneratedCodeInfo.Annotation.Semantic[message.semantic] : message.semantic; return object; }; @@ -8978,6 +9606,37 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for Annotation + * @function getTypeUrl + * @memberof google.protobuf.GeneratedCodeInfo.Annotation + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + Annotation.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.protobuf.GeneratedCodeInfo.Annotation"; + }; + + /** + * Semantic enum. + * @name google.protobuf.GeneratedCodeInfo.Annotation.Semantic + * @enum {number} + * @property {number} NONE=0 NONE value + * @property {number} SET=1 SET value + * @property {number} ALIAS=2 ALIAS value + */ + Annotation.Semantic = (function() { + var valuesById = {}, values = Object.create(valuesById); + values[valuesById[0] = "NONE"] = 0; + values[valuesById[1] = "SET"] = 1; + values[valuesById[2] = "ALIAS"] = 2; + return values; + })(); + return Annotation; })(); @@ -9087,12 +9746,14 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.type_url = reader.string(); - break; - case 2: - message.value = reader.bytes(); - break; + case 1: { + message.type_url = reader.string(); + break; + } + case 2: { + message.value = reader.bytes(); + break; + } default: reader.skipType(tag & 7); break; @@ -9154,7 +9815,7 @@ if (object.value != null) if (typeof object.value === "string") $util.base64.decode(object.value, message.value = $util.newBuffer($util.base64.length(object.value)), 0); - else if (object.value.length) + else if (object.value.length >= 0) message.value = object.value; return message; }; @@ -9200,6 +9861,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for Any + * @function getTypeUrl + * @memberof google.protobuf.Any + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + Any.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.protobuf.Any"; + }; + return Any; })(); @@ -9306,12 +9982,14 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.seconds = reader.int64(); - break; - case 2: - message.nanos = reader.int32(); - break; + case 1: { + message.seconds = reader.int64(); + break; + } + case 2: { + message.nanos = reader.int32(); + break; + } default: reader.skipType(tag & 7); break; @@ -9424,6 +10102,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for Duration + * @function getTypeUrl + * @memberof google.protobuf.Duration + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + Duration.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.protobuf.Duration"; + }; + return Duration; })(); @@ -9584,6 +10277,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for Empty + * @function getTypeUrl + * @memberof google.protobuf.Empty + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + Empty.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.protobuf.Empty"; + }; + return Empty; })(); @@ -9681,11 +10389,12 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - if (!(message.paths && message.paths.length)) - message.paths = []; - message.paths.push(reader.string()); - break; + case 1: { + if (!(message.paths && message.paths.length)) + message.paths = []; + message.paths.push(reader.string()); + break; + } default: reader.skipType(tag & 7); break; @@ -9787,6 +10496,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for FieldMask + * @function getTypeUrl + * @memberof google.protobuf.FieldMask + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + FieldMask.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.protobuf.FieldMask"; + }; + return FieldMask; })(); @@ -9886,28 +10610,29 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - if (message.fields === $util.emptyObject) - message.fields = {}; - var end2 = reader.uint32() + reader.pos; - key = ""; - value = null; - while (reader.pos < end2) { - var tag2 = reader.uint32(); - switch (tag2 >>> 3) { - case 1: - key = reader.string(); - break; - case 2: - value = $root.google.protobuf.Value.decode(reader, reader.uint32()); - break; - default: - reader.skipType(tag2 & 7); - break; + case 1: { + if (message.fields === $util.emptyObject) + message.fields = {}; + var end2 = reader.uint32() + reader.pos; + key = ""; + value = null; + while (reader.pos < end2) { + var tag2 = reader.uint32(); + switch (tag2 >>> 3) { + case 1: + key = reader.string(); + break; + case 2: + value = $root.google.protobuf.Value.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag2 & 7); + break; + } } + message.fields[key] = value; + break; } - message.fields[key] = value; - break; default: reader.skipType(tag & 7); break; @@ -10016,6 +10741,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for Struct + * @function getTypeUrl + * @memberof google.protobuf.Struct + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + Struct.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.protobuf.Struct"; + }; + return Struct; })(); @@ -10180,24 +10920,30 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.nullValue = reader.int32(); - break; - case 2: - message.numberValue = reader.double(); - break; - case 3: - message.stringValue = reader.string(); - break; - case 4: - message.boolValue = reader.bool(); - break; - case 5: - message.structValue = $root.google.protobuf.Struct.decode(reader, reader.uint32()); - break; - case 6: - message.listValue = $root.google.protobuf.ListValue.decode(reader, reader.uint32()); - break; + case 1: { + message.nullValue = reader.int32(); + break; + } + case 2: { + message.numberValue = reader.double(); + break; + } + case 3: { + message.stringValue = reader.string(); + break; + } + case 4: { + message.boolValue = reader.bool(); + break; + } + case 5: { + message.structValue = $root.google.protobuf.Struct.decode(reader, reader.uint32()); + break; + } + case 6: { + message.listValue = $root.google.protobuf.ListValue.decode(reader, reader.uint32()); + break; + } default: reader.skipType(tag & 7); break; @@ -10381,6 +11127,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for Value + * @function getTypeUrl + * @memberof google.protobuf.Value + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + Value.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.protobuf.Value"; + }; + return Value; })(); @@ -10490,11 +11251,12 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - if (!(message.values && message.values.length)) - message.values = []; - message.values.push($root.google.protobuf.Value.decode(reader, reader.uint32())); - break; + case 1: { + if (!(message.values && message.values.length)) + message.values = []; + message.values.push($root.google.protobuf.Value.decode(reader, reader.uint32())); + break; + } default: reader.skipType(tag & 7); break; @@ -10601,6 +11363,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for ListValue + * @function getTypeUrl + * @memberof google.protobuf.ListValue + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + ListValue.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.protobuf.ListValue"; + }; + return ListValue; })(); @@ -10808,24 +11585,30 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.clusterName = reader.string(); - break; - case 2: - message.membershipSpec = $root.google.cloud.gkehub.configmanagement.v1.MembershipSpec.decode(reader, reader.uint32()); - break; - case 3: - message.operatorState = $root.google.cloud.gkehub.configmanagement.v1.OperatorState.decode(reader, reader.uint32()); - break; - case 4: - message.configSyncState = $root.google.cloud.gkehub.configmanagement.v1.ConfigSyncState.decode(reader, reader.uint32()); - break; - case 5: - message.policyControllerState = $root.google.cloud.gkehub.configmanagement.v1.PolicyControllerState.decode(reader, reader.uint32()); - break; - case 7: - message.hierarchyControllerState = $root.google.cloud.gkehub.configmanagement.v1.HierarchyControllerState.decode(reader, reader.uint32()); - break; + case 1: { + message.clusterName = reader.string(); + break; + } + case 2: { + message.membershipSpec = $root.google.cloud.gkehub.configmanagement.v1.MembershipSpec.decode(reader, reader.uint32()); + break; + } + case 3: { + message.operatorState = $root.google.cloud.gkehub.configmanagement.v1.OperatorState.decode(reader, reader.uint32()); + break; + } + case 4: { + message.configSyncState = $root.google.cloud.gkehub.configmanagement.v1.ConfigSyncState.decode(reader, reader.uint32()); + break; + } + case 5: { + message.policyControllerState = $root.google.cloud.gkehub.configmanagement.v1.PolicyControllerState.decode(reader, reader.uint32()); + break; + } + case 7: { + message.hierarchyControllerState = $root.google.cloud.gkehub.configmanagement.v1.HierarchyControllerState.decode(reader, reader.uint32()); + break; + } default: reader.skipType(tag & 7); break; @@ -10981,6 +11764,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for MembershipState + * @function getTypeUrl + * @memberof google.cloud.gkehub.configmanagement.v1.MembershipState + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + MembershipState.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.configmanagement.v1.MembershipState"; + }; + return MembershipState; })(); @@ -11109,18 +11907,22 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.configSync = $root.google.cloud.gkehub.configmanagement.v1.ConfigSync.decode(reader, reader.uint32()); - break; - case 2: - message.policyController = $root.google.cloud.gkehub.configmanagement.v1.PolicyController.decode(reader, reader.uint32()); - break; - case 4: - message.hierarchyController = $root.google.cloud.gkehub.configmanagement.v1.HierarchyControllerConfig.decode(reader, reader.uint32()); - break; - case 10: - message.version = reader.string(); - break; + case 1: { + message.configSync = $root.google.cloud.gkehub.configmanagement.v1.ConfigSync.decode(reader, reader.uint32()); + break; + } + case 2: { + message.policyController = $root.google.cloud.gkehub.configmanagement.v1.PolicyController.decode(reader, reader.uint32()); + break; + } + case 4: { + message.hierarchyController = $root.google.cloud.gkehub.configmanagement.v1.HierarchyControllerConfig.decode(reader, reader.uint32()); + break; + } + case 10: { + message.version = reader.string(); + break; + } default: reader.skipType(tag & 7); break; @@ -11250,6 +12052,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for MembershipSpec + * @function getTypeUrl + * @memberof google.cloud.gkehub.configmanagement.v1.MembershipSpec + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + MembershipSpec.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.configmanagement.v1.MembershipSpec"; + }; + return MembershipSpec; })(); @@ -11356,12 +12173,14 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 7: - message.git = $root.google.cloud.gkehub.configmanagement.v1.GitConfig.decode(reader, reader.uint32()); - break; - case 8: - message.sourceFormat = reader.string(); - break; + case 7: { + message.git = $root.google.cloud.gkehub.configmanagement.v1.GitConfig.decode(reader, reader.uint32()); + break; + } + case 8: { + message.sourceFormat = reader.string(); + break; + } default: reader.skipType(tag & 7); break; @@ -11465,6 +12284,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for ConfigSync + * @function getTypeUrl + * @memberof google.cloud.gkehub.configmanagement.v1.ConfigSync + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + ConfigSync.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.configmanagement.v1.ConfigSync"; + }; + return ConfigSync; })(); @@ -11637,30 +12471,38 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.syncRepo = reader.string(); - break; - case 2: - message.syncBranch = reader.string(); - break; - case 3: - message.policyDir = reader.string(); - break; - case 4: - message.syncWaitSecs = reader.int64(); - break; - case 5: - message.syncRev = reader.string(); - break; - case 6: - message.secretType = reader.string(); - break; - case 7: - message.httpsProxy = reader.string(); - break; - case 8: - message.gcpServiceAccountEmail = reader.string(); - break; + case 1: { + message.syncRepo = reader.string(); + break; + } + case 2: { + message.syncBranch = reader.string(); + break; + } + case 3: { + message.policyDir = reader.string(); + break; + } + case 4: { + message.syncWaitSecs = reader.int64(); + break; + } + case 5: { + message.syncRev = reader.string(); + break; + } + case 6: { + message.secretType = reader.string(); + break; + } + case 7: { + message.httpsProxy = reader.string(); + break; + } + case 8: { + message.gcpServiceAccountEmail = reader.string(); + break; + } default: reader.skipType(tag & 7); break; @@ -11821,6 +12663,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for GitConfig + * @function getTypeUrl + * @memberof google.cloud.gkehub.configmanagement.v1.GitConfig + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + GitConfig.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.configmanagement.v1.GitConfig"; + }; + return GitConfig; })(); @@ -11998,26 +12855,32 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.enabled = reader.bool(); - break; - case 2: - message.templateLibraryInstalled = reader.bool(); - break; - case 3: - message.auditIntervalSeconds = reader.int64(); - break; - case 4: - if (!(message.exemptableNamespaces && message.exemptableNamespaces.length)) - message.exemptableNamespaces = []; - message.exemptableNamespaces.push(reader.string()); - break; - case 5: - message.referentialRulesEnabled = reader.bool(); - break; - case 6: - message.logDeniesEnabled = reader.bool(); - break; + case 1: { + message.enabled = reader.bool(); + break; + } + case 2: { + message.templateLibraryInstalled = reader.bool(); + break; + } + case 3: { + message.auditIntervalSeconds = reader.int64(); + break; + } + case 4: { + if (!(message.exemptableNamespaces && message.exemptableNamespaces.length)) + message.exemptableNamespaces = []; + message.exemptableNamespaces.push(reader.string()); + break; + } + case 5: { + message.referentialRulesEnabled = reader.bool(); + break; + } + case 6: { + message.logDeniesEnabled = reader.bool(); + break; + } default: reader.skipType(tag & 7); break; @@ -12180,6 +13043,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for PolicyController + * @function getTypeUrl + * @memberof google.cloud.gkehub.configmanagement.v1.PolicyController + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + PolicyController.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.configmanagement.v1.PolicyController"; + }; + return PolicyController; })(); @@ -12297,15 +13175,18 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.enabled = reader.bool(); - break; - case 2: - message.enablePodTreeLabels = reader.bool(); - break; - case 3: - message.enableHierarchicalResourceQuota = reader.bool(); - break; + case 1: { + message.enabled = reader.bool(); + break; + } + case 2: { + message.enablePodTreeLabels = reader.bool(); + break; + } + case 3: { + message.enableHierarchicalResourceQuota = reader.bool(); + break; + } default: reader.skipType(tag & 7); break; @@ -12412,6 +13293,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for HierarchyControllerConfig + * @function getTypeUrl + * @memberof google.cloud.gkehub.configmanagement.v1.HierarchyControllerConfig + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + HierarchyControllerConfig.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.configmanagement.v1.HierarchyControllerConfig"; + }; + return HierarchyControllerConfig; })(); @@ -12518,12 +13414,14 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.hnc = reader.int32(); - break; - case 2: - message.extension = reader.int32(); - break; + case 1: { + message.hnc = reader.int32(); + break; + } + case 2: { + message.extension = reader.int32(); + break; + } default: reader.skipType(tag & 7); break; @@ -12668,6 +13566,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for HierarchyControllerDeploymentState + * @function getTypeUrl + * @memberof google.cloud.gkehub.configmanagement.v1.HierarchyControllerDeploymentState + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + HierarchyControllerDeploymentState.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.configmanagement.v1.HierarchyControllerDeploymentState"; + }; + return HierarchyControllerDeploymentState; })(); @@ -12774,12 +13687,14 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.hnc = reader.string(); - break; - case 2: - message.extension = reader.string(); - break; + case 1: { + message.hnc = reader.string(); + break; + } + case 2: { + message.extension = reader.string(); + break; + } default: reader.skipType(tag & 7); break; @@ -12878,6 +13793,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for HierarchyControllerVersion + * @function getTypeUrl + * @memberof google.cloud.gkehub.configmanagement.v1.HierarchyControllerVersion + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + HierarchyControllerVersion.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.configmanagement.v1.HierarchyControllerVersion"; + }; + return HierarchyControllerVersion; })(); @@ -12984,12 +13914,14 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.version = $root.google.cloud.gkehub.configmanagement.v1.HierarchyControllerVersion.decode(reader, reader.uint32()); - break; - case 2: - message.state = $root.google.cloud.gkehub.configmanagement.v1.HierarchyControllerDeploymentState.decode(reader, reader.uint32()); - break; + case 1: { + message.version = $root.google.cloud.gkehub.configmanagement.v1.HierarchyControllerVersion.decode(reader, reader.uint32()); + break; + } + case 2: { + message.state = $root.google.cloud.gkehub.configmanagement.v1.HierarchyControllerDeploymentState.decode(reader, reader.uint32()); + break; + } default: reader.skipType(tag & 7); break; @@ -13098,6 +14030,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for HierarchyControllerState + * @function getTypeUrl + * @memberof google.cloud.gkehub.configmanagement.v1.HierarchyControllerState + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + HierarchyControllerState.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.configmanagement.v1.HierarchyControllerState"; + }; + return HierarchyControllerState; })(); @@ -13217,17 +14164,20 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.version = reader.string(); - break; - case 2: - message.deploymentState = reader.int32(); - break; - case 3: - if (!(message.errors && message.errors.length)) - message.errors = []; - message.errors.push($root.google.cloud.gkehub.configmanagement.v1.InstallError.decode(reader, reader.uint32())); - break; + case 1: { + message.version = reader.string(); + break; + } + case 2: { + message.deploymentState = reader.int32(); + break; + } + case 3: { + if (!(message.errors && message.errors.length)) + message.errors = []; + message.errors.push($root.google.cloud.gkehub.configmanagement.v1.InstallError.decode(reader, reader.uint32())); + break; + } default: reader.skipType(tag & 7); break; @@ -13375,6 +14325,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for OperatorState + * @function getTypeUrl + * @memberof google.cloud.gkehub.configmanagement.v1.OperatorState + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + OperatorState.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.configmanagement.v1.OperatorState"; + }; + return OperatorState; })(); @@ -13470,9 +14435,10 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.errorMessage = reader.string(); - break; + case 1: { + message.errorMessage = reader.string(); + break; + } default: reader.skipType(tag & 7); break; @@ -13562,6 +14528,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for InstallError + * @function getTypeUrl + * @memberof google.cloud.gkehub.configmanagement.v1.InstallError + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + InstallError.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.configmanagement.v1.InstallError"; + }; + return InstallError; })(); @@ -13679,15 +14660,18 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.version = $root.google.cloud.gkehub.configmanagement.v1.ConfigSyncVersion.decode(reader, reader.uint32()); - break; - case 2: - message.deploymentState = $root.google.cloud.gkehub.configmanagement.v1.ConfigSyncDeploymentState.decode(reader, reader.uint32()); - break; - case 3: - message.syncState = $root.google.cloud.gkehub.configmanagement.v1.SyncState.decode(reader, reader.uint32()); - break; + case 1: { + message.version = $root.google.cloud.gkehub.configmanagement.v1.ConfigSyncVersion.decode(reader, reader.uint32()); + break; + } + case 2: { + message.deploymentState = $root.google.cloud.gkehub.configmanagement.v1.ConfigSyncDeploymentState.decode(reader, reader.uint32()); + break; + } + case 3: { + message.syncState = $root.google.cloud.gkehub.configmanagement.v1.SyncState.decode(reader, reader.uint32()); + break; + } default: reader.skipType(tag & 7); break; @@ -13809,6 +14793,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for ConfigSyncState + * @function getTypeUrl + * @memberof google.cloud.gkehub.configmanagement.v1.ConfigSyncState + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + ConfigSyncState.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.configmanagement.v1.ConfigSyncState"; + }; + return ConfigSyncState; })(); @@ -13959,24 +14958,30 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.importer = reader.string(); - break; - case 2: - message.syncer = reader.string(); - break; - case 3: - message.gitSync = reader.string(); - break; - case 4: - message.monitor = reader.string(); - break; - case 5: - message.reconcilerManager = reader.string(); - break; - case 6: - message.rootReconciler = reader.string(); - break; + case 1: { + message.importer = reader.string(); + break; + } + case 2: { + message.syncer = reader.string(); + break; + } + case 3: { + message.gitSync = reader.string(); + break; + } + case 4: { + message.monitor = reader.string(); + break; + } + case 5: { + message.reconcilerManager = reader.string(); + break; + } + case 6: { + message.rootReconciler = reader.string(); + break; + } default: reader.skipType(tag & 7); break; @@ -14107,6 +15112,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for ConfigSyncVersion + * @function getTypeUrl + * @memberof google.cloud.gkehub.configmanagement.v1.ConfigSyncVersion + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + ConfigSyncVersion.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.configmanagement.v1.ConfigSyncVersion"; + }; + return ConfigSyncVersion; })(); @@ -14257,24 +15277,30 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.importer = reader.int32(); - break; - case 2: - message.syncer = reader.int32(); - break; - case 3: - message.gitSync = reader.int32(); - break; - case 4: - message.monitor = reader.int32(); - break; - case 5: - message.reconcilerManager = reader.int32(); - break; - case 6: - message.rootReconciler = reader.int32(); - break; + case 1: { + message.importer = reader.int32(); + break; + } + case 2: { + message.syncer = reader.int32(); + break; + } + case 3: { + message.gitSync = reader.int32(); + break; + } + case 4: { + message.monitor = reader.int32(); + break; + } + case 5: { + message.reconcilerManager = reader.int32(); + break; + } + case 6: { + message.rootReconciler = reader.int32(); + break; + } default: reader.skipType(tag & 7); break; @@ -14543,6 +15569,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for ConfigSyncDeploymentState + * @function getTypeUrl + * @memberof google.cloud.gkehub.configmanagement.v1.ConfigSyncDeploymentState + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + ConfigSyncDeploymentState.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.configmanagement.v1.ConfigSyncDeploymentState"; + }; + return ConfigSyncDeploymentState; })(); @@ -14706,29 +15747,36 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.sourceToken = reader.string(); - break; - case 2: - message.importToken = reader.string(); - break; - case 3: - message.syncToken = reader.string(); - break; - case 4: - message.lastSync = reader.string(); - break; - case 7: - message.lastSyncTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); - break; - case 5: - message.code = reader.int32(); - break; - case 6: - if (!(message.errors && message.errors.length)) - message.errors = []; - message.errors.push($root.google.cloud.gkehub.configmanagement.v1.SyncError.decode(reader, reader.uint32())); - break; + case 1: { + message.sourceToken = reader.string(); + break; + } + case 2: { + message.importToken = reader.string(); + break; + } + case 3: { + message.syncToken = reader.string(); + break; + } + case 4: { + message.lastSync = reader.string(); + break; + } + case 7: { + message.lastSyncTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + break; + } + case 5: { + message.code = reader.int32(); + break; + } + case 6: { + if (!(message.errors && message.errors.length)) + message.errors = []; + message.errors.push($root.google.cloud.gkehub.configmanagement.v1.SyncError.decode(reader, reader.uint32())); + break; + } default: reader.skipType(tag & 7); break; @@ -14933,6 +15981,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for SyncState + * @function getTypeUrl + * @memberof google.cloud.gkehub.configmanagement.v1.SyncState + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + SyncState.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.configmanagement.v1.SyncState"; + }; + /** * SyncCode enum. * @name google.cloud.gkehub.configmanagement.v1.SyncState.SyncCode @@ -15078,17 +16141,20 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.code = reader.string(); - break; - case 2: - message.errorMessage = reader.string(); - break; - case 3: - if (!(message.errorResources && message.errorResources.length)) - message.errorResources = []; - message.errorResources.push($root.google.cloud.gkehub.configmanagement.v1.ErrorResource.decode(reader, reader.uint32())); - break; + case 1: { + message.code = reader.string(); + break; + } + case 2: { + message.errorMessage = reader.string(); + break; + } + case 3: { + if (!(message.errorResources && message.errorResources.length)) + message.errorResources = []; + message.errorResources.push($root.google.cloud.gkehub.configmanagement.v1.ErrorResource.decode(reader, reader.uint32())); + break; + } default: reader.skipType(tag & 7); break; @@ -15213,6 +16279,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for SyncError + * @function getTypeUrl + * @memberof google.cloud.gkehub.configmanagement.v1.SyncError + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + SyncError.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.configmanagement.v1.SyncError"; + }; + return SyncError; })(); @@ -15341,18 +16422,22 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.sourcePath = reader.string(); - break; - case 2: - message.resourceName = reader.string(); - break; - case 3: - message.resourceNamespace = reader.string(); - break; - case 4: - message.resourceGvk = $root.google.cloud.gkehub.configmanagement.v1.GroupVersionKind.decode(reader, reader.uint32()); - break; + case 1: { + message.sourcePath = reader.string(); + break; + } + case 2: { + message.resourceName = reader.string(); + break; + } + case 3: { + message.resourceNamespace = reader.string(); + break; + } + case 4: { + message.resourceGvk = $root.google.cloud.gkehub.configmanagement.v1.GroupVersionKind.decode(reader, reader.uint32()); + break; + } default: reader.skipType(tag & 7); break; @@ -15472,6 +16557,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for ErrorResource + * @function getTypeUrl + * @memberof google.cloud.gkehub.configmanagement.v1.ErrorResource + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + ErrorResource.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.configmanagement.v1.ErrorResource"; + }; + return ErrorResource; })(); @@ -15589,15 +16689,18 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.group = reader.string(); - break; - case 2: - message.version = reader.string(); - break; - case 3: - message.kind = reader.string(); - break; + case 1: { + message.group = reader.string(); + break; + } + case 2: { + message.version = reader.string(); + break; + } + case 3: { + message.kind = reader.string(); + break; + } default: reader.skipType(tag & 7); break; @@ -15704,6 +16807,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for GroupVersionKind + * @function getTypeUrl + * @memberof google.cloud.gkehub.configmanagement.v1.GroupVersionKind + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + GroupVersionKind.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.configmanagement.v1.GroupVersionKind"; + }; + return GroupVersionKind; })(); @@ -15810,12 +16928,14 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.version = $root.google.cloud.gkehub.configmanagement.v1.PolicyControllerVersion.decode(reader, reader.uint32()); - break; - case 2: - message.deploymentState = $root.google.cloud.gkehub.configmanagement.v1.GatekeeperDeploymentState.decode(reader, reader.uint32()); - break; + case 1: { + message.version = $root.google.cloud.gkehub.configmanagement.v1.PolicyControllerVersion.decode(reader, reader.uint32()); + break; + } + case 2: { + message.deploymentState = $root.google.cloud.gkehub.configmanagement.v1.GatekeeperDeploymentState.decode(reader, reader.uint32()); + break; + } default: reader.skipType(tag & 7); break; @@ -15924,6 +17044,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for PolicyControllerState + * @function getTypeUrl + * @memberof google.cloud.gkehub.configmanagement.v1.PolicyControllerState + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + PolicyControllerState.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.configmanagement.v1.PolicyControllerState"; + }; + return PolicyControllerState; })(); @@ -16019,9 +17154,10 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.version = reader.string(); - break; + case 1: { + message.version = reader.string(); + break; + } default: reader.skipType(tag & 7); break; @@ -16111,6 +17247,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for PolicyControllerVersion + * @function getTypeUrl + * @memberof google.cloud.gkehub.configmanagement.v1.PolicyControllerVersion + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + PolicyControllerVersion.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.configmanagement.v1.PolicyControllerVersion"; + }; + return PolicyControllerVersion; })(); @@ -16217,12 +17368,14 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.gatekeeperControllerManagerState = reader.int32(); - break; - case 2: - message.gatekeeperAudit = reader.int32(); - break; + case 1: { + message.gatekeeperControllerManagerState = reader.int32(); + break; + } + case 2: { + message.gatekeeperAudit = reader.int32(); + break; + } default: reader.skipType(tag & 7); break; @@ -16367,6 +17520,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for GatekeeperDeploymentState + * @function getTypeUrl + * @memberof google.cloud.gkehub.configmanagement.v1.GatekeeperDeploymentState + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + GatekeeperDeploymentState.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.configmanagement.v1.GatekeeperDeploymentState"; + }; + return GatekeeperDeploymentState; })(); @@ -16558,27 +17726,34 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.clusterName = reader.string(); - break; - case 2: - message.membershipSpec = $root.google.cloud.gkehub.configmanagement.v1alpha.MembershipSpec.decode(reader, reader.uint32()); - break; - case 3: - message.operatorState = $root.google.cloud.gkehub.configmanagement.v1alpha.OperatorState.decode(reader, reader.uint32()); - break; - case 4: - message.configSyncState = $root.google.cloud.gkehub.configmanagement.v1alpha.ConfigSyncState.decode(reader, reader.uint32()); - break; - case 5: - message.policyControllerState = $root.google.cloud.gkehub.configmanagement.v1alpha.PolicyControllerState.decode(reader, reader.uint32()); - break; - case 6: - message.binauthzState = $root.google.cloud.gkehub.configmanagement.v1alpha.BinauthzState.decode(reader, reader.uint32()); - break; - case 7: - message.hierarchyControllerState = $root.google.cloud.gkehub.configmanagement.v1alpha.HierarchyControllerState.decode(reader, reader.uint32()); - break; + case 1: { + message.clusterName = reader.string(); + break; + } + case 2: { + message.membershipSpec = $root.google.cloud.gkehub.configmanagement.v1alpha.MembershipSpec.decode(reader, reader.uint32()); + break; + } + case 3: { + message.operatorState = $root.google.cloud.gkehub.configmanagement.v1alpha.OperatorState.decode(reader, reader.uint32()); + break; + } + case 4: { + message.configSyncState = $root.google.cloud.gkehub.configmanagement.v1alpha.ConfigSyncState.decode(reader, reader.uint32()); + break; + } + case 5: { + message.policyControllerState = $root.google.cloud.gkehub.configmanagement.v1alpha.PolicyControllerState.decode(reader, reader.uint32()); + break; + } + case 6: { + message.binauthzState = $root.google.cloud.gkehub.configmanagement.v1alpha.BinauthzState.decode(reader, reader.uint32()); + break; + } + case 7: { + message.hierarchyControllerState = $root.google.cloud.gkehub.configmanagement.v1alpha.HierarchyControllerState.decode(reader, reader.uint32()); + break; + } default: reader.skipType(tag & 7); break; @@ -16747,6 +17922,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for MembershipState + * @function getTypeUrl + * @memberof google.cloud.gkehub.configmanagement.v1alpha.MembershipState + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + MembershipState.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.configmanagement.v1alpha.MembershipState"; + }; + return MembershipState; })(); @@ -16886,21 +18076,26 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.configSync = $root.google.cloud.gkehub.configmanagement.v1alpha.ConfigSync.decode(reader, reader.uint32()); - break; - case 2: - message.policyController = $root.google.cloud.gkehub.configmanagement.v1alpha.PolicyController.decode(reader, reader.uint32()); - break; - case 3: - message.binauthz = $root.google.cloud.gkehub.configmanagement.v1alpha.BinauthzConfig.decode(reader, reader.uint32()); - break; - case 4: - message.hierarchyController = $root.google.cloud.gkehub.configmanagement.v1alpha.HierarchyControllerConfig.decode(reader, reader.uint32()); - break; - case 10: - message.version = reader.string(); - break; + case 1: { + message.configSync = $root.google.cloud.gkehub.configmanagement.v1alpha.ConfigSync.decode(reader, reader.uint32()); + break; + } + case 2: { + message.policyController = $root.google.cloud.gkehub.configmanagement.v1alpha.PolicyController.decode(reader, reader.uint32()); + break; + } + case 3: { + message.binauthz = $root.google.cloud.gkehub.configmanagement.v1alpha.BinauthzConfig.decode(reader, reader.uint32()); + break; + } + case 4: { + message.hierarchyController = $root.google.cloud.gkehub.configmanagement.v1alpha.HierarchyControllerConfig.decode(reader, reader.uint32()); + break; + } + case 10: { + message.version = reader.string(); + break; + } default: reader.skipType(tag & 7); break; @@ -17043,6 +18238,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for MembershipSpec + * @function getTypeUrl + * @memberof google.cloud.gkehub.configmanagement.v1alpha.MembershipSpec + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + MembershipSpec.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.configmanagement.v1alpha.MembershipSpec"; + }; + return MembershipSpec; })(); @@ -17149,12 +18359,14 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 7: - message.git = $root.google.cloud.gkehub.configmanagement.v1alpha.GitConfig.decode(reader, reader.uint32()); - break; - case 8: - message.sourceFormat = reader.string(); - break; + case 7: { + message.git = $root.google.cloud.gkehub.configmanagement.v1alpha.GitConfig.decode(reader, reader.uint32()); + break; + } + case 8: { + message.sourceFormat = reader.string(); + break; + } default: reader.skipType(tag & 7); break; @@ -17258,6 +18470,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for ConfigSync + * @function getTypeUrl + * @memberof google.cloud.gkehub.configmanagement.v1alpha.ConfigSync + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + ConfigSync.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.configmanagement.v1alpha.ConfigSync"; + }; + return ConfigSync; })(); @@ -17430,30 +18657,38 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.syncRepo = reader.string(); - break; - case 2: - message.syncBranch = reader.string(); - break; - case 3: - message.policyDir = reader.string(); - break; - case 4: - message.syncWaitSecs = reader.int64(); - break; - case 5: - message.syncRev = reader.string(); - break; - case 6: - message.secretType = reader.string(); - break; - case 7: - message.httpsProxy = reader.string(); - break; - case 8: - message.gcpServiceAccountEmail = reader.string(); - break; + case 1: { + message.syncRepo = reader.string(); + break; + } + case 2: { + message.syncBranch = reader.string(); + break; + } + case 3: { + message.policyDir = reader.string(); + break; + } + case 4: { + message.syncWaitSecs = reader.int64(); + break; + } + case 5: { + message.syncRev = reader.string(); + break; + } + case 6: { + message.secretType = reader.string(); + break; + } + case 7: { + message.httpsProxy = reader.string(); + break; + } + case 8: { + message.gcpServiceAccountEmail = reader.string(); + break; + } default: reader.skipType(tag & 7); break; @@ -17614,6 +18849,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for GitConfig + * @function getTypeUrl + * @memberof google.cloud.gkehub.configmanagement.v1alpha.GitConfig + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + GitConfig.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.configmanagement.v1alpha.GitConfig"; + }; + return GitConfig; })(); @@ -17802,29 +19052,36 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.enabled = reader.bool(); - break; - case 2: - message.templateLibraryInstalled = reader.bool(); - break; - case 3: - message.auditIntervalSeconds = reader.int64(); - break; - case 4: - if (!(message.exemptableNamespaces && message.exemptableNamespaces.length)) - message.exemptableNamespaces = []; - message.exemptableNamespaces.push(reader.string()); - break; - case 5: - message.referentialRulesEnabled = reader.bool(); - break; - case 6: - message.logDeniesEnabled = reader.bool(); - break; - case 7: - message.mutationEnabled = reader.bool(); - break; + case 1: { + message.enabled = reader.bool(); + break; + } + case 2: { + message.templateLibraryInstalled = reader.bool(); + break; + } + case 3: { + message.auditIntervalSeconds = reader.int64(); + break; + } + case 4: { + if (!(message.exemptableNamespaces && message.exemptableNamespaces.length)) + message.exemptableNamespaces = []; + message.exemptableNamespaces.push(reader.string()); + break; + } + case 5: { + message.referentialRulesEnabled = reader.bool(); + break; + } + case 6: { + message.logDeniesEnabled = reader.bool(); + break; + } + case 7: { + message.mutationEnabled = reader.bool(); + break; + } default: reader.skipType(tag & 7); break; @@ -17995,6 +19252,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for PolicyController + * @function getTypeUrl + * @memberof google.cloud.gkehub.configmanagement.v1alpha.PolicyController + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + PolicyController.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.configmanagement.v1alpha.PolicyController"; + }; + return PolicyController; })(); @@ -18090,9 +19362,10 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.enabled = reader.bool(); - break; + case 1: { + message.enabled = reader.bool(); + break; + } default: reader.skipType(tag & 7); break; @@ -18182,6 +19455,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for BinauthzConfig + * @function getTypeUrl + * @memberof google.cloud.gkehub.configmanagement.v1alpha.BinauthzConfig + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + BinauthzConfig.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.configmanagement.v1alpha.BinauthzConfig"; + }; + return BinauthzConfig; })(); @@ -18299,15 +19587,18 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.enabled = reader.bool(); - break; - case 2: - message.enablePodTreeLabels = reader.bool(); - break; - case 3: - message.enableHierarchicalResourceQuota = reader.bool(); - break; + case 1: { + message.enabled = reader.bool(); + break; + } + case 2: { + message.enablePodTreeLabels = reader.bool(); + break; + } + case 3: { + message.enableHierarchicalResourceQuota = reader.bool(); + break; + } default: reader.skipType(tag & 7); break; @@ -18414,6 +19705,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for HierarchyControllerConfig + * @function getTypeUrl + * @memberof google.cloud.gkehub.configmanagement.v1alpha.HierarchyControllerConfig + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + HierarchyControllerConfig.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.configmanagement.v1alpha.HierarchyControllerConfig"; + }; + return HierarchyControllerConfig; })(); @@ -18520,12 +19826,14 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.hnc = reader.int32(); - break; - case 2: - message.extension = reader.int32(); - break; + case 1: { + message.hnc = reader.int32(); + break; + } + case 2: { + message.extension = reader.int32(); + break; + } default: reader.skipType(tag & 7); break; @@ -18670,6 +19978,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for HierarchyControllerDeploymentState + * @function getTypeUrl + * @memberof google.cloud.gkehub.configmanagement.v1alpha.HierarchyControllerDeploymentState + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + HierarchyControllerDeploymentState.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.configmanagement.v1alpha.HierarchyControllerDeploymentState"; + }; + return HierarchyControllerDeploymentState; })(); @@ -18776,12 +20099,14 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.hnc = reader.string(); - break; - case 2: - message.extension = reader.string(); - break; + case 1: { + message.hnc = reader.string(); + break; + } + case 2: { + message.extension = reader.string(); + break; + } default: reader.skipType(tag & 7); break; @@ -18880,6 +20205,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for HierarchyControllerVersion + * @function getTypeUrl + * @memberof google.cloud.gkehub.configmanagement.v1alpha.HierarchyControllerVersion + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + HierarchyControllerVersion.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.configmanagement.v1alpha.HierarchyControllerVersion"; + }; + return HierarchyControllerVersion; })(); @@ -18986,12 +20326,14 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.version = $root.google.cloud.gkehub.configmanagement.v1alpha.HierarchyControllerVersion.decode(reader, reader.uint32()); - break; - case 2: - message.state = $root.google.cloud.gkehub.configmanagement.v1alpha.HierarchyControllerDeploymentState.decode(reader, reader.uint32()); - break; + case 1: { + message.version = $root.google.cloud.gkehub.configmanagement.v1alpha.HierarchyControllerVersion.decode(reader, reader.uint32()); + break; + } + case 2: { + message.state = $root.google.cloud.gkehub.configmanagement.v1alpha.HierarchyControllerDeploymentState.decode(reader, reader.uint32()); + break; + } default: reader.skipType(tag & 7); break; @@ -19100,6 +20442,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for HierarchyControllerState + * @function getTypeUrl + * @memberof google.cloud.gkehub.configmanagement.v1alpha.HierarchyControllerState + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + HierarchyControllerState.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.configmanagement.v1alpha.HierarchyControllerState"; + }; + return HierarchyControllerState; })(); @@ -19219,17 +20576,20 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.version = reader.string(); - break; - case 2: - message.deploymentState = reader.int32(); - break; - case 3: - if (!(message.errors && message.errors.length)) - message.errors = []; - message.errors.push($root.google.cloud.gkehub.configmanagement.v1alpha.InstallError.decode(reader, reader.uint32())); - break; + case 1: { + message.version = reader.string(); + break; + } + case 2: { + message.deploymentState = reader.int32(); + break; + } + case 3: { + if (!(message.errors && message.errors.length)) + message.errors = []; + message.errors.push($root.google.cloud.gkehub.configmanagement.v1alpha.InstallError.decode(reader, reader.uint32())); + break; + } default: reader.skipType(tag & 7); break; @@ -19377,6 +20737,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for OperatorState + * @function getTypeUrl + * @memberof google.cloud.gkehub.configmanagement.v1alpha.OperatorState + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + OperatorState.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.configmanagement.v1alpha.OperatorState"; + }; + return OperatorState; })(); @@ -19472,9 +20847,10 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.errorMessage = reader.string(); - break; + case 1: { + message.errorMessage = reader.string(); + break; + } default: reader.skipType(tag & 7); break; @@ -19564,6 +20940,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for InstallError + * @function getTypeUrl + * @memberof google.cloud.gkehub.configmanagement.v1alpha.InstallError + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + InstallError.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.configmanagement.v1alpha.InstallError"; + }; + return InstallError; })(); @@ -19681,15 +21072,18 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.version = $root.google.cloud.gkehub.configmanagement.v1alpha.ConfigSyncVersion.decode(reader, reader.uint32()); - break; - case 2: - message.deploymentState = $root.google.cloud.gkehub.configmanagement.v1alpha.ConfigSyncDeploymentState.decode(reader, reader.uint32()); - break; - case 3: - message.syncState = $root.google.cloud.gkehub.configmanagement.v1alpha.SyncState.decode(reader, reader.uint32()); - break; + case 1: { + message.version = $root.google.cloud.gkehub.configmanagement.v1alpha.ConfigSyncVersion.decode(reader, reader.uint32()); + break; + } + case 2: { + message.deploymentState = $root.google.cloud.gkehub.configmanagement.v1alpha.ConfigSyncDeploymentState.decode(reader, reader.uint32()); + break; + } + case 3: { + message.syncState = $root.google.cloud.gkehub.configmanagement.v1alpha.SyncState.decode(reader, reader.uint32()); + break; + } default: reader.skipType(tag & 7); break; @@ -19811,6 +21205,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for ConfigSyncState + * @function getTypeUrl + * @memberof google.cloud.gkehub.configmanagement.v1alpha.ConfigSyncState + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + ConfigSyncState.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.configmanagement.v1alpha.ConfigSyncState"; + }; + return ConfigSyncState; })(); @@ -19961,24 +21370,30 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.importer = reader.string(); - break; - case 2: - message.syncer = reader.string(); - break; - case 3: - message.gitSync = reader.string(); - break; - case 4: - message.monitor = reader.string(); - break; - case 5: - message.reconcilerManager = reader.string(); - break; - case 6: - message.rootReconciler = reader.string(); - break; + case 1: { + message.importer = reader.string(); + break; + } + case 2: { + message.syncer = reader.string(); + break; + } + case 3: { + message.gitSync = reader.string(); + break; + } + case 4: { + message.monitor = reader.string(); + break; + } + case 5: { + message.reconcilerManager = reader.string(); + break; + } + case 6: { + message.rootReconciler = reader.string(); + break; + } default: reader.skipType(tag & 7); break; @@ -20109,6 +21524,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for ConfigSyncVersion + * @function getTypeUrl + * @memberof google.cloud.gkehub.configmanagement.v1alpha.ConfigSyncVersion + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + ConfigSyncVersion.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.configmanagement.v1alpha.ConfigSyncVersion"; + }; + return ConfigSyncVersion; })(); @@ -20259,24 +21689,30 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.importer = reader.int32(); - break; - case 2: - message.syncer = reader.int32(); - break; - case 3: - message.gitSync = reader.int32(); - break; - case 4: - message.monitor = reader.int32(); - break; - case 5: - message.reconcilerManager = reader.int32(); - break; - case 6: - message.rootReconciler = reader.int32(); - break; + case 1: { + message.importer = reader.int32(); + break; + } + case 2: { + message.syncer = reader.int32(); + break; + } + case 3: { + message.gitSync = reader.int32(); + break; + } + case 4: { + message.monitor = reader.int32(); + break; + } + case 5: { + message.reconcilerManager = reader.int32(); + break; + } + case 6: { + message.rootReconciler = reader.int32(); + break; + } default: reader.skipType(tag & 7); break; @@ -20545,6 +21981,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for ConfigSyncDeploymentState + * @function getTypeUrl + * @memberof google.cloud.gkehub.configmanagement.v1alpha.ConfigSyncDeploymentState + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + ConfigSyncDeploymentState.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.configmanagement.v1alpha.ConfigSyncDeploymentState"; + }; + return ConfigSyncDeploymentState; })(); @@ -20708,29 +22159,36 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.sourceToken = reader.string(); - break; - case 2: - message.importToken = reader.string(); - break; - case 3: - message.syncToken = reader.string(); - break; - case 4: - message.lastSync = reader.string(); - break; - case 7: - message.lastSyncTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); - break; - case 5: - message.code = reader.int32(); - break; - case 6: - if (!(message.errors && message.errors.length)) - message.errors = []; - message.errors.push($root.google.cloud.gkehub.configmanagement.v1alpha.SyncError.decode(reader, reader.uint32())); - break; + case 1: { + message.sourceToken = reader.string(); + break; + } + case 2: { + message.importToken = reader.string(); + break; + } + case 3: { + message.syncToken = reader.string(); + break; + } + case 4: { + message.lastSync = reader.string(); + break; + } + case 7: { + message.lastSyncTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + break; + } + case 5: { + message.code = reader.int32(); + break; + } + case 6: { + if (!(message.errors && message.errors.length)) + message.errors = []; + message.errors.push($root.google.cloud.gkehub.configmanagement.v1alpha.SyncError.decode(reader, reader.uint32())); + break; + } default: reader.skipType(tag & 7); break; @@ -20935,6 +22393,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for SyncState + * @function getTypeUrl + * @memberof google.cloud.gkehub.configmanagement.v1alpha.SyncState + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + SyncState.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.configmanagement.v1alpha.SyncState"; + }; + /** * SyncCode enum. * @name google.cloud.gkehub.configmanagement.v1alpha.SyncState.SyncCode @@ -21080,17 +22553,20 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.code = reader.string(); - break; - case 2: - message.errorMessage = reader.string(); - break; - case 3: - if (!(message.errorResources && message.errorResources.length)) - message.errorResources = []; - message.errorResources.push($root.google.cloud.gkehub.configmanagement.v1alpha.ErrorResource.decode(reader, reader.uint32())); - break; + case 1: { + message.code = reader.string(); + break; + } + case 2: { + message.errorMessage = reader.string(); + break; + } + case 3: { + if (!(message.errorResources && message.errorResources.length)) + message.errorResources = []; + message.errorResources.push($root.google.cloud.gkehub.configmanagement.v1alpha.ErrorResource.decode(reader, reader.uint32())); + break; + } default: reader.skipType(tag & 7); break; @@ -21215,6 +22691,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for SyncError + * @function getTypeUrl + * @memberof google.cloud.gkehub.configmanagement.v1alpha.SyncError + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + SyncError.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.configmanagement.v1alpha.SyncError"; + }; + return SyncError; })(); @@ -21343,18 +22834,22 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.sourcePath = reader.string(); - break; - case 2: - message.resourceName = reader.string(); - break; - case 3: - message.resourceNamespace = reader.string(); - break; - case 4: - message.resourceGvk = $root.google.cloud.gkehub.configmanagement.v1alpha.GroupVersionKind.decode(reader, reader.uint32()); - break; + case 1: { + message.sourcePath = reader.string(); + break; + } + case 2: { + message.resourceName = reader.string(); + break; + } + case 3: { + message.resourceNamespace = reader.string(); + break; + } + case 4: { + message.resourceGvk = $root.google.cloud.gkehub.configmanagement.v1alpha.GroupVersionKind.decode(reader, reader.uint32()); + break; + } default: reader.skipType(tag & 7); break; @@ -21474,6 +22969,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for ErrorResource + * @function getTypeUrl + * @memberof google.cloud.gkehub.configmanagement.v1alpha.ErrorResource + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + ErrorResource.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.configmanagement.v1alpha.ErrorResource"; + }; + return ErrorResource; })(); @@ -21591,15 +23101,18 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.group = reader.string(); - break; - case 2: - message.version = reader.string(); - break; - case 3: - message.kind = reader.string(); - break; + case 1: { + message.group = reader.string(); + break; + } + case 2: { + message.version = reader.string(); + break; + } + case 3: { + message.kind = reader.string(); + break; + } default: reader.skipType(tag & 7); break; @@ -21706,6 +23219,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for GroupVersionKind + * @function getTypeUrl + * @memberof google.cloud.gkehub.configmanagement.v1alpha.GroupVersionKind + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + GroupVersionKind.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.configmanagement.v1alpha.GroupVersionKind"; + }; + return GroupVersionKind; })(); @@ -21812,12 +23340,14 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.version = $root.google.cloud.gkehub.configmanagement.v1alpha.PolicyControllerVersion.decode(reader, reader.uint32()); - break; - case 2: - message.deploymentState = $root.google.cloud.gkehub.configmanagement.v1alpha.GatekeeperDeploymentState.decode(reader, reader.uint32()); - break; + case 1: { + message.version = $root.google.cloud.gkehub.configmanagement.v1alpha.PolicyControllerVersion.decode(reader, reader.uint32()); + break; + } + case 2: { + message.deploymentState = $root.google.cloud.gkehub.configmanagement.v1alpha.GatekeeperDeploymentState.decode(reader, reader.uint32()); + break; + } default: reader.skipType(tag & 7); break; @@ -21926,6 +23456,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for PolicyControllerState + * @function getTypeUrl + * @memberof google.cloud.gkehub.configmanagement.v1alpha.PolicyControllerState + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + PolicyControllerState.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.configmanagement.v1alpha.PolicyControllerState"; + }; + return PolicyControllerState; })(); @@ -22021,9 +23566,10 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.version = reader.string(); - break; + case 1: { + message.version = reader.string(); + break; + } default: reader.skipType(tag & 7); break; @@ -22113,6 +23659,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for PolicyControllerVersion + * @function getTypeUrl + * @memberof google.cloud.gkehub.configmanagement.v1alpha.PolicyControllerVersion + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + PolicyControllerVersion.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.configmanagement.v1alpha.PolicyControllerVersion"; + }; + return PolicyControllerVersion; })(); @@ -22219,12 +23780,14 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.webhook = reader.int32(); - break; - case 2: - message.version = $root.google.cloud.gkehub.configmanagement.v1alpha.BinauthzVersion.decode(reader, reader.uint32()); - break; + case 1: { + message.webhook = reader.int32(); + break; + } + case 2: { + message.version = $root.google.cloud.gkehub.configmanagement.v1alpha.BinauthzVersion.decode(reader, reader.uint32()); + break; + } default: reader.skipType(tag & 7); break; @@ -22351,6 +23914,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for BinauthzState + * @function getTypeUrl + * @memberof google.cloud.gkehub.configmanagement.v1alpha.BinauthzState + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + BinauthzState.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.configmanagement.v1alpha.BinauthzState"; + }; + return BinauthzState; })(); @@ -22446,9 +24024,10 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.webhookVersion = reader.string(); - break; + case 1: { + message.webhookVersion = reader.string(); + break; + } default: reader.skipType(tag & 7); break; @@ -22538,6 +24117,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for BinauthzVersion + * @function getTypeUrl + * @memberof google.cloud.gkehub.configmanagement.v1alpha.BinauthzVersion + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + BinauthzVersion.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.configmanagement.v1alpha.BinauthzVersion"; + }; + return BinauthzVersion; })(); @@ -22655,15 +24249,18 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.gatekeeperControllerManagerState = reader.int32(); - break; - case 2: - message.gatekeeperAudit = reader.int32(); - break; - case 3: - message.gatekeeperMutation = reader.int32(); - break; + case 1: { + message.gatekeeperControllerManagerState = reader.int32(); + break; + } + case 2: { + message.gatekeeperAudit = reader.int32(); + break; + } + case 3: { + message.gatekeeperMutation = reader.int32(); + break; + } default: reader.skipType(tag & 7); break; @@ -22839,6 +24436,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for GatekeeperDeploymentState + * @function getTypeUrl + * @memberof google.cloud.gkehub.configmanagement.v1alpha.GatekeeperDeploymentState + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + GatekeeperDeploymentState.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.configmanagement.v1alpha.GatekeeperDeploymentState"; + }; + return GatekeeperDeploymentState; })(); @@ -23030,27 +24642,34 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.clusterName = reader.string(); - break; - case 2: - message.membershipSpec = $root.google.cloud.gkehub.configmanagement.v1beta.MembershipSpec.decode(reader, reader.uint32()); - break; - case 3: - message.operatorState = $root.google.cloud.gkehub.configmanagement.v1beta.OperatorState.decode(reader, reader.uint32()); - break; - case 4: - message.configSyncState = $root.google.cloud.gkehub.configmanagement.v1beta.ConfigSyncState.decode(reader, reader.uint32()); - break; - case 5: - message.policyControllerState = $root.google.cloud.gkehub.configmanagement.v1beta.PolicyControllerState.decode(reader, reader.uint32()); - break; - case 6: - message.binauthzState = $root.google.cloud.gkehub.configmanagement.v1beta.BinauthzState.decode(reader, reader.uint32()); - break; - case 7: - message.hierarchyControllerState = $root.google.cloud.gkehub.configmanagement.v1beta.HierarchyControllerState.decode(reader, reader.uint32()); - break; + case 1: { + message.clusterName = reader.string(); + break; + } + case 2: { + message.membershipSpec = $root.google.cloud.gkehub.configmanagement.v1beta.MembershipSpec.decode(reader, reader.uint32()); + break; + } + case 3: { + message.operatorState = $root.google.cloud.gkehub.configmanagement.v1beta.OperatorState.decode(reader, reader.uint32()); + break; + } + case 4: { + message.configSyncState = $root.google.cloud.gkehub.configmanagement.v1beta.ConfigSyncState.decode(reader, reader.uint32()); + break; + } + case 5: { + message.policyControllerState = $root.google.cloud.gkehub.configmanagement.v1beta.PolicyControllerState.decode(reader, reader.uint32()); + break; + } + case 6: { + message.binauthzState = $root.google.cloud.gkehub.configmanagement.v1beta.BinauthzState.decode(reader, reader.uint32()); + break; + } + case 7: { + message.hierarchyControllerState = $root.google.cloud.gkehub.configmanagement.v1beta.HierarchyControllerState.decode(reader, reader.uint32()); + break; + } default: reader.skipType(tag & 7); break; @@ -23219,6 +24838,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for MembershipState + * @function getTypeUrl + * @memberof google.cloud.gkehub.configmanagement.v1beta.MembershipState + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + MembershipState.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.configmanagement.v1beta.MembershipState"; + }; + return MembershipState; })(); @@ -23358,21 +24992,26 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.configSync = $root.google.cloud.gkehub.configmanagement.v1beta.ConfigSync.decode(reader, reader.uint32()); - break; - case 2: - message.policyController = $root.google.cloud.gkehub.configmanagement.v1beta.PolicyController.decode(reader, reader.uint32()); - break; - case 3: - message.binauthz = $root.google.cloud.gkehub.configmanagement.v1beta.BinauthzConfig.decode(reader, reader.uint32()); - break; - case 4: - message.hierarchyController = $root.google.cloud.gkehub.configmanagement.v1beta.HierarchyControllerConfig.decode(reader, reader.uint32()); - break; - case 10: - message.version = reader.string(); - break; + case 1: { + message.configSync = $root.google.cloud.gkehub.configmanagement.v1beta.ConfigSync.decode(reader, reader.uint32()); + break; + } + case 2: { + message.policyController = $root.google.cloud.gkehub.configmanagement.v1beta.PolicyController.decode(reader, reader.uint32()); + break; + } + case 3: { + message.binauthz = $root.google.cloud.gkehub.configmanagement.v1beta.BinauthzConfig.decode(reader, reader.uint32()); + break; + } + case 4: { + message.hierarchyController = $root.google.cloud.gkehub.configmanagement.v1beta.HierarchyControllerConfig.decode(reader, reader.uint32()); + break; + } + case 10: { + message.version = reader.string(); + break; + } default: reader.skipType(tag & 7); break; @@ -23515,6 +25154,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for MembershipSpec + * @function getTypeUrl + * @memberof google.cloud.gkehub.configmanagement.v1beta.MembershipSpec + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + MembershipSpec.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.configmanagement.v1beta.MembershipSpec"; + }; + return MembershipSpec; })(); @@ -23621,12 +25275,14 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 7: - message.git = $root.google.cloud.gkehub.configmanagement.v1beta.GitConfig.decode(reader, reader.uint32()); - break; - case 8: - message.sourceFormat = reader.string(); - break; + case 7: { + message.git = $root.google.cloud.gkehub.configmanagement.v1beta.GitConfig.decode(reader, reader.uint32()); + break; + } + case 8: { + message.sourceFormat = reader.string(); + break; + } default: reader.skipType(tag & 7); break; @@ -23730,6 +25386,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for ConfigSync + * @function getTypeUrl + * @memberof google.cloud.gkehub.configmanagement.v1beta.ConfigSync + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + ConfigSync.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.configmanagement.v1beta.ConfigSync"; + }; + return ConfigSync; })(); @@ -23902,30 +25573,38 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.syncRepo = reader.string(); - break; - case 2: - message.syncBranch = reader.string(); - break; - case 3: - message.policyDir = reader.string(); - break; - case 4: - message.syncWaitSecs = reader.int64(); - break; - case 5: - message.syncRev = reader.string(); - break; - case 6: - message.secretType = reader.string(); - break; - case 7: - message.httpsProxy = reader.string(); - break; - case 8: - message.gcpServiceAccountEmail = reader.string(); - break; + case 1: { + message.syncRepo = reader.string(); + break; + } + case 2: { + message.syncBranch = reader.string(); + break; + } + case 3: { + message.policyDir = reader.string(); + break; + } + case 4: { + message.syncWaitSecs = reader.int64(); + break; + } + case 5: { + message.syncRev = reader.string(); + break; + } + case 6: { + message.secretType = reader.string(); + break; + } + case 7: { + message.httpsProxy = reader.string(); + break; + } + case 8: { + message.gcpServiceAccountEmail = reader.string(); + break; + } default: reader.skipType(tag & 7); break; @@ -24086,6 +25765,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for GitConfig + * @function getTypeUrl + * @memberof google.cloud.gkehub.configmanagement.v1beta.GitConfig + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + GitConfig.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.configmanagement.v1beta.GitConfig"; + }; + return GitConfig; })(); @@ -24263,26 +25957,32 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.enabled = reader.bool(); - break; - case 2: - message.templateLibraryInstalled = reader.bool(); - break; - case 3: - message.auditIntervalSeconds = reader.int64(); - break; - case 4: - if (!(message.exemptableNamespaces && message.exemptableNamespaces.length)) - message.exemptableNamespaces = []; - message.exemptableNamespaces.push(reader.string()); - break; - case 5: - message.referentialRulesEnabled = reader.bool(); - break; - case 6: - message.logDeniesEnabled = reader.bool(); - break; + case 1: { + message.enabled = reader.bool(); + break; + } + case 2: { + message.templateLibraryInstalled = reader.bool(); + break; + } + case 3: { + message.auditIntervalSeconds = reader.int64(); + break; + } + case 4: { + if (!(message.exemptableNamespaces && message.exemptableNamespaces.length)) + message.exemptableNamespaces = []; + message.exemptableNamespaces.push(reader.string()); + break; + } + case 5: { + message.referentialRulesEnabled = reader.bool(); + break; + } + case 6: { + message.logDeniesEnabled = reader.bool(); + break; + } default: reader.skipType(tag & 7); break; @@ -24445,6 +26145,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for PolicyController + * @function getTypeUrl + * @memberof google.cloud.gkehub.configmanagement.v1beta.PolicyController + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + PolicyController.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.configmanagement.v1beta.PolicyController"; + }; + return PolicyController; })(); @@ -24540,9 +26255,10 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.enabled = reader.bool(); - break; + case 1: { + message.enabled = reader.bool(); + break; + } default: reader.skipType(tag & 7); break; @@ -24632,6 +26348,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for BinauthzConfig + * @function getTypeUrl + * @memberof google.cloud.gkehub.configmanagement.v1beta.BinauthzConfig + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + BinauthzConfig.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.configmanagement.v1beta.BinauthzConfig"; + }; + return BinauthzConfig; })(); @@ -24749,15 +26480,18 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.enabled = reader.bool(); - break; - case 2: - message.enablePodTreeLabels = reader.bool(); - break; - case 3: - message.enableHierarchicalResourceQuota = reader.bool(); - break; + case 1: { + message.enabled = reader.bool(); + break; + } + case 2: { + message.enablePodTreeLabels = reader.bool(); + break; + } + case 3: { + message.enableHierarchicalResourceQuota = reader.bool(); + break; + } default: reader.skipType(tag & 7); break; @@ -24864,6 +26598,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for HierarchyControllerConfig + * @function getTypeUrl + * @memberof google.cloud.gkehub.configmanagement.v1beta.HierarchyControllerConfig + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + HierarchyControllerConfig.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.configmanagement.v1beta.HierarchyControllerConfig"; + }; + return HierarchyControllerConfig; })(); @@ -24970,12 +26719,14 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.hnc = reader.int32(); - break; - case 2: - message.extension = reader.int32(); - break; + case 1: { + message.hnc = reader.int32(); + break; + } + case 2: { + message.extension = reader.int32(); + break; + } default: reader.skipType(tag & 7); break; @@ -25120,6 +26871,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for HierarchyControllerDeploymentState + * @function getTypeUrl + * @memberof google.cloud.gkehub.configmanagement.v1beta.HierarchyControllerDeploymentState + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + HierarchyControllerDeploymentState.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.configmanagement.v1beta.HierarchyControllerDeploymentState"; + }; + return HierarchyControllerDeploymentState; })(); @@ -25226,12 +26992,14 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.hnc = reader.string(); - break; - case 2: - message.extension = reader.string(); - break; + case 1: { + message.hnc = reader.string(); + break; + } + case 2: { + message.extension = reader.string(); + break; + } default: reader.skipType(tag & 7); break; @@ -25330,6 +27098,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for HierarchyControllerVersion + * @function getTypeUrl + * @memberof google.cloud.gkehub.configmanagement.v1beta.HierarchyControllerVersion + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + HierarchyControllerVersion.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.configmanagement.v1beta.HierarchyControllerVersion"; + }; + return HierarchyControllerVersion; })(); @@ -25436,12 +27219,14 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.version = $root.google.cloud.gkehub.configmanagement.v1beta.HierarchyControllerVersion.decode(reader, reader.uint32()); - break; - case 2: - message.state = $root.google.cloud.gkehub.configmanagement.v1beta.HierarchyControllerDeploymentState.decode(reader, reader.uint32()); - break; + case 1: { + message.version = $root.google.cloud.gkehub.configmanagement.v1beta.HierarchyControllerVersion.decode(reader, reader.uint32()); + break; + } + case 2: { + message.state = $root.google.cloud.gkehub.configmanagement.v1beta.HierarchyControllerDeploymentState.decode(reader, reader.uint32()); + break; + } default: reader.skipType(tag & 7); break; @@ -25550,6 +27335,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for HierarchyControllerState + * @function getTypeUrl + * @memberof google.cloud.gkehub.configmanagement.v1beta.HierarchyControllerState + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + HierarchyControllerState.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.configmanagement.v1beta.HierarchyControllerState"; + }; + return HierarchyControllerState; })(); @@ -25669,17 +27469,20 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.version = reader.string(); - break; - case 2: - message.deploymentState = reader.int32(); - break; - case 3: - if (!(message.errors && message.errors.length)) - message.errors = []; - message.errors.push($root.google.cloud.gkehub.configmanagement.v1beta.InstallError.decode(reader, reader.uint32())); - break; + case 1: { + message.version = reader.string(); + break; + } + case 2: { + message.deploymentState = reader.int32(); + break; + } + case 3: { + if (!(message.errors && message.errors.length)) + message.errors = []; + message.errors.push($root.google.cloud.gkehub.configmanagement.v1beta.InstallError.decode(reader, reader.uint32())); + break; + } default: reader.skipType(tag & 7); break; @@ -25827,6 +27630,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for OperatorState + * @function getTypeUrl + * @memberof google.cloud.gkehub.configmanagement.v1beta.OperatorState + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + OperatorState.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.configmanagement.v1beta.OperatorState"; + }; + return OperatorState; })(); @@ -25922,9 +27740,10 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.errorMessage = reader.string(); - break; + case 1: { + message.errorMessage = reader.string(); + break; + } default: reader.skipType(tag & 7); break; @@ -26014,6 +27833,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for InstallError + * @function getTypeUrl + * @memberof google.cloud.gkehub.configmanagement.v1beta.InstallError + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + InstallError.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.configmanagement.v1beta.InstallError"; + }; + return InstallError; })(); @@ -26131,15 +27965,18 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.version = $root.google.cloud.gkehub.configmanagement.v1beta.ConfigSyncVersion.decode(reader, reader.uint32()); - break; - case 2: - message.deploymentState = $root.google.cloud.gkehub.configmanagement.v1beta.ConfigSyncDeploymentState.decode(reader, reader.uint32()); - break; - case 3: - message.syncState = $root.google.cloud.gkehub.configmanagement.v1beta.SyncState.decode(reader, reader.uint32()); - break; + case 1: { + message.version = $root.google.cloud.gkehub.configmanagement.v1beta.ConfigSyncVersion.decode(reader, reader.uint32()); + break; + } + case 2: { + message.deploymentState = $root.google.cloud.gkehub.configmanagement.v1beta.ConfigSyncDeploymentState.decode(reader, reader.uint32()); + break; + } + case 3: { + message.syncState = $root.google.cloud.gkehub.configmanagement.v1beta.SyncState.decode(reader, reader.uint32()); + break; + } default: reader.skipType(tag & 7); break; @@ -26261,6 +28098,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for ConfigSyncState + * @function getTypeUrl + * @memberof google.cloud.gkehub.configmanagement.v1beta.ConfigSyncState + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + ConfigSyncState.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.configmanagement.v1beta.ConfigSyncState"; + }; + return ConfigSyncState; })(); @@ -26411,24 +28263,30 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.importer = reader.string(); - break; - case 2: - message.syncer = reader.string(); - break; - case 3: - message.gitSync = reader.string(); - break; - case 4: - message.monitor = reader.string(); - break; - case 5: - message.reconcilerManager = reader.string(); - break; - case 6: - message.rootReconciler = reader.string(); - break; + case 1: { + message.importer = reader.string(); + break; + } + case 2: { + message.syncer = reader.string(); + break; + } + case 3: { + message.gitSync = reader.string(); + break; + } + case 4: { + message.monitor = reader.string(); + break; + } + case 5: { + message.reconcilerManager = reader.string(); + break; + } + case 6: { + message.rootReconciler = reader.string(); + break; + } default: reader.skipType(tag & 7); break; @@ -26559,6 +28417,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for ConfigSyncVersion + * @function getTypeUrl + * @memberof google.cloud.gkehub.configmanagement.v1beta.ConfigSyncVersion + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + ConfigSyncVersion.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.configmanagement.v1beta.ConfigSyncVersion"; + }; + return ConfigSyncVersion; })(); @@ -26709,24 +28582,30 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.importer = reader.int32(); - break; - case 2: - message.syncer = reader.int32(); - break; - case 3: - message.gitSync = reader.int32(); - break; - case 4: - message.monitor = reader.int32(); - break; - case 5: - message.reconcilerManager = reader.int32(); - break; - case 6: - message.rootReconciler = reader.int32(); - break; + case 1: { + message.importer = reader.int32(); + break; + } + case 2: { + message.syncer = reader.int32(); + break; + } + case 3: { + message.gitSync = reader.int32(); + break; + } + case 4: { + message.monitor = reader.int32(); + break; + } + case 5: { + message.reconcilerManager = reader.int32(); + break; + } + case 6: { + message.rootReconciler = reader.int32(); + break; + } default: reader.skipType(tag & 7); break; @@ -26995,6 +28874,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for ConfigSyncDeploymentState + * @function getTypeUrl + * @memberof google.cloud.gkehub.configmanagement.v1beta.ConfigSyncDeploymentState + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + ConfigSyncDeploymentState.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.configmanagement.v1beta.ConfigSyncDeploymentState"; + }; + return ConfigSyncDeploymentState; })(); @@ -27158,29 +29052,36 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.sourceToken = reader.string(); - break; - case 2: - message.importToken = reader.string(); - break; - case 3: - message.syncToken = reader.string(); - break; - case 4: - message.lastSync = reader.string(); - break; - case 7: - message.lastSyncTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); - break; - case 5: - message.code = reader.int32(); - break; - case 6: - if (!(message.errors && message.errors.length)) - message.errors = []; - message.errors.push($root.google.cloud.gkehub.configmanagement.v1beta.SyncError.decode(reader, reader.uint32())); - break; + case 1: { + message.sourceToken = reader.string(); + break; + } + case 2: { + message.importToken = reader.string(); + break; + } + case 3: { + message.syncToken = reader.string(); + break; + } + case 4: { + message.lastSync = reader.string(); + break; + } + case 7: { + message.lastSyncTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + break; + } + case 5: { + message.code = reader.int32(); + break; + } + case 6: { + if (!(message.errors && message.errors.length)) + message.errors = []; + message.errors.push($root.google.cloud.gkehub.configmanagement.v1beta.SyncError.decode(reader, reader.uint32())); + break; + } default: reader.skipType(tag & 7); break; @@ -27385,6 +29286,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for SyncState + * @function getTypeUrl + * @memberof google.cloud.gkehub.configmanagement.v1beta.SyncState + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + SyncState.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.configmanagement.v1beta.SyncState"; + }; + /** * SyncCode enum. * @name google.cloud.gkehub.configmanagement.v1beta.SyncState.SyncCode @@ -27530,17 +29446,20 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.code = reader.string(); - break; - case 2: - message.errorMessage = reader.string(); - break; - case 3: - if (!(message.errorResources && message.errorResources.length)) - message.errorResources = []; - message.errorResources.push($root.google.cloud.gkehub.configmanagement.v1beta.ErrorResource.decode(reader, reader.uint32())); - break; + case 1: { + message.code = reader.string(); + break; + } + case 2: { + message.errorMessage = reader.string(); + break; + } + case 3: { + if (!(message.errorResources && message.errorResources.length)) + message.errorResources = []; + message.errorResources.push($root.google.cloud.gkehub.configmanagement.v1beta.ErrorResource.decode(reader, reader.uint32())); + break; + } default: reader.skipType(tag & 7); break; @@ -27665,6 +29584,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for SyncError + * @function getTypeUrl + * @memberof google.cloud.gkehub.configmanagement.v1beta.SyncError + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + SyncError.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.configmanagement.v1beta.SyncError"; + }; + return SyncError; })(); @@ -27793,18 +29727,22 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.sourcePath = reader.string(); - break; - case 2: - message.resourceName = reader.string(); - break; - case 3: - message.resourceNamespace = reader.string(); - break; - case 4: - message.resourceGvk = $root.google.cloud.gkehub.configmanagement.v1beta.GroupVersionKind.decode(reader, reader.uint32()); - break; + case 1: { + message.sourcePath = reader.string(); + break; + } + case 2: { + message.resourceName = reader.string(); + break; + } + case 3: { + message.resourceNamespace = reader.string(); + break; + } + case 4: { + message.resourceGvk = $root.google.cloud.gkehub.configmanagement.v1beta.GroupVersionKind.decode(reader, reader.uint32()); + break; + } default: reader.skipType(tag & 7); break; @@ -27924,6 +29862,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for ErrorResource + * @function getTypeUrl + * @memberof google.cloud.gkehub.configmanagement.v1beta.ErrorResource + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + ErrorResource.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.configmanagement.v1beta.ErrorResource"; + }; + return ErrorResource; })(); @@ -28041,15 +29994,18 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.group = reader.string(); - break; - case 2: - message.version = reader.string(); - break; - case 3: - message.kind = reader.string(); - break; + case 1: { + message.group = reader.string(); + break; + } + case 2: { + message.version = reader.string(); + break; + } + case 3: { + message.kind = reader.string(); + break; + } default: reader.skipType(tag & 7); break; @@ -28156,6 +30112,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for GroupVersionKind + * @function getTypeUrl + * @memberof google.cloud.gkehub.configmanagement.v1beta.GroupVersionKind + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + GroupVersionKind.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.configmanagement.v1beta.GroupVersionKind"; + }; + return GroupVersionKind; })(); @@ -28262,12 +30233,14 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.version = $root.google.cloud.gkehub.configmanagement.v1beta.PolicyControllerVersion.decode(reader, reader.uint32()); - break; - case 2: - message.deploymentState = $root.google.cloud.gkehub.configmanagement.v1beta.GatekeeperDeploymentState.decode(reader, reader.uint32()); - break; + case 1: { + message.version = $root.google.cloud.gkehub.configmanagement.v1beta.PolicyControllerVersion.decode(reader, reader.uint32()); + break; + } + case 2: { + message.deploymentState = $root.google.cloud.gkehub.configmanagement.v1beta.GatekeeperDeploymentState.decode(reader, reader.uint32()); + break; + } default: reader.skipType(tag & 7); break; @@ -28376,6 +30349,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for PolicyControllerState + * @function getTypeUrl + * @memberof google.cloud.gkehub.configmanagement.v1beta.PolicyControllerState + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + PolicyControllerState.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.configmanagement.v1beta.PolicyControllerState"; + }; + return PolicyControllerState; })(); @@ -28471,9 +30459,10 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.version = reader.string(); - break; + case 1: { + message.version = reader.string(); + break; + } default: reader.skipType(tag & 7); break; @@ -28563,6 +30552,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for PolicyControllerVersion + * @function getTypeUrl + * @memberof google.cloud.gkehub.configmanagement.v1beta.PolicyControllerVersion + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + PolicyControllerVersion.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.configmanagement.v1beta.PolicyControllerVersion"; + }; + return PolicyControllerVersion; })(); @@ -28669,12 +30673,14 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.webhook = reader.int32(); - break; - case 2: - message.version = $root.google.cloud.gkehub.configmanagement.v1beta.BinauthzVersion.decode(reader, reader.uint32()); - break; + case 1: { + message.webhook = reader.int32(); + break; + } + case 2: { + message.version = $root.google.cloud.gkehub.configmanagement.v1beta.BinauthzVersion.decode(reader, reader.uint32()); + break; + } default: reader.skipType(tag & 7); break; @@ -28801,6 +30807,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for BinauthzState + * @function getTypeUrl + * @memberof google.cloud.gkehub.configmanagement.v1beta.BinauthzState + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + BinauthzState.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.configmanagement.v1beta.BinauthzState"; + }; + return BinauthzState; })(); @@ -28896,9 +30917,10 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.webhookVersion = reader.string(); - break; + case 1: { + message.webhookVersion = reader.string(); + break; + } default: reader.skipType(tag & 7); break; @@ -28988,6 +31010,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for BinauthzVersion + * @function getTypeUrl + * @memberof google.cloud.gkehub.configmanagement.v1beta.BinauthzVersion + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + BinauthzVersion.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.configmanagement.v1beta.BinauthzVersion"; + }; + return BinauthzVersion; })(); @@ -29094,12 +31131,14 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.gatekeeperControllerManagerState = reader.int32(); - break; - case 2: - message.gatekeeperAudit = reader.int32(); - break; + case 1: { + message.gatekeeperControllerManagerState = reader.int32(); + break; + } + case 2: { + message.gatekeeperAudit = reader.int32(); + break; + } default: reader.skipType(tag & 7); break; @@ -29244,6 +31283,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for GatekeeperDeploymentState + * @function getTypeUrl + * @memberof google.cloud.gkehub.configmanagement.v1beta.GatekeeperDeploymentState + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + GatekeeperDeploymentState.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.configmanagement.v1beta.GatekeeperDeploymentState"; + }; + return GatekeeperDeploymentState; })(); @@ -29463,93 +31517,103 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.name = reader.string(); - break; - case 2: - 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; + case 1: { + message.name = reader.string(); + break; + } + case 2: { + 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; } - message.labels[key] = value; - break; - case 3: - message.resourceState = $root.google.cloud.gkehub.v1.FeatureResourceState.decode(reader, reader.uint32()); - break; - case 4: - message.spec = $root.google.cloud.gkehub.v1.CommonFeatureSpec.decode(reader, reader.uint32()); - break; - case 5: - if (message.membershipSpecs === $util.emptyObject) - message.membershipSpecs = {}; - var end2 = reader.uint32() + reader.pos; - key = ""; - value = null; - while (reader.pos < end2) { - var tag2 = reader.uint32(); - switch (tag2 >>> 3) { - case 1: - key = reader.string(); - break; - case 2: - value = $root.google.cloud.gkehub.v1.MembershipFeatureSpec.decode(reader, reader.uint32()); - break; - default: - reader.skipType(tag2 & 7); - break; + case 3: { + message.resourceState = $root.google.cloud.gkehub.v1.FeatureResourceState.decode(reader, reader.uint32()); + break; + } + case 4: { + message.spec = $root.google.cloud.gkehub.v1.CommonFeatureSpec.decode(reader, reader.uint32()); + break; + } + case 5: { + if (message.membershipSpecs === $util.emptyObject) + message.membershipSpecs = {}; + var end2 = reader.uint32() + reader.pos; + key = ""; + value = null; + while (reader.pos < end2) { + var tag2 = reader.uint32(); + switch (tag2 >>> 3) { + case 1: + key = reader.string(); + break; + case 2: + value = $root.google.cloud.gkehub.v1.MembershipFeatureSpec.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag2 & 7); + break; + } } + message.membershipSpecs[key] = value; + break; } - message.membershipSpecs[key] = value; - break; - case 6: - message.state = $root.google.cloud.gkehub.v1.CommonFeatureState.decode(reader, reader.uint32()); - break; - case 7: - if (message.membershipStates === $util.emptyObject) - message.membershipStates = {}; - var end2 = reader.uint32() + reader.pos; - key = ""; - value = null; - while (reader.pos < end2) { - var tag2 = reader.uint32(); - switch (tag2 >>> 3) { - case 1: - key = reader.string(); - break; - case 2: - value = $root.google.cloud.gkehub.v1.MembershipFeatureState.decode(reader, reader.uint32()); - break; - default: - reader.skipType(tag2 & 7); - break; + case 6: { + message.state = $root.google.cloud.gkehub.v1.CommonFeatureState.decode(reader, reader.uint32()); + break; + } + case 7: { + if (message.membershipStates === $util.emptyObject) + message.membershipStates = {}; + var end2 = reader.uint32() + reader.pos; + key = ""; + value = null; + while (reader.pos < end2) { + var tag2 = reader.uint32(); + switch (tag2 >>> 3) { + case 1: + key = reader.string(); + break; + case 2: + value = $root.google.cloud.gkehub.v1.MembershipFeatureState.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag2 & 7); + break; + } } + message.membershipStates[key] = value; + break; + } + case 8: { + message.createTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + break; + } + case 9: { + message.updateTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + break; + } + case 10: { + message.deleteTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + break; } - message.membershipStates[key] = value; - break; - case 8: - message.createTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); - break; - case 9: - message.updateTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); - break; - case 10: - message.deleteTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); - break; default: reader.skipType(tag & 7); break; @@ -29794,6 +31858,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for Feature + * @function getTypeUrl + * @memberof google.cloud.gkehub.v1.Feature + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + Feature.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.v1.Feature"; + }; + return Feature; })(); @@ -29889,9 +31968,10 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.state = reader.int32(); - break; + case 1: { + message.state = reader.int32(); + break; + } default: reader.skipType(tag & 7); break; @@ -30014,6 +32094,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for FeatureResourceState + * @function getTypeUrl + * @memberof google.cloud.gkehub.v1.FeatureResourceState + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + FeatureResourceState.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.v1.FeatureResourceState"; + }; + /** * State enum. * @name google.cloud.gkehub.v1.FeatureResourceState.State @@ -30153,15 +32248,18 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.code = reader.int32(); - break; - case 2: - message.description = reader.string(); - break; - case 3: - message.updateTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); - break; + case 1: { + message.code = reader.int32(); + break; + } + case 2: { + message.description = reader.string(); + break; + } + case 3: { + message.updateTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + break; + } default: reader.skipType(tag & 7); break; @@ -30296,6 +32394,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for FeatureState + * @function getTypeUrl + * @memberof google.cloud.gkehub.v1.FeatureState + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + FeatureState.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.v1.FeatureState"; + }; + /** * Code enum. * @name google.cloud.gkehub.v1.FeatureState.Code @@ -30423,9 +32536,10 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 102: - message.multiclusteringress = $root.google.cloud.gkehub.multiclusteringress.v1.FeatureSpec.decode(reader, reader.uint32()); - break; + case 102: { + message.multiclusteringress = $root.google.cloud.gkehub.multiclusteringress.v1.FeatureSpec.decode(reader, reader.uint32()); + break; + } default: reader.skipType(tag & 7); break; @@ -30525,6 +32639,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for CommonFeatureSpec + * @function getTypeUrl + * @memberof google.cloud.gkehub.v1.CommonFeatureSpec + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + CommonFeatureSpec.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.v1.CommonFeatureSpec"; + }; + return CommonFeatureSpec; })(); @@ -30620,9 +32749,10 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.state = $root.google.cloud.gkehub.v1.FeatureState.decode(reader, reader.uint32()); - break; + case 1: { + message.state = $root.google.cloud.gkehub.v1.FeatureState.decode(reader, reader.uint32()); + break; + } default: reader.skipType(tag & 7); break; @@ -30717,6 +32847,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for CommonFeatureState + * @function getTypeUrl + * @memberof google.cloud.gkehub.v1.CommonFeatureState + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + CommonFeatureState.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.v1.CommonFeatureState"; + }; + return CommonFeatureState; })(); @@ -30826,9 +32971,10 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 106: - message.configmanagement = $root.google.cloud.gkehub.configmanagement.v1.MembershipSpec.decode(reader, reader.uint32()); - break; + case 106: { + message.configmanagement = $root.google.cloud.gkehub.configmanagement.v1.MembershipSpec.decode(reader, reader.uint32()); + break; + } default: reader.skipType(tag & 7); break; @@ -30928,6 +33074,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for MembershipFeatureSpec + * @function getTypeUrl + * @memberof google.cloud.gkehub.v1.MembershipFeatureSpec + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + MembershipFeatureSpec.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.v1.MembershipFeatureSpec"; + }; + return MembershipFeatureSpec; })(); @@ -31048,12 +33209,14 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 106: - message.configmanagement = $root.google.cloud.gkehub.configmanagement.v1.MembershipState.decode(reader, reader.uint32()); - break; - case 1: - message.state = $root.google.cloud.gkehub.v1.FeatureState.decode(reader, reader.uint32()); - break; + case 106: { + message.configmanagement = $root.google.cloud.gkehub.configmanagement.v1.MembershipState.decode(reader, reader.uint32()); + break; + } + case 1: { + message.state = $root.google.cloud.gkehub.v1.FeatureState.decode(reader, reader.uint32()); + break; + } default: reader.skipType(tag & 7); break; @@ -31167,6 +33330,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for MembershipFeatureState + * @function getTypeUrl + * @memberof google.cloud.gkehub.v1.MembershipFeatureState + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + MembershipFeatureState.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.v1.MembershipFeatureState"; + }; + return MembershipFeatureState; })(); @@ -31399,61 +33577,73 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 4: - message.endpoint = $root.google.cloud.gkehub.v1.MembershipEndpoint.decode(reader, reader.uint32()); - break; - case 1: - message.name = reader.string(); - break; - case 2: - 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; + case 4: { + message.endpoint = $root.google.cloud.gkehub.v1.MembershipEndpoint.decode(reader, reader.uint32()); + break; + } + case 1: { + message.name = reader.string(); + break; + } + case 2: { + 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 3: { + message.description = reader.string(); + break; + } + case 5: { + message.state = $root.google.cloud.gkehub.v1.MembershipState.decode(reader, reader.uint32()); + break; + } + case 6: { + message.createTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + break; + } + case 7: { + message.updateTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + break; + } + case 8: { + message.deleteTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + break; + } + case 9: { + message.externalId = reader.string(); + break; + } + case 10: { + message.lastConnectionTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + break; + } + case 11: { + message.uniqueId = reader.string(); + break; + } + case 12: { + message.authority = $root.google.cloud.gkehub.v1.Authority.decode(reader, reader.uint32()); + break; } - message.labels[key] = value; - break; - case 3: - message.description = reader.string(); - break; - case 5: - message.state = $root.google.cloud.gkehub.v1.MembershipState.decode(reader, reader.uint32()); - break; - case 6: - message.createTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); - break; - case 7: - message.updateTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); - break; - case 8: - message.deleteTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); - break; - case 9: - message.externalId = reader.string(); - break; - case 10: - message.lastConnectionTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); - break; - case 11: - message.uniqueId = reader.string(); - break; - case 12: - message.authority = $root.google.cloud.gkehub.v1.Authority.decode(reader, reader.uint32()); - break; default: reader.skipType(tag & 7); break; @@ -31688,6 +33878,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for Membership + * @function getTypeUrl + * @memberof google.cloud.gkehub.v1.Membership + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + Membership.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.v1.Membership"; + }; + return Membership; })(); @@ -31805,15 +34010,18 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.gkeCluster = $root.google.cloud.gkehub.v1.GkeCluster.decode(reader, reader.uint32()); - break; - case 2: - message.kubernetesMetadata = $root.google.cloud.gkehub.v1.KubernetesMetadata.decode(reader, reader.uint32()); - break; - case 3: - message.kubernetesResource = $root.google.cloud.gkehub.v1.KubernetesResource.decode(reader, reader.uint32()); - break; + case 1: { + message.gkeCluster = $root.google.cloud.gkehub.v1.GkeCluster.decode(reader, reader.uint32()); + break; + } + case 2: { + message.kubernetesMetadata = $root.google.cloud.gkehub.v1.KubernetesMetadata.decode(reader, reader.uint32()); + break; + } + case 3: { + message.kubernetesResource = $root.google.cloud.gkehub.v1.KubernetesResource.decode(reader, reader.uint32()); + break; + } default: reader.skipType(tag & 7); break; @@ -31935,6 +34143,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for MembershipEndpoint + * @function getTypeUrl + * @memberof google.cloud.gkehub.v1.MembershipEndpoint + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + MembershipEndpoint.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.v1.MembershipEndpoint"; + }; + return MembershipEndpoint; })(); @@ -32067,22 +34290,26 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.membershipCrManifest = reader.string(); - break; - case 2: - if (!(message.membershipResources && message.membershipResources.length)) - message.membershipResources = []; - message.membershipResources.push($root.google.cloud.gkehub.v1.ResourceManifest.decode(reader, reader.uint32())); - break; - case 3: - if (!(message.connectResources && message.connectResources.length)) - message.connectResources = []; - message.connectResources.push($root.google.cloud.gkehub.v1.ResourceManifest.decode(reader, reader.uint32())); - break; - case 4: - message.resourceOptions = $root.google.cloud.gkehub.v1.ResourceOptions.decode(reader, reader.uint32()); - break; + case 1: { + message.membershipCrManifest = reader.string(); + break; + } + case 2: { + if (!(message.membershipResources && message.membershipResources.length)) + message.membershipResources = []; + message.membershipResources.push($root.google.cloud.gkehub.v1.ResourceManifest.decode(reader, reader.uint32())); + break; + } + case 3: { + if (!(message.connectResources && message.connectResources.length)) + message.connectResources = []; + message.connectResources.push($root.google.cloud.gkehub.v1.ResourceManifest.decode(reader, reader.uint32())); + break; + } + case 4: { + message.resourceOptions = $root.google.cloud.gkehub.v1.ResourceOptions.decode(reader, reader.uint32()); + break; + } default: reader.skipType(tag & 7); break; @@ -32238,6 +34465,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for KubernetesResource + * @function getTypeUrl + * @memberof google.cloud.gkehub.v1.KubernetesResource + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + KubernetesResource.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.v1.KubernetesResource"; + }; + return KubernetesResource; })(); @@ -32355,15 +34597,18 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.connectVersion = reader.string(); - break; - case 2: - message.v1beta1Crd = reader.bool(); - break; - case 3: - message.k8sVersion = reader.string(); - break; + case 1: { + message.connectVersion = reader.string(); + break; + } + case 2: { + message.v1beta1Crd = reader.bool(); + break; + } + case 3: { + message.k8sVersion = reader.string(); + break; + } default: reader.skipType(tag & 7); break; @@ -32470,6 +34715,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for ResourceOptions + * @function getTypeUrl + * @memberof google.cloud.gkehub.v1.ResourceOptions + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + ResourceOptions.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.v1.ResourceOptions"; + }; + return ResourceOptions; })(); @@ -32576,12 +34836,14 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.manifest = reader.string(); - break; - case 2: - message.clusterScoped = reader.bool(); - break; + case 1: { + message.manifest = reader.string(); + break; + } + case 2: { + message.clusterScoped = reader.bool(); + break; + } default: reader.skipType(tag & 7); break; @@ -32680,6 +34942,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for ResourceManifest + * @function getTypeUrl + * @memberof google.cloud.gkehub.v1.ResourceManifest + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + ResourceManifest.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.v1.ResourceManifest"; + }; + return ResourceManifest; })(); @@ -32775,9 +35052,10 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.resourceLink = reader.string(); - break; + case 1: { + message.resourceLink = reader.string(); + break; + } default: reader.skipType(tag & 7); break; @@ -32867,6 +35145,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for GkeCluster + * @function getTypeUrl + * @memberof google.cloud.gkehub.v1.GkeCluster + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + GkeCluster.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.v1.GkeCluster"; + }; + return GkeCluster; })(); @@ -33017,24 +35310,30 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.kubernetesApiServerVersion = reader.string(); - break; - case 2: - message.nodeProviderId = reader.string(); - break; - case 3: - message.nodeCount = reader.int32(); - break; - case 4: - message.vcpuCount = reader.int32(); - break; - case 5: - message.memoryMb = reader.int32(); - break; - case 100: - message.updateTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); - break; + case 1: { + message.kubernetesApiServerVersion = reader.string(); + break; + } + case 2: { + message.nodeProviderId = reader.string(); + break; + } + case 3: { + message.nodeCount = reader.int32(); + break; + } + case 4: { + message.vcpuCount = reader.int32(); + break; + } + case 5: { + message.memoryMb = reader.int32(); + break; + } + case 100: { + message.updateTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + break; + } default: reader.skipType(tag & 7); break; @@ -33170,6 +35469,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for KubernetesMetadata + * @function getTypeUrl + * @memberof google.cloud.gkehub.v1.KubernetesMetadata + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + KubernetesMetadata.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.v1.KubernetesMetadata"; + }; + return KubernetesMetadata; })(); @@ -33265,9 +35579,10 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.code = reader.int32(); - break; + case 1: { + message.code = reader.int32(); + break; + } default: reader.skipType(tag & 7); break; @@ -33390,6 +35705,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for MembershipState + * @function getTypeUrl + * @memberof google.cloud.gkehub.v1.MembershipState + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + MembershipState.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.v1.MembershipState"; + }; + /** * Code enum. * @name google.cloud.gkehub.v1.MembershipState.Code @@ -33540,18 +35870,22 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.issuer = reader.string(); - break; - case 2: - message.workloadIdentityPool = reader.string(); - break; - case 3: - message.identityProvider = reader.string(); - break; - case 4: - message.oidcJwks = reader.bytes(); - break; + case 1: { + message.issuer = reader.string(); + break; + } + case 2: { + message.workloadIdentityPool = reader.string(); + break; + } + case 3: { + message.identityProvider = reader.string(); + break; + } + case 4: { + message.oidcJwks = reader.bytes(); + break; + } default: reader.skipType(tag & 7); break; @@ -33623,7 +35957,7 @@ if (object.oidcJwks != null) if (typeof object.oidcJwks === "string") $util.base64.decode(object.oidcJwks, message.oidcJwks = $util.newBuffer($util.base64.length(object.oidcJwks)), 0); - else if (object.oidcJwks.length) + else if (object.oidcJwks.length >= 0) message.oidcJwks = object.oidcJwks; return message; }; @@ -33675,6 +36009,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for Authority + * @function getTypeUrl + * @memberof google.cloud.gkehub.v1.Authority + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + Authority.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.v1.Authority"; + }; + return Authority; })(); @@ -33711,7 +36060,7 @@ }; /** - * Callback as used by {@link google.cloud.gkehub.v1.GkeHub#listMemberships}. + * Callback as used by {@link google.cloud.gkehub.v1.GkeHub|listMemberships}. * @memberof google.cloud.gkehub.v1.GkeHub * @typedef ListMembershipsCallback * @type {function} @@ -33744,7 +36093,7 @@ */ /** - * Callback as used by {@link google.cloud.gkehub.v1.GkeHub#listFeatures}. + * Callback as used by {@link google.cloud.gkehub.v1.GkeHub|listFeatures}. * @memberof google.cloud.gkehub.v1.GkeHub * @typedef ListFeaturesCallback * @type {function} @@ -33777,7 +36126,7 @@ */ /** - * Callback as used by {@link google.cloud.gkehub.v1.GkeHub#getMembership}. + * Callback as used by {@link google.cloud.gkehub.v1.GkeHub|getMembership}. * @memberof google.cloud.gkehub.v1.GkeHub * @typedef GetMembershipCallback * @type {function} @@ -33810,7 +36159,7 @@ */ /** - * Callback as used by {@link google.cloud.gkehub.v1.GkeHub#getFeature}. + * Callback as used by {@link google.cloud.gkehub.v1.GkeHub|getFeature}. * @memberof google.cloud.gkehub.v1.GkeHub * @typedef GetFeatureCallback * @type {function} @@ -33843,7 +36192,7 @@ */ /** - * Callback as used by {@link google.cloud.gkehub.v1.GkeHub#createMembership}. + * Callback as used by {@link google.cloud.gkehub.v1.GkeHub|createMembership}. * @memberof google.cloud.gkehub.v1.GkeHub * @typedef CreateMembershipCallback * @type {function} @@ -33876,7 +36225,7 @@ */ /** - * Callback as used by {@link google.cloud.gkehub.v1.GkeHub#createFeature}. + * Callback as used by {@link google.cloud.gkehub.v1.GkeHub|createFeature}. * @memberof google.cloud.gkehub.v1.GkeHub * @typedef CreateFeatureCallback * @type {function} @@ -33909,7 +36258,7 @@ */ /** - * Callback as used by {@link google.cloud.gkehub.v1.GkeHub#deleteMembership}. + * Callback as used by {@link google.cloud.gkehub.v1.GkeHub|deleteMembership}. * @memberof google.cloud.gkehub.v1.GkeHub * @typedef DeleteMembershipCallback * @type {function} @@ -33942,7 +36291,7 @@ */ /** - * Callback as used by {@link google.cloud.gkehub.v1.GkeHub#deleteFeature}. + * Callback as used by {@link google.cloud.gkehub.v1.GkeHub|deleteFeature}. * @memberof google.cloud.gkehub.v1.GkeHub * @typedef DeleteFeatureCallback * @type {function} @@ -33975,7 +36324,7 @@ */ /** - * Callback as used by {@link google.cloud.gkehub.v1.GkeHub#updateMembership}. + * Callback as used by {@link google.cloud.gkehub.v1.GkeHub|updateMembership}. * @memberof google.cloud.gkehub.v1.GkeHub * @typedef UpdateMembershipCallback * @type {function} @@ -34008,7 +36357,7 @@ */ /** - * Callback as used by {@link google.cloud.gkehub.v1.GkeHub#updateFeature}. + * Callback as used by {@link google.cloud.gkehub.v1.GkeHub|updateFeature}. * @memberof google.cloud.gkehub.v1.GkeHub * @typedef UpdateFeatureCallback * @type {function} @@ -34041,7 +36390,7 @@ */ /** - * Callback as used by {@link google.cloud.gkehub.v1.GkeHub#generateConnectManifest}. + * Callback as used by {@link google.cloud.gkehub.v1.GkeHub|generateConnectManifest}. * @memberof google.cloud.gkehub.v1.GkeHub * @typedef GenerateConnectManifestCallback * @type {function} @@ -34212,21 +36561,26 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.parent = reader.string(); - break; - case 2: - message.pageSize = reader.int32(); - break; - case 3: - message.pageToken = reader.string(); - break; - case 4: - message.filter = reader.string(); - break; - case 5: - message.orderBy = reader.string(); - break; + case 1: { + message.parent = reader.string(); + break; + } + case 2: { + message.pageSize = reader.int32(); + break; + } + case 3: { + message.pageToken = reader.string(); + break; + } + case 4: { + message.filter = reader.string(); + break; + } + case 5: { + message.orderBy = reader.string(); + break; + } default: reader.skipType(tag & 7); break; @@ -34349,6 +36703,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for ListMembershipsRequest + * @function getTypeUrl + * @memberof google.cloud.gkehub.v1.ListMembershipsRequest + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + ListMembershipsRequest.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.v1.ListMembershipsRequest"; + }; + return ListMembershipsRequest; })(); @@ -34470,19 +36839,22 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - if (!(message.resources && message.resources.length)) - message.resources = []; - message.resources.push($root.google.cloud.gkehub.v1.Membership.decode(reader, reader.uint32())); - break; - case 2: - message.nextPageToken = reader.string(); - break; - case 3: - if (!(message.unreachable && message.unreachable.length)) - message.unreachable = []; - message.unreachable.push(reader.string()); - break; + case 1: { + if (!(message.resources && message.resources.length)) + message.resources = []; + message.resources.push($root.google.cloud.gkehub.v1.Membership.decode(reader, reader.uint32())); + break; + } + case 2: { + message.nextPageToken = reader.string(); + break; + } + case 3: { + if (!(message.unreachable && message.unreachable.length)) + message.unreachable = []; + message.unreachable.push(reader.string()); + break; + } default: reader.skipType(tag & 7); break; @@ -34619,6 +36991,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for ListMembershipsResponse + * @function getTypeUrl + * @memberof google.cloud.gkehub.v1.ListMembershipsResponse + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + ListMembershipsResponse.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.v1.ListMembershipsResponse"; + }; + return ListMembershipsResponse; })(); @@ -34714,9 +37101,10 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.name = reader.string(); - break; + case 1: { + message.name = reader.string(); + break; + } default: reader.skipType(tag & 7); break; @@ -34806,6 +37194,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for GetMembershipRequest + * @function getTypeUrl + * @memberof google.cloud.gkehub.v1.GetMembershipRequest + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + GetMembershipRequest.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.v1.GetMembershipRequest"; + }; + return GetMembershipRequest; })(); @@ -34934,18 +37337,22 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.parent = reader.string(); - break; - case 2: - message.membershipId = reader.string(); - break; - case 3: - message.resource = $root.google.cloud.gkehub.v1.Membership.decode(reader, reader.uint32()); - break; - case 4: - message.requestId = reader.string(); - break; + case 1: { + message.parent = reader.string(); + break; + } + case 2: { + message.membershipId = reader.string(); + break; + } + case 3: { + message.resource = $root.google.cloud.gkehub.v1.Membership.decode(reader, reader.uint32()); + break; + } + case 4: { + message.requestId = reader.string(); + break; + } default: reader.skipType(tag & 7); break; @@ -35065,6 +37472,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for CreateMembershipRequest + * @function getTypeUrl + * @memberof google.cloud.gkehub.v1.CreateMembershipRequest + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + CreateMembershipRequest.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.v1.CreateMembershipRequest"; + }; + return CreateMembershipRequest; })(); @@ -35171,12 +37593,14 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.name = reader.string(); - break; - case 2: - message.requestId = reader.string(); - break; + case 1: { + message.name = reader.string(); + break; + } + case 2: { + message.requestId = reader.string(); + break; + } default: reader.skipType(tag & 7); break; @@ -35275,6 +37699,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for DeleteMembershipRequest + * @function getTypeUrl + * @memberof google.cloud.gkehub.v1.DeleteMembershipRequest + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + DeleteMembershipRequest.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.v1.DeleteMembershipRequest"; + }; + return DeleteMembershipRequest; })(); @@ -35403,18 +37842,22 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.name = reader.string(); - break; - case 2: - message.updateMask = $root.google.protobuf.FieldMask.decode(reader, reader.uint32()); - break; - case 3: - message.resource = $root.google.cloud.gkehub.v1.Membership.decode(reader, reader.uint32()); - break; - case 4: - message.requestId = reader.string(); - break; + case 1: { + message.name = reader.string(); + break; + } + case 2: { + message.updateMask = $root.google.protobuf.FieldMask.decode(reader, reader.uint32()); + break; + } + case 3: { + message.resource = $root.google.cloud.gkehub.v1.Membership.decode(reader, reader.uint32()); + break; + } + case 4: { + message.requestId = reader.string(); + break; + } default: reader.skipType(tag & 7); break; @@ -35539,6 +37982,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for UpdateMembershipRequest + * @function getTypeUrl + * @memberof google.cloud.gkehub.v1.UpdateMembershipRequest + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + UpdateMembershipRequest.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.v1.UpdateMembershipRequest"; + }; + return UpdateMembershipRequest; })(); @@ -35700,27 +38158,34 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.name = reader.string(); - break; - case 2: - message.namespace = reader.string(); - break; - case 3: - message.proxy = reader.bytes(); - break; - case 4: - message.version = reader.string(); - break; - case 5: - message.isUpgrade = reader.bool(); - break; - case 6: - message.registry = reader.string(); - break; - case 7: - message.imagePullSecretContent = reader.bytes(); - break; + case 1: { + message.name = reader.string(); + break; + } + case 2: { + message.namespace = reader.string(); + break; + } + case 3: { + message.proxy = reader.bytes(); + break; + } + case 4: { + message.version = reader.string(); + break; + } + case 5: { + message.isUpgrade = reader.bool(); + break; + } + case 6: { + message.registry = reader.string(); + break; + } + case 7: { + message.imagePullSecretContent = reader.bytes(); + break; + } default: reader.skipType(tag & 7); break; @@ -35799,7 +38264,7 @@ if (object.proxy != null) if (typeof object.proxy === "string") $util.base64.decode(object.proxy, message.proxy = $util.newBuffer($util.base64.length(object.proxy)), 0); - else if (object.proxy.length) + else if (object.proxy.length >= 0) message.proxy = object.proxy; if (object.version != null) message.version = String(object.version); @@ -35810,7 +38275,7 @@ if (object.imagePullSecretContent != null) if (typeof object.imagePullSecretContent === "string") $util.base64.decode(object.imagePullSecretContent, message.imagePullSecretContent = $util.newBuffer($util.base64.length(object.imagePullSecretContent)), 0); - else if (object.imagePullSecretContent.length) + else if (object.imagePullSecretContent.length >= 0) message.imagePullSecretContent = object.imagePullSecretContent; return message; }; @@ -35877,6 +38342,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for GenerateConnectManifestRequest + * @function getTypeUrl + * @memberof google.cloud.gkehub.v1.GenerateConnectManifestRequest + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + GenerateConnectManifestRequest.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.v1.GenerateConnectManifestRequest"; + }; + return GenerateConnectManifestRequest; })(); @@ -35974,11 +38454,12 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - if (!(message.manifest && message.manifest.length)) - message.manifest = []; - message.manifest.push($root.google.cloud.gkehub.v1.ConnectAgentResource.decode(reader, reader.uint32())); - break; + case 1: { + if (!(message.manifest && message.manifest.length)) + message.manifest = []; + message.manifest.push($root.google.cloud.gkehub.v1.ConnectAgentResource.decode(reader, reader.uint32())); + break; + } default: reader.skipType(tag & 7); break; @@ -36085,6 +38566,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for GenerateConnectManifestResponse + * @function getTypeUrl + * @memberof google.cloud.gkehub.v1.GenerateConnectManifestResponse + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + GenerateConnectManifestResponse.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.v1.GenerateConnectManifestResponse"; + }; + return GenerateConnectManifestResponse; })(); @@ -36191,12 +38687,14 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.type = $root.google.cloud.gkehub.v1.TypeMeta.decode(reader, reader.uint32()); - break; - case 2: - message.manifest = reader.string(); - break; + case 1: { + message.type = $root.google.cloud.gkehub.v1.TypeMeta.decode(reader, reader.uint32()); + break; + } + case 2: { + message.manifest = reader.string(); + break; + } default: reader.skipType(tag & 7); break; @@ -36300,6 +38798,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for ConnectAgentResource + * @function getTypeUrl + * @memberof google.cloud.gkehub.v1.ConnectAgentResource + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + ConnectAgentResource.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.v1.ConnectAgentResource"; + }; + return ConnectAgentResource; })(); @@ -36406,12 +38919,14 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.kind = reader.string(); - break; - case 2: - message.apiVersion = reader.string(); - break; + case 1: { + message.kind = reader.string(); + break; + } + case 2: { + message.apiVersion = reader.string(); + break; + } default: reader.skipType(tag & 7); break; @@ -36510,6 +39025,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for TypeMeta + * @function getTypeUrl + * @memberof google.cloud.gkehub.v1.TypeMeta + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + TypeMeta.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.v1.TypeMeta"; + }; + return TypeMeta; })(); @@ -36649,21 +39179,26 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.parent = reader.string(); - break; - case 2: - message.pageSize = reader.int32(); - break; - case 3: - message.pageToken = reader.string(); - break; - case 4: - message.filter = reader.string(); - break; - case 5: - message.orderBy = reader.string(); - break; + case 1: { + message.parent = reader.string(); + break; + } + case 2: { + message.pageSize = reader.int32(); + break; + } + case 3: { + message.pageToken = reader.string(); + break; + } + case 4: { + message.filter = reader.string(); + break; + } + case 5: { + message.orderBy = reader.string(); + break; + } default: reader.skipType(tag & 7); break; @@ -36786,6 +39321,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for ListFeaturesRequest + * @function getTypeUrl + * @memberof google.cloud.gkehub.v1.ListFeaturesRequest + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + ListFeaturesRequest.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.v1.ListFeaturesRequest"; + }; + return ListFeaturesRequest; })(); @@ -36894,14 +39444,16 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - if (!(message.resources && message.resources.length)) - message.resources = []; - message.resources.push($root.google.cloud.gkehub.v1.Feature.decode(reader, reader.uint32())); - break; - case 2: - message.nextPageToken = reader.string(); - break; + case 1: { + if (!(message.resources && message.resources.length)) + message.resources = []; + message.resources.push($root.google.cloud.gkehub.v1.Feature.decode(reader, reader.uint32())); + break; + } + case 2: { + message.nextPageToken = reader.string(); + break; + } default: reader.skipType(tag & 7); break; @@ -37017,6 +39569,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for ListFeaturesResponse + * @function getTypeUrl + * @memberof google.cloud.gkehub.v1.ListFeaturesResponse + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + ListFeaturesResponse.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.v1.ListFeaturesResponse"; + }; + return ListFeaturesResponse; })(); @@ -37112,9 +39679,10 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.name = reader.string(); - break; + case 1: { + message.name = reader.string(); + break; + } default: reader.skipType(tag & 7); break; @@ -37204,6 +39772,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for GetFeatureRequest + * @function getTypeUrl + * @memberof google.cloud.gkehub.v1.GetFeatureRequest + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + GetFeatureRequest.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.v1.GetFeatureRequest"; + }; + return GetFeatureRequest; })(); @@ -37332,18 +39915,22 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.parent = reader.string(); - break; - case 2: - message.featureId = reader.string(); - break; - case 3: - message.resource = $root.google.cloud.gkehub.v1.Feature.decode(reader, reader.uint32()); - break; - case 4: - message.requestId = reader.string(); - break; + case 1: { + message.parent = reader.string(); + break; + } + case 2: { + message.featureId = reader.string(); + break; + } + case 3: { + message.resource = $root.google.cloud.gkehub.v1.Feature.decode(reader, reader.uint32()); + break; + } + case 4: { + message.requestId = reader.string(); + break; + } default: reader.skipType(tag & 7); break; @@ -37463,6 +40050,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for CreateFeatureRequest + * @function getTypeUrl + * @memberof google.cloud.gkehub.v1.CreateFeatureRequest + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + CreateFeatureRequest.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.v1.CreateFeatureRequest"; + }; + return CreateFeatureRequest; })(); @@ -37580,15 +40182,18 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.name = reader.string(); - break; - case 2: - message.force = reader.bool(); - break; - case 3: - message.requestId = reader.string(); - break; + case 1: { + message.name = reader.string(); + break; + } + case 2: { + message.force = reader.bool(); + break; + } + case 3: { + message.requestId = reader.string(); + break; + } default: reader.skipType(tag & 7); break; @@ -37695,6 +40300,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for DeleteFeatureRequest + * @function getTypeUrl + * @memberof google.cloud.gkehub.v1.DeleteFeatureRequest + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + DeleteFeatureRequest.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.v1.DeleteFeatureRequest"; + }; + return DeleteFeatureRequest; })(); @@ -37823,18 +40443,22 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.name = reader.string(); - break; - case 2: - message.updateMask = $root.google.protobuf.FieldMask.decode(reader, reader.uint32()); - break; - case 3: - message.resource = $root.google.cloud.gkehub.v1.Feature.decode(reader, reader.uint32()); - break; - case 4: - message.requestId = reader.string(); - break; + case 1: { + message.name = reader.string(); + break; + } + case 2: { + message.updateMask = $root.google.protobuf.FieldMask.decode(reader, reader.uint32()); + break; + } + case 3: { + message.resource = $root.google.cloud.gkehub.v1.Feature.decode(reader, reader.uint32()); + break; + } + case 4: { + message.requestId = reader.string(); + break; + } default: reader.skipType(tag & 7); break; @@ -37959,6 +40583,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for UpdateFeatureRequest + * @function getTypeUrl + * @memberof google.cloud.gkehub.v1.UpdateFeatureRequest + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + UpdateFeatureRequest.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.v1.UpdateFeatureRequest"; + }; + return UpdateFeatureRequest; })(); @@ -38120,27 +40759,34 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.createTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); - break; - case 2: - message.endTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); - break; - case 3: - message.target = reader.string(); - break; - case 4: - message.verb = reader.string(); - break; - case 5: - message.statusDetail = reader.string(); - break; - case 6: - message.cancelRequested = reader.bool(); - break; - case 7: - message.apiVersion = reader.string(); - break; + case 1: { + message.createTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + break; + } + case 2: { + message.endTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + break; + } + case 3: { + message.target = reader.string(); + break; + } + case 4: { + message.verb = reader.string(); + break; + } + case 5: { + message.statusDetail = reader.string(); + break; + } + case 6: { + message.cancelRequested = reader.bool(); + break; + } + case 7: { + message.apiVersion = reader.string(); + break; + } default: reader.skipType(tag & 7); break; @@ -38289,6 +40935,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for OperationMetadata + * @function getTypeUrl + * @memberof google.cloud.gkehub.v1.OperationMetadata + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + OperationMetadata.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.v1.OperationMetadata"; + }; + return OperationMetadata; })(); @@ -38405,9 +41066,10 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.configMembership = reader.string(); - break; + case 1: { + message.configMembership = reader.string(); + break; + } default: reader.skipType(tag & 7); break; @@ -38497,6 +41159,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for FeatureSpec + * @function getTypeUrl + * @memberof google.cloud.gkehub.multiclusteringress.v1.FeatureSpec + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + FeatureSpec.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.multiclusteringress.v1.FeatureSpec"; + }; + return FeatureSpec; })(); @@ -38631,12 +41308,14 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.configMembership = reader.string(); - break; - case 2: - message.billing = reader.int32(); - break; + case 1: { + message.configMembership = reader.string(); + break; + } + case 2: { + message.billing = reader.int32(); + break; + } default: reader.skipType(tag & 7); break; @@ -38753,6 +41432,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for FeatureSpec + * @function getTypeUrl + * @memberof google.cloud.gkehub.multiclusteringress.v1alpha.FeatureSpec + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + FeatureSpec.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.multiclusteringress.v1alpha.FeatureSpec"; + }; + return FeatureSpec; })(); @@ -38887,12 +41581,14 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.configMembership = reader.string(); - break; - case 2: - message.billing = reader.int32(); - break; + case 1: { + message.configMembership = reader.string(); + break; + } + case 2: { + message.billing = reader.int32(); + break; + } default: reader.skipType(tag & 7); break; @@ -39009,6 +41705,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for FeatureSpec + * @function getTypeUrl + * @memberof google.cloud.gkehub.multiclusteringress.v1beta.FeatureSpec + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + FeatureSpec.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.multiclusteringress.v1beta.FeatureSpec"; + }; + return FeatureSpec; })(); @@ -39130,11 +41841,12 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - if (!(message.allowlistedServiceAccounts && message.allowlistedServiceAccounts.length)) - message.allowlistedServiceAccounts = []; - message.allowlistedServiceAccounts.push(reader.string()); - break; + case 1: { + if (!(message.allowlistedServiceAccounts && message.allowlistedServiceAccounts.length)) + message.allowlistedServiceAccounts = []; + message.allowlistedServiceAccounts.push(reader.string()); + break; + } default: reader.skipType(tag & 7); break; @@ -39236,6 +41948,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for FeatureSpec + * @function getTypeUrl + * @memberof google.cloud.gkehub.cloudauditlogging.v1alpha.FeatureSpec + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + FeatureSpec.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.cloudauditlogging.v1alpha.FeatureSpec"; + }; + return FeatureSpec; })(); @@ -39455,93 +42182,103 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.name = reader.string(); - break; - case 2: - 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; + case 1: { + message.name = reader.string(); + break; + } + case 2: { + 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; } - message.labels[key] = value; - break; - case 3: - message.resourceState = $root.google.cloud.gkehub.v1alpha.FeatureResourceState.decode(reader, reader.uint32()); - break; - case 4: - message.spec = $root.google.cloud.gkehub.v1alpha.CommonFeatureSpec.decode(reader, reader.uint32()); - break; - case 5: - if (message.membershipSpecs === $util.emptyObject) - message.membershipSpecs = {}; - var end2 = reader.uint32() + reader.pos; - key = ""; - value = null; - while (reader.pos < end2) { - var tag2 = reader.uint32(); - switch (tag2 >>> 3) { - case 1: - key = reader.string(); - break; - case 2: - value = $root.google.cloud.gkehub.v1alpha.MembershipFeatureSpec.decode(reader, reader.uint32()); - break; - default: - reader.skipType(tag2 & 7); - break; + case 3: { + message.resourceState = $root.google.cloud.gkehub.v1alpha.FeatureResourceState.decode(reader, reader.uint32()); + break; + } + case 4: { + message.spec = $root.google.cloud.gkehub.v1alpha.CommonFeatureSpec.decode(reader, reader.uint32()); + break; + } + case 5: { + if (message.membershipSpecs === $util.emptyObject) + message.membershipSpecs = {}; + var end2 = reader.uint32() + reader.pos; + key = ""; + value = null; + while (reader.pos < end2) { + var tag2 = reader.uint32(); + switch (tag2 >>> 3) { + case 1: + key = reader.string(); + break; + case 2: + value = $root.google.cloud.gkehub.v1alpha.MembershipFeatureSpec.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag2 & 7); + break; + } } + message.membershipSpecs[key] = value; + break; } - message.membershipSpecs[key] = value; - break; - case 6: - message.state = $root.google.cloud.gkehub.v1alpha.CommonFeatureState.decode(reader, reader.uint32()); - break; - case 7: - if (message.membershipStates === $util.emptyObject) - message.membershipStates = {}; - var end2 = reader.uint32() + reader.pos; - key = ""; - value = null; - while (reader.pos < end2) { - var tag2 = reader.uint32(); - switch (tag2 >>> 3) { - case 1: - key = reader.string(); - break; - case 2: - value = $root.google.cloud.gkehub.v1alpha.MembershipFeatureState.decode(reader, reader.uint32()); - break; - default: - reader.skipType(tag2 & 7); - break; + case 6: { + message.state = $root.google.cloud.gkehub.v1alpha.CommonFeatureState.decode(reader, reader.uint32()); + break; + } + case 7: { + if (message.membershipStates === $util.emptyObject) + message.membershipStates = {}; + var end2 = reader.uint32() + reader.pos; + key = ""; + value = null; + while (reader.pos < end2) { + var tag2 = reader.uint32(); + switch (tag2 >>> 3) { + case 1: + key = reader.string(); + break; + case 2: + value = $root.google.cloud.gkehub.v1alpha.MembershipFeatureState.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag2 & 7); + break; + } } + message.membershipStates[key] = value; + break; + } + case 8: { + message.createTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + break; + } + case 9: { + message.updateTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + break; + } + case 10: { + message.deleteTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + break; } - message.membershipStates[key] = value; - break; - case 8: - message.createTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); - break; - case 9: - message.updateTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); - break; - case 10: - message.deleteTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); - break; default: reader.skipType(tag & 7); break; @@ -39786,6 +42523,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for Feature + * @function getTypeUrl + * @memberof google.cloud.gkehub.v1alpha.Feature + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + Feature.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.v1alpha.Feature"; + }; + return Feature; })(); @@ -39881,9 +42633,10 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.state = reader.int32(); - break; + case 1: { + message.state = reader.int32(); + break; + } default: reader.skipType(tag & 7); break; @@ -40006,6 +42759,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for FeatureResourceState + * @function getTypeUrl + * @memberof google.cloud.gkehub.v1alpha.FeatureResourceState + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + FeatureResourceState.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.v1alpha.FeatureResourceState"; + }; + /** * State enum. * @name google.cloud.gkehub.v1alpha.FeatureResourceState.State @@ -40145,15 +42913,18 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.code = reader.int32(); - break; - case 2: - message.description = reader.string(); - break; - case 3: - message.updateTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); - break; + case 1: { + message.code = reader.int32(); + break; + } + case 2: { + message.description = reader.string(); + break; + } + case 3: { + message.updateTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + break; + } default: reader.skipType(tag & 7); break; @@ -40288,6 +43059,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for FeatureState + * @function getTypeUrl + * @memberof google.cloud.gkehub.v1alpha.FeatureState + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + FeatureState.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.v1alpha.FeatureState"; + }; + /** * Code enum. * @name google.cloud.gkehub.v1alpha.FeatureState.Code @@ -40426,12 +43212,14 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 102: - message.multiclusteringress = $root.google.cloud.gkehub.multiclusteringress.v1alpha.FeatureSpec.decode(reader, reader.uint32()); - break; - case 108: - message.cloudauditlogging = $root.google.cloud.gkehub.cloudauditlogging.v1alpha.FeatureSpec.decode(reader, reader.uint32()); - break; + case 102: { + message.multiclusteringress = $root.google.cloud.gkehub.multiclusteringress.v1alpha.FeatureSpec.decode(reader, reader.uint32()); + break; + } + case 108: { + message.cloudauditlogging = $root.google.cloud.gkehub.cloudauditlogging.v1alpha.FeatureSpec.decode(reader, reader.uint32()); + break; + } default: reader.skipType(tag & 7); break; @@ -40551,6 +43339,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for CommonFeatureSpec + * @function getTypeUrl + * @memberof google.cloud.gkehub.v1alpha.CommonFeatureSpec + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + CommonFeatureSpec.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.v1alpha.CommonFeatureSpec"; + }; + return CommonFeatureSpec; })(); @@ -40671,12 +43474,14 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 100: - message.servicemesh = $root.google.cloud.gkehub.servicemesh.v1alpha.FeatureState.decode(reader, reader.uint32()); - break; - case 1: - message.state = $root.google.cloud.gkehub.v1alpha.FeatureState.decode(reader, reader.uint32()); - break; + case 100: { + message.servicemesh = $root.google.cloud.gkehub.servicemesh.v1alpha.FeatureState.decode(reader, reader.uint32()); + break; + } + case 1: { + message.state = $root.google.cloud.gkehub.v1alpha.FeatureState.decode(reader, reader.uint32()); + break; + } default: reader.skipType(tag & 7); break; @@ -40790,6 +43595,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for CommonFeatureState + * @function getTypeUrl + * @memberof google.cloud.gkehub.v1alpha.CommonFeatureState + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + CommonFeatureState.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.v1alpha.CommonFeatureState"; + }; + return CommonFeatureState; })(); @@ -40899,9 +43719,10 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 106: - message.configmanagement = $root.google.cloud.gkehub.configmanagement.v1alpha.MembershipSpec.decode(reader, reader.uint32()); - break; + case 106: { + message.configmanagement = $root.google.cloud.gkehub.configmanagement.v1alpha.MembershipSpec.decode(reader, reader.uint32()); + break; + } default: reader.skipType(tag & 7); break; @@ -41001,6 +43822,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for MembershipFeatureSpec + * @function getTypeUrl + * @memberof google.cloud.gkehub.v1alpha.MembershipFeatureSpec + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + MembershipFeatureSpec.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.v1alpha.MembershipFeatureSpec"; + }; + return MembershipFeatureSpec; })(); @@ -41143,18 +43979,22 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 100: - message.servicemesh = $root.google.cloud.gkehub.servicemesh.v1alpha.MembershipState.decode(reader, reader.uint32()); - break; - case 104: - message.metering = $root.google.cloud.gkehub.metering.v1alpha.MembershipState.decode(reader, reader.uint32()); - break; - case 106: - message.configmanagement = $root.google.cloud.gkehub.configmanagement.v1alpha.MembershipState.decode(reader, reader.uint32()); - break; - case 1: - message.state = $root.google.cloud.gkehub.v1alpha.FeatureState.decode(reader, reader.uint32()); - break; + case 100: { + message.servicemesh = $root.google.cloud.gkehub.servicemesh.v1alpha.MembershipState.decode(reader, reader.uint32()); + break; + } + case 104: { + message.metering = $root.google.cloud.gkehub.metering.v1alpha.MembershipState.decode(reader, reader.uint32()); + break; + } + case 106: { + message.configmanagement = $root.google.cloud.gkehub.configmanagement.v1alpha.MembershipState.decode(reader, reader.uint32()); + break; + } + case 1: { + message.state = $root.google.cloud.gkehub.v1alpha.FeatureState.decode(reader, reader.uint32()); + break; + } default: reader.skipType(tag & 7); break; @@ -41308,6 +44148,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for MembershipFeatureState + * @function getTypeUrl + * @memberof google.cloud.gkehub.v1alpha.MembershipFeatureState + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + MembershipFeatureState.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.v1alpha.MembershipFeatureState"; + }; + return MembershipFeatureState; })(); @@ -41344,7 +44199,7 @@ }; /** - * Callback as used by {@link google.cloud.gkehub.v1alpha.GkeHub#listFeatures}. + * Callback as used by {@link google.cloud.gkehub.v1alpha.GkeHub|listFeatures}. * @memberof google.cloud.gkehub.v1alpha.GkeHub * @typedef ListFeaturesCallback * @type {function} @@ -41377,7 +44232,7 @@ */ /** - * Callback as used by {@link google.cloud.gkehub.v1alpha.GkeHub#getFeature}. + * Callback as used by {@link google.cloud.gkehub.v1alpha.GkeHub|getFeature}. * @memberof google.cloud.gkehub.v1alpha.GkeHub * @typedef GetFeatureCallback * @type {function} @@ -41410,7 +44265,7 @@ */ /** - * Callback as used by {@link google.cloud.gkehub.v1alpha.GkeHub#createFeature}. + * Callback as used by {@link google.cloud.gkehub.v1alpha.GkeHub|createFeature}. * @memberof google.cloud.gkehub.v1alpha.GkeHub * @typedef CreateFeatureCallback * @type {function} @@ -41443,7 +44298,7 @@ */ /** - * Callback as used by {@link google.cloud.gkehub.v1alpha.GkeHub#deleteFeature}. + * Callback as used by {@link google.cloud.gkehub.v1alpha.GkeHub|deleteFeature}. * @memberof google.cloud.gkehub.v1alpha.GkeHub * @typedef DeleteFeatureCallback * @type {function} @@ -41476,7 +44331,7 @@ */ /** - * Callback as used by {@link google.cloud.gkehub.v1alpha.GkeHub#updateFeature}. + * Callback as used by {@link google.cloud.gkehub.v1alpha.GkeHub|updateFeature}. * @memberof google.cloud.gkehub.v1alpha.GkeHub * @typedef UpdateFeatureCallback * @type {function} @@ -41647,21 +44502,26 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.parent = reader.string(); - break; - case 2: - message.pageSize = reader.int32(); - break; - case 3: - message.pageToken = reader.string(); - break; - case 4: - message.filter = reader.string(); - break; - case 5: - message.orderBy = reader.string(); - break; + case 1: { + message.parent = reader.string(); + break; + } + case 2: { + message.pageSize = reader.int32(); + break; + } + case 3: { + message.pageToken = reader.string(); + break; + } + case 4: { + message.filter = reader.string(); + break; + } + case 5: { + message.orderBy = reader.string(); + break; + } default: reader.skipType(tag & 7); break; @@ -41784,6 +44644,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for ListFeaturesRequest + * @function getTypeUrl + * @memberof google.cloud.gkehub.v1alpha.ListFeaturesRequest + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + ListFeaturesRequest.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.v1alpha.ListFeaturesRequest"; + }; + return ListFeaturesRequest; })(); @@ -41892,14 +44767,16 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - if (!(message.resources && message.resources.length)) - message.resources = []; - message.resources.push($root.google.cloud.gkehub.v1alpha.Feature.decode(reader, reader.uint32())); - break; - case 2: - message.nextPageToken = reader.string(); - break; + case 1: { + if (!(message.resources && message.resources.length)) + message.resources = []; + message.resources.push($root.google.cloud.gkehub.v1alpha.Feature.decode(reader, reader.uint32())); + break; + } + case 2: { + message.nextPageToken = reader.string(); + break; + } default: reader.skipType(tag & 7); break; @@ -42015,6 +44892,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for ListFeaturesResponse + * @function getTypeUrl + * @memberof google.cloud.gkehub.v1alpha.ListFeaturesResponse + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + ListFeaturesResponse.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.v1alpha.ListFeaturesResponse"; + }; + return ListFeaturesResponse; })(); @@ -42110,9 +45002,10 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.name = reader.string(); - break; + case 1: { + message.name = reader.string(); + break; + } default: reader.skipType(tag & 7); break; @@ -42202,6 +45095,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for GetFeatureRequest + * @function getTypeUrl + * @memberof google.cloud.gkehub.v1alpha.GetFeatureRequest + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + GetFeatureRequest.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.v1alpha.GetFeatureRequest"; + }; + return GetFeatureRequest; })(); @@ -42330,18 +45238,22 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.parent = reader.string(); - break; - case 2: - message.featureId = reader.string(); - break; - case 3: - message.resource = $root.google.cloud.gkehub.v1alpha.Feature.decode(reader, reader.uint32()); - break; - case 4: - message.requestId = reader.string(); - break; + case 1: { + message.parent = reader.string(); + break; + } + case 2: { + message.featureId = reader.string(); + break; + } + case 3: { + message.resource = $root.google.cloud.gkehub.v1alpha.Feature.decode(reader, reader.uint32()); + break; + } + case 4: { + message.requestId = reader.string(); + break; + } default: reader.skipType(tag & 7); break; @@ -42461,6 +45373,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for CreateFeatureRequest + * @function getTypeUrl + * @memberof google.cloud.gkehub.v1alpha.CreateFeatureRequest + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + CreateFeatureRequest.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.v1alpha.CreateFeatureRequest"; + }; + return CreateFeatureRequest; })(); @@ -42578,15 +45505,18 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.name = reader.string(); - break; - case 2: - message.force = reader.bool(); - break; - case 3: - message.requestId = reader.string(); - break; + case 1: { + message.name = reader.string(); + break; + } + case 2: { + message.force = reader.bool(); + break; + } + case 3: { + message.requestId = reader.string(); + break; + } default: reader.skipType(tag & 7); break; @@ -42693,6 +45623,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for DeleteFeatureRequest + * @function getTypeUrl + * @memberof google.cloud.gkehub.v1alpha.DeleteFeatureRequest + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + DeleteFeatureRequest.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.v1alpha.DeleteFeatureRequest"; + }; + return DeleteFeatureRequest; })(); @@ -42821,18 +45766,22 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.name = reader.string(); - break; - case 2: - message.updateMask = $root.google.protobuf.FieldMask.decode(reader, reader.uint32()); - break; - case 3: - message.resource = $root.google.cloud.gkehub.v1alpha.Feature.decode(reader, reader.uint32()); - break; - case 4: - message.requestId = reader.string(); - break; + case 1: { + message.name = reader.string(); + break; + } + case 2: { + message.updateMask = $root.google.protobuf.FieldMask.decode(reader, reader.uint32()); + break; + } + case 3: { + message.resource = $root.google.cloud.gkehub.v1alpha.Feature.decode(reader, reader.uint32()); + break; + } + case 4: { + message.requestId = reader.string(); + break; + } default: reader.skipType(tag & 7); break; @@ -42957,6 +45906,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for UpdateFeatureRequest + * @function getTypeUrl + * @memberof google.cloud.gkehub.v1alpha.UpdateFeatureRequest + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + UpdateFeatureRequest.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.v1alpha.UpdateFeatureRequest"; + }; + return UpdateFeatureRequest; })(); @@ -43118,27 +46082,34 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.createTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); - break; - case 2: - message.endTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); - break; - case 3: - message.target = reader.string(); - break; - case 4: - message.verb = reader.string(); - break; - case 5: - message.statusDetail = reader.string(); - break; - case 6: - message.cancelRequested = reader.bool(); - break; - case 7: - message.apiVersion = reader.string(); - break; + case 1: { + message.createTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + break; + } + case 2: { + message.endTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + break; + } + case 3: { + message.target = reader.string(); + break; + } + case 4: { + message.verb = reader.string(); + break; + } + case 5: { + message.statusDetail = reader.string(); + break; + } + case 6: { + message.cancelRequested = reader.bool(); + break; + } + case 7: { + message.apiVersion = reader.string(); + break; + } default: reader.skipType(tag & 7); break; @@ -43287,6 +46258,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for OperationMetadata + * @function getTypeUrl + * @memberof google.cloud.gkehub.v1alpha.OperationMetadata + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + OperationMetadata.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.v1alpha.OperationMetadata"; + }; + return OperationMetadata; })(); @@ -43414,12 +46400,14 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.lastMeasurementTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); - break; - case 3: - message.preciseLastMeasuredClusterVcpuCapacity = reader.float(); - break; + case 1: { + message.lastMeasurementTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + break; + } + case 3: { + message.preciseLastMeasuredClusterVcpuCapacity = reader.float(); + break; + } default: reader.skipType(tag & 7); break; @@ -43523,6 +46511,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for MembershipState + * @function getTypeUrl + * @memberof google.cloud.gkehub.metering.v1alpha.MembershipState + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + MembershipState.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.metering.v1alpha.MembershipState"; + }; + return MembershipState; })(); @@ -43641,12 +46644,14 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.lastMeasurementTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); - break; - case 3: - message.preciseLastMeasuredClusterVcpuCapacity = reader.float(); - break; + case 1: { + message.lastMeasurementTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + break; + } + case 3: { + message.preciseLastMeasuredClusterVcpuCapacity = reader.float(); + break; + } default: reader.skipType(tag & 7); break; @@ -43750,6 +46755,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for MembershipState + * @function getTypeUrl + * @memberof google.cloud.gkehub.metering.v1beta.MembershipState + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + MembershipState.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.metering.v1beta.MembershipState"; + }; + return MembershipState; })(); @@ -43871,11 +46891,12 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - if (!(message.analysisMessages && message.analysisMessages.length)) - message.analysisMessages = []; - message.analysisMessages.push($root.google.cloud.gkehub.servicemesh.v1alpha.AnalysisMessage.decode(reader, reader.uint32())); - break; + case 1: { + if (!(message.analysisMessages && message.analysisMessages.length)) + message.analysisMessages = []; + message.analysisMessages.push($root.google.cloud.gkehub.servicemesh.v1alpha.AnalysisMessage.decode(reader, reader.uint32())); + break; + } default: reader.skipType(tag & 7); break; @@ -43982,6 +47003,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for FeatureState + * @function getTypeUrl + * @memberof google.cloud.gkehub.servicemesh.v1alpha.FeatureState + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + FeatureState.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.servicemesh.v1alpha.FeatureState"; + }; + return FeatureState; })(); @@ -44079,11 +47115,12 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - if (!(message.analysisMessages && message.analysisMessages.length)) - message.analysisMessages = []; - message.analysisMessages.push($root.google.cloud.gkehub.servicemesh.v1alpha.AnalysisMessage.decode(reader, reader.uint32())); - break; + case 1: { + if (!(message.analysisMessages && message.analysisMessages.length)) + message.analysisMessages = []; + message.analysisMessages.push($root.google.cloud.gkehub.servicemesh.v1alpha.AnalysisMessage.decode(reader, reader.uint32())); + break; + } default: reader.skipType(tag & 7); break; @@ -44190,6 +47227,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for MembershipState + * @function getTypeUrl + * @memberof google.cloud.gkehub.servicemesh.v1alpha.MembershipState + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + MembershipState.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.servicemesh.v1alpha.MembershipState"; + }; + return MembershipState; })(); @@ -44307,15 +47359,18 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.type = $root.google.cloud.gkehub.servicemesh.v1alpha.AnalysisMessageBase.Type.decode(reader, reader.uint32()); - break; - case 2: - message.level = reader.int32(); - break; - case 3: - message.documentationUrl = reader.string(); - break; + case 1: { + message.type = $root.google.cloud.gkehub.servicemesh.v1alpha.AnalysisMessageBase.Type.decode(reader, reader.uint32()); + break; + } + case 2: { + message.level = reader.int32(); + break; + } + case 3: { + message.documentationUrl = reader.string(); + break; + } default: reader.skipType(tag & 7); break; @@ -44450,6 +47505,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for AnalysisMessageBase + * @function getTypeUrl + * @memberof google.cloud.gkehub.servicemesh.v1alpha.AnalysisMessageBase + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + AnalysisMessageBase.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.servicemesh.v1alpha.AnalysisMessageBase"; + }; + AnalysisMessageBase.Type = (function() { /** @@ -44553,12 +47623,14 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.displayName = reader.string(); - break; - case 2: - message.code = reader.string(); - break; + case 1: { + message.displayName = reader.string(); + break; + } + case 2: { + message.code = reader.string(); + break; + } default: reader.skipType(tag & 7); break; @@ -44657,6 +47729,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for Type + * @function getTypeUrl + * @memberof google.cloud.gkehub.servicemesh.v1alpha.AnalysisMessageBase.Type + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + Type.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.servicemesh.v1alpha.AnalysisMessageBase.Type"; + }; + return Type; })(); @@ -44808,20 +47895,24 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.messageBase = $root.google.cloud.gkehub.servicemesh.v1alpha.AnalysisMessageBase.decode(reader, reader.uint32()); - break; - case 2: - message.description = reader.string(); - break; - case 3: - if (!(message.resourcePaths && message.resourcePaths.length)) - message.resourcePaths = []; - message.resourcePaths.push(reader.string()); - break; - case 4: - message.args = $root.google.protobuf.Struct.decode(reader, reader.uint32()); - break; + case 1: { + message.messageBase = $root.google.cloud.gkehub.servicemesh.v1alpha.AnalysisMessageBase.decode(reader, reader.uint32()); + break; + } + case 2: { + message.description = reader.string(); + break; + } + case 3: { + if (!(message.resourcePaths && message.resourcePaths.length)) + message.resourcePaths = []; + message.resourcePaths.push(reader.string()); + break; + } + case 4: { + message.args = $root.google.protobuf.Struct.decode(reader, reader.uint32()); + break; + } default: reader.skipType(tag & 7); break; @@ -44959,6 +48050,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for AnalysisMessage + * @function getTypeUrl + * @memberof google.cloud.gkehub.servicemesh.v1alpha.AnalysisMessage + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + AnalysisMessage.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.servicemesh.v1alpha.AnalysisMessage"; + }; + return AnalysisMessage; })(); @@ -45010,7 +48116,7 @@ }; /** - * Callback as used by {@link google.cloud.gkehub.v1alpha2.GkeHub#listMemberships}. + * Callback as used by {@link google.cloud.gkehub.v1alpha2.GkeHub|listMemberships}. * @memberof google.cloud.gkehub.v1alpha2.GkeHub * @typedef ListMembershipsCallback * @type {function} @@ -45043,7 +48149,7 @@ */ /** - * Callback as used by {@link google.cloud.gkehub.v1alpha2.GkeHub#getMembership}. + * Callback as used by {@link google.cloud.gkehub.v1alpha2.GkeHub|getMembership}. * @memberof google.cloud.gkehub.v1alpha2.GkeHub * @typedef GetMembershipCallback * @type {function} @@ -45076,7 +48182,7 @@ */ /** - * Callback as used by {@link google.cloud.gkehub.v1alpha2.GkeHub#createMembership}. + * Callback as used by {@link google.cloud.gkehub.v1alpha2.GkeHub|createMembership}. * @memberof google.cloud.gkehub.v1alpha2.GkeHub * @typedef CreateMembershipCallback * @type {function} @@ -45109,7 +48215,7 @@ */ /** - * Callback as used by {@link google.cloud.gkehub.v1alpha2.GkeHub#deleteMembership}. + * Callback as used by {@link google.cloud.gkehub.v1alpha2.GkeHub|deleteMembership}. * @memberof google.cloud.gkehub.v1alpha2.GkeHub * @typedef DeleteMembershipCallback * @type {function} @@ -45142,7 +48248,7 @@ */ /** - * Callback as used by {@link google.cloud.gkehub.v1alpha2.GkeHub#updateMembership}. + * Callback as used by {@link google.cloud.gkehub.v1alpha2.GkeHub|updateMembership}. * @memberof google.cloud.gkehub.v1alpha2.GkeHub * @typedef UpdateMembershipCallback * @type {function} @@ -45175,7 +48281,7 @@ */ /** - * Callback as used by {@link google.cloud.gkehub.v1alpha2.GkeHub#generateConnectManifest}. + * Callback as used by {@link google.cloud.gkehub.v1alpha2.GkeHub|generateConnectManifest}. * @memberof google.cloud.gkehub.v1alpha2.GkeHub * @typedef GenerateConnectManifestCallback * @type {function} @@ -45208,7 +48314,7 @@ */ /** - * Callback as used by {@link google.cloud.gkehub.v1alpha2.GkeHub#initializeHub}. + * Callback as used by {@link google.cloud.gkehub.v1alpha2.GkeHub|initializeHub}. * @memberof google.cloud.gkehub.v1alpha2.GkeHub * @typedef InitializeHubCallback * @type {function} @@ -45483,64 +48589,77 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.name = reader.string(); - break; - case 2: - 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; + case 1: { + message.name = reader.string(); + break; + } + case 2: { + 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 3: { + message.description = reader.string(); + break; + } + case 4: { + message.endpoint = $root.google.cloud.gkehub.v1alpha2.MembershipEndpoint.decode(reader, reader.uint32()); + break; + } + case 5: { + message.state = $root.google.cloud.gkehub.v1alpha2.MembershipState.decode(reader, reader.uint32()); + break; + } + case 6: { + message.createTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + break; + } + case 7: { + message.updateTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + break; + } + case 8: { + message.deleteTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + break; + } + case 9: { + message.externalId = reader.string(); + break; + } + case 10: { + message.authority = $root.google.cloud.gkehub.v1alpha2.Authority.decode(reader, reader.uint32()); + break; + } + case 11: { + message.lastConnectionTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + break; + } + case 12: { + message.uniqueId = reader.string(); + break; + } + case 13: { + message.infrastructureType = reader.int32(); + break; } - message.labels[key] = value; - break; - case 3: - message.description = reader.string(); - break; - case 4: - message.endpoint = $root.google.cloud.gkehub.v1alpha2.MembershipEndpoint.decode(reader, reader.uint32()); - break; - case 5: - message.state = $root.google.cloud.gkehub.v1alpha2.MembershipState.decode(reader, reader.uint32()); - break; - case 6: - message.createTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); - break; - case 7: - message.updateTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); - break; - case 8: - message.deleteTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); - break; - case 9: - message.externalId = reader.string(); - break; - case 10: - message.authority = $root.google.cloud.gkehub.v1alpha2.Authority.decode(reader, reader.uint32()); - break; - case 11: - message.lastConnectionTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); - break; - case 12: - message.uniqueId = reader.string(); - break; - case 13: - message.infrastructureType = reader.int32(); - break; default: reader.skipType(tag & 7); break; @@ -45801,6 +48920,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for Membership + * @function getTypeUrl + * @memberof google.cloud.gkehub.v1alpha2.Membership + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + Membership.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.v1alpha2.Membership"; + }; + /** * InfrastructureType enum. * @name google.cloud.gkehub.v1alpha2.Membership.InfrastructureType @@ -45970,21 +49104,26 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.gkeCluster = $root.google.cloud.gkehub.v1alpha2.GkeCluster.decode(reader, reader.uint32()); - break; - case 4: - message.onPremCluster = $root.google.cloud.gkehub.v1alpha2.OnPremCluster.decode(reader, reader.uint32()); - break; - case 5: - message.multiCloudCluster = $root.google.cloud.gkehub.v1alpha2.MultiCloudCluster.decode(reader, reader.uint32()); - break; - case 2: - message.kubernetesMetadata = $root.google.cloud.gkehub.v1alpha2.KubernetesMetadata.decode(reader, reader.uint32()); - break; - case 3: - message.kubernetesResource = $root.google.cloud.gkehub.v1alpha2.KubernetesResource.decode(reader, reader.uint32()); - break; + case 1: { + message.gkeCluster = $root.google.cloud.gkehub.v1alpha2.GkeCluster.decode(reader, reader.uint32()); + break; + } + case 4: { + message.onPremCluster = $root.google.cloud.gkehub.v1alpha2.OnPremCluster.decode(reader, reader.uint32()); + break; + } + case 5: { + message.multiCloudCluster = $root.google.cloud.gkehub.v1alpha2.MultiCloudCluster.decode(reader, reader.uint32()); + break; + } + case 2: { + message.kubernetesMetadata = $root.google.cloud.gkehub.v1alpha2.KubernetesMetadata.decode(reader, reader.uint32()); + break; + } + case 3: { + message.kubernetesResource = $root.google.cloud.gkehub.v1alpha2.KubernetesResource.decode(reader, reader.uint32()); + break; + } default: reader.skipType(tag & 7); break; @@ -46152,6 +49291,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for MembershipEndpoint + * @function getTypeUrl + * @memberof google.cloud.gkehub.v1alpha2.MembershipEndpoint + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + MembershipEndpoint.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.v1alpha2.MembershipEndpoint"; + }; + return MembershipEndpoint; })(); @@ -46284,22 +49438,26 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.membershipCrManifest = reader.string(); - break; - case 3: - if (!(message.membershipResources && message.membershipResources.length)) - message.membershipResources = []; - message.membershipResources.push($root.google.cloud.gkehub.v1alpha2.ResourceManifest.decode(reader, reader.uint32())); - break; - case 4: - if (!(message.connectResources && message.connectResources.length)) - message.connectResources = []; - message.connectResources.push($root.google.cloud.gkehub.v1alpha2.ResourceManifest.decode(reader, reader.uint32())); - break; - case 5: - message.resourceOptions = $root.google.cloud.gkehub.v1alpha2.ResourceOptions.decode(reader, reader.uint32()); - break; + case 1: { + message.membershipCrManifest = reader.string(); + break; + } + case 3: { + if (!(message.membershipResources && message.membershipResources.length)) + message.membershipResources = []; + message.membershipResources.push($root.google.cloud.gkehub.v1alpha2.ResourceManifest.decode(reader, reader.uint32())); + break; + } + case 4: { + if (!(message.connectResources && message.connectResources.length)) + message.connectResources = []; + message.connectResources.push($root.google.cloud.gkehub.v1alpha2.ResourceManifest.decode(reader, reader.uint32())); + break; + } + case 5: { + message.resourceOptions = $root.google.cloud.gkehub.v1alpha2.ResourceOptions.decode(reader, reader.uint32()); + break; + } default: reader.skipType(tag & 7); break; @@ -46455,6 +49613,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for KubernetesResource + * @function getTypeUrl + * @memberof google.cloud.gkehub.v1alpha2.KubernetesResource + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + KubernetesResource.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.v1alpha2.KubernetesResource"; + }; + return KubernetesResource; })(); @@ -46572,15 +49745,18 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.connectVersion = reader.string(); - break; - case 2: - message.v1beta1Crd = reader.bool(); - break; - case 3: - message.k8sVersion = reader.string(); - break; + case 1: { + message.connectVersion = reader.string(); + break; + } + case 2: { + message.v1beta1Crd = reader.bool(); + break; + } + case 3: { + message.k8sVersion = reader.string(); + break; + } default: reader.skipType(tag & 7); break; @@ -46687,6 +49863,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for ResourceOptions + * @function getTypeUrl + * @memberof google.cloud.gkehub.v1alpha2.ResourceOptions + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + ResourceOptions.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.v1alpha2.ResourceOptions"; + }; + return ResourceOptions; })(); @@ -46793,12 +49984,14 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.resourceLink = reader.string(); - break; - case 2: - message.clusterMissing = reader.bool(); - break; + case 1: { + message.resourceLink = reader.string(); + break; + } + case 2: { + message.clusterMissing = reader.bool(); + break; + } default: reader.skipType(tag & 7); break; @@ -46897,6 +50090,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for GkeCluster + * @function getTypeUrl + * @memberof google.cloud.gkehub.v1alpha2.GkeCluster + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + GkeCluster.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.v1alpha2.GkeCluster"; + }; + return GkeCluster; })(); @@ -47014,15 +50222,18 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.resourceLink = reader.string(); - break; - case 2: - message.clusterMissing = reader.bool(); - break; - case 3: - message.adminCluster = reader.bool(); - break; + case 1: { + message.resourceLink = reader.string(); + break; + } + case 2: { + message.clusterMissing = reader.bool(); + break; + } + case 3: { + message.adminCluster = reader.bool(); + break; + } default: reader.skipType(tag & 7); break; @@ -47129,6 +50340,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for OnPremCluster + * @function getTypeUrl + * @memberof google.cloud.gkehub.v1alpha2.OnPremCluster + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + OnPremCluster.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.v1alpha2.OnPremCluster"; + }; + return OnPremCluster; })(); @@ -47235,12 +50461,14 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.resourceLink = reader.string(); - break; - case 2: - message.clusterMissing = reader.bool(); - break; + case 1: { + message.resourceLink = reader.string(); + break; + } + case 2: { + message.clusterMissing = reader.bool(); + break; + } default: reader.skipType(tag & 7); break; @@ -47339,6 +50567,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for MultiCloudCluster + * @function getTypeUrl + * @memberof google.cloud.gkehub.v1alpha2.MultiCloudCluster + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + MultiCloudCluster.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.v1alpha2.MultiCloudCluster"; + }; + return MultiCloudCluster; })(); @@ -47489,24 +50732,30 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.kubernetesApiServerVersion = reader.string(); - break; - case 2: - message.nodeProviderId = reader.string(); - break; - case 3: - message.nodeCount = reader.int32(); - break; - case 4: - message.vcpuCount = reader.int32(); - break; - case 5: - message.memoryMb = reader.int32(); - break; - case 100: - message.updateTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); - break; + case 1: { + message.kubernetesApiServerVersion = reader.string(); + break; + } + case 2: { + message.nodeProviderId = reader.string(); + break; + } + case 3: { + message.nodeCount = reader.int32(); + break; + } + case 4: { + message.vcpuCount = reader.int32(); + break; + } + case 5: { + message.memoryMb = reader.int32(); + break; + } + case 100: { + message.updateTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + break; + } default: reader.skipType(tag & 7); break; @@ -47642,6 +50891,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for KubernetesMetadata + * @function getTypeUrl + * @memberof google.cloud.gkehub.v1alpha2.KubernetesMetadata + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + KubernetesMetadata.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.v1alpha2.KubernetesMetadata"; + }; + return KubernetesMetadata; })(); @@ -47770,18 +51034,22 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.issuer = reader.string(); - break; - case 5: - message.oidcJwks = reader.bytes(); - break; - case 3: - message.identityProvider = reader.string(); - break; - case 4: - message.workloadIdentityPool = reader.string(); - break; + case 1: { + message.issuer = reader.string(); + break; + } + case 5: { + message.oidcJwks = reader.bytes(); + break; + } + case 3: { + message.identityProvider = reader.string(); + break; + } + case 4: { + message.workloadIdentityPool = reader.string(); + break; + } default: reader.skipType(tag & 7); break; @@ -47849,7 +51117,7 @@ if (object.oidcJwks != null) if (typeof object.oidcJwks === "string") $util.base64.decode(object.oidcJwks, message.oidcJwks = $util.newBuffer($util.base64.length(object.oidcJwks)), 0); - else if (object.oidcJwks.length) + else if (object.oidcJwks.length >= 0) message.oidcJwks = object.oidcJwks; if (object.identityProvider != null) message.identityProvider = String(object.identityProvider); @@ -47905,6 +51173,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for Authority + * @function getTypeUrl + * @memberof google.cloud.gkehub.v1alpha2.Authority + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + Authority.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.v1alpha2.Authority"; + }; + return Authority; })(); @@ -48000,9 +51283,10 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.code = reader.int32(); - break; + case 1: { + message.code = reader.int32(); + break; + } default: reader.skipType(tag & 7); break; @@ -48125,6 +51409,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for MembershipState + * @function getTypeUrl + * @memberof google.cloud.gkehub.v1alpha2.MembershipState + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + MembershipState.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.v1alpha2.MembershipState"; + }; + /** * Code enum. * @name google.cloud.gkehub.v1alpha2.MembershipState.Code @@ -48286,21 +51585,26 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.parent = reader.string(); - break; - case 2: - message.pageSize = reader.int32(); - break; - case 3: - message.pageToken = reader.string(); - break; - case 4: - message.filter = reader.string(); - break; - case 5: - message.orderBy = reader.string(); - break; + case 1: { + message.parent = reader.string(); + break; + } + case 2: { + message.pageSize = reader.int32(); + break; + } + case 3: { + message.pageToken = reader.string(); + break; + } + case 4: { + message.filter = reader.string(); + break; + } + case 5: { + message.orderBy = reader.string(); + break; + } default: reader.skipType(tag & 7); break; @@ -48423,6 +51727,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for ListMembershipsRequest + * @function getTypeUrl + * @memberof google.cloud.gkehub.v1alpha2.ListMembershipsRequest + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + ListMembershipsRequest.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.v1alpha2.ListMembershipsRequest"; + }; + return ListMembershipsRequest; })(); @@ -48544,19 +51863,22 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - if (!(message.resources && message.resources.length)) - message.resources = []; - message.resources.push($root.google.cloud.gkehub.v1alpha2.Membership.decode(reader, reader.uint32())); - break; - case 2: - message.nextPageToken = reader.string(); - break; - case 3: - if (!(message.unreachable && message.unreachable.length)) - message.unreachable = []; - message.unreachable.push(reader.string()); - break; + case 1: { + if (!(message.resources && message.resources.length)) + message.resources = []; + message.resources.push($root.google.cloud.gkehub.v1alpha2.Membership.decode(reader, reader.uint32())); + break; + } + case 2: { + message.nextPageToken = reader.string(); + break; + } + case 3: { + if (!(message.unreachable && message.unreachable.length)) + message.unreachable = []; + message.unreachable.push(reader.string()); + break; + } default: reader.skipType(tag & 7); break; @@ -48693,6 +52015,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for ListMembershipsResponse + * @function getTypeUrl + * @memberof google.cloud.gkehub.v1alpha2.ListMembershipsResponse + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + ListMembershipsResponse.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.v1alpha2.ListMembershipsResponse"; + }; + return ListMembershipsResponse; })(); @@ -48788,9 +52125,10 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.name = reader.string(); - break; + case 1: { + message.name = reader.string(); + break; + } default: reader.skipType(tag & 7); break; @@ -48880,6 +52218,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for GetMembershipRequest + * @function getTypeUrl + * @memberof google.cloud.gkehub.v1alpha2.GetMembershipRequest + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + GetMembershipRequest.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.v1alpha2.GetMembershipRequest"; + }; + return GetMembershipRequest; })(); @@ -48997,15 +52350,18 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.parent = reader.string(); - break; - case 2: - message.membershipId = reader.string(); - break; - case 3: - message.resource = $root.google.cloud.gkehub.v1alpha2.Membership.decode(reader, reader.uint32()); - break; + case 1: { + message.parent = reader.string(); + break; + } + case 2: { + message.membershipId = reader.string(); + break; + } + case 3: { + message.resource = $root.google.cloud.gkehub.v1alpha2.Membership.decode(reader, reader.uint32()); + break; + } default: reader.skipType(tag & 7); break; @@ -49117,6 +52473,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for CreateMembershipRequest + * @function getTypeUrl + * @memberof google.cloud.gkehub.v1alpha2.CreateMembershipRequest + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + CreateMembershipRequest.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.v1alpha2.CreateMembershipRequest"; + }; + return CreateMembershipRequest; })(); @@ -49212,9 +52583,10 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.name = reader.string(); - break; + case 1: { + message.name = reader.string(); + break; + } default: reader.skipType(tag & 7); break; @@ -49304,6 +52676,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for DeleteMembershipRequest + * @function getTypeUrl + * @memberof google.cloud.gkehub.v1alpha2.DeleteMembershipRequest + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + DeleteMembershipRequest.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.v1alpha2.DeleteMembershipRequest"; + }; + return DeleteMembershipRequest; })(); @@ -49421,15 +52808,18 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.name = reader.string(); - break; - case 2: - message.updateMask = $root.google.protobuf.FieldMask.decode(reader, reader.uint32()); - break; - case 3: - message.resource = $root.google.cloud.gkehub.v1alpha2.Membership.decode(reader, reader.uint32()); - break; + case 1: { + message.name = reader.string(); + break; + } + case 2: { + message.updateMask = $root.google.protobuf.FieldMask.decode(reader, reader.uint32()); + break; + } + case 3: { + message.resource = $root.google.cloud.gkehub.v1alpha2.Membership.decode(reader, reader.uint32()); + break; + } default: reader.skipType(tag & 7); break; @@ -49546,6 +52936,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for UpdateMembershipRequest + * @function getTypeUrl + * @memberof google.cloud.gkehub.v1alpha2.UpdateMembershipRequest + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + UpdateMembershipRequest.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.v1alpha2.UpdateMembershipRequest"; + }; + return UpdateMembershipRequest; })(); @@ -49707,27 +53112,34 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.name = reader.string(); - break; - case 2: - message.namespace = reader.string(); - break; - case 3: - message.proxy = reader.bytes(); - break; - case 4: - message.version = reader.string(); - break; - case 5: - message.isUpgrade = reader.bool(); - break; - case 6: - message.registry = reader.string(); - break; - case 7: - message.imagePullSecretContent = reader.bytes(); - break; + case 1: { + message.name = reader.string(); + break; + } + case 2: { + message.namespace = reader.string(); + break; + } + case 3: { + message.proxy = reader.bytes(); + break; + } + case 4: { + message.version = reader.string(); + break; + } + case 5: { + message.isUpgrade = reader.bool(); + break; + } + case 6: { + message.registry = reader.string(); + break; + } + case 7: { + message.imagePullSecretContent = reader.bytes(); + break; + } default: reader.skipType(tag & 7); break; @@ -49806,7 +53218,7 @@ if (object.proxy != null) if (typeof object.proxy === "string") $util.base64.decode(object.proxy, message.proxy = $util.newBuffer($util.base64.length(object.proxy)), 0); - else if (object.proxy.length) + else if (object.proxy.length >= 0) message.proxy = object.proxy; if (object.version != null) message.version = String(object.version); @@ -49817,7 +53229,7 @@ if (object.imagePullSecretContent != null) if (typeof object.imagePullSecretContent === "string") $util.base64.decode(object.imagePullSecretContent, message.imagePullSecretContent = $util.newBuffer($util.base64.length(object.imagePullSecretContent)), 0); - else if (object.imagePullSecretContent.length) + else if (object.imagePullSecretContent.length >= 0) message.imagePullSecretContent = object.imagePullSecretContent; return message; }; @@ -49884,6 +53296,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for GenerateConnectManifestRequest + * @function getTypeUrl + * @memberof google.cloud.gkehub.v1alpha2.GenerateConnectManifestRequest + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + GenerateConnectManifestRequest.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.v1alpha2.GenerateConnectManifestRequest"; + }; + return GenerateConnectManifestRequest; })(); @@ -49981,11 +53408,12 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - if (!(message.manifest && message.manifest.length)) - message.manifest = []; - message.manifest.push($root.google.cloud.gkehub.v1alpha2.ConnectAgentResource.decode(reader, reader.uint32())); - break; + case 1: { + if (!(message.manifest && message.manifest.length)) + message.manifest = []; + message.manifest.push($root.google.cloud.gkehub.v1alpha2.ConnectAgentResource.decode(reader, reader.uint32())); + break; + } default: reader.skipType(tag & 7); break; @@ -50092,6 +53520,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for GenerateConnectManifestResponse + * @function getTypeUrl + * @memberof google.cloud.gkehub.v1alpha2.GenerateConnectManifestResponse + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + GenerateConnectManifestResponse.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.v1alpha2.GenerateConnectManifestResponse"; + }; + return GenerateConnectManifestResponse; })(); @@ -50198,12 +53641,14 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.type = $root.google.cloud.gkehub.v1alpha2.TypeMeta.decode(reader, reader.uint32()); - break; - case 2: - message.manifest = reader.string(); - break; + case 1: { + message.type = $root.google.cloud.gkehub.v1alpha2.TypeMeta.decode(reader, reader.uint32()); + break; + } + case 2: { + message.manifest = reader.string(); + break; + } default: reader.skipType(tag & 7); break; @@ -50307,6 +53752,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for ConnectAgentResource + * @function getTypeUrl + * @memberof google.cloud.gkehub.v1alpha2.ConnectAgentResource + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + ConnectAgentResource.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.v1alpha2.ConnectAgentResource"; + }; + return ConnectAgentResource; })(); @@ -50413,12 +53873,14 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.manifest = reader.string(); - break; - case 2: - message.clusterScoped = reader.bool(); - break; + case 1: { + message.manifest = reader.string(); + break; + } + case 2: { + message.clusterScoped = reader.bool(); + break; + } default: reader.skipType(tag & 7); break; @@ -50517,6 +53979,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for ResourceManifest + * @function getTypeUrl + * @memberof google.cloud.gkehub.v1alpha2.ResourceManifest + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + ResourceManifest.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.v1alpha2.ResourceManifest"; + }; + return ResourceManifest; })(); @@ -50623,12 +54100,14 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.kind = reader.string(); - break; - case 2: - message.apiVersion = reader.string(); - break; + case 1: { + message.kind = reader.string(); + break; + } + case 2: { + message.apiVersion = reader.string(); + break; + } default: reader.skipType(tag & 7); break; @@ -50727,6 +54206,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for TypeMeta + * @function getTypeUrl + * @memberof google.cloud.gkehub.v1alpha2.TypeMeta + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + TypeMeta.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.v1alpha2.TypeMeta"; + }; + return TypeMeta; })(); @@ -50822,9 +54316,10 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.project = reader.string(); - break; + case 1: { + message.project = reader.string(); + break; + } default: reader.skipType(tag & 7); break; @@ -50914,6 +54409,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for InitializeHubRequest + * @function getTypeUrl + * @memberof google.cloud.gkehub.v1alpha2.InitializeHubRequest + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + InitializeHubRequest.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.v1alpha2.InitializeHubRequest"; + }; + return InitializeHubRequest; })(); @@ -51020,12 +54530,14 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.serviceIdentity = reader.string(); - break; - case 2: - message.workloadIdentityPool = reader.string(); - break; + case 1: { + message.serviceIdentity = reader.string(); + break; + } + case 2: { + message.workloadIdentityPool = reader.string(); + break; + } default: reader.skipType(tag & 7); break; @@ -51124,6 +54636,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for InitializeHubResponse + * @function getTypeUrl + * @memberof google.cloud.gkehub.v1alpha2.InitializeHubResponse + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + InitializeHubResponse.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.v1alpha2.InitializeHubResponse"; + }; + return InitializeHubResponse; })(); @@ -51285,27 +54812,34 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.createTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); - break; - case 2: - message.endTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); - break; - case 3: - message.target = reader.string(); - break; - case 4: - message.verb = reader.string(); - break; - case 5: - message.statusDetail = reader.string(); - break; - case 6: - message.cancelRequested = reader.bool(); - break; - case 7: - message.apiVersion = reader.string(); - break; + case 1: { + message.createTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + break; + } + case 2: { + message.endTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + break; + } + case 3: { + message.target = reader.string(); + break; + } + case 4: { + message.verb = reader.string(); + break; + } + case 5: { + message.statusDetail = reader.string(); + break; + } + case 6: { + message.cancelRequested = reader.bool(); + break; + } + case 7: { + message.apiVersion = reader.string(); + break; + } default: reader.skipType(tag & 7); break; @@ -51454,6 +54988,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for OperationMetadata + * @function getTypeUrl + * @memberof google.cloud.gkehub.v1alpha2.OperationMetadata + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + OperationMetadata.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.v1alpha2.OperationMetadata"; + }; + return OperationMetadata; })(); @@ -51670,93 +55219,103 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.name = reader.string(); - break; - case 2: - 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; + case 1: { + message.name = reader.string(); + break; + } + case 2: { + 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; } - message.labels[key] = value; - break; - case 3: - message.resourceState = $root.google.cloud.gkehub.v1beta.FeatureResourceState.decode(reader, reader.uint32()); - break; - case 4: - message.spec = $root.google.cloud.gkehub.v1beta.CommonFeatureSpec.decode(reader, reader.uint32()); - break; - case 5: - if (message.membershipSpecs === $util.emptyObject) - message.membershipSpecs = {}; - var end2 = reader.uint32() + reader.pos; - key = ""; - value = null; - while (reader.pos < end2) { - var tag2 = reader.uint32(); - switch (tag2 >>> 3) { - case 1: - key = reader.string(); - break; - case 2: - value = $root.google.cloud.gkehub.v1beta.MembershipFeatureSpec.decode(reader, reader.uint32()); - break; - default: - reader.skipType(tag2 & 7); - break; + case 3: { + message.resourceState = $root.google.cloud.gkehub.v1beta.FeatureResourceState.decode(reader, reader.uint32()); + break; + } + case 4: { + message.spec = $root.google.cloud.gkehub.v1beta.CommonFeatureSpec.decode(reader, reader.uint32()); + break; + } + case 5: { + if (message.membershipSpecs === $util.emptyObject) + message.membershipSpecs = {}; + var end2 = reader.uint32() + reader.pos; + key = ""; + value = null; + while (reader.pos < end2) { + var tag2 = reader.uint32(); + switch (tag2 >>> 3) { + case 1: + key = reader.string(); + break; + case 2: + value = $root.google.cloud.gkehub.v1beta.MembershipFeatureSpec.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag2 & 7); + break; + } } + message.membershipSpecs[key] = value; + break; } - message.membershipSpecs[key] = value; - break; - case 6: - message.state = $root.google.cloud.gkehub.v1beta.CommonFeatureState.decode(reader, reader.uint32()); - break; - case 7: - if (message.membershipStates === $util.emptyObject) - message.membershipStates = {}; - var end2 = reader.uint32() + reader.pos; - key = ""; - value = null; - while (reader.pos < end2) { - var tag2 = reader.uint32(); - switch (tag2 >>> 3) { - case 1: - key = reader.string(); - break; - case 2: - value = $root.google.cloud.gkehub.v1beta.MembershipFeatureState.decode(reader, reader.uint32()); - break; - default: - reader.skipType(tag2 & 7); - break; + case 6: { + message.state = $root.google.cloud.gkehub.v1beta.CommonFeatureState.decode(reader, reader.uint32()); + break; + } + case 7: { + if (message.membershipStates === $util.emptyObject) + message.membershipStates = {}; + var end2 = reader.uint32() + reader.pos; + key = ""; + value = null; + while (reader.pos < end2) { + var tag2 = reader.uint32(); + switch (tag2 >>> 3) { + case 1: + key = reader.string(); + break; + case 2: + value = $root.google.cloud.gkehub.v1beta.MembershipFeatureState.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag2 & 7); + break; + } } + message.membershipStates[key] = value; + break; + } + case 8: { + message.createTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + break; + } + case 9: { + message.updateTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + break; + } + case 10: { + message.deleteTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + break; } - message.membershipStates[key] = value; - break; - case 8: - message.createTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); - break; - case 9: - message.updateTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); - break; - case 10: - message.deleteTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); - break; default: reader.skipType(tag & 7); break; @@ -52001,6 +55560,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for Feature + * @function getTypeUrl + * @memberof google.cloud.gkehub.v1beta.Feature + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + Feature.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.v1beta.Feature"; + }; + return Feature; })(); @@ -52096,9 +55670,10 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.state = reader.int32(); - break; + case 1: { + message.state = reader.int32(); + break; + } default: reader.skipType(tag & 7); break; @@ -52221,6 +55796,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for FeatureResourceState + * @function getTypeUrl + * @memberof google.cloud.gkehub.v1beta.FeatureResourceState + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + FeatureResourceState.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.v1beta.FeatureResourceState"; + }; + /** * State enum. * @name google.cloud.gkehub.v1beta.FeatureResourceState.State @@ -52360,15 +55950,18 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.code = reader.int32(); - break; - case 2: - message.description = reader.string(); - break; - case 3: - message.updateTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); - break; + case 1: { + message.code = reader.int32(); + break; + } + case 2: { + message.description = reader.string(); + break; + } + case 3: { + message.updateTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + break; + } default: reader.skipType(tag & 7); break; @@ -52503,6 +56096,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for FeatureState + * @function getTypeUrl + * @memberof google.cloud.gkehub.v1beta.FeatureState + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + FeatureState.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.v1beta.FeatureState"; + }; + /** * Code enum. * @name google.cloud.gkehub.v1beta.FeatureState.Code @@ -52630,9 +56238,10 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 102: - message.multiclusteringress = $root.google.cloud.gkehub.multiclusteringress.v1beta.FeatureSpec.decode(reader, reader.uint32()); - break; + case 102: { + message.multiclusteringress = $root.google.cloud.gkehub.multiclusteringress.v1beta.FeatureSpec.decode(reader, reader.uint32()); + break; + } default: reader.skipType(tag & 7); break; @@ -52732,6 +56341,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for CommonFeatureSpec + * @function getTypeUrl + * @memberof google.cloud.gkehub.v1beta.CommonFeatureSpec + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + CommonFeatureSpec.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.v1beta.CommonFeatureSpec"; + }; + return CommonFeatureSpec; })(); @@ -52827,9 +56451,10 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.state = $root.google.cloud.gkehub.v1beta.FeatureState.decode(reader, reader.uint32()); - break; + case 1: { + message.state = $root.google.cloud.gkehub.v1beta.FeatureState.decode(reader, reader.uint32()); + break; + } default: reader.skipType(tag & 7); break; @@ -52924,6 +56549,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for CommonFeatureState + * @function getTypeUrl + * @memberof google.cloud.gkehub.v1beta.CommonFeatureState + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + CommonFeatureState.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.v1beta.CommonFeatureState"; + }; + return CommonFeatureState; })(); @@ -53033,9 +56673,10 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 106: - message.configmanagement = $root.google.cloud.gkehub.configmanagement.v1beta.MembershipSpec.decode(reader, reader.uint32()); - break; + case 106: { + message.configmanagement = $root.google.cloud.gkehub.configmanagement.v1beta.MembershipSpec.decode(reader, reader.uint32()); + break; + } default: reader.skipType(tag & 7); break; @@ -53135,6 +56776,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for MembershipFeatureSpec + * @function getTypeUrl + * @memberof google.cloud.gkehub.v1beta.MembershipFeatureSpec + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + MembershipFeatureSpec.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.v1beta.MembershipFeatureSpec"; + }; + return MembershipFeatureSpec; })(); @@ -53266,15 +56922,18 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 104: - message.metering = $root.google.cloud.gkehub.metering.v1beta.MembershipState.decode(reader, reader.uint32()); - break; - case 106: - message.configmanagement = $root.google.cloud.gkehub.configmanagement.v1beta.MembershipState.decode(reader, reader.uint32()); - break; - case 1: - message.state = $root.google.cloud.gkehub.v1beta.FeatureState.decode(reader, reader.uint32()); - break; + case 104: { + message.metering = $root.google.cloud.gkehub.metering.v1beta.MembershipState.decode(reader, reader.uint32()); + break; + } + case 106: { + message.configmanagement = $root.google.cloud.gkehub.configmanagement.v1beta.MembershipState.decode(reader, reader.uint32()); + break; + } + case 1: { + message.state = $root.google.cloud.gkehub.v1beta.FeatureState.decode(reader, reader.uint32()); + break; + } default: reader.skipType(tag & 7); break; @@ -53408,6 +57067,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for MembershipFeatureState + * @function getTypeUrl + * @memberof google.cloud.gkehub.v1beta.MembershipFeatureState + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + MembershipFeatureState.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.v1beta.MembershipFeatureState"; + }; + return MembershipFeatureState; })(); @@ -53444,7 +57118,7 @@ }; /** - * Callback as used by {@link google.cloud.gkehub.v1beta.GkeHub#listFeatures}. + * Callback as used by {@link google.cloud.gkehub.v1beta.GkeHub|listFeatures}. * @memberof google.cloud.gkehub.v1beta.GkeHub * @typedef ListFeaturesCallback * @type {function} @@ -53477,7 +57151,7 @@ */ /** - * Callback as used by {@link google.cloud.gkehub.v1beta.GkeHub#getFeature}. + * Callback as used by {@link google.cloud.gkehub.v1beta.GkeHub|getFeature}. * @memberof google.cloud.gkehub.v1beta.GkeHub * @typedef GetFeatureCallback * @type {function} @@ -53510,7 +57184,7 @@ */ /** - * Callback as used by {@link google.cloud.gkehub.v1beta.GkeHub#createFeature}. + * Callback as used by {@link google.cloud.gkehub.v1beta.GkeHub|createFeature}. * @memberof google.cloud.gkehub.v1beta.GkeHub * @typedef CreateFeatureCallback * @type {function} @@ -53543,7 +57217,7 @@ */ /** - * Callback as used by {@link google.cloud.gkehub.v1beta.GkeHub#deleteFeature}. + * Callback as used by {@link google.cloud.gkehub.v1beta.GkeHub|deleteFeature}. * @memberof google.cloud.gkehub.v1beta.GkeHub * @typedef DeleteFeatureCallback * @type {function} @@ -53576,7 +57250,7 @@ */ /** - * Callback as used by {@link google.cloud.gkehub.v1beta.GkeHub#updateFeature}. + * Callback as used by {@link google.cloud.gkehub.v1beta.GkeHub|updateFeature}. * @memberof google.cloud.gkehub.v1beta.GkeHub * @typedef UpdateFeatureCallback * @type {function} @@ -53747,21 +57421,26 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.parent = reader.string(); - break; - case 2: - message.pageSize = reader.int32(); - break; - case 3: - message.pageToken = reader.string(); - break; - case 4: - message.filter = reader.string(); - break; - case 5: - message.orderBy = reader.string(); - break; + case 1: { + message.parent = reader.string(); + break; + } + case 2: { + message.pageSize = reader.int32(); + break; + } + case 3: { + message.pageToken = reader.string(); + break; + } + case 4: { + message.filter = reader.string(); + break; + } + case 5: { + message.orderBy = reader.string(); + break; + } default: reader.skipType(tag & 7); break; @@ -53884,6 +57563,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for ListFeaturesRequest + * @function getTypeUrl + * @memberof google.cloud.gkehub.v1beta.ListFeaturesRequest + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + ListFeaturesRequest.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.v1beta.ListFeaturesRequest"; + }; + return ListFeaturesRequest; })(); @@ -53992,14 +57686,16 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - if (!(message.resources && message.resources.length)) - message.resources = []; - message.resources.push($root.google.cloud.gkehub.v1beta.Feature.decode(reader, reader.uint32())); - break; - case 2: - message.nextPageToken = reader.string(); - break; + case 1: { + if (!(message.resources && message.resources.length)) + message.resources = []; + message.resources.push($root.google.cloud.gkehub.v1beta.Feature.decode(reader, reader.uint32())); + break; + } + case 2: { + message.nextPageToken = reader.string(); + break; + } default: reader.skipType(tag & 7); break; @@ -54115,6 +57811,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for ListFeaturesResponse + * @function getTypeUrl + * @memberof google.cloud.gkehub.v1beta.ListFeaturesResponse + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + ListFeaturesResponse.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.v1beta.ListFeaturesResponse"; + }; + return ListFeaturesResponse; })(); @@ -54210,9 +57921,10 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.name = reader.string(); - break; + case 1: { + message.name = reader.string(); + break; + } default: reader.skipType(tag & 7); break; @@ -54302,6 +58014,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for GetFeatureRequest + * @function getTypeUrl + * @memberof google.cloud.gkehub.v1beta.GetFeatureRequest + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + GetFeatureRequest.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.v1beta.GetFeatureRequest"; + }; + return GetFeatureRequest; })(); @@ -54430,18 +58157,22 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.parent = reader.string(); - break; - case 2: - message.featureId = reader.string(); - break; - case 3: - message.resource = $root.google.cloud.gkehub.v1beta.Feature.decode(reader, reader.uint32()); - break; - case 4: - message.requestId = reader.string(); - break; + case 1: { + message.parent = reader.string(); + break; + } + case 2: { + message.featureId = reader.string(); + break; + } + case 3: { + message.resource = $root.google.cloud.gkehub.v1beta.Feature.decode(reader, reader.uint32()); + break; + } + case 4: { + message.requestId = reader.string(); + break; + } default: reader.skipType(tag & 7); break; @@ -54561,6 +58292,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for CreateFeatureRequest + * @function getTypeUrl + * @memberof google.cloud.gkehub.v1beta.CreateFeatureRequest + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + CreateFeatureRequest.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.v1beta.CreateFeatureRequest"; + }; + return CreateFeatureRequest; })(); @@ -54678,15 +58424,18 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.name = reader.string(); - break; - case 2: - message.force = reader.bool(); - break; - case 3: - message.requestId = reader.string(); - break; + case 1: { + message.name = reader.string(); + break; + } + case 2: { + message.force = reader.bool(); + break; + } + case 3: { + message.requestId = reader.string(); + break; + } default: reader.skipType(tag & 7); break; @@ -54793,6 +58542,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for DeleteFeatureRequest + * @function getTypeUrl + * @memberof google.cloud.gkehub.v1beta.DeleteFeatureRequest + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + DeleteFeatureRequest.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.v1beta.DeleteFeatureRequest"; + }; + return DeleteFeatureRequest; })(); @@ -54921,18 +58685,22 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.name = reader.string(); - break; - case 2: - message.updateMask = $root.google.protobuf.FieldMask.decode(reader, reader.uint32()); - break; - case 3: - message.resource = $root.google.cloud.gkehub.v1beta.Feature.decode(reader, reader.uint32()); - break; - case 4: - message.requestId = reader.string(); - break; + case 1: { + message.name = reader.string(); + break; + } + case 2: { + message.updateMask = $root.google.protobuf.FieldMask.decode(reader, reader.uint32()); + break; + } + case 3: { + message.resource = $root.google.cloud.gkehub.v1beta.Feature.decode(reader, reader.uint32()); + break; + } + case 4: { + message.requestId = reader.string(); + break; + } default: reader.skipType(tag & 7); break; @@ -55057,6 +58825,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for UpdateFeatureRequest + * @function getTypeUrl + * @memberof google.cloud.gkehub.v1beta.UpdateFeatureRequest + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + UpdateFeatureRequest.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.v1beta.UpdateFeatureRequest"; + }; + return UpdateFeatureRequest; })(); @@ -55218,27 +59001,34 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.createTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); - break; - case 2: - message.endTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); - break; - case 3: - message.target = reader.string(); - break; - case 4: - message.verb = reader.string(); - break; - case 5: - message.statusDetail = reader.string(); - break; - case 6: - message.cancelRequested = reader.bool(); - break; - case 7: - message.apiVersion = reader.string(); - break; + case 1: { + message.createTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + break; + } + case 2: { + message.endTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + break; + } + case 3: { + message.target = reader.string(); + break; + } + case 4: { + message.verb = reader.string(); + break; + } + case 5: { + message.statusDetail = reader.string(); + break; + } + case 6: { + message.cancelRequested = reader.bool(); + break; + } + case 7: { + message.apiVersion = reader.string(); + break; + } default: reader.skipType(tag & 7); break; @@ -55387,6 +59177,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for OperationMetadata + * @function getTypeUrl + * @memberof google.cloud.gkehub.v1beta.OperationMetadata + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + OperationMetadata.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.v1beta.OperationMetadata"; + }; + return OperationMetadata; })(); @@ -55435,7 +59240,7 @@ }; /** - * Callback as used by {@link google.cloud.gkehub.v1beta1.GkeHubMembershipService#listMemberships}. + * Callback as used by {@link google.cloud.gkehub.v1beta1.GkeHubMembershipService|listMemberships}. * @memberof google.cloud.gkehub.v1beta1.GkeHubMembershipService * @typedef ListMembershipsCallback * @type {function} @@ -55468,7 +59273,7 @@ */ /** - * Callback as used by {@link google.cloud.gkehub.v1beta1.GkeHubMembershipService#getMembership}. + * Callback as used by {@link google.cloud.gkehub.v1beta1.GkeHubMembershipService|getMembership}. * @memberof google.cloud.gkehub.v1beta1.GkeHubMembershipService * @typedef GetMembershipCallback * @type {function} @@ -55501,7 +59306,7 @@ */ /** - * Callback as used by {@link google.cloud.gkehub.v1beta1.GkeHubMembershipService#createMembership}. + * Callback as used by {@link google.cloud.gkehub.v1beta1.GkeHubMembershipService|createMembership}. * @memberof google.cloud.gkehub.v1beta1.GkeHubMembershipService * @typedef CreateMembershipCallback * @type {function} @@ -55534,7 +59339,7 @@ */ /** - * Callback as used by {@link google.cloud.gkehub.v1beta1.GkeHubMembershipService#deleteMembership}. + * Callback as used by {@link google.cloud.gkehub.v1beta1.GkeHubMembershipService|deleteMembership}. * @memberof google.cloud.gkehub.v1beta1.GkeHubMembershipService * @typedef DeleteMembershipCallback * @type {function} @@ -55567,7 +59372,7 @@ */ /** - * Callback as used by {@link google.cloud.gkehub.v1beta1.GkeHubMembershipService#updateMembership}. + * Callback as used by {@link google.cloud.gkehub.v1beta1.GkeHubMembershipService|updateMembership}. * @memberof google.cloud.gkehub.v1beta1.GkeHubMembershipService * @typedef UpdateMembershipCallback * @type {function} @@ -55600,7 +59405,7 @@ */ /** - * Callback as used by {@link google.cloud.gkehub.v1beta1.GkeHubMembershipService#generateConnectManifest}. + * Callback as used by {@link google.cloud.gkehub.v1beta1.GkeHubMembershipService|generateConnectManifest}. * @memberof google.cloud.gkehub.v1beta1.GkeHubMembershipService * @typedef GenerateConnectManifestCallback * @type {function} @@ -55633,7 +59438,7 @@ */ /** - * Callback as used by {@link google.cloud.gkehub.v1beta1.GkeHubMembershipService#validateExclusivity}. + * Callback as used by {@link google.cloud.gkehub.v1beta1.GkeHubMembershipService|validateExclusivity}. * @memberof google.cloud.gkehub.v1beta1.GkeHubMembershipService * @typedef ValidateExclusivityCallback * @type {function} @@ -55666,7 +59471,7 @@ */ /** - * Callback as used by {@link google.cloud.gkehub.v1beta1.GkeHubMembershipService#generateExclusivityManifest}. + * Callback as used by {@link google.cloud.gkehub.v1beta1.GkeHubMembershipService|generateExclusivityManifest}. * @memberof google.cloud.gkehub.v1beta1.GkeHubMembershipService * @typedef GenerateExclusivityManifestCallback * @type {function} @@ -55941,64 +59746,77 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.name = reader.string(); - break; - case 2: - 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; + case 1: { + message.name = reader.string(); + break; + } + case 2: { + 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 3: { + message.description = reader.string(); + break; + } + case 4: { + message.endpoint = $root.google.cloud.gkehub.v1beta1.MembershipEndpoint.decode(reader, reader.uint32()); + break; + } + case 5: { + message.state = $root.google.cloud.gkehub.v1beta1.MembershipState.decode(reader, reader.uint32()); + break; + } + case 9: { + message.authority = $root.google.cloud.gkehub.v1beta1.Authority.decode(reader, reader.uint32()); + break; + } + case 6: { + message.createTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + break; + } + case 7: { + message.updateTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + break; + } + case 8: { + message.deleteTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + break; + } + case 10: { + message.externalId = reader.string(); + break; + } + case 11: { + message.lastConnectionTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + break; + } + case 12: { + message.uniqueId = reader.string(); + break; + } + case 13: { + message.infrastructureType = reader.int32(); + break; } - message.labels[key] = value; - break; - case 3: - message.description = reader.string(); - break; - case 4: - message.endpoint = $root.google.cloud.gkehub.v1beta1.MembershipEndpoint.decode(reader, reader.uint32()); - break; - case 5: - message.state = $root.google.cloud.gkehub.v1beta1.MembershipState.decode(reader, reader.uint32()); - break; - case 9: - message.authority = $root.google.cloud.gkehub.v1beta1.Authority.decode(reader, reader.uint32()); - break; - case 6: - message.createTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); - break; - case 7: - message.updateTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); - break; - case 8: - message.deleteTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); - break; - case 10: - message.externalId = reader.string(); - break; - case 11: - message.lastConnectionTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); - break; - case 12: - message.uniqueId = reader.string(); - break; - case 13: - message.infrastructureType = reader.int32(); - break; default: reader.skipType(tag & 7); break; @@ -56259,6 +60077,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for Membership + * @function getTypeUrl + * @memberof google.cloud.gkehub.v1beta1.Membership + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + Membership.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.v1beta1.Membership"; + }; + /** * InfrastructureType enum. * @name google.cloud.gkehub.v1beta1.Membership.InfrastructureType @@ -56450,27 +60283,34 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 4: - message.gkeCluster = $root.google.cloud.gkehub.v1beta1.GkeCluster.decode(reader, reader.uint32()); - break; - case 7: - message.onPremCluster = $root.google.cloud.gkehub.v1beta1.OnPremCluster.decode(reader, reader.uint32()); - break; - case 8: - message.multiCloudCluster = $root.google.cloud.gkehub.v1beta1.MultiCloudCluster.decode(reader, reader.uint32()); - break; - case 9: - message.edgeCluster = $root.google.cloud.gkehub.v1beta1.EdgeCluster.decode(reader, reader.uint32()); - break; - case 10: - message.applianceCluster = $root.google.cloud.gkehub.v1beta1.ApplianceCluster.decode(reader, reader.uint32()); - break; - case 5: - message.kubernetesMetadata = $root.google.cloud.gkehub.v1beta1.KubernetesMetadata.decode(reader, reader.uint32()); - break; - case 6: - message.kubernetesResource = $root.google.cloud.gkehub.v1beta1.KubernetesResource.decode(reader, reader.uint32()); - break; + case 4: { + message.gkeCluster = $root.google.cloud.gkehub.v1beta1.GkeCluster.decode(reader, reader.uint32()); + break; + } + case 7: { + message.onPremCluster = $root.google.cloud.gkehub.v1beta1.OnPremCluster.decode(reader, reader.uint32()); + break; + } + case 8: { + message.multiCloudCluster = $root.google.cloud.gkehub.v1beta1.MultiCloudCluster.decode(reader, reader.uint32()); + break; + } + case 9: { + message.edgeCluster = $root.google.cloud.gkehub.v1beta1.EdgeCluster.decode(reader, reader.uint32()); + break; + } + case 10: { + message.applianceCluster = $root.google.cloud.gkehub.v1beta1.ApplianceCluster.decode(reader, reader.uint32()); + break; + } + case 5: { + message.kubernetesMetadata = $root.google.cloud.gkehub.v1beta1.KubernetesMetadata.decode(reader, reader.uint32()); + break; + } + case 6: { + message.kubernetesResource = $root.google.cloud.gkehub.v1beta1.KubernetesResource.decode(reader, reader.uint32()); + break; + } default: reader.skipType(tag & 7); break; @@ -56678,6 +60518,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for MembershipEndpoint + * @function getTypeUrl + * @memberof google.cloud.gkehub.v1beta1.MembershipEndpoint + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + MembershipEndpoint.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.v1beta1.MembershipEndpoint"; + }; + return MembershipEndpoint; })(); @@ -56810,22 +60665,26 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.membershipCrManifest = reader.string(); - break; - case 2: - if (!(message.membershipResources && message.membershipResources.length)) - message.membershipResources = []; - message.membershipResources.push($root.google.cloud.gkehub.v1beta1.ResourceManifest.decode(reader, reader.uint32())); - break; - case 3: - if (!(message.connectResources && message.connectResources.length)) - message.connectResources = []; - message.connectResources.push($root.google.cloud.gkehub.v1beta1.ResourceManifest.decode(reader, reader.uint32())); - break; - case 4: - message.resourceOptions = $root.google.cloud.gkehub.v1beta1.ResourceOptions.decode(reader, reader.uint32()); - break; + case 1: { + message.membershipCrManifest = reader.string(); + break; + } + case 2: { + if (!(message.membershipResources && message.membershipResources.length)) + message.membershipResources = []; + message.membershipResources.push($root.google.cloud.gkehub.v1beta1.ResourceManifest.decode(reader, reader.uint32())); + break; + } + case 3: { + if (!(message.connectResources && message.connectResources.length)) + message.connectResources = []; + message.connectResources.push($root.google.cloud.gkehub.v1beta1.ResourceManifest.decode(reader, reader.uint32())); + break; + } + case 4: { + message.resourceOptions = $root.google.cloud.gkehub.v1beta1.ResourceOptions.decode(reader, reader.uint32()); + break; + } default: reader.skipType(tag & 7); break; @@ -56981,6 +60840,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for KubernetesResource + * @function getTypeUrl + * @memberof google.cloud.gkehub.v1beta1.KubernetesResource + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + KubernetesResource.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.v1beta1.KubernetesResource"; + }; + return KubernetesResource; })(); @@ -57098,15 +60972,18 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.connectVersion = reader.string(); - break; - case 2: - message.v1beta1Crd = reader.bool(); - break; - case 3: - message.k8sVersion = reader.string(); - break; + case 1: { + message.connectVersion = reader.string(); + break; + } + case 2: { + message.v1beta1Crd = reader.bool(); + break; + } + case 3: { + message.k8sVersion = reader.string(); + break; + } default: reader.skipType(tag & 7); break; @@ -57213,6 +61090,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for ResourceOptions + * @function getTypeUrl + * @memberof google.cloud.gkehub.v1beta1.ResourceOptions + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + ResourceOptions.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.v1beta1.ResourceOptions"; + }; + return ResourceOptions; })(); @@ -57319,12 +61211,14 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.manifest = reader.string(); - break; - case 2: - message.clusterScoped = reader.bool(); - break; + case 1: { + message.manifest = reader.string(); + break; + } + case 2: { + message.clusterScoped = reader.bool(); + break; + } default: reader.skipType(tag & 7); break; @@ -57423,6 +61317,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for ResourceManifest + * @function getTypeUrl + * @memberof google.cloud.gkehub.v1beta1.ResourceManifest + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + ResourceManifest.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.v1beta1.ResourceManifest"; + }; + return ResourceManifest; })(); @@ -57529,12 +61438,14 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.resourceLink = reader.string(); - break; - case 3: - message.clusterMissing = reader.bool(); - break; + case 1: { + message.resourceLink = reader.string(); + break; + } + case 3: { + message.clusterMissing = reader.bool(); + break; + } default: reader.skipType(tag & 7); break; @@ -57633,6 +61544,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for GkeCluster + * @function getTypeUrl + * @memberof google.cloud.gkehub.v1beta1.GkeCluster + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + GkeCluster.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.v1beta1.GkeCluster"; + }; + return GkeCluster; })(); @@ -57761,18 +61687,22 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.resourceLink = reader.string(); - break; - case 2: - message.clusterMissing = reader.bool(); - break; - case 3: - message.adminCluster = reader.bool(); - break; - case 4: - message.clusterType = reader.int32(); - break; + case 1: { + message.resourceLink = reader.string(); + break; + } + case 2: { + message.clusterMissing = reader.bool(); + break; + } + case 3: { + message.adminCluster = reader.bool(); + break; + } + case 4: { + message.clusterType = reader.int32(); + break; + } default: reader.skipType(tag & 7); break; @@ -57915,6 +61845,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for OnPremCluster + * @function getTypeUrl + * @memberof google.cloud.gkehub.v1beta1.OnPremCluster + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + OnPremCluster.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.v1beta1.OnPremCluster"; + }; + /** * ClusterType enum. * @name google.cloud.gkehub.v1beta1.OnPremCluster.ClusterType @@ -58041,12 +61986,14 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.resourceLink = reader.string(); - break; - case 2: - message.clusterMissing = reader.bool(); - break; + case 1: { + message.resourceLink = reader.string(); + break; + } + case 2: { + message.clusterMissing = reader.bool(); + break; + } default: reader.skipType(tag & 7); break; @@ -58145,6 +62092,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for MultiCloudCluster + * @function getTypeUrl + * @memberof google.cloud.gkehub.v1beta1.MultiCloudCluster + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + MultiCloudCluster.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.v1beta1.MultiCloudCluster"; + }; + return MultiCloudCluster; })(); @@ -58240,9 +62202,10 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.resourceLink = reader.string(); - break; + case 1: { + message.resourceLink = reader.string(); + break; + } default: reader.skipType(tag & 7); break; @@ -58332,6 +62295,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for EdgeCluster + * @function getTypeUrl + * @memberof google.cloud.gkehub.v1beta1.EdgeCluster + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + EdgeCluster.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.v1beta1.EdgeCluster"; + }; + return EdgeCluster; })(); @@ -58427,9 +62405,10 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.resourceLink = reader.string(); - break; + case 1: { + message.resourceLink = reader.string(); + break; + } default: reader.skipType(tag & 7); break; @@ -58519,6 +62498,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for ApplianceCluster + * @function getTypeUrl + * @memberof google.cloud.gkehub.v1beta1.ApplianceCluster + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + ApplianceCluster.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.v1beta1.ApplianceCluster"; + }; + return ApplianceCluster; })(); @@ -58669,24 +62663,30 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.kubernetesApiServerVersion = reader.string(); - break; - case 2: - message.nodeProviderId = reader.string(); - break; - case 3: - message.nodeCount = reader.int32(); - break; - case 4: - message.vcpuCount = reader.int32(); - break; - case 5: - message.memoryMb = reader.int32(); - break; - case 100: - message.updateTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); - break; + case 1: { + message.kubernetesApiServerVersion = reader.string(); + break; + } + case 2: { + message.nodeProviderId = reader.string(); + break; + } + case 3: { + message.nodeCount = reader.int32(); + break; + } + case 4: { + message.vcpuCount = reader.int32(); + break; + } + case 5: { + message.memoryMb = reader.int32(); + break; + } + case 100: { + message.updateTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + break; + } default: reader.skipType(tag & 7); break; @@ -58822,6 +62822,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for KubernetesMetadata + * @function getTypeUrl + * @memberof google.cloud.gkehub.v1beta1.KubernetesMetadata + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + KubernetesMetadata.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.v1beta1.KubernetesMetadata"; + }; + return KubernetesMetadata; })(); @@ -58950,18 +62965,22 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.issuer = reader.string(); - break; - case 2: - message.workloadIdentityPool = reader.string(); - break; - case 3: - message.identityProvider = reader.string(); - break; - case 4: - message.oidcJwks = reader.bytes(); - break; + case 1: { + message.issuer = reader.string(); + break; + } + case 2: { + message.workloadIdentityPool = reader.string(); + break; + } + case 3: { + message.identityProvider = reader.string(); + break; + } + case 4: { + message.oidcJwks = reader.bytes(); + break; + } default: reader.skipType(tag & 7); break; @@ -59033,7 +63052,7 @@ if (object.oidcJwks != null) if (typeof object.oidcJwks === "string") $util.base64.decode(object.oidcJwks, message.oidcJwks = $util.newBuffer($util.base64.length(object.oidcJwks)), 0); - else if (object.oidcJwks.length) + else if (object.oidcJwks.length >= 0) message.oidcJwks = object.oidcJwks; return message; }; @@ -59085,6 +63104,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for Authority + * @function getTypeUrl + * @memberof google.cloud.gkehub.v1beta1.Authority + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + Authority.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.v1beta1.Authority"; + }; + return Authority; })(); @@ -59202,15 +63236,18 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.code = reader.int32(); - break; - case 2: - message.description = reader.string(); - break; - case 3: - message.updateTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); - break; + case 1: { + message.code = reader.int32(); + break; + } + case 2: { + message.description = reader.string(); + break; + } + case 3: { + message.updateTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + break; + } default: reader.skipType(tag & 7); break; @@ -59355,6 +63392,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for MembershipState + * @function getTypeUrl + * @memberof google.cloud.gkehub.v1beta1.MembershipState + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + MembershipState.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.v1beta1.MembershipState"; + }; + /** * Code enum. * @name google.cloud.gkehub.v1beta1.MembershipState.Code @@ -59516,21 +63568,26 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.parent = reader.string(); - break; - case 2: - message.pageSize = reader.int32(); - break; - case 3: - message.pageToken = reader.string(); - break; - case 4: - message.filter = reader.string(); - break; - case 5: - message.orderBy = reader.string(); - break; + case 1: { + message.parent = reader.string(); + break; + } + case 2: { + message.pageSize = reader.int32(); + break; + } + case 3: { + message.pageToken = reader.string(); + break; + } + case 4: { + message.filter = reader.string(); + break; + } + case 5: { + message.orderBy = reader.string(); + break; + } default: reader.skipType(tag & 7); break; @@ -59653,6 +63710,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for ListMembershipsRequest + * @function getTypeUrl + * @memberof google.cloud.gkehub.v1beta1.ListMembershipsRequest + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + ListMembershipsRequest.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.v1beta1.ListMembershipsRequest"; + }; + return ListMembershipsRequest; })(); @@ -59774,19 +63846,22 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - if (!(message.resources && message.resources.length)) - message.resources = []; - message.resources.push($root.google.cloud.gkehub.v1beta1.Membership.decode(reader, reader.uint32())); - break; - case 2: - message.nextPageToken = reader.string(); - break; - case 3: - if (!(message.unreachable && message.unreachable.length)) - message.unreachable = []; - message.unreachable.push(reader.string()); - break; + case 1: { + if (!(message.resources && message.resources.length)) + message.resources = []; + message.resources.push($root.google.cloud.gkehub.v1beta1.Membership.decode(reader, reader.uint32())); + break; + } + case 2: { + message.nextPageToken = reader.string(); + break; + } + case 3: { + if (!(message.unreachable && message.unreachable.length)) + message.unreachable = []; + message.unreachable.push(reader.string()); + break; + } default: reader.skipType(tag & 7); break; @@ -59923,6 +63998,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for ListMembershipsResponse + * @function getTypeUrl + * @memberof google.cloud.gkehub.v1beta1.ListMembershipsResponse + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + ListMembershipsResponse.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.v1beta1.ListMembershipsResponse"; + }; + return ListMembershipsResponse; })(); @@ -60018,9 +64108,10 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.name = reader.string(); - break; + case 1: { + message.name = reader.string(); + break; + } default: reader.skipType(tag & 7); break; @@ -60110,6 +64201,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for GetMembershipRequest + * @function getTypeUrl + * @memberof google.cloud.gkehub.v1beta1.GetMembershipRequest + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + GetMembershipRequest.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.v1beta1.GetMembershipRequest"; + }; + return GetMembershipRequest; })(); @@ -60238,18 +64344,22 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.parent = reader.string(); - break; - case 2: - message.membershipId = reader.string(); - break; - case 3: - message.resource = $root.google.cloud.gkehub.v1beta1.Membership.decode(reader, reader.uint32()); - break; - case 4: - message.requestId = reader.string(); - break; + case 1: { + message.parent = reader.string(); + break; + } + case 2: { + message.membershipId = reader.string(); + break; + } + case 3: { + message.resource = $root.google.cloud.gkehub.v1beta1.Membership.decode(reader, reader.uint32()); + break; + } + case 4: { + message.requestId = reader.string(); + break; + } default: reader.skipType(tag & 7); break; @@ -60369,6 +64479,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for CreateMembershipRequest + * @function getTypeUrl + * @memberof google.cloud.gkehub.v1beta1.CreateMembershipRequest + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + CreateMembershipRequest.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.v1beta1.CreateMembershipRequest"; + }; + return CreateMembershipRequest; })(); @@ -60475,12 +64600,14 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.name = reader.string(); - break; - case 4: - message.requestId = reader.string(); - break; + case 1: { + message.name = reader.string(); + break; + } + case 4: { + message.requestId = reader.string(); + break; + } default: reader.skipType(tag & 7); break; @@ -60579,6 +64706,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for DeleteMembershipRequest + * @function getTypeUrl + * @memberof google.cloud.gkehub.v1beta1.DeleteMembershipRequest + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + DeleteMembershipRequest.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.v1beta1.DeleteMembershipRequest"; + }; + return DeleteMembershipRequest; })(); @@ -60707,18 +64849,22 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.name = reader.string(); - break; - case 2: - message.updateMask = $root.google.protobuf.FieldMask.decode(reader, reader.uint32()); - break; - case 3: - message.resource = $root.google.cloud.gkehub.v1beta1.Membership.decode(reader, reader.uint32()); - break; - case 4: - message.requestId = reader.string(); - break; + case 1: { + message.name = reader.string(); + break; + } + case 2: { + message.updateMask = $root.google.protobuf.FieldMask.decode(reader, reader.uint32()); + break; + } + case 3: { + message.resource = $root.google.cloud.gkehub.v1beta1.Membership.decode(reader, reader.uint32()); + break; + } + case 4: { + message.requestId = reader.string(); + break; + } default: reader.skipType(tag & 7); break; @@ -60843,6 +64989,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for UpdateMembershipRequest + * @function getTypeUrl + * @memberof google.cloud.gkehub.v1beta1.UpdateMembershipRequest + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + UpdateMembershipRequest.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.v1beta1.UpdateMembershipRequest"; + }; + return UpdateMembershipRequest; })(); @@ -60993,24 +65154,30 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.name = reader.string(); - break; - case 2: - message.connectAgent = $root.google.cloud.gkehub.v1beta1.ConnectAgent.decode(reader, reader.uint32()); - break; - case 3: - message.version = reader.string(); - break; - case 4: - message.isUpgrade = reader.bool(); - break; - case 5: - message.registry = reader.string(); - break; - case 6: - message.imagePullSecretContent = reader.bytes(); - break; + case 1: { + message.name = reader.string(); + break; + } + case 2: { + message.connectAgent = $root.google.cloud.gkehub.v1beta1.ConnectAgent.decode(reader, reader.uint32()); + break; + } + case 3: { + message.version = reader.string(); + break; + } + case 4: { + message.isUpgrade = reader.bool(); + break; + } + case 5: { + message.registry = reader.string(); + break; + } + case 6: { + message.imagePullSecretContent = reader.bytes(); + break; + } default: reader.skipType(tag & 7); break; @@ -61097,7 +65264,7 @@ if (object.imagePullSecretContent != null) if (typeof object.imagePullSecretContent === "string") $util.base64.decode(object.imagePullSecretContent, message.imagePullSecretContent = $util.newBuffer($util.base64.length(object.imagePullSecretContent)), 0); - else if (object.imagePullSecretContent.length) + else if (object.imagePullSecretContent.length >= 0) message.imagePullSecretContent = object.imagePullSecretContent; return message; }; @@ -61155,6 +65322,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for GenerateConnectManifestRequest + * @function getTypeUrl + * @memberof google.cloud.gkehub.v1beta1.GenerateConnectManifestRequest + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + GenerateConnectManifestRequest.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.v1beta1.GenerateConnectManifestRequest"; + }; + return GenerateConnectManifestRequest; })(); @@ -61252,11 +65434,12 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - if (!(message.manifest && message.manifest.length)) - message.manifest = []; - message.manifest.push($root.google.cloud.gkehub.v1beta1.ConnectAgentResource.decode(reader, reader.uint32())); - break; + case 1: { + if (!(message.manifest && message.manifest.length)) + message.manifest = []; + message.manifest.push($root.google.cloud.gkehub.v1beta1.ConnectAgentResource.decode(reader, reader.uint32())); + break; + } default: reader.skipType(tag & 7); break; @@ -61363,6 +65546,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for GenerateConnectManifestResponse + * @function getTypeUrl + * @memberof google.cloud.gkehub.v1beta1.GenerateConnectManifestResponse + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + GenerateConnectManifestResponse.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.v1beta1.GenerateConnectManifestResponse"; + }; + return GenerateConnectManifestResponse; })(); @@ -61469,12 +65667,14 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.type = $root.google.cloud.gkehub.v1beta1.TypeMeta.decode(reader, reader.uint32()); - break; - case 2: - message.manifest = reader.string(); - break; + case 1: { + message.type = $root.google.cloud.gkehub.v1beta1.TypeMeta.decode(reader, reader.uint32()); + break; + } + case 2: { + message.manifest = reader.string(); + break; + } default: reader.skipType(tag & 7); break; @@ -61578,6 +65778,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for ConnectAgentResource + * @function getTypeUrl + * @memberof google.cloud.gkehub.v1beta1.ConnectAgentResource + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + ConnectAgentResource.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.v1beta1.ConnectAgentResource"; + }; + return ConnectAgentResource; })(); @@ -61684,12 +65899,14 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.kind = reader.string(); - break; - case 2: - message.apiVersion = reader.string(); - break; + case 1: { + message.kind = reader.string(); + break; + } + case 2: { + message.apiVersion = reader.string(); + break; + } default: reader.skipType(tag & 7); break; @@ -61788,6 +66005,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for TypeMeta + * @function getTypeUrl + * @memberof google.cloud.gkehub.v1beta1.TypeMeta + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + TypeMeta.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.v1beta1.TypeMeta"; + }; + return TypeMeta; })(); @@ -61905,15 +66137,18 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.name = reader.string(); - break; - case 2: - message.proxy = reader.bytes(); - break; - case 3: - message.namespace = reader.string(); - break; + case 1: { + message.name = reader.string(); + break; + } + case 2: { + message.proxy = reader.bytes(); + break; + } + case 3: { + message.namespace = reader.string(); + break; + } default: reader.skipType(tag & 7); break; @@ -61978,7 +66213,7 @@ if (object.proxy != null) if (typeof object.proxy === "string") $util.base64.decode(object.proxy, message.proxy = $util.newBuffer($util.base64.length(object.proxy)), 0); - else if (object.proxy.length) + else if (object.proxy.length >= 0) message.proxy = object.proxy; if (object.namespace != null) message.namespace = String(object.namespace); @@ -62029,6 +66264,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for ConnectAgent + * @function getTypeUrl + * @memberof google.cloud.gkehub.v1beta1.ConnectAgent + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + ConnectAgent.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.v1beta1.ConnectAgent"; + }; + return ConnectAgent; })(); @@ -62146,15 +66396,18 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.parent = reader.string(); - break; - case 2: - message.crManifest = reader.string(); - break; - case 3: - message.intendedMembership = reader.string(); - break; + case 1: { + message.parent = reader.string(); + break; + } + case 2: { + message.crManifest = reader.string(); + break; + } + case 3: { + message.intendedMembership = reader.string(); + break; + } default: reader.skipType(tag & 7); break; @@ -62261,6 +66514,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for ValidateExclusivityRequest + * @function getTypeUrl + * @memberof google.cloud.gkehub.v1beta1.ValidateExclusivityRequest + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + ValidateExclusivityRequest.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.v1beta1.ValidateExclusivityRequest"; + }; + return ValidateExclusivityRequest; })(); @@ -62356,9 +66624,10 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.status = $root.google.rpc.Status.decode(reader, reader.uint32()); - break; + case 1: { + message.status = $root.google.rpc.Status.decode(reader, reader.uint32()); + break; + } default: reader.skipType(tag & 7); break; @@ -62453,6 +66722,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for ValidateExclusivityResponse + * @function getTypeUrl + * @memberof google.cloud.gkehub.v1beta1.ValidateExclusivityResponse + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + ValidateExclusivityResponse.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.v1beta1.ValidateExclusivityResponse"; + }; + return ValidateExclusivityResponse; })(); @@ -62570,15 +66854,18 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.name = reader.string(); - break; - case 2: - message.crdManifest = reader.string(); - break; - case 3: - message.crManifest = reader.string(); - break; + case 1: { + message.name = reader.string(); + break; + } + case 2: { + message.crdManifest = reader.string(); + break; + } + case 3: { + message.crManifest = reader.string(); + break; + } default: reader.skipType(tag & 7); break; @@ -62685,6 +66972,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for GenerateExclusivityManifestRequest + * @function getTypeUrl + * @memberof google.cloud.gkehub.v1beta1.GenerateExclusivityManifestRequest + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + GenerateExclusivityManifestRequest.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.v1beta1.GenerateExclusivityManifestRequest"; + }; + return GenerateExclusivityManifestRequest; })(); @@ -62791,12 +67093,14 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.crdManifest = reader.string(); - break; - case 2: - message.crManifest = reader.string(); - break; + case 1: { + message.crdManifest = reader.string(); + break; + } + case 2: { + message.crManifest = reader.string(); + break; + } default: reader.skipType(tag & 7); break; @@ -62895,6 +67199,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for GenerateExclusivityManifestResponse + * @function getTypeUrl + * @memberof google.cloud.gkehub.v1beta1.GenerateExclusivityManifestResponse + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + GenerateExclusivityManifestResponse.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.v1beta1.GenerateExclusivityManifestResponse"; + }; + return GenerateExclusivityManifestResponse; })(); @@ -63056,27 +67375,34 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.createTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); - break; - case 2: - message.endTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); - break; - case 3: - message.target = reader.string(); - break; - case 4: - message.verb = reader.string(); - break; - case 5: - message.statusDetail = reader.string(); - break; - case 6: - message.cancelRequested = reader.bool(); - break; - case 7: - message.apiVersion = reader.string(); - break; + case 1: { + message.createTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + break; + } + case 2: { + message.endTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + break; + } + case 3: { + message.target = reader.string(); + break; + } + case 4: { + message.verb = reader.string(); + break; + } + case 5: { + message.statusDetail = reader.string(); + break; + } + case 6: { + message.cancelRequested = reader.bool(); + break; + } + case 7: { + message.apiVersion = reader.string(); + break; + } default: reader.skipType(tag & 7); break; @@ -63225,6 +67551,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for OperationMetadata + * @function getTypeUrl + * @memberof google.cloud.gkehub.v1beta1.OperationMetadata + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + OperationMetadata.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.gkehub.v1beta1.OperationMetadata"; + }; + return OperationMetadata; })(); @@ -63437,36 +67778,43 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.type = reader.string(); - break; - case 2: - if (!(message.pattern && message.pattern.length)) - message.pattern = []; - message.pattern.push(reader.string()); - break; - case 3: - message.nameField = reader.string(); - break; - case 4: - message.history = reader.int32(); - break; - case 5: - message.plural = reader.string(); - break; - case 6: - message.singular = reader.string(); - break; - case 10: - if (!(message.style && message.style.length)) - message.style = []; - if ((tag & 7) === 2) { - var end2 = reader.uint32() + reader.pos; - while (reader.pos < end2) + case 1: { + message.type = reader.string(); + break; + } + case 2: { + if (!(message.pattern && message.pattern.length)) + message.pattern = []; + message.pattern.push(reader.string()); + break; + } + case 3: { + message.nameField = reader.string(); + break; + } + case 4: { + message.history = reader.int32(); + break; + } + case 5: { + message.plural = reader.string(); + break; + } + case 6: { + message.singular = reader.string(); + break; + } + case 10: { + if (!(message.style && message.style.length)) + message.style = []; + if ((tag & 7) === 2) { + var end2 = reader.uint32() + reader.pos; + while (reader.pos < end2) + message.style.push(reader.int32()); + } else message.style.push(reader.int32()); - } else - message.style.push(reader.int32()); - break; + break; + } default: reader.skipType(tag & 7); break; @@ -63664,6 +68012,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for ResourceDescriptor + * @function getTypeUrl + * @memberof google.api.ResourceDescriptor + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + ResourceDescriptor.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.api.ResourceDescriptor"; + }; + /** * History enum. * @name google.api.ResourceDescriptor.History @@ -63800,12 +68163,14 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.type = reader.string(); - break; - case 2: - message.childType = reader.string(); - break; + case 1: { + message.type = reader.string(); + break; + } + case 2: { + message.childType = reader.string(); + break; + } default: reader.skipType(tag & 7); break; @@ -63904,6 +68269,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for ResourceReference + * @function getTypeUrl + * @memberof google.api.ResourceReference + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + ResourceReference.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.api.ResourceReference"; + }; + return ResourceReference; })(); @@ -64012,14 +68392,16 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - if (!(message.rules && message.rules.length)) - message.rules = []; - message.rules.push($root.google.api.HttpRule.decode(reader, reader.uint32())); - break; - case 2: - message.fullyDecodeReservedExpansion = reader.bool(); - break; + case 1: { + if (!(message.rules && message.rules.length)) + message.rules = []; + message.rules.push($root.google.api.HttpRule.decode(reader, reader.uint32())); + break; + } + case 2: { + message.fullyDecodeReservedExpansion = reader.bool(); + break; + } default: reader.skipType(tag & 7); break; @@ -64135,6 +68517,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for Http + * @function getTypeUrl + * @memberof google.api.Http + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + Http.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.api.Http"; + }; + return Http; })(); @@ -64345,38 +68742,48 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.selector = reader.string(); - break; - case 2: - message.get = reader.string(); - break; - case 3: - message.put = reader.string(); - break; - case 4: - message.post = reader.string(); - break; - case 5: - message["delete"] = reader.string(); - break; - case 6: - message.patch = reader.string(); - break; - case 8: - message.custom = $root.google.api.CustomHttpPattern.decode(reader, reader.uint32()); - break; - case 7: - message.body = reader.string(); - break; - case 12: - message.responseBody = reader.string(); - break; - case 11: - if (!(message.additionalBindings && message.additionalBindings.length)) - message.additionalBindings = []; - message.additionalBindings.push($root.google.api.HttpRule.decode(reader, reader.uint32())); - break; + case 1: { + message.selector = reader.string(); + break; + } + case 2: { + message.get = reader.string(); + break; + } + case 3: { + message.put = reader.string(); + break; + } + case 4: { + message.post = reader.string(); + break; + } + case 5: { + message["delete"] = reader.string(); + break; + } + case 6: { + message.patch = reader.string(); + break; + } + case 8: { + message.custom = $root.google.api.CustomHttpPattern.decode(reader, reader.uint32()); + break; + } + case 7: { + message.body = reader.string(); + break; + } + case 12: { + message.responseBody = reader.string(); + break; + } + case 11: { + if (!(message.additionalBindings && message.additionalBindings.length)) + message.additionalBindings = []; + message.additionalBindings.push($root.google.api.HttpRule.decode(reader, reader.uint32())); + break; + } default: reader.skipType(tag & 7); break; @@ -64598,6 +69005,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for HttpRule + * @function getTypeUrl + * @memberof google.api.HttpRule + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + HttpRule.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.api.HttpRule"; + }; + return HttpRule; })(); @@ -64704,12 +69126,14 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.kind = reader.string(); - break; - case 2: - message.path = reader.string(); - break; + case 1: { + message.kind = reader.string(); + break; + } + case 2: { + message.path = reader.string(); + break; + } default: reader.skipType(tag & 7); break; @@ -64808,6 +69232,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for CustomHttpPattern + * @function getTypeUrl + * @memberof google.api.CustomHttpPattern + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + CustomHttpPattern.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.api.CustomHttpPattern"; + }; + return CustomHttpPattern; })(); @@ -64856,7 +69295,7 @@ }; /** - * Callback as used by {@link google.longrunning.Operations#listOperations}. + * Callback as used by {@link google.longrunning.Operations|listOperations}. * @memberof google.longrunning.Operations * @typedef ListOperationsCallback * @type {function} @@ -64889,7 +69328,7 @@ */ /** - * Callback as used by {@link google.longrunning.Operations#getOperation}. + * Callback as used by {@link google.longrunning.Operations|getOperation}. * @memberof google.longrunning.Operations * @typedef GetOperationCallback * @type {function} @@ -64922,7 +69361,7 @@ */ /** - * Callback as used by {@link google.longrunning.Operations#deleteOperation}. + * Callback as used by {@link google.longrunning.Operations|deleteOperation}. * @memberof google.longrunning.Operations * @typedef DeleteOperationCallback * @type {function} @@ -64955,7 +69394,7 @@ */ /** - * Callback as used by {@link google.longrunning.Operations#cancelOperation}. + * Callback as used by {@link google.longrunning.Operations|cancelOperation}. * @memberof google.longrunning.Operations * @typedef CancelOperationCallback * @type {function} @@ -64988,7 +69427,7 @@ */ /** - * Callback as used by {@link google.longrunning.Operations#waitOperation}. + * Callback as used by {@link google.longrunning.Operations|waitOperation}. * @memberof google.longrunning.Operations * @typedef WaitOperationCallback * @type {function} @@ -65173,21 +69612,26 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.name = reader.string(); - break; - case 2: - message.metadata = $root.google.protobuf.Any.decode(reader, reader.uint32()); - break; - case 3: - message.done = reader.bool(); - break; - case 4: - message.error = $root.google.rpc.Status.decode(reader, reader.uint32()); - break; - case 5: - message.response = $root.google.protobuf.Any.decode(reader, reader.uint32()); - break; + case 1: { + message.name = reader.string(); + break; + } + case 2: { + message.metadata = $root.google.protobuf.Any.decode(reader, reader.uint32()); + break; + } + case 3: { + message.done = reader.bool(); + break; + } + case 4: { + message.error = $root.google.rpc.Status.decode(reader, reader.uint32()); + break; + } + case 5: { + message.response = $root.google.protobuf.Any.decode(reader, reader.uint32()); + break; + } default: reader.skipType(tag & 7); break; @@ -65338,6 +69782,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for Operation + * @function getTypeUrl + * @memberof google.longrunning.Operation + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + Operation.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.longrunning.Operation"; + }; + return Operation; })(); @@ -65433,9 +69892,10 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.name = reader.string(); - break; + case 1: { + message.name = reader.string(); + break; + } default: reader.skipType(tag & 7); break; @@ -65525,6 +69985,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for GetOperationRequest + * @function getTypeUrl + * @memberof google.longrunning.GetOperationRequest + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + GetOperationRequest.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.longrunning.GetOperationRequest"; + }; + return GetOperationRequest; })(); @@ -65653,18 +70128,22 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 4: - message.name = reader.string(); - break; - case 1: - message.filter = reader.string(); - break; - case 2: - message.pageSize = reader.int32(); - break; - case 3: - message.pageToken = reader.string(); - break; + case 4: { + message.name = reader.string(); + break; + } + case 1: { + message.filter = reader.string(); + break; + } + case 2: { + message.pageSize = reader.int32(); + break; + } + case 3: { + message.pageToken = reader.string(); + break; + } default: reader.skipType(tag & 7); break; @@ -65779,6 +70258,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for ListOperationsRequest + * @function getTypeUrl + * @memberof google.longrunning.ListOperationsRequest + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + ListOperationsRequest.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.longrunning.ListOperationsRequest"; + }; + return ListOperationsRequest; })(); @@ -65887,14 +70381,16 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - if (!(message.operations && message.operations.length)) - message.operations = []; - message.operations.push($root.google.longrunning.Operation.decode(reader, reader.uint32())); - break; - case 2: - message.nextPageToken = reader.string(); - break; + case 1: { + if (!(message.operations && message.operations.length)) + message.operations = []; + message.operations.push($root.google.longrunning.Operation.decode(reader, reader.uint32())); + break; + } + case 2: { + message.nextPageToken = reader.string(); + break; + } default: reader.skipType(tag & 7); break; @@ -66010,6 +70506,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for ListOperationsResponse + * @function getTypeUrl + * @memberof google.longrunning.ListOperationsResponse + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + ListOperationsResponse.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.longrunning.ListOperationsResponse"; + }; + return ListOperationsResponse; })(); @@ -66105,9 +70616,10 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.name = reader.string(); - break; + case 1: { + message.name = reader.string(); + break; + } default: reader.skipType(tag & 7); break; @@ -66197,6 +70709,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for CancelOperationRequest + * @function getTypeUrl + * @memberof google.longrunning.CancelOperationRequest + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + CancelOperationRequest.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.longrunning.CancelOperationRequest"; + }; + return CancelOperationRequest; })(); @@ -66292,9 +70819,10 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.name = reader.string(); - break; + case 1: { + message.name = reader.string(); + break; + } default: reader.skipType(tag & 7); break; @@ -66384,6 +70912,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for DeleteOperationRequest + * @function getTypeUrl + * @memberof google.longrunning.DeleteOperationRequest + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + DeleteOperationRequest.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.longrunning.DeleteOperationRequest"; + }; + return DeleteOperationRequest; })(); @@ -66490,12 +71033,14 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.name = reader.string(); - break; - case 2: - message.timeout = $root.google.protobuf.Duration.decode(reader, reader.uint32()); - break; + case 1: { + message.name = reader.string(); + break; + } + case 2: { + message.timeout = $root.google.protobuf.Duration.decode(reader, reader.uint32()); + break; + } default: reader.skipType(tag & 7); break; @@ -66599,6 +71144,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for WaitOperationRequest + * @function getTypeUrl + * @memberof google.longrunning.WaitOperationRequest + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + WaitOperationRequest.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.longrunning.WaitOperationRequest"; + }; + return WaitOperationRequest; })(); @@ -66705,12 +71265,14 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.responseType = reader.string(); - break; - case 2: - message.metadataType = reader.string(); - break; + case 1: { + message.responseType = reader.string(); + break; + } + case 2: { + message.metadataType = reader.string(); + break; + } default: reader.skipType(tag & 7); break; @@ -66809,6 +71371,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for OperationInfo + * @function getTypeUrl + * @memberof google.longrunning.OperationInfo + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + OperationInfo.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.longrunning.OperationInfo"; + }; + return OperationInfo; })(); @@ -66940,17 +71517,20 @@ while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 1: - message.code = reader.int32(); - break; - case 2: - message.message = reader.string(); - break; - case 3: - if (!(message.details && message.details.length)) - message.details = []; - message.details.push($root.google.protobuf.Any.decode(reader, reader.uint32())); - break; + case 1: { + message.code = reader.int32(); + break; + } + case 2: { + message.message = reader.string(); + break; + } + case 3: { + if (!(message.details && message.details.length)) + message.details = []; + message.details.push($root.google.protobuf.Any.decode(reader, reader.uint32())); + break; + } default: reader.skipType(tag & 7); break; @@ -67075,6 +71655,21 @@ return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; + /** + * Gets the default type url for Status + * @function getTypeUrl + * @memberof google.rpc.Status + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + Status.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.rpc.Status"; + }; + return Status; })(); diff --git a/packages/google-cloud-gkehub/protos/protos.json b/packages/google-cloud-gkehub/protos/protos.json index a63bd1cee24..c004a1bf8c0 100644 --- a/packages/google-cloud-gkehub/protos/protos.json +++ b/packages/google-cloud-gkehub/protos/protos.json @@ -96,6 +96,10 @@ "syntax": { "type": "string", "id": 12 + }, + "edition": { + "type": "string", + "id": 13 } } }, @@ -624,6 +628,13 @@ "default": false } }, + "unverifiedLazy": { + "type": "bool", + "id": 15, + "options": { + "default": false + } + }, "deprecated": { "type": "bool", "id": 3, @@ -916,6 +927,19 @@ "end": { "type": "int32", "id": 4 + }, + "semantic": { + "type": "Semantic", + "id": 5 + } + }, + "nested": { + "Semantic": { + "values": { + "NONE": 0, + "SET": 1, + "ALIAS": 2 + } } } } From d7b274a8d8c1d0d653961368f364c01a70805b92 Mon Sep 17 00:00:00 2001 From: "gcf-owl-bot[bot]" <78513119+gcf-owl-bot[bot]@users.noreply.github.com> Date: Sat, 27 Aug 2022 05:02:32 +0000 Subject: [PATCH 83/92] fix: do not import the whole google-gax from proto JS (#1553) (#167) fix: use google-gax v3.3.0 Source-Link: https://github.com/googleapis/synthtool/commit/c73d112a11a1f1a93efa67c50495c19aa3a88910 Post-Processor: gcr.io/cloud-devrel-public-resources/owlbot-nodejs:latest@sha256:b15a6f06cc06dcffa11e1bebdf1a74b6775a134aac24a0f86f51ddf728eb373e --- packages/google-cloud-gkehub/package.json | 2 +- packages/google-cloud-gkehub/protos/protos.d.ts | 2 +- packages/google-cloud-gkehub/protos/protos.js | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/packages/google-cloud-gkehub/package.json b/packages/google-cloud-gkehub/package.json index b7d22487fb4..64de1d0da2a 100644 --- a/packages/google-cloud-gkehub/package.json +++ b/packages/google-cloud-gkehub/package.json @@ -39,7 +39,7 @@ "prelint": "cd samples; npm link ../; npm i" }, "dependencies": { - "google-gax": "^3.0.1" + "google-gax": "^3.3.0" }, "devDependencies": { "@types/mocha": "^9.0.0", diff --git a/packages/google-cloud-gkehub/protos/protos.d.ts b/packages/google-cloud-gkehub/protos/protos.d.ts index 44b4cd7bbbe..70da790dfa7 100644 --- a/packages/google-cloud-gkehub/protos/protos.d.ts +++ b/packages/google-cloud-gkehub/protos/protos.d.ts @@ -13,7 +13,7 @@ // limitations under the License. import Long = require("long"); -import {protobuf as $protobuf} from "google-gax"; +import type {protobuf as $protobuf} from "google-gax"; /** Namespace google. */ export namespace google { diff --git a/packages/google-cloud-gkehub/protos/protos.js b/packages/google-cloud-gkehub/protos/protos.js index 347f77713e6..c94d3f6858d 100644 --- a/packages/google-cloud-gkehub/protos/protos.js +++ b/packages/google-cloud-gkehub/protos/protos.js @@ -19,7 +19,7 @@ define(["protobufjs/minimal"], factory); /* CommonJS */ else if (typeof require === 'function' && typeof module === 'object' && module && module.exports) - module.exports = factory(require("google-gax").protobufMinimal); + module.exports = factory(require("google-gax/build/src/protobuf").protobufMinimal); })(this, function($protobuf) { "use strict"; From f6981c5bc706e08f5006342d01f024016c7bb176 Mon Sep 17 00:00:00 2001 From: "gcf-owl-bot[bot]" <78513119+gcf-owl-bot[bot]@users.noreply.github.com> Date: Thu, 1 Sep 2022 20:52:17 +0000 Subject: [PATCH 84/92] fix: allow passing gax instance to client constructor (#168) - [ ] Regenerate this pull request now. PiperOrigin-RevId: 470911839 Source-Link: https://github.com/googleapis/googleapis/commit/352756699ebc5b2144c252867c265ea44448712e Source-Link: https://github.com/googleapis/googleapis-gen/commit/f16a1d224f00a630ea43d6a9a1a31f566f45cdea Copy-Tag: eyJwIjoiLmdpdGh1Yi8uT3dsQm90LnlhbWwiLCJoIjoiZjE2YTFkMjI0ZjAwYTYzMGVhNDNkNmE5YTFhMzFmNTY2ZjQ1Y2RlYSJ9 feat: accept google-gax instance as a parameter Please see the documentation of the client constructor for details. PiperOrigin-RevId: 470332808 Source-Link: https://github.com/googleapis/googleapis/commit/d4a23675457cd8f0b44080e0594ec72de1291b89 Source-Link: https://github.com/googleapis/googleapis-gen/commit/e97a1ac204ead4fe7341f91e72db7c6ac6016341 Copy-Tag: eyJwIjoiLmdpdGh1Yi8uT3dsQm90LnlhbWwiLCJoIjoiZTk3YTFhYzIwNGVhZDRmZTczNDFmOTFlNzJkYjdjNmFjNjAxNjM0MSJ9 --- .../src/v1/gke_hub_client.ts | 111 ++++++++++-------- .../src/v1alpha/gke_hub_client.ts | 68 +++++++---- .../src/v1alpha2/gke_hub_client.ts | 72 +++++++----- .../src/v1beta/gke_hub_client.ts | 68 +++++++---- .../gke_hub_membership_service_client.ts | 81 ++++++++----- 5 files changed, 243 insertions(+), 157 deletions(-) diff --git a/packages/google-cloud-gkehub/src/v1/gke_hub_client.ts b/packages/google-cloud-gkehub/src/v1/gke_hub_client.ts index af5b95d5d6a..fb7183df669 100644 --- a/packages/google-cloud-gkehub/src/v1/gke_hub_client.ts +++ b/packages/google-cloud-gkehub/src/v1/gke_hub_client.ts @@ -17,8 +17,8 @@ // ** All changes to this file may be overwritten. ** /* global window */ -import * as gax from 'google-gax'; -import { +import type * as gax from 'google-gax'; +import type { Callback, CallOptions, Descriptors, @@ -28,7 +28,6 @@ import { PaginationCallback, GaxCall, } from 'google-gax'; - import {Transform} from 'stream'; import * as protos from '../../protos/protos'; import jsonProtos = require('../../protos/protos.json'); @@ -38,7 +37,6 @@ import jsonProtos = require('../../protos/protos.json'); * This file defines retry strategy and timeouts for all API methods in this library. */ import * as gapicConfig from './gke_hub_client_config.json'; -import {operationsProtos} from 'google-gax'; const version = require('../../../package.json').version; /** @@ -112,8 +110,18 @@ export class GkeHubClient { * Pass "rest" to use HTTP/1.1 REST API instead of gRPC. * For more information, please check the * {@link https://github.com/googleapis/gax-nodejs/blob/main/client-libraries.md#http11-rest-api-mode documentation}. + * @param {gax} [gaxInstance]: loaded instance of `google-gax`. Useful if you + * need to avoid loading the default gRPC version and want to use the fallback + * HTTP implementation. Load only fallback version and pass it to the constructor: + * ``` + * const gax = require('google-gax/build/src/fallback'); // avoids loading google-gax with gRPC + * const client = new GkeHubClient({fallback: 'rest'}, gax); + * ``` */ - constructor(opts?: ClientOptions) { + constructor( + opts?: ClientOptions, + gaxInstance?: typeof gax | typeof gax.fallback + ) { // Ensure that options include all the required fields. const staticMembers = this.constructor as typeof GkeHubClient; const servicePath = @@ -133,8 +141,13 @@ export class GkeHubClient { opts['scopes'] = staticMembers.scopes; } + // Load google-gax module synchronously if needed + if (!gaxInstance) { + gaxInstance = require('google-gax') as typeof gax; + } + // Choose either gRPC or proto-over-HTTP implementation of google-gax. - this._gaxModule = opts.fallback ? gax.fallback : gax; + this._gaxModule = opts.fallback ? gaxInstance.fallback : gaxInstance; // Create a `gaxGrpc` object, with any grpc-specific options sent to the client. this._gaxGrpc = new this._gaxModule.GrpcClient(opts); @@ -364,7 +377,7 @@ export class GkeHubClient { this.innerApiCalls = {}; // Add a warn function to the client constructor so it can be easily tested. - this.warn = gax.warn; + this.warn = this._gaxModule.warn; } /** @@ -577,7 +590,7 @@ export class GkeHubClient { options.otherArgs = options.otherArgs || {}; options.otherArgs.headers = options.otherArgs.headers || {}; options.otherArgs.headers['x-goog-request-params'] = - gax.routingHeader.fromParams({ + this._gaxModule.routingHeader.fromParams({ name: request.name || '', }); this.initialize(); @@ -661,7 +674,7 @@ export class GkeHubClient { options.otherArgs = options.otherArgs || {}; options.otherArgs.headers = options.otherArgs.headers || {}; options.otherArgs.headers['x-goog-request-params'] = - gax.routingHeader.fromParams({ + this._gaxModule.routingHeader.fromParams({ name: request.name || '', }); this.initialize(); @@ -778,7 +791,7 @@ export class GkeHubClient { options.otherArgs = options.otherArgs || {}; options.otherArgs.headers = options.otherArgs.headers || {}; options.otherArgs.headers['x-goog-request-params'] = - gax.routingHeader.fromParams({ + this._gaxModule.routingHeader.fromParams({ name: request.name || '', }); this.initialize(); @@ -917,7 +930,7 @@ export class GkeHubClient { options.otherArgs = options.otherArgs || {}; options.otherArgs.headers = options.otherArgs.headers || {}; options.otherArgs.headers['x-goog-request-params'] = - gax.routingHeader.fromParams({ + this._gaxModule.routingHeader.fromParams({ parent: request.parent || '', }); this.initialize(); @@ -943,11 +956,12 @@ export class GkeHubClient { protos.google.cloud.gkehub.v1.OperationMetadata > > { - const request = new operationsProtos.google.longrunning.GetOperationRequest( - {name} - ); + const request = + new this._gaxModule.operationsProtos.google.longrunning.GetOperationRequest( + {name} + ); const [operation] = await this.operationsClient.getOperation(request); - const decodeOperation = new gax.Operation( + const decodeOperation = new this._gaxModule.Operation( operation, this.descriptors.longrunning.createMembership, this._gaxModule.createDefaultBackoffSettings() @@ -1073,7 +1087,7 @@ export class GkeHubClient { options.otherArgs = options.otherArgs || {}; options.otherArgs.headers = options.otherArgs.headers || {}; options.otherArgs.headers['x-goog-request-params'] = - gax.routingHeader.fromParams({ + this._gaxModule.routingHeader.fromParams({ parent: request.parent || '', }); this.initialize(); @@ -1099,11 +1113,12 @@ export class GkeHubClient { protos.google.cloud.gkehub.v1.OperationMetadata > > { - const request = new operationsProtos.google.longrunning.GetOperationRequest( - {name} - ); + const request = + new this._gaxModule.operationsProtos.google.longrunning.GetOperationRequest( + {name} + ); const [operation] = await this.operationsClient.getOperation(request); - const decodeOperation = new gax.Operation( + const decodeOperation = new this._gaxModule.Operation( operation, this.descriptors.longrunning.createFeature, this._gaxModule.createDefaultBackoffSettings() @@ -1229,7 +1244,7 @@ export class GkeHubClient { options.otherArgs = options.otherArgs || {}; options.otherArgs.headers = options.otherArgs.headers || {}; options.otherArgs.headers['x-goog-request-params'] = - gax.routingHeader.fromParams({ + this._gaxModule.routingHeader.fromParams({ name: request.name || '', }); this.initialize(); @@ -1255,11 +1270,12 @@ export class GkeHubClient { protos.google.cloud.gkehub.v1.OperationMetadata > > { - const request = new operationsProtos.google.longrunning.GetOperationRequest( - {name} - ); + const request = + new this._gaxModule.operationsProtos.google.longrunning.GetOperationRequest( + {name} + ); const [operation] = await this.operationsClient.getOperation(request); - const decodeOperation = new gax.Operation( + const decodeOperation = new this._gaxModule.Operation( operation, this.descriptors.longrunning.deleteMembership, this._gaxModule.createDefaultBackoffSettings() @@ -1385,7 +1401,7 @@ export class GkeHubClient { options.otherArgs = options.otherArgs || {}; options.otherArgs.headers = options.otherArgs.headers || {}; options.otherArgs.headers['x-goog-request-params'] = - gax.routingHeader.fromParams({ + this._gaxModule.routingHeader.fromParams({ name: request.name || '', }); this.initialize(); @@ -1411,11 +1427,12 @@ export class GkeHubClient { protos.google.cloud.gkehub.v1.OperationMetadata > > { - const request = new operationsProtos.google.longrunning.GetOperationRequest( - {name} - ); + const request = + new this._gaxModule.operationsProtos.google.longrunning.GetOperationRequest( + {name} + ); const [operation] = await this.operationsClient.getOperation(request); - const decodeOperation = new gax.Operation( + const decodeOperation = new this._gaxModule.Operation( operation, this.descriptors.longrunning.deleteFeature, this._gaxModule.createDefaultBackoffSettings() @@ -1548,7 +1565,7 @@ export class GkeHubClient { options.otherArgs = options.otherArgs || {}; options.otherArgs.headers = options.otherArgs.headers || {}; options.otherArgs.headers['x-goog-request-params'] = - gax.routingHeader.fromParams({ + this._gaxModule.routingHeader.fromParams({ name: request.name || '', }); this.initialize(); @@ -1574,11 +1591,12 @@ export class GkeHubClient { protos.google.cloud.gkehub.v1.OperationMetadata > > { - const request = new operationsProtos.google.longrunning.GetOperationRequest( - {name} - ); + const request = + new this._gaxModule.operationsProtos.google.longrunning.GetOperationRequest( + {name} + ); const [operation] = await this.operationsClient.getOperation(request); - const decodeOperation = new gax.Operation( + const decodeOperation = new this._gaxModule.Operation( operation, this.descriptors.longrunning.updateMembership, this._gaxModule.createDefaultBackoffSettings() @@ -1711,7 +1729,7 @@ export class GkeHubClient { options.otherArgs = options.otherArgs || {}; options.otherArgs.headers = options.otherArgs.headers || {}; options.otherArgs.headers['x-goog-request-params'] = - gax.routingHeader.fromParams({ + this._gaxModule.routingHeader.fromParams({ name: request.name || '', }); this.initialize(); @@ -1737,11 +1755,12 @@ export class GkeHubClient { protos.google.cloud.gkehub.v1.OperationMetadata > > { - const request = new operationsProtos.google.longrunning.GetOperationRequest( - {name} - ); + const request = + new this._gaxModule.operationsProtos.google.longrunning.GetOperationRequest( + {name} + ); const [operation] = await this.operationsClient.getOperation(request); - const decodeOperation = new gax.Operation( + const decodeOperation = new this._gaxModule.Operation( operation, this.descriptors.longrunning.updateFeature, this._gaxModule.createDefaultBackoffSettings() @@ -1866,7 +1885,7 @@ export class GkeHubClient { options.otherArgs = options.otherArgs || {}; options.otherArgs.headers = options.otherArgs.headers || {}; options.otherArgs.headers['x-goog-request-params'] = - gax.routingHeader.fromParams({ + this._gaxModule.routingHeader.fromParams({ parent: request.parent || '', }); this.initialize(); @@ -1933,7 +1952,7 @@ export class GkeHubClient { options.otherArgs = options.otherArgs || {}; options.otherArgs.headers = options.otherArgs.headers || {}; options.otherArgs.headers['x-goog-request-params'] = - gax.routingHeader.fromParams({ + this._gaxModule.routingHeader.fromParams({ parent: request.parent || '', }); const defaultCallSettings = this._defaults['listMemberships']; @@ -2009,7 +2028,7 @@ export class GkeHubClient { options.otherArgs = options.otherArgs || {}; options.otherArgs.headers = options.otherArgs.headers || {}; options.otherArgs.headers['x-goog-request-params'] = - gax.routingHeader.fromParams({ + this._gaxModule.routingHeader.fromParams({ parent: request.parent || '', }); const defaultCallSettings = this._defaults['listMemberships']; @@ -2132,7 +2151,7 @@ export class GkeHubClient { options.otherArgs = options.otherArgs || {}; options.otherArgs.headers = options.otherArgs.headers || {}; options.otherArgs.headers['x-goog-request-params'] = - gax.routingHeader.fromParams({ + this._gaxModule.routingHeader.fromParams({ parent: request.parent || '', }); this.initialize(); @@ -2195,7 +2214,7 @@ export class GkeHubClient { options.otherArgs = options.otherArgs || {}; options.otherArgs.headers = options.otherArgs.headers || {}; options.otherArgs.headers['x-goog-request-params'] = - gax.routingHeader.fromParams({ + this._gaxModule.routingHeader.fromParams({ parent: request.parent || '', }); const defaultCallSettings = this._defaults['listFeatures']; @@ -2267,7 +2286,7 @@ export class GkeHubClient { options.otherArgs = options.otherArgs || {}; options.otherArgs.headers = options.otherArgs.headers || {}; options.otherArgs.headers['x-goog-request-params'] = - gax.routingHeader.fromParams({ + this._gaxModule.routingHeader.fromParams({ parent: request.parent || '', }); const defaultCallSettings = this._defaults['listFeatures']; diff --git a/packages/google-cloud-gkehub/src/v1alpha/gke_hub_client.ts b/packages/google-cloud-gkehub/src/v1alpha/gke_hub_client.ts index 3ba8c139102..5c76141e35c 100644 --- a/packages/google-cloud-gkehub/src/v1alpha/gke_hub_client.ts +++ b/packages/google-cloud-gkehub/src/v1alpha/gke_hub_client.ts @@ -17,8 +17,8 @@ // ** All changes to this file may be overwritten. ** /* global window */ -import * as gax from 'google-gax'; -import { +import type * as gax from 'google-gax'; +import type { Callback, CallOptions, Descriptors, @@ -28,7 +28,6 @@ import { PaginationCallback, GaxCall, } from 'google-gax'; - import {Transform} from 'stream'; import * as protos from '../../protos/protos'; import jsonProtos = require('../../protos/protos.json'); @@ -38,7 +37,6 @@ import jsonProtos = require('../../protos/protos.json'); * This file defines retry strategy and timeouts for all API methods in this library. */ import * as gapicConfig from './gke_hub_client_config.json'; -import {operationsProtos} from 'google-gax'; const version = require('../../../package.json').version; /** @@ -112,8 +110,18 @@ export class GkeHubClient { * Pass "rest" to use HTTP/1.1 REST API instead of gRPC. * For more information, please check the * {@link https://github.com/googleapis/gax-nodejs/blob/main/client-libraries.md#http11-rest-api-mode documentation}. + * @param {gax} [gaxInstance]: loaded instance of `google-gax`. Useful if you + * need to avoid loading the default gRPC version and want to use the fallback + * HTTP implementation. Load only fallback version and pass it to the constructor: + * ``` + * const gax = require('google-gax/build/src/fallback'); // avoids loading google-gax with gRPC + * const client = new GkeHubClient({fallback: 'rest'}, gax); + * ``` */ - constructor(opts?: ClientOptions) { + constructor( + opts?: ClientOptions, + gaxInstance?: typeof gax | typeof gax.fallback + ) { // Ensure that options include all the required fields. const staticMembers = this.constructor as typeof GkeHubClient; const servicePath = @@ -133,8 +141,13 @@ export class GkeHubClient { opts['scopes'] = staticMembers.scopes; } + // Load google-gax module synchronously if needed + if (!gaxInstance) { + gaxInstance = require('google-gax') as typeof gax; + } + // Choose either gRPC or proto-over-HTTP implementation of google-gax. - this._gaxModule = opts.fallback ? gax.fallback : gax; + this._gaxModule = opts.fallback ? gaxInstance.fallback : gaxInstance; // Create a `gaxGrpc` object, with any grpc-specific options sent to the client. this._gaxGrpc = new this._gaxModule.GrpcClient(opts); @@ -317,7 +330,7 @@ export class GkeHubClient { this.innerApiCalls = {}; // Add a warn function to the client constructor so it can be easily tested. - this.warn = gax.warn; + this.warn = this._gaxModule.warn; } /** @@ -524,7 +537,7 @@ export class GkeHubClient { options.otherArgs = options.otherArgs || {}; options.otherArgs.headers = options.otherArgs.headers || {}; options.otherArgs.headers['x-goog-request-params'] = - gax.routingHeader.fromParams({ + this._gaxModule.routingHeader.fromParams({ name: request.name || '', }); this.initialize(); @@ -647,7 +660,7 @@ export class GkeHubClient { options.otherArgs = options.otherArgs || {}; options.otherArgs.headers = options.otherArgs.headers || {}; options.otherArgs.headers['x-goog-request-params'] = - gax.routingHeader.fromParams({ + this._gaxModule.routingHeader.fromParams({ parent: request.parent || '', }); this.initialize(); @@ -673,11 +686,12 @@ export class GkeHubClient { protos.google.cloud.gkehub.v1alpha.OperationMetadata > > { - const request = new operationsProtos.google.longrunning.GetOperationRequest( - {name} - ); + const request = + new this._gaxModule.operationsProtos.google.longrunning.GetOperationRequest( + {name} + ); const [operation] = await this.operationsClient.getOperation(request); - const decodeOperation = new gax.Operation( + const decodeOperation = new this._gaxModule.Operation( operation, this.descriptors.longrunning.createFeature, this._gaxModule.createDefaultBackoffSettings() @@ -803,7 +817,7 @@ export class GkeHubClient { options.otherArgs = options.otherArgs || {}; options.otherArgs.headers = options.otherArgs.headers || {}; options.otherArgs.headers['x-goog-request-params'] = - gax.routingHeader.fromParams({ + this._gaxModule.routingHeader.fromParams({ name: request.name || '', }); this.initialize(); @@ -829,11 +843,12 @@ export class GkeHubClient { protos.google.cloud.gkehub.v1alpha.OperationMetadata > > { - const request = new operationsProtos.google.longrunning.GetOperationRequest( - {name} - ); + const request = + new this._gaxModule.operationsProtos.google.longrunning.GetOperationRequest( + {name} + ); const [operation] = await this.operationsClient.getOperation(request); - const decodeOperation = new gax.Operation( + const decodeOperation = new this._gaxModule.Operation( operation, this.descriptors.longrunning.deleteFeature, this._gaxModule.createDefaultBackoffSettings() @@ -966,7 +981,7 @@ export class GkeHubClient { options.otherArgs = options.otherArgs || {}; options.otherArgs.headers = options.otherArgs.headers || {}; options.otherArgs.headers['x-goog-request-params'] = - gax.routingHeader.fromParams({ + this._gaxModule.routingHeader.fromParams({ name: request.name || '', }); this.initialize(); @@ -992,11 +1007,12 @@ export class GkeHubClient { protos.google.cloud.gkehub.v1alpha.OperationMetadata > > { - const request = new operationsProtos.google.longrunning.GetOperationRequest( - {name} - ); + const request = + new this._gaxModule.operationsProtos.google.longrunning.GetOperationRequest( + {name} + ); const [operation] = await this.operationsClient.getOperation(request); - const decodeOperation = new gax.Operation( + const decodeOperation = new this._gaxModule.Operation( operation, this.descriptors.longrunning.updateFeature, this._gaxModule.createDefaultBackoffSettings() @@ -1123,7 +1139,7 @@ export class GkeHubClient { options.otherArgs = options.otherArgs || {}; options.otherArgs.headers = options.otherArgs.headers || {}; options.otherArgs.headers['x-goog-request-params'] = - gax.routingHeader.fromParams({ + this._gaxModule.routingHeader.fromParams({ parent: request.parent || '', }); this.initialize(); @@ -1186,7 +1202,7 @@ export class GkeHubClient { options.otherArgs = options.otherArgs || {}; options.otherArgs.headers = options.otherArgs.headers || {}; options.otherArgs.headers['x-goog-request-params'] = - gax.routingHeader.fromParams({ + this._gaxModule.routingHeader.fromParams({ parent: request.parent || '', }); const defaultCallSettings = this._defaults['listFeatures']; @@ -1258,7 +1274,7 @@ export class GkeHubClient { options.otherArgs = options.otherArgs || {}; options.otherArgs.headers = options.otherArgs.headers || {}; options.otherArgs.headers['x-goog-request-params'] = - gax.routingHeader.fromParams({ + this._gaxModule.routingHeader.fromParams({ parent: request.parent || '', }); const defaultCallSettings = this._defaults['listFeatures']; diff --git a/packages/google-cloud-gkehub/src/v1alpha2/gke_hub_client.ts b/packages/google-cloud-gkehub/src/v1alpha2/gke_hub_client.ts index e315ef2ba4d..7c883a00f13 100644 --- a/packages/google-cloud-gkehub/src/v1alpha2/gke_hub_client.ts +++ b/packages/google-cloud-gkehub/src/v1alpha2/gke_hub_client.ts @@ -17,8 +17,8 @@ // ** All changes to this file may be overwritten. ** /* global window */ -import * as gax from 'google-gax'; -import { +import type * as gax from 'google-gax'; +import type { Callback, CallOptions, Descriptors, @@ -28,7 +28,6 @@ import { PaginationCallback, GaxCall, } from 'google-gax'; - import {Transform} from 'stream'; import * as protos from '../../protos/protos'; import jsonProtos = require('../../protos/protos.json'); @@ -38,7 +37,6 @@ import jsonProtos = require('../../protos/protos.json'); * This file defines retry strategy and timeouts for all API methods in this library. */ import * as gapicConfig from './gke_hub_client_config.json'; -import {operationsProtos} from 'google-gax'; const version = require('../../../package.json').version; /** @@ -106,8 +104,18 @@ export class GkeHubClient { * Pass "rest" to use HTTP/1.1 REST API instead of gRPC. * For more information, please check the * {@link https://github.com/googleapis/gax-nodejs/blob/main/client-libraries.md#http11-rest-api-mode documentation}. + * @param {gax} [gaxInstance]: loaded instance of `google-gax`. Useful if you + * need to avoid loading the default gRPC version and want to use the fallback + * HTTP implementation. Load only fallback version and pass it to the constructor: + * ``` + * const gax = require('google-gax/build/src/fallback'); // avoids loading google-gax with gRPC + * const client = new GkeHubClient({fallback: 'rest'}, gax); + * ``` */ - constructor(opts?: ClientOptions) { + constructor( + opts?: ClientOptions, + gaxInstance?: typeof gax | typeof gax.fallback + ) { // Ensure that options include all the required fields. const staticMembers = this.constructor as typeof GkeHubClient; const servicePath = @@ -127,8 +135,13 @@ export class GkeHubClient { opts['scopes'] = staticMembers.scopes; } + // Load google-gax module synchronously if needed + if (!gaxInstance) { + gaxInstance = require('google-gax') as typeof gax; + } + // Choose either gRPC or proto-over-HTTP implementation of google-gax. - this._gaxModule = opts.fallback ? gax.fallback : gax; + this._gaxModule = opts.fallback ? gaxInstance.fallback : gaxInstance; // Create a `gaxGrpc` object, with any grpc-specific options sent to the client. this._gaxGrpc = new this._gaxModule.GrpcClient(opts); @@ -300,7 +313,7 @@ export class GkeHubClient { this.innerApiCalls = {}; // Add a warn function to the client constructor so it can be easily tested. - this.warn = gax.warn; + this.warn = this._gaxModule.warn; } /** @@ -515,7 +528,7 @@ export class GkeHubClient { options.otherArgs = options.otherArgs || {}; options.otherArgs.headers = options.otherArgs.headers || {}; options.otherArgs.headers['x-goog-request-params'] = - gax.routingHeader.fromParams({ + this._gaxModule.routingHeader.fromParams({ name: request.name || '', }); this.initialize(); @@ -638,7 +651,7 @@ export class GkeHubClient { options.otherArgs = options.otherArgs || {}; options.otherArgs.headers = options.otherArgs.headers || {}; options.otherArgs.headers['x-goog-request-params'] = - gax.routingHeader.fromParams({ + this._gaxModule.routingHeader.fromParams({ name: request.name || '', }); this.initialize(); @@ -741,7 +754,7 @@ export class GkeHubClient { options.otherArgs = options.otherArgs || {}; options.otherArgs.headers = options.otherArgs.headers || {}; options.otherArgs.headers['x-goog-request-params'] = - gax.routingHeader.fromParams({ + this._gaxModule.routingHeader.fromParams({ project: request.project || '', }); this.initialize(); @@ -862,7 +875,7 @@ export class GkeHubClient { options.otherArgs = options.otherArgs || {}; options.otherArgs.headers = options.otherArgs.headers || {}; options.otherArgs.headers['x-goog-request-params'] = - gax.routingHeader.fromParams({ + this._gaxModule.routingHeader.fromParams({ parent: request.parent || '', }); this.initialize(); @@ -888,11 +901,12 @@ export class GkeHubClient { protos.google.cloud.gkehub.v1alpha2.OperationMetadata > > { - const request = new operationsProtos.google.longrunning.GetOperationRequest( - {name} - ); + const request = + new this._gaxModule.operationsProtos.google.longrunning.GetOperationRequest( + {name} + ); const [operation] = await this.operationsClient.getOperation(request); - const decodeOperation = new gax.Operation( + const decodeOperation = new this._gaxModule.Operation( operation, this.descriptors.longrunning.createMembership, this._gaxModule.createDefaultBackoffSettings() @@ -1004,7 +1018,7 @@ export class GkeHubClient { options.otherArgs = options.otherArgs || {}; options.otherArgs.headers = options.otherArgs.headers || {}; options.otherArgs.headers['x-goog-request-params'] = - gax.routingHeader.fromParams({ + this._gaxModule.routingHeader.fromParams({ name: request.name || '', }); this.initialize(); @@ -1030,11 +1044,12 @@ export class GkeHubClient { protos.google.cloud.gkehub.v1alpha2.OperationMetadata > > { - const request = new operationsProtos.google.longrunning.GetOperationRequest( - {name} - ); + const request = + new this._gaxModule.operationsProtos.google.longrunning.GetOperationRequest( + {name} + ); const [operation] = await this.operationsClient.getOperation(request); - const decodeOperation = new gax.Operation( + const decodeOperation = new this._gaxModule.Operation( operation, this.descriptors.longrunning.deleteMembership, this._gaxModule.createDefaultBackoffSettings() @@ -1153,7 +1168,7 @@ export class GkeHubClient { options.otherArgs = options.otherArgs || {}; options.otherArgs.headers = options.otherArgs.headers || {}; options.otherArgs.headers['x-goog-request-params'] = - gax.routingHeader.fromParams({ + this._gaxModule.routingHeader.fromParams({ name: request.name || '', }); this.initialize(); @@ -1179,11 +1194,12 @@ export class GkeHubClient { protos.google.cloud.gkehub.v1alpha2.OperationMetadata > > { - const request = new operationsProtos.google.longrunning.GetOperationRequest( - {name} - ); + const request = + new this._gaxModule.operationsProtos.google.longrunning.GetOperationRequest( + {name} + ); const [operation] = await this.operationsClient.getOperation(request); - const decodeOperation = new gax.Operation( + const decodeOperation = new this._gaxModule.Operation( operation, this.descriptors.longrunning.updateMembership, this._gaxModule.createDefaultBackoffSettings() @@ -1314,7 +1330,7 @@ export class GkeHubClient { options.otherArgs = options.otherArgs || {}; options.otherArgs.headers = options.otherArgs.headers || {}; options.otherArgs.headers['x-goog-request-params'] = - gax.routingHeader.fromParams({ + this._gaxModule.routingHeader.fromParams({ parent: request.parent || '', }); this.initialize(); @@ -1381,7 +1397,7 @@ export class GkeHubClient { options.otherArgs = options.otherArgs || {}; options.otherArgs.headers = options.otherArgs.headers || {}; options.otherArgs.headers['x-goog-request-params'] = - gax.routingHeader.fromParams({ + this._gaxModule.routingHeader.fromParams({ parent: request.parent || '', }); const defaultCallSettings = this._defaults['listMemberships']; @@ -1457,7 +1473,7 @@ export class GkeHubClient { options.otherArgs = options.otherArgs || {}; options.otherArgs.headers = options.otherArgs.headers || {}; options.otherArgs.headers['x-goog-request-params'] = - gax.routingHeader.fromParams({ + this._gaxModule.routingHeader.fromParams({ parent: request.parent || '', }); const defaultCallSettings = this._defaults['listMemberships']; diff --git a/packages/google-cloud-gkehub/src/v1beta/gke_hub_client.ts b/packages/google-cloud-gkehub/src/v1beta/gke_hub_client.ts index f4211ca047b..6cdab13c38e 100644 --- a/packages/google-cloud-gkehub/src/v1beta/gke_hub_client.ts +++ b/packages/google-cloud-gkehub/src/v1beta/gke_hub_client.ts @@ -17,8 +17,8 @@ // ** All changes to this file may be overwritten. ** /* global window */ -import * as gax from 'google-gax'; -import { +import type * as gax from 'google-gax'; +import type { Callback, CallOptions, Descriptors, @@ -28,7 +28,6 @@ import { PaginationCallback, GaxCall, } from 'google-gax'; - import {Transform} from 'stream'; import * as protos from '../../protos/protos'; import jsonProtos = require('../../protos/protos.json'); @@ -38,7 +37,6 @@ import jsonProtos = require('../../protos/protos.json'); * This file defines retry strategy and timeouts for all API methods in this library. */ import * as gapicConfig from './gke_hub_client_config.json'; -import {operationsProtos} from 'google-gax'; const version = require('../../../package.json').version; /** @@ -112,8 +110,18 @@ export class GkeHubClient { * Pass "rest" to use HTTP/1.1 REST API instead of gRPC. * For more information, please check the * {@link https://github.com/googleapis/gax-nodejs/blob/main/client-libraries.md#http11-rest-api-mode documentation}. + * @param {gax} [gaxInstance]: loaded instance of `google-gax`. Useful if you + * need to avoid loading the default gRPC version and want to use the fallback + * HTTP implementation. Load only fallback version and pass it to the constructor: + * ``` + * const gax = require('google-gax/build/src/fallback'); // avoids loading google-gax with gRPC + * const client = new GkeHubClient({fallback: 'rest'}, gax); + * ``` */ - constructor(opts?: ClientOptions) { + constructor( + opts?: ClientOptions, + gaxInstance?: typeof gax | typeof gax.fallback + ) { // Ensure that options include all the required fields. const staticMembers = this.constructor as typeof GkeHubClient; const servicePath = @@ -133,8 +141,13 @@ export class GkeHubClient { opts['scopes'] = staticMembers.scopes; } + // Load google-gax module synchronously if needed + if (!gaxInstance) { + gaxInstance = require('google-gax') as typeof gax; + } + // Choose either gRPC or proto-over-HTTP implementation of google-gax. - this._gaxModule = opts.fallback ? gax.fallback : gax; + this._gaxModule = opts.fallback ? gaxInstance.fallback : gaxInstance; // Create a `gaxGrpc` object, with any grpc-specific options sent to the client. this._gaxGrpc = new this._gaxModule.GrpcClient(opts); @@ -317,7 +330,7 @@ export class GkeHubClient { this.innerApiCalls = {}; // Add a warn function to the client constructor so it can be easily tested. - this.warn = gax.warn; + this.warn = this._gaxModule.warn; } /** @@ -524,7 +537,7 @@ export class GkeHubClient { options.otherArgs = options.otherArgs || {}; options.otherArgs.headers = options.otherArgs.headers || {}; options.otherArgs.headers['x-goog-request-params'] = - gax.routingHeader.fromParams({ + this._gaxModule.routingHeader.fromParams({ name: request.name || '', }); this.initialize(); @@ -647,7 +660,7 @@ export class GkeHubClient { options.otherArgs = options.otherArgs || {}; options.otherArgs.headers = options.otherArgs.headers || {}; options.otherArgs.headers['x-goog-request-params'] = - gax.routingHeader.fromParams({ + this._gaxModule.routingHeader.fromParams({ parent: request.parent || '', }); this.initialize(); @@ -673,11 +686,12 @@ export class GkeHubClient { protos.google.cloud.gkehub.v1beta.OperationMetadata > > { - const request = new operationsProtos.google.longrunning.GetOperationRequest( - {name} - ); + const request = + new this._gaxModule.operationsProtos.google.longrunning.GetOperationRequest( + {name} + ); const [operation] = await this.operationsClient.getOperation(request); - const decodeOperation = new gax.Operation( + const decodeOperation = new this._gaxModule.Operation( operation, this.descriptors.longrunning.createFeature, this._gaxModule.createDefaultBackoffSettings() @@ -803,7 +817,7 @@ export class GkeHubClient { options.otherArgs = options.otherArgs || {}; options.otherArgs.headers = options.otherArgs.headers || {}; options.otherArgs.headers['x-goog-request-params'] = - gax.routingHeader.fromParams({ + this._gaxModule.routingHeader.fromParams({ name: request.name || '', }); this.initialize(); @@ -829,11 +843,12 @@ export class GkeHubClient { protos.google.cloud.gkehub.v1beta.OperationMetadata > > { - const request = new operationsProtos.google.longrunning.GetOperationRequest( - {name} - ); + const request = + new this._gaxModule.operationsProtos.google.longrunning.GetOperationRequest( + {name} + ); const [operation] = await this.operationsClient.getOperation(request); - const decodeOperation = new gax.Operation( + const decodeOperation = new this._gaxModule.Operation( operation, this.descriptors.longrunning.deleteFeature, this._gaxModule.createDefaultBackoffSettings() @@ -966,7 +981,7 @@ export class GkeHubClient { options.otherArgs = options.otherArgs || {}; options.otherArgs.headers = options.otherArgs.headers || {}; options.otherArgs.headers['x-goog-request-params'] = - gax.routingHeader.fromParams({ + this._gaxModule.routingHeader.fromParams({ name: request.name || '', }); this.initialize(); @@ -992,11 +1007,12 @@ export class GkeHubClient { protos.google.cloud.gkehub.v1beta.OperationMetadata > > { - const request = new operationsProtos.google.longrunning.GetOperationRequest( - {name} - ); + const request = + new this._gaxModule.operationsProtos.google.longrunning.GetOperationRequest( + {name} + ); const [operation] = await this.operationsClient.getOperation(request); - const decodeOperation = new gax.Operation( + const decodeOperation = new this._gaxModule.Operation( operation, this.descriptors.longrunning.updateFeature, this._gaxModule.createDefaultBackoffSettings() @@ -1123,7 +1139,7 @@ export class GkeHubClient { options.otherArgs = options.otherArgs || {}; options.otherArgs.headers = options.otherArgs.headers || {}; options.otherArgs.headers['x-goog-request-params'] = - gax.routingHeader.fromParams({ + this._gaxModule.routingHeader.fromParams({ parent: request.parent || '', }); this.initialize(); @@ -1186,7 +1202,7 @@ export class GkeHubClient { options.otherArgs = options.otherArgs || {}; options.otherArgs.headers = options.otherArgs.headers || {}; options.otherArgs.headers['x-goog-request-params'] = - gax.routingHeader.fromParams({ + this._gaxModule.routingHeader.fromParams({ parent: request.parent || '', }); const defaultCallSettings = this._defaults['listFeatures']; @@ -1258,7 +1274,7 @@ export class GkeHubClient { options.otherArgs = options.otherArgs || {}; options.otherArgs.headers = options.otherArgs.headers || {}; options.otherArgs.headers['x-goog-request-params'] = - gax.routingHeader.fromParams({ + this._gaxModule.routingHeader.fromParams({ parent: request.parent || '', }); const defaultCallSettings = this._defaults['listFeatures']; diff --git a/packages/google-cloud-gkehub/src/v1beta1/gke_hub_membership_service_client.ts b/packages/google-cloud-gkehub/src/v1beta1/gke_hub_membership_service_client.ts index d3bfc73408e..cfe355f8787 100644 --- a/packages/google-cloud-gkehub/src/v1beta1/gke_hub_membership_service_client.ts +++ b/packages/google-cloud-gkehub/src/v1beta1/gke_hub_membership_service_client.ts @@ -17,8 +17,8 @@ // ** All changes to this file may be overwritten. ** /* global window */ -import * as gax from 'google-gax'; -import { +import type * as gax from 'google-gax'; +import type { Callback, CallOptions, Descriptors, @@ -32,7 +32,6 @@ import { LocationsClient, LocationProtos, } from 'google-gax'; - import {Transform} from 'stream'; import * as protos from '../../protos/protos'; import jsonProtos = require('../../protos/protos.json'); @@ -42,7 +41,6 @@ import jsonProtos = require('../../protos/protos.json'); * This file defines retry strategy and timeouts for all API methods in this library. */ import * as gapicConfig from './gke_hub_membership_service_client_config.json'; -import {operationsProtos} from 'google-gax'; const version = require('../../../package.json').version; /** @@ -112,8 +110,18 @@ export class GkeHubMembershipServiceClient { * Pass "rest" to use HTTP/1.1 REST API instead of gRPC. * For more information, please check the * {@link https://github.com/googleapis/gax-nodejs/blob/main/client-libraries.md#http11-rest-api-mode documentation}. + * @param {gax} [gaxInstance]: loaded instance of `google-gax`. Useful if you + * need to avoid loading the default gRPC version and want to use the fallback + * HTTP implementation. Load only fallback version and pass it to the constructor: + * ``` + * const gax = require('google-gax/build/src/fallback'); // avoids loading google-gax with gRPC + * const client = new GkeHubMembershipServiceClient({fallback: 'rest'}, gax); + * ``` */ - constructor(opts?: ClientOptions) { + constructor( + opts?: ClientOptions, + gaxInstance?: typeof gax | typeof gax.fallback + ) { // Ensure that options include all the required fields. const staticMembers = this .constructor as typeof GkeHubMembershipServiceClient; @@ -134,8 +142,13 @@ export class GkeHubMembershipServiceClient { opts['scopes'] = staticMembers.scopes; } + // Load google-gax module synchronously if needed + if (!gaxInstance) { + gaxInstance = require('google-gax') as typeof gax; + } + // Choose either gRPC or proto-over-HTTP implementation of google-gax. - this._gaxModule = opts.fallback ? gax.fallback : gax; + this._gaxModule = opts.fallback ? gaxInstance.fallback : gaxInstance; // Create a `gaxGrpc` object, with any grpc-specific options sent to the client. this._gaxGrpc = new this._gaxModule.GrpcClient(opts); @@ -156,9 +169,12 @@ export class GkeHubMembershipServiceClient { if (servicePath === staticMembers.servicePath) { this.auth.defaultScopes = staticMembers.scopes; } - this.iamClient = new IamClient(this._gaxGrpc, opts); + this.iamClient = new this._gaxModule.IamClient(this._gaxGrpc, opts); - this.locationsClient = new LocationsClient(this._gaxGrpc, opts); + this.locationsClient = new this._gaxModule.LocationsClient( + this._gaxGrpc, + opts + ); // Determine the client header string. const clientHeader = [`gax/${this._gaxModule.version}`, `gapic/${version}`]; @@ -310,7 +326,7 @@ export class GkeHubMembershipServiceClient { this.innerApiCalls = {}; // Add a warn function to the client constructor so it can be easily tested. - this.warn = gax.warn; + this.warn = this._gaxModule.warn; } /** @@ -527,7 +543,7 @@ export class GkeHubMembershipServiceClient { options.otherArgs = options.otherArgs || {}; options.otherArgs.headers = options.otherArgs.headers || {}; options.otherArgs.headers['x-goog-request-params'] = - gax.routingHeader.fromParams({ + this._gaxModule.routingHeader.fromParams({ name: request.name || '', }); this.initialize(); @@ -640,7 +656,7 @@ export class GkeHubMembershipServiceClient { options.otherArgs = options.otherArgs || {}; options.otherArgs.headers = options.otherArgs.headers || {}; options.otherArgs.headers['x-goog-request-params'] = - gax.routingHeader.fromParams({ + this._gaxModule.routingHeader.fromParams({ name: request.name || '', }); this.initialize(); @@ -749,7 +765,7 @@ export class GkeHubMembershipServiceClient { options.otherArgs = options.otherArgs || {}; options.otherArgs.headers = options.otherArgs.headers || {}; options.otherArgs.headers['x-goog-request-params'] = - gax.routingHeader.fromParams({ + this._gaxModule.routingHeader.fromParams({ parent: request.parent || '', }); this.initialize(); @@ -866,7 +882,7 @@ export class GkeHubMembershipServiceClient { options.otherArgs = options.otherArgs || {}; options.otherArgs.headers = options.otherArgs.headers || {}; options.otherArgs.headers['x-goog-request-params'] = - gax.routingHeader.fromParams({ + this._gaxModule.routingHeader.fromParams({ name: request.name || '', }); this.initialize(); @@ -1005,7 +1021,7 @@ export class GkeHubMembershipServiceClient { options.otherArgs = options.otherArgs || {}; options.otherArgs.headers = options.otherArgs.headers || {}; options.otherArgs.headers['x-goog-request-params'] = - gax.routingHeader.fromParams({ + this._gaxModule.routingHeader.fromParams({ parent: request.parent || '', }); this.initialize(); @@ -1031,11 +1047,12 @@ export class GkeHubMembershipServiceClient { protos.google.cloud.gkehub.v1beta1.OperationMetadata > > { - const request = new operationsProtos.google.longrunning.GetOperationRequest( - {name} - ); + const request = + new this._gaxModule.operationsProtos.google.longrunning.GetOperationRequest( + {name} + ); const [operation] = await this.operationsClient.getOperation(request); - const decodeOperation = new gax.Operation( + const decodeOperation = new this._gaxModule.Operation( operation, this.descriptors.longrunning.createMembership, this._gaxModule.createDefaultBackoffSettings() @@ -1161,7 +1178,7 @@ export class GkeHubMembershipServiceClient { options.otherArgs = options.otherArgs || {}; options.otherArgs.headers = options.otherArgs.headers || {}; options.otherArgs.headers['x-goog-request-params'] = - gax.routingHeader.fromParams({ + this._gaxModule.routingHeader.fromParams({ name: request.name || '', }); this.initialize(); @@ -1187,11 +1204,12 @@ export class GkeHubMembershipServiceClient { protos.google.cloud.gkehub.v1beta1.OperationMetadata > > { - const request = new operationsProtos.google.longrunning.GetOperationRequest( - {name} - ); + const request = + new this._gaxModule.operationsProtos.google.longrunning.GetOperationRequest( + {name} + ); const [operation] = await this.operationsClient.getOperation(request); - const decodeOperation = new gax.Operation( + const decodeOperation = new this._gaxModule.Operation( operation, this.descriptors.longrunning.deleteMembership, this._gaxModule.createDefaultBackoffSettings() @@ -1325,7 +1343,7 @@ export class GkeHubMembershipServiceClient { options.otherArgs = options.otherArgs || {}; options.otherArgs.headers = options.otherArgs.headers || {}; options.otherArgs.headers['x-goog-request-params'] = - gax.routingHeader.fromParams({ + this._gaxModule.routingHeader.fromParams({ name: request.name || '', }); this.initialize(); @@ -1351,11 +1369,12 @@ export class GkeHubMembershipServiceClient { protos.google.cloud.gkehub.v1beta1.OperationMetadata > > { - const request = new operationsProtos.google.longrunning.GetOperationRequest( - {name} - ); + const request = + new this._gaxModule.operationsProtos.google.longrunning.GetOperationRequest( + {name} + ); const [operation] = await this.operationsClient.getOperation(request); - const decodeOperation = new gax.Operation( + const decodeOperation = new this._gaxModule.Operation( operation, this.descriptors.longrunning.updateMembership, this._gaxModule.createDefaultBackoffSettings() @@ -1486,7 +1505,7 @@ export class GkeHubMembershipServiceClient { options.otherArgs = options.otherArgs || {}; options.otherArgs.headers = options.otherArgs.headers || {}; options.otherArgs.headers['x-goog-request-params'] = - gax.routingHeader.fromParams({ + this._gaxModule.routingHeader.fromParams({ parent: request.parent || '', }); this.initialize(); @@ -1553,7 +1572,7 @@ export class GkeHubMembershipServiceClient { options.otherArgs = options.otherArgs || {}; options.otherArgs.headers = options.otherArgs.headers || {}; options.otherArgs.headers['x-goog-request-params'] = - gax.routingHeader.fromParams({ + this._gaxModule.routingHeader.fromParams({ parent: request.parent || '', }); const defaultCallSettings = this._defaults['listMemberships']; @@ -1629,7 +1648,7 @@ export class GkeHubMembershipServiceClient { options.otherArgs = options.otherArgs || {}; options.otherArgs.headers = options.otherArgs.headers || {}; options.otherArgs.headers['x-goog-request-params'] = - gax.routingHeader.fromParams({ + this._gaxModule.routingHeader.fromParams({ parent: request.parent || '', }); const defaultCallSettings = this._defaults['listMemberships']; From b8bcf239f81ddaa839471ecda86aa53026fc09bd Mon Sep 17 00:00:00 2001 From: "release-please[bot]" <55107282+release-please[bot]@users.noreply.github.com> Date: Wed, 7 Sep 2022 17:57:21 -0400 Subject: [PATCH 85/92] chore(main): release 3.2.1 (#165) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * chore(main): release 3.2.1 * 🦉 Updates from OwlBot post-processor See https://github.com/googleapis/repo-automation-bots/blob/main/packages/owl-bot/README.md Co-authored-by: release-please[bot] <55107282+release-please[bot]@users.noreply.github.com> Co-authored-by: Owl Bot --- packages/google-cloud-gkehub/CHANGELOG.md | 11 +++++++++++ packages/google-cloud-gkehub/package.json | 2 +- .../v1/snippet_metadata.google.cloud.gkehub.v1.json | 2 +- .../snippet_metadata.google.cloud.gkehub.v1alpha.json | 2 +- ...snippet_metadata.google.cloud.gkehub.v1alpha2.json | 2 +- .../snippet_metadata.google.cloud.gkehub.v1beta.json | 2 +- .../snippet_metadata.google.cloud.gkehub.v1beta1.json | 2 +- packages/google-cloud-gkehub/samples/package.json | 2 +- 8 files changed, 18 insertions(+), 7 deletions(-) diff --git a/packages/google-cloud-gkehub/CHANGELOG.md b/packages/google-cloud-gkehub/CHANGELOG.md index c78c432b22c..7b7109da9e4 100644 --- a/packages/google-cloud-gkehub/CHANGELOG.md +++ b/packages/google-cloud-gkehub/CHANGELOG.md @@ -1,5 +1,16 @@ # Changelog +## [3.2.1](https://github.com/googleapis/nodejs-gke-hub/compare/v3.2.0...v3.2.1) (2022-09-01) + + +### Bug Fixes + +* Allow passing gax instance to client constructor ([#168](https://github.com/googleapis/nodejs-gke-hub/issues/168)) ([2de7b16](https://github.com/googleapis/nodejs-gke-hub/commit/2de7b1638a74487c342c4064f15aa089deb50a8e)) +* Better support for fallback mode ([#163](https://github.com/googleapis/nodejs-gke-hub/issues/163)) ([4f8a42c](https://github.com/googleapis/nodejs-gke-hub/commit/4f8a42cac167b7cd8616e9cde6472e1e679ec0a2)) +* Change import long to require ([#164](https://github.com/googleapis/nodejs-gke-hub/issues/164)) ([d1f6564](https://github.com/googleapis/nodejs-gke-hub/commit/d1f65647389881648bd27d5ca020941ed7053792)) +* Do not import the whole google-gax from proto JS ([#1553](https://github.com/googleapis/nodejs-gke-hub/issues/1553)) ([#167](https://github.com/googleapis/nodejs-gke-hub/issues/167)) ([4843067](https://github.com/googleapis/nodejs-gke-hub/commit/484306762d3eff733aa68c077ce6092190e8b22b)) +* Remove pip install statements ([#1546](https://github.com/googleapis/nodejs-gke-hub/issues/1546)) ([#166](https://github.com/googleapis/nodejs-gke-hub/issues/166)) ([be085a0](https://github.com/googleapis/nodejs-gke-hub/commit/be085a01bf5a9648c43d57680364791d0b84547e)) + ## [3.2.0](https://github.com/googleapis/nodejs-gke-hub/compare/v3.1.0...v3.2.0) (2022-06-30) diff --git a/packages/google-cloud-gkehub/package.json b/packages/google-cloud-gkehub/package.json index 64de1d0da2a..c9049897d22 100644 --- a/packages/google-cloud-gkehub/package.json +++ b/packages/google-cloud-gkehub/package.json @@ -1,6 +1,6 @@ { "name": "@google-cloud/gke-hub", - "version": "3.2.0", + "version": "3.2.1", "description": "Gkehub client for Node.js", "repository": "googleapis/nodejs-gke-hub", "license": "Apache-2.0", diff --git a/packages/google-cloud-gkehub/samples/generated/v1/snippet_metadata.google.cloud.gkehub.v1.json b/packages/google-cloud-gkehub/samples/generated/v1/snippet_metadata.google.cloud.gkehub.v1.json index 491a3dc4cf0..c892d168d47 100644 --- a/packages/google-cloud-gkehub/samples/generated/v1/snippet_metadata.google.cloud.gkehub.v1.json +++ b/packages/google-cloud-gkehub/samples/generated/v1/snippet_metadata.google.cloud.gkehub.v1.json @@ -1,7 +1,7 @@ { "clientLibrary": { "name": "nodejs-gkehub", - "version": "3.2.0", + "version": "3.2.1", "language": "TYPESCRIPT", "apis": [ { diff --git a/packages/google-cloud-gkehub/samples/generated/v1alpha/snippet_metadata.google.cloud.gkehub.v1alpha.json b/packages/google-cloud-gkehub/samples/generated/v1alpha/snippet_metadata.google.cloud.gkehub.v1alpha.json index 644b2572463..f4de5c8d685 100644 --- a/packages/google-cloud-gkehub/samples/generated/v1alpha/snippet_metadata.google.cloud.gkehub.v1alpha.json +++ b/packages/google-cloud-gkehub/samples/generated/v1alpha/snippet_metadata.google.cloud.gkehub.v1alpha.json @@ -1,7 +1,7 @@ { "clientLibrary": { "name": "nodejs-gkehub", - "version": "3.2.0", + "version": "3.2.1", "language": "TYPESCRIPT", "apis": [ { diff --git a/packages/google-cloud-gkehub/samples/generated/v1alpha2/snippet_metadata.google.cloud.gkehub.v1alpha2.json b/packages/google-cloud-gkehub/samples/generated/v1alpha2/snippet_metadata.google.cloud.gkehub.v1alpha2.json index b5a196c9f93..0b50c9b8836 100644 --- a/packages/google-cloud-gkehub/samples/generated/v1alpha2/snippet_metadata.google.cloud.gkehub.v1alpha2.json +++ b/packages/google-cloud-gkehub/samples/generated/v1alpha2/snippet_metadata.google.cloud.gkehub.v1alpha2.json @@ -1,7 +1,7 @@ { "clientLibrary": { "name": "nodejs-gkehub", - "version": "3.2.0", + "version": "3.2.1", "language": "TYPESCRIPT", "apis": [ { diff --git a/packages/google-cloud-gkehub/samples/generated/v1beta/snippet_metadata.google.cloud.gkehub.v1beta.json b/packages/google-cloud-gkehub/samples/generated/v1beta/snippet_metadata.google.cloud.gkehub.v1beta.json index 023bf63dcf5..ff0f297bf96 100644 --- a/packages/google-cloud-gkehub/samples/generated/v1beta/snippet_metadata.google.cloud.gkehub.v1beta.json +++ b/packages/google-cloud-gkehub/samples/generated/v1beta/snippet_metadata.google.cloud.gkehub.v1beta.json @@ -1,7 +1,7 @@ { "clientLibrary": { "name": "nodejs-gkehub", - "version": "3.2.0", + "version": "3.2.1", "language": "TYPESCRIPT", "apis": [ { diff --git a/packages/google-cloud-gkehub/samples/generated/v1beta1/snippet_metadata.google.cloud.gkehub.v1beta1.json b/packages/google-cloud-gkehub/samples/generated/v1beta1/snippet_metadata.google.cloud.gkehub.v1beta1.json index bf9f08bb04a..927b55530f0 100644 --- a/packages/google-cloud-gkehub/samples/generated/v1beta1/snippet_metadata.google.cloud.gkehub.v1beta1.json +++ b/packages/google-cloud-gkehub/samples/generated/v1beta1/snippet_metadata.google.cloud.gkehub.v1beta1.json @@ -1,7 +1,7 @@ { "clientLibrary": { "name": "nodejs-gkehub", - "version": "3.2.0", + "version": "3.2.1", "language": "TYPESCRIPT", "apis": [ { diff --git a/packages/google-cloud-gkehub/samples/package.json b/packages/google-cloud-gkehub/samples/package.json index aa68474773d..c2e3160a4f9 100644 --- a/packages/google-cloud-gkehub/samples/package.json +++ b/packages/google-cloud-gkehub/samples/package.json @@ -13,7 +13,7 @@ "test": "c8 mocha --timeout 600000 test/*.js" }, "dependencies": { - "@google-cloud/gke-hub": "^3.2.0" + "@google-cloud/gke-hub": "^3.2.1" }, "devDependencies": { "c8": "^7.1.0", From c150dcbe11773ba17376ec3fb4330e5e86c4aa02 Mon Sep 17 00:00:00 2001 From: "gcf-owl-bot[bot]" <78513119+gcf-owl-bot[bot]@users.noreply.github.com> Date: Wed, 14 Sep 2022 22:32:28 +0000 Subject: [PATCH 86/92] fix: preserve default values in x-goog-request-params header (#169) - [ ] Regenerate this pull request now. PiperOrigin-RevId: 474338479 Source-Link: https://github.com/googleapis/googleapis/commit/d5d35e0353b59719e8917103b1bc7df2782bf6ba Source-Link: https://github.com/googleapis/googleapis-gen/commit/efcd3f93962a103f68f003e2a1eecde6fa216a27 Copy-Tag: eyJwIjoiLmdpdGh1Yi8uT3dsQm90LnlhbWwiLCJoIjoiZWZjZDNmOTM5NjJhMTAzZjY4ZjAwM2UyYTFlZWNkZTZmYTIxNmEyNyJ9 --- .../src/v1/gke_hub_client.ts | 30 +- .../src/v1alpha/gke_hub_client.ts | 14 +- .../src/v1alpha2/gke_hub_client.ts | 18 +- .../src/v1beta/gke_hub_client.ts | 14 +- .../gke_hub_membership_service_client.ts | 20 +- ...apic_gke_hub_membership_service_v1beta1.ts | 862 ++++++------ .../test/gapic_gke_hub_v1.ts | 1223 +++++++++-------- .../test/gapic_gke_hub_v1alpha.ts | 570 ++++---- .../test/gapic_gke_hub_v1alpha2.ts | 754 +++++----- .../test/gapic_gke_hub_v1beta.ts | 570 ++++---- 10 files changed, 2077 insertions(+), 1998 deletions(-) diff --git a/packages/google-cloud-gkehub/src/v1/gke_hub_client.ts b/packages/google-cloud-gkehub/src/v1/gke_hub_client.ts index fb7183df669..4e3d2c0a4a1 100644 --- a/packages/google-cloud-gkehub/src/v1/gke_hub_client.ts +++ b/packages/google-cloud-gkehub/src/v1/gke_hub_client.ts @@ -591,7 +591,7 @@ export class GkeHubClient { options.otherArgs.headers = options.otherArgs.headers || {}; options.otherArgs.headers['x-goog-request-params'] = this._gaxModule.routingHeader.fromParams({ - name: request.name || '', + name: request.name ?? '', }); this.initialize(); return this.innerApiCalls.getMembership(request, options, callback); @@ -675,7 +675,7 @@ export class GkeHubClient { options.otherArgs.headers = options.otherArgs.headers || {}; options.otherArgs.headers['x-goog-request-params'] = this._gaxModule.routingHeader.fromParams({ - name: request.name || '', + name: request.name ?? '', }); this.initialize(); return this.innerApiCalls.getFeature(request, options, callback); @@ -792,7 +792,7 @@ export class GkeHubClient { options.otherArgs.headers = options.otherArgs.headers || {}; options.otherArgs.headers['x-goog-request-params'] = this._gaxModule.routingHeader.fromParams({ - name: request.name || '', + name: request.name ?? '', }); this.initialize(); return this.innerApiCalls.generateConnectManifest( @@ -931,7 +931,7 @@ export class GkeHubClient { options.otherArgs.headers = options.otherArgs.headers || {}; options.otherArgs.headers['x-goog-request-params'] = this._gaxModule.routingHeader.fromParams({ - parent: request.parent || '', + parent: request.parent ?? '', }); this.initialize(); return this.innerApiCalls.createMembership(request, options, callback); @@ -1088,7 +1088,7 @@ export class GkeHubClient { options.otherArgs.headers = options.otherArgs.headers || {}; options.otherArgs.headers['x-goog-request-params'] = this._gaxModule.routingHeader.fromParams({ - parent: request.parent || '', + parent: request.parent ?? '', }); this.initialize(); return this.innerApiCalls.createFeature(request, options, callback); @@ -1245,7 +1245,7 @@ export class GkeHubClient { options.otherArgs.headers = options.otherArgs.headers || {}; options.otherArgs.headers['x-goog-request-params'] = this._gaxModule.routingHeader.fromParams({ - name: request.name || '', + name: request.name ?? '', }); this.initialize(); return this.innerApiCalls.deleteMembership(request, options, callback); @@ -1402,7 +1402,7 @@ export class GkeHubClient { options.otherArgs.headers = options.otherArgs.headers || {}; options.otherArgs.headers['x-goog-request-params'] = this._gaxModule.routingHeader.fromParams({ - name: request.name || '', + name: request.name ?? '', }); this.initialize(); return this.innerApiCalls.deleteFeature(request, options, callback); @@ -1566,7 +1566,7 @@ export class GkeHubClient { options.otherArgs.headers = options.otherArgs.headers || {}; options.otherArgs.headers['x-goog-request-params'] = this._gaxModule.routingHeader.fromParams({ - name: request.name || '', + name: request.name ?? '', }); this.initialize(); return this.innerApiCalls.updateMembership(request, options, callback); @@ -1730,7 +1730,7 @@ export class GkeHubClient { options.otherArgs.headers = options.otherArgs.headers || {}; options.otherArgs.headers['x-goog-request-params'] = this._gaxModule.routingHeader.fromParams({ - name: request.name || '', + name: request.name ?? '', }); this.initialize(); return this.innerApiCalls.updateFeature(request, options, callback); @@ -1886,7 +1886,7 @@ export class GkeHubClient { options.otherArgs.headers = options.otherArgs.headers || {}; options.otherArgs.headers['x-goog-request-params'] = this._gaxModule.routingHeader.fromParams({ - parent: request.parent || '', + parent: request.parent ?? '', }); this.initialize(); return this.innerApiCalls.listMemberships(request, options, callback); @@ -1953,7 +1953,7 @@ export class GkeHubClient { options.otherArgs.headers = options.otherArgs.headers || {}; options.otherArgs.headers['x-goog-request-params'] = this._gaxModule.routingHeader.fromParams({ - parent: request.parent || '', + parent: request.parent ?? '', }); const defaultCallSettings = this._defaults['listMemberships']; const callSettings = defaultCallSettings.merge(options); @@ -2029,7 +2029,7 @@ export class GkeHubClient { options.otherArgs.headers = options.otherArgs.headers || {}; options.otherArgs.headers['x-goog-request-params'] = this._gaxModule.routingHeader.fromParams({ - parent: request.parent || '', + parent: request.parent ?? '', }); const defaultCallSettings = this._defaults['listMemberships']; const callSettings = defaultCallSettings.merge(options); @@ -2152,7 +2152,7 @@ export class GkeHubClient { options.otherArgs.headers = options.otherArgs.headers || {}; options.otherArgs.headers['x-goog-request-params'] = this._gaxModule.routingHeader.fromParams({ - parent: request.parent || '', + parent: request.parent ?? '', }); this.initialize(); return this.innerApiCalls.listFeatures(request, options, callback); @@ -2215,7 +2215,7 @@ export class GkeHubClient { options.otherArgs.headers = options.otherArgs.headers || {}; options.otherArgs.headers['x-goog-request-params'] = this._gaxModule.routingHeader.fromParams({ - parent: request.parent || '', + parent: request.parent ?? '', }); const defaultCallSettings = this._defaults['listFeatures']; const callSettings = defaultCallSettings.merge(options); @@ -2287,7 +2287,7 @@ export class GkeHubClient { options.otherArgs.headers = options.otherArgs.headers || {}; options.otherArgs.headers['x-goog-request-params'] = this._gaxModule.routingHeader.fromParams({ - parent: request.parent || '', + parent: request.parent ?? '', }); const defaultCallSettings = this._defaults['listFeatures']; const callSettings = defaultCallSettings.merge(options); diff --git a/packages/google-cloud-gkehub/src/v1alpha/gke_hub_client.ts b/packages/google-cloud-gkehub/src/v1alpha/gke_hub_client.ts index 5c76141e35c..29c47631d87 100644 --- a/packages/google-cloud-gkehub/src/v1alpha/gke_hub_client.ts +++ b/packages/google-cloud-gkehub/src/v1alpha/gke_hub_client.ts @@ -538,7 +538,7 @@ export class GkeHubClient { options.otherArgs.headers = options.otherArgs.headers || {}; options.otherArgs.headers['x-goog-request-params'] = this._gaxModule.routingHeader.fromParams({ - name: request.name || '', + name: request.name ?? '', }); this.initialize(); return this.innerApiCalls.getFeature(request, options, callback); @@ -661,7 +661,7 @@ export class GkeHubClient { options.otherArgs.headers = options.otherArgs.headers || {}; options.otherArgs.headers['x-goog-request-params'] = this._gaxModule.routingHeader.fromParams({ - parent: request.parent || '', + parent: request.parent ?? '', }); this.initialize(); return this.innerApiCalls.createFeature(request, options, callback); @@ -818,7 +818,7 @@ export class GkeHubClient { options.otherArgs.headers = options.otherArgs.headers || {}; options.otherArgs.headers['x-goog-request-params'] = this._gaxModule.routingHeader.fromParams({ - name: request.name || '', + name: request.name ?? '', }); this.initialize(); return this.innerApiCalls.deleteFeature(request, options, callback); @@ -982,7 +982,7 @@ export class GkeHubClient { options.otherArgs.headers = options.otherArgs.headers || {}; options.otherArgs.headers['x-goog-request-params'] = this._gaxModule.routingHeader.fromParams({ - name: request.name || '', + name: request.name ?? '', }); this.initialize(); return this.innerApiCalls.updateFeature(request, options, callback); @@ -1140,7 +1140,7 @@ export class GkeHubClient { options.otherArgs.headers = options.otherArgs.headers || {}; options.otherArgs.headers['x-goog-request-params'] = this._gaxModule.routingHeader.fromParams({ - parent: request.parent || '', + parent: request.parent ?? '', }); this.initialize(); return this.innerApiCalls.listFeatures(request, options, callback); @@ -1203,7 +1203,7 @@ export class GkeHubClient { options.otherArgs.headers = options.otherArgs.headers || {}; options.otherArgs.headers['x-goog-request-params'] = this._gaxModule.routingHeader.fromParams({ - parent: request.parent || '', + parent: request.parent ?? '', }); const defaultCallSettings = this._defaults['listFeatures']; const callSettings = defaultCallSettings.merge(options); @@ -1275,7 +1275,7 @@ export class GkeHubClient { options.otherArgs.headers = options.otherArgs.headers || {}; options.otherArgs.headers['x-goog-request-params'] = this._gaxModule.routingHeader.fromParams({ - parent: request.parent || '', + parent: request.parent ?? '', }); const defaultCallSettings = this._defaults['listFeatures']; const callSettings = defaultCallSettings.merge(options); diff --git a/packages/google-cloud-gkehub/src/v1alpha2/gke_hub_client.ts b/packages/google-cloud-gkehub/src/v1alpha2/gke_hub_client.ts index 7c883a00f13..c55063d11ad 100644 --- a/packages/google-cloud-gkehub/src/v1alpha2/gke_hub_client.ts +++ b/packages/google-cloud-gkehub/src/v1alpha2/gke_hub_client.ts @@ -529,7 +529,7 @@ export class GkeHubClient { options.otherArgs.headers = options.otherArgs.headers || {}; options.otherArgs.headers['x-goog-request-params'] = this._gaxModule.routingHeader.fromParams({ - name: request.name || '', + name: request.name ?? '', }); this.initialize(); return this.innerApiCalls.getMembership(request, options, callback); @@ -652,7 +652,7 @@ export class GkeHubClient { options.otherArgs.headers = options.otherArgs.headers || {}; options.otherArgs.headers['x-goog-request-params'] = this._gaxModule.routingHeader.fromParams({ - name: request.name || '', + name: request.name ?? '', }); this.initialize(); return this.innerApiCalls.generateConnectManifest( @@ -755,7 +755,7 @@ export class GkeHubClient { options.otherArgs.headers = options.otherArgs.headers || {}; options.otherArgs.headers['x-goog-request-params'] = this._gaxModule.routingHeader.fromParams({ - project: request.project || '', + project: request.project ?? '', }); this.initialize(); return this.innerApiCalls.initializeHub(request, options, callback); @@ -876,7 +876,7 @@ export class GkeHubClient { options.otherArgs.headers = options.otherArgs.headers || {}; options.otherArgs.headers['x-goog-request-params'] = this._gaxModule.routingHeader.fromParams({ - parent: request.parent || '', + parent: request.parent ?? '', }); this.initialize(); return this.innerApiCalls.createMembership(request, options, callback); @@ -1019,7 +1019,7 @@ export class GkeHubClient { options.otherArgs.headers = options.otherArgs.headers || {}; options.otherArgs.headers['x-goog-request-params'] = this._gaxModule.routingHeader.fromParams({ - name: request.name || '', + name: request.name ?? '', }); this.initialize(); return this.innerApiCalls.deleteMembership(request, options, callback); @@ -1169,7 +1169,7 @@ export class GkeHubClient { options.otherArgs.headers = options.otherArgs.headers || {}; options.otherArgs.headers['x-goog-request-params'] = this._gaxModule.routingHeader.fromParams({ - name: request.name || '', + name: request.name ?? '', }); this.initialize(); return this.innerApiCalls.updateMembership(request, options, callback); @@ -1331,7 +1331,7 @@ export class GkeHubClient { options.otherArgs.headers = options.otherArgs.headers || {}; options.otherArgs.headers['x-goog-request-params'] = this._gaxModule.routingHeader.fromParams({ - parent: request.parent || '', + parent: request.parent ?? '', }); this.initialize(); return this.innerApiCalls.listMemberships(request, options, callback); @@ -1398,7 +1398,7 @@ export class GkeHubClient { options.otherArgs.headers = options.otherArgs.headers || {}; options.otherArgs.headers['x-goog-request-params'] = this._gaxModule.routingHeader.fromParams({ - parent: request.parent || '', + parent: request.parent ?? '', }); const defaultCallSettings = this._defaults['listMemberships']; const callSettings = defaultCallSettings.merge(options); @@ -1474,7 +1474,7 @@ export class GkeHubClient { options.otherArgs.headers = options.otherArgs.headers || {}; options.otherArgs.headers['x-goog-request-params'] = this._gaxModule.routingHeader.fromParams({ - parent: request.parent || '', + parent: request.parent ?? '', }); const defaultCallSettings = this._defaults['listMemberships']; const callSettings = defaultCallSettings.merge(options); diff --git a/packages/google-cloud-gkehub/src/v1beta/gke_hub_client.ts b/packages/google-cloud-gkehub/src/v1beta/gke_hub_client.ts index 6cdab13c38e..026b10a077c 100644 --- a/packages/google-cloud-gkehub/src/v1beta/gke_hub_client.ts +++ b/packages/google-cloud-gkehub/src/v1beta/gke_hub_client.ts @@ -538,7 +538,7 @@ export class GkeHubClient { options.otherArgs.headers = options.otherArgs.headers || {}; options.otherArgs.headers['x-goog-request-params'] = this._gaxModule.routingHeader.fromParams({ - name: request.name || '', + name: request.name ?? '', }); this.initialize(); return this.innerApiCalls.getFeature(request, options, callback); @@ -661,7 +661,7 @@ export class GkeHubClient { options.otherArgs.headers = options.otherArgs.headers || {}; options.otherArgs.headers['x-goog-request-params'] = this._gaxModule.routingHeader.fromParams({ - parent: request.parent || '', + parent: request.parent ?? '', }); this.initialize(); return this.innerApiCalls.createFeature(request, options, callback); @@ -818,7 +818,7 @@ export class GkeHubClient { options.otherArgs.headers = options.otherArgs.headers || {}; options.otherArgs.headers['x-goog-request-params'] = this._gaxModule.routingHeader.fromParams({ - name: request.name || '', + name: request.name ?? '', }); this.initialize(); return this.innerApiCalls.deleteFeature(request, options, callback); @@ -982,7 +982,7 @@ export class GkeHubClient { options.otherArgs.headers = options.otherArgs.headers || {}; options.otherArgs.headers['x-goog-request-params'] = this._gaxModule.routingHeader.fromParams({ - name: request.name || '', + name: request.name ?? '', }); this.initialize(); return this.innerApiCalls.updateFeature(request, options, callback); @@ -1140,7 +1140,7 @@ export class GkeHubClient { options.otherArgs.headers = options.otherArgs.headers || {}; options.otherArgs.headers['x-goog-request-params'] = this._gaxModule.routingHeader.fromParams({ - parent: request.parent || '', + parent: request.parent ?? '', }); this.initialize(); return this.innerApiCalls.listFeatures(request, options, callback); @@ -1203,7 +1203,7 @@ export class GkeHubClient { options.otherArgs.headers = options.otherArgs.headers || {}; options.otherArgs.headers['x-goog-request-params'] = this._gaxModule.routingHeader.fromParams({ - parent: request.parent || '', + parent: request.parent ?? '', }); const defaultCallSettings = this._defaults['listFeatures']; const callSettings = defaultCallSettings.merge(options); @@ -1275,7 +1275,7 @@ export class GkeHubClient { options.otherArgs.headers = options.otherArgs.headers || {}; options.otherArgs.headers['x-goog-request-params'] = this._gaxModule.routingHeader.fromParams({ - parent: request.parent || '', + parent: request.parent ?? '', }); const defaultCallSettings = this._defaults['listFeatures']; const callSettings = defaultCallSettings.merge(options); diff --git a/packages/google-cloud-gkehub/src/v1beta1/gke_hub_membership_service_client.ts b/packages/google-cloud-gkehub/src/v1beta1/gke_hub_membership_service_client.ts index cfe355f8787..83279fe537c 100644 --- a/packages/google-cloud-gkehub/src/v1beta1/gke_hub_membership_service_client.ts +++ b/packages/google-cloud-gkehub/src/v1beta1/gke_hub_membership_service_client.ts @@ -544,7 +544,7 @@ export class GkeHubMembershipServiceClient { options.otherArgs.headers = options.otherArgs.headers || {}; options.otherArgs.headers['x-goog-request-params'] = this._gaxModule.routingHeader.fromParams({ - name: request.name || '', + name: request.name ?? '', }); this.initialize(); return this.innerApiCalls.getMembership(request, options, callback); @@ -657,7 +657,7 @@ export class GkeHubMembershipServiceClient { options.otherArgs.headers = options.otherArgs.headers || {}; options.otherArgs.headers['x-goog-request-params'] = this._gaxModule.routingHeader.fromParams({ - name: request.name || '', + name: request.name ?? '', }); this.initialize(); return this.innerApiCalls.generateConnectManifest( @@ -766,7 +766,7 @@ export class GkeHubMembershipServiceClient { options.otherArgs.headers = options.otherArgs.headers || {}; options.otherArgs.headers['x-goog-request-params'] = this._gaxModule.routingHeader.fromParams({ - parent: request.parent || '', + parent: request.parent ?? '', }); this.initialize(); return this.innerApiCalls.validateExclusivity(request, options, callback); @@ -883,7 +883,7 @@ export class GkeHubMembershipServiceClient { options.otherArgs.headers = options.otherArgs.headers || {}; options.otherArgs.headers['x-goog-request-params'] = this._gaxModule.routingHeader.fromParams({ - name: request.name || '', + name: request.name ?? '', }); this.initialize(); return this.innerApiCalls.generateExclusivityManifest( @@ -1022,7 +1022,7 @@ export class GkeHubMembershipServiceClient { options.otherArgs.headers = options.otherArgs.headers || {}; options.otherArgs.headers['x-goog-request-params'] = this._gaxModule.routingHeader.fromParams({ - parent: request.parent || '', + parent: request.parent ?? '', }); this.initialize(); return this.innerApiCalls.createMembership(request, options, callback); @@ -1179,7 +1179,7 @@ export class GkeHubMembershipServiceClient { options.otherArgs.headers = options.otherArgs.headers || {}; options.otherArgs.headers['x-goog-request-params'] = this._gaxModule.routingHeader.fromParams({ - name: request.name || '', + name: request.name ?? '', }); this.initialize(); return this.innerApiCalls.deleteMembership(request, options, callback); @@ -1344,7 +1344,7 @@ export class GkeHubMembershipServiceClient { options.otherArgs.headers = options.otherArgs.headers || {}; options.otherArgs.headers['x-goog-request-params'] = this._gaxModule.routingHeader.fromParams({ - name: request.name || '', + name: request.name ?? '', }); this.initialize(); return this.innerApiCalls.updateMembership(request, options, callback); @@ -1506,7 +1506,7 @@ export class GkeHubMembershipServiceClient { options.otherArgs.headers = options.otherArgs.headers || {}; options.otherArgs.headers['x-goog-request-params'] = this._gaxModule.routingHeader.fromParams({ - parent: request.parent || '', + parent: request.parent ?? '', }); this.initialize(); return this.innerApiCalls.listMemberships(request, options, callback); @@ -1573,7 +1573,7 @@ export class GkeHubMembershipServiceClient { options.otherArgs.headers = options.otherArgs.headers || {}; options.otherArgs.headers['x-goog-request-params'] = this._gaxModule.routingHeader.fromParams({ - parent: request.parent || '', + parent: request.parent ?? '', }); const defaultCallSettings = this._defaults['listMemberships']; const callSettings = defaultCallSettings.merge(options); @@ -1649,7 +1649,7 @@ export class GkeHubMembershipServiceClient { options.otherArgs.headers = options.otherArgs.headers || {}; options.otherArgs.headers['x-goog-request-params'] = this._gaxModule.routingHeader.fromParams({ - parent: request.parent || '', + parent: request.parent ?? '', }); const defaultCallSettings = this._defaults['listMemberships']; const callSettings = defaultCallSettings.merge(options); diff --git a/packages/google-cloud-gkehub/test/gapic_gke_hub_membership_service_v1beta1.ts b/packages/google-cloud-gkehub/test/gapic_gke_hub_membership_service_v1beta1.ts index fe30a4aba3f..422563a0761 100644 --- a/packages/google-cloud-gkehub/test/gapic_gke_hub_membership_service_v1beta1.ts +++ b/packages/google-cloud-gkehub/test/gapic_gke_hub_membership_service_v1beta1.ts @@ -33,6 +33,21 @@ import { LocationProtos, } from 'google-gax'; +// Dynamically loaded proto JSON is needed to get the type information +// to fill in default values for request objects +const root = protobuf.Root.fromJSON( + require('../protos/protos.json') +).resolveAll(); + +// eslint-disable-next-line @typescript-eslint/no-unused-vars +function getTypeDefaultValue(typeName: string, fields: string[]) { + let type = root.lookupType(typeName) as protobuf.Type; + for (const field of fields.slice(0, -1)) { + type = type.fields[field]?.resolvedType as protobuf.Type; + } + return type.fields[fields[fields.length - 1]]?.defaultValue; +} + function generateSampleMessage(instance: T) { const filledObject = ( instance.constructor as typeof protobuf.Message @@ -286,26 +301,25 @@ describe('v1beta1.GkeHubMembershipServiceClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1beta1.GetMembershipRequest() ); - request.name = ''; - const expectedHeaderRequestParams = 'name='; - const expectedOptions = { - otherArgs: { - headers: { - 'x-goog-request-params': expectedHeaderRequestParams, - }, - }, - }; + const defaultValue1 = getTypeDefaultValue('GetMembershipRequest', [ + 'name', + ]); + request.name = defaultValue1; + const expectedHeaderRequestParams = `name=${defaultValue1}`; const expectedResponse = generateSampleMessage( new protos.google.cloud.gkehub.v1beta1.Membership() ); client.innerApiCalls.getMembership = stubSimpleCall(expectedResponse); const [response] = await client.getMembership(request); assert.deepStrictEqual(response, expectedResponse); - assert( - (client.innerApiCalls.getMembership as SinonStub) - .getCall(0) - .calledWith(request, expectedOptions, undefined) - ); + const actualRequest = ( + client.innerApiCalls.getMembership as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.getMembership as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); }); it('invokes getMembership without error using callback', async () => { @@ -320,15 +334,11 @@ describe('v1beta1.GkeHubMembershipServiceClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1beta1.GetMembershipRequest() ); - request.name = ''; - const expectedHeaderRequestParams = 'name='; - const expectedOptions = { - otherArgs: { - headers: { - 'x-goog-request-params': expectedHeaderRequestParams, - }, - }, - }; + const defaultValue1 = getTypeDefaultValue('GetMembershipRequest', [ + 'name', + ]); + request.name = defaultValue1; + const expectedHeaderRequestParams = `name=${defaultValue1}`; const expectedResponse = generateSampleMessage( new protos.google.cloud.gkehub.v1beta1.Membership() ); @@ -351,11 +361,14 @@ describe('v1beta1.GkeHubMembershipServiceClient', () => { }); const response = await promise; assert.deepStrictEqual(response, expectedResponse); - assert( - (client.innerApiCalls.getMembership as SinonStub) - .getCall(0) - .calledWith(request, expectedOptions /*, callback defined above */) - ); + const actualRequest = ( + client.innerApiCalls.getMembership as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.getMembership as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); }); it('invokes getMembership with error', async () => { @@ -370,26 +383,25 @@ describe('v1beta1.GkeHubMembershipServiceClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1beta1.GetMembershipRequest() ); - request.name = ''; - const expectedHeaderRequestParams = 'name='; - const expectedOptions = { - otherArgs: { - headers: { - 'x-goog-request-params': expectedHeaderRequestParams, - }, - }, - }; + const defaultValue1 = getTypeDefaultValue('GetMembershipRequest', [ + 'name', + ]); + request.name = defaultValue1; + const expectedHeaderRequestParams = `name=${defaultValue1}`; const expectedError = new Error('expected'); client.innerApiCalls.getMembership = stubSimpleCall( undefined, expectedError ); await assert.rejects(client.getMembership(request), expectedError); - assert( - (client.innerApiCalls.getMembership as SinonStub) - .getCall(0) - .calledWith(request, expectedOptions, undefined) - ); + const actualRequest = ( + client.innerApiCalls.getMembership as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.getMembership as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); }); it('invokes getMembership with closed client', async () => { @@ -404,7 +416,10 @@ describe('v1beta1.GkeHubMembershipServiceClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1beta1.GetMembershipRequest() ); - request.name = ''; + const defaultValue1 = getTypeDefaultValue('GetMembershipRequest', [ + 'name', + ]); + request.name = defaultValue1; const expectedError = new Error('The client has already been closed.'); client.close(); await assert.rejects(client.getMembership(request), expectedError); @@ -424,15 +439,12 @@ describe('v1beta1.GkeHubMembershipServiceClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1beta1.GenerateConnectManifestRequest() ); - request.name = ''; - const expectedHeaderRequestParams = 'name='; - const expectedOptions = { - otherArgs: { - headers: { - 'x-goog-request-params': expectedHeaderRequestParams, - }, - }, - }; + const defaultValue1 = getTypeDefaultValue( + 'GenerateConnectManifestRequest', + ['name'] + ); + request.name = defaultValue1; + const expectedHeaderRequestParams = `name=${defaultValue1}`; const expectedResponse = generateSampleMessage( new protos.google.cloud.gkehub.v1beta1.GenerateConnectManifestResponse() ); @@ -440,11 +452,14 @@ describe('v1beta1.GkeHubMembershipServiceClient', () => { stubSimpleCall(expectedResponse); const [response] = await client.generateConnectManifest(request); assert.deepStrictEqual(response, expectedResponse); - assert( - (client.innerApiCalls.generateConnectManifest as SinonStub) - .getCall(0) - .calledWith(request, expectedOptions, undefined) - ); + const actualRequest = ( + client.innerApiCalls.generateConnectManifest as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.generateConnectManifest as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); }); it('invokes generateConnectManifest without error using callback', async () => { @@ -459,15 +474,12 @@ describe('v1beta1.GkeHubMembershipServiceClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1beta1.GenerateConnectManifestRequest() ); - request.name = ''; - const expectedHeaderRequestParams = 'name='; - const expectedOptions = { - otherArgs: { - headers: { - 'x-goog-request-params': expectedHeaderRequestParams, - }, - }, - }; + const defaultValue1 = getTypeDefaultValue( + 'GenerateConnectManifestRequest', + ['name'] + ); + request.name = defaultValue1; + const expectedHeaderRequestParams = `name=${defaultValue1}`; const expectedResponse = generateSampleMessage( new protos.google.cloud.gkehub.v1beta1.GenerateConnectManifestResponse() ); @@ -490,11 +502,14 @@ describe('v1beta1.GkeHubMembershipServiceClient', () => { }); const response = await promise; assert.deepStrictEqual(response, expectedResponse); - assert( - (client.innerApiCalls.generateConnectManifest as SinonStub) - .getCall(0) - .calledWith(request, expectedOptions /*, callback defined above */) - ); + const actualRequest = ( + client.innerApiCalls.generateConnectManifest as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.generateConnectManifest as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); }); it('invokes generateConnectManifest with error', async () => { @@ -509,15 +524,12 @@ describe('v1beta1.GkeHubMembershipServiceClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1beta1.GenerateConnectManifestRequest() ); - request.name = ''; - const expectedHeaderRequestParams = 'name='; - const expectedOptions = { - otherArgs: { - headers: { - 'x-goog-request-params': expectedHeaderRequestParams, - }, - }, - }; + const defaultValue1 = getTypeDefaultValue( + 'GenerateConnectManifestRequest', + ['name'] + ); + request.name = defaultValue1; + const expectedHeaderRequestParams = `name=${defaultValue1}`; const expectedError = new Error('expected'); client.innerApiCalls.generateConnectManifest = stubSimpleCall( undefined, @@ -527,11 +539,14 @@ describe('v1beta1.GkeHubMembershipServiceClient', () => { client.generateConnectManifest(request), expectedError ); - assert( - (client.innerApiCalls.generateConnectManifest as SinonStub) - .getCall(0) - .calledWith(request, expectedOptions, undefined) - ); + const actualRequest = ( + client.innerApiCalls.generateConnectManifest as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.generateConnectManifest as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); }); it('invokes generateConnectManifest with closed client', async () => { @@ -546,7 +561,11 @@ describe('v1beta1.GkeHubMembershipServiceClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1beta1.GenerateConnectManifestRequest() ); - request.name = ''; + const defaultValue1 = getTypeDefaultValue( + 'GenerateConnectManifestRequest', + ['name'] + ); + request.name = defaultValue1; const expectedError = new Error('The client has already been closed.'); client.close(); await assert.rejects( @@ -569,15 +588,11 @@ describe('v1beta1.GkeHubMembershipServiceClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1beta1.ValidateExclusivityRequest() ); - request.parent = ''; - const expectedHeaderRequestParams = 'parent='; - const expectedOptions = { - otherArgs: { - headers: { - 'x-goog-request-params': expectedHeaderRequestParams, - }, - }, - }; + const defaultValue1 = getTypeDefaultValue('ValidateExclusivityRequest', [ + 'parent', + ]); + request.parent = defaultValue1; + const expectedHeaderRequestParams = `parent=${defaultValue1}`; const expectedResponse = generateSampleMessage( new protos.google.cloud.gkehub.v1beta1.ValidateExclusivityResponse() ); @@ -585,11 +600,14 @@ describe('v1beta1.GkeHubMembershipServiceClient', () => { stubSimpleCall(expectedResponse); const [response] = await client.validateExclusivity(request); assert.deepStrictEqual(response, expectedResponse); - assert( - (client.innerApiCalls.validateExclusivity as SinonStub) - .getCall(0) - .calledWith(request, expectedOptions, undefined) - ); + const actualRequest = ( + client.innerApiCalls.validateExclusivity as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.validateExclusivity as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); }); it('invokes validateExclusivity without error using callback', async () => { @@ -604,15 +622,11 @@ describe('v1beta1.GkeHubMembershipServiceClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1beta1.ValidateExclusivityRequest() ); - request.parent = ''; - const expectedHeaderRequestParams = 'parent='; - const expectedOptions = { - otherArgs: { - headers: { - 'x-goog-request-params': expectedHeaderRequestParams, - }, - }, - }; + const defaultValue1 = getTypeDefaultValue('ValidateExclusivityRequest', [ + 'parent', + ]); + request.parent = defaultValue1; + const expectedHeaderRequestParams = `parent=${defaultValue1}`; const expectedResponse = generateSampleMessage( new protos.google.cloud.gkehub.v1beta1.ValidateExclusivityResponse() ); @@ -635,11 +649,14 @@ describe('v1beta1.GkeHubMembershipServiceClient', () => { }); const response = await promise; assert.deepStrictEqual(response, expectedResponse); - assert( - (client.innerApiCalls.validateExclusivity as SinonStub) - .getCall(0) - .calledWith(request, expectedOptions /*, callback defined above */) - ); + const actualRequest = ( + client.innerApiCalls.validateExclusivity as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.validateExclusivity as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); }); it('invokes validateExclusivity with error', async () => { @@ -654,26 +671,25 @@ describe('v1beta1.GkeHubMembershipServiceClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1beta1.ValidateExclusivityRequest() ); - request.parent = ''; - const expectedHeaderRequestParams = 'parent='; - const expectedOptions = { - otherArgs: { - headers: { - 'x-goog-request-params': expectedHeaderRequestParams, - }, - }, - }; + const defaultValue1 = getTypeDefaultValue('ValidateExclusivityRequest', [ + 'parent', + ]); + request.parent = defaultValue1; + const expectedHeaderRequestParams = `parent=${defaultValue1}`; const expectedError = new Error('expected'); client.innerApiCalls.validateExclusivity = stubSimpleCall( undefined, expectedError ); await assert.rejects(client.validateExclusivity(request), expectedError); - assert( - (client.innerApiCalls.validateExclusivity as SinonStub) - .getCall(0) - .calledWith(request, expectedOptions, undefined) - ); + const actualRequest = ( + client.innerApiCalls.validateExclusivity as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.validateExclusivity as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); }); it('invokes validateExclusivity with closed client', async () => { @@ -688,7 +704,10 @@ describe('v1beta1.GkeHubMembershipServiceClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1beta1.ValidateExclusivityRequest() ); - request.parent = ''; + const defaultValue1 = getTypeDefaultValue('ValidateExclusivityRequest', [ + 'parent', + ]); + request.parent = defaultValue1; const expectedError = new Error('The client has already been closed.'); client.close(); await assert.rejects(client.validateExclusivity(request), expectedError); @@ -708,15 +727,12 @@ describe('v1beta1.GkeHubMembershipServiceClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1beta1.GenerateExclusivityManifestRequest() ); - request.name = ''; - const expectedHeaderRequestParams = 'name='; - const expectedOptions = { - otherArgs: { - headers: { - 'x-goog-request-params': expectedHeaderRequestParams, - }, - }, - }; + const defaultValue1 = getTypeDefaultValue( + 'GenerateExclusivityManifestRequest', + ['name'] + ); + request.name = defaultValue1; + const expectedHeaderRequestParams = `name=${defaultValue1}`; const expectedResponse = generateSampleMessage( new protos.google.cloud.gkehub.v1beta1.GenerateExclusivityManifestResponse() ); @@ -724,11 +740,14 @@ describe('v1beta1.GkeHubMembershipServiceClient', () => { stubSimpleCall(expectedResponse); const [response] = await client.generateExclusivityManifest(request); assert.deepStrictEqual(response, expectedResponse); - assert( - (client.innerApiCalls.generateExclusivityManifest as SinonStub) - .getCall(0) - .calledWith(request, expectedOptions, undefined) - ); + const actualRequest = ( + client.innerApiCalls.generateExclusivityManifest as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.generateExclusivityManifest as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); }); it('invokes generateExclusivityManifest without error using callback', async () => { @@ -743,15 +762,12 @@ describe('v1beta1.GkeHubMembershipServiceClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1beta1.GenerateExclusivityManifestRequest() ); - request.name = ''; - const expectedHeaderRequestParams = 'name='; - const expectedOptions = { - otherArgs: { - headers: { - 'x-goog-request-params': expectedHeaderRequestParams, - }, - }, - }; + const defaultValue1 = getTypeDefaultValue( + 'GenerateExclusivityManifestRequest', + ['name'] + ); + request.name = defaultValue1; + const expectedHeaderRequestParams = `name=${defaultValue1}`; const expectedResponse = generateSampleMessage( new protos.google.cloud.gkehub.v1beta1.GenerateExclusivityManifestResponse() ); @@ -774,11 +790,14 @@ describe('v1beta1.GkeHubMembershipServiceClient', () => { }); const response = await promise; assert.deepStrictEqual(response, expectedResponse); - assert( - (client.innerApiCalls.generateExclusivityManifest as SinonStub) - .getCall(0) - .calledWith(request, expectedOptions /*, callback defined above */) - ); + const actualRequest = ( + client.innerApiCalls.generateExclusivityManifest as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.generateExclusivityManifest as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); }); it('invokes generateExclusivityManifest with error', async () => { @@ -793,15 +812,12 @@ describe('v1beta1.GkeHubMembershipServiceClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1beta1.GenerateExclusivityManifestRequest() ); - request.name = ''; - const expectedHeaderRequestParams = 'name='; - const expectedOptions = { - otherArgs: { - headers: { - 'x-goog-request-params': expectedHeaderRequestParams, - }, - }, - }; + const defaultValue1 = getTypeDefaultValue( + 'GenerateExclusivityManifestRequest', + ['name'] + ); + request.name = defaultValue1; + const expectedHeaderRequestParams = `name=${defaultValue1}`; const expectedError = new Error('expected'); client.innerApiCalls.generateExclusivityManifest = stubSimpleCall( undefined, @@ -811,11 +827,14 @@ describe('v1beta1.GkeHubMembershipServiceClient', () => { client.generateExclusivityManifest(request), expectedError ); - assert( - (client.innerApiCalls.generateExclusivityManifest as SinonStub) - .getCall(0) - .calledWith(request, expectedOptions, undefined) - ); + const actualRequest = ( + client.innerApiCalls.generateExclusivityManifest as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.generateExclusivityManifest as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); }); it('invokes generateExclusivityManifest with closed client', async () => { @@ -830,7 +849,11 @@ describe('v1beta1.GkeHubMembershipServiceClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1beta1.GenerateExclusivityManifestRequest() ); - request.name = ''; + const defaultValue1 = getTypeDefaultValue( + 'GenerateExclusivityManifestRequest', + ['name'] + ); + request.name = defaultValue1; const expectedError = new Error('The client has already been closed.'); client.close(); await assert.rejects( @@ -853,15 +876,11 @@ describe('v1beta1.GkeHubMembershipServiceClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1beta1.CreateMembershipRequest() ); - request.parent = ''; - const expectedHeaderRequestParams = 'parent='; - const expectedOptions = { - otherArgs: { - headers: { - 'x-goog-request-params': expectedHeaderRequestParams, - }, - }, - }; + const defaultValue1 = getTypeDefaultValue('CreateMembershipRequest', [ + 'parent', + ]); + request.parent = defaultValue1; + const expectedHeaderRequestParams = `parent=${defaultValue1}`; const expectedResponse = generateSampleMessage( new protos.google.longrunning.Operation() ); @@ -870,11 +889,14 @@ describe('v1beta1.GkeHubMembershipServiceClient', () => { const [operation] = await client.createMembership(request); const [response] = await operation.promise(); assert.deepStrictEqual(response, expectedResponse); - assert( - (client.innerApiCalls.createMembership as SinonStub) - .getCall(0) - .calledWith(request, expectedOptions, undefined) - ); + const actualRequest = ( + client.innerApiCalls.createMembership as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.createMembership as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); }); it('invokes createMembership without error using callback', async () => { @@ -889,15 +911,11 @@ describe('v1beta1.GkeHubMembershipServiceClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1beta1.CreateMembershipRequest() ); - request.parent = ''; - const expectedHeaderRequestParams = 'parent='; - const expectedOptions = { - otherArgs: { - headers: { - 'x-goog-request-params': expectedHeaderRequestParams, - }, - }, - }; + const defaultValue1 = getTypeDefaultValue('CreateMembershipRequest', [ + 'parent', + ]); + request.parent = defaultValue1; + const expectedHeaderRequestParams = `parent=${defaultValue1}`; const expectedResponse = generateSampleMessage( new protos.google.longrunning.Operation() ); @@ -927,11 +945,14 @@ describe('v1beta1.GkeHubMembershipServiceClient', () => { >; const [response] = await operation.promise(); assert.deepStrictEqual(response, expectedResponse); - assert( - (client.innerApiCalls.createMembership as SinonStub) - .getCall(0) - .calledWith(request, expectedOptions /*, callback defined above */) - ); + const actualRequest = ( + client.innerApiCalls.createMembership as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.createMembership as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); }); it('invokes createMembership with call error', async () => { @@ -946,26 +967,25 @@ describe('v1beta1.GkeHubMembershipServiceClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1beta1.CreateMembershipRequest() ); - request.parent = ''; - const expectedHeaderRequestParams = 'parent='; - const expectedOptions = { - otherArgs: { - headers: { - 'x-goog-request-params': expectedHeaderRequestParams, - }, - }, - }; + const defaultValue1 = getTypeDefaultValue('CreateMembershipRequest', [ + 'parent', + ]); + request.parent = defaultValue1; + const expectedHeaderRequestParams = `parent=${defaultValue1}`; const expectedError = new Error('expected'); client.innerApiCalls.createMembership = stubLongRunningCall( undefined, expectedError ); await assert.rejects(client.createMembership(request), expectedError); - assert( - (client.innerApiCalls.createMembership as SinonStub) - .getCall(0) - .calledWith(request, expectedOptions, undefined) - ); + const actualRequest = ( + client.innerApiCalls.createMembership as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.createMembership as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); }); it('invokes createMembership with LRO error', async () => { @@ -980,15 +1000,11 @@ describe('v1beta1.GkeHubMembershipServiceClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1beta1.CreateMembershipRequest() ); - request.parent = ''; - const expectedHeaderRequestParams = 'parent='; - const expectedOptions = { - otherArgs: { - headers: { - 'x-goog-request-params': expectedHeaderRequestParams, - }, - }, - }; + const defaultValue1 = getTypeDefaultValue('CreateMembershipRequest', [ + 'parent', + ]); + request.parent = defaultValue1; + const expectedHeaderRequestParams = `parent=${defaultValue1}`; const expectedError = new Error('expected'); client.innerApiCalls.createMembership = stubLongRunningCall( undefined, @@ -997,11 +1013,14 @@ describe('v1beta1.GkeHubMembershipServiceClient', () => { ); const [operation] = await client.createMembership(request); await assert.rejects(operation.promise(), expectedError); - assert( - (client.innerApiCalls.createMembership as SinonStub) - .getCall(0) - .calledWith(request, expectedOptions, undefined) - ); + const actualRequest = ( + client.innerApiCalls.createMembership as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.createMembership as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); }); it('invokes checkCreateMembershipProgress without error', async () => { @@ -1065,15 +1084,11 @@ describe('v1beta1.GkeHubMembershipServiceClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1beta1.DeleteMembershipRequest() ); - request.name = ''; - const expectedHeaderRequestParams = 'name='; - const expectedOptions = { - otherArgs: { - headers: { - 'x-goog-request-params': expectedHeaderRequestParams, - }, - }, - }; + const defaultValue1 = getTypeDefaultValue('DeleteMembershipRequest', [ + 'name', + ]); + request.name = defaultValue1; + const expectedHeaderRequestParams = `name=${defaultValue1}`; const expectedResponse = generateSampleMessage( new protos.google.longrunning.Operation() ); @@ -1082,11 +1097,14 @@ describe('v1beta1.GkeHubMembershipServiceClient', () => { const [operation] = await client.deleteMembership(request); const [response] = await operation.promise(); assert.deepStrictEqual(response, expectedResponse); - assert( - (client.innerApiCalls.deleteMembership as SinonStub) - .getCall(0) - .calledWith(request, expectedOptions, undefined) - ); + const actualRequest = ( + client.innerApiCalls.deleteMembership as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.deleteMembership as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); }); it('invokes deleteMembership without error using callback', async () => { @@ -1101,15 +1119,11 @@ describe('v1beta1.GkeHubMembershipServiceClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1beta1.DeleteMembershipRequest() ); - request.name = ''; - const expectedHeaderRequestParams = 'name='; - const expectedOptions = { - otherArgs: { - headers: { - 'x-goog-request-params': expectedHeaderRequestParams, - }, - }, - }; + const defaultValue1 = getTypeDefaultValue('DeleteMembershipRequest', [ + 'name', + ]); + request.name = defaultValue1; + const expectedHeaderRequestParams = `name=${defaultValue1}`; const expectedResponse = generateSampleMessage( new protos.google.longrunning.Operation() ); @@ -1139,11 +1153,14 @@ describe('v1beta1.GkeHubMembershipServiceClient', () => { >; const [response] = await operation.promise(); assert.deepStrictEqual(response, expectedResponse); - assert( - (client.innerApiCalls.deleteMembership as SinonStub) - .getCall(0) - .calledWith(request, expectedOptions /*, callback defined above */) - ); + const actualRequest = ( + client.innerApiCalls.deleteMembership as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.deleteMembership as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); }); it('invokes deleteMembership with call error', async () => { @@ -1158,26 +1175,25 @@ describe('v1beta1.GkeHubMembershipServiceClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1beta1.DeleteMembershipRequest() ); - request.name = ''; - const expectedHeaderRequestParams = 'name='; - const expectedOptions = { - otherArgs: { - headers: { - 'x-goog-request-params': expectedHeaderRequestParams, - }, - }, - }; + const defaultValue1 = getTypeDefaultValue('DeleteMembershipRequest', [ + 'name', + ]); + request.name = defaultValue1; + const expectedHeaderRequestParams = `name=${defaultValue1}`; const expectedError = new Error('expected'); client.innerApiCalls.deleteMembership = stubLongRunningCall( undefined, expectedError ); await assert.rejects(client.deleteMembership(request), expectedError); - assert( - (client.innerApiCalls.deleteMembership as SinonStub) - .getCall(0) - .calledWith(request, expectedOptions, undefined) - ); + const actualRequest = ( + client.innerApiCalls.deleteMembership as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.deleteMembership as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); }); it('invokes deleteMembership with LRO error', async () => { @@ -1192,15 +1208,11 @@ describe('v1beta1.GkeHubMembershipServiceClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1beta1.DeleteMembershipRequest() ); - request.name = ''; - const expectedHeaderRequestParams = 'name='; - const expectedOptions = { - otherArgs: { - headers: { - 'x-goog-request-params': expectedHeaderRequestParams, - }, - }, - }; + const defaultValue1 = getTypeDefaultValue('DeleteMembershipRequest', [ + 'name', + ]); + request.name = defaultValue1; + const expectedHeaderRequestParams = `name=${defaultValue1}`; const expectedError = new Error('expected'); client.innerApiCalls.deleteMembership = stubLongRunningCall( undefined, @@ -1209,11 +1221,14 @@ describe('v1beta1.GkeHubMembershipServiceClient', () => { ); const [operation] = await client.deleteMembership(request); await assert.rejects(operation.promise(), expectedError); - assert( - (client.innerApiCalls.deleteMembership as SinonStub) - .getCall(0) - .calledWith(request, expectedOptions, undefined) - ); + const actualRequest = ( + client.innerApiCalls.deleteMembership as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.deleteMembership as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); }); it('invokes checkDeleteMembershipProgress without error', async () => { @@ -1277,15 +1292,11 @@ describe('v1beta1.GkeHubMembershipServiceClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1beta1.UpdateMembershipRequest() ); - request.name = ''; - const expectedHeaderRequestParams = 'name='; - const expectedOptions = { - otherArgs: { - headers: { - 'x-goog-request-params': expectedHeaderRequestParams, - }, - }, - }; + const defaultValue1 = getTypeDefaultValue('UpdateMembershipRequest', [ + 'name', + ]); + request.name = defaultValue1; + const expectedHeaderRequestParams = `name=${defaultValue1}`; const expectedResponse = generateSampleMessage( new protos.google.longrunning.Operation() ); @@ -1294,11 +1305,14 @@ describe('v1beta1.GkeHubMembershipServiceClient', () => { const [operation] = await client.updateMembership(request); const [response] = await operation.promise(); assert.deepStrictEqual(response, expectedResponse); - assert( - (client.innerApiCalls.updateMembership as SinonStub) - .getCall(0) - .calledWith(request, expectedOptions, undefined) - ); + const actualRequest = ( + client.innerApiCalls.updateMembership as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.updateMembership as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); }); it('invokes updateMembership without error using callback', async () => { @@ -1313,15 +1327,11 @@ describe('v1beta1.GkeHubMembershipServiceClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1beta1.UpdateMembershipRequest() ); - request.name = ''; - const expectedHeaderRequestParams = 'name='; - const expectedOptions = { - otherArgs: { - headers: { - 'x-goog-request-params': expectedHeaderRequestParams, - }, - }, - }; + const defaultValue1 = getTypeDefaultValue('UpdateMembershipRequest', [ + 'name', + ]); + request.name = defaultValue1; + const expectedHeaderRequestParams = `name=${defaultValue1}`; const expectedResponse = generateSampleMessage( new protos.google.longrunning.Operation() ); @@ -1351,11 +1361,14 @@ describe('v1beta1.GkeHubMembershipServiceClient', () => { >; const [response] = await operation.promise(); assert.deepStrictEqual(response, expectedResponse); - assert( - (client.innerApiCalls.updateMembership as SinonStub) - .getCall(0) - .calledWith(request, expectedOptions /*, callback defined above */) - ); + const actualRequest = ( + client.innerApiCalls.updateMembership as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.updateMembership as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); }); it('invokes updateMembership with call error', async () => { @@ -1370,26 +1383,25 @@ describe('v1beta1.GkeHubMembershipServiceClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1beta1.UpdateMembershipRequest() ); - request.name = ''; - const expectedHeaderRequestParams = 'name='; - const expectedOptions = { - otherArgs: { - headers: { - 'x-goog-request-params': expectedHeaderRequestParams, - }, - }, - }; + const defaultValue1 = getTypeDefaultValue('UpdateMembershipRequest', [ + 'name', + ]); + request.name = defaultValue1; + const expectedHeaderRequestParams = `name=${defaultValue1}`; const expectedError = new Error('expected'); client.innerApiCalls.updateMembership = stubLongRunningCall( undefined, expectedError ); await assert.rejects(client.updateMembership(request), expectedError); - assert( - (client.innerApiCalls.updateMembership as SinonStub) - .getCall(0) - .calledWith(request, expectedOptions, undefined) - ); + const actualRequest = ( + client.innerApiCalls.updateMembership as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.updateMembership as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); }); it('invokes updateMembership with LRO error', async () => { @@ -1404,15 +1416,11 @@ describe('v1beta1.GkeHubMembershipServiceClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1beta1.UpdateMembershipRequest() ); - request.name = ''; - const expectedHeaderRequestParams = 'name='; - const expectedOptions = { - otherArgs: { - headers: { - 'x-goog-request-params': expectedHeaderRequestParams, - }, - }, - }; + const defaultValue1 = getTypeDefaultValue('UpdateMembershipRequest', [ + 'name', + ]); + request.name = defaultValue1; + const expectedHeaderRequestParams = `name=${defaultValue1}`; const expectedError = new Error('expected'); client.innerApiCalls.updateMembership = stubLongRunningCall( undefined, @@ -1421,11 +1429,14 @@ describe('v1beta1.GkeHubMembershipServiceClient', () => { ); const [operation] = await client.updateMembership(request); await assert.rejects(operation.promise(), expectedError); - assert( - (client.innerApiCalls.updateMembership as SinonStub) - .getCall(0) - .calledWith(request, expectedOptions, undefined) - ); + const actualRequest = ( + client.innerApiCalls.updateMembership as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.updateMembership as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); }); it('invokes checkUpdateMembershipProgress without error', async () => { @@ -1489,15 +1500,11 @@ describe('v1beta1.GkeHubMembershipServiceClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1beta1.ListMembershipsRequest() ); - request.parent = ''; - const expectedHeaderRequestParams = 'parent='; - const expectedOptions = { - otherArgs: { - headers: { - 'x-goog-request-params': expectedHeaderRequestParams, - }, - }, - }; + const defaultValue1 = getTypeDefaultValue('ListMembershipsRequest', [ + 'parent', + ]); + request.parent = defaultValue1; + const expectedHeaderRequestParams = `parent=${defaultValue1}`; const expectedResponse = [ generateSampleMessage( new protos.google.cloud.gkehub.v1beta1.Membership() @@ -1512,11 +1519,14 @@ describe('v1beta1.GkeHubMembershipServiceClient', () => { client.innerApiCalls.listMemberships = stubSimpleCall(expectedResponse); const [response] = await client.listMemberships(request); assert.deepStrictEqual(response, expectedResponse); - assert( - (client.innerApiCalls.listMemberships as SinonStub) - .getCall(0) - .calledWith(request, expectedOptions, undefined) - ); + const actualRequest = ( + client.innerApiCalls.listMemberships as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.listMemberships as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); }); it('invokes listMemberships without error using callback', async () => { @@ -1531,15 +1541,11 @@ describe('v1beta1.GkeHubMembershipServiceClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1beta1.ListMembershipsRequest() ); - request.parent = ''; - const expectedHeaderRequestParams = 'parent='; - const expectedOptions = { - otherArgs: { - headers: { - 'x-goog-request-params': expectedHeaderRequestParams, - }, - }, - }; + const defaultValue1 = getTypeDefaultValue('ListMembershipsRequest', [ + 'parent', + ]); + request.parent = defaultValue1; + const expectedHeaderRequestParams = `parent=${defaultValue1}`; const expectedResponse = [ generateSampleMessage( new protos.google.cloud.gkehub.v1beta1.Membership() @@ -1570,11 +1576,14 @@ describe('v1beta1.GkeHubMembershipServiceClient', () => { }); const response = await promise; assert.deepStrictEqual(response, expectedResponse); - assert( - (client.innerApiCalls.listMemberships as SinonStub) - .getCall(0) - .calledWith(request, expectedOptions /*, callback defined above */) - ); + const actualRequest = ( + client.innerApiCalls.listMemberships as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.listMemberships as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); }); it('invokes listMemberships with error', async () => { @@ -1589,26 +1598,25 @@ describe('v1beta1.GkeHubMembershipServiceClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1beta1.ListMembershipsRequest() ); - request.parent = ''; - const expectedHeaderRequestParams = 'parent='; - const expectedOptions = { - otherArgs: { - headers: { - 'x-goog-request-params': expectedHeaderRequestParams, - }, - }, - }; + const defaultValue1 = getTypeDefaultValue('ListMembershipsRequest', [ + 'parent', + ]); + request.parent = defaultValue1; + const expectedHeaderRequestParams = `parent=${defaultValue1}`; const expectedError = new Error('expected'); client.innerApiCalls.listMemberships = stubSimpleCall( undefined, expectedError ); await assert.rejects(client.listMemberships(request), expectedError); - assert( - (client.innerApiCalls.listMemberships as SinonStub) - .getCall(0) - .calledWith(request, expectedOptions, undefined) - ); + const actualRequest = ( + client.innerApiCalls.listMemberships as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.listMemberships as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); }); it('invokes listMembershipsStream without error', async () => { @@ -1623,8 +1631,11 @@ describe('v1beta1.GkeHubMembershipServiceClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1beta1.ListMembershipsRequest() ); - request.parent = ''; - const expectedHeaderRequestParams = 'parent='; + const defaultValue1 = getTypeDefaultValue('ListMembershipsRequest', [ + 'parent', + ]); + request.parent = defaultValue1; + const expectedHeaderRequestParams = `parent=${defaultValue1}`; const expectedResponse = [ generateSampleMessage( new protos.google.cloud.gkehub.v1beta1.Membership() @@ -1661,11 +1672,12 @@ describe('v1beta1.GkeHubMembershipServiceClient', () => { .getCall(0) .calledWith(client.innerApiCalls.listMemberships, request) ); - assert.strictEqual( - ( - client.descriptors.page.listMemberships.createStream as SinonStub - ).getCall(0).args[2].otherArgs.headers['x-goog-request-params'], - expectedHeaderRequestParams + assert( + (client.descriptors.page.listMemberships.createStream as SinonStub) + .getCall(0) + .args[2].otherArgs.headers['x-goog-request-params'].includes( + expectedHeaderRequestParams + ) ); }); @@ -1681,8 +1693,11 @@ describe('v1beta1.GkeHubMembershipServiceClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1beta1.ListMembershipsRequest() ); - request.parent = ''; - const expectedHeaderRequestParams = 'parent='; + const defaultValue1 = getTypeDefaultValue('ListMembershipsRequest', [ + 'parent', + ]); + request.parent = defaultValue1; + const expectedHeaderRequestParams = `parent=${defaultValue1}`; const expectedError = new Error('expected'); client.descriptors.page.listMemberships.createStream = stubPageStreamingCall(undefined, expectedError); @@ -1708,11 +1723,12 @@ describe('v1beta1.GkeHubMembershipServiceClient', () => { .getCall(0) .calledWith(client.innerApiCalls.listMemberships, request) ); - assert.strictEqual( - ( - client.descriptors.page.listMemberships.createStream as SinonStub - ).getCall(0).args[2].otherArgs.headers['x-goog-request-params'], - expectedHeaderRequestParams + assert( + (client.descriptors.page.listMemberships.createStream as SinonStub) + .getCall(0) + .args[2].otherArgs.headers['x-goog-request-params'].includes( + expectedHeaderRequestParams + ) ); }); @@ -1728,8 +1744,11 @@ describe('v1beta1.GkeHubMembershipServiceClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1beta1.ListMembershipsRequest() ); - request.parent = ''; - const expectedHeaderRequestParams = 'parent='; + const defaultValue1 = getTypeDefaultValue('ListMembershipsRequest', [ + 'parent', + ]); + request.parent = defaultValue1; + const expectedHeaderRequestParams = `parent=${defaultValue1}`; const expectedResponse = [ generateSampleMessage( new protos.google.cloud.gkehub.v1beta1.Membership() @@ -1755,11 +1774,12 @@ describe('v1beta1.GkeHubMembershipServiceClient', () => { ).getCall(0).args[1], request ); - assert.strictEqual( - ( - client.descriptors.page.listMemberships.asyncIterate as SinonStub - ).getCall(0).args[2].otherArgs.headers['x-goog-request-params'], - expectedHeaderRequestParams + assert( + (client.descriptors.page.listMemberships.asyncIterate as SinonStub) + .getCall(0) + .args[2].otherArgs.headers['x-goog-request-params'].includes( + expectedHeaderRequestParams + ) ); }); @@ -1775,8 +1795,11 @@ describe('v1beta1.GkeHubMembershipServiceClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1beta1.ListMembershipsRequest() ); - request.parent = ''; - const expectedHeaderRequestParams = 'parent='; + const defaultValue1 = getTypeDefaultValue('ListMembershipsRequest', [ + 'parent', + ]); + request.parent = defaultValue1; + const expectedHeaderRequestParams = `parent=${defaultValue1}`; const expectedError = new Error('expected'); client.descriptors.page.listMemberships.asyncIterate = stubAsyncIterationCall(undefined, expectedError); @@ -1793,11 +1816,12 @@ describe('v1beta1.GkeHubMembershipServiceClient', () => { ).getCall(0).args[1], request ); - assert.strictEqual( - ( - client.descriptors.page.listMemberships.asyncIterate as SinonStub - ).getCall(0).args[2].otherArgs.headers['x-goog-request-params'], - expectedHeaderRequestParams + assert( + (client.descriptors.page.listMemberships.asyncIterate as SinonStub) + .getCall(0) + .args[2].otherArgs.headers['x-goog-request-params'].includes( + expectedHeaderRequestParams + ) ); }); }); @@ -2311,12 +2335,15 @@ describe('v1beta1.GkeHubMembershipServiceClient', () => { ).getCall(0).args[1], request ); - assert.strictEqual( + assert( ( client.locationsClient.descriptors.page.listLocations .asyncIterate as SinonStub - ).getCall(0).args[2].otherArgs.headers['x-goog-request-params'], - expectedHeaderRequestParams + ) + .getCall(0) + .args[2].otherArgs.headers['x-goog-request-params'].includes( + expectedHeaderRequestParams + ) ); }); it('uses async iteration with listLocations with error', async () => { @@ -2350,12 +2377,15 @@ describe('v1beta1.GkeHubMembershipServiceClient', () => { ).getCall(0).args[1], request ); - assert.strictEqual( + assert( ( client.locationsClient.descriptors.page.listLocations .asyncIterate as SinonStub - ).getCall(0).args[2].otherArgs.headers['x-goog-request-params'], - expectedHeaderRequestParams + ) + .getCall(0) + .args[2].otherArgs.headers['x-goog-request-params'].includes( + expectedHeaderRequestParams + ) ); }); }); diff --git a/packages/google-cloud-gkehub/test/gapic_gke_hub_v1.ts b/packages/google-cloud-gkehub/test/gapic_gke_hub_v1.ts index 2ecdc3b1742..7809303b6bb 100644 --- a/packages/google-cloud-gkehub/test/gapic_gke_hub_v1.ts +++ b/packages/google-cloud-gkehub/test/gapic_gke_hub_v1.ts @@ -27,6 +27,21 @@ import {PassThrough} from 'stream'; import {protobuf, LROperation, operationsProtos} from 'google-gax'; +// Dynamically loaded proto JSON is needed to get the type information +// to fill in default values for request objects +const root = protobuf.Root.fromJSON( + require('../protos/protos.json') +).resolveAll(); + +// eslint-disable-next-line @typescript-eslint/no-unused-vars +function getTypeDefaultValue(typeName: string, fields: string[]) { + let type = root.lookupType(typeName) as protobuf.Type; + for (const field of fields.slice(0, -1)) { + type = type.fields[field]?.resolvedType as protobuf.Type; + } + return type.fields[fields[fields.length - 1]]?.defaultValue; +} + function generateSampleMessage(instance: T) { const filledObject = ( instance.constructor as typeof protobuf.Message @@ -252,26 +267,25 @@ describe('v1.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1.GetMembershipRequest() ); - request.name = ''; - const expectedHeaderRequestParams = 'name='; - const expectedOptions = { - otherArgs: { - headers: { - 'x-goog-request-params': expectedHeaderRequestParams, - }, - }, - }; + const defaultValue1 = getTypeDefaultValue('GetMembershipRequest', [ + 'name', + ]); + request.name = defaultValue1; + const expectedHeaderRequestParams = `name=${defaultValue1}`; const expectedResponse = generateSampleMessage( new protos.google.cloud.gkehub.v1.Membership() ); client.innerApiCalls.getMembership = stubSimpleCall(expectedResponse); const [response] = await client.getMembership(request); assert.deepStrictEqual(response, expectedResponse); - assert( - (client.innerApiCalls.getMembership as SinonStub) - .getCall(0) - .calledWith(request, expectedOptions, undefined) - ); + const actualRequest = ( + client.innerApiCalls.getMembership as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.getMembership as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); }); it('invokes getMembership without error using callback', async () => { @@ -283,15 +297,11 @@ describe('v1.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1.GetMembershipRequest() ); - request.name = ''; - const expectedHeaderRequestParams = 'name='; - const expectedOptions = { - otherArgs: { - headers: { - 'x-goog-request-params': expectedHeaderRequestParams, - }, - }, - }; + const defaultValue1 = getTypeDefaultValue('GetMembershipRequest', [ + 'name', + ]); + request.name = defaultValue1; + const expectedHeaderRequestParams = `name=${defaultValue1}`; const expectedResponse = generateSampleMessage( new protos.google.cloud.gkehub.v1.Membership() ); @@ -314,11 +324,14 @@ describe('v1.GkeHubClient', () => { }); const response = await promise; assert.deepStrictEqual(response, expectedResponse); - assert( - (client.innerApiCalls.getMembership as SinonStub) - .getCall(0) - .calledWith(request, expectedOptions /*, callback defined above */) - ); + const actualRequest = ( + client.innerApiCalls.getMembership as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.getMembership as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); }); it('invokes getMembership with error', async () => { @@ -330,26 +343,25 @@ describe('v1.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1.GetMembershipRequest() ); - request.name = ''; - const expectedHeaderRequestParams = 'name='; - const expectedOptions = { - otherArgs: { - headers: { - 'x-goog-request-params': expectedHeaderRequestParams, - }, - }, - }; + const defaultValue1 = getTypeDefaultValue('GetMembershipRequest', [ + 'name', + ]); + request.name = defaultValue1; + const expectedHeaderRequestParams = `name=${defaultValue1}`; const expectedError = new Error('expected'); client.innerApiCalls.getMembership = stubSimpleCall( undefined, expectedError ); await assert.rejects(client.getMembership(request), expectedError); - assert( - (client.innerApiCalls.getMembership as SinonStub) - .getCall(0) - .calledWith(request, expectedOptions, undefined) - ); + const actualRequest = ( + client.innerApiCalls.getMembership as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.getMembership as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); }); it('invokes getMembership with closed client', async () => { @@ -361,7 +373,10 @@ describe('v1.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1.GetMembershipRequest() ); - request.name = ''; + const defaultValue1 = getTypeDefaultValue('GetMembershipRequest', [ + 'name', + ]); + request.name = defaultValue1; const expectedError = new Error('The client has already been closed.'); client.close(); await assert.rejects(client.getMembership(request), expectedError); @@ -378,26 +393,23 @@ describe('v1.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1.GetFeatureRequest() ); - request.name = ''; - const expectedHeaderRequestParams = 'name='; - const expectedOptions = { - otherArgs: { - headers: { - 'x-goog-request-params': expectedHeaderRequestParams, - }, - }, - }; + const defaultValue1 = getTypeDefaultValue('GetFeatureRequest', ['name']); + request.name = defaultValue1; + const expectedHeaderRequestParams = `name=${defaultValue1}`; const expectedResponse = generateSampleMessage( new protos.google.cloud.gkehub.v1.Feature() ); client.innerApiCalls.getFeature = stubSimpleCall(expectedResponse); const [response] = await client.getFeature(request); assert.deepStrictEqual(response, expectedResponse); - assert( - (client.innerApiCalls.getFeature as SinonStub) - .getCall(0) - .calledWith(request, expectedOptions, undefined) - ); + const actualRequest = ( + client.innerApiCalls.getFeature as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.getFeature as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); }); it('invokes getFeature without error using callback', async () => { @@ -409,15 +421,9 @@ describe('v1.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1.GetFeatureRequest() ); - request.name = ''; - const expectedHeaderRequestParams = 'name='; - const expectedOptions = { - otherArgs: { - headers: { - 'x-goog-request-params': expectedHeaderRequestParams, - }, - }, - }; + const defaultValue1 = getTypeDefaultValue('GetFeatureRequest', ['name']); + request.name = defaultValue1; + const expectedHeaderRequestParams = `name=${defaultValue1}`; const expectedResponse = generateSampleMessage( new protos.google.cloud.gkehub.v1.Feature() ); @@ -440,11 +446,14 @@ describe('v1.GkeHubClient', () => { }); const response = await promise; assert.deepStrictEqual(response, expectedResponse); - assert( - (client.innerApiCalls.getFeature as SinonStub) - .getCall(0) - .calledWith(request, expectedOptions /*, callback defined above */) - ); + const actualRequest = ( + client.innerApiCalls.getFeature as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.getFeature as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); }); it('invokes getFeature with error', async () => { @@ -456,26 +465,23 @@ describe('v1.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1.GetFeatureRequest() ); - request.name = ''; - const expectedHeaderRequestParams = 'name='; - const expectedOptions = { - otherArgs: { - headers: { - 'x-goog-request-params': expectedHeaderRequestParams, - }, - }, - }; + const defaultValue1 = getTypeDefaultValue('GetFeatureRequest', ['name']); + request.name = defaultValue1; + const expectedHeaderRequestParams = `name=${defaultValue1}`; const expectedError = new Error('expected'); client.innerApiCalls.getFeature = stubSimpleCall( undefined, expectedError ); await assert.rejects(client.getFeature(request), expectedError); - assert( - (client.innerApiCalls.getFeature as SinonStub) - .getCall(0) - .calledWith(request, expectedOptions, undefined) - ); + const actualRequest = ( + client.innerApiCalls.getFeature as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.getFeature as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); }); it('invokes getFeature with closed client', async () => { @@ -487,7 +493,8 @@ describe('v1.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1.GetFeatureRequest() ); - request.name = ''; + const defaultValue1 = getTypeDefaultValue('GetFeatureRequest', ['name']); + request.name = defaultValue1; const expectedError = new Error('The client has already been closed.'); client.close(); await assert.rejects(client.getFeature(request), expectedError); @@ -504,15 +511,12 @@ describe('v1.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1.GenerateConnectManifestRequest() ); - request.name = ''; - const expectedHeaderRequestParams = 'name='; - const expectedOptions = { - otherArgs: { - headers: { - 'x-goog-request-params': expectedHeaderRequestParams, - }, - }, - }; + const defaultValue1 = getTypeDefaultValue( + 'GenerateConnectManifestRequest', + ['name'] + ); + request.name = defaultValue1; + const expectedHeaderRequestParams = `name=${defaultValue1}`; const expectedResponse = generateSampleMessage( new protos.google.cloud.gkehub.v1.GenerateConnectManifestResponse() ); @@ -520,11 +524,14 @@ describe('v1.GkeHubClient', () => { stubSimpleCall(expectedResponse); const [response] = await client.generateConnectManifest(request); assert.deepStrictEqual(response, expectedResponse); - assert( - (client.innerApiCalls.generateConnectManifest as SinonStub) - .getCall(0) - .calledWith(request, expectedOptions, undefined) - ); + const actualRequest = ( + client.innerApiCalls.generateConnectManifest as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.generateConnectManifest as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); }); it('invokes generateConnectManifest without error using callback', async () => { @@ -536,15 +543,12 @@ describe('v1.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1.GenerateConnectManifestRequest() ); - request.name = ''; - const expectedHeaderRequestParams = 'name='; - const expectedOptions = { - otherArgs: { - headers: { - 'x-goog-request-params': expectedHeaderRequestParams, - }, - }, - }; + const defaultValue1 = getTypeDefaultValue( + 'GenerateConnectManifestRequest', + ['name'] + ); + request.name = defaultValue1; + const expectedHeaderRequestParams = `name=${defaultValue1}`; const expectedResponse = generateSampleMessage( new protos.google.cloud.gkehub.v1.GenerateConnectManifestResponse() ); @@ -567,11 +571,14 @@ describe('v1.GkeHubClient', () => { }); const response = await promise; assert.deepStrictEqual(response, expectedResponse); - assert( - (client.innerApiCalls.generateConnectManifest as SinonStub) - .getCall(0) - .calledWith(request, expectedOptions /*, callback defined above */) - ); + const actualRequest = ( + client.innerApiCalls.generateConnectManifest as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.generateConnectManifest as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); }); it('invokes generateConnectManifest with error', async () => { @@ -583,15 +590,12 @@ describe('v1.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1.GenerateConnectManifestRequest() ); - request.name = ''; - const expectedHeaderRequestParams = 'name='; - const expectedOptions = { - otherArgs: { - headers: { - 'x-goog-request-params': expectedHeaderRequestParams, - }, - }, - }; + const defaultValue1 = getTypeDefaultValue( + 'GenerateConnectManifestRequest', + ['name'] + ); + request.name = defaultValue1; + const expectedHeaderRequestParams = `name=${defaultValue1}`; const expectedError = new Error('expected'); client.innerApiCalls.generateConnectManifest = stubSimpleCall( undefined, @@ -601,11 +605,14 @@ describe('v1.GkeHubClient', () => { client.generateConnectManifest(request), expectedError ); - assert( - (client.innerApiCalls.generateConnectManifest as SinonStub) - .getCall(0) - .calledWith(request, expectedOptions, undefined) - ); + const actualRequest = ( + client.innerApiCalls.generateConnectManifest as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.generateConnectManifest as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); }); it('invokes generateConnectManifest with closed client', async () => { @@ -617,7 +624,11 @@ describe('v1.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1.GenerateConnectManifestRequest() ); - request.name = ''; + const defaultValue1 = getTypeDefaultValue( + 'GenerateConnectManifestRequest', + ['name'] + ); + request.name = defaultValue1; const expectedError = new Error('The client has already been closed.'); client.close(); await assert.rejects( @@ -637,15 +648,11 @@ describe('v1.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1.CreateMembershipRequest() ); - request.parent = ''; - const expectedHeaderRequestParams = 'parent='; - const expectedOptions = { - otherArgs: { - headers: { - 'x-goog-request-params': expectedHeaderRequestParams, - }, - }, - }; + const defaultValue1 = getTypeDefaultValue('CreateMembershipRequest', [ + 'parent', + ]); + request.parent = defaultValue1; + const expectedHeaderRequestParams = `parent=${defaultValue1}`; const expectedResponse = generateSampleMessage( new protos.google.longrunning.Operation() ); @@ -654,11 +661,14 @@ describe('v1.GkeHubClient', () => { const [operation] = await client.createMembership(request); const [response] = await operation.promise(); assert.deepStrictEqual(response, expectedResponse); - assert( - (client.innerApiCalls.createMembership as SinonStub) - .getCall(0) - .calledWith(request, expectedOptions, undefined) - ); + const actualRequest = ( + client.innerApiCalls.createMembership as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.createMembership as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); }); it('invokes createMembership without error using callback', async () => { @@ -670,15 +680,11 @@ describe('v1.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1.CreateMembershipRequest() ); - request.parent = ''; - const expectedHeaderRequestParams = 'parent='; - const expectedOptions = { - otherArgs: { - headers: { - 'x-goog-request-params': expectedHeaderRequestParams, - }, - }, - }; + const defaultValue1 = getTypeDefaultValue('CreateMembershipRequest', [ + 'parent', + ]); + request.parent = defaultValue1; + const expectedHeaderRequestParams = `parent=${defaultValue1}`; const expectedResponse = generateSampleMessage( new protos.google.longrunning.Operation() ); @@ -708,11 +714,14 @@ describe('v1.GkeHubClient', () => { >; const [response] = await operation.promise(); assert.deepStrictEqual(response, expectedResponse); - assert( - (client.innerApiCalls.createMembership as SinonStub) - .getCall(0) - .calledWith(request, expectedOptions /*, callback defined above */) - ); + const actualRequest = ( + client.innerApiCalls.createMembership as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.createMembership as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); }); it('invokes createMembership with call error', async () => { @@ -724,26 +733,25 @@ describe('v1.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1.CreateMembershipRequest() ); - request.parent = ''; - const expectedHeaderRequestParams = 'parent='; - const expectedOptions = { - otherArgs: { - headers: { - 'x-goog-request-params': expectedHeaderRequestParams, - }, - }, - }; + const defaultValue1 = getTypeDefaultValue('CreateMembershipRequest', [ + 'parent', + ]); + request.parent = defaultValue1; + const expectedHeaderRequestParams = `parent=${defaultValue1}`; const expectedError = new Error('expected'); client.innerApiCalls.createMembership = stubLongRunningCall( undefined, expectedError ); await assert.rejects(client.createMembership(request), expectedError); - assert( - (client.innerApiCalls.createMembership as SinonStub) - .getCall(0) - .calledWith(request, expectedOptions, undefined) - ); + const actualRequest = ( + client.innerApiCalls.createMembership as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.createMembership as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); }); it('invokes createMembership with LRO error', async () => { @@ -755,15 +763,11 @@ describe('v1.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1.CreateMembershipRequest() ); - request.parent = ''; - const expectedHeaderRequestParams = 'parent='; - const expectedOptions = { - otherArgs: { - headers: { - 'x-goog-request-params': expectedHeaderRequestParams, - }, - }, - }; + const defaultValue1 = getTypeDefaultValue('CreateMembershipRequest', [ + 'parent', + ]); + request.parent = defaultValue1; + const expectedHeaderRequestParams = `parent=${defaultValue1}`; const expectedError = new Error('expected'); client.innerApiCalls.createMembership = stubLongRunningCall( undefined, @@ -772,11 +776,14 @@ describe('v1.GkeHubClient', () => { ); const [operation] = await client.createMembership(request); await assert.rejects(operation.promise(), expectedError); - assert( - (client.innerApiCalls.createMembership as SinonStub) - .getCall(0) - .calledWith(request, expectedOptions, undefined) - ); + const actualRequest = ( + client.innerApiCalls.createMembership as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.createMembership as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); }); it('invokes checkCreateMembershipProgress without error', async () => { @@ -831,15 +838,11 @@ describe('v1.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1.CreateFeatureRequest() ); - request.parent = ''; - const expectedHeaderRequestParams = 'parent='; - const expectedOptions = { - otherArgs: { - headers: { - 'x-goog-request-params': expectedHeaderRequestParams, - }, - }, - }; + const defaultValue1 = getTypeDefaultValue('CreateFeatureRequest', [ + 'parent', + ]); + request.parent = defaultValue1; + const expectedHeaderRequestParams = `parent=${defaultValue1}`; const expectedResponse = generateSampleMessage( new protos.google.longrunning.Operation() ); @@ -848,11 +851,14 @@ describe('v1.GkeHubClient', () => { const [operation] = await client.createFeature(request); const [response] = await operation.promise(); assert.deepStrictEqual(response, expectedResponse); - assert( - (client.innerApiCalls.createFeature as SinonStub) - .getCall(0) - .calledWith(request, expectedOptions, undefined) - ); + const actualRequest = ( + client.innerApiCalls.createFeature as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.createFeature as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); }); it('invokes createFeature without error using callback', async () => { @@ -864,15 +870,11 @@ describe('v1.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1.CreateFeatureRequest() ); - request.parent = ''; - const expectedHeaderRequestParams = 'parent='; - const expectedOptions = { - otherArgs: { - headers: { - 'x-goog-request-params': expectedHeaderRequestParams, - }, - }, - }; + const defaultValue1 = getTypeDefaultValue('CreateFeatureRequest', [ + 'parent', + ]); + request.parent = defaultValue1; + const expectedHeaderRequestParams = `parent=${defaultValue1}`; const expectedResponse = generateSampleMessage( new protos.google.longrunning.Operation() ); @@ -902,11 +904,14 @@ describe('v1.GkeHubClient', () => { >; const [response] = await operation.promise(); assert.deepStrictEqual(response, expectedResponse); - assert( - (client.innerApiCalls.createFeature as SinonStub) - .getCall(0) - .calledWith(request, expectedOptions /*, callback defined above */) - ); + const actualRequest = ( + client.innerApiCalls.createFeature as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.createFeature as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); }); it('invokes createFeature with call error', async () => { @@ -918,26 +923,25 @@ describe('v1.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1.CreateFeatureRequest() ); - request.parent = ''; - const expectedHeaderRequestParams = 'parent='; - const expectedOptions = { - otherArgs: { - headers: { - 'x-goog-request-params': expectedHeaderRequestParams, - }, - }, - }; + const defaultValue1 = getTypeDefaultValue('CreateFeatureRequest', [ + 'parent', + ]); + request.parent = defaultValue1; + const expectedHeaderRequestParams = `parent=${defaultValue1}`; const expectedError = new Error('expected'); client.innerApiCalls.createFeature = stubLongRunningCall( undefined, expectedError ); await assert.rejects(client.createFeature(request), expectedError); - assert( - (client.innerApiCalls.createFeature as SinonStub) - .getCall(0) - .calledWith(request, expectedOptions, undefined) - ); + const actualRequest = ( + client.innerApiCalls.createFeature as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.createFeature as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); }); it('invokes createFeature with LRO error', async () => { @@ -949,15 +953,11 @@ describe('v1.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1.CreateFeatureRequest() ); - request.parent = ''; - const expectedHeaderRequestParams = 'parent='; - const expectedOptions = { - otherArgs: { - headers: { - 'x-goog-request-params': expectedHeaderRequestParams, - }, - }, - }; + const defaultValue1 = getTypeDefaultValue('CreateFeatureRequest', [ + 'parent', + ]); + request.parent = defaultValue1; + const expectedHeaderRequestParams = `parent=${defaultValue1}`; const expectedError = new Error('expected'); client.innerApiCalls.createFeature = stubLongRunningCall( undefined, @@ -966,11 +966,14 @@ describe('v1.GkeHubClient', () => { ); const [operation] = await client.createFeature(request); await assert.rejects(operation.promise(), expectedError); - assert( - (client.innerApiCalls.createFeature as SinonStub) - .getCall(0) - .calledWith(request, expectedOptions, undefined) - ); + const actualRequest = ( + client.innerApiCalls.createFeature as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.createFeature as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); }); it('invokes checkCreateFeatureProgress without error', async () => { @@ -1025,15 +1028,11 @@ describe('v1.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1.DeleteMembershipRequest() ); - request.name = ''; - const expectedHeaderRequestParams = 'name='; - const expectedOptions = { - otherArgs: { - headers: { - 'x-goog-request-params': expectedHeaderRequestParams, - }, - }, - }; + const defaultValue1 = getTypeDefaultValue('DeleteMembershipRequest', [ + 'name', + ]); + request.name = defaultValue1; + const expectedHeaderRequestParams = `name=${defaultValue1}`; const expectedResponse = generateSampleMessage( new protos.google.longrunning.Operation() ); @@ -1042,11 +1041,14 @@ describe('v1.GkeHubClient', () => { const [operation] = await client.deleteMembership(request); const [response] = await operation.promise(); assert.deepStrictEqual(response, expectedResponse); - assert( - (client.innerApiCalls.deleteMembership as SinonStub) - .getCall(0) - .calledWith(request, expectedOptions, undefined) - ); + const actualRequest = ( + client.innerApiCalls.deleteMembership as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.deleteMembership as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); }); it('invokes deleteMembership without error using callback', async () => { @@ -1058,15 +1060,11 @@ describe('v1.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1.DeleteMembershipRequest() ); - request.name = ''; - const expectedHeaderRequestParams = 'name='; - const expectedOptions = { - otherArgs: { - headers: { - 'x-goog-request-params': expectedHeaderRequestParams, - }, - }, - }; + const defaultValue1 = getTypeDefaultValue('DeleteMembershipRequest', [ + 'name', + ]); + request.name = defaultValue1; + const expectedHeaderRequestParams = `name=${defaultValue1}`; const expectedResponse = generateSampleMessage( new protos.google.longrunning.Operation() ); @@ -1096,11 +1094,14 @@ describe('v1.GkeHubClient', () => { >; const [response] = await operation.promise(); assert.deepStrictEqual(response, expectedResponse); - assert( - (client.innerApiCalls.deleteMembership as SinonStub) - .getCall(0) - .calledWith(request, expectedOptions /*, callback defined above */) - ); + const actualRequest = ( + client.innerApiCalls.deleteMembership as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.deleteMembership as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); }); it('invokes deleteMembership with call error', async () => { @@ -1112,26 +1113,25 @@ describe('v1.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1.DeleteMembershipRequest() ); - request.name = ''; - const expectedHeaderRequestParams = 'name='; - const expectedOptions = { - otherArgs: { - headers: { - 'x-goog-request-params': expectedHeaderRequestParams, - }, - }, - }; + const defaultValue1 = getTypeDefaultValue('DeleteMembershipRequest', [ + 'name', + ]); + request.name = defaultValue1; + const expectedHeaderRequestParams = `name=${defaultValue1}`; const expectedError = new Error('expected'); client.innerApiCalls.deleteMembership = stubLongRunningCall( undefined, expectedError ); await assert.rejects(client.deleteMembership(request), expectedError); - assert( - (client.innerApiCalls.deleteMembership as SinonStub) - .getCall(0) - .calledWith(request, expectedOptions, undefined) - ); + const actualRequest = ( + client.innerApiCalls.deleteMembership as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.deleteMembership as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); }); it('invokes deleteMembership with LRO error', async () => { @@ -1143,15 +1143,11 @@ describe('v1.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1.DeleteMembershipRequest() ); - request.name = ''; - const expectedHeaderRequestParams = 'name='; - const expectedOptions = { - otherArgs: { - headers: { - 'x-goog-request-params': expectedHeaderRequestParams, - }, - }, - }; + const defaultValue1 = getTypeDefaultValue('DeleteMembershipRequest', [ + 'name', + ]); + request.name = defaultValue1; + const expectedHeaderRequestParams = `name=${defaultValue1}`; const expectedError = new Error('expected'); client.innerApiCalls.deleteMembership = stubLongRunningCall( undefined, @@ -1160,11 +1156,14 @@ describe('v1.GkeHubClient', () => { ); const [operation] = await client.deleteMembership(request); await assert.rejects(operation.promise(), expectedError); - assert( - (client.innerApiCalls.deleteMembership as SinonStub) - .getCall(0) - .calledWith(request, expectedOptions, undefined) - ); + const actualRequest = ( + client.innerApiCalls.deleteMembership as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.deleteMembership as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); }); it('invokes checkDeleteMembershipProgress without error', async () => { @@ -1219,15 +1218,11 @@ describe('v1.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1.DeleteFeatureRequest() ); - request.name = ''; - const expectedHeaderRequestParams = 'name='; - const expectedOptions = { - otherArgs: { - headers: { - 'x-goog-request-params': expectedHeaderRequestParams, - }, - }, - }; + const defaultValue1 = getTypeDefaultValue('DeleteFeatureRequest', [ + 'name', + ]); + request.name = defaultValue1; + const expectedHeaderRequestParams = `name=${defaultValue1}`; const expectedResponse = generateSampleMessage( new protos.google.longrunning.Operation() ); @@ -1236,11 +1231,14 @@ describe('v1.GkeHubClient', () => { const [operation] = await client.deleteFeature(request); const [response] = await operation.promise(); assert.deepStrictEqual(response, expectedResponse); - assert( - (client.innerApiCalls.deleteFeature as SinonStub) - .getCall(0) - .calledWith(request, expectedOptions, undefined) - ); + const actualRequest = ( + client.innerApiCalls.deleteFeature as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.deleteFeature as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); }); it('invokes deleteFeature without error using callback', async () => { @@ -1252,15 +1250,11 @@ describe('v1.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1.DeleteFeatureRequest() ); - request.name = ''; - const expectedHeaderRequestParams = 'name='; - const expectedOptions = { - otherArgs: { - headers: { - 'x-goog-request-params': expectedHeaderRequestParams, - }, - }, - }; + const defaultValue1 = getTypeDefaultValue('DeleteFeatureRequest', [ + 'name', + ]); + request.name = defaultValue1; + const expectedHeaderRequestParams = `name=${defaultValue1}`; const expectedResponse = generateSampleMessage( new protos.google.longrunning.Operation() ); @@ -1290,11 +1284,14 @@ describe('v1.GkeHubClient', () => { >; const [response] = await operation.promise(); assert.deepStrictEqual(response, expectedResponse); - assert( - (client.innerApiCalls.deleteFeature as SinonStub) - .getCall(0) - .calledWith(request, expectedOptions /*, callback defined above */) - ); + const actualRequest = ( + client.innerApiCalls.deleteFeature as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.deleteFeature as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); }); it('invokes deleteFeature with call error', async () => { @@ -1306,26 +1303,25 @@ describe('v1.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1.DeleteFeatureRequest() ); - request.name = ''; - const expectedHeaderRequestParams = 'name='; - const expectedOptions = { - otherArgs: { - headers: { - 'x-goog-request-params': expectedHeaderRequestParams, - }, - }, - }; + const defaultValue1 = getTypeDefaultValue('DeleteFeatureRequest', [ + 'name', + ]); + request.name = defaultValue1; + const expectedHeaderRequestParams = `name=${defaultValue1}`; const expectedError = new Error('expected'); client.innerApiCalls.deleteFeature = stubLongRunningCall( undefined, expectedError ); await assert.rejects(client.deleteFeature(request), expectedError); - assert( - (client.innerApiCalls.deleteFeature as SinonStub) - .getCall(0) - .calledWith(request, expectedOptions, undefined) - ); + const actualRequest = ( + client.innerApiCalls.deleteFeature as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.deleteFeature as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); }); it('invokes deleteFeature with LRO error', async () => { @@ -1337,15 +1333,11 @@ describe('v1.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1.DeleteFeatureRequest() ); - request.name = ''; - const expectedHeaderRequestParams = 'name='; - const expectedOptions = { - otherArgs: { - headers: { - 'x-goog-request-params': expectedHeaderRequestParams, - }, - }, - }; + const defaultValue1 = getTypeDefaultValue('DeleteFeatureRequest', [ + 'name', + ]); + request.name = defaultValue1; + const expectedHeaderRequestParams = `name=${defaultValue1}`; const expectedError = new Error('expected'); client.innerApiCalls.deleteFeature = stubLongRunningCall( undefined, @@ -1354,11 +1346,14 @@ describe('v1.GkeHubClient', () => { ); const [operation] = await client.deleteFeature(request); await assert.rejects(operation.promise(), expectedError); - assert( - (client.innerApiCalls.deleteFeature as SinonStub) - .getCall(0) - .calledWith(request, expectedOptions, undefined) - ); + const actualRequest = ( + client.innerApiCalls.deleteFeature as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.deleteFeature as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); }); it('invokes checkDeleteFeatureProgress without error', async () => { @@ -1413,15 +1408,11 @@ describe('v1.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1.UpdateMembershipRequest() ); - request.name = ''; - const expectedHeaderRequestParams = 'name='; - const expectedOptions = { - otherArgs: { - headers: { - 'x-goog-request-params': expectedHeaderRequestParams, - }, - }, - }; + const defaultValue1 = getTypeDefaultValue('UpdateMembershipRequest', [ + 'name', + ]); + request.name = defaultValue1; + const expectedHeaderRequestParams = `name=${defaultValue1}`; const expectedResponse = generateSampleMessage( new protos.google.longrunning.Operation() ); @@ -1430,11 +1421,14 @@ describe('v1.GkeHubClient', () => { const [operation] = await client.updateMembership(request); const [response] = await operation.promise(); assert.deepStrictEqual(response, expectedResponse); - assert( - (client.innerApiCalls.updateMembership as SinonStub) - .getCall(0) - .calledWith(request, expectedOptions, undefined) - ); + const actualRequest = ( + client.innerApiCalls.updateMembership as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.updateMembership as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); }); it('invokes updateMembership without error using callback', async () => { @@ -1446,15 +1440,11 @@ describe('v1.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1.UpdateMembershipRequest() ); - request.name = ''; - const expectedHeaderRequestParams = 'name='; - const expectedOptions = { - otherArgs: { - headers: { - 'x-goog-request-params': expectedHeaderRequestParams, - }, - }, - }; + const defaultValue1 = getTypeDefaultValue('UpdateMembershipRequest', [ + 'name', + ]); + request.name = defaultValue1; + const expectedHeaderRequestParams = `name=${defaultValue1}`; const expectedResponse = generateSampleMessage( new protos.google.longrunning.Operation() ); @@ -1484,11 +1474,14 @@ describe('v1.GkeHubClient', () => { >; const [response] = await operation.promise(); assert.deepStrictEqual(response, expectedResponse); - assert( - (client.innerApiCalls.updateMembership as SinonStub) - .getCall(0) - .calledWith(request, expectedOptions /*, callback defined above */) - ); + const actualRequest = ( + client.innerApiCalls.updateMembership as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.updateMembership as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); }); it('invokes updateMembership with call error', async () => { @@ -1500,26 +1493,25 @@ describe('v1.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1.UpdateMembershipRequest() ); - request.name = ''; - const expectedHeaderRequestParams = 'name='; - const expectedOptions = { - otherArgs: { - headers: { - 'x-goog-request-params': expectedHeaderRequestParams, - }, - }, - }; + const defaultValue1 = getTypeDefaultValue('UpdateMembershipRequest', [ + 'name', + ]); + request.name = defaultValue1; + const expectedHeaderRequestParams = `name=${defaultValue1}`; const expectedError = new Error('expected'); client.innerApiCalls.updateMembership = stubLongRunningCall( undefined, expectedError ); await assert.rejects(client.updateMembership(request), expectedError); - assert( - (client.innerApiCalls.updateMembership as SinonStub) - .getCall(0) - .calledWith(request, expectedOptions, undefined) - ); + const actualRequest = ( + client.innerApiCalls.updateMembership as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.updateMembership as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); }); it('invokes updateMembership with LRO error', async () => { @@ -1531,15 +1523,11 @@ describe('v1.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1.UpdateMembershipRequest() ); - request.name = ''; - const expectedHeaderRequestParams = 'name='; - const expectedOptions = { - otherArgs: { - headers: { - 'x-goog-request-params': expectedHeaderRequestParams, - }, - }, - }; + const defaultValue1 = getTypeDefaultValue('UpdateMembershipRequest', [ + 'name', + ]); + request.name = defaultValue1; + const expectedHeaderRequestParams = `name=${defaultValue1}`; const expectedError = new Error('expected'); client.innerApiCalls.updateMembership = stubLongRunningCall( undefined, @@ -1548,11 +1536,14 @@ describe('v1.GkeHubClient', () => { ); const [operation] = await client.updateMembership(request); await assert.rejects(operation.promise(), expectedError); - assert( - (client.innerApiCalls.updateMembership as SinonStub) - .getCall(0) - .calledWith(request, expectedOptions, undefined) - ); + const actualRequest = ( + client.innerApiCalls.updateMembership as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.updateMembership as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); }); it('invokes checkUpdateMembershipProgress without error', async () => { @@ -1607,15 +1598,11 @@ describe('v1.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1.UpdateFeatureRequest() ); - request.name = ''; - const expectedHeaderRequestParams = 'name='; - const expectedOptions = { - otherArgs: { - headers: { - 'x-goog-request-params': expectedHeaderRequestParams, - }, - }, - }; + const defaultValue1 = getTypeDefaultValue('UpdateFeatureRequest', [ + 'name', + ]); + request.name = defaultValue1; + const expectedHeaderRequestParams = `name=${defaultValue1}`; const expectedResponse = generateSampleMessage( new protos.google.longrunning.Operation() ); @@ -1624,11 +1611,14 @@ describe('v1.GkeHubClient', () => { const [operation] = await client.updateFeature(request); const [response] = await operation.promise(); assert.deepStrictEqual(response, expectedResponse); - assert( - (client.innerApiCalls.updateFeature as SinonStub) - .getCall(0) - .calledWith(request, expectedOptions, undefined) - ); + const actualRequest = ( + client.innerApiCalls.updateFeature as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.updateFeature as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); }); it('invokes updateFeature without error using callback', async () => { @@ -1640,15 +1630,11 @@ describe('v1.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1.UpdateFeatureRequest() ); - request.name = ''; - const expectedHeaderRequestParams = 'name='; - const expectedOptions = { - otherArgs: { - headers: { - 'x-goog-request-params': expectedHeaderRequestParams, - }, - }, - }; + const defaultValue1 = getTypeDefaultValue('UpdateFeatureRequest', [ + 'name', + ]); + request.name = defaultValue1; + const expectedHeaderRequestParams = `name=${defaultValue1}`; const expectedResponse = generateSampleMessage( new protos.google.longrunning.Operation() ); @@ -1678,11 +1664,14 @@ describe('v1.GkeHubClient', () => { >; const [response] = await operation.promise(); assert.deepStrictEqual(response, expectedResponse); - assert( - (client.innerApiCalls.updateFeature as SinonStub) - .getCall(0) - .calledWith(request, expectedOptions /*, callback defined above */) - ); + const actualRequest = ( + client.innerApiCalls.updateFeature as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.updateFeature as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); }); it('invokes updateFeature with call error', async () => { @@ -1694,26 +1683,25 @@ describe('v1.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1.UpdateFeatureRequest() ); - request.name = ''; - const expectedHeaderRequestParams = 'name='; - const expectedOptions = { - otherArgs: { - headers: { - 'x-goog-request-params': expectedHeaderRequestParams, - }, - }, - }; + const defaultValue1 = getTypeDefaultValue('UpdateFeatureRequest', [ + 'name', + ]); + request.name = defaultValue1; + const expectedHeaderRequestParams = `name=${defaultValue1}`; const expectedError = new Error('expected'); client.innerApiCalls.updateFeature = stubLongRunningCall( undefined, expectedError ); await assert.rejects(client.updateFeature(request), expectedError); - assert( - (client.innerApiCalls.updateFeature as SinonStub) - .getCall(0) - .calledWith(request, expectedOptions, undefined) - ); + const actualRequest = ( + client.innerApiCalls.updateFeature as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.updateFeature as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); }); it('invokes updateFeature with LRO error', async () => { @@ -1725,15 +1713,11 @@ describe('v1.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1.UpdateFeatureRequest() ); - request.name = ''; - const expectedHeaderRequestParams = 'name='; - const expectedOptions = { - otherArgs: { - headers: { - 'x-goog-request-params': expectedHeaderRequestParams, - }, - }, - }; + const defaultValue1 = getTypeDefaultValue('UpdateFeatureRequest', [ + 'name', + ]); + request.name = defaultValue1; + const expectedHeaderRequestParams = `name=${defaultValue1}`; const expectedError = new Error('expected'); client.innerApiCalls.updateFeature = stubLongRunningCall( undefined, @@ -1742,11 +1726,14 @@ describe('v1.GkeHubClient', () => { ); const [operation] = await client.updateFeature(request); await assert.rejects(operation.promise(), expectedError); - assert( - (client.innerApiCalls.updateFeature as SinonStub) - .getCall(0) - .calledWith(request, expectedOptions, undefined) - ); + const actualRequest = ( + client.innerApiCalls.updateFeature as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.updateFeature as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); }); it('invokes checkUpdateFeatureProgress without error', async () => { @@ -1801,15 +1788,11 @@ describe('v1.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1.ListMembershipsRequest() ); - request.parent = ''; - const expectedHeaderRequestParams = 'parent='; - const expectedOptions = { - otherArgs: { - headers: { - 'x-goog-request-params': expectedHeaderRequestParams, - }, - }, - }; + const defaultValue1 = getTypeDefaultValue('ListMembershipsRequest', [ + 'parent', + ]); + request.parent = defaultValue1; + const expectedHeaderRequestParams = `parent=${defaultValue1}`; const expectedResponse = [ generateSampleMessage(new protos.google.cloud.gkehub.v1.Membership()), generateSampleMessage(new protos.google.cloud.gkehub.v1.Membership()), @@ -1818,11 +1801,14 @@ describe('v1.GkeHubClient', () => { client.innerApiCalls.listMemberships = stubSimpleCall(expectedResponse); const [response] = await client.listMemberships(request); assert.deepStrictEqual(response, expectedResponse); - assert( - (client.innerApiCalls.listMemberships as SinonStub) - .getCall(0) - .calledWith(request, expectedOptions, undefined) - ); + const actualRequest = ( + client.innerApiCalls.listMemberships as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.listMemberships as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); }); it('invokes listMemberships without error using callback', async () => { @@ -1834,15 +1820,11 @@ describe('v1.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1.ListMembershipsRequest() ); - request.parent = ''; - const expectedHeaderRequestParams = 'parent='; - const expectedOptions = { - otherArgs: { - headers: { - 'x-goog-request-params': expectedHeaderRequestParams, - }, - }, - }; + const defaultValue1 = getTypeDefaultValue('ListMembershipsRequest', [ + 'parent', + ]); + request.parent = defaultValue1; + const expectedHeaderRequestParams = `parent=${defaultValue1}`; const expectedResponse = [ generateSampleMessage(new protos.google.cloud.gkehub.v1.Membership()), generateSampleMessage(new protos.google.cloud.gkehub.v1.Membership()), @@ -1867,11 +1849,14 @@ describe('v1.GkeHubClient', () => { }); const response = await promise; assert.deepStrictEqual(response, expectedResponse); - assert( - (client.innerApiCalls.listMemberships as SinonStub) - .getCall(0) - .calledWith(request, expectedOptions /*, callback defined above */) - ); + const actualRequest = ( + client.innerApiCalls.listMemberships as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.listMemberships as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); }); it('invokes listMemberships with error', async () => { @@ -1883,26 +1868,25 @@ describe('v1.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1.ListMembershipsRequest() ); - request.parent = ''; - const expectedHeaderRequestParams = 'parent='; - const expectedOptions = { - otherArgs: { - headers: { - 'x-goog-request-params': expectedHeaderRequestParams, - }, - }, - }; + const defaultValue1 = getTypeDefaultValue('ListMembershipsRequest', [ + 'parent', + ]); + request.parent = defaultValue1; + const expectedHeaderRequestParams = `parent=${defaultValue1}`; const expectedError = new Error('expected'); client.innerApiCalls.listMemberships = stubSimpleCall( undefined, expectedError ); await assert.rejects(client.listMemberships(request), expectedError); - assert( - (client.innerApiCalls.listMemberships as SinonStub) - .getCall(0) - .calledWith(request, expectedOptions, undefined) - ); + const actualRequest = ( + client.innerApiCalls.listMemberships as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.listMemberships as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); }); it('invokes listMembershipsStream without error', async () => { @@ -1914,8 +1898,11 @@ describe('v1.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1.ListMembershipsRequest() ); - request.parent = ''; - const expectedHeaderRequestParams = 'parent='; + const defaultValue1 = getTypeDefaultValue('ListMembershipsRequest', [ + 'parent', + ]); + request.parent = defaultValue1; + const expectedHeaderRequestParams = `parent=${defaultValue1}`; const expectedResponse = [ generateSampleMessage(new protos.google.cloud.gkehub.v1.Membership()), generateSampleMessage(new protos.google.cloud.gkehub.v1.Membership()), @@ -1946,11 +1933,12 @@ describe('v1.GkeHubClient', () => { .getCall(0) .calledWith(client.innerApiCalls.listMemberships, request) ); - assert.strictEqual( - ( - client.descriptors.page.listMemberships.createStream as SinonStub - ).getCall(0).args[2].otherArgs.headers['x-goog-request-params'], - expectedHeaderRequestParams + assert( + (client.descriptors.page.listMemberships.createStream as SinonStub) + .getCall(0) + .args[2].otherArgs.headers['x-goog-request-params'].includes( + expectedHeaderRequestParams + ) ); }); @@ -1963,8 +1951,11 @@ describe('v1.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1.ListMembershipsRequest() ); - request.parent = ''; - const expectedHeaderRequestParams = 'parent='; + const defaultValue1 = getTypeDefaultValue('ListMembershipsRequest', [ + 'parent', + ]); + request.parent = defaultValue1; + const expectedHeaderRequestParams = `parent=${defaultValue1}`; const expectedError = new Error('expected'); client.descriptors.page.listMemberships.createStream = stubPageStreamingCall(undefined, expectedError); @@ -1990,11 +1981,12 @@ describe('v1.GkeHubClient', () => { .getCall(0) .calledWith(client.innerApiCalls.listMemberships, request) ); - assert.strictEqual( - ( - client.descriptors.page.listMemberships.createStream as SinonStub - ).getCall(0).args[2].otherArgs.headers['x-goog-request-params'], - expectedHeaderRequestParams + assert( + (client.descriptors.page.listMemberships.createStream as SinonStub) + .getCall(0) + .args[2].otherArgs.headers['x-goog-request-params'].includes( + expectedHeaderRequestParams + ) ); }); @@ -2007,8 +1999,11 @@ describe('v1.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1.ListMembershipsRequest() ); - request.parent = ''; - const expectedHeaderRequestParams = 'parent='; + const defaultValue1 = getTypeDefaultValue('ListMembershipsRequest', [ + 'parent', + ]); + request.parent = defaultValue1; + const expectedHeaderRequestParams = `parent=${defaultValue1}`; const expectedResponse = [ generateSampleMessage(new protos.google.cloud.gkehub.v1.Membership()), generateSampleMessage(new protos.google.cloud.gkehub.v1.Membership()), @@ -2028,11 +2023,12 @@ describe('v1.GkeHubClient', () => { ).getCall(0).args[1], request ); - assert.strictEqual( - ( - client.descriptors.page.listMemberships.asyncIterate as SinonStub - ).getCall(0).args[2].otherArgs.headers['x-goog-request-params'], - expectedHeaderRequestParams + assert( + (client.descriptors.page.listMemberships.asyncIterate as SinonStub) + .getCall(0) + .args[2].otherArgs.headers['x-goog-request-params'].includes( + expectedHeaderRequestParams + ) ); }); @@ -2045,8 +2041,11 @@ describe('v1.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1.ListMembershipsRequest() ); - request.parent = ''; - const expectedHeaderRequestParams = 'parent='; + const defaultValue1 = getTypeDefaultValue('ListMembershipsRequest', [ + 'parent', + ]); + request.parent = defaultValue1; + const expectedHeaderRequestParams = `parent=${defaultValue1}`; const expectedError = new Error('expected'); client.descriptors.page.listMemberships.asyncIterate = stubAsyncIterationCall(undefined, expectedError); @@ -2063,11 +2062,12 @@ describe('v1.GkeHubClient', () => { ).getCall(0).args[1], request ); - assert.strictEqual( - ( - client.descriptors.page.listMemberships.asyncIterate as SinonStub - ).getCall(0).args[2].otherArgs.headers['x-goog-request-params'], - expectedHeaderRequestParams + assert( + (client.descriptors.page.listMemberships.asyncIterate as SinonStub) + .getCall(0) + .args[2].otherArgs.headers['x-goog-request-params'].includes( + expectedHeaderRequestParams + ) ); }); }); @@ -2082,15 +2082,11 @@ describe('v1.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1.ListFeaturesRequest() ); - request.parent = ''; - const expectedHeaderRequestParams = 'parent='; - const expectedOptions = { - otherArgs: { - headers: { - 'x-goog-request-params': expectedHeaderRequestParams, - }, - }, - }; + const defaultValue1 = getTypeDefaultValue('ListFeaturesRequest', [ + 'parent', + ]); + request.parent = defaultValue1; + const expectedHeaderRequestParams = `parent=${defaultValue1}`; const expectedResponse = [ generateSampleMessage(new protos.google.cloud.gkehub.v1.Feature()), generateSampleMessage(new protos.google.cloud.gkehub.v1.Feature()), @@ -2099,11 +2095,14 @@ describe('v1.GkeHubClient', () => { client.innerApiCalls.listFeatures = stubSimpleCall(expectedResponse); const [response] = await client.listFeatures(request); assert.deepStrictEqual(response, expectedResponse); - assert( - (client.innerApiCalls.listFeatures as SinonStub) - .getCall(0) - .calledWith(request, expectedOptions, undefined) - ); + const actualRequest = ( + client.innerApiCalls.listFeatures as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.listFeatures as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); }); it('invokes listFeatures without error using callback', async () => { @@ -2115,15 +2114,11 @@ describe('v1.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1.ListFeaturesRequest() ); - request.parent = ''; - const expectedHeaderRequestParams = 'parent='; - const expectedOptions = { - otherArgs: { - headers: { - 'x-goog-request-params': expectedHeaderRequestParams, - }, - }, - }; + const defaultValue1 = getTypeDefaultValue('ListFeaturesRequest', [ + 'parent', + ]); + request.parent = defaultValue1; + const expectedHeaderRequestParams = `parent=${defaultValue1}`; const expectedResponse = [ generateSampleMessage(new protos.google.cloud.gkehub.v1.Feature()), generateSampleMessage(new protos.google.cloud.gkehub.v1.Feature()), @@ -2148,11 +2143,14 @@ describe('v1.GkeHubClient', () => { }); const response = await promise; assert.deepStrictEqual(response, expectedResponse); - assert( - (client.innerApiCalls.listFeatures as SinonStub) - .getCall(0) - .calledWith(request, expectedOptions /*, callback defined above */) - ); + const actualRequest = ( + client.innerApiCalls.listFeatures as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.listFeatures as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); }); it('invokes listFeatures with error', async () => { @@ -2164,26 +2162,25 @@ describe('v1.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1.ListFeaturesRequest() ); - request.parent = ''; - const expectedHeaderRequestParams = 'parent='; - const expectedOptions = { - otherArgs: { - headers: { - 'x-goog-request-params': expectedHeaderRequestParams, - }, - }, - }; + const defaultValue1 = getTypeDefaultValue('ListFeaturesRequest', [ + 'parent', + ]); + request.parent = defaultValue1; + const expectedHeaderRequestParams = `parent=${defaultValue1}`; const expectedError = new Error('expected'); client.innerApiCalls.listFeatures = stubSimpleCall( undefined, expectedError ); await assert.rejects(client.listFeatures(request), expectedError); - assert( - (client.innerApiCalls.listFeatures as SinonStub) - .getCall(0) - .calledWith(request, expectedOptions, undefined) - ); + const actualRequest = ( + client.innerApiCalls.listFeatures as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.listFeatures as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); }); it('invokes listFeaturesStream without error', async () => { @@ -2195,8 +2192,11 @@ describe('v1.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1.ListFeaturesRequest() ); - request.parent = ''; - const expectedHeaderRequestParams = 'parent='; + const defaultValue1 = getTypeDefaultValue('ListFeaturesRequest', [ + 'parent', + ]); + request.parent = defaultValue1; + const expectedHeaderRequestParams = `parent=${defaultValue1}`; const expectedResponse = [ generateSampleMessage(new protos.google.cloud.gkehub.v1.Feature()), generateSampleMessage(new protos.google.cloud.gkehub.v1.Feature()), @@ -2224,11 +2224,12 @@ describe('v1.GkeHubClient', () => { .getCall(0) .calledWith(client.innerApiCalls.listFeatures, request) ); - assert.strictEqual( - ( - client.descriptors.page.listFeatures.createStream as SinonStub - ).getCall(0).args[2].otherArgs.headers['x-goog-request-params'], - expectedHeaderRequestParams + assert( + (client.descriptors.page.listFeatures.createStream as SinonStub) + .getCall(0) + .args[2].otherArgs.headers['x-goog-request-params'].includes( + expectedHeaderRequestParams + ) ); }); @@ -2241,8 +2242,11 @@ describe('v1.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1.ListFeaturesRequest() ); - request.parent = ''; - const expectedHeaderRequestParams = 'parent='; + const defaultValue1 = getTypeDefaultValue('ListFeaturesRequest', [ + 'parent', + ]); + request.parent = defaultValue1; + const expectedHeaderRequestParams = `parent=${defaultValue1}`; const expectedError = new Error('expected'); client.descriptors.page.listFeatures.createStream = stubPageStreamingCall( undefined, @@ -2267,11 +2271,12 @@ describe('v1.GkeHubClient', () => { .getCall(0) .calledWith(client.innerApiCalls.listFeatures, request) ); - assert.strictEqual( - ( - client.descriptors.page.listFeatures.createStream as SinonStub - ).getCall(0).args[2].otherArgs.headers['x-goog-request-params'], - expectedHeaderRequestParams + assert( + (client.descriptors.page.listFeatures.createStream as SinonStub) + .getCall(0) + .args[2].otherArgs.headers['x-goog-request-params'].includes( + expectedHeaderRequestParams + ) ); }); @@ -2284,8 +2289,11 @@ describe('v1.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1.ListFeaturesRequest() ); - request.parent = ''; - const expectedHeaderRequestParams = 'parent='; + const defaultValue1 = getTypeDefaultValue('ListFeaturesRequest', [ + 'parent', + ]); + request.parent = defaultValue1; + const expectedHeaderRequestParams = `parent=${defaultValue1}`; const expectedResponse = [ generateSampleMessage(new protos.google.cloud.gkehub.v1.Feature()), generateSampleMessage(new protos.google.cloud.gkehub.v1.Feature()), @@ -2305,11 +2313,12 @@ describe('v1.GkeHubClient', () => { ).getCall(0).args[1], request ); - assert.strictEqual( - ( - client.descriptors.page.listFeatures.asyncIterate as SinonStub - ).getCall(0).args[2].otherArgs.headers['x-goog-request-params'], - expectedHeaderRequestParams + assert( + (client.descriptors.page.listFeatures.asyncIterate as SinonStub) + .getCall(0) + .args[2].otherArgs.headers['x-goog-request-params'].includes( + expectedHeaderRequestParams + ) ); }); @@ -2322,8 +2331,11 @@ describe('v1.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1.ListFeaturesRequest() ); - request.parent = ''; - const expectedHeaderRequestParams = 'parent='; + const defaultValue1 = getTypeDefaultValue('ListFeaturesRequest', [ + 'parent', + ]); + request.parent = defaultValue1; + const expectedHeaderRequestParams = `parent=${defaultValue1}`; const expectedError = new Error('expected'); client.descriptors.page.listFeatures.asyncIterate = stubAsyncIterationCall(undefined, expectedError); @@ -2340,11 +2352,12 @@ describe('v1.GkeHubClient', () => { ).getCall(0).args[1], request ); - assert.strictEqual( - ( - client.descriptors.page.listFeatures.asyncIterate as SinonStub - ).getCall(0).args[2].otherArgs.headers['x-goog-request-params'], - expectedHeaderRequestParams + assert( + (client.descriptors.page.listFeatures.asyncIterate as SinonStub) + .getCall(0) + .args[2].otherArgs.headers['x-goog-request-params'].includes( + expectedHeaderRequestParams + ) ); }); }); diff --git a/packages/google-cloud-gkehub/test/gapic_gke_hub_v1alpha.ts b/packages/google-cloud-gkehub/test/gapic_gke_hub_v1alpha.ts index bd50c781006..c375654af7f 100644 --- a/packages/google-cloud-gkehub/test/gapic_gke_hub_v1alpha.ts +++ b/packages/google-cloud-gkehub/test/gapic_gke_hub_v1alpha.ts @@ -27,6 +27,21 @@ import {PassThrough} from 'stream'; import {protobuf, LROperation, operationsProtos} from 'google-gax'; +// Dynamically loaded proto JSON is needed to get the type information +// to fill in default values for request objects +const root = protobuf.Root.fromJSON( + require('../protos/protos.json') +).resolveAll(); + +// eslint-disable-next-line @typescript-eslint/no-unused-vars +function getTypeDefaultValue(typeName: string, fields: string[]) { + let type = root.lookupType(typeName) as protobuf.Type; + for (const field of fields.slice(0, -1)) { + type = type.fields[field]?.resolvedType as protobuf.Type; + } + return type.fields[fields[fields.length - 1]]?.defaultValue; +} + function generateSampleMessage(instance: T) { const filledObject = ( instance.constructor as typeof protobuf.Message @@ -252,26 +267,23 @@ describe('v1alpha.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1alpha.GetFeatureRequest() ); - request.name = ''; - const expectedHeaderRequestParams = 'name='; - const expectedOptions = { - otherArgs: { - headers: { - 'x-goog-request-params': expectedHeaderRequestParams, - }, - }, - }; + const defaultValue1 = getTypeDefaultValue('GetFeatureRequest', ['name']); + request.name = defaultValue1; + const expectedHeaderRequestParams = `name=${defaultValue1}`; const expectedResponse = generateSampleMessage( new protos.google.cloud.gkehub.v1alpha.Feature() ); client.innerApiCalls.getFeature = stubSimpleCall(expectedResponse); const [response] = await client.getFeature(request); assert.deepStrictEqual(response, expectedResponse); - assert( - (client.innerApiCalls.getFeature as SinonStub) - .getCall(0) - .calledWith(request, expectedOptions, undefined) - ); + const actualRequest = ( + client.innerApiCalls.getFeature as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.getFeature as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); }); it('invokes getFeature without error using callback', async () => { @@ -283,15 +295,9 @@ describe('v1alpha.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1alpha.GetFeatureRequest() ); - request.name = ''; - const expectedHeaderRequestParams = 'name='; - const expectedOptions = { - otherArgs: { - headers: { - 'x-goog-request-params': expectedHeaderRequestParams, - }, - }, - }; + const defaultValue1 = getTypeDefaultValue('GetFeatureRequest', ['name']); + request.name = defaultValue1; + const expectedHeaderRequestParams = `name=${defaultValue1}`; const expectedResponse = generateSampleMessage( new protos.google.cloud.gkehub.v1alpha.Feature() ); @@ -314,11 +320,14 @@ describe('v1alpha.GkeHubClient', () => { }); const response = await promise; assert.deepStrictEqual(response, expectedResponse); - assert( - (client.innerApiCalls.getFeature as SinonStub) - .getCall(0) - .calledWith(request, expectedOptions /*, callback defined above */) - ); + const actualRequest = ( + client.innerApiCalls.getFeature as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.getFeature as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); }); it('invokes getFeature with error', async () => { @@ -330,26 +339,23 @@ describe('v1alpha.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1alpha.GetFeatureRequest() ); - request.name = ''; - const expectedHeaderRequestParams = 'name='; - const expectedOptions = { - otherArgs: { - headers: { - 'x-goog-request-params': expectedHeaderRequestParams, - }, - }, - }; + const defaultValue1 = getTypeDefaultValue('GetFeatureRequest', ['name']); + request.name = defaultValue1; + const expectedHeaderRequestParams = `name=${defaultValue1}`; const expectedError = new Error('expected'); client.innerApiCalls.getFeature = stubSimpleCall( undefined, expectedError ); await assert.rejects(client.getFeature(request), expectedError); - assert( - (client.innerApiCalls.getFeature as SinonStub) - .getCall(0) - .calledWith(request, expectedOptions, undefined) - ); + const actualRequest = ( + client.innerApiCalls.getFeature as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.getFeature as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); }); it('invokes getFeature with closed client', async () => { @@ -361,7 +367,8 @@ describe('v1alpha.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1alpha.GetFeatureRequest() ); - request.name = ''; + const defaultValue1 = getTypeDefaultValue('GetFeatureRequest', ['name']); + request.name = defaultValue1; const expectedError = new Error('The client has already been closed.'); client.close(); await assert.rejects(client.getFeature(request), expectedError); @@ -378,15 +385,11 @@ describe('v1alpha.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1alpha.CreateFeatureRequest() ); - request.parent = ''; - const expectedHeaderRequestParams = 'parent='; - const expectedOptions = { - otherArgs: { - headers: { - 'x-goog-request-params': expectedHeaderRequestParams, - }, - }, - }; + const defaultValue1 = getTypeDefaultValue('CreateFeatureRequest', [ + 'parent', + ]); + request.parent = defaultValue1; + const expectedHeaderRequestParams = `parent=${defaultValue1}`; const expectedResponse = generateSampleMessage( new protos.google.longrunning.Operation() ); @@ -395,11 +398,14 @@ describe('v1alpha.GkeHubClient', () => { const [operation] = await client.createFeature(request); const [response] = await operation.promise(); assert.deepStrictEqual(response, expectedResponse); - assert( - (client.innerApiCalls.createFeature as SinonStub) - .getCall(0) - .calledWith(request, expectedOptions, undefined) - ); + const actualRequest = ( + client.innerApiCalls.createFeature as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.createFeature as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); }); it('invokes createFeature without error using callback', async () => { @@ -411,15 +417,11 @@ describe('v1alpha.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1alpha.CreateFeatureRequest() ); - request.parent = ''; - const expectedHeaderRequestParams = 'parent='; - const expectedOptions = { - otherArgs: { - headers: { - 'x-goog-request-params': expectedHeaderRequestParams, - }, - }, - }; + const defaultValue1 = getTypeDefaultValue('CreateFeatureRequest', [ + 'parent', + ]); + request.parent = defaultValue1; + const expectedHeaderRequestParams = `parent=${defaultValue1}`; const expectedResponse = generateSampleMessage( new protos.google.longrunning.Operation() ); @@ -449,11 +451,14 @@ describe('v1alpha.GkeHubClient', () => { >; const [response] = await operation.promise(); assert.deepStrictEqual(response, expectedResponse); - assert( - (client.innerApiCalls.createFeature as SinonStub) - .getCall(0) - .calledWith(request, expectedOptions /*, callback defined above */) - ); + const actualRequest = ( + client.innerApiCalls.createFeature as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.createFeature as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); }); it('invokes createFeature with call error', async () => { @@ -465,26 +470,25 @@ describe('v1alpha.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1alpha.CreateFeatureRequest() ); - request.parent = ''; - const expectedHeaderRequestParams = 'parent='; - const expectedOptions = { - otherArgs: { - headers: { - 'x-goog-request-params': expectedHeaderRequestParams, - }, - }, - }; + const defaultValue1 = getTypeDefaultValue('CreateFeatureRequest', [ + 'parent', + ]); + request.parent = defaultValue1; + const expectedHeaderRequestParams = `parent=${defaultValue1}`; const expectedError = new Error('expected'); client.innerApiCalls.createFeature = stubLongRunningCall( undefined, expectedError ); await assert.rejects(client.createFeature(request), expectedError); - assert( - (client.innerApiCalls.createFeature as SinonStub) - .getCall(0) - .calledWith(request, expectedOptions, undefined) - ); + const actualRequest = ( + client.innerApiCalls.createFeature as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.createFeature as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); }); it('invokes createFeature with LRO error', async () => { @@ -496,15 +500,11 @@ describe('v1alpha.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1alpha.CreateFeatureRequest() ); - request.parent = ''; - const expectedHeaderRequestParams = 'parent='; - const expectedOptions = { - otherArgs: { - headers: { - 'x-goog-request-params': expectedHeaderRequestParams, - }, - }, - }; + const defaultValue1 = getTypeDefaultValue('CreateFeatureRequest', [ + 'parent', + ]); + request.parent = defaultValue1; + const expectedHeaderRequestParams = `parent=${defaultValue1}`; const expectedError = new Error('expected'); client.innerApiCalls.createFeature = stubLongRunningCall( undefined, @@ -513,11 +513,14 @@ describe('v1alpha.GkeHubClient', () => { ); const [operation] = await client.createFeature(request); await assert.rejects(operation.promise(), expectedError); - assert( - (client.innerApiCalls.createFeature as SinonStub) - .getCall(0) - .calledWith(request, expectedOptions, undefined) - ); + const actualRequest = ( + client.innerApiCalls.createFeature as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.createFeature as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); }); it('invokes checkCreateFeatureProgress without error', async () => { @@ -572,15 +575,11 @@ describe('v1alpha.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1alpha.DeleteFeatureRequest() ); - request.name = ''; - const expectedHeaderRequestParams = 'name='; - const expectedOptions = { - otherArgs: { - headers: { - 'x-goog-request-params': expectedHeaderRequestParams, - }, - }, - }; + const defaultValue1 = getTypeDefaultValue('DeleteFeatureRequest', [ + 'name', + ]); + request.name = defaultValue1; + const expectedHeaderRequestParams = `name=${defaultValue1}`; const expectedResponse = generateSampleMessage( new protos.google.longrunning.Operation() ); @@ -589,11 +588,14 @@ describe('v1alpha.GkeHubClient', () => { const [operation] = await client.deleteFeature(request); const [response] = await operation.promise(); assert.deepStrictEqual(response, expectedResponse); - assert( - (client.innerApiCalls.deleteFeature as SinonStub) - .getCall(0) - .calledWith(request, expectedOptions, undefined) - ); + const actualRequest = ( + client.innerApiCalls.deleteFeature as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.deleteFeature as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); }); it('invokes deleteFeature without error using callback', async () => { @@ -605,15 +607,11 @@ describe('v1alpha.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1alpha.DeleteFeatureRequest() ); - request.name = ''; - const expectedHeaderRequestParams = 'name='; - const expectedOptions = { - otherArgs: { - headers: { - 'x-goog-request-params': expectedHeaderRequestParams, - }, - }, - }; + const defaultValue1 = getTypeDefaultValue('DeleteFeatureRequest', [ + 'name', + ]); + request.name = defaultValue1; + const expectedHeaderRequestParams = `name=${defaultValue1}`; const expectedResponse = generateSampleMessage( new protos.google.longrunning.Operation() ); @@ -643,11 +641,14 @@ describe('v1alpha.GkeHubClient', () => { >; const [response] = await operation.promise(); assert.deepStrictEqual(response, expectedResponse); - assert( - (client.innerApiCalls.deleteFeature as SinonStub) - .getCall(0) - .calledWith(request, expectedOptions /*, callback defined above */) - ); + const actualRequest = ( + client.innerApiCalls.deleteFeature as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.deleteFeature as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); }); it('invokes deleteFeature with call error', async () => { @@ -659,26 +660,25 @@ describe('v1alpha.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1alpha.DeleteFeatureRequest() ); - request.name = ''; - const expectedHeaderRequestParams = 'name='; - const expectedOptions = { - otherArgs: { - headers: { - 'x-goog-request-params': expectedHeaderRequestParams, - }, - }, - }; + const defaultValue1 = getTypeDefaultValue('DeleteFeatureRequest', [ + 'name', + ]); + request.name = defaultValue1; + const expectedHeaderRequestParams = `name=${defaultValue1}`; const expectedError = new Error('expected'); client.innerApiCalls.deleteFeature = stubLongRunningCall( undefined, expectedError ); await assert.rejects(client.deleteFeature(request), expectedError); - assert( - (client.innerApiCalls.deleteFeature as SinonStub) - .getCall(0) - .calledWith(request, expectedOptions, undefined) - ); + const actualRequest = ( + client.innerApiCalls.deleteFeature as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.deleteFeature as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); }); it('invokes deleteFeature with LRO error', async () => { @@ -690,15 +690,11 @@ describe('v1alpha.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1alpha.DeleteFeatureRequest() ); - request.name = ''; - const expectedHeaderRequestParams = 'name='; - const expectedOptions = { - otherArgs: { - headers: { - 'x-goog-request-params': expectedHeaderRequestParams, - }, - }, - }; + const defaultValue1 = getTypeDefaultValue('DeleteFeatureRequest', [ + 'name', + ]); + request.name = defaultValue1; + const expectedHeaderRequestParams = `name=${defaultValue1}`; const expectedError = new Error('expected'); client.innerApiCalls.deleteFeature = stubLongRunningCall( undefined, @@ -707,11 +703,14 @@ describe('v1alpha.GkeHubClient', () => { ); const [operation] = await client.deleteFeature(request); await assert.rejects(operation.promise(), expectedError); - assert( - (client.innerApiCalls.deleteFeature as SinonStub) - .getCall(0) - .calledWith(request, expectedOptions, undefined) - ); + const actualRequest = ( + client.innerApiCalls.deleteFeature as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.deleteFeature as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); }); it('invokes checkDeleteFeatureProgress without error', async () => { @@ -766,15 +765,11 @@ describe('v1alpha.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1alpha.UpdateFeatureRequest() ); - request.name = ''; - const expectedHeaderRequestParams = 'name='; - const expectedOptions = { - otherArgs: { - headers: { - 'x-goog-request-params': expectedHeaderRequestParams, - }, - }, - }; + const defaultValue1 = getTypeDefaultValue('UpdateFeatureRequest', [ + 'name', + ]); + request.name = defaultValue1; + const expectedHeaderRequestParams = `name=${defaultValue1}`; const expectedResponse = generateSampleMessage( new protos.google.longrunning.Operation() ); @@ -783,11 +778,14 @@ describe('v1alpha.GkeHubClient', () => { const [operation] = await client.updateFeature(request); const [response] = await operation.promise(); assert.deepStrictEqual(response, expectedResponse); - assert( - (client.innerApiCalls.updateFeature as SinonStub) - .getCall(0) - .calledWith(request, expectedOptions, undefined) - ); + const actualRequest = ( + client.innerApiCalls.updateFeature as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.updateFeature as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); }); it('invokes updateFeature without error using callback', async () => { @@ -799,15 +797,11 @@ describe('v1alpha.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1alpha.UpdateFeatureRequest() ); - request.name = ''; - const expectedHeaderRequestParams = 'name='; - const expectedOptions = { - otherArgs: { - headers: { - 'x-goog-request-params': expectedHeaderRequestParams, - }, - }, - }; + const defaultValue1 = getTypeDefaultValue('UpdateFeatureRequest', [ + 'name', + ]); + request.name = defaultValue1; + const expectedHeaderRequestParams = `name=${defaultValue1}`; const expectedResponse = generateSampleMessage( new protos.google.longrunning.Operation() ); @@ -837,11 +831,14 @@ describe('v1alpha.GkeHubClient', () => { >; const [response] = await operation.promise(); assert.deepStrictEqual(response, expectedResponse); - assert( - (client.innerApiCalls.updateFeature as SinonStub) - .getCall(0) - .calledWith(request, expectedOptions /*, callback defined above */) - ); + const actualRequest = ( + client.innerApiCalls.updateFeature as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.updateFeature as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); }); it('invokes updateFeature with call error', async () => { @@ -853,26 +850,25 @@ describe('v1alpha.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1alpha.UpdateFeatureRequest() ); - request.name = ''; - const expectedHeaderRequestParams = 'name='; - const expectedOptions = { - otherArgs: { - headers: { - 'x-goog-request-params': expectedHeaderRequestParams, - }, - }, - }; + const defaultValue1 = getTypeDefaultValue('UpdateFeatureRequest', [ + 'name', + ]); + request.name = defaultValue1; + const expectedHeaderRequestParams = `name=${defaultValue1}`; const expectedError = new Error('expected'); client.innerApiCalls.updateFeature = stubLongRunningCall( undefined, expectedError ); await assert.rejects(client.updateFeature(request), expectedError); - assert( - (client.innerApiCalls.updateFeature as SinonStub) - .getCall(0) - .calledWith(request, expectedOptions, undefined) - ); + const actualRequest = ( + client.innerApiCalls.updateFeature as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.updateFeature as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); }); it('invokes updateFeature with LRO error', async () => { @@ -884,15 +880,11 @@ describe('v1alpha.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1alpha.UpdateFeatureRequest() ); - request.name = ''; - const expectedHeaderRequestParams = 'name='; - const expectedOptions = { - otherArgs: { - headers: { - 'x-goog-request-params': expectedHeaderRequestParams, - }, - }, - }; + const defaultValue1 = getTypeDefaultValue('UpdateFeatureRequest', [ + 'name', + ]); + request.name = defaultValue1; + const expectedHeaderRequestParams = `name=${defaultValue1}`; const expectedError = new Error('expected'); client.innerApiCalls.updateFeature = stubLongRunningCall( undefined, @@ -901,11 +893,14 @@ describe('v1alpha.GkeHubClient', () => { ); const [operation] = await client.updateFeature(request); await assert.rejects(operation.promise(), expectedError); - assert( - (client.innerApiCalls.updateFeature as SinonStub) - .getCall(0) - .calledWith(request, expectedOptions, undefined) - ); + const actualRequest = ( + client.innerApiCalls.updateFeature as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.updateFeature as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); }); it('invokes checkUpdateFeatureProgress without error', async () => { @@ -960,15 +955,11 @@ describe('v1alpha.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1alpha.ListFeaturesRequest() ); - request.parent = ''; - const expectedHeaderRequestParams = 'parent='; - const expectedOptions = { - otherArgs: { - headers: { - 'x-goog-request-params': expectedHeaderRequestParams, - }, - }, - }; + const defaultValue1 = getTypeDefaultValue('ListFeaturesRequest', [ + 'parent', + ]); + request.parent = defaultValue1; + const expectedHeaderRequestParams = `parent=${defaultValue1}`; const expectedResponse = [ generateSampleMessage(new protos.google.cloud.gkehub.v1alpha.Feature()), generateSampleMessage(new protos.google.cloud.gkehub.v1alpha.Feature()), @@ -977,11 +968,14 @@ describe('v1alpha.GkeHubClient', () => { client.innerApiCalls.listFeatures = stubSimpleCall(expectedResponse); const [response] = await client.listFeatures(request); assert.deepStrictEqual(response, expectedResponse); - assert( - (client.innerApiCalls.listFeatures as SinonStub) - .getCall(0) - .calledWith(request, expectedOptions, undefined) - ); + const actualRequest = ( + client.innerApiCalls.listFeatures as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.listFeatures as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); }); it('invokes listFeatures without error using callback', async () => { @@ -993,15 +987,11 @@ describe('v1alpha.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1alpha.ListFeaturesRequest() ); - request.parent = ''; - const expectedHeaderRequestParams = 'parent='; - const expectedOptions = { - otherArgs: { - headers: { - 'x-goog-request-params': expectedHeaderRequestParams, - }, - }, - }; + const defaultValue1 = getTypeDefaultValue('ListFeaturesRequest', [ + 'parent', + ]); + request.parent = defaultValue1; + const expectedHeaderRequestParams = `parent=${defaultValue1}`; const expectedResponse = [ generateSampleMessage(new protos.google.cloud.gkehub.v1alpha.Feature()), generateSampleMessage(new protos.google.cloud.gkehub.v1alpha.Feature()), @@ -1026,11 +1016,14 @@ describe('v1alpha.GkeHubClient', () => { }); const response = await promise; assert.deepStrictEqual(response, expectedResponse); - assert( - (client.innerApiCalls.listFeatures as SinonStub) - .getCall(0) - .calledWith(request, expectedOptions /*, callback defined above */) - ); + const actualRequest = ( + client.innerApiCalls.listFeatures as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.listFeatures as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); }); it('invokes listFeatures with error', async () => { @@ -1042,26 +1035,25 @@ describe('v1alpha.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1alpha.ListFeaturesRequest() ); - request.parent = ''; - const expectedHeaderRequestParams = 'parent='; - const expectedOptions = { - otherArgs: { - headers: { - 'x-goog-request-params': expectedHeaderRequestParams, - }, - }, - }; + const defaultValue1 = getTypeDefaultValue('ListFeaturesRequest', [ + 'parent', + ]); + request.parent = defaultValue1; + const expectedHeaderRequestParams = `parent=${defaultValue1}`; const expectedError = new Error('expected'); client.innerApiCalls.listFeatures = stubSimpleCall( undefined, expectedError ); await assert.rejects(client.listFeatures(request), expectedError); - assert( - (client.innerApiCalls.listFeatures as SinonStub) - .getCall(0) - .calledWith(request, expectedOptions, undefined) - ); + const actualRequest = ( + client.innerApiCalls.listFeatures as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.listFeatures as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); }); it('invokes listFeaturesStream without error', async () => { @@ -1073,8 +1065,11 @@ describe('v1alpha.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1alpha.ListFeaturesRequest() ); - request.parent = ''; - const expectedHeaderRequestParams = 'parent='; + const defaultValue1 = getTypeDefaultValue('ListFeaturesRequest', [ + 'parent', + ]); + request.parent = defaultValue1; + const expectedHeaderRequestParams = `parent=${defaultValue1}`; const expectedResponse = [ generateSampleMessage(new protos.google.cloud.gkehub.v1alpha.Feature()), generateSampleMessage(new protos.google.cloud.gkehub.v1alpha.Feature()), @@ -1105,11 +1100,12 @@ describe('v1alpha.GkeHubClient', () => { .getCall(0) .calledWith(client.innerApiCalls.listFeatures, request) ); - assert.strictEqual( - ( - client.descriptors.page.listFeatures.createStream as SinonStub - ).getCall(0).args[2].otherArgs.headers['x-goog-request-params'], - expectedHeaderRequestParams + assert( + (client.descriptors.page.listFeatures.createStream as SinonStub) + .getCall(0) + .args[2].otherArgs.headers['x-goog-request-params'].includes( + expectedHeaderRequestParams + ) ); }); @@ -1122,8 +1118,11 @@ describe('v1alpha.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1alpha.ListFeaturesRequest() ); - request.parent = ''; - const expectedHeaderRequestParams = 'parent='; + const defaultValue1 = getTypeDefaultValue('ListFeaturesRequest', [ + 'parent', + ]); + request.parent = defaultValue1; + const expectedHeaderRequestParams = `parent=${defaultValue1}`; const expectedError = new Error('expected'); client.descriptors.page.listFeatures.createStream = stubPageStreamingCall( undefined, @@ -1151,11 +1150,12 @@ describe('v1alpha.GkeHubClient', () => { .getCall(0) .calledWith(client.innerApiCalls.listFeatures, request) ); - assert.strictEqual( - ( - client.descriptors.page.listFeatures.createStream as SinonStub - ).getCall(0).args[2].otherArgs.headers['x-goog-request-params'], - expectedHeaderRequestParams + assert( + (client.descriptors.page.listFeatures.createStream as SinonStub) + .getCall(0) + .args[2].otherArgs.headers['x-goog-request-params'].includes( + expectedHeaderRequestParams + ) ); }); @@ -1168,8 +1168,11 @@ describe('v1alpha.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1alpha.ListFeaturesRequest() ); - request.parent = ''; - const expectedHeaderRequestParams = 'parent='; + const defaultValue1 = getTypeDefaultValue('ListFeaturesRequest', [ + 'parent', + ]); + request.parent = defaultValue1; + const expectedHeaderRequestParams = `parent=${defaultValue1}`; const expectedResponse = [ generateSampleMessage(new protos.google.cloud.gkehub.v1alpha.Feature()), generateSampleMessage(new protos.google.cloud.gkehub.v1alpha.Feature()), @@ -1189,11 +1192,12 @@ describe('v1alpha.GkeHubClient', () => { ).getCall(0).args[1], request ); - assert.strictEqual( - ( - client.descriptors.page.listFeatures.asyncIterate as SinonStub - ).getCall(0).args[2].otherArgs.headers['x-goog-request-params'], - expectedHeaderRequestParams + assert( + (client.descriptors.page.listFeatures.asyncIterate as SinonStub) + .getCall(0) + .args[2].otherArgs.headers['x-goog-request-params'].includes( + expectedHeaderRequestParams + ) ); }); @@ -1206,8 +1210,11 @@ describe('v1alpha.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1alpha.ListFeaturesRequest() ); - request.parent = ''; - const expectedHeaderRequestParams = 'parent='; + const defaultValue1 = getTypeDefaultValue('ListFeaturesRequest', [ + 'parent', + ]); + request.parent = defaultValue1; + const expectedHeaderRequestParams = `parent=${defaultValue1}`; const expectedError = new Error('expected'); client.descriptors.page.listFeatures.asyncIterate = stubAsyncIterationCall(undefined, expectedError); @@ -1224,11 +1231,12 @@ describe('v1alpha.GkeHubClient', () => { ).getCall(0).args[1], request ); - assert.strictEqual( - ( - client.descriptors.page.listFeatures.asyncIterate as SinonStub - ).getCall(0).args[2].otherArgs.headers['x-goog-request-params'], - expectedHeaderRequestParams + assert( + (client.descriptors.page.listFeatures.asyncIterate as SinonStub) + .getCall(0) + .args[2].otherArgs.headers['x-goog-request-params'].includes( + expectedHeaderRequestParams + ) ); }); }); diff --git a/packages/google-cloud-gkehub/test/gapic_gke_hub_v1alpha2.ts b/packages/google-cloud-gkehub/test/gapic_gke_hub_v1alpha2.ts index aea0b3b748b..8c60d2ea09a 100644 --- a/packages/google-cloud-gkehub/test/gapic_gke_hub_v1alpha2.ts +++ b/packages/google-cloud-gkehub/test/gapic_gke_hub_v1alpha2.ts @@ -27,6 +27,21 @@ import {PassThrough} from 'stream'; import {protobuf, LROperation, operationsProtos} from 'google-gax'; +// Dynamically loaded proto JSON is needed to get the type information +// to fill in default values for request objects +const root = protobuf.Root.fromJSON( + require('../protos/protos.json') +).resolveAll(); + +// eslint-disable-next-line @typescript-eslint/no-unused-vars +function getTypeDefaultValue(typeName: string, fields: string[]) { + let type = root.lookupType(typeName) as protobuf.Type; + for (const field of fields.slice(0, -1)) { + type = type.fields[field]?.resolvedType as protobuf.Type; + } + return type.fields[fields[fields.length - 1]]?.defaultValue; +} + function generateSampleMessage(instance: T) { const filledObject = ( instance.constructor as typeof protobuf.Message @@ -252,26 +267,25 @@ describe('v1alpha2.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1alpha2.GetMembershipRequest() ); - request.name = ''; - const expectedHeaderRequestParams = 'name='; - const expectedOptions = { - otherArgs: { - headers: { - 'x-goog-request-params': expectedHeaderRequestParams, - }, - }, - }; + const defaultValue1 = getTypeDefaultValue('GetMembershipRequest', [ + 'name', + ]); + request.name = defaultValue1; + const expectedHeaderRequestParams = `name=${defaultValue1}`; const expectedResponse = generateSampleMessage( new protos.google.cloud.gkehub.v1alpha2.Membership() ); client.innerApiCalls.getMembership = stubSimpleCall(expectedResponse); const [response] = await client.getMembership(request); assert.deepStrictEqual(response, expectedResponse); - assert( - (client.innerApiCalls.getMembership as SinonStub) - .getCall(0) - .calledWith(request, expectedOptions, undefined) - ); + const actualRequest = ( + client.innerApiCalls.getMembership as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.getMembership as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); }); it('invokes getMembership without error using callback', async () => { @@ -283,15 +297,11 @@ describe('v1alpha2.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1alpha2.GetMembershipRequest() ); - request.name = ''; - const expectedHeaderRequestParams = 'name='; - const expectedOptions = { - otherArgs: { - headers: { - 'x-goog-request-params': expectedHeaderRequestParams, - }, - }, - }; + const defaultValue1 = getTypeDefaultValue('GetMembershipRequest', [ + 'name', + ]); + request.name = defaultValue1; + const expectedHeaderRequestParams = `name=${defaultValue1}`; const expectedResponse = generateSampleMessage( new protos.google.cloud.gkehub.v1alpha2.Membership() ); @@ -314,11 +324,14 @@ describe('v1alpha2.GkeHubClient', () => { }); const response = await promise; assert.deepStrictEqual(response, expectedResponse); - assert( - (client.innerApiCalls.getMembership as SinonStub) - .getCall(0) - .calledWith(request, expectedOptions /*, callback defined above */) - ); + const actualRequest = ( + client.innerApiCalls.getMembership as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.getMembership as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); }); it('invokes getMembership with error', async () => { @@ -330,26 +343,25 @@ describe('v1alpha2.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1alpha2.GetMembershipRequest() ); - request.name = ''; - const expectedHeaderRequestParams = 'name='; - const expectedOptions = { - otherArgs: { - headers: { - 'x-goog-request-params': expectedHeaderRequestParams, - }, - }, - }; + const defaultValue1 = getTypeDefaultValue('GetMembershipRequest', [ + 'name', + ]); + request.name = defaultValue1; + const expectedHeaderRequestParams = `name=${defaultValue1}`; const expectedError = new Error('expected'); client.innerApiCalls.getMembership = stubSimpleCall( undefined, expectedError ); await assert.rejects(client.getMembership(request), expectedError); - assert( - (client.innerApiCalls.getMembership as SinonStub) - .getCall(0) - .calledWith(request, expectedOptions, undefined) - ); + const actualRequest = ( + client.innerApiCalls.getMembership as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.getMembership as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); }); it('invokes getMembership with closed client', async () => { @@ -361,7 +373,10 @@ describe('v1alpha2.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1alpha2.GetMembershipRequest() ); - request.name = ''; + const defaultValue1 = getTypeDefaultValue('GetMembershipRequest', [ + 'name', + ]); + request.name = defaultValue1; const expectedError = new Error('The client has already been closed.'); client.close(); await assert.rejects(client.getMembership(request), expectedError); @@ -378,15 +393,12 @@ describe('v1alpha2.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1alpha2.GenerateConnectManifestRequest() ); - request.name = ''; - const expectedHeaderRequestParams = 'name='; - const expectedOptions = { - otherArgs: { - headers: { - 'x-goog-request-params': expectedHeaderRequestParams, - }, - }, - }; + const defaultValue1 = getTypeDefaultValue( + 'GenerateConnectManifestRequest', + ['name'] + ); + request.name = defaultValue1; + const expectedHeaderRequestParams = `name=${defaultValue1}`; const expectedResponse = generateSampleMessage( new protos.google.cloud.gkehub.v1alpha2.GenerateConnectManifestResponse() ); @@ -394,11 +406,14 @@ describe('v1alpha2.GkeHubClient', () => { stubSimpleCall(expectedResponse); const [response] = await client.generateConnectManifest(request); assert.deepStrictEqual(response, expectedResponse); - assert( - (client.innerApiCalls.generateConnectManifest as SinonStub) - .getCall(0) - .calledWith(request, expectedOptions, undefined) - ); + const actualRequest = ( + client.innerApiCalls.generateConnectManifest as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.generateConnectManifest as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); }); it('invokes generateConnectManifest without error using callback', async () => { @@ -410,15 +425,12 @@ describe('v1alpha2.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1alpha2.GenerateConnectManifestRequest() ); - request.name = ''; - const expectedHeaderRequestParams = 'name='; - const expectedOptions = { - otherArgs: { - headers: { - 'x-goog-request-params': expectedHeaderRequestParams, - }, - }, - }; + const defaultValue1 = getTypeDefaultValue( + 'GenerateConnectManifestRequest', + ['name'] + ); + request.name = defaultValue1; + const expectedHeaderRequestParams = `name=${defaultValue1}`; const expectedResponse = generateSampleMessage( new protos.google.cloud.gkehub.v1alpha2.GenerateConnectManifestResponse() ); @@ -441,11 +453,14 @@ describe('v1alpha2.GkeHubClient', () => { }); const response = await promise; assert.deepStrictEqual(response, expectedResponse); - assert( - (client.innerApiCalls.generateConnectManifest as SinonStub) - .getCall(0) - .calledWith(request, expectedOptions /*, callback defined above */) - ); + const actualRequest = ( + client.innerApiCalls.generateConnectManifest as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.generateConnectManifest as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); }); it('invokes generateConnectManifest with error', async () => { @@ -457,15 +472,12 @@ describe('v1alpha2.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1alpha2.GenerateConnectManifestRequest() ); - request.name = ''; - const expectedHeaderRequestParams = 'name='; - const expectedOptions = { - otherArgs: { - headers: { - 'x-goog-request-params': expectedHeaderRequestParams, - }, - }, - }; + const defaultValue1 = getTypeDefaultValue( + 'GenerateConnectManifestRequest', + ['name'] + ); + request.name = defaultValue1; + const expectedHeaderRequestParams = `name=${defaultValue1}`; const expectedError = new Error('expected'); client.innerApiCalls.generateConnectManifest = stubSimpleCall( undefined, @@ -475,11 +487,14 @@ describe('v1alpha2.GkeHubClient', () => { client.generateConnectManifest(request), expectedError ); - assert( - (client.innerApiCalls.generateConnectManifest as SinonStub) - .getCall(0) - .calledWith(request, expectedOptions, undefined) - ); + const actualRequest = ( + client.innerApiCalls.generateConnectManifest as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.generateConnectManifest as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); }); it('invokes generateConnectManifest with closed client', async () => { @@ -491,7 +506,11 @@ describe('v1alpha2.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1alpha2.GenerateConnectManifestRequest() ); - request.name = ''; + const defaultValue1 = getTypeDefaultValue( + 'GenerateConnectManifestRequest', + ['name'] + ); + request.name = defaultValue1; const expectedError = new Error('The client has already been closed.'); client.close(); await assert.rejects( @@ -511,26 +530,25 @@ describe('v1alpha2.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1alpha2.InitializeHubRequest() ); - request.project = ''; - const expectedHeaderRequestParams = 'project='; - const expectedOptions = { - otherArgs: { - headers: { - 'x-goog-request-params': expectedHeaderRequestParams, - }, - }, - }; + const defaultValue1 = getTypeDefaultValue('InitializeHubRequest', [ + 'project', + ]); + request.project = defaultValue1; + const expectedHeaderRequestParams = `project=${defaultValue1}`; const expectedResponse = generateSampleMessage( new protos.google.cloud.gkehub.v1alpha2.InitializeHubResponse() ); client.innerApiCalls.initializeHub = stubSimpleCall(expectedResponse); const [response] = await client.initializeHub(request); assert.deepStrictEqual(response, expectedResponse); - assert( - (client.innerApiCalls.initializeHub as SinonStub) - .getCall(0) - .calledWith(request, expectedOptions, undefined) - ); + const actualRequest = ( + client.innerApiCalls.initializeHub as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.initializeHub as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); }); it('invokes initializeHub without error using callback', async () => { @@ -542,15 +560,11 @@ describe('v1alpha2.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1alpha2.InitializeHubRequest() ); - request.project = ''; - const expectedHeaderRequestParams = 'project='; - const expectedOptions = { - otherArgs: { - headers: { - 'x-goog-request-params': expectedHeaderRequestParams, - }, - }, - }; + const defaultValue1 = getTypeDefaultValue('InitializeHubRequest', [ + 'project', + ]); + request.project = defaultValue1; + const expectedHeaderRequestParams = `project=${defaultValue1}`; const expectedResponse = generateSampleMessage( new protos.google.cloud.gkehub.v1alpha2.InitializeHubResponse() ); @@ -573,11 +587,14 @@ describe('v1alpha2.GkeHubClient', () => { }); const response = await promise; assert.deepStrictEqual(response, expectedResponse); - assert( - (client.innerApiCalls.initializeHub as SinonStub) - .getCall(0) - .calledWith(request, expectedOptions /*, callback defined above */) - ); + const actualRequest = ( + client.innerApiCalls.initializeHub as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.initializeHub as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); }); it('invokes initializeHub with error', async () => { @@ -589,26 +606,25 @@ describe('v1alpha2.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1alpha2.InitializeHubRequest() ); - request.project = ''; - const expectedHeaderRequestParams = 'project='; - const expectedOptions = { - otherArgs: { - headers: { - 'x-goog-request-params': expectedHeaderRequestParams, - }, - }, - }; + const defaultValue1 = getTypeDefaultValue('InitializeHubRequest', [ + 'project', + ]); + request.project = defaultValue1; + const expectedHeaderRequestParams = `project=${defaultValue1}`; const expectedError = new Error('expected'); client.innerApiCalls.initializeHub = stubSimpleCall( undefined, expectedError ); await assert.rejects(client.initializeHub(request), expectedError); - assert( - (client.innerApiCalls.initializeHub as SinonStub) - .getCall(0) - .calledWith(request, expectedOptions, undefined) - ); + const actualRequest = ( + client.innerApiCalls.initializeHub as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.initializeHub as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); }); it('invokes initializeHub with closed client', async () => { @@ -620,7 +636,10 @@ describe('v1alpha2.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1alpha2.InitializeHubRequest() ); - request.project = ''; + const defaultValue1 = getTypeDefaultValue('InitializeHubRequest', [ + 'project', + ]); + request.project = defaultValue1; const expectedError = new Error('The client has already been closed.'); client.close(); await assert.rejects(client.initializeHub(request), expectedError); @@ -637,15 +656,11 @@ describe('v1alpha2.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1alpha2.CreateMembershipRequest() ); - request.parent = ''; - const expectedHeaderRequestParams = 'parent='; - const expectedOptions = { - otherArgs: { - headers: { - 'x-goog-request-params': expectedHeaderRequestParams, - }, - }, - }; + const defaultValue1 = getTypeDefaultValue('CreateMembershipRequest', [ + 'parent', + ]); + request.parent = defaultValue1; + const expectedHeaderRequestParams = `parent=${defaultValue1}`; const expectedResponse = generateSampleMessage( new protos.google.longrunning.Operation() ); @@ -654,11 +669,14 @@ describe('v1alpha2.GkeHubClient', () => { const [operation] = await client.createMembership(request); const [response] = await operation.promise(); assert.deepStrictEqual(response, expectedResponse); - assert( - (client.innerApiCalls.createMembership as SinonStub) - .getCall(0) - .calledWith(request, expectedOptions, undefined) - ); + const actualRequest = ( + client.innerApiCalls.createMembership as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.createMembership as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); }); it('invokes createMembership without error using callback', async () => { @@ -670,15 +688,11 @@ describe('v1alpha2.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1alpha2.CreateMembershipRequest() ); - request.parent = ''; - const expectedHeaderRequestParams = 'parent='; - const expectedOptions = { - otherArgs: { - headers: { - 'x-goog-request-params': expectedHeaderRequestParams, - }, - }, - }; + const defaultValue1 = getTypeDefaultValue('CreateMembershipRequest', [ + 'parent', + ]); + request.parent = defaultValue1; + const expectedHeaderRequestParams = `parent=${defaultValue1}`; const expectedResponse = generateSampleMessage( new protos.google.longrunning.Operation() ); @@ -708,11 +722,14 @@ describe('v1alpha2.GkeHubClient', () => { >; const [response] = await operation.promise(); assert.deepStrictEqual(response, expectedResponse); - assert( - (client.innerApiCalls.createMembership as SinonStub) - .getCall(0) - .calledWith(request, expectedOptions /*, callback defined above */) - ); + const actualRequest = ( + client.innerApiCalls.createMembership as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.createMembership as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); }); it('invokes createMembership with call error', async () => { @@ -724,26 +741,25 @@ describe('v1alpha2.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1alpha2.CreateMembershipRequest() ); - request.parent = ''; - const expectedHeaderRequestParams = 'parent='; - const expectedOptions = { - otherArgs: { - headers: { - 'x-goog-request-params': expectedHeaderRequestParams, - }, - }, - }; + const defaultValue1 = getTypeDefaultValue('CreateMembershipRequest', [ + 'parent', + ]); + request.parent = defaultValue1; + const expectedHeaderRequestParams = `parent=${defaultValue1}`; const expectedError = new Error('expected'); client.innerApiCalls.createMembership = stubLongRunningCall( undefined, expectedError ); await assert.rejects(client.createMembership(request), expectedError); - assert( - (client.innerApiCalls.createMembership as SinonStub) - .getCall(0) - .calledWith(request, expectedOptions, undefined) - ); + const actualRequest = ( + client.innerApiCalls.createMembership as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.createMembership as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); }); it('invokes createMembership with LRO error', async () => { @@ -755,15 +771,11 @@ describe('v1alpha2.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1alpha2.CreateMembershipRequest() ); - request.parent = ''; - const expectedHeaderRequestParams = 'parent='; - const expectedOptions = { - otherArgs: { - headers: { - 'x-goog-request-params': expectedHeaderRequestParams, - }, - }, - }; + const defaultValue1 = getTypeDefaultValue('CreateMembershipRequest', [ + 'parent', + ]); + request.parent = defaultValue1; + const expectedHeaderRequestParams = `parent=${defaultValue1}`; const expectedError = new Error('expected'); client.innerApiCalls.createMembership = stubLongRunningCall( undefined, @@ -772,11 +784,14 @@ describe('v1alpha2.GkeHubClient', () => { ); const [operation] = await client.createMembership(request); await assert.rejects(operation.promise(), expectedError); - assert( - (client.innerApiCalls.createMembership as SinonStub) - .getCall(0) - .calledWith(request, expectedOptions, undefined) - ); + const actualRequest = ( + client.innerApiCalls.createMembership as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.createMembership as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); }); it('invokes checkCreateMembershipProgress without error', async () => { @@ -831,15 +846,11 @@ describe('v1alpha2.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1alpha2.DeleteMembershipRequest() ); - request.name = ''; - const expectedHeaderRequestParams = 'name='; - const expectedOptions = { - otherArgs: { - headers: { - 'x-goog-request-params': expectedHeaderRequestParams, - }, - }, - }; + const defaultValue1 = getTypeDefaultValue('DeleteMembershipRequest', [ + 'name', + ]); + request.name = defaultValue1; + const expectedHeaderRequestParams = `name=${defaultValue1}`; const expectedResponse = generateSampleMessage( new protos.google.longrunning.Operation() ); @@ -848,11 +859,14 @@ describe('v1alpha2.GkeHubClient', () => { const [operation] = await client.deleteMembership(request); const [response] = await operation.promise(); assert.deepStrictEqual(response, expectedResponse); - assert( - (client.innerApiCalls.deleteMembership as SinonStub) - .getCall(0) - .calledWith(request, expectedOptions, undefined) - ); + const actualRequest = ( + client.innerApiCalls.deleteMembership as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.deleteMembership as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); }); it('invokes deleteMembership without error using callback', async () => { @@ -864,15 +878,11 @@ describe('v1alpha2.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1alpha2.DeleteMembershipRequest() ); - request.name = ''; - const expectedHeaderRequestParams = 'name='; - const expectedOptions = { - otherArgs: { - headers: { - 'x-goog-request-params': expectedHeaderRequestParams, - }, - }, - }; + const defaultValue1 = getTypeDefaultValue('DeleteMembershipRequest', [ + 'name', + ]); + request.name = defaultValue1; + const expectedHeaderRequestParams = `name=${defaultValue1}`; const expectedResponse = generateSampleMessage( new protos.google.longrunning.Operation() ); @@ -902,11 +912,14 @@ describe('v1alpha2.GkeHubClient', () => { >; const [response] = await operation.promise(); assert.deepStrictEqual(response, expectedResponse); - assert( - (client.innerApiCalls.deleteMembership as SinonStub) - .getCall(0) - .calledWith(request, expectedOptions /*, callback defined above */) - ); + const actualRequest = ( + client.innerApiCalls.deleteMembership as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.deleteMembership as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); }); it('invokes deleteMembership with call error', async () => { @@ -918,26 +931,25 @@ describe('v1alpha2.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1alpha2.DeleteMembershipRequest() ); - request.name = ''; - const expectedHeaderRequestParams = 'name='; - const expectedOptions = { - otherArgs: { - headers: { - 'x-goog-request-params': expectedHeaderRequestParams, - }, - }, - }; + const defaultValue1 = getTypeDefaultValue('DeleteMembershipRequest', [ + 'name', + ]); + request.name = defaultValue1; + const expectedHeaderRequestParams = `name=${defaultValue1}`; const expectedError = new Error('expected'); client.innerApiCalls.deleteMembership = stubLongRunningCall( undefined, expectedError ); await assert.rejects(client.deleteMembership(request), expectedError); - assert( - (client.innerApiCalls.deleteMembership as SinonStub) - .getCall(0) - .calledWith(request, expectedOptions, undefined) - ); + const actualRequest = ( + client.innerApiCalls.deleteMembership as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.deleteMembership as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); }); it('invokes deleteMembership with LRO error', async () => { @@ -949,15 +961,11 @@ describe('v1alpha2.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1alpha2.DeleteMembershipRequest() ); - request.name = ''; - const expectedHeaderRequestParams = 'name='; - const expectedOptions = { - otherArgs: { - headers: { - 'x-goog-request-params': expectedHeaderRequestParams, - }, - }, - }; + const defaultValue1 = getTypeDefaultValue('DeleteMembershipRequest', [ + 'name', + ]); + request.name = defaultValue1; + const expectedHeaderRequestParams = `name=${defaultValue1}`; const expectedError = new Error('expected'); client.innerApiCalls.deleteMembership = stubLongRunningCall( undefined, @@ -966,11 +974,14 @@ describe('v1alpha2.GkeHubClient', () => { ); const [operation] = await client.deleteMembership(request); await assert.rejects(operation.promise(), expectedError); - assert( - (client.innerApiCalls.deleteMembership as SinonStub) - .getCall(0) - .calledWith(request, expectedOptions, undefined) - ); + const actualRequest = ( + client.innerApiCalls.deleteMembership as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.deleteMembership as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); }); it('invokes checkDeleteMembershipProgress without error', async () => { @@ -1025,15 +1036,11 @@ describe('v1alpha2.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1alpha2.UpdateMembershipRequest() ); - request.name = ''; - const expectedHeaderRequestParams = 'name='; - const expectedOptions = { - otherArgs: { - headers: { - 'x-goog-request-params': expectedHeaderRequestParams, - }, - }, - }; + const defaultValue1 = getTypeDefaultValue('UpdateMembershipRequest', [ + 'name', + ]); + request.name = defaultValue1; + const expectedHeaderRequestParams = `name=${defaultValue1}`; const expectedResponse = generateSampleMessage( new protos.google.longrunning.Operation() ); @@ -1042,11 +1049,14 @@ describe('v1alpha2.GkeHubClient', () => { const [operation] = await client.updateMembership(request); const [response] = await operation.promise(); assert.deepStrictEqual(response, expectedResponse); - assert( - (client.innerApiCalls.updateMembership as SinonStub) - .getCall(0) - .calledWith(request, expectedOptions, undefined) - ); + const actualRequest = ( + client.innerApiCalls.updateMembership as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.updateMembership as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); }); it('invokes updateMembership without error using callback', async () => { @@ -1058,15 +1068,11 @@ describe('v1alpha2.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1alpha2.UpdateMembershipRequest() ); - request.name = ''; - const expectedHeaderRequestParams = 'name='; - const expectedOptions = { - otherArgs: { - headers: { - 'x-goog-request-params': expectedHeaderRequestParams, - }, - }, - }; + const defaultValue1 = getTypeDefaultValue('UpdateMembershipRequest', [ + 'name', + ]); + request.name = defaultValue1; + const expectedHeaderRequestParams = `name=${defaultValue1}`; const expectedResponse = generateSampleMessage( new protos.google.longrunning.Operation() ); @@ -1096,11 +1102,14 @@ describe('v1alpha2.GkeHubClient', () => { >; const [response] = await operation.promise(); assert.deepStrictEqual(response, expectedResponse); - assert( - (client.innerApiCalls.updateMembership as SinonStub) - .getCall(0) - .calledWith(request, expectedOptions /*, callback defined above */) - ); + const actualRequest = ( + client.innerApiCalls.updateMembership as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.updateMembership as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); }); it('invokes updateMembership with call error', async () => { @@ -1112,26 +1121,25 @@ describe('v1alpha2.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1alpha2.UpdateMembershipRequest() ); - request.name = ''; - const expectedHeaderRequestParams = 'name='; - const expectedOptions = { - otherArgs: { - headers: { - 'x-goog-request-params': expectedHeaderRequestParams, - }, - }, - }; + const defaultValue1 = getTypeDefaultValue('UpdateMembershipRequest', [ + 'name', + ]); + request.name = defaultValue1; + const expectedHeaderRequestParams = `name=${defaultValue1}`; const expectedError = new Error('expected'); client.innerApiCalls.updateMembership = stubLongRunningCall( undefined, expectedError ); await assert.rejects(client.updateMembership(request), expectedError); - assert( - (client.innerApiCalls.updateMembership as SinonStub) - .getCall(0) - .calledWith(request, expectedOptions, undefined) - ); + const actualRequest = ( + client.innerApiCalls.updateMembership as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.updateMembership as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); }); it('invokes updateMembership with LRO error', async () => { @@ -1143,15 +1151,11 @@ describe('v1alpha2.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1alpha2.UpdateMembershipRequest() ); - request.name = ''; - const expectedHeaderRequestParams = 'name='; - const expectedOptions = { - otherArgs: { - headers: { - 'x-goog-request-params': expectedHeaderRequestParams, - }, - }, - }; + const defaultValue1 = getTypeDefaultValue('UpdateMembershipRequest', [ + 'name', + ]); + request.name = defaultValue1; + const expectedHeaderRequestParams = `name=${defaultValue1}`; const expectedError = new Error('expected'); client.innerApiCalls.updateMembership = stubLongRunningCall( undefined, @@ -1160,11 +1164,14 @@ describe('v1alpha2.GkeHubClient', () => { ); const [operation] = await client.updateMembership(request); await assert.rejects(operation.promise(), expectedError); - assert( - (client.innerApiCalls.updateMembership as SinonStub) - .getCall(0) - .calledWith(request, expectedOptions, undefined) - ); + const actualRequest = ( + client.innerApiCalls.updateMembership as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.updateMembership as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); }); it('invokes checkUpdateMembershipProgress without error', async () => { @@ -1219,15 +1226,11 @@ describe('v1alpha2.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1alpha2.ListMembershipsRequest() ); - request.parent = ''; - const expectedHeaderRequestParams = 'parent='; - const expectedOptions = { - otherArgs: { - headers: { - 'x-goog-request-params': expectedHeaderRequestParams, - }, - }, - }; + const defaultValue1 = getTypeDefaultValue('ListMembershipsRequest', [ + 'parent', + ]); + request.parent = defaultValue1; + const expectedHeaderRequestParams = `parent=${defaultValue1}`; const expectedResponse = [ generateSampleMessage( new protos.google.cloud.gkehub.v1alpha2.Membership() @@ -1242,11 +1245,14 @@ describe('v1alpha2.GkeHubClient', () => { client.innerApiCalls.listMemberships = stubSimpleCall(expectedResponse); const [response] = await client.listMemberships(request); assert.deepStrictEqual(response, expectedResponse); - assert( - (client.innerApiCalls.listMemberships as SinonStub) - .getCall(0) - .calledWith(request, expectedOptions, undefined) - ); + const actualRequest = ( + client.innerApiCalls.listMemberships as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.listMemberships as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); }); it('invokes listMemberships without error using callback', async () => { @@ -1258,15 +1264,11 @@ describe('v1alpha2.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1alpha2.ListMembershipsRequest() ); - request.parent = ''; - const expectedHeaderRequestParams = 'parent='; - const expectedOptions = { - otherArgs: { - headers: { - 'x-goog-request-params': expectedHeaderRequestParams, - }, - }, - }; + const defaultValue1 = getTypeDefaultValue('ListMembershipsRequest', [ + 'parent', + ]); + request.parent = defaultValue1; + const expectedHeaderRequestParams = `parent=${defaultValue1}`; const expectedResponse = [ generateSampleMessage( new protos.google.cloud.gkehub.v1alpha2.Membership() @@ -1297,11 +1299,14 @@ describe('v1alpha2.GkeHubClient', () => { }); const response = await promise; assert.deepStrictEqual(response, expectedResponse); - assert( - (client.innerApiCalls.listMemberships as SinonStub) - .getCall(0) - .calledWith(request, expectedOptions /*, callback defined above */) - ); + const actualRequest = ( + client.innerApiCalls.listMemberships as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.listMemberships as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); }); it('invokes listMemberships with error', async () => { @@ -1313,26 +1318,25 @@ describe('v1alpha2.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1alpha2.ListMembershipsRequest() ); - request.parent = ''; - const expectedHeaderRequestParams = 'parent='; - const expectedOptions = { - otherArgs: { - headers: { - 'x-goog-request-params': expectedHeaderRequestParams, - }, - }, - }; + const defaultValue1 = getTypeDefaultValue('ListMembershipsRequest', [ + 'parent', + ]); + request.parent = defaultValue1; + const expectedHeaderRequestParams = `parent=${defaultValue1}`; const expectedError = new Error('expected'); client.innerApiCalls.listMemberships = stubSimpleCall( undefined, expectedError ); await assert.rejects(client.listMemberships(request), expectedError); - assert( - (client.innerApiCalls.listMemberships as SinonStub) - .getCall(0) - .calledWith(request, expectedOptions, undefined) - ); + const actualRequest = ( + client.innerApiCalls.listMemberships as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.listMemberships as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); }); it('invokes listMembershipsStream without error', async () => { @@ -1344,8 +1348,11 @@ describe('v1alpha2.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1alpha2.ListMembershipsRequest() ); - request.parent = ''; - const expectedHeaderRequestParams = 'parent='; + const defaultValue1 = getTypeDefaultValue('ListMembershipsRequest', [ + 'parent', + ]); + request.parent = defaultValue1; + const expectedHeaderRequestParams = `parent=${defaultValue1}`; const expectedResponse = [ generateSampleMessage( new protos.google.cloud.gkehub.v1alpha2.Membership() @@ -1382,11 +1389,12 @@ describe('v1alpha2.GkeHubClient', () => { .getCall(0) .calledWith(client.innerApiCalls.listMemberships, request) ); - assert.strictEqual( - ( - client.descriptors.page.listMemberships.createStream as SinonStub - ).getCall(0).args[2].otherArgs.headers['x-goog-request-params'], - expectedHeaderRequestParams + assert( + (client.descriptors.page.listMemberships.createStream as SinonStub) + .getCall(0) + .args[2].otherArgs.headers['x-goog-request-params'].includes( + expectedHeaderRequestParams + ) ); }); @@ -1399,8 +1407,11 @@ describe('v1alpha2.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1alpha2.ListMembershipsRequest() ); - request.parent = ''; - const expectedHeaderRequestParams = 'parent='; + const defaultValue1 = getTypeDefaultValue('ListMembershipsRequest', [ + 'parent', + ]); + request.parent = defaultValue1; + const expectedHeaderRequestParams = `parent=${defaultValue1}`; const expectedError = new Error('expected'); client.descriptors.page.listMemberships.createStream = stubPageStreamingCall(undefined, expectedError); @@ -1426,11 +1437,12 @@ describe('v1alpha2.GkeHubClient', () => { .getCall(0) .calledWith(client.innerApiCalls.listMemberships, request) ); - assert.strictEqual( - ( - client.descriptors.page.listMemberships.createStream as SinonStub - ).getCall(0).args[2].otherArgs.headers['x-goog-request-params'], - expectedHeaderRequestParams + assert( + (client.descriptors.page.listMemberships.createStream as SinonStub) + .getCall(0) + .args[2].otherArgs.headers['x-goog-request-params'].includes( + expectedHeaderRequestParams + ) ); }); @@ -1443,8 +1455,11 @@ describe('v1alpha2.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1alpha2.ListMembershipsRequest() ); - request.parent = ''; - const expectedHeaderRequestParams = 'parent='; + const defaultValue1 = getTypeDefaultValue('ListMembershipsRequest', [ + 'parent', + ]); + request.parent = defaultValue1; + const expectedHeaderRequestParams = `parent=${defaultValue1}`; const expectedResponse = [ generateSampleMessage( new protos.google.cloud.gkehub.v1alpha2.Membership() @@ -1470,11 +1485,12 @@ describe('v1alpha2.GkeHubClient', () => { ).getCall(0).args[1], request ); - assert.strictEqual( - ( - client.descriptors.page.listMemberships.asyncIterate as SinonStub - ).getCall(0).args[2].otherArgs.headers['x-goog-request-params'], - expectedHeaderRequestParams + assert( + (client.descriptors.page.listMemberships.asyncIterate as SinonStub) + .getCall(0) + .args[2].otherArgs.headers['x-goog-request-params'].includes( + expectedHeaderRequestParams + ) ); }); @@ -1487,8 +1503,11 @@ describe('v1alpha2.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1alpha2.ListMembershipsRequest() ); - request.parent = ''; - const expectedHeaderRequestParams = 'parent='; + const defaultValue1 = getTypeDefaultValue('ListMembershipsRequest', [ + 'parent', + ]); + request.parent = defaultValue1; + const expectedHeaderRequestParams = `parent=${defaultValue1}`; const expectedError = new Error('expected'); client.descriptors.page.listMemberships.asyncIterate = stubAsyncIterationCall(undefined, expectedError); @@ -1505,11 +1524,12 @@ describe('v1alpha2.GkeHubClient', () => { ).getCall(0).args[1], request ); - assert.strictEqual( - ( - client.descriptors.page.listMemberships.asyncIterate as SinonStub - ).getCall(0).args[2].otherArgs.headers['x-goog-request-params'], - expectedHeaderRequestParams + assert( + (client.descriptors.page.listMemberships.asyncIterate as SinonStub) + .getCall(0) + .args[2].otherArgs.headers['x-goog-request-params'].includes( + expectedHeaderRequestParams + ) ); }); }); diff --git a/packages/google-cloud-gkehub/test/gapic_gke_hub_v1beta.ts b/packages/google-cloud-gkehub/test/gapic_gke_hub_v1beta.ts index 6de7a0b348c..f3c031df10c 100644 --- a/packages/google-cloud-gkehub/test/gapic_gke_hub_v1beta.ts +++ b/packages/google-cloud-gkehub/test/gapic_gke_hub_v1beta.ts @@ -27,6 +27,21 @@ import {PassThrough} from 'stream'; import {protobuf, LROperation, operationsProtos} from 'google-gax'; +// Dynamically loaded proto JSON is needed to get the type information +// to fill in default values for request objects +const root = protobuf.Root.fromJSON( + require('../protos/protos.json') +).resolveAll(); + +// eslint-disable-next-line @typescript-eslint/no-unused-vars +function getTypeDefaultValue(typeName: string, fields: string[]) { + let type = root.lookupType(typeName) as protobuf.Type; + for (const field of fields.slice(0, -1)) { + type = type.fields[field]?.resolvedType as protobuf.Type; + } + return type.fields[fields[fields.length - 1]]?.defaultValue; +} + function generateSampleMessage(instance: T) { const filledObject = ( instance.constructor as typeof protobuf.Message @@ -252,26 +267,23 @@ describe('v1beta.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1beta.GetFeatureRequest() ); - request.name = ''; - const expectedHeaderRequestParams = 'name='; - const expectedOptions = { - otherArgs: { - headers: { - 'x-goog-request-params': expectedHeaderRequestParams, - }, - }, - }; + const defaultValue1 = getTypeDefaultValue('GetFeatureRequest', ['name']); + request.name = defaultValue1; + const expectedHeaderRequestParams = `name=${defaultValue1}`; const expectedResponse = generateSampleMessage( new protos.google.cloud.gkehub.v1beta.Feature() ); client.innerApiCalls.getFeature = stubSimpleCall(expectedResponse); const [response] = await client.getFeature(request); assert.deepStrictEqual(response, expectedResponse); - assert( - (client.innerApiCalls.getFeature as SinonStub) - .getCall(0) - .calledWith(request, expectedOptions, undefined) - ); + const actualRequest = ( + client.innerApiCalls.getFeature as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.getFeature as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); }); it('invokes getFeature without error using callback', async () => { @@ -283,15 +295,9 @@ describe('v1beta.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1beta.GetFeatureRequest() ); - request.name = ''; - const expectedHeaderRequestParams = 'name='; - const expectedOptions = { - otherArgs: { - headers: { - 'x-goog-request-params': expectedHeaderRequestParams, - }, - }, - }; + const defaultValue1 = getTypeDefaultValue('GetFeatureRequest', ['name']); + request.name = defaultValue1; + const expectedHeaderRequestParams = `name=${defaultValue1}`; const expectedResponse = generateSampleMessage( new protos.google.cloud.gkehub.v1beta.Feature() ); @@ -314,11 +320,14 @@ describe('v1beta.GkeHubClient', () => { }); const response = await promise; assert.deepStrictEqual(response, expectedResponse); - assert( - (client.innerApiCalls.getFeature as SinonStub) - .getCall(0) - .calledWith(request, expectedOptions /*, callback defined above */) - ); + const actualRequest = ( + client.innerApiCalls.getFeature as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.getFeature as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); }); it('invokes getFeature with error', async () => { @@ -330,26 +339,23 @@ describe('v1beta.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1beta.GetFeatureRequest() ); - request.name = ''; - const expectedHeaderRequestParams = 'name='; - const expectedOptions = { - otherArgs: { - headers: { - 'x-goog-request-params': expectedHeaderRequestParams, - }, - }, - }; + const defaultValue1 = getTypeDefaultValue('GetFeatureRequest', ['name']); + request.name = defaultValue1; + const expectedHeaderRequestParams = `name=${defaultValue1}`; const expectedError = new Error('expected'); client.innerApiCalls.getFeature = stubSimpleCall( undefined, expectedError ); await assert.rejects(client.getFeature(request), expectedError); - assert( - (client.innerApiCalls.getFeature as SinonStub) - .getCall(0) - .calledWith(request, expectedOptions, undefined) - ); + const actualRequest = ( + client.innerApiCalls.getFeature as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.getFeature as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); }); it('invokes getFeature with closed client', async () => { @@ -361,7 +367,8 @@ describe('v1beta.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1beta.GetFeatureRequest() ); - request.name = ''; + const defaultValue1 = getTypeDefaultValue('GetFeatureRequest', ['name']); + request.name = defaultValue1; const expectedError = new Error('The client has already been closed.'); client.close(); await assert.rejects(client.getFeature(request), expectedError); @@ -378,15 +385,11 @@ describe('v1beta.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1beta.CreateFeatureRequest() ); - request.parent = ''; - const expectedHeaderRequestParams = 'parent='; - const expectedOptions = { - otherArgs: { - headers: { - 'x-goog-request-params': expectedHeaderRequestParams, - }, - }, - }; + const defaultValue1 = getTypeDefaultValue('CreateFeatureRequest', [ + 'parent', + ]); + request.parent = defaultValue1; + const expectedHeaderRequestParams = `parent=${defaultValue1}`; const expectedResponse = generateSampleMessage( new protos.google.longrunning.Operation() ); @@ -395,11 +398,14 @@ describe('v1beta.GkeHubClient', () => { const [operation] = await client.createFeature(request); const [response] = await operation.promise(); assert.deepStrictEqual(response, expectedResponse); - assert( - (client.innerApiCalls.createFeature as SinonStub) - .getCall(0) - .calledWith(request, expectedOptions, undefined) - ); + const actualRequest = ( + client.innerApiCalls.createFeature as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.createFeature as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); }); it('invokes createFeature without error using callback', async () => { @@ -411,15 +417,11 @@ describe('v1beta.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1beta.CreateFeatureRequest() ); - request.parent = ''; - const expectedHeaderRequestParams = 'parent='; - const expectedOptions = { - otherArgs: { - headers: { - 'x-goog-request-params': expectedHeaderRequestParams, - }, - }, - }; + const defaultValue1 = getTypeDefaultValue('CreateFeatureRequest', [ + 'parent', + ]); + request.parent = defaultValue1; + const expectedHeaderRequestParams = `parent=${defaultValue1}`; const expectedResponse = generateSampleMessage( new protos.google.longrunning.Operation() ); @@ -449,11 +451,14 @@ describe('v1beta.GkeHubClient', () => { >; const [response] = await operation.promise(); assert.deepStrictEqual(response, expectedResponse); - assert( - (client.innerApiCalls.createFeature as SinonStub) - .getCall(0) - .calledWith(request, expectedOptions /*, callback defined above */) - ); + const actualRequest = ( + client.innerApiCalls.createFeature as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.createFeature as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); }); it('invokes createFeature with call error', async () => { @@ -465,26 +470,25 @@ describe('v1beta.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1beta.CreateFeatureRequest() ); - request.parent = ''; - const expectedHeaderRequestParams = 'parent='; - const expectedOptions = { - otherArgs: { - headers: { - 'x-goog-request-params': expectedHeaderRequestParams, - }, - }, - }; + const defaultValue1 = getTypeDefaultValue('CreateFeatureRequest', [ + 'parent', + ]); + request.parent = defaultValue1; + const expectedHeaderRequestParams = `parent=${defaultValue1}`; const expectedError = new Error('expected'); client.innerApiCalls.createFeature = stubLongRunningCall( undefined, expectedError ); await assert.rejects(client.createFeature(request), expectedError); - assert( - (client.innerApiCalls.createFeature as SinonStub) - .getCall(0) - .calledWith(request, expectedOptions, undefined) - ); + const actualRequest = ( + client.innerApiCalls.createFeature as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.createFeature as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); }); it('invokes createFeature with LRO error', async () => { @@ -496,15 +500,11 @@ describe('v1beta.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1beta.CreateFeatureRequest() ); - request.parent = ''; - const expectedHeaderRequestParams = 'parent='; - const expectedOptions = { - otherArgs: { - headers: { - 'x-goog-request-params': expectedHeaderRequestParams, - }, - }, - }; + const defaultValue1 = getTypeDefaultValue('CreateFeatureRequest', [ + 'parent', + ]); + request.parent = defaultValue1; + const expectedHeaderRequestParams = `parent=${defaultValue1}`; const expectedError = new Error('expected'); client.innerApiCalls.createFeature = stubLongRunningCall( undefined, @@ -513,11 +513,14 @@ describe('v1beta.GkeHubClient', () => { ); const [operation] = await client.createFeature(request); await assert.rejects(operation.promise(), expectedError); - assert( - (client.innerApiCalls.createFeature as SinonStub) - .getCall(0) - .calledWith(request, expectedOptions, undefined) - ); + const actualRequest = ( + client.innerApiCalls.createFeature as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.createFeature as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); }); it('invokes checkCreateFeatureProgress without error', async () => { @@ -572,15 +575,11 @@ describe('v1beta.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1beta.DeleteFeatureRequest() ); - request.name = ''; - const expectedHeaderRequestParams = 'name='; - const expectedOptions = { - otherArgs: { - headers: { - 'x-goog-request-params': expectedHeaderRequestParams, - }, - }, - }; + const defaultValue1 = getTypeDefaultValue('DeleteFeatureRequest', [ + 'name', + ]); + request.name = defaultValue1; + const expectedHeaderRequestParams = `name=${defaultValue1}`; const expectedResponse = generateSampleMessage( new protos.google.longrunning.Operation() ); @@ -589,11 +588,14 @@ describe('v1beta.GkeHubClient', () => { const [operation] = await client.deleteFeature(request); const [response] = await operation.promise(); assert.deepStrictEqual(response, expectedResponse); - assert( - (client.innerApiCalls.deleteFeature as SinonStub) - .getCall(0) - .calledWith(request, expectedOptions, undefined) - ); + const actualRequest = ( + client.innerApiCalls.deleteFeature as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.deleteFeature as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); }); it('invokes deleteFeature without error using callback', async () => { @@ -605,15 +607,11 @@ describe('v1beta.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1beta.DeleteFeatureRequest() ); - request.name = ''; - const expectedHeaderRequestParams = 'name='; - const expectedOptions = { - otherArgs: { - headers: { - 'x-goog-request-params': expectedHeaderRequestParams, - }, - }, - }; + const defaultValue1 = getTypeDefaultValue('DeleteFeatureRequest', [ + 'name', + ]); + request.name = defaultValue1; + const expectedHeaderRequestParams = `name=${defaultValue1}`; const expectedResponse = generateSampleMessage( new protos.google.longrunning.Operation() ); @@ -643,11 +641,14 @@ describe('v1beta.GkeHubClient', () => { >; const [response] = await operation.promise(); assert.deepStrictEqual(response, expectedResponse); - assert( - (client.innerApiCalls.deleteFeature as SinonStub) - .getCall(0) - .calledWith(request, expectedOptions /*, callback defined above */) - ); + const actualRequest = ( + client.innerApiCalls.deleteFeature as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.deleteFeature as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); }); it('invokes deleteFeature with call error', async () => { @@ -659,26 +660,25 @@ describe('v1beta.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1beta.DeleteFeatureRequest() ); - request.name = ''; - const expectedHeaderRequestParams = 'name='; - const expectedOptions = { - otherArgs: { - headers: { - 'x-goog-request-params': expectedHeaderRequestParams, - }, - }, - }; + const defaultValue1 = getTypeDefaultValue('DeleteFeatureRequest', [ + 'name', + ]); + request.name = defaultValue1; + const expectedHeaderRequestParams = `name=${defaultValue1}`; const expectedError = new Error('expected'); client.innerApiCalls.deleteFeature = stubLongRunningCall( undefined, expectedError ); await assert.rejects(client.deleteFeature(request), expectedError); - assert( - (client.innerApiCalls.deleteFeature as SinonStub) - .getCall(0) - .calledWith(request, expectedOptions, undefined) - ); + const actualRequest = ( + client.innerApiCalls.deleteFeature as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.deleteFeature as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); }); it('invokes deleteFeature with LRO error', async () => { @@ -690,15 +690,11 @@ describe('v1beta.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1beta.DeleteFeatureRequest() ); - request.name = ''; - const expectedHeaderRequestParams = 'name='; - const expectedOptions = { - otherArgs: { - headers: { - 'x-goog-request-params': expectedHeaderRequestParams, - }, - }, - }; + const defaultValue1 = getTypeDefaultValue('DeleteFeatureRequest', [ + 'name', + ]); + request.name = defaultValue1; + const expectedHeaderRequestParams = `name=${defaultValue1}`; const expectedError = new Error('expected'); client.innerApiCalls.deleteFeature = stubLongRunningCall( undefined, @@ -707,11 +703,14 @@ describe('v1beta.GkeHubClient', () => { ); const [operation] = await client.deleteFeature(request); await assert.rejects(operation.promise(), expectedError); - assert( - (client.innerApiCalls.deleteFeature as SinonStub) - .getCall(0) - .calledWith(request, expectedOptions, undefined) - ); + const actualRequest = ( + client.innerApiCalls.deleteFeature as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.deleteFeature as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); }); it('invokes checkDeleteFeatureProgress without error', async () => { @@ -766,15 +765,11 @@ describe('v1beta.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1beta.UpdateFeatureRequest() ); - request.name = ''; - const expectedHeaderRequestParams = 'name='; - const expectedOptions = { - otherArgs: { - headers: { - 'x-goog-request-params': expectedHeaderRequestParams, - }, - }, - }; + const defaultValue1 = getTypeDefaultValue('UpdateFeatureRequest', [ + 'name', + ]); + request.name = defaultValue1; + const expectedHeaderRequestParams = `name=${defaultValue1}`; const expectedResponse = generateSampleMessage( new protos.google.longrunning.Operation() ); @@ -783,11 +778,14 @@ describe('v1beta.GkeHubClient', () => { const [operation] = await client.updateFeature(request); const [response] = await operation.promise(); assert.deepStrictEqual(response, expectedResponse); - assert( - (client.innerApiCalls.updateFeature as SinonStub) - .getCall(0) - .calledWith(request, expectedOptions, undefined) - ); + const actualRequest = ( + client.innerApiCalls.updateFeature as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.updateFeature as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); }); it('invokes updateFeature without error using callback', async () => { @@ -799,15 +797,11 @@ describe('v1beta.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1beta.UpdateFeatureRequest() ); - request.name = ''; - const expectedHeaderRequestParams = 'name='; - const expectedOptions = { - otherArgs: { - headers: { - 'x-goog-request-params': expectedHeaderRequestParams, - }, - }, - }; + const defaultValue1 = getTypeDefaultValue('UpdateFeatureRequest', [ + 'name', + ]); + request.name = defaultValue1; + const expectedHeaderRequestParams = `name=${defaultValue1}`; const expectedResponse = generateSampleMessage( new protos.google.longrunning.Operation() ); @@ -837,11 +831,14 @@ describe('v1beta.GkeHubClient', () => { >; const [response] = await operation.promise(); assert.deepStrictEqual(response, expectedResponse); - assert( - (client.innerApiCalls.updateFeature as SinonStub) - .getCall(0) - .calledWith(request, expectedOptions /*, callback defined above */) - ); + const actualRequest = ( + client.innerApiCalls.updateFeature as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.updateFeature as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); }); it('invokes updateFeature with call error', async () => { @@ -853,26 +850,25 @@ describe('v1beta.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1beta.UpdateFeatureRequest() ); - request.name = ''; - const expectedHeaderRequestParams = 'name='; - const expectedOptions = { - otherArgs: { - headers: { - 'x-goog-request-params': expectedHeaderRequestParams, - }, - }, - }; + const defaultValue1 = getTypeDefaultValue('UpdateFeatureRequest', [ + 'name', + ]); + request.name = defaultValue1; + const expectedHeaderRequestParams = `name=${defaultValue1}`; const expectedError = new Error('expected'); client.innerApiCalls.updateFeature = stubLongRunningCall( undefined, expectedError ); await assert.rejects(client.updateFeature(request), expectedError); - assert( - (client.innerApiCalls.updateFeature as SinonStub) - .getCall(0) - .calledWith(request, expectedOptions, undefined) - ); + const actualRequest = ( + client.innerApiCalls.updateFeature as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.updateFeature as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); }); it('invokes updateFeature with LRO error', async () => { @@ -884,15 +880,11 @@ describe('v1beta.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1beta.UpdateFeatureRequest() ); - request.name = ''; - const expectedHeaderRequestParams = 'name='; - const expectedOptions = { - otherArgs: { - headers: { - 'x-goog-request-params': expectedHeaderRequestParams, - }, - }, - }; + const defaultValue1 = getTypeDefaultValue('UpdateFeatureRequest', [ + 'name', + ]); + request.name = defaultValue1; + const expectedHeaderRequestParams = `name=${defaultValue1}`; const expectedError = new Error('expected'); client.innerApiCalls.updateFeature = stubLongRunningCall( undefined, @@ -901,11 +893,14 @@ describe('v1beta.GkeHubClient', () => { ); const [operation] = await client.updateFeature(request); await assert.rejects(operation.promise(), expectedError); - assert( - (client.innerApiCalls.updateFeature as SinonStub) - .getCall(0) - .calledWith(request, expectedOptions, undefined) - ); + const actualRequest = ( + client.innerApiCalls.updateFeature as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.updateFeature as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); }); it('invokes checkUpdateFeatureProgress without error', async () => { @@ -960,15 +955,11 @@ describe('v1beta.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1beta.ListFeaturesRequest() ); - request.parent = ''; - const expectedHeaderRequestParams = 'parent='; - const expectedOptions = { - otherArgs: { - headers: { - 'x-goog-request-params': expectedHeaderRequestParams, - }, - }, - }; + const defaultValue1 = getTypeDefaultValue('ListFeaturesRequest', [ + 'parent', + ]); + request.parent = defaultValue1; + const expectedHeaderRequestParams = `parent=${defaultValue1}`; const expectedResponse = [ generateSampleMessage(new protos.google.cloud.gkehub.v1beta.Feature()), generateSampleMessage(new protos.google.cloud.gkehub.v1beta.Feature()), @@ -977,11 +968,14 @@ describe('v1beta.GkeHubClient', () => { client.innerApiCalls.listFeatures = stubSimpleCall(expectedResponse); const [response] = await client.listFeatures(request); assert.deepStrictEqual(response, expectedResponse); - assert( - (client.innerApiCalls.listFeatures as SinonStub) - .getCall(0) - .calledWith(request, expectedOptions, undefined) - ); + const actualRequest = ( + client.innerApiCalls.listFeatures as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.listFeatures as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); }); it('invokes listFeatures without error using callback', async () => { @@ -993,15 +987,11 @@ describe('v1beta.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1beta.ListFeaturesRequest() ); - request.parent = ''; - const expectedHeaderRequestParams = 'parent='; - const expectedOptions = { - otherArgs: { - headers: { - 'x-goog-request-params': expectedHeaderRequestParams, - }, - }, - }; + const defaultValue1 = getTypeDefaultValue('ListFeaturesRequest', [ + 'parent', + ]); + request.parent = defaultValue1; + const expectedHeaderRequestParams = `parent=${defaultValue1}`; const expectedResponse = [ generateSampleMessage(new protos.google.cloud.gkehub.v1beta.Feature()), generateSampleMessage(new protos.google.cloud.gkehub.v1beta.Feature()), @@ -1026,11 +1016,14 @@ describe('v1beta.GkeHubClient', () => { }); const response = await promise; assert.deepStrictEqual(response, expectedResponse); - assert( - (client.innerApiCalls.listFeatures as SinonStub) - .getCall(0) - .calledWith(request, expectedOptions /*, callback defined above */) - ); + const actualRequest = ( + client.innerApiCalls.listFeatures as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.listFeatures as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); }); it('invokes listFeatures with error', async () => { @@ -1042,26 +1035,25 @@ describe('v1beta.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1beta.ListFeaturesRequest() ); - request.parent = ''; - const expectedHeaderRequestParams = 'parent='; - const expectedOptions = { - otherArgs: { - headers: { - 'x-goog-request-params': expectedHeaderRequestParams, - }, - }, - }; + const defaultValue1 = getTypeDefaultValue('ListFeaturesRequest', [ + 'parent', + ]); + request.parent = defaultValue1; + const expectedHeaderRequestParams = `parent=${defaultValue1}`; const expectedError = new Error('expected'); client.innerApiCalls.listFeatures = stubSimpleCall( undefined, expectedError ); await assert.rejects(client.listFeatures(request), expectedError); - assert( - (client.innerApiCalls.listFeatures as SinonStub) - .getCall(0) - .calledWith(request, expectedOptions, undefined) - ); + const actualRequest = ( + client.innerApiCalls.listFeatures as SinonStub + ).getCall(0).args[0]; + assert.deepStrictEqual(actualRequest, request); + const actualHeaderRequestParams = ( + client.innerApiCalls.listFeatures as SinonStub + ).getCall(0).args[1].otherArgs.headers['x-goog-request-params']; + assert(actualHeaderRequestParams.includes(expectedHeaderRequestParams)); }); it('invokes listFeaturesStream without error', async () => { @@ -1073,8 +1065,11 @@ describe('v1beta.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1beta.ListFeaturesRequest() ); - request.parent = ''; - const expectedHeaderRequestParams = 'parent='; + const defaultValue1 = getTypeDefaultValue('ListFeaturesRequest', [ + 'parent', + ]); + request.parent = defaultValue1; + const expectedHeaderRequestParams = `parent=${defaultValue1}`; const expectedResponse = [ generateSampleMessage(new protos.google.cloud.gkehub.v1beta.Feature()), generateSampleMessage(new protos.google.cloud.gkehub.v1beta.Feature()), @@ -1105,11 +1100,12 @@ describe('v1beta.GkeHubClient', () => { .getCall(0) .calledWith(client.innerApiCalls.listFeatures, request) ); - assert.strictEqual( - ( - client.descriptors.page.listFeatures.createStream as SinonStub - ).getCall(0).args[2].otherArgs.headers['x-goog-request-params'], - expectedHeaderRequestParams + assert( + (client.descriptors.page.listFeatures.createStream as SinonStub) + .getCall(0) + .args[2].otherArgs.headers['x-goog-request-params'].includes( + expectedHeaderRequestParams + ) ); }); @@ -1122,8 +1118,11 @@ describe('v1beta.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1beta.ListFeaturesRequest() ); - request.parent = ''; - const expectedHeaderRequestParams = 'parent='; + const defaultValue1 = getTypeDefaultValue('ListFeaturesRequest', [ + 'parent', + ]); + request.parent = defaultValue1; + const expectedHeaderRequestParams = `parent=${defaultValue1}`; const expectedError = new Error('expected'); client.descriptors.page.listFeatures.createStream = stubPageStreamingCall( undefined, @@ -1151,11 +1150,12 @@ describe('v1beta.GkeHubClient', () => { .getCall(0) .calledWith(client.innerApiCalls.listFeatures, request) ); - assert.strictEqual( - ( - client.descriptors.page.listFeatures.createStream as SinonStub - ).getCall(0).args[2].otherArgs.headers['x-goog-request-params'], - expectedHeaderRequestParams + assert( + (client.descriptors.page.listFeatures.createStream as SinonStub) + .getCall(0) + .args[2].otherArgs.headers['x-goog-request-params'].includes( + expectedHeaderRequestParams + ) ); }); @@ -1168,8 +1168,11 @@ describe('v1beta.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1beta.ListFeaturesRequest() ); - request.parent = ''; - const expectedHeaderRequestParams = 'parent='; + const defaultValue1 = getTypeDefaultValue('ListFeaturesRequest', [ + 'parent', + ]); + request.parent = defaultValue1; + const expectedHeaderRequestParams = `parent=${defaultValue1}`; const expectedResponse = [ generateSampleMessage(new protos.google.cloud.gkehub.v1beta.Feature()), generateSampleMessage(new protos.google.cloud.gkehub.v1beta.Feature()), @@ -1189,11 +1192,12 @@ describe('v1beta.GkeHubClient', () => { ).getCall(0).args[1], request ); - assert.strictEqual( - ( - client.descriptors.page.listFeatures.asyncIterate as SinonStub - ).getCall(0).args[2].otherArgs.headers['x-goog-request-params'], - expectedHeaderRequestParams + assert( + (client.descriptors.page.listFeatures.asyncIterate as SinonStub) + .getCall(0) + .args[2].otherArgs.headers['x-goog-request-params'].includes( + expectedHeaderRequestParams + ) ); }); @@ -1206,8 +1210,11 @@ describe('v1beta.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1beta.ListFeaturesRequest() ); - request.parent = ''; - const expectedHeaderRequestParams = 'parent='; + const defaultValue1 = getTypeDefaultValue('ListFeaturesRequest', [ + 'parent', + ]); + request.parent = defaultValue1; + const expectedHeaderRequestParams = `parent=${defaultValue1}`; const expectedError = new Error('expected'); client.descriptors.page.listFeatures.asyncIterate = stubAsyncIterationCall(undefined, expectedError); @@ -1224,11 +1231,12 @@ describe('v1beta.GkeHubClient', () => { ).getCall(0).args[1], request ); - assert.strictEqual( - ( - client.descriptors.page.listFeatures.asyncIterate as SinonStub - ).getCall(0).args[2].otherArgs.headers['x-goog-request-params'], - expectedHeaderRequestParams + assert( + (client.descriptors.page.listFeatures.asyncIterate as SinonStub) + .getCall(0) + .args[2].otherArgs.headers['x-goog-request-params'].includes( + expectedHeaderRequestParams + ) ); }); }); From 2bef2160ac55e37e2b2c55a6dd0700bd2f3efa62 Mon Sep 17 00:00:00 2001 From: "gcf-owl-bot[bot]" <78513119+gcf-owl-bot[bot]@users.noreply.github.com> Date: Fri, 23 Sep 2022 14:17:52 -0700 Subject: [PATCH 87/92] test: use fully qualified request type name in tests (#172) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * test: use fully qualified request type name in tests PiperOrigin-RevId: 475685359 Source-Link: https://github.com/googleapis/googleapis/commit/7a129736313ceb1f277c3b7f7e16d2e04cc901dd Source-Link: https://github.com/googleapis/googleapis-gen/commit/370c729e2ba062a167449c27882ba5f379c5c34d Copy-Tag: eyJwIjoiLmdpdGh1Yi8uT3dsQm90LnlhbWwiLCJoIjoiMzcwYzcyOWUyYmEwNjJhMTY3NDQ5YzI3ODgyYmE1ZjM3OWM1YzM0ZCJ9 * 🦉 Updates from OwlBot post-processor See https://github.com/googleapis/repo-automation-bots/blob/main/packages/owl-bot/README.md Co-authored-by: Owl Bot --- ...apic_gke_hub_membership_service_v1beta1.ts | 205 ++++++----- .../test/gapic_gke_hub_v1.ts | 322 ++++++++++-------- .../test/gapic_gke_hub_v1alpha.ts | 153 +++++---- .../test/gapic_gke_hub_v1alpha2.ts | 197 ++++++----- .../test/gapic_gke_hub_v1beta.ts | 153 +++++---- 5 files changed, 600 insertions(+), 430 deletions(-) diff --git a/packages/google-cloud-gkehub/test/gapic_gke_hub_membership_service_v1beta1.ts b/packages/google-cloud-gkehub/test/gapic_gke_hub_membership_service_v1beta1.ts index 422563a0761..c2ff2a03549 100644 --- a/packages/google-cloud-gkehub/test/gapic_gke_hub_membership_service_v1beta1.ts +++ b/packages/google-cloud-gkehub/test/gapic_gke_hub_membership_service_v1beta1.ts @@ -301,9 +301,10 @@ describe('v1beta1.GkeHubMembershipServiceClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1beta1.GetMembershipRequest() ); - const defaultValue1 = getTypeDefaultValue('GetMembershipRequest', [ - 'name', - ]); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.gkehub.v1beta1.GetMembershipRequest', + ['name'] + ); request.name = defaultValue1; const expectedHeaderRequestParams = `name=${defaultValue1}`; const expectedResponse = generateSampleMessage( @@ -334,9 +335,10 @@ describe('v1beta1.GkeHubMembershipServiceClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1beta1.GetMembershipRequest() ); - const defaultValue1 = getTypeDefaultValue('GetMembershipRequest', [ - 'name', - ]); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.gkehub.v1beta1.GetMembershipRequest', + ['name'] + ); request.name = defaultValue1; const expectedHeaderRequestParams = `name=${defaultValue1}`; const expectedResponse = generateSampleMessage( @@ -383,9 +385,10 @@ describe('v1beta1.GkeHubMembershipServiceClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1beta1.GetMembershipRequest() ); - const defaultValue1 = getTypeDefaultValue('GetMembershipRequest', [ - 'name', - ]); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.gkehub.v1beta1.GetMembershipRequest', + ['name'] + ); request.name = defaultValue1; const expectedHeaderRequestParams = `name=${defaultValue1}`; const expectedError = new Error('expected'); @@ -416,9 +419,10 @@ describe('v1beta1.GkeHubMembershipServiceClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1beta1.GetMembershipRequest() ); - const defaultValue1 = getTypeDefaultValue('GetMembershipRequest', [ - 'name', - ]); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.gkehub.v1beta1.GetMembershipRequest', + ['name'] + ); request.name = defaultValue1; const expectedError = new Error('The client has already been closed.'); client.close(); @@ -440,7 +444,7 @@ describe('v1beta1.GkeHubMembershipServiceClient', () => { new protos.google.cloud.gkehub.v1beta1.GenerateConnectManifestRequest() ); const defaultValue1 = getTypeDefaultValue( - 'GenerateConnectManifestRequest', + '.google.cloud.gkehub.v1beta1.GenerateConnectManifestRequest', ['name'] ); request.name = defaultValue1; @@ -475,7 +479,7 @@ describe('v1beta1.GkeHubMembershipServiceClient', () => { new protos.google.cloud.gkehub.v1beta1.GenerateConnectManifestRequest() ); const defaultValue1 = getTypeDefaultValue( - 'GenerateConnectManifestRequest', + '.google.cloud.gkehub.v1beta1.GenerateConnectManifestRequest', ['name'] ); request.name = defaultValue1; @@ -525,7 +529,7 @@ describe('v1beta1.GkeHubMembershipServiceClient', () => { new protos.google.cloud.gkehub.v1beta1.GenerateConnectManifestRequest() ); const defaultValue1 = getTypeDefaultValue( - 'GenerateConnectManifestRequest', + '.google.cloud.gkehub.v1beta1.GenerateConnectManifestRequest', ['name'] ); request.name = defaultValue1; @@ -562,7 +566,7 @@ describe('v1beta1.GkeHubMembershipServiceClient', () => { new protos.google.cloud.gkehub.v1beta1.GenerateConnectManifestRequest() ); const defaultValue1 = getTypeDefaultValue( - 'GenerateConnectManifestRequest', + '.google.cloud.gkehub.v1beta1.GenerateConnectManifestRequest', ['name'] ); request.name = defaultValue1; @@ -588,9 +592,10 @@ describe('v1beta1.GkeHubMembershipServiceClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1beta1.ValidateExclusivityRequest() ); - const defaultValue1 = getTypeDefaultValue('ValidateExclusivityRequest', [ - 'parent', - ]); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.gkehub.v1beta1.ValidateExclusivityRequest', + ['parent'] + ); request.parent = defaultValue1; const expectedHeaderRequestParams = `parent=${defaultValue1}`; const expectedResponse = generateSampleMessage( @@ -622,9 +627,10 @@ describe('v1beta1.GkeHubMembershipServiceClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1beta1.ValidateExclusivityRequest() ); - const defaultValue1 = getTypeDefaultValue('ValidateExclusivityRequest', [ - 'parent', - ]); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.gkehub.v1beta1.ValidateExclusivityRequest', + ['parent'] + ); request.parent = defaultValue1; const expectedHeaderRequestParams = `parent=${defaultValue1}`; const expectedResponse = generateSampleMessage( @@ -671,9 +677,10 @@ describe('v1beta1.GkeHubMembershipServiceClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1beta1.ValidateExclusivityRequest() ); - const defaultValue1 = getTypeDefaultValue('ValidateExclusivityRequest', [ - 'parent', - ]); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.gkehub.v1beta1.ValidateExclusivityRequest', + ['parent'] + ); request.parent = defaultValue1; const expectedHeaderRequestParams = `parent=${defaultValue1}`; const expectedError = new Error('expected'); @@ -704,9 +711,10 @@ describe('v1beta1.GkeHubMembershipServiceClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1beta1.ValidateExclusivityRequest() ); - const defaultValue1 = getTypeDefaultValue('ValidateExclusivityRequest', [ - 'parent', - ]); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.gkehub.v1beta1.ValidateExclusivityRequest', + ['parent'] + ); request.parent = defaultValue1; const expectedError = new Error('The client has already been closed.'); client.close(); @@ -728,7 +736,7 @@ describe('v1beta1.GkeHubMembershipServiceClient', () => { new protos.google.cloud.gkehub.v1beta1.GenerateExclusivityManifestRequest() ); const defaultValue1 = getTypeDefaultValue( - 'GenerateExclusivityManifestRequest', + '.google.cloud.gkehub.v1beta1.GenerateExclusivityManifestRequest', ['name'] ); request.name = defaultValue1; @@ -763,7 +771,7 @@ describe('v1beta1.GkeHubMembershipServiceClient', () => { new protos.google.cloud.gkehub.v1beta1.GenerateExclusivityManifestRequest() ); const defaultValue1 = getTypeDefaultValue( - 'GenerateExclusivityManifestRequest', + '.google.cloud.gkehub.v1beta1.GenerateExclusivityManifestRequest', ['name'] ); request.name = defaultValue1; @@ -813,7 +821,7 @@ describe('v1beta1.GkeHubMembershipServiceClient', () => { new protos.google.cloud.gkehub.v1beta1.GenerateExclusivityManifestRequest() ); const defaultValue1 = getTypeDefaultValue( - 'GenerateExclusivityManifestRequest', + '.google.cloud.gkehub.v1beta1.GenerateExclusivityManifestRequest', ['name'] ); request.name = defaultValue1; @@ -850,7 +858,7 @@ describe('v1beta1.GkeHubMembershipServiceClient', () => { new protos.google.cloud.gkehub.v1beta1.GenerateExclusivityManifestRequest() ); const defaultValue1 = getTypeDefaultValue( - 'GenerateExclusivityManifestRequest', + '.google.cloud.gkehub.v1beta1.GenerateExclusivityManifestRequest', ['name'] ); request.name = defaultValue1; @@ -876,9 +884,10 @@ describe('v1beta1.GkeHubMembershipServiceClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1beta1.CreateMembershipRequest() ); - const defaultValue1 = getTypeDefaultValue('CreateMembershipRequest', [ - 'parent', - ]); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.gkehub.v1beta1.CreateMembershipRequest', + ['parent'] + ); request.parent = defaultValue1; const expectedHeaderRequestParams = `parent=${defaultValue1}`; const expectedResponse = generateSampleMessage( @@ -911,9 +920,10 @@ describe('v1beta1.GkeHubMembershipServiceClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1beta1.CreateMembershipRequest() ); - const defaultValue1 = getTypeDefaultValue('CreateMembershipRequest', [ - 'parent', - ]); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.gkehub.v1beta1.CreateMembershipRequest', + ['parent'] + ); request.parent = defaultValue1; const expectedHeaderRequestParams = `parent=${defaultValue1}`; const expectedResponse = generateSampleMessage( @@ -967,9 +977,10 @@ describe('v1beta1.GkeHubMembershipServiceClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1beta1.CreateMembershipRequest() ); - const defaultValue1 = getTypeDefaultValue('CreateMembershipRequest', [ - 'parent', - ]); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.gkehub.v1beta1.CreateMembershipRequest', + ['parent'] + ); request.parent = defaultValue1; const expectedHeaderRequestParams = `parent=${defaultValue1}`; const expectedError = new Error('expected'); @@ -1000,9 +1011,10 @@ describe('v1beta1.GkeHubMembershipServiceClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1beta1.CreateMembershipRequest() ); - const defaultValue1 = getTypeDefaultValue('CreateMembershipRequest', [ - 'parent', - ]); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.gkehub.v1beta1.CreateMembershipRequest', + ['parent'] + ); request.parent = defaultValue1; const expectedHeaderRequestParams = `parent=${defaultValue1}`; const expectedError = new Error('expected'); @@ -1084,9 +1096,10 @@ describe('v1beta1.GkeHubMembershipServiceClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1beta1.DeleteMembershipRequest() ); - const defaultValue1 = getTypeDefaultValue('DeleteMembershipRequest', [ - 'name', - ]); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.gkehub.v1beta1.DeleteMembershipRequest', + ['name'] + ); request.name = defaultValue1; const expectedHeaderRequestParams = `name=${defaultValue1}`; const expectedResponse = generateSampleMessage( @@ -1119,9 +1132,10 @@ describe('v1beta1.GkeHubMembershipServiceClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1beta1.DeleteMembershipRequest() ); - const defaultValue1 = getTypeDefaultValue('DeleteMembershipRequest', [ - 'name', - ]); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.gkehub.v1beta1.DeleteMembershipRequest', + ['name'] + ); request.name = defaultValue1; const expectedHeaderRequestParams = `name=${defaultValue1}`; const expectedResponse = generateSampleMessage( @@ -1175,9 +1189,10 @@ describe('v1beta1.GkeHubMembershipServiceClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1beta1.DeleteMembershipRequest() ); - const defaultValue1 = getTypeDefaultValue('DeleteMembershipRequest', [ - 'name', - ]); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.gkehub.v1beta1.DeleteMembershipRequest', + ['name'] + ); request.name = defaultValue1; const expectedHeaderRequestParams = `name=${defaultValue1}`; const expectedError = new Error('expected'); @@ -1208,9 +1223,10 @@ describe('v1beta1.GkeHubMembershipServiceClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1beta1.DeleteMembershipRequest() ); - const defaultValue1 = getTypeDefaultValue('DeleteMembershipRequest', [ - 'name', - ]); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.gkehub.v1beta1.DeleteMembershipRequest', + ['name'] + ); request.name = defaultValue1; const expectedHeaderRequestParams = `name=${defaultValue1}`; const expectedError = new Error('expected'); @@ -1292,9 +1308,10 @@ describe('v1beta1.GkeHubMembershipServiceClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1beta1.UpdateMembershipRequest() ); - const defaultValue1 = getTypeDefaultValue('UpdateMembershipRequest', [ - 'name', - ]); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.gkehub.v1beta1.UpdateMembershipRequest', + ['name'] + ); request.name = defaultValue1; const expectedHeaderRequestParams = `name=${defaultValue1}`; const expectedResponse = generateSampleMessage( @@ -1327,9 +1344,10 @@ describe('v1beta1.GkeHubMembershipServiceClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1beta1.UpdateMembershipRequest() ); - const defaultValue1 = getTypeDefaultValue('UpdateMembershipRequest', [ - 'name', - ]); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.gkehub.v1beta1.UpdateMembershipRequest', + ['name'] + ); request.name = defaultValue1; const expectedHeaderRequestParams = `name=${defaultValue1}`; const expectedResponse = generateSampleMessage( @@ -1383,9 +1401,10 @@ describe('v1beta1.GkeHubMembershipServiceClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1beta1.UpdateMembershipRequest() ); - const defaultValue1 = getTypeDefaultValue('UpdateMembershipRequest', [ - 'name', - ]); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.gkehub.v1beta1.UpdateMembershipRequest', + ['name'] + ); request.name = defaultValue1; const expectedHeaderRequestParams = `name=${defaultValue1}`; const expectedError = new Error('expected'); @@ -1416,9 +1435,10 @@ describe('v1beta1.GkeHubMembershipServiceClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1beta1.UpdateMembershipRequest() ); - const defaultValue1 = getTypeDefaultValue('UpdateMembershipRequest', [ - 'name', - ]); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.gkehub.v1beta1.UpdateMembershipRequest', + ['name'] + ); request.name = defaultValue1; const expectedHeaderRequestParams = `name=${defaultValue1}`; const expectedError = new Error('expected'); @@ -1500,9 +1520,10 @@ describe('v1beta1.GkeHubMembershipServiceClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1beta1.ListMembershipsRequest() ); - const defaultValue1 = getTypeDefaultValue('ListMembershipsRequest', [ - 'parent', - ]); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.gkehub.v1beta1.ListMembershipsRequest', + ['parent'] + ); request.parent = defaultValue1; const expectedHeaderRequestParams = `parent=${defaultValue1}`; const expectedResponse = [ @@ -1541,9 +1562,10 @@ describe('v1beta1.GkeHubMembershipServiceClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1beta1.ListMembershipsRequest() ); - const defaultValue1 = getTypeDefaultValue('ListMembershipsRequest', [ - 'parent', - ]); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.gkehub.v1beta1.ListMembershipsRequest', + ['parent'] + ); request.parent = defaultValue1; const expectedHeaderRequestParams = `parent=${defaultValue1}`; const expectedResponse = [ @@ -1598,9 +1620,10 @@ describe('v1beta1.GkeHubMembershipServiceClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1beta1.ListMembershipsRequest() ); - const defaultValue1 = getTypeDefaultValue('ListMembershipsRequest', [ - 'parent', - ]); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.gkehub.v1beta1.ListMembershipsRequest', + ['parent'] + ); request.parent = defaultValue1; const expectedHeaderRequestParams = `parent=${defaultValue1}`; const expectedError = new Error('expected'); @@ -1631,9 +1654,10 @@ describe('v1beta1.GkeHubMembershipServiceClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1beta1.ListMembershipsRequest() ); - const defaultValue1 = getTypeDefaultValue('ListMembershipsRequest', [ - 'parent', - ]); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.gkehub.v1beta1.ListMembershipsRequest', + ['parent'] + ); request.parent = defaultValue1; const expectedHeaderRequestParams = `parent=${defaultValue1}`; const expectedResponse = [ @@ -1693,9 +1717,10 @@ describe('v1beta1.GkeHubMembershipServiceClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1beta1.ListMembershipsRequest() ); - const defaultValue1 = getTypeDefaultValue('ListMembershipsRequest', [ - 'parent', - ]); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.gkehub.v1beta1.ListMembershipsRequest', + ['parent'] + ); request.parent = defaultValue1; const expectedHeaderRequestParams = `parent=${defaultValue1}`; const expectedError = new Error('expected'); @@ -1744,9 +1769,10 @@ describe('v1beta1.GkeHubMembershipServiceClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1beta1.ListMembershipsRequest() ); - const defaultValue1 = getTypeDefaultValue('ListMembershipsRequest', [ - 'parent', - ]); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.gkehub.v1beta1.ListMembershipsRequest', + ['parent'] + ); request.parent = defaultValue1; const expectedHeaderRequestParams = `parent=${defaultValue1}`; const expectedResponse = [ @@ -1795,9 +1821,10 @@ describe('v1beta1.GkeHubMembershipServiceClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1beta1.ListMembershipsRequest() ); - const defaultValue1 = getTypeDefaultValue('ListMembershipsRequest', [ - 'parent', - ]); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.gkehub.v1beta1.ListMembershipsRequest', + ['parent'] + ); request.parent = defaultValue1; const expectedHeaderRequestParams = `parent=${defaultValue1}`; const expectedError = new Error('expected'); diff --git a/packages/google-cloud-gkehub/test/gapic_gke_hub_v1.ts b/packages/google-cloud-gkehub/test/gapic_gke_hub_v1.ts index 7809303b6bb..601b9ae5edc 100644 --- a/packages/google-cloud-gkehub/test/gapic_gke_hub_v1.ts +++ b/packages/google-cloud-gkehub/test/gapic_gke_hub_v1.ts @@ -267,9 +267,10 @@ describe('v1.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1.GetMembershipRequest() ); - const defaultValue1 = getTypeDefaultValue('GetMembershipRequest', [ - 'name', - ]); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.gkehub.v1.GetMembershipRequest', + ['name'] + ); request.name = defaultValue1; const expectedHeaderRequestParams = `name=${defaultValue1}`; const expectedResponse = generateSampleMessage( @@ -297,9 +298,10 @@ describe('v1.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1.GetMembershipRequest() ); - const defaultValue1 = getTypeDefaultValue('GetMembershipRequest', [ - 'name', - ]); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.gkehub.v1.GetMembershipRequest', + ['name'] + ); request.name = defaultValue1; const expectedHeaderRequestParams = `name=${defaultValue1}`; const expectedResponse = generateSampleMessage( @@ -343,9 +345,10 @@ describe('v1.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1.GetMembershipRequest() ); - const defaultValue1 = getTypeDefaultValue('GetMembershipRequest', [ - 'name', - ]); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.gkehub.v1.GetMembershipRequest', + ['name'] + ); request.name = defaultValue1; const expectedHeaderRequestParams = `name=${defaultValue1}`; const expectedError = new Error('expected'); @@ -373,9 +376,10 @@ describe('v1.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1.GetMembershipRequest() ); - const defaultValue1 = getTypeDefaultValue('GetMembershipRequest', [ - 'name', - ]); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.gkehub.v1.GetMembershipRequest', + ['name'] + ); request.name = defaultValue1; const expectedError = new Error('The client has already been closed.'); client.close(); @@ -393,7 +397,10 @@ describe('v1.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1.GetFeatureRequest() ); - const defaultValue1 = getTypeDefaultValue('GetFeatureRequest', ['name']); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.gkehub.v1.GetFeatureRequest', + ['name'] + ); request.name = defaultValue1; const expectedHeaderRequestParams = `name=${defaultValue1}`; const expectedResponse = generateSampleMessage( @@ -421,7 +428,10 @@ describe('v1.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1.GetFeatureRequest() ); - const defaultValue1 = getTypeDefaultValue('GetFeatureRequest', ['name']); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.gkehub.v1.GetFeatureRequest', + ['name'] + ); request.name = defaultValue1; const expectedHeaderRequestParams = `name=${defaultValue1}`; const expectedResponse = generateSampleMessage( @@ -465,7 +475,10 @@ describe('v1.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1.GetFeatureRequest() ); - const defaultValue1 = getTypeDefaultValue('GetFeatureRequest', ['name']); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.gkehub.v1.GetFeatureRequest', + ['name'] + ); request.name = defaultValue1; const expectedHeaderRequestParams = `name=${defaultValue1}`; const expectedError = new Error('expected'); @@ -493,7 +506,10 @@ describe('v1.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1.GetFeatureRequest() ); - const defaultValue1 = getTypeDefaultValue('GetFeatureRequest', ['name']); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.gkehub.v1.GetFeatureRequest', + ['name'] + ); request.name = defaultValue1; const expectedError = new Error('The client has already been closed.'); client.close(); @@ -512,7 +528,7 @@ describe('v1.GkeHubClient', () => { new protos.google.cloud.gkehub.v1.GenerateConnectManifestRequest() ); const defaultValue1 = getTypeDefaultValue( - 'GenerateConnectManifestRequest', + '.google.cloud.gkehub.v1.GenerateConnectManifestRequest', ['name'] ); request.name = defaultValue1; @@ -544,7 +560,7 @@ describe('v1.GkeHubClient', () => { new protos.google.cloud.gkehub.v1.GenerateConnectManifestRequest() ); const defaultValue1 = getTypeDefaultValue( - 'GenerateConnectManifestRequest', + '.google.cloud.gkehub.v1.GenerateConnectManifestRequest', ['name'] ); request.name = defaultValue1; @@ -591,7 +607,7 @@ describe('v1.GkeHubClient', () => { new protos.google.cloud.gkehub.v1.GenerateConnectManifestRequest() ); const defaultValue1 = getTypeDefaultValue( - 'GenerateConnectManifestRequest', + '.google.cloud.gkehub.v1.GenerateConnectManifestRequest', ['name'] ); request.name = defaultValue1; @@ -625,7 +641,7 @@ describe('v1.GkeHubClient', () => { new protos.google.cloud.gkehub.v1.GenerateConnectManifestRequest() ); const defaultValue1 = getTypeDefaultValue( - 'GenerateConnectManifestRequest', + '.google.cloud.gkehub.v1.GenerateConnectManifestRequest', ['name'] ); request.name = defaultValue1; @@ -648,9 +664,10 @@ describe('v1.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1.CreateMembershipRequest() ); - const defaultValue1 = getTypeDefaultValue('CreateMembershipRequest', [ - 'parent', - ]); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.gkehub.v1.CreateMembershipRequest', + ['parent'] + ); request.parent = defaultValue1; const expectedHeaderRequestParams = `parent=${defaultValue1}`; const expectedResponse = generateSampleMessage( @@ -680,9 +697,10 @@ describe('v1.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1.CreateMembershipRequest() ); - const defaultValue1 = getTypeDefaultValue('CreateMembershipRequest', [ - 'parent', - ]); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.gkehub.v1.CreateMembershipRequest', + ['parent'] + ); request.parent = defaultValue1; const expectedHeaderRequestParams = `parent=${defaultValue1}`; const expectedResponse = generateSampleMessage( @@ -733,9 +751,10 @@ describe('v1.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1.CreateMembershipRequest() ); - const defaultValue1 = getTypeDefaultValue('CreateMembershipRequest', [ - 'parent', - ]); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.gkehub.v1.CreateMembershipRequest', + ['parent'] + ); request.parent = defaultValue1; const expectedHeaderRequestParams = `parent=${defaultValue1}`; const expectedError = new Error('expected'); @@ -763,9 +782,10 @@ describe('v1.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1.CreateMembershipRequest() ); - const defaultValue1 = getTypeDefaultValue('CreateMembershipRequest', [ - 'parent', - ]); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.gkehub.v1.CreateMembershipRequest', + ['parent'] + ); request.parent = defaultValue1; const expectedHeaderRequestParams = `parent=${defaultValue1}`; const expectedError = new Error('expected'); @@ -838,9 +858,10 @@ describe('v1.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1.CreateFeatureRequest() ); - const defaultValue1 = getTypeDefaultValue('CreateFeatureRequest', [ - 'parent', - ]); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.gkehub.v1.CreateFeatureRequest', + ['parent'] + ); request.parent = defaultValue1; const expectedHeaderRequestParams = `parent=${defaultValue1}`; const expectedResponse = generateSampleMessage( @@ -870,9 +891,10 @@ describe('v1.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1.CreateFeatureRequest() ); - const defaultValue1 = getTypeDefaultValue('CreateFeatureRequest', [ - 'parent', - ]); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.gkehub.v1.CreateFeatureRequest', + ['parent'] + ); request.parent = defaultValue1; const expectedHeaderRequestParams = `parent=${defaultValue1}`; const expectedResponse = generateSampleMessage( @@ -923,9 +945,10 @@ describe('v1.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1.CreateFeatureRequest() ); - const defaultValue1 = getTypeDefaultValue('CreateFeatureRequest', [ - 'parent', - ]); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.gkehub.v1.CreateFeatureRequest', + ['parent'] + ); request.parent = defaultValue1; const expectedHeaderRequestParams = `parent=${defaultValue1}`; const expectedError = new Error('expected'); @@ -953,9 +976,10 @@ describe('v1.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1.CreateFeatureRequest() ); - const defaultValue1 = getTypeDefaultValue('CreateFeatureRequest', [ - 'parent', - ]); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.gkehub.v1.CreateFeatureRequest', + ['parent'] + ); request.parent = defaultValue1; const expectedHeaderRequestParams = `parent=${defaultValue1}`; const expectedError = new Error('expected'); @@ -1028,9 +1052,10 @@ describe('v1.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1.DeleteMembershipRequest() ); - const defaultValue1 = getTypeDefaultValue('DeleteMembershipRequest', [ - 'name', - ]); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.gkehub.v1.DeleteMembershipRequest', + ['name'] + ); request.name = defaultValue1; const expectedHeaderRequestParams = `name=${defaultValue1}`; const expectedResponse = generateSampleMessage( @@ -1060,9 +1085,10 @@ describe('v1.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1.DeleteMembershipRequest() ); - const defaultValue1 = getTypeDefaultValue('DeleteMembershipRequest', [ - 'name', - ]); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.gkehub.v1.DeleteMembershipRequest', + ['name'] + ); request.name = defaultValue1; const expectedHeaderRequestParams = `name=${defaultValue1}`; const expectedResponse = generateSampleMessage( @@ -1113,9 +1139,10 @@ describe('v1.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1.DeleteMembershipRequest() ); - const defaultValue1 = getTypeDefaultValue('DeleteMembershipRequest', [ - 'name', - ]); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.gkehub.v1.DeleteMembershipRequest', + ['name'] + ); request.name = defaultValue1; const expectedHeaderRequestParams = `name=${defaultValue1}`; const expectedError = new Error('expected'); @@ -1143,9 +1170,10 @@ describe('v1.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1.DeleteMembershipRequest() ); - const defaultValue1 = getTypeDefaultValue('DeleteMembershipRequest', [ - 'name', - ]); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.gkehub.v1.DeleteMembershipRequest', + ['name'] + ); request.name = defaultValue1; const expectedHeaderRequestParams = `name=${defaultValue1}`; const expectedError = new Error('expected'); @@ -1218,9 +1246,10 @@ describe('v1.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1.DeleteFeatureRequest() ); - const defaultValue1 = getTypeDefaultValue('DeleteFeatureRequest', [ - 'name', - ]); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.gkehub.v1.DeleteFeatureRequest', + ['name'] + ); request.name = defaultValue1; const expectedHeaderRequestParams = `name=${defaultValue1}`; const expectedResponse = generateSampleMessage( @@ -1250,9 +1279,10 @@ describe('v1.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1.DeleteFeatureRequest() ); - const defaultValue1 = getTypeDefaultValue('DeleteFeatureRequest', [ - 'name', - ]); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.gkehub.v1.DeleteFeatureRequest', + ['name'] + ); request.name = defaultValue1; const expectedHeaderRequestParams = `name=${defaultValue1}`; const expectedResponse = generateSampleMessage( @@ -1303,9 +1333,10 @@ describe('v1.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1.DeleteFeatureRequest() ); - const defaultValue1 = getTypeDefaultValue('DeleteFeatureRequest', [ - 'name', - ]); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.gkehub.v1.DeleteFeatureRequest', + ['name'] + ); request.name = defaultValue1; const expectedHeaderRequestParams = `name=${defaultValue1}`; const expectedError = new Error('expected'); @@ -1333,9 +1364,10 @@ describe('v1.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1.DeleteFeatureRequest() ); - const defaultValue1 = getTypeDefaultValue('DeleteFeatureRequest', [ - 'name', - ]); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.gkehub.v1.DeleteFeatureRequest', + ['name'] + ); request.name = defaultValue1; const expectedHeaderRequestParams = `name=${defaultValue1}`; const expectedError = new Error('expected'); @@ -1408,9 +1440,10 @@ describe('v1.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1.UpdateMembershipRequest() ); - const defaultValue1 = getTypeDefaultValue('UpdateMembershipRequest', [ - 'name', - ]); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.gkehub.v1.UpdateMembershipRequest', + ['name'] + ); request.name = defaultValue1; const expectedHeaderRequestParams = `name=${defaultValue1}`; const expectedResponse = generateSampleMessage( @@ -1440,9 +1473,10 @@ describe('v1.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1.UpdateMembershipRequest() ); - const defaultValue1 = getTypeDefaultValue('UpdateMembershipRequest', [ - 'name', - ]); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.gkehub.v1.UpdateMembershipRequest', + ['name'] + ); request.name = defaultValue1; const expectedHeaderRequestParams = `name=${defaultValue1}`; const expectedResponse = generateSampleMessage( @@ -1493,9 +1527,10 @@ describe('v1.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1.UpdateMembershipRequest() ); - const defaultValue1 = getTypeDefaultValue('UpdateMembershipRequest', [ - 'name', - ]); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.gkehub.v1.UpdateMembershipRequest', + ['name'] + ); request.name = defaultValue1; const expectedHeaderRequestParams = `name=${defaultValue1}`; const expectedError = new Error('expected'); @@ -1523,9 +1558,10 @@ describe('v1.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1.UpdateMembershipRequest() ); - const defaultValue1 = getTypeDefaultValue('UpdateMembershipRequest', [ - 'name', - ]); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.gkehub.v1.UpdateMembershipRequest', + ['name'] + ); request.name = defaultValue1; const expectedHeaderRequestParams = `name=${defaultValue1}`; const expectedError = new Error('expected'); @@ -1598,9 +1634,10 @@ describe('v1.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1.UpdateFeatureRequest() ); - const defaultValue1 = getTypeDefaultValue('UpdateFeatureRequest', [ - 'name', - ]); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.gkehub.v1.UpdateFeatureRequest', + ['name'] + ); request.name = defaultValue1; const expectedHeaderRequestParams = `name=${defaultValue1}`; const expectedResponse = generateSampleMessage( @@ -1630,9 +1667,10 @@ describe('v1.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1.UpdateFeatureRequest() ); - const defaultValue1 = getTypeDefaultValue('UpdateFeatureRequest', [ - 'name', - ]); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.gkehub.v1.UpdateFeatureRequest', + ['name'] + ); request.name = defaultValue1; const expectedHeaderRequestParams = `name=${defaultValue1}`; const expectedResponse = generateSampleMessage( @@ -1683,9 +1721,10 @@ describe('v1.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1.UpdateFeatureRequest() ); - const defaultValue1 = getTypeDefaultValue('UpdateFeatureRequest', [ - 'name', - ]); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.gkehub.v1.UpdateFeatureRequest', + ['name'] + ); request.name = defaultValue1; const expectedHeaderRequestParams = `name=${defaultValue1}`; const expectedError = new Error('expected'); @@ -1713,9 +1752,10 @@ describe('v1.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1.UpdateFeatureRequest() ); - const defaultValue1 = getTypeDefaultValue('UpdateFeatureRequest', [ - 'name', - ]); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.gkehub.v1.UpdateFeatureRequest', + ['name'] + ); request.name = defaultValue1; const expectedHeaderRequestParams = `name=${defaultValue1}`; const expectedError = new Error('expected'); @@ -1788,9 +1828,10 @@ describe('v1.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1.ListMembershipsRequest() ); - const defaultValue1 = getTypeDefaultValue('ListMembershipsRequest', [ - 'parent', - ]); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.gkehub.v1.ListMembershipsRequest', + ['parent'] + ); request.parent = defaultValue1; const expectedHeaderRequestParams = `parent=${defaultValue1}`; const expectedResponse = [ @@ -1820,9 +1861,10 @@ describe('v1.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1.ListMembershipsRequest() ); - const defaultValue1 = getTypeDefaultValue('ListMembershipsRequest', [ - 'parent', - ]); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.gkehub.v1.ListMembershipsRequest', + ['parent'] + ); request.parent = defaultValue1; const expectedHeaderRequestParams = `parent=${defaultValue1}`; const expectedResponse = [ @@ -1868,9 +1910,10 @@ describe('v1.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1.ListMembershipsRequest() ); - const defaultValue1 = getTypeDefaultValue('ListMembershipsRequest', [ - 'parent', - ]); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.gkehub.v1.ListMembershipsRequest', + ['parent'] + ); request.parent = defaultValue1; const expectedHeaderRequestParams = `parent=${defaultValue1}`; const expectedError = new Error('expected'); @@ -1898,9 +1941,10 @@ describe('v1.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1.ListMembershipsRequest() ); - const defaultValue1 = getTypeDefaultValue('ListMembershipsRequest', [ - 'parent', - ]); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.gkehub.v1.ListMembershipsRequest', + ['parent'] + ); request.parent = defaultValue1; const expectedHeaderRequestParams = `parent=${defaultValue1}`; const expectedResponse = [ @@ -1951,9 +1995,10 @@ describe('v1.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1.ListMembershipsRequest() ); - const defaultValue1 = getTypeDefaultValue('ListMembershipsRequest', [ - 'parent', - ]); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.gkehub.v1.ListMembershipsRequest', + ['parent'] + ); request.parent = defaultValue1; const expectedHeaderRequestParams = `parent=${defaultValue1}`; const expectedError = new Error('expected'); @@ -1999,9 +2044,10 @@ describe('v1.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1.ListMembershipsRequest() ); - const defaultValue1 = getTypeDefaultValue('ListMembershipsRequest', [ - 'parent', - ]); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.gkehub.v1.ListMembershipsRequest', + ['parent'] + ); request.parent = defaultValue1; const expectedHeaderRequestParams = `parent=${defaultValue1}`; const expectedResponse = [ @@ -2041,9 +2087,10 @@ describe('v1.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1.ListMembershipsRequest() ); - const defaultValue1 = getTypeDefaultValue('ListMembershipsRequest', [ - 'parent', - ]); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.gkehub.v1.ListMembershipsRequest', + ['parent'] + ); request.parent = defaultValue1; const expectedHeaderRequestParams = `parent=${defaultValue1}`; const expectedError = new Error('expected'); @@ -2082,9 +2129,10 @@ describe('v1.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1.ListFeaturesRequest() ); - const defaultValue1 = getTypeDefaultValue('ListFeaturesRequest', [ - 'parent', - ]); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.gkehub.v1.ListFeaturesRequest', + ['parent'] + ); request.parent = defaultValue1; const expectedHeaderRequestParams = `parent=${defaultValue1}`; const expectedResponse = [ @@ -2114,9 +2162,10 @@ describe('v1.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1.ListFeaturesRequest() ); - const defaultValue1 = getTypeDefaultValue('ListFeaturesRequest', [ - 'parent', - ]); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.gkehub.v1.ListFeaturesRequest', + ['parent'] + ); request.parent = defaultValue1; const expectedHeaderRequestParams = `parent=${defaultValue1}`; const expectedResponse = [ @@ -2162,9 +2211,10 @@ describe('v1.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1.ListFeaturesRequest() ); - const defaultValue1 = getTypeDefaultValue('ListFeaturesRequest', [ - 'parent', - ]); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.gkehub.v1.ListFeaturesRequest', + ['parent'] + ); request.parent = defaultValue1; const expectedHeaderRequestParams = `parent=${defaultValue1}`; const expectedError = new Error('expected'); @@ -2192,9 +2242,10 @@ describe('v1.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1.ListFeaturesRequest() ); - const defaultValue1 = getTypeDefaultValue('ListFeaturesRequest', [ - 'parent', - ]); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.gkehub.v1.ListFeaturesRequest', + ['parent'] + ); request.parent = defaultValue1; const expectedHeaderRequestParams = `parent=${defaultValue1}`; const expectedResponse = [ @@ -2242,9 +2293,10 @@ describe('v1.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1.ListFeaturesRequest() ); - const defaultValue1 = getTypeDefaultValue('ListFeaturesRequest', [ - 'parent', - ]); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.gkehub.v1.ListFeaturesRequest', + ['parent'] + ); request.parent = defaultValue1; const expectedHeaderRequestParams = `parent=${defaultValue1}`; const expectedError = new Error('expected'); @@ -2289,9 +2341,10 @@ describe('v1.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1.ListFeaturesRequest() ); - const defaultValue1 = getTypeDefaultValue('ListFeaturesRequest', [ - 'parent', - ]); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.gkehub.v1.ListFeaturesRequest', + ['parent'] + ); request.parent = defaultValue1; const expectedHeaderRequestParams = `parent=${defaultValue1}`; const expectedResponse = [ @@ -2331,9 +2384,10 @@ describe('v1.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1.ListFeaturesRequest() ); - const defaultValue1 = getTypeDefaultValue('ListFeaturesRequest', [ - 'parent', - ]); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.gkehub.v1.ListFeaturesRequest', + ['parent'] + ); request.parent = defaultValue1; const expectedHeaderRequestParams = `parent=${defaultValue1}`; const expectedError = new Error('expected'); diff --git a/packages/google-cloud-gkehub/test/gapic_gke_hub_v1alpha.ts b/packages/google-cloud-gkehub/test/gapic_gke_hub_v1alpha.ts index c375654af7f..b1299deee92 100644 --- a/packages/google-cloud-gkehub/test/gapic_gke_hub_v1alpha.ts +++ b/packages/google-cloud-gkehub/test/gapic_gke_hub_v1alpha.ts @@ -267,7 +267,10 @@ describe('v1alpha.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1alpha.GetFeatureRequest() ); - const defaultValue1 = getTypeDefaultValue('GetFeatureRequest', ['name']); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.gkehub.v1alpha.GetFeatureRequest', + ['name'] + ); request.name = defaultValue1; const expectedHeaderRequestParams = `name=${defaultValue1}`; const expectedResponse = generateSampleMessage( @@ -295,7 +298,10 @@ describe('v1alpha.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1alpha.GetFeatureRequest() ); - const defaultValue1 = getTypeDefaultValue('GetFeatureRequest', ['name']); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.gkehub.v1alpha.GetFeatureRequest', + ['name'] + ); request.name = defaultValue1; const expectedHeaderRequestParams = `name=${defaultValue1}`; const expectedResponse = generateSampleMessage( @@ -339,7 +345,10 @@ describe('v1alpha.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1alpha.GetFeatureRequest() ); - const defaultValue1 = getTypeDefaultValue('GetFeatureRequest', ['name']); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.gkehub.v1alpha.GetFeatureRequest', + ['name'] + ); request.name = defaultValue1; const expectedHeaderRequestParams = `name=${defaultValue1}`; const expectedError = new Error('expected'); @@ -367,7 +376,10 @@ describe('v1alpha.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1alpha.GetFeatureRequest() ); - const defaultValue1 = getTypeDefaultValue('GetFeatureRequest', ['name']); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.gkehub.v1alpha.GetFeatureRequest', + ['name'] + ); request.name = defaultValue1; const expectedError = new Error('The client has already been closed.'); client.close(); @@ -385,9 +397,10 @@ describe('v1alpha.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1alpha.CreateFeatureRequest() ); - const defaultValue1 = getTypeDefaultValue('CreateFeatureRequest', [ - 'parent', - ]); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.gkehub.v1alpha.CreateFeatureRequest', + ['parent'] + ); request.parent = defaultValue1; const expectedHeaderRequestParams = `parent=${defaultValue1}`; const expectedResponse = generateSampleMessage( @@ -417,9 +430,10 @@ describe('v1alpha.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1alpha.CreateFeatureRequest() ); - const defaultValue1 = getTypeDefaultValue('CreateFeatureRequest', [ - 'parent', - ]); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.gkehub.v1alpha.CreateFeatureRequest', + ['parent'] + ); request.parent = defaultValue1; const expectedHeaderRequestParams = `parent=${defaultValue1}`; const expectedResponse = generateSampleMessage( @@ -470,9 +484,10 @@ describe('v1alpha.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1alpha.CreateFeatureRequest() ); - const defaultValue1 = getTypeDefaultValue('CreateFeatureRequest', [ - 'parent', - ]); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.gkehub.v1alpha.CreateFeatureRequest', + ['parent'] + ); request.parent = defaultValue1; const expectedHeaderRequestParams = `parent=${defaultValue1}`; const expectedError = new Error('expected'); @@ -500,9 +515,10 @@ describe('v1alpha.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1alpha.CreateFeatureRequest() ); - const defaultValue1 = getTypeDefaultValue('CreateFeatureRequest', [ - 'parent', - ]); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.gkehub.v1alpha.CreateFeatureRequest', + ['parent'] + ); request.parent = defaultValue1; const expectedHeaderRequestParams = `parent=${defaultValue1}`; const expectedError = new Error('expected'); @@ -575,9 +591,10 @@ describe('v1alpha.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1alpha.DeleteFeatureRequest() ); - const defaultValue1 = getTypeDefaultValue('DeleteFeatureRequest', [ - 'name', - ]); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.gkehub.v1alpha.DeleteFeatureRequest', + ['name'] + ); request.name = defaultValue1; const expectedHeaderRequestParams = `name=${defaultValue1}`; const expectedResponse = generateSampleMessage( @@ -607,9 +624,10 @@ describe('v1alpha.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1alpha.DeleteFeatureRequest() ); - const defaultValue1 = getTypeDefaultValue('DeleteFeatureRequest', [ - 'name', - ]); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.gkehub.v1alpha.DeleteFeatureRequest', + ['name'] + ); request.name = defaultValue1; const expectedHeaderRequestParams = `name=${defaultValue1}`; const expectedResponse = generateSampleMessage( @@ -660,9 +678,10 @@ describe('v1alpha.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1alpha.DeleteFeatureRequest() ); - const defaultValue1 = getTypeDefaultValue('DeleteFeatureRequest', [ - 'name', - ]); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.gkehub.v1alpha.DeleteFeatureRequest', + ['name'] + ); request.name = defaultValue1; const expectedHeaderRequestParams = `name=${defaultValue1}`; const expectedError = new Error('expected'); @@ -690,9 +709,10 @@ describe('v1alpha.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1alpha.DeleteFeatureRequest() ); - const defaultValue1 = getTypeDefaultValue('DeleteFeatureRequest', [ - 'name', - ]); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.gkehub.v1alpha.DeleteFeatureRequest', + ['name'] + ); request.name = defaultValue1; const expectedHeaderRequestParams = `name=${defaultValue1}`; const expectedError = new Error('expected'); @@ -765,9 +785,10 @@ describe('v1alpha.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1alpha.UpdateFeatureRequest() ); - const defaultValue1 = getTypeDefaultValue('UpdateFeatureRequest', [ - 'name', - ]); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.gkehub.v1alpha.UpdateFeatureRequest', + ['name'] + ); request.name = defaultValue1; const expectedHeaderRequestParams = `name=${defaultValue1}`; const expectedResponse = generateSampleMessage( @@ -797,9 +818,10 @@ describe('v1alpha.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1alpha.UpdateFeatureRequest() ); - const defaultValue1 = getTypeDefaultValue('UpdateFeatureRequest', [ - 'name', - ]); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.gkehub.v1alpha.UpdateFeatureRequest', + ['name'] + ); request.name = defaultValue1; const expectedHeaderRequestParams = `name=${defaultValue1}`; const expectedResponse = generateSampleMessage( @@ -850,9 +872,10 @@ describe('v1alpha.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1alpha.UpdateFeatureRequest() ); - const defaultValue1 = getTypeDefaultValue('UpdateFeatureRequest', [ - 'name', - ]); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.gkehub.v1alpha.UpdateFeatureRequest', + ['name'] + ); request.name = defaultValue1; const expectedHeaderRequestParams = `name=${defaultValue1}`; const expectedError = new Error('expected'); @@ -880,9 +903,10 @@ describe('v1alpha.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1alpha.UpdateFeatureRequest() ); - const defaultValue1 = getTypeDefaultValue('UpdateFeatureRequest', [ - 'name', - ]); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.gkehub.v1alpha.UpdateFeatureRequest', + ['name'] + ); request.name = defaultValue1; const expectedHeaderRequestParams = `name=${defaultValue1}`; const expectedError = new Error('expected'); @@ -955,9 +979,10 @@ describe('v1alpha.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1alpha.ListFeaturesRequest() ); - const defaultValue1 = getTypeDefaultValue('ListFeaturesRequest', [ - 'parent', - ]); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.gkehub.v1alpha.ListFeaturesRequest', + ['parent'] + ); request.parent = defaultValue1; const expectedHeaderRequestParams = `parent=${defaultValue1}`; const expectedResponse = [ @@ -987,9 +1012,10 @@ describe('v1alpha.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1alpha.ListFeaturesRequest() ); - const defaultValue1 = getTypeDefaultValue('ListFeaturesRequest', [ - 'parent', - ]); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.gkehub.v1alpha.ListFeaturesRequest', + ['parent'] + ); request.parent = defaultValue1; const expectedHeaderRequestParams = `parent=${defaultValue1}`; const expectedResponse = [ @@ -1035,9 +1061,10 @@ describe('v1alpha.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1alpha.ListFeaturesRequest() ); - const defaultValue1 = getTypeDefaultValue('ListFeaturesRequest', [ - 'parent', - ]); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.gkehub.v1alpha.ListFeaturesRequest', + ['parent'] + ); request.parent = defaultValue1; const expectedHeaderRequestParams = `parent=${defaultValue1}`; const expectedError = new Error('expected'); @@ -1065,9 +1092,10 @@ describe('v1alpha.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1alpha.ListFeaturesRequest() ); - const defaultValue1 = getTypeDefaultValue('ListFeaturesRequest', [ - 'parent', - ]); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.gkehub.v1alpha.ListFeaturesRequest', + ['parent'] + ); request.parent = defaultValue1; const expectedHeaderRequestParams = `parent=${defaultValue1}`; const expectedResponse = [ @@ -1118,9 +1146,10 @@ describe('v1alpha.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1alpha.ListFeaturesRequest() ); - const defaultValue1 = getTypeDefaultValue('ListFeaturesRequest', [ - 'parent', - ]); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.gkehub.v1alpha.ListFeaturesRequest', + ['parent'] + ); request.parent = defaultValue1; const expectedHeaderRequestParams = `parent=${defaultValue1}`; const expectedError = new Error('expected'); @@ -1168,9 +1197,10 @@ describe('v1alpha.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1alpha.ListFeaturesRequest() ); - const defaultValue1 = getTypeDefaultValue('ListFeaturesRequest', [ - 'parent', - ]); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.gkehub.v1alpha.ListFeaturesRequest', + ['parent'] + ); request.parent = defaultValue1; const expectedHeaderRequestParams = `parent=${defaultValue1}`; const expectedResponse = [ @@ -1210,9 +1240,10 @@ describe('v1alpha.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1alpha.ListFeaturesRequest() ); - const defaultValue1 = getTypeDefaultValue('ListFeaturesRequest', [ - 'parent', - ]); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.gkehub.v1alpha.ListFeaturesRequest', + ['parent'] + ); request.parent = defaultValue1; const expectedHeaderRequestParams = `parent=${defaultValue1}`; const expectedError = new Error('expected'); diff --git a/packages/google-cloud-gkehub/test/gapic_gke_hub_v1alpha2.ts b/packages/google-cloud-gkehub/test/gapic_gke_hub_v1alpha2.ts index 8c60d2ea09a..1d559dcc586 100644 --- a/packages/google-cloud-gkehub/test/gapic_gke_hub_v1alpha2.ts +++ b/packages/google-cloud-gkehub/test/gapic_gke_hub_v1alpha2.ts @@ -267,9 +267,10 @@ describe('v1alpha2.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1alpha2.GetMembershipRequest() ); - const defaultValue1 = getTypeDefaultValue('GetMembershipRequest', [ - 'name', - ]); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.gkehub.v1alpha2.GetMembershipRequest', + ['name'] + ); request.name = defaultValue1; const expectedHeaderRequestParams = `name=${defaultValue1}`; const expectedResponse = generateSampleMessage( @@ -297,9 +298,10 @@ describe('v1alpha2.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1alpha2.GetMembershipRequest() ); - const defaultValue1 = getTypeDefaultValue('GetMembershipRequest', [ - 'name', - ]); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.gkehub.v1alpha2.GetMembershipRequest', + ['name'] + ); request.name = defaultValue1; const expectedHeaderRequestParams = `name=${defaultValue1}`; const expectedResponse = generateSampleMessage( @@ -343,9 +345,10 @@ describe('v1alpha2.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1alpha2.GetMembershipRequest() ); - const defaultValue1 = getTypeDefaultValue('GetMembershipRequest', [ - 'name', - ]); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.gkehub.v1alpha2.GetMembershipRequest', + ['name'] + ); request.name = defaultValue1; const expectedHeaderRequestParams = `name=${defaultValue1}`; const expectedError = new Error('expected'); @@ -373,9 +376,10 @@ describe('v1alpha2.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1alpha2.GetMembershipRequest() ); - const defaultValue1 = getTypeDefaultValue('GetMembershipRequest', [ - 'name', - ]); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.gkehub.v1alpha2.GetMembershipRequest', + ['name'] + ); request.name = defaultValue1; const expectedError = new Error('The client has already been closed.'); client.close(); @@ -394,7 +398,7 @@ describe('v1alpha2.GkeHubClient', () => { new protos.google.cloud.gkehub.v1alpha2.GenerateConnectManifestRequest() ); const defaultValue1 = getTypeDefaultValue( - 'GenerateConnectManifestRequest', + '.google.cloud.gkehub.v1alpha2.GenerateConnectManifestRequest', ['name'] ); request.name = defaultValue1; @@ -426,7 +430,7 @@ describe('v1alpha2.GkeHubClient', () => { new protos.google.cloud.gkehub.v1alpha2.GenerateConnectManifestRequest() ); const defaultValue1 = getTypeDefaultValue( - 'GenerateConnectManifestRequest', + '.google.cloud.gkehub.v1alpha2.GenerateConnectManifestRequest', ['name'] ); request.name = defaultValue1; @@ -473,7 +477,7 @@ describe('v1alpha2.GkeHubClient', () => { new protos.google.cloud.gkehub.v1alpha2.GenerateConnectManifestRequest() ); const defaultValue1 = getTypeDefaultValue( - 'GenerateConnectManifestRequest', + '.google.cloud.gkehub.v1alpha2.GenerateConnectManifestRequest', ['name'] ); request.name = defaultValue1; @@ -507,7 +511,7 @@ describe('v1alpha2.GkeHubClient', () => { new protos.google.cloud.gkehub.v1alpha2.GenerateConnectManifestRequest() ); const defaultValue1 = getTypeDefaultValue( - 'GenerateConnectManifestRequest', + '.google.cloud.gkehub.v1alpha2.GenerateConnectManifestRequest', ['name'] ); request.name = defaultValue1; @@ -530,9 +534,10 @@ describe('v1alpha2.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1alpha2.InitializeHubRequest() ); - const defaultValue1 = getTypeDefaultValue('InitializeHubRequest', [ - 'project', - ]); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.gkehub.v1alpha2.InitializeHubRequest', + ['project'] + ); request.project = defaultValue1; const expectedHeaderRequestParams = `project=${defaultValue1}`; const expectedResponse = generateSampleMessage( @@ -560,9 +565,10 @@ describe('v1alpha2.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1alpha2.InitializeHubRequest() ); - const defaultValue1 = getTypeDefaultValue('InitializeHubRequest', [ - 'project', - ]); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.gkehub.v1alpha2.InitializeHubRequest', + ['project'] + ); request.project = defaultValue1; const expectedHeaderRequestParams = `project=${defaultValue1}`; const expectedResponse = generateSampleMessage( @@ -606,9 +612,10 @@ describe('v1alpha2.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1alpha2.InitializeHubRequest() ); - const defaultValue1 = getTypeDefaultValue('InitializeHubRequest', [ - 'project', - ]); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.gkehub.v1alpha2.InitializeHubRequest', + ['project'] + ); request.project = defaultValue1; const expectedHeaderRequestParams = `project=${defaultValue1}`; const expectedError = new Error('expected'); @@ -636,9 +643,10 @@ describe('v1alpha2.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1alpha2.InitializeHubRequest() ); - const defaultValue1 = getTypeDefaultValue('InitializeHubRequest', [ - 'project', - ]); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.gkehub.v1alpha2.InitializeHubRequest', + ['project'] + ); request.project = defaultValue1; const expectedError = new Error('The client has already been closed.'); client.close(); @@ -656,9 +664,10 @@ describe('v1alpha2.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1alpha2.CreateMembershipRequest() ); - const defaultValue1 = getTypeDefaultValue('CreateMembershipRequest', [ - 'parent', - ]); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.gkehub.v1alpha2.CreateMembershipRequest', + ['parent'] + ); request.parent = defaultValue1; const expectedHeaderRequestParams = `parent=${defaultValue1}`; const expectedResponse = generateSampleMessage( @@ -688,9 +697,10 @@ describe('v1alpha2.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1alpha2.CreateMembershipRequest() ); - const defaultValue1 = getTypeDefaultValue('CreateMembershipRequest', [ - 'parent', - ]); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.gkehub.v1alpha2.CreateMembershipRequest', + ['parent'] + ); request.parent = defaultValue1; const expectedHeaderRequestParams = `parent=${defaultValue1}`; const expectedResponse = generateSampleMessage( @@ -741,9 +751,10 @@ describe('v1alpha2.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1alpha2.CreateMembershipRequest() ); - const defaultValue1 = getTypeDefaultValue('CreateMembershipRequest', [ - 'parent', - ]); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.gkehub.v1alpha2.CreateMembershipRequest', + ['parent'] + ); request.parent = defaultValue1; const expectedHeaderRequestParams = `parent=${defaultValue1}`; const expectedError = new Error('expected'); @@ -771,9 +782,10 @@ describe('v1alpha2.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1alpha2.CreateMembershipRequest() ); - const defaultValue1 = getTypeDefaultValue('CreateMembershipRequest', [ - 'parent', - ]); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.gkehub.v1alpha2.CreateMembershipRequest', + ['parent'] + ); request.parent = defaultValue1; const expectedHeaderRequestParams = `parent=${defaultValue1}`; const expectedError = new Error('expected'); @@ -846,9 +858,10 @@ describe('v1alpha2.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1alpha2.DeleteMembershipRequest() ); - const defaultValue1 = getTypeDefaultValue('DeleteMembershipRequest', [ - 'name', - ]); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.gkehub.v1alpha2.DeleteMembershipRequest', + ['name'] + ); request.name = defaultValue1; const expectedHeaderRequestParams = `name=${defaultValue1}`; const expectedResponse = generateSampleMessage( @@ -878,9 +891,10 @@ describe('v1alpha2.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1alpha2.DeleteMembershipRequest() ); - const defaultValue1 = getTypeDefaultValue('DeleteMembershipRequest', [ - 'name', - ]); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.gkehub.v1alpha2.DeleteMembershipRequest', + ['name'] + ); request.name = defaultValue1; const expectedHeaderRequestParams = `name=${defaultValue1}`; const expectedResponse = generateSampleMessage( @@ -931,9 +945,10 @@ describe('v1alpha2.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1alpha2.DeleteMembershipRequest() ); - const defaultValue1 = getTypeDefaultValue('DeleteMembershipRequest', [ - 'name', - ]); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.gkehub.v1alpha2.DeleteMembershipRequest', + ['name'] + ); request.name = defaultValue1; const expectedHeaderRequestParams = `name=${defaultValue1}`; const expectedError = new Error('expected'); @@ -961,9 +976,10 @@ describe('v1alpha2.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1alpha2.DeleteMembershipRequest() ); - const defaultValue1 = getTypeDefaultValue('DeleteMembershipRequest', [ - 'name', - ]); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.gkehub.v1alpha2.DeleteMembershipRequest', + ['name'] + ); request.name = defaultValue1; const expectedHeaderRequestParams = `name=${defaultValue1}`; const expectedError = new Error('expected'); @@ -1036,9 +1052,10 @@ describe('v1alpha2.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1alpha2.UpdateMembershipRequest() ); - const defaultValue1 = getTypeDefaultValue('UpdateMembershipRequest', [ - 'name', - ]); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.gkehub.v1alpha2.UpdateMembershipRequest', + ['name'] + ); request.name = defaultValue1; const expectedHeaderRequestParams = `name=${defaultValue1}`; const expectedResponse = generateSampleMessage( @@ -1068,9 +1085,10 @@ describe('v1alpha2.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1alpha2.UpdateMembershipRequest() ); - const defaultValue1 = getTypeDefaultValue('UpdateMembershipRequest', [ - 'name', - ]); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.gkehub.v1alpha2.UpdateMembershipRequest', + ['name'] + ); request.name = defaultValue1; const expectedHeaderRequestParams = `name=${defaultValue1}`; const expectedResponse = generateSampleMessage( @@ -1121,9 +1139,10 @@ describe('v1alpha2.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1alpha2.UpdateMembershipRequest() ); - const defaultValue1 = getTypeDefaultValue('UpdateMembershipRequest', [ - 'name', - ]); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.gkehub.v1alpha2.UpdateMembershipRequest', + ['name'] + ); request.name = defaultValue1; const expectedHeaderRequestParams = `name=${defaultValue1}`; const expectedError = new Error('expected'); @@ -1151,9 +1170,10 @@ describe('v1alpha2.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1alpha2.UpdateMembershipRequest() ); - const defaultValue1 = getTypeDefaultValue('UpdateMembershipRequest', [ - 'name', - ]); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.gkehub.v1alpha2.UpdateMembershipRequest', + ['name'] + ); request.name = defaultValue1; const expectedHeaderRequestParams = `name=${defaultValue1}`; const expectedError = new Error('expected'); @@ -1226,9 +1246,10 @@ describe('v1alpha2.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1alpha2.ListMembershipsRequest() ); - const defaultValue1 = getTypeDefaultValue('ListMembershipsRequest', [ - 'parent', - ]); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.gkehub.v1alpha2.ListMembershipsRequest', + ['parent'] + ); request.parent = defaultValue1; const expectedHeaderRequestParams = `parent=${defaultValue1}`; const expectedResponse = [ @@ -1264,9 +1285,10 @@ describe('v1alpha2.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1alpha2.ListMembershipsRequest() ); - const defaultValue1 = getTypeDefaultValue('ListMembershipsRequest', [ - 'parent', - ]); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.gkehub.v1alpha2.ListMembershipsRequest', + ['parent'] + ); request.parent = defaultValue1; const expectedHeaderRequestParams = `parent=${defaultValue1}`; const expectedResponse = [ @@ -1318,9 +1340,10 @@ describe('v1alpha2.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1alpha2.ListMembershipsRequest() ); - const defaultValue1 = getTypeDefaultValue('ListMembershipsRequest', [ - 'parent', - ]); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.gkehub.v1alpha2.ListMembershipsRequest', + ['parent'] + ); request.parent = defaultValue1; const expectedHeaderRequestParams = `parent=${defaultValue1}`; const expectedError = new Error('expected'); @@ -1348,9 +1371,10 @@ describe('v1alpha2.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1alpha2.ListMembershipsRequest() ); - const defaultValue1 = getTypeDefaultValue('ListMembershipsRequest', [ - 'parent', - ]); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.gkehub.v1alpha2.ListMembershipsRequest', + ['parent'] + ); request.parent = defaultValue1; const expectedHeaderRequestParams = `parent=${defaultValue1}`; const expectedResponse = [ @@ -1407,9 +1431,10 @@ describe('v1alpha2.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1alpha2.ListMembershipsRequest() ); - const defaultValue1 = getTypeDefaultValue('ListMembershipsRequest', [ - 'parent', - ]); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.gkehub.v1alpha2.ListMembershipsRequest', + ['parent'] + ); request.parent = defaultValue1; const expectedHeaderRequestParams = `parent=${defaultValue1}`; const expectedError = new Error('expected'); @@ -1455,9 +1480,10 @@ describe('v1alpha2.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1alpha2.ListMembershipsRequest() ); - const defaultValue1 = getTypeDefaultValue('ListMembershipsRequest', [ - 'parent', - ]); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.gkehub.v1alpha2.ListMembershipsRequest', + ['parent'] + ); request.parent = defaultValue1; const expectedHeaderRequestParams = `parent=${defaultValue1}`; const expectedResponse = [ @@ -1503,9 +1529,10 @@ describe('v1alpha2.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1alpha2.ListMembershipsRequest() ); - const defaultValue1 = getTypeDefaultValue('ListMembershipsRequest', [ - 'parent', - ]); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.gkehub.v1alpha2.ListMembershipsRequest', + ['parent'] + ); request.parent = defaultValue1; const expectedHeaderRequestParams = `parent=${defaultValue1}`; const expectedError = new Error('expected'); diff --git a/packages/google-cloud-gkehub/test/gapic_gke_hub_v1beta.ts b/packages/google-cloud-gkehub/test/gapic_gke_hub_v1beta.ts index f3c031df10c..1acae712187 100644 --- a/packages/google-cloud-gkehub/test/gapic_gke_hub_v1beta.ts +++ b/packages/google-cloud-gkehub/test/gapic_gke_hub_v1beta.ts @@ -267,7 +267,10 @@ describe('v1beta.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1beta.GetFeatureRequest() ); - const defaultValue1 = getTypeDefaultValue('GetFeatureRequest', ['name']); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.gkehub.v1beta.GetFeatureRequest', + ['name'] + ); request.name = defaultValue1; const expectedHeaderRequestParams = `name=${defaultValue1}`; const expectedResponse = generateSampleMessage( @@ -295,7 +298,10 @@ describe('v1beta.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1beta.GetFeatureRequest() ); - const defaultValue1 = getTypeDefaultValue('GetFeatureRequest', ['name']); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.gkehub.v1beta.GetFeatureRequest', + ['name'] + ); request.name = defaultValue1; const expectedHeaderRequestParams = `name=${defaultValue1}`; const expectedResponse = generateSampleMessage( @@ -339,7 +345,10 @@ describe('v1beta.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1beta.GetFeatureRequest() ); - const defaultValue1 = getTypeDefaultValue('GetFeatureRequest', ['name']); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.gkehub.v1beta.GetFeatureRequest', + ['name'] + ); request.name = defaultValue1; const expectedHeaderRequestParams = `name=${defaultValue1}`; const expectedError = new Error('expected'); @@ -367,7 +376,10 @@ describe('v1beta.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1beta.GetFeatureRequest() ); - const defaultValue1 = getTypeDefaultValue('GetFeatureRequest', ['name']); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.gkehub.v1beta.GetFeatureRequest', + ['name'] + ); request.name = defaultValue1; const expectedError = new Error('The client has already been closed.'); client.close(); @@ -385,9 +397,10 @@ describe('v1beta.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1beta.CreateFeatureRequest() ); - const defaultValue1 = getTypeDefaultValue('CreateFeatureRequest', [ - 'parent', - ]); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.gkehub.v1beta.CreateFeatureRequest', + ['parent'] + ); request.parent = defaultValue1; const expectedHeaderRequestParams = `parent=${defaultValue1}`; const expectedResponse = generateSampleMessage( @@ -417,9 +430,10 @@ describe('v1beta.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1beta.CreateFeatureRequest() ); - const defaultValue1 = getTypeDefaultValue('CreateFeatureRequest', [ - 'parent', - ]); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.gkehub.v1beta.CreateFeatureRequest', + ['parent'] + ); request.parent = defaultValue1; const expectedHeaderRequestParams = `parent=${defaultValue1}`; const expectedResponse = generateSampleMessage( @@ -470,9 +484,10 @@ describe('v1beta.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1beta.CreateFeatureRequest() ); - const defaultValue1 = getTypeDefaultValue('CreateFeatureRequest', [ - 'parent', - ]); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.gkehub.v1beta.CreateFeatureRequest', + ['parent'] + ); request.parent = defaultValue1; const expectedHeaderRequestParams = `parent=${defaultValue1}`; const expectedError = new Error('expected'); @@ -500,9 +515,10 @@ describe('v1beta.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1beta.CreateFeatureRequest() ); - const defaultValue1 = getTypeDefaultValue('CreateFeatureRequest', [ - 'parent', - ]); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.gkehub.v1beta.CreateFeatureRequest', + ['parent'] + ); request.parent = defaultValue1; const expectedHeaderRequestParams = `parent=${defaultValue1}`; const expectedError = new Error('expected'); @@ -575,9 +591,10 @@ describe('v1beta.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1beta.DeleteFeatureRequest() ); - const defaultValue1 = getTypeDefaultValue('DeleteFeatureRequest', [ - 'name', - ]); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.gkehub.v1beta.DeleteFeatureRequest', + ['name'] + ); request.name = defaultValue1; const expectedHeaderRequestParams = `name=${defaultValue1}`; const expectedResponse = generateSampleMessage( @@ -607,9 +624,10 @@ describe('v1beta.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1beta.DeleteFeatureRequest() ); - const defaultValue1 = getTypeDefaultValue('DeleteFeatureRequest', [ - 'name', - ]); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.gkehub.v1beta.DeleteFeatureRequest', + ['name'] + ); request.name = defaultValue1; const expectedHeaderRequestParams = `name=${defaultValue1}`; const expectedResponse = generateSampleMessage( @@ -660,9 +678,10 @@ describe('v1beta.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1beta.DeleteFeatureRequest() ); - const defaultValue1 = getTypeDefaultValue('DeleteFeatureRequest', [ - 'name', - ]); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.gkehub.v1beta.DeleteFeatureRequest', + ['name'] + ); request.name = defaultValue1; const expectedHeaderRequestParams = `name=${defaultValue1}`; const expectedError = new Error('expected'); @@ -690,9 +709,10 @@ describe('v1beta.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1beta.DeleteFeatureRequest() ); - const defaultValue1 = getTypeDefaultValue('DeleteFeatureRequest', [ - 'name', - ]); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.gkehub.v1beta.DeleteFeatureRequest', + ['name'] + ); request.name = defaultValue1; const expectedHeaderRequestParams = `name=${defaultValue1}`; const expectedError = new Error('expected'); @@ -765,9 +785,10 @@ describe('v1beta.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1beta.UpdateFeatureRequest() ); - const defaultValue1 = getTypeDefaultValue('UpdateFeatureRequest', [ - 'name', - ]); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.gkehub.v1beta.UpdateFeatureRequest', + ['name'] + ); request.name = defaultValue1; const expectedHeaderRequestParams = `name=${defaultValue1}`; const expectedResponse = generateSampleMessage( @@ -797,9 +818,10 @@ describe('v1beta.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1beta.UpdateFeatureRequest() ); - const defaultValue1 = getTypeDefaultValue('UpdateFeatureRequest', [ - 'name', - ]); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.gkehub.v1beta.UpdateFeatureRequest', + ['name'] + ); request.name = defaultValue1; const expectedHeaderRequestParams = `name=${defaultValue1}`; const expectedResponse = generateSampleMessage( @@ -850,9 +872,10 @@ describe('v1beta.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1beta.UpdateFeatureRequest() ); - const defaultValue1 = getTypeDefaultValue('UpdateFeatureRequest', [ - 'name', - ]); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.gkehub.v1beta.UpdateFeatureRequest', + ['name'] + ); request.name = defaultValue1; const expectedHeaderRequestParams = `name=${defaultValue1}`; const expectedError = new Error('expected'); @@ -880,9 +903,10 @@ describe('v1beta.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1beta.UpdateFeatureRequest() ); - const defaultValue1 = getTypeDefaultValue('UpdateFeatureRequest', [ - 'name', - ]); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.gkehub.v1beta.UpdateFeatureRequest', + ['name'] + ); request.name = defaultValue1; const expectedHeaderRequestParams = `name=${defaultValue1}`; const expectedError = new Error('expected'); @@ -955,9 +979,10 @@ describe('v1beta.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1beta.ListFeaturesRequest() ); - const defaultValue1 = getTypeDefaultValue('ListFeaturesRequest', [ - 'parent', - ]); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.gkehub.v1beta.ListFeaturesRequest', + ['parent'] + ); request.parent = defaultValue1; const expectedHeaderRequestParams = `parent=${defaultValue1}`; const expectedResponse = [ @@ -987,9 +1012,10 @@ describe('v1beta.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1beta.ListFeaturesRequest() ); - const defaultValue1 = getTypeDefaultValue('ListFeaturesRequest', [ - 'parent', - ]); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.gkehub.v1beta.ListFeaturesRequest', + ['parent'] + ); request.parent = defaultValue1; const expectedHeaderRequestParams = `parent=${defaultValue1}`; const expectedResponse = [ @@ -1035,9 +1061,10 @@ describe('v1beta.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1beta.ListFeaturesRequest() ); - const defaultValue1 = getTypeDefaultValue('ListFeaturesRequest', [ - 'parent', - ]); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.gkehub.v1beta.ListFeaturesRequest', + ['parent'] + ); request.parent = defaultValue1; const expectedHeaderRequestParams = `parent=${defaultValue1}`; const expectedError = new Error('expected'); @@ -1065,9 +1092,10 @@ describe('v1beta.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1beta.ListFeaturesRequest() ); - const defaultValue1 = getTypeDefaultValue('ListFeaturesRequest', [ - 'parent', - ]); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.gkehub.v1beta.ListFeaturesRequest', + ['parent'] + ); request.parent = defaultValue1; const expectedHeaderRequestParams = `parent=${defaultValue1}`; const expectedResponse = [ @@ -1118,9 +1146,10 @@ describe('v1beta.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1beta.ListFeaturesRequest() ); - const defaultValue1 = getTypeDefaultValue('ListFeaturesRequest', [ - 'parent', - ]); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.gkehub.v1beta.ListFeaturesRequest', + ['parent'] + ); request.parent = defaultValue1; const expectedHeaderRequestParams = `parent=${defaultValue1}`; const expectedError = new Error('expected'); @@ -1168,9 +1197,10 @@ describe('v1beta.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1beta.ListFeaturesRequest() ); - const defaultValue1 = getTypeDefaultValue('ListFeaturesRequest', [ - 'parent', - ]); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.gkehub.v1beta.ListFeaturesRequest', + ['parent'] + ); request.parent = defaultValue1; const expectedHeaderRequestParams = `parent=${defaultValue1}`; const expectedResponse = [ @@ -1210,9 +1240,10 @@ describe('v1beta.GkeHubClient', () => { const request = generateSampleMessage( new protos.google.cloud.gkehub.v1beta.ListFeaturesRequest() ); - const defaultValue1 = getTypeDefaultValue('ListFeaturesRequest', [ - 'parent', - ]); + const defaultValue1 = getTypeDefaultValue( + '.google.cloud.gkehub.v1beta.ListFeaturesRequest', + ['parent'] + ); request.parent = defaultValue1; const expectedHeaderRequestParams = `parent=${defaultValue1}`; const expectedError = new Error('expected'); From 3c14754b56557115180499415fc9afaa8e2a7041 Mon Sep 17 00:00:00 2001 From: Alexander Fenster Date: Thu, 3 Nov 2022 23:44:09 -0700 Subject: [PATCH 88/92] fix(deps): use google-gax v3.5.2 (#176) --- packages/google-cloud-gkehub/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/google-cloud-gkehub/package.json b/packages/google-cloud-gkehub/package.json index c9049897d22..6a8099331be 100644 --- a/packages/google-cloud-gkehub/package.json +++ b/packages/google-cloud-gkehub/package.json @@ -39,7 +39,7 @@ "prelint": "cd samples; npm link ../; npm i" }, "dependencies": { - "google-gax": "^3.3.0" + "google-gax": "^3.5.2" }, "devDependencies": { "@types/mocha": "^9.0.0", From 7e96d52523b9a9f7650aa6fd5a19b3dfca59d70b Mon Sep 17 00:00:00 2001 From: Mend Renovate Date: Thu, 10 Nov 2022 10:24:23 +0100 Subject: [PATCH 89/92] chore(deps): update dependency @types/node to v18 (#174) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit [![Mend Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com) This PR contains the following updates: | Package | Change | Age | Adoption | Passing | Confidence | |---|---|---|---|---|---| | [@types/node](https://togithub.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/node) ([source](https://togithub.com/DefinitelyTyped/DefinitelyTyped)) | [`^16.0.0` -> `^18.0.0`](https://renovatebot.com/diffs/npm/@types%2fnode/16.18.3/18.11.9) | [![age](https://badges.renovateapi.com/packages/npm/@types%2fnode/18.11.9/age-slim)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://badges.renovateapi.com/packages/npm/@types%2fnode/18.11.9/adoption-slim)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://badges.renovateapi.com/packages/npm/@types%2fnode/18.11.9/compatibility-slim/16.18.3)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://badges.renovateapi.com/packages/npm/@types%2fnode/18.11.9/confidence-slim/16.18.3)](https://docs.renovatebot.com/merge-confidence/) | --- ### Configuration 📅 **Schedule**: Branch creation - "after 9am and before 3pm" (UTC), Automerge - At any time (no schedule defined). 🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied. ♻ **Rebasing**: Whenever PR is behind base branch, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about this update again. --- - [ ] If you want to rebase/retry this PR, check this box --- This PR has been generated by [Mend Renovate](https://www.mend.io/free-developer-tools/renovate/). View repository job log [here](https://app.renovatebot.com/dashboard#github/googleapis/nodejs-gke-hub). --- packages/google-cloud-gkehub/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/google-cloud-gkehub/package.json b/packages/google-cloud-gkehub/package.json index 6a8099331be..9a0fa44dfeb 100644 --- a/packages/google-cloud-gkehub/package.json +++ b/packages/google-cloud-gkehub/package.json @@ -43,7 +43,7 @@ }, "devDependencies": { "@types/mocha": "^9.0.0", - "@types/node": "^16.0.0", + "@types/node": "^18.0.0", "@types/sinon": "^10.0.0", "c8": "^7.3.5", "gts": "^3.1.0", From 2bac774c33d620dc6de882c358284e92c1470db0 Mon Sep 17 00:00:00 2001 From: Mend Renovate Date: Thu, 10 Nov 2022 10:58:15 +0100 Subject: [PATCH 90/92] chore(deps): update dependency jsdoc to v4 (#178) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit [![Mend Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com) This PR contains the following updates: | Package | Change | Age | Adoption | Passing | Confidence | |---|---|---|---|---|---| | [jsdoc](https://togithub.com/jsdoc/jsdoc) | [`^3.6.6` -> `^4.0.0`](https://renovatebot.com/diffs/npm/jsdoc/3.6.11/4.0.0) | [![age](https://badges.renovateapi.com/packages/npm/jsdoc/4.0.0/age-slim)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://badges.renovateapi.com/packages/npm/jsdoc/4.0.0/adoption-slim)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://badges.renovateapi.com/packages/npm/jsdoc/4.0.0/compatibility-slim/3.6.11)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://badges.renovateapi.com/packages/npm/jsdoc/4.0.0/confidence-slim/3.6.11)](https://docs.renovatebot.com/merge-confidence/) | --- ### Release Notes
jsdoc/jsdoc ### [`v4.0.0`](https://togithub.com/jsdoc/jsdoc/blob/HEAD/CHANGES.md#​400-November-2022) [Compare Source](https://togithub.com/jsdoc/jsdoc/compare/3.6.11...084218523a7d69fec14a852ce680f374f526af28) - JSDoc releases now use [semantic versioning](https://semver.org/). If JSDoc makes backwards-incompatible changes in the future, the major version will be incremented. - JSDoc no longer uses the [`taffydb`](https://taffydb.com/) package. If your JSDoc template or plugin uses the `taffydb` package, see the [instructions for replacing `taffydb` with `@jsdoc/salty`](https://togithub.com/jsdoc/jsdoc/tree/main/packages/jsdoc-salty#use-salty-in-a-jsdoc-template). - JSDoc now supports Node.js 12.0.0 and later.
--- ### Configuration 📅 **Schedule**: Branch creation - "after 9am and before 3pm" (UTC), Automerge - At any time (no schedule defined). 🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied. ♻ **Rebasing**: Whenever PR is behind base branch, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about this update again. --- - [ ] If you want to rebase/retry this PR, check this box --- This PR has been generated by [Mend Renovate](https://www.mend.io/free-developer-tools/renovate/). View repository job log [here](https://app.renovatebot.com/dashboard#github/googleapis/nodejs-gke-hub). --- packages/google-cloud-gkehub/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/google-cloud-gkehub/package.json b/packages/google-cloud-gkehub/package.json index 9a0fa44dfeb..bb20ec2d750 100644 --- a/packages/google-cloud-gkehub/package.json +++ b/packages/google-cloud-gkehub/package.json @@ -47,7 +47,7 @@ "@types/sinon": "^10.0.0", "c8": "^7.3.5", "gts": "^3.1.0", - "jsdoc": "^3.6.6", + "jsdoc": "^4.0.0", "jsdoc-fresh": "^2.0.0", "jsdoc-region-tag": "^2.0.0", "linkinator": "^4.0.0", From e94b4338d11dfd27c2806a7668a14ccbc5a2d646 Mon Sep 17 00:00:00 2001 From: "gcf-owl-bot[bot]" <78513119+gcf-owl-bot[bot]@users.noreply.github.com> Date: Thu, 10 Nov 2022 11:14:34 +0000 Subject: [PATCH 91/92] fix: regenerated protos JS and TS definitions (#179) samples: pull in latest typeless bot, clean up some comments Source-Link: https://togithub.com/googleapis/synthtool/commit/0a68e568b6911b60bb6fd452eba4848b176031d8 Post-Processor: gcr.io/cloud-devrel-public-resources/owlbot-nodejs:latest@sha256:5b05f26103855c3a15433141389c478d1d3fe088fb5d4e3217c4793f6b3f245e --- .../google-cloud-gkehub/protos/protos.d.ts | 2 +- packages/google-cloud-gkehub/protos/protos.js | 516 +++++++++++++++--- 2 files changed, 452 insertions(+), 66 deletions(-) diff --git a/packages/google-cloud-gkehub/protos/protos.d.ts b/packages/google-cloud-gkehub/protos/protos.d.ts index 70da790dfa7..42505a53969 100644 --- a/packages/google-cloud-gkehub/protos/protos.d.ts +++ b/packages/google-cloud-gkehub/protos/protos.d.ts @@ -12,8 +12,8 @@ // See the License for the specific language governing permissions and // limitations under the License. -import Long = require("long"); import type {protobuf as $protobuf} from "google-gax"; +import Long = require("long"); /** Namespace google. */ export namespace google { diff --git a/packages/google-cloud-gkehub/protos/protos.js b/packages/google-cloud-gkehub/protos/protos.js index c94d3f6858d..71f7713f1fe 100644 --- a/packages/google-cloud-gkehub/protos/protos.js +++ b/packages/google-cloud-gkehub/protos/protos.js @@ -2797,6 +2797,12 @@ if (object.number != null) message.number = object.number | 0; switch (object.label) { + default: + if (typeof object.label === "number") { + message.label = object.label; + break; + } + break; case "LABEL_OPTIONAL": case 1: message.label = 1; @@ -2811,6 +2817,12 @@ break; } switch (object.type) { + default: + if (typeof object.type === "number") { + message.type = object.type; + break; + } + break; case "TYPE_DOUBLE": case 1: message.type = 1; @@ -2937,9 +2949,9 @@ if (message.number != null && message.hasOwnProperty("number")) object.number = message.number; if (message.label != null && message.hasOwnProperty("label")) - object.label = options.enums === String ? $root.google.protobuf.FieldDescriptorProto.Label[message.label] : message.label; + object.label = options.enums === String ? $root.google.protobuf.FieldDescriptorProto.Label[message.label] === undefined ? message.label : $root.google.protobuf.FieldDescriptorProto.Label[message.label] : message.label; if (message.type != null && message.hasOwnProperty("type")) - object.type = options.enums === String ? $root.google.protobuf.FieldDescriptorProto.Type[message.type] : message.type; + object.type = options.enums === String ? $root.google.protobuf.FieldDescriptorProto.Type[message.type] === undefined ? message.type : $root.google.protobuf.FieldDescriptorProto.Type[message.type] : message.type; if (message.typeName != null && message.hasOwnProperty("typeName")) object.typeName = message.typeName; if (message.defaultValue != null && message.hasOwnProperty("defaultValue")) @@ -5286,6 +5298,12 @@ if (object.javaStringCheckUtf8 != null) message.javaStringCheckUtf8 = Boolean(object.javaStringCheckUtf8); switch (object.optimizeFor) { + default: + if (typeof object.optimizeFor === "number") { + message.optimizeFor = object.optimizeFor; + break; + } + break; case "SPEED": case 1: message.optimizeFor = 1; @@ -5394,7 +5412,7 @@ if (message.javaOuterClassname != null && message.hasOwnProperty("javaOuterClassname")) object.javaOuterClassname = message.javaOuterClassname; if (message.optimizeFor != null && message.hasOwnProperty("optimizeFor")) - object.optimizeFor = options.enums === String ? $root.google.protobuf.FileOptions.OptimizeMode[message.optimizeFor] : message.optimizeFor; + object.optimizeFor = options.enums === String ? $root.google.protobuf.FileOptions.OptimizeMode[message.optimizeFor] === undefined ? message.optimizeFor : $root.google.protobuf.FileOptions.OptimizeMode[message.optimizeFor] : message.optimizeFor; if (message.javaMultipleFiles != null && message.hasOwnProperty("javaMultipleFiles")) object.javaMultipleFiles = message.javaMultipleFiles; if (message.goPackage != null && message.hasOwnProperty("goPackage")) @@ -6196,6 +6214,12 @@ return object; var message = new $root.google.protobuf.FieldOptions(); switch (object.ctype) { + default: + if (typeof object.ctype === "number") { + message.ctype = object.ctype; + break; + } + break; case "STRING": case 0: message.ctype = 0; @@ -6212,6 +6236,12 @@ if (object.packed != null) message.packed = Boolean(object.packed); switch (object.jstype) { + default: + if (typeof object.jstype === "number") { + message.jstype = object.jstype; + break; + } + break; case "JS_NORMAL": case 0: message.jstype = 0; @@ -6250,6 +6280,10 @@ for (var i = 0; i < object[".google.api.fieldBehavior"].length; ++i) switch (object[".google.api.fieldBehavior"][i]) { default: + if (typeof object[".google.api.fieldBehavior"][i] === "number") { + message[".google.api.fieldBehavior"][i] = object[".google.api.fieldBehavior"][i]; + break; + } case "FIELD_BEHAVIOR_UNSPECIFIED": case 0: message[".google.api.fieldBehavior"][i] = 0; @@ -6320,7 +6354,7 @@ object[".google.api.resourceReference"] = null; } if (message.ctype != null && message.hasOwnProperty("ctype")) - object.ctype = options.enums === String ? $root.google.protobuf.FieldOptions.CType[message.ctype] : message.ctype; + object.ctype = options.enums === String ? $root.google.protobuf.FieldOptions.CType[message.ctype] === undefined ? message.ctype : $root.google.protobuf.FieldOptions.CType[message.ctype] : message.ctype; if (message.packed != null && message.hasOwnProperty("packed")) object.packed = message.packed; if (message.deprecated != null && message.hasOwnProperty("deprecated")) @@ -6328,7 +6362,7 @@ if (message.lazy != null && message.hasOwnProperty("lazy")) object.lazy = message.lazy; if (message.jstype != null && message.hasOwnProperty("jstype")) - object.jstype = options.enums === String ? $root.google.protobuf.FieldOptions.JSType[message.jstype] : message.jstype; + object.jstype = options.enums === String ? $root.google.protobuf.FieldOptions.JSType[message.jstype] === undefined ? message.jstype : $root.google.protobuf.FieldOptions.JSType[message.jstype] : message.jstype; if (message.weak != null && message.hasOwnProperty("weak")) object.weak = message.weak; if (message.unverifiedLazy != null && message.hasOwnProperty("unverifiedLazy")) @@ -6341,7 +6375,7 @@ if (message[".google.api.fieldBehavior"] && message[".google.api.fieldBehavior"].length) { object[".google.api.fieldBehavior"] = []; for (var j = 0; j < message[".google.api.fieldBehavior"].length; ++j) - object[".google.api.fieldBehavior"][j] = options.enums === String ? $root.google.api.FieldBehavior[message[".google.api.fieldBehavior"][j]] : message[".google.api.fieldBehavior"][j]; + object[".google.api.fieldBehavior"][j] = options.enums === String ? $root.google.api.FieldBehavior[message[".google.api.fieldBehavior"][j]] === undefined ? message[".google.api.fieldBehavior"][j] : $root.google.api.FieldBehavior[message[".google.api.fieldBehavior"][j]] : message[".google.api.fieldBehavior"][j]; } if (message[".google.api.resourceReference"] != null && message.hasOwnProperty(".google.api.resourceReference")) object[".google.api.resourceReference"] = $root.google.api.ResourceReference.toObject(message[".google.api.resourceReference"], options); @@ -7718,6 +7752,12 @@ if (object.deprecated != null) message.deprecated = Boolean(object.deprecated); switch (object.idempotencyLevel) { + default: + if (typeof object.idempotencyLevel === "number") { + message.idempotencyLevel = object.idempotencyLevel; + break; + } + break; case "IDEMPOTENCY_UNKNOWN": case 0: message.idempotencyLevel = 0; @@ -7787,7 +7827,7 @@ if (message.deprecated != null && message.hasOwnProperty("deprecated")) object.deprecated = message.deprecated; if (message.idempotencyLevel != null && message.hasOwnProperty("idempotencyLevel")) - object.idempotencyLevel = options.enums === String ? $root.google.protobuf.MethodOptions.IdempotencyLevel[message.idempotencyLevel] : message.idempotencyLevel; + object.idempotencyLevel = options.enums === String ? $root.google.protobuf.MethodOptions.IdempotencyLevel[message.idempotencyLevel] === undefined ? message.idempotencyLevel : $root.google.protobuf.MethodOptions.IdempotencyLevel[message.idempotencyLevel] : message.idempotencyLevel; if (message.uninterpretedOption && message.uninterpretedOption.length) { object.uninterpretedOption = []; for (var j = 0; j < message.uninterpretedOption.length; ++j) @@ -9542,6 +9582,12 @@ if (object.end != null) message.end = object.end | 0; switch (object.semantic) { + default: + if (typeof object.semantic === "number") { + message.semantic = object.semantic; + break; + } + break; case "NONE": case 0: message.semantic = 0; @@ -9591,7 +9637,7 @@ if (message.end != null && message.hasOwnProperty("end")) object.end = message.end; if (message.semantic != null && message.hasOwnProperty("semantic")) - object.semantic = options.enums === String ? $root.google.protobuf.GeneratedCodeInfo.Annotation.Semantic[message.semantic] : message.semantic; + object.semantic = options.enums === String ? $root.google.protobuf.GeneratedCodeInfo.Annotation.Semantic[message.semantic] === undefined ? message.semantic : $root.google.protobuf.GeneratedCodeInfo.Annotation.Semantic[message.semantic] : message.semantic; return object; }; @@ -11046,6 +11092,12 @@ return object; var message = new $root.google.protobuf.Value(); switch (object.nullValue) { + default: + if (typeof object.nullValue === "number") { + message.nullValue = object.nullValue; + break; + } + break; case "NULL_VALUE": case 0: message.nullValue = 0; @@ -11084,7 +11136,7 @@ options = {}; var object = {}; if (message.nullValue != null && message.hasOwnProperty("nullValue")) { - object.nullValue = options.enums === String ? $root.google.protobuf.NullValue[message.nullValue] : message.nullValue; + object.nullValue = options.enums === String ? $root.google.protobuf.NullValue[message.nullValue] === undefined ? message.nullValue : $root.google.protobuf.NullValue[message.nullValue] : message.nullValue; if (options.oneofs) object.kind = "nullValue"; } @@ -13493,6 +13545,12 @@ return object; var message = new $root.google.cloud.gkehub.configmanagement.v1.HierarchyControllerDeploymentState(); switch (object.hnc) { + default: + if (typeof object.hnc === "number") { + message.hnc = object.hnc; + break; + } + break; case "DEPLOYMENT_STATE_UNSPECIFIED": case 0: message.hnc = 0; @@ -13511,6 +13569,12 @@ break; } switch (object.extension) { + default: + if (typeof object.extension === "number") { + message.extension = object.extension; + break; + } + break; case "DEPLOYMENT_STATE_UNSPECIFIED": case 0: message.extension = 0; @@ -13549,9 +13613,9 @@ object.extension = options.enums === String ? "DEPLOYMENT_STATE_UNSPECIFIED" : 0; } if (message.hnc != null && message.hasOwnProperty("hnc")) - object.hnc = options.enums === String ? $root.google.cloud.gkehub.configmanagement.v1.DeploymentState[message.hnc] : message.hnc; + object.hnc = options.enums === String ? $root.google.cloud.gkehub.configmanagement.v1.DeploymentState[message.hnc] === undefined ? message.hnc : $root.google.cloud.gkehub.configmanagement.v1.DeploymentState[message.hnc] : message.hnc; if (message.extension != null && message.hasOwnProperty("extension")) - object.extension = options.enums === String ? $root.google.cloud.gkehub.configmanagement.v1.DeploymentState[message.extension] : message.extension; + object.extension = options.enums === String ? $root.google.cloud.gkehub.configmanagement.v1.DeploymentState[message.extension] === undefined ? message.extension : $root.google.cloud.gkehub.configmanagement.v1.DeploymentState[message.extension] : message.extension; return object; }; @@ -14253,6 +14317,12 @@ if (object.version != null) message.version = String(object.version); switch (object.deploymentState) { + default: + if (typeof object.deploymentState === "number") { + message.deploymentState = object.deploymentState; + break; + } + break; case "DEPLOYMENT_STATE_UNSPECIFIED": case 0: message.deploymentState = 0; @@ -14305,7 +14375,7 @@ if (message.version != null && message.hasOwnProperty("version")) object.version = message.version; if (message.deploymentState != null && message.hasOwnProperty("deploymentState")) - object.deploymentState = options.enums === String ? $root.google.cloud.gkehub.configmanagement.v1.DeploymentState[message.deploymentState] : message.deploymentState; + object.deploymentState = options.enums === String ? $root.google.cloud.gkehub.configmanagement.v1.DeploymentState[message.deploymentState] === undefined ? message.deploymentState : $root.google.cloud.gkehub.configmanagement.v1.DeploymentState[message.deploymentState] : message.deploymentState; if (message.errors && message.errors.length) { object.errors = []; for (var j = 0; j < message.errors.length; ++j) @@ -15412,6 +15482,12 @@ return object; var message = new $root.google.cloud.gkehub.configmanagement.v1.ConfigSyncDeploymentState(); switch (object.importer) { + default: + if (typeof object.importer === "number") { + message.importer = object.importer; + break; + } + break; case "DEPLOYMENT_STATE_UNSPECIFIED": case 0: message.importer = 0; @@ -15430,6 +15506,12 @@ break; } switch (object.syncer) { + default: + if (typeof object.syncer === "number") { + message.syncer = object.syncer; + break; + } + break; case "DEPLOYMENT_STATE_UNSPECIFIED": case 0: message.syncer = 0; @@ -15448,6 +15530,12 @@ break; } switch (object.gitSync) { + default: + if (typeof object.gitSync === "number") { + message.gitSync = object.gitSync; + break; + } + break; case "DEPLOYMENT_STATE_UNSPECIFIED": case 0: message.gitSync = 0; @@ -15466,6 +15554,12 @@ break; } switch (object.monitor) { + default: + if (typeof object.monitor === "number") { + message.monitor = object.monitor; + break; + } + break; case "DEPLOYMENT_STATE_UNSPECIFIED": case 0: message.monitor = 0; @@ -15484,6 +15578,12 @@ break; } switch (object.reconcilerManager) { + default: + if (typeof object.reconcilerManager === "number") { + message.reconcilerManager = object.reconcilerManager; + break; + } + break; case "DEPLOYMENT_STATE_UNSPECIFIED": case 0: message.reconcilerManager = 0; @@ -15502,6 +15602,12 @@ break; } switch (object.rootReconciler) { + default: + if (typeof object.rootReconciler === "number") { + message.rootReconciler = object.rootReconciler; + break; + } + break; case "DEPLOYMENT_STATE_UNSPECIFIED": case 0: message.rootReconciler = 0; @@ -15544,17 +15650,17 @@ object.rootReconciler = options.enums === String ? "DEPLOYMENT_STATE_UNSPECIFIED" : 0; } if (message.importer != null && message.hasOwnProperty("importer")) - object.importer = options.enums === String ? $root.google.cloud.gkehub.configmanagement.v1.DeploymentState[message.importer] : message.importer; + object.importer = options.enums === String ? $root.google.cloud.gkehub.configmanagement.v1.DeploymentState[message.importer] === undefined ? message.importer : $root.google.cloud.gkehub.configmanagement.v1.DeploymentState[message.importer] : message.importer; if (message.syncer != null && message.hasOwnProperty("syncer")) - object.syncer = options.enums === String ? $root.google.cloud.gkehub.configmanagement.v1.DeploymentState[message.syncer] : message.syncer; + object.syncer = options.enums === String ? $root.google.cloud.gkehub.configmanagement.v1.DeploymentState[message.syncer] === undefined ? message.syncer : $root.google.cloud.gkehub.configmanagement.v1.DeploymentState[message.syncer] : message.syncer; if (message.gitSync != null && message.hasOwnProperty("gitSync")) - object.gitSync = options.enums === String ? $root.google.cloud.gkehub.configmanagement.v1.DeploymentState[message.gitSync] : message.gitSync; + object.gitSync = options.enums === String ? $root.google.cloud.gkehub.configmanagement.v1.DeploymentState[message.gitSync] === undefined ? message.gitSync : $root.google.cloud.gkehub.configmanagement.v1.DeploymentState[message.gitSync] : message.gitSync; if (message.monitor != null && message.hasOwnProperty("monitor")) - object.monitor = options.enums === String ? $root.google.cloud.gkehub.configmanagement.v1.DeploymentState[message.monitor] : message.monitor; + object.monitor = options.enums === String ? $root.google.cloud.gkehub.configmanagement.v1.DeploymentState[message.monitor] === undefined ? message.monitor : $root.google.cloud.gkehub.configmanagement.v1.DeploymentState[message.monitor] : message.monitor; if (message.reconcilerManager != null && message.hasOwnProperty("reconcilerManager")) - object.reconcilerManager = options.enums === String ? $root.google.cloud.gkehub.configmanagement.v1.DeploymentState[message.reconcilerManager] : message.reconcilerManager; + object.reconcilerManager = options.enums === String ? $root.google.cloud.gkehub.configmanagement.v1.DeploymentState[message.reconcilerManager] === undefined ? message.reconcilerManager : $root.google.cloud.gkehub.configmanagement.v1.DeploymentState[message.reconcilerManager] : message.reconcilerManager; if (message.rootReconciler != null && message.hasOwnProperty("rootReconciler")) - object.rootReconciler = options.enums === String ? $root.google.cloud.gkehub.configmanagement.v1.DeploymentState[message.rootReconciler] : message.rootReconciler; + object.rootReconciler = options.enums === String ? $root.google.cloud.gkehub.configmanagement.v1.DeploymentState[message.rootReconciler] === undefined ? message.rootReconciler : $root.google.cloud.gkehub.configmanagement.v1.DeploymentState[message.rootReconciler] : message.rootReconciler; return object; }; @@ -15881,6 +15987,12 @@ message.lastSyncTime = $root.google.protobuf.Timestamp.fromObject(object.lastSyncTime); } switch (object.code) { + default: + if (typeof object.code === "number") { + message.code = object.code; + break; + } + break; case "SYNC_CODE_UNSPECIFIED": case 0: message.code = 0; @@ -15959,7 +16071,7 @@ if (message.lastSync != null && message.hasOwnProperty("lastSync")) object.lastSync = message.lastSync; if (message.code != null && message.hasOwnProperty("code")) - object.code = options.enums === String ? $root.google.cloud.gkehub.configmanagement.v1.SyncState.SyncCode[message.code] : message.code; + object.code = options.enums === String ? $root.google.cloud.gkehub.configmanagement.v1.SyncState.SyncCode[message.code] === undefined ? message.code : $root.google.cloud.gkehub.configmanagement.v1.SyncState.SyncCode[message.code] : message.code; if (message.errors && message.errors.length) { object.errors = []; for (var j = 0; j < message.errors.length; ++j) @@ -17447,6 +17559,12 @@ return object; var message = new $root.google.cloud.gkehub.configmanagement.v1.GatekeeperDeploymentState(); switch (object.gatekeeperControllerManagerState) { + default: + if (typeof object.gatekeeperControllerManagerState === "number") { + message.gatekeeperControllerManagerState = object.gatekeeperControllerManagerState; + break; + } + break; case "DEPLOYMENT_STATE_UNSPECIFIED": case 0: message.gatekeeperControllerManagerState = 0; @@ -17465,6 +17583,12 @@ break; } switch (object.gatekeeperAudit) { + default: + if (typeof object.gatekeeperAudit === "number") { + message.gatekeeperAudit = object.gatekeeperAudit; + break; + } + break; case "DEPLOYMENT_STATE_UNSPECIFIED": case 0: message.gatekeeperAudit = 0; @@ -17503,9 +17627,9 @@ object.gatekeeperAudit = options.enums === String ? "DEPLOYMENT_STATE_UNSPECIFIED" : 0; } if (message.gatekeeperControllerManagerState != null && message.hasOwnProperty("gatekeeperControllerManagerState")) - object.gatekeeperControllerManagerState = options.enums === String ? $root.google.cloud.gkehub.configmanagement.v1.DeploymentState[message.gatekeeperControllerManagerState] : message.gatekeeperControllerManagerState; + object.gatekeeperControllerManagerState = options.enums === String ? $root.google.cloud.gkehub.configmanagement.v1.DeploymentState[message.gatekeeperControllerManagerState] === undefined ? message.gatekeeperControllerManagerState : $root.google.cloud.gkehub.configmanagement.v1.DeploymentState[message.gatekeeperControllerManagerState] : message.gatekeeperControllerManagerState; if (message.gatekeeperAudit != null && message.hasOwnProperty("gatekeeperAudit")) - object.gatekeeperAudit = options.enums === String ? $root.google.cloud.gkehub.configmanagement.v1.DeploymentState[message.gatekeeperAudit] : message.gatekeeperAudit; + object.gatekeeperAudit = options.enums === String ? $root.google.cloud.gkehub.configmanagement.v1.DeploymentState[message.gatekeeperAudit] === undefined ? message.gatekeeperAudit : $root.google.cloud.gkehub.configmanagement.v1.DeploymentState[message.gatekeeperAudit] : message.gatekeeperAudit; return object; }; @@ -19905,6 +20029,12 @@ return object; var message = new $root.google.cloud.gkehub.configmanagement.v1alpha.HierarchyControllerDeploymentState(); switch (object.hnc) { + default: + if (typeof object.hnc === "number") { + message.hnc = object.hnc; + break; + } + break; case "DEPLOYMENT_STATE_UNSPECIFIED": case 0: message.hnc = 0; @@ -19923,6 +20053,12 @@ break; } switch (object.extension) { + default: + if (typeof object.extension === "number") { + message.extension = object.extension; + break; + } + break; case "DEPLOYMENT_STATE_UNSPECIFIED": case 0: message.extension = 0; @@ -19961,9 +20097,9 @@ object.extension = options.enums === String ? "DEPLOYMENT_STATE_UNSPECIFIED" : 0; } if (message.hnc != null && message.hasOwnProperty("hnc")) - object.hnc = options.enums === String ? $root.google.cloud.gkehub.configmanagement.v1alpha.DeploymentState[message.hnc] : message.hnc; + object.hnc = options.enums === String ? $root.google.cloud.gkehub.configmanagement.v1alpha.DeploymentState[message.hnc] === undefined ? message.hnc : $root.google.cloud.gkehub.configmanagement.v1alpha.DeploymentState[message.hnc] : message.hnc; if (message.extension != null && message.hasOwnProperty("extension")) - object.extension = options.enums === String ? $root.google.cloud.gkehub.configmanagement.v1alpha.DeploymentState[message.extension] : message.extension; + object.extension = options.enums === String ? $root.google.cloud.gkehub.configmanagement.v1alpha.DeploymentState[message.extension] === undefined ? message.extension : $root.google.cloud.gkehub.configmanagement.v1alpha.DeploymentState[message.extension] : message.extension; return object; }; @@ -20665,6 +20801,12 @@ if (object.version != null) message.version = String(object.version); switch (object.deploymentState) { + default: + if (typeof object.deploymentState === "number") { + message.deploymentState = object.deploymentState; + break; + } + break; case "DEPLOYMENT_STATE_UNSPECIFIED": case 0: message.deploymentState = 0; @@ -20717,7 +20859,7 @@ if (message.version != null && message.hasOwnProperty("version")) object.version = message.version; if (message.deploymentState != null && message.hasOwnProperty("deploymentState")) - object.deploymentState = options.enums === String ? $root.google.cloud.gkehub.configmanagement.v1alpha.DeploymentState[message.deploymentState] : message.deploymentState; + object.deploymentState = options.enums === String ? $root.google.cloud.gkehub.configmanagement.v1alpha.DeploymentState[message.deploymentState] === undefined ? message.deploymentState : $root.google.cloud.gkehub.configmanagement.v1alpha.DeploymentState[message.deploymentState] : message.deploymentState; if (message.errors && message.errors.length) { object.errors = []; for (var j = 0; j < message.errors.length; ++j) @@ -21824,6 +21966,12 @@ return object; var message = new $root.google.cloud.gkehub.configmanagement.v1alpha.ConfigSyncDeploymentState(); switch (object.importer) { + default: + if (typeof object.importer === "number") { + message.importer = object.importer; + break; + } + break; case "DEPLOYMENT_STATE_UNSPECIFIED": case 0: message.importer = 0; @@ -21842,6 +21990,12 @@ break; } switch (object.syncer) { + default: + if (typeof object.syncer === "number") { + message.syncer = object.syncer; + break; + } + break; case "DEPLOYMENT_STATE_UNSPECIFIED": case 0: message.syncer = 0; @@ -21860,6 +22014,12 @@ break; } switch (object.gitSync) { + default: + if (typeof object.gitSync === "number") { + message.gitSync = object.gitSync; + break; + } + break; case "DEPLOYMENT_STATE_UNSPECIFIED": case 0: message.gitSync = 0; @@ -21878,6 +22038,12 @@ break; } switch (object.monitor) { + default: + if (typeof object.monitor === "number") { + message.monitor = object.monitor; + break; + } + break; case "DEPLOYMENT_STATE_UNSPECIFIED": case 0: message.monitor = 0; @@ -21896,6 +22062,12 @@ break; } switch (object.reconcilerManager) { + default: + if (typeof object.reconcilerManager === "number") { + message.reconcilerManager = object.reconcilerManager; + break; + } + break; case "DEPLOYMENT_STATE_UNSPECIFIED": case 0: message.reconcilerManager = 0; @@ -21914,6 +22086,12 @@ break; } switch (object.rootReconciler) { + default: + if (typeof object.rootReconciler === "number") { + message.rootReconciler = object.rootReconciler; + break; + } + break; case "DEPLOYMENT_STATE_UNSPECIFIED": case 0: message.rootReconciler = 0; @@ -21956,17 +22134,17 @@ object.rootReconciler = options.enums === String ? "DEPLOYMENT_STATE_UNSPECIFIED" : 0; } if (message.importer != null && message.hasOwnProperty("importer")) - object.importer = options.enums === String ? $root.google.cloud.gkehub.configmanagement.v1alpha.DeploymentState[message.importer] : message.importer; + object.importer = options.enums === String ? $root.google.cloud.gkehub.configmanagement.v1alpha.DeploymentState[message.importer] === undefined ? message.importer : $root.google.cloud.gkehub.configmanagement.v1alpha.DeploymentState[message.importer] : message.importer; if (message.syncer != null && message.hasOwnProperty("syncer")) - object.syncer = options.enums === String ? $root.google.cloud.gkehub.configmanagement.v1alpha.DeploymentState[message.syncer] : message.syncer; + object.syncer = options.enums === String ? $root.google.cloud.gkehub.configmanagement.v1alpha.DeploymentState[message.syncer] === undefined ? message.syncer : $root.google.cloud.gkehub.configmanagement.v1alpha.DeploymentState[message.syncer] : message.syncer; if (message.gitSync != null && message.hasOwnProperty("gitSync")) - object.gitSync = options.enums === String ? $root.google.cloud.gkehub.configmanagement.v1alpha.DeploymentState[message.gitSync] : message.gitSync; + object.gitSync = options.enums === String ? $root.google.cloud.gkehub.configmanagement.v1alpha.DeploymentState[message.gitSync] === undefined ? message.gitSync : $root.google.cloud.gkehub.configmanagement.v1alpha.DeploymentState[message.gitSync] : message.gitSync; if (message.monitor != null && message.hasOwnProperty("monitor")) - object.monitor = options.enums === String ? $root.google.cloud.gkehub.configmanagement.v1alpha.DeploymentState[message.monitor] : message.monitor; + object.monitor = options.enums === String ? $root.google.cloud.gkehub.configmanagement.v1alpha.DeploymentState[message.monitor] === undefined ? message.monitor : $root.google.cloud.gkehub.configmanagement.v1alpha.DeploymentState[message.monitor] : message.monitor; if (message.reconcilerManager != null && message.hasOwnProperty("reconcilerManager")) - object.reconcilerManager = options.enums === String ? $root.google.cloud.gkehub.configmanagement.v1alpha.DeploymentState[message.reconcilerManager] : message.reconcilerManager; + object.reconcilerManager = options.enums === String ? $root.google.cloud.gkehub.configmanagement.v1alpha.DeploymentState[message.reconcilerManager] === undefined ? message.reconcilerManager : $root.google.cloud.gkehub.configmanagement.v1alpha.DeploymentState[message.reconcilerManager] : message.reconcilerManager; if (message.rootReconciler != null && message.hasOwnProperty("rootReconciler")) - object.rootReconciler = options.enums === String ? $root.google.cloud.gkehub.configmanagement.v1alpha.DeploymentState[message.rootReconciler] : message.rootReconciler; + object.rootReconciler = options.enums === String ? $root.google.cloud.gkehub.configmanagement.v1alpha.DeploymentState[message.rootReconciler] === undefined ? message.rootReconciler : $root.google.cloud.gkehub.configmanagement.v1alpha.DeploymentState[message.rootReconciler] : message.rootReconciler; return object; }; @@ -22293,6 +22471,12 @@ message.lastSyncTime = $root.google.protobuf.Timestamp.fromObject(object.lastSyncTime); } switch (object.code) { + default: + if (typeof object.code === "number") { + message.code = object.code; + break; + } + break; case "SYNC_CODE_UNSPECIFIED": case 0: message.code = 0; @@ -22371,7 +22555,7 @@ if (message.lastSync != null && message.hasOwnProperty("lastSync")) object.lastSync = message.lastSync; if (message.code != null && message.hasOwnProperty("code")) - object.code = options.enums === String ? $root.google.cloud.gkehub.configmanagement.v1alpha.SyncState.SyncCode[message.code] : message.code; + object.code = options.enums === String ? $root.google.cloud.gkehub.configmanagement.v1alpha.SyncState.SyncCode[message.code] === undefined ? message.code : $root.google.cloud.gkehub.configmanagement.v1alpha.SyncState.SyncCode[message.code] : message.code; if (message.errors && message.errors.length) { object.errors = []; for (var j = 0; j < message.errors.length; ++j) @@ -23854,6 +24038,12 @@ return object; var message = new $root.google.cloud.gkehub.configmanagement.v1alpha.BinauthzState(); switch (object.webhook) { + default: + if (typeof object.webhook === "number") { + message.webhook = object.webhook; + break; + } + break; case "DEPLOYMENT_STATE_UNSPECIFIED": case 0: message.webhook = 0; @@ -23897,7 +24087,7 @@ object.version = null; } if (message.webhook != null && message.hasOwnProperty("webhook")) - object.webhook = options.enums === String ? $root.google.cloud.gkehub.configmanagement.v1alpha.DeploymentState[message.webhook] : message.webhook; + object.webhook = options.enums === String ? $root.google.cloud.gkehub.configmanagement.v1alpha.DeploymentState[message.webhook] === undefined ? message.webhook : $root.google.cloud.gkehub.configmanagement.v1alpha.DeploymentState[message.webhook] : message.webhook; if (message.version != null && message.hasOwnProperty("version")) object.version = $root.google.cloud.gkehub.configmanagement.v1alpha.BinauthzVersion.toObject(message.version, options); return object; @@ -24342,6 +24532,12 @@ return object; var message = new $root.google.cloud.gkehub.configmanagement.v1alpha.GatekeeperDeploymentState(); switch (object.gatekeeperControllerManagerState) { + default: + if (typeof object.gatekeeperControllerManagerState === "number") { + message.gatekeeperControllerManagerState = object.gatekeeperControllerManagerState; + break; + } + break; case "DEPLOYMENT_STATE_UNSPECIFIED": case 0: message.gatekeeperControllerManagerState = 0; @@ -24360,6 +24556,12 @@ break; } switch (object.gatekeeperAudit) { + default: + if (typeof object.gatekeeperAudit === "number") { + message.gatekeeperAudit = object.gatekeeperAudit; + break; + } + break; case "DEPLOYMENT_STATE_UNSPECIFIED": case 0: message.gatekeeperAudit = 0; @@ -24378,6 +24580,12 @@ break; } switch (object.gatekeeperMutation) { + default: + if (typeof object.gatekeeperMutation === "number") { + message.gatekeeperMutation = object.gatekeeperMutation; + break; + } + break; case "DEPLOYMENT_STATE_UNSPECIFIED": case 0: message.gatekeeperMutation = 0; @@ -24417,11 +24625,11 @@ object.gatekeeperMutation = options.enums === String ? "DEPLOYMENT_STATE_UNSPECIFIED" : 0; } if (message.gatekeeperControllerManagerState != null && message.hasOwnProperty("gatekeeperControllerManagerState")) - object.gatekeeperControllerManagerState = options.enums === String ? $root.google.cloud.gkehub.configmanagement.v1alpha.DeploymentState[message.gatekeeperControllerManagerState] : message.gatekeeperControllerManagerState; + object.gatekeeperControllerManagerState = options.enums === String ? $root.google.cloud.gkehub.configmanagement.v1alpha.DeploymentState[message.gatekeeperControllerManagerState] === undefined ? message.gatekeeperControllerManagerState : $root.google.cloud.gkehub.configmanagement.v1alpha.DeploymentState[message.gatekeeperControllerManagerState] : message.gatekeeperControllerManagerState; if (message.gatekeeperAudit != null && message.hasOwnProperty("gatekeeperAudit")) - object.gatekeeperAudit = options.enums === String ? $root.google.cloud.gkehub.configmanagement.v1alpha.DeploymentState[message.gatekeeperAudit] : message.gatekeeperAudit; + object.gatekeeperAudit = options.enums === String ? $root.google.cloud.gkehub.configmanagement.v1alpha.DeploymentState[message.gatekeeperAudit] === undefined ? message.gatekeeperAudit : $root.google.cloud.gkehub.configmanagement.v1alpha.DeploymentState[message.gatekeeperAudit] : message.gatekeeperAudit; if (message.gatekeeperMutation != null && message.hasOwnProperty("gatekeeperMutation")) - object.gatekeeperMutation = options.enums === String ? $root.google.cloud.gkehub.configmanagement.v1alpha.DeploymentState[message.gatekeeperMutation] : message.gatekeeperMutation; + object.gatekeeperMutation = options.enums === String ? $root.google.cloud.gkehub.configmanagement.v1alpha.DeploymentState[message.gatekeeperMutation] === undefined ? message.gatekeeperMutation : $root.google.cloud.gkehub.configmanagement.v1alpha.DeploymentState[message.gatekeeperMutation] : message.gatekeeperMutation; return object; }; @@ -26798,6 +27006,12 @@ return object; var message = new $root.google.cloud.gkehub.configmanagement.v1beta.HierarchyControllerDeploymentState(); switch (object.hnc) { + default: + if (typeof object.hnc === "number") { + message.hnc = object.hnc; + break; + } + break; case "DEPLOYMENT_STATE_UNSPECIFIED": case 0: message.hnc = 0; @@ -26816,6 +27030,12 @@ break; } switch (object.extension) { + default: + if (typeof object.extension === "number") { + message.extension = object.extension; + break; + } + break; case "DEPLOYMENT_STATE_UNSPECIFIED": case 0: message.extension = 0; @@ -26854,9 +27074,9 @@ object.extension = options.enums === String ? "DEPLOYMENT_STATE_UNSPECIFIED" : 0; } if (message.hnc != null && message.hasOwnProperty("hnc")) - object.hnc = options.enums === String ? $root.google.cloud.gkehub.configmanagement.v1beta.DeploymentState[message.hnc] : message.hnc; + object.hnc = options.enums === String ? $root.google.cloud.gkehub.configmanagement.v1beta.DeploymentState[message.hnc] === undefined ? message.hnc : $root.google.cloud.gkehub.configmanagement.v1beta.DeploymentState[message.hnc] : message.hnc; if (message.extension != null && message.hasOwnProperty("extension")) - object.extension = options.enums === String ? $root.google.cloud.gkehub.configmanagement.v1beta.DeploymentState[message.extension] : message.extension; + object.extension = options.enums === String ? $root.google.cloud.gkehub.configmanagement.v1beta.DeploymentState[message.extension] === undefined ? message.extension : $root.google.cloud.gkehub.configmanagement.v1beta.DeploymentState[message.extension] : message.extension; return object; }; @@ -27558,6 +27778,12 @@ if (object.version != null) message.version = String(object.version); switch (object.deploymentState) { + default: + if (typeof object.deploymentState === "number") { + message.deploymentState = object.deploymentState; + break; + } + break; case "DEPLOYMENT_STATE_UNSPECIFIED": case 0: message.deploymentState = 0; @@ -27610,7 +27836,7 @@ if (message.version != null && message.hasOwnProperty("version")) object.version = message.version; if (message.deploymentState != null && message.hasOwnProperty("deploymentState")) - object.deploymentState = options.enums === String ? $root.google.cloud.gkehub.configmanagement.v1beta.DeploymentState[message.deploymentState] : message.deploymentState; + object.deploymentState = options.enums === String ? $root.google.cloud.gkehub.configmanagement.v1beta.DeploymentState[message.deploymentState] === undefined ? message.deploymentState : $root.google.cloud.gkehub.configmanagement.v1beta.DeploymentState[message.deploymentState] : message.deploymentState; if (message.errors && message.errors.length) { object.errors = []; for (var j = 0; j < message.errors.length; ++j) @@ -28717,6 +28943,12 @@ return object; var message = new $root.google.cloud.gkehub.configmanagement.v1beta.ConfigSyncDeploymentState(); switch (object.importer) { + default: + if (typeof object.importer === "number") { + message.importer = object.importer; + break; + } + break; case "DEPLOYMENT_STATE_UNSPECIFIED": case 0: message.importer = 0; @@ -28735,6 +28967,12 @@ break; } switch (object.syncer) { + default: + if (typeof object.syncer === "number") { + message.syncer = object.syncer; + break; + } + break; case "DEPLOYMENT_STATE_UNSPECIFIED": case 0: message.syncer = 0; @@ -28753,6 +28991,12 @@ break; } switch (object.gitSync) { + default: + if (typeof object.gitSync === "number") { + message.gitSync = object.gitSync; + break; + } + break; case "DEPLOYMENT_STATE_UNSPECIFIED": case 0: message.gitSync = 0; @@ -28771,6 +29015,12 @@ break; } switch (object.monitor) { + default: + if (typeof object.monitor === "number") { + message.monitor = object.monitor; + break; + } + break; case "DEPLOYMENT_STATE_UNSPECIFIED": case 0: message.monitor = 0; @@ -28789,6 +29039,12 @@ break; } switch (object.reconcilerManager) { + default: + if (typeof object.reconcilerManager === "number") { + message.reconcilerManager = object.reconcilerManager; + break; + } + break; case "DEPLOYMENT_STATE_UNSPECIFIED": case 0: message.reconcilerManager = 0; @@ -28807,6 +29063,12 @@ break; } switch (object.rootReconciler) { + default: + if (typeof object.rootReconciler === "number") { + message.rootReconciler = object.rootReconciler; + break; + } + break; case "DEPLOYMENT_STATE_UNSPECIFIED": case 0: message.rootReconciler = 0; @@ -28849,17 +29111,17 @@ object.rootReconciler = options.enums === String ? "DEPLOYMENT_STATE_UNSPECIFIED" : 0; } if (message.importer != null && message.hasOwnProperty("importer")) - object.importer = options.enums === String ? $root.google.cloud.gkehub.configmanagement.v1beta.DeploymentState[message.importer] : message.importer; + object.importer = options.enums === String ? $root.google.cloud.gkehub.configmanagement.v1beta.DeploymentState[message.importer] === undefined ? message.importer : $root.google.cloud.gkehub.configmanagement.v1beta.DeploymentState[message.importer] : message.importer; if (message.syncer != null && message.hasOwnProperty("syncer")) - object.syncer = options.enums === String ? $root.google.cloud.gkehub.configmanagement.v1beta.DeploymentState[message.syncer] : message.syncer; + object.syncer = options.enums === String ? $root.google.cloud.gkehub.configmanagement.v1beta.DeploymentState[message.syncer] === undefined ? message.syncer : $root.google.cloud.gkehub.configmanagement.v1beta.DeploymentState[message.syncer] : message.syncer; if (message.gitSync != null && message.hasOwnProperty("gitSync")) - object.gitSync = options.enums === String ? $root.google.cloud.gkehub.configmanagement.v1beta.DeploymentState[message.gitSync] : message.gitSync; + object.gitSync = options.enums === String ? $root.google.cloud.gkehub.configmanagement.v1beta.DeploymentState[message.gitSync] === undefined ? message.gitSync : $root.google.cloud.gkehub.configmanagement.v1beta.DeploymentState[message.gitSync] : message.gitSync; if (message.monitor != null && message.hasOwnProperty("monitor")) - object.monitor = options.enums === String ? $root.google.cloud.gkehub.configmanagement.v1beta.DeploymentState[message.monitor] : message.monitor; + object.monitor = options.enums === String ? $root.google.cloud.gkehub.configmanagement.v1beta.DeploymentState[message.monitor] === undefined ? message.monitor : $root.google.cloud.gkehub.configmanagement.v1beta.DeploymentState[message.monitor] : message.monitor; if (message.reconcilerManager != null && message.hasOwnProperty("reconcilerManager")) - object.reconcilerManager = options.enums === String ? $root.google.cloud.gkehub.configmanagement.v1beta.DeploymentState[message.reconcilerManager] : message.reconcilerManager; + object.reconcilerManager = options.enums === String ? $root.google.cloud.gkehub.configmanagement.v1beta.DeploymentState[message.reconcilerManager] === undefined ? message.reconcilerManager : $root.google.cloud.gkehub.configmanagement.v1beta.DeploymentState[message.reconcilerManager] : message.reconcilerManager; if (message.rootReconciler != null && message.hasOwnProperty("rootReconciler")) - object.rootReconciler = options.enums === String ? $root.google.cloud.gkehub.configmanagement.v1beta.DeploymentState[message.rootReconciler] : message.rootReconciler; + object.rootReconciler = options.enums === String ? $root.google.cloud.gkehub.configmanagement.v1beta.DeploymentState[message.rootReconciler] === undefined ? message.rootReconciler : $root.google.cloud.gkehub.configmanagement.v1beta.DeploymentState[message.rootReconciler] : message.rootReconciler; return object; }; @@ -29186,6 +29448,12 @@ message.lastSyncTime = $root.google.protobuf.Timestamp.fromObject(object.lastSyncTime); } switch (object.code) { + default: + if (typeof object.code === "number") { + message.code = object.code; + break; + } + break; case "SYNC_CODE_UNSPECIFIED": case 0: message.code = 0; @@ -29264,7 +29532,7 @@ if (message.lastSync != null && message.hasOwnProperty("lastSync")) object.lastSync = message.lastSync; if (message.code != null && message.hasOwnProperty("code")) - object.code = options.enums === String ? $root.google.cloud.gkehub.configmanagement.v1beta.SyncState.SyncCode[message.code] : message.code; + object.code = options.enums === String ? $root.google.cloud.gkehub.configmanagement.v1beta.SyncState.SyncCode[message.code] === undefined ? message.code : $root.google.cloud.gkehub.configmanagement.v1beta.SyncState.SyncCode[message.code] : message.code; if (message.errors && message.errors.length) { object.errors = []; for (var j = 0; j < message.errors.length; ++j) @@ -30747,6 +31015,12 @@ return object; var message = new $root.google.cloud.gkehub.configmanagement.v1beta.BinauthzState(); switch (object.webhook) { + default: + if (typeof object.webhook === "number") { + message.webhook = object.webhook; + break; + } + break; case "DEPLOYMENT_STATE_UNSPECIFIED": case 0: message.webhook = 0; @@ -30790,7 +31064,7 @@ object.version = null; } if (message.webhook != null && message.hasOwnProperty("webhook")) - object.webhook = options.enums === String ? $root.google.cloud.gkehub.configmanagement.v1beta.DeploymentState[message.webhook] : message.webhook; + object.webhook = options.enums === String ? $root.google.cloud.gkehub.configmanagement.v1beta.DeploymentState[message.webhook] === undefined ? message.webhook : $root.google.cloud.gkehub.configmanagement.v1beta.DeploymentState[message.webhook] : message.webhook; if (message.version != null && message.hasOwnProperty("version")) object.version = $root.google.cloud.gkehub.configmanagement.v1beta.BinauthzVersion.toObject(message.version, options); return object; @@ -31210,6 +31484,12 @@ return object; var message = new $root.google.cloud.gkehub.configmanagement.v1beta.GatekeeperDeploymentState(); switch (object.gatekeeperControllerManagerState) { + default: + if (typeof object.gatekeeperControllerManagerState === "number") { + message.gatekeeperControllerManagerState = object.gatekeeperControllerManagerState; + break; + } + break; case "DEPLOYMENT_STATE_UNSPECIFIED": case 0: message.gatekeeperControllerManagerState = 0; @@ -31228,6 +31508,12 @@ break; } switch (object.gatekeeperAudit) { + default: + if (typeof object.gatekeeperAudit === "number") { + message.gatekeeperAudit = object.gatekeeperAudit; + break; + } + break; case "DEPLOYMENT_STATE_UNSPECIFIED": case 0: message.gatekeeperAudit = 0; @@ -31266,9 +31552,9 @@ object.gatekeeperAudit = options.enums === String ? "DEPLOYMENT_STATE_UNSPECIFIED" : 0; } if (message.gatekeeperControllerManagerState != null && message.hasOwnProperty("gatekeeperControllerManagerState")) - object.gatekeeperControllerManagerState = options.enums === String ? $root.google.cloud.gkehub.configmanagement.v1beta.DeploymentState[message.gatekeeperControllerManagerState] : message.gatekeeperControllerManagerState; + object.gatekeeperControllerManagerState = options.enums === String ? $root.google.cloud.gkehub.configmanagement.v1beta.DeploymentState[message.gatekeeperControllerManagerState] === undefined ? message.gatekeeperControllerManagerState : $root.google.cloud.gkehub.configmanagement.v1beta.DeploymentState[message.gatekeeperControllerManagerState] : message.gatekeeperControllerManagerState; if (message.gatekeeperAudit != null && message.hasOwnProperty("gatekeeperAudit")) - object.gatekeeperAudit = options.enums === String ? $root.google.cloud.gkehub.configmanagement.v1beta.DeploymentState[message.gatekeeperAudit] : message.gatekeeperAudit; + object.gatekeeperAudit = options.enums === String ? $root.google.cloud.gkehub.configmanagement.v1beta.DeploymentState[message.gatekeeperAudit] === undefined ? message.gatekeeperAudit : $root.google.cloud.gkehub.configmanagement.v1beta.DeploymentState[message.gatekeeperAudit] : message.gatekeeperAudit; return object; }; @@ -32035,6 +32321,12 @@ return object; var message = new $root.google.cloud.gkehub.v1.FeatureResourceState(); switch (object.state) { + default: + if (typeof object.state === "number") { + message.state = object.state; + break; + } + break; case "STATE_UNSPECIFIED": case 0: message.state = 0; @@ -32079,7 +32371,7 @@ if (options.defaults) object.state = options.enums === String ? "STATE_UNSPECIFIED" : 0; if (message.state != null && message.hasOwnProperty("state")) - object.state = options.enums === String ? $root.google.cloud.gkehub.v1.FeatureResourceState.State[message.state] : message.state; + object.state = options.enums === String ? $root.google.cloud.gkehub.v1.FeatureResourceState.State[message.state] === undefined ? message.state : $root.google.cloud.gkehub.v1.FeatureResourceState.State[message.state] : message.state; return object; }; @@ -32329,6 +32621,12 @@ return object; var message = new $root.google.cloud.gkehub.v1.FeatureState(); switch (object.code) { + default: + if (typeof object.code === "number") { + message.code = object.code; + break; + } + break; case "CODE_UNSPECIFIED": case 0: message.code = 0; @@ -32375,7 +32673,7 @@ object.updateTime = null; } if (message.code != null && message.hasOwnProperty("code")) - object.code = options.enums === String ? $root.google.cloud.gkehub.v1.FeatureState.Code[message.code] : message.code; + object.code = options.enums === String ? $root.google.cloud.gkehub.v1.FeatureState.Code[message.code] === undefined ? message.code : $root.google.cloud.gkehub.v1.FeatureState.Code[message.code] : message.code; if (message.description != null && message.hasOwnProperty("description")) object.description = message.description; if (message.updateTime != null && message.hasOwnProperty("updateTime")) @@ -35646,6 +35944,12 @@ return object; var message = new $root.google.cloud.gkehub.v1.MembershipState(); switch (object.code) { + default: + if (typeof object.code === "number") { + message.code = object.code; + break; + } + break; case "CODE_UNSPECIFIED": case 0: message.code = 0; @@ -35690,7 +35994,7 @@ if (options.defaults) object.code = options.enums === String ? "CODE_UNSPECIFIED" : 0; if (message.code != null && message.hasOwnProperty("code")) - object.code = options.enums === String ? $root.google.cloud.gkehub.v1.MembershipState.Code[message.code] : message.code; + object.code = options.enums === String ? $root.google.cloud.gkehub.v1.MembershipState.Code[message.code] === undefined ? message.code : $root.google.cloud.gkehub.v1.MembershipState.Code[message.code] : message.code; return object; }; @@ -41381,6 +41685,12 @@ if (object.configMembership != null) message.configMembership = String(object.configMembership); switch (object.billing) { + default: + if (typeof object.billing === "number") { + message.billing = object.billing; + break; + } + break; case "BILLING_UNSPECIFIED": case 0: message.billing = 0; @@ -41417,7 +41727,7 @@ if (message.configMembership != null && message.hasOwnProperty("configMembership")) object.configMembership = message.configMembership; if (message.billing != null && message.hasOwnProperty("billing")) - object.billing = options.enums === String ? $root.google.cloud.gkehub.multiclusteringress.v1alpha.Billing[message.billing] : message.billing; + object.billing = options.enums === String ? $root.google.cloud.gkehub.multiclusteringress.v1alpha.Billing[message.billing] === undefined ? message.billing : $root.google.cloud.gkehub.multiclusteringress.v1alpha.Billing[message.billing] : message.billing; return object; }; @@ -41654,6 +41964,12 @@ if (object.configMembership != null) message.configMembership = String(object.configMembership); switch (object.billing) { + default: + if (typeof object.billing === "number") { + message.billing = object.billing; + break; + } + break; case "BILLING_UNSPECIFIED": case 0: message.billing = 0; @@ -41690,7 +42006,7 @@ if (message.configMembership != null && message.hasOwnProperty("configMembership")) object.configMembership = message.configMembership; if (message.billing != null && message.hasOwnProperty("billing")) - object.billing = options.enums === String ? $root.google.cloud.gkehub.multiclusteringress.v1beta.Billing[message.billing] : message.billing; + object.billing = options.enums === String ? $root.google.cloud.gkehub.multiclusteringress.v1beta.Billing[message.billing] === undefined ? message.billing : $root.google.cloud.gkehub.multiclusteringress.v1beta.Billing[message.billing] : message.billing; return object; }; @@ -42700,6 +43016,12 @@ return object; var message = new $root.google.cloud.gkehub.v1alpha.FeatureResourceState(); switch (object.state) { + default: + if (typeof object.state === "number") { + message.state = object.state; + break; + } + break; case "STATE_UNSPECIFIED": case 0: message.state = 0; @@ -42744,7 +43066,7 @@ if (options.defaults) object.state = options.enums === String ? "STATE_UNSPECIFIED" : 0; if (message.state != null && message.hasOwnProperty("state")) - object.state = options.enums === String ? $root.google.cloud.gkehub.v1alpha.FeatureResourceState.State[message.state] : message.state; + object.state = options.enums === String ? $root.google.cloud.gkehub.v1alpha.FeatureResourceState.State[message.state] === undefined ? message.state : $root.google.cloud.gkehub.v1alpha.FeatureResourceState.State[message.state] : message.state; return object; }; @@ -42994,6 +43316,12 @@ return object; var message = new $root.google.cloud.gkehub.v1alpha.FeatureState(); switch (object.code) { + default: + if (typeof object.code === "number") { + message.code = object.code; + break; + } + break; case "CODE_UNSPECIFIED": case 0: message.code = 0; @@ -43040,7 +43368,7 @@ object.updateTime = null; } if (message.code != null && message.hasOwnProperty("code")) - object.code = options.enums === String ? $root.google.cloud.gkehub.v1alpha.FeatureState.Code[message.code] : message.code; + object.code = options.enums === String ? $root.google.cloud.gkehub.v1alpha.FeatureState.Code[message.code] === undefined ? message.code : $root.google.cloud.gkehub.v1alpha.FeatureState.Code[message.code] : message.code; if (message.description != null && message.hasOwnProperty("description")) object.description = message.description; if (message.updateTime != null && message.hasOwnProperty("updateTime")) @@ -47445,6 +47773,12 @@ message.type = $root.google.cloud.gkehub.servicemesh.v1alpha.AnalysisMessageBase.Type.fromObject(object.type); } switch (object.level) { + default: + if (typeof object.level === "number") { + message.level = object.level; + break; + } + break; case "LEVEL_UNSPECIFIED": case 0: message.level = 0; @@ -47488,7 +47822,7 @@ if (message.type != null && message.hasOwnProperty("type")) object.type = $root.google.cloud.gkehub.servicemesh.v1alpha.AnalysisMessageBase.Type.toObject(message.type, options); if (message.level != null && message.hasOwnProperty("level")) - object.level = options.enums === String ? $root.google.cloud.gkehub.servicemesh.v1alpha.AnalysisMessageBase.Level[message.level] : message.level; + object.level = options.enums === String ? $root.google.cloud.gkehub.servicemesh.v1alpha.AnalysisMessageBase.Level[message.level] === undefined ? message.level : $root.google.cloud.gkehub.servicemesh.v1alpha.AnalysisMessageBase.Level[message.level] : message.level; if (message.documentationUrl != null && message.hasOwnProperty("documentationUrl")) object.documentationUrl = message.documentationUrl; return object; @@ -48829,6 +49163,12 @@ if (object.uniqueId != null) message.uniqueId = String(object.uniqueId); switch (object.infrastructureType) { + default: + if (typeof object.infrastructureType === "number") { + message.infrastructureType = object.infrastructureType; + break; + } + break; case "INFRASTRUCTURE_TYPE_UNSPECIFIED": case 0: message.infrastructureType = 0; @@ -48905,7 +49245,7 @@ if (message.uniqueId != null && message.hasOwnProperty("uniqueId")) object.uniqueId = message.uniqueId; if (message.infrastructureType != null && message.hasOwnProperty("infrastructureType")) - object.infrastructureType = options.enums === String ? $root.google.cloud.gkehub.v1alpha2.Membership.InfrastructureType[message.infrastructureType] : message.infrastructureType; + object.infrastructureType = options.enums === String ? $root.google.cloud.gkehub.v1alpha2.Membership.InfrastructureType[message.infrastructureType] === undefined ? message.infrastructureType : $root.google.cloud.gkehub.v1alpha2.Membership.InfrastructureType[message.infrastructureType] : message.infrastructureType; return object; }; @@ -51350,6 +51690,12 @@ return object; var message = new $root.google.cloud.gkehub.v1alpha2.MembershipState(); switch (object.code) { + default: + if (typeof object.code === "number") { + message.code = object.code; + break; + } + break; case "CODE_UNSPECIFIED": case 0: message.code = 0; @@ -51394,7 +51740,7 @@ if (options.defaults) object.code = options.enums === String ? "CODE_UNSPECIFIED" : 0; if (message.code != null && message.hasOwnProperty("code")) - object.code = options.enums === String ? $root.google.cloud.gkehub.v1alpha2.MembershipState.Code[message.code] : message.code; + object.code = options.enums === String ? $root.google.cloud.gkehub.v1alpha2.MembershipState.Code[message.code] === undefined ? message.code : $root.google.cloud.gkehub.v1alpha2.MembershipState.Code[message.code] : message.code; return object; }; @@ -55737,6 +56083,12 @@ return object; var message = new $root.google.cloud.gkehub.v1beta.FeatureResourceState(); switch (object.state) { + default: + if (typeof object.state === "number") { + message.state = object.state; + break; + } + break; case "STATE_UNSPECIFIED": case 0: message.state = 0; @@ -55781,7 +56133,7 @@ if (options.defaults) object.state = options.enums === String ? "STATE_UNSPECIFIED" : 0; if (message.state != null && message.hasOwnProperty("state")) - object.state = options.enums === String ? $root.google.cloud.gkehub.v1beta.FeatureResourceState.State[message.state] : message.state; + object.state = options.enums === String ? $root.google.cloud.gkehub.v1beta.FeatureResourceState.State[message.state] === undefined ? message.state : $root.google.cloud.gkehub.v1beta.FeatureResourceState.State[message.state] : message.state; return object; }; @@ -56031,6 +56383,12 @@ return object; var message = new $root.google.cloud.gkehub.v1beta.FeatureState(); switch (object.code) { + default: + if (typeof object.code === "number") { + message.code = object.code; + break; + } + break; case "CODE_UNSPECIFIED": case 0: message.code = 0; @@ -56077,7 +56435,7 @@ object.updateTime = null; } if (message.code != null && message.hasOwnProperty("code")) - object.code = options.enums === String ? $root.google.cloud.gkehub.v1beta.FeatureState.Code[message.code] : message.code; + object.code = options.enums === String ? $root.google.cloud.gkehub.v1beta.FeatureState.Code[message.code] === undefined ? message.code : $root.google.cloud.gkehub.v1beta.FeatureState.Code[message.code] : message.code; if (message.description != null && message.hasOwnProperty("description")) object.description = message.description; if (message.updateTime != null && message.hasOwnProperty("updateTime")) @@ -59986,6 +60344,12 @@ if (object.uniqueId != null) message.uniqueId = String(object.uniqueId); switch (object.infrastructureType) { + default: + if (typeof object.infrastructureType === "number") { + message.infrastructureType = object.infrastructureType; + break; + } + break; case "INFRASTRUCTURE_TYPE_UNSPECIFIED": case 0: message.infrastructureType = 0; @@ -60062,7 +60426,7 @@ if (message.uniqueId != null && message.hasOwnProperty("uniqueId")) object.uniqueId = message.uniqueId; if (message.infrastructureType != null && message.hasOwnProperty("infrastructureType")) - object.infrastructureType = options.enums === String ? $root.google.cloud.gkehub.v1beta1.Membership.InfrastructureType[message.infrastructureType] : message.infrastructureType; + object.infrastructureType = options.enums === String ? $root.google.cloud.gkehub.v1beta1.Membership.InfrastructureType[message.infrastructureType] === undefined ? message.infrastructureType : $root.google.cloud.gkehub.v1beta1.Membership.InfrastructureType[message.infrastructureType] : message.infrastructureType; return object; }; @@ -61780,6 +62144,12 @@ if (object.adminCluster != null) message.adminCluster = Boolean(object.adminCluster); switch (object.clusterType) { + default: + if (typeof object.clusterType === "number") { + message.clusterType = object.clusterType; + break; + } + break; case "CLUSTERTYPE_UNSPECIFIED": case 0: message.clusterType = 0; @@ -61830,7 +62200,7 @@ if (message.adminCluster != null && message.hasOwnProperty("adminCluster")) object.adminCluster = message.adminCluster; if (message.clusterType != null && message.hasOwnProperty("clusterType")) - object.clusterType = options.enums === String ? $root.google.cloud.gkehub.v1beta1.OnPremCluster.ClusterType[message.clusterType] : message.clusterType; + object.clusterType = options.enums === String ? $root.google.cloud.gkehub.v1beta1.OnPremCluster.ClusterType[message.clusterType] === undefined ? message.clusterType : $root.google.cloud.gkehub.v1beta1.OnPremCluster.ClusterType[message.clusterType] : message.clusterType; return object; }; @@ -63319,6 +63689,12 @@ return object; var message = new $root.google.cloud.gkehub.v1beta1.MembershipState(); switch (object.code) { + default: + if (typeof object.code === "number") { + message.code = object.code; + break; + } + break; case "CODE_UNSPECIFIED": case 0: message.code = 0; @@ -63373,7 +63749,7 @@ object.updateTime = null; } if (message.code != null && message.hasOwnProperty("code")) - object.code = options.enums === String ? $root.google.cloud.gkehub.v1beta1.MembershipState.Code[message.code] : message.code; + object.code = options.enums === String ? $root.google.cloud.gkehub.v1beta1.MembershipState.Code[message.code] === undefined ? message.code : $root.google.cloud.gkehub.v1beta1.MembershipState.Code[message.code] : message.code; if (message.description != null && message.hasOwnProperty("description")) object.description = message.description; if (message.updateTime != null && message.hasOwnProperty("updateTime")) @@ -67917,6 +68293,12 @@ if (object.nameField != null) message.nameField = String(object.nameField); switch (object.history) { + default: + if (typeof object.history === "number") { + message.history = object.history; + break; + } + break; case "HISTORY_UNSPECIFIED": case 0: message.history = 0; @@ -67941,6 +68323,10 @@ for (var i = 0; i < object.style.length; ++i) switch (object.style[i]) { default: + if (typeof object.style[i] === "number") { + message.style[i] = object.style[i]; + break; + } case "STYLE_UNSPECIFIED": case 0: message.style[i] = 0; @@ -67988,7 +68374,7 @@ if (message.nameField != null && message.hasOwnProperty("nameField")) object.nameField = message.nameField; if (message.history != null && message.hasOwnProperty("history")) - object.history = options.enums === String ? $root.google.api.ResourceDescriptor.History[message.history] : message.history; + object.history = options.enums === String ? $root.google.api.ResourceDescriptor.History[message.history] === undefined ? message.history : $root.google.api.ResourceDescriptor.History[message.history] : message.history; if (message.plural != null && message.hasOwnProperty("plural")) object.plural = message.plural; if (message.singular != null && message.hasOwnProperty("singular")) @@ -67996,7 +68382,7 @@ if (message.style && message.style.length) { object.style = []; for (var j = 0; j < message.style.length; ++j) - object.style[j] = options.enums === String ? $root.google.api.ResourceDescriptor.Style[message.style[j]] : message.style[j]; + object.style[j] = options.enums === String ? $root.google.api.ResourceDescriptor.Style[message.style[j]] === undefined ? message.style[j] : $root.google.api.ResourceDescriptor.Style[message.style[j]] : message.style[j]; } return object; }; From 0a6bf62c85985e4ff8dd4cf4bc9d405f38f56713 Mon Sep 17 00:00:00 2001 From: "release-please[bot]" <55107282+release-please[bot]@users.noreply.github.com> Date: Thu, 10 Nov 2022 18:15:38 -0800 Subject: [PATCH 92/92] chore(main): release 3.2.2 (#170) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * chore(main): release 3.2.2 * 🦉 Updates from OwlBot post-processor See https://github.com/googleapis/repo-automation-bots/blob/main/packages/owl-bot/README.md Co-authored-by: release-please[bot] <55107282+release-please[bot]@users.noreply.github.com> Co-authored-by: Owl Bot --- packages/google-cloud-gkehub/CHANGELOG.md | 9 +++++++++ packages/google-cloud-gkehub/package.json | 2 +- .../v1/snippet_metadata.google.cloud.gkehub.v1.json | 2 +- .../snippet_metadata.google.cloud.gkehub.v1alpha.json | 2 +- .../snippet_metadata.google.cloud.gkehub.v1alpha2.json | 2 +- .../snippet_metadata.google.cloud.gkehub.v1beta.json | 2 +- .../snippet_metadata.google.cloud.gkehub.v1beta1.json | 2 +- packages/google-cloud-gkehub/samples/package.json | 2 +- 8 files changed, 16 insertions(+), 7 deletions(-) diff --git a/packages/google-cloud-gkehub/CHANGELOG.md b/packages/google-cloud-gkehub/CHANGELOG.md index 7b7109da9e4..fa05a949bd4 100644 --- a/packages/google-cloud-gkehub/CHANGELOG.md +++ b/packages/google-cloud-gkehub/CHANGELOG.md @@ -1,5 +1,14 @@ # Changelog +## [3.2.2](https://github.com/googleapis/nodejs-gke-hub/compare/v3.2.1...v3.2.2) (2022-11-10) + + +### Bug Fixes + +* **deps:** Use google-gax v3.5.2 ([#176](https://github.com/googleapis/nodejs-gke-hub/issues/176)) ([3865475](https://github.com/googleapis/nodejs-gke-hub/commit/386547518eb49ec1b323137718be5fa8cf2166d5)) +* Preserve default values in x-goog-request-params header ([#169](https://github.com/googleapis/nodejs-gke-hub/issues/169)) ([8415dbb](https://github.com/googleapis/nodejs-gke-hub/commit/8415dbb88f9017248fb27121a811b4521c66b8e5)) +* Regenerated protos JS and TS definitions ([#179](https://github.com/googleapis/nodejs-gke-hub/issues/179)) ([657dd66](https://github.com/googleapis/nodejs-gke-hub/commit/657dd66c9ad8b6daba40a58bf791b0a240925a02)) + ## [3.2.1](https://github.com/googleapis/nodejs-gke-hub/compare/v3.2.0...v3.2.1) (2022-09-01) diff --git a/packages/google-cloud-gkehub/package.json b/packages/google-cloud-gkehub/package.json index bb20ec2d750..a454276eef7 100644 --- a/packages/google-cloud-gkehub/package.json +++ b/packages/google-cloud-gkehub/package.json @@ -1,6 +1,6 @@ { "name": "@google-cloud/gke-hub", - "version": "3.2.1", + "version": "3.2.2", "description": "Gkehub client for Node.js", "repository": "googleapis/nodejs-gke-hub", "license": "Apache-2.0", diff --git a/packages/google-cloud-gkehub/samples/generated/v1/snippet_metadata.google.cloud.gkehub.v1.json b/packages/google-cloud-gkehub/samples/generated/v1/snippet_metadata.google.cloud.gkehub.v1.json index c892d168d47..0e8fa7d9dba 100644 --- a/packages/google-cloud-gkehub/samples/generated/v1/snippet_metadata.google.cloud.gkehub.v1.json +++ b/packages/google-cloud-gkehub/samples/generated/v1/snippet_metadata.google.cloud.gkehub.v1.json @@ -1,7 +1,7 @@ { "clientLibrary": { "name": "nodejs-gkehub", - "version": "3.2.1", + "version": "3.2.2", "language": "TYPESCRIPT", "apis": [ { diff --git a/packages/google-cloud-gkehub/samples/generated/v1alpha/snippet_metadata.google.cloud.gkehub.v1alpha.json b/packages/google-cloud-gkehub/samples/generated/v1alpha/snippet_metadata.google.cloud.gkehub.v1alpha.json index f4de5c8d685..35cdd83c8d5 100644 --- a/packages/google-cloud-gkehub/samples/generated/v1alpha/snippet_metadata.google.cloud.gkehub.v1alpha.json +++ b/packages/google-cloud-gkehub/samples/generated/v1alpha/snippet_metadata.google.cloud.gkehub.v1alpha.json @@ -1,7 +1,7 @@ { "clientLibrary": { "name": "nodejs-gkehub", - "version": "3.2.1", + "version": "3.2.2", "language": "TYPESCRIPT", "apis": [ { diff --git a/packages/google-cloud-gkehub/samples/generated/v1alpha2/snippet_metadata.google.cloud.gkehub.v1alpha2.json b/packages/google-cloud-gkehub/samples/generated/v1alpha2/snippet_metadata.google.cloud.gkehub.v1alpha2.json index 0b50c9b8836..b665c5dd265 100644 --- a/packages/google-cloud-gkehub/samples/generated/v1alpha2/snippet_metadata.google.cloud.gkehub.v1alpha2.json +++ b/packages/google-cloud-gkehub/samples/generated/v1alpha2/snippet_metadata.google.cloud.gkehub.v1alpha2.json @@ -1,7 +1,7 @@ { "clientLibrary": { "name": "nodejs-gkehub", - "version": "3.2.1", + "version": "3.2.2", "language": "TYPESCRIPT", "apis": [ { diff --git a/packages/google-cloud-gkehub/samples/generated/v1beta/snippet_metadata.google.cloud.gkehub.v1beta.json b/packages/google-cloud-gkehub/samples/generated/v1beta/snippet_metadata.google.cloud.gkehub.v1beta.json index ff0f297bf96..d3480dd3cb0 100644 --- a/packages/google-cloud-gkehub/samples/generated/v1beta/snippet_metadata.google.cloud.gkehub.v1beta.json +++ b/packages/google-cloud-gkehub/samples/generated/v1beta/snippet_metadata.google.cloud.gkehub.v1beta.json @@ -1,7 +1,7 @@ { "clientLibrary": { "name": "nodejs-gkehub", - "version": "3.2.1", + "version": "3.2.2", "language": "TYPESCRIPT", "apis": [ { diff --git a/packages/google-cloud-gkehub/samples/generated/v1beta1/snippet_metadata.google.cloud.gkehub.v1beta1.json b/packages/google-cloud-gkehub/samples/generated/v1beta1/snippet_metadata.google.cloud.gkehub.v1beta1.json index 927b55530f0..01bc5f1eeb0 100644 --- a/packages/google-cloud-gkehub/samples/generated/v1beta1/snippet_metadata.google.cloud.gkehub.v1beta1.json +++ b/packages/google-cloud-gkehub/samples/generated/v1beta1/snippet_metadata.google.cloud.gkehub.v1beta1.json @@ -1,7 +1,7 @@ { "clientLibrary": { "name": "nodejs-gkehub", - "version": "3.2.1", + "version": "3.2.2", "language": "TYPESCRIPT", "apis": [ { diff --git a/packages/google-cloud-gkehub/samples/package.json b/packages/google-cloud-gkehub/samples/package.json index c2e3160a4f9..b8577417869 100644 --- a/packages/google-cloud-gkehub/samples/package.json +++ b/packages/google-cloud-gkehub/samples/package.json @@ -13,7 +13,7 @@ "test": "c8 mocha --timeout 600000 test/*.js" }, "dependencies": { - "@google-cloud/gke-hub": "^3.2.1" + "@google-cloud/gke-hub": "^3.2.2" }, "devDependencies": { "c8": "^7.1.0",